Часть #58. Оптимизация состояний. (Базовый курс программирования на С )
Вы можете поддержать автора и купить курсы на
Оглавление курса на Википедии: Базовый_курс_С
00:00 - Оптимизация состояний
02:07 - Выносим состояния расплавления в EPlatform_Substate_Meltdown
04:37 - Выносим код Act_For_Glue_State()
06:08 - Добавим метод Act_For_Meltdown_State()
07:52 - Уберём очистку при расплавлении из метода Clear()
08:48 - Исправим метод Draw() при рисовании расплавления
09:36 - Исправим метод Set_State() для расплавления
10:18 - Исправим метод Act_For_Meltdown_State()
12:22 - : пишем код
12:37 -
... Выносим состояния выкатывания в EPlatform_Substate_Rolling
14:37 - Исправим метод Act() для выкатывающейся платформы
16:11 - Добавим метод Act_For_Rolling_State()
17:42 - Добавим метод Draw_Rolling_State()
19:40 - Исправим методы Set_State(), Redraw_Platform(), Draw_Roll_In_State() и On_Timer()
21:58 - Переносим код из рисующих методов в Act_For_Rolling_State()
24:10 - Удаляем метод Draw_Expanding_Roll_In_State()
25:10 - Исправим метод Act_For_Rolling_State()
25:51 - Выносим обычные состояния платформы в EPlatform_Substate_Regular
26:50 - Пересечение констант EPSR_Unknown
28:54 - Используем новый вид перечислений - enum class
33:31 - Добавим переменную типа EPlatform_Substate_Regular
35:26 - Исправим методы Advance(), Clear() и Draw()
38:40 - Добавим перегруженный метод Set_State()
42:05 - Добавим метод Has_State()
44:07 - Исправим методы Move() и On_Space_Key()
46:18 - Исправим Act_For_Rolling_State(), Act_For_Glue_State(), Draw_Normal_State() и Draw_Meltdown_State()
47:37 - Исправим методы On_Timer(), Act() и On_Falling_Letter()
49:17 - : пишем код
49:36 - Сделаем enum class для EPlatform_Substate_Meltdown
51:38 - Сделаем enum class для EPlatform_Substate_Rolling
53:07 - Сделаем enum class для EPlatform_Substate_Glue
54:25 - Сделаем enum class для EPlatform_State
56:58 - Сделаем enum class для EPlatform_Moving_State
58:12 - Переносим все состояния платформы в класс AsPlatform_State
01:01:41 - Переносим инициализацию состояний в конструктор AsPlatform_State
01:03:49 - Исправляем использование переменных состояния
01:05:38 - Добавим оператор преобразования типа
01:09:17 - Добавим оператор присваивания
01:12:30 - Баг: платформа с клеем не двигается
01:14:19 - Подводим итог рефакторинга перечислений
01:15:13 - : пишем код
-
-
-Show more