Good practice, bad practice, хард код та сучасні практики програмування
Я останнім часом досить сильно віддалився від програмування та й в цілому в мене розробка на контроллерах під досить специфічні задачі
Мені стало цікаво як зараз змінилось ставлення до написання коду.
Коли я ще навчався то дуже було популярно писати «правильний код за якимись умовними практиками», вивчати патерни програмування та всяке таке інше.
Коли ж я почав працювати то реальність виявилось такою що це «правильне програмування» в якийсь момент перетворювало код просто в якусь лапшу з абстракцій, тоді в мій код почали повертатись глобальні змінні, потім патерни стали як це сучасно казати «антипатернами», потім прийшло поняття що високі рівні абстракції роблять код просто не функціональним і те що називають «лаконічним спрощенням для розуміння іншими програмістами» перетворилось на якусь складну махіну з якою розбиратись набагато довше ніж зробити це по дубовому без тисяч перевірок, я почав писати код з описом просто того шо можна передавати в функції а що не можна(були перевірки але мінімальна кількість самих критичних), бо по перше той хто використовує функції має сам дбати про валідність данних, по друге прийшло розуміння того що ретурни з еррор кодами це дуже цікаво авжеж, а толку з них якщо їх треба обробляти і шось вирішувати шо робити далі і простіше просто ці кейси прописувати вже переписуючи функцію під конкретну задачу, а ніж писати одну функцію під все на світі хоча в конкретних випадках зі 100 перевірок треба одна(якої в момент написання функції авжеж не було враховано)
Також в часи навчання розповідали про дефайни і що це погано, на данний момент замість глобальних констант в мене дефайни, я просто задався потанням чому це погано і не знайшов відповіді.
Про всякі інкапсуляції та поліморфізми казати нічого не буду, в мене більш сішечка а не плюси.
Ну і так, ще одне питання, звідки взялась гонитва за останніми версіями стандартів які вимагають, так інколи добавлять круті штуки, але якщо всього вистачає наприклад на с++11 нащо намагатись переходити на 17? я про таке час від часу чую від інших розробників, так само як і оновлення фреймворків.
Для мене взагалі в якийсь момент стало золотим правилом що фреймворк та компілятор на початку проекту скачується на окрему флешечку і до кінця проекту ніколи не оновлюється(дякую певним індусам з їх оновленням шо воно почало відвалюватись в рандомних місцях в рандомні моменти бо вони «покращили»)
Ну і так, хотів би почути яке зараз ставлення взагалі до «правил написання гарного коду», як і у компаніях так і як змінювалось ваше особисте ставлення до цього з часом
Нащо, бо мабуть скоро буду повертатись в програмування, і думаю як себе продавати, як спеціаліста який просто може виконувати поставленні задачі, чи всеж відкривати ці сучасні книжечки про правила програмування і готуватись до того що структурованість за певними принципами є більш головне ніж якісна і швидка розробка
Ну і так, просто поговорити
27 коментарів
Додати коментар Підписатись на коментаріВідписатись від коментарів