Ответы пользователя по тегу Паттерны проектирования
  • Где грани между быдлокодом, промежуточной стадией и профессиональным программированием?

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

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

    По этому я стараюсь избегать слов "говнокод" и "красивый код". Есть код который имеет хорошие или плохие характеристики, в контексте выполняемой задачи. Характеристик много, от функциональных:
    Выполнение поставленной задачи.
    Отсутствие багов.
    Скорость работы.
    До качественных:
    Цикломатическая сложность, Связность, Сфокусированность, Тестабельность, Читабельность, Понимабельность, и.т.д.

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