Есть история (правдивая), которую я люблю рассказывать разработчикам, с которыми я работаю. Когда я делал свои магистерские программы (долгое время… вы понимаете), я прошел курс по распределенным вычислениям, и у нас был проект класса по созданию алгоритма распределенного планирования на основе симметрично инициируемых пороговых значений . В то время это была самая большая база кода, которую я когда-либо писал с нуля. Он был разработан на C. Я преуспел и гордился тем, что смог написать и выполнить распределенное приложение, в котором каждая часть была бы независимой и взаимодействовала бы с другими частями, а также имела центральный контроллер (узкое место и единую точку провал! Но эй, это было тогда, а это сейчас!).

Примерно через год мой тогдашний сосед по комнате ходил в тот же класс, и в один прекрасный вечер, когда мы оба были в лаборатории, занимаясь своей собственной работой, он попросил меня просмотреть часть кода, над которой он работал, и сказал, что застрял. . Когда я попытался вспомнить, как я решил проблему, я решил вытащить свой старый код (просто куча файлов в папке - ни SVN, ни Git !!). Я прошел и нашел нужный раздел, а затем буквально 10 минут смотрел на свой код, когда сказал: «Что, черт возьми, я здесь сделал». Был модуль, который состоял примерно из 20 строк кода, и я сказал, что могу сделать это за 2–3 строки!

Суть вышеупомянутой истории двояка:

  • Со временем мы узнаем новые способы оптимизации написания кода того же типа, но, что более важно,
  • Довольно часто нам приходится возвращаться и читать собственный код

Разработчики обычно жалуются, когда мы наследуем код от другого разработчика или когда мы используем сторонний фреймворк и чувствуем, что он настроен не так, как нам хотелось бы. Мы жалуемся на качество кода и тот факт, что о чем думал разработчик! Мы не понимаем, что любой разработчик может найти потенциальные проблемы и в том, как мы кодируем.

К сожалению, в большинстве случаев мы изменяем не чужой код, а наш собственный. Иногда код написан много лет назад. И то, что мы находим, - это плохие практики и отсутствие документации от более молодого человека, который с таким же успехом мог бы быть другим разработчиком.

Итак, друзья, разработчики, земляки кода, слушайте меня! Будьте добры к себе в будущем, код чистый!