Дневник Робинзона в море ИТ. ч.1 глава 5
Часть 1.
Глава 5. Один совсем один и немного имён переменных.
Июль 2022. (Долго не писал. Ушла муза)
Остался на острове (курсе) один.
Коллега покинула меня и сдалась. Решила, что это не её. Жаль. Переубедить её не получилось. Что ж у каждого свой путь.
Итак, я сдал 2 «заготовки лодки» на «смотрины» мастеру и даже после многочисленных клеймо на них «все х….ня – переделывай» защитил их доведя до ума (после сборки обработать напильником).
Что ж плотник из меня пока так себе. Есть и успехи, конечно, но обо всем по порядку.
Основные успехи связаны со структурой и разделением действий между функциями.
Первая небольшая поделка на 150 строк была связана с отработкой навыков работы с коллекциями разных типов (от кортежа до словаря, множество и «ледяное» в проекте не затрагивались за ненадобностью).
Так же в предыдущем «проекте» мной было допущено ряд ошибок, связанных с плохой читабельностью. Да код работал с первого раза. Но то, как он был написан напоминало наскальные рисунки, которые невозможно было расшифровать с достаточной степенью достоверности. Присутствовали литералы, которые непонятно что значили если не вчитываться в код от начала до конца. А также не именованные обращения к элементам коллекций через индексы.
Здание было связано с отработкой навыков по использованию структур хранения данных типа коллекций, но и тут меня ждали «сюрпризы». Не сразу получилось исправить избыточность действий по сортировке элементов словаря сразу в нескольких функциях. В итоге после отсечения лишнего сортировка делалась только перед выводом пользователю сберегая драгоценные ресурсы
Второе «каное» было проектом позволяющим создавать множественные экземпляры одного и того же объекта объединённой структурой class. Создание внутренних методов и атрибутов класса вновь решило поиграть со мной в игру подбери синонимы одного и того же. Я столкнулся с извечной бедой богатого русского языка и своей манерой называть одни и те же вещи разными именами.
Несмотря на то, что суть, которая несёт переменная в разных методах одного класса одна и та же я упорно пытаюсь её назвать по-разному то «весло», то «палка которой грести» а иной раз и «толкатель лодки по воде». Возможно, это и хорошо было бы в художественном произведении и позволяло бы выразить каждый раз моё отношение к предмету действа. Однако в целом же в программировании это ухудшает типизацию и однородность данных, и читабельность кода. В общем писать код и книги искусство, которое должно отличаться как количеством знаков (в меньшую сторону в случае кода) так и разнообразием используемых обозначений одних и тех же сущностей.
В результате строительства так же были обнаружены «нежелательные» побочные эффекты, приводящие к непредсказуемым последствиям в случае, если бы проект значительно разросся.
В целом типизация объектов путём создания общих конструкций типа class мне показалась достаточно простой. Возможно, мой уровень приближения пока так показывает. Как говорится все познаётся в сравнении.
Ах да совсем забыл одну деталь.
Из-за обновления обучающей платформы мой прогресс вновь откатился назад.
Продолжаю с неистовым упорством повторять пройдённое чтобы идти дальше в изучении. Перечитывая материал иногда замечаешь вещи, на которые раньше не обращал внимание. Вроде детали не такие значительные. Но вот когда смотришь на них под другим углом становится странным, что ты этого не помнишь. Например, различные способы указаний аргументов функций - использование управляющих знаков в обозначении аргументов значения, которых можно задавать попозиционно, поимённо или в комбинированном состоянии.
Продолжение следует….