Улучшение качества кода?

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

Ответ 1

Вам, вероятно, придется более внимательно изучить, что именно ваш магазин делает не так, и что они делают правильно. Что вы можете там изменить? Что вы можете изменить в своей практике, которая улучшит ваши навыки или навыки вашей команды? Трудно реализовать изменения в укромном магазине. Попробуйте предлагать обзоры кода (сначала в коде), что может привести к обсуждению.

Для материальных предметов я бы посмотрел на Скотт Мейерс Эффективный С++ и т.д. Разработайте свой набор навыков, и вы либо поможете улучшить других вокруг вас или перейдите в магазин, который будет. Кроме того, посмотрите на книгу "Банда четырех" Design Patterns.

Ответ 2

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

Ответ 3

  • Чтение хороших книг по программированию
  • Обучение от другого кода - проекты с открытым исходным кодом - лучшее место для запуска
  • Читайте хорошие блоги и форумы регулярно - Sutter mill, Coding Horror, Martin fowler и т.д.
  • Обзор кода
  • Модульные тесты
  • Использование хороших библиотек, таких как Boost, STL. Также понимая их реализацию

Ответ 4

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

Ответ 5

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

Рассматривали ли вы unit test письмо, если вы этого не делаете? Я нашел, что он действительно улучшил мой производственный код и дал мне больше уверенности в том, что то, что я пишу, - это то, что я должен писать.

Мне нравится идея Джейсона о просмотрах кода. Они могут быть полезными или они могут быть местом для споров - действительно зависит от того, как вы устанавливаете тон.

Ответ 6

Архитектор и дизайн проекта хорошо, чтобы ни один из разработчиков не смог пойти по другому пути, чтобы нарушить качество. Если вы установите отличный дизайн, люди просто пройдут маршрут, и они автоматически узнают

Ответ 7

Другие вещи, чтобы попробовать добавить unit тесты и .

Ответ 8

Хотя это, вероятно, не так прямо, как ответ, я рекомендую вам забрать книгу Code Complete. Я считаю, что это лучший ресурс для изучения того, как быть лучшим программистом. Если вы прочитаете всю книгу и поймете, о чем она говорит, вы научитесь лучше себя и своего кода.

Ответ 9

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

Коллегиальный обзор: проверка качества кода также заставит программистов думать о том, как они пишут код.

Ответ 10

Хорошо, что вы признаете, что есть место для улучшения и у вас есть желание попытаться внести некоторые изменения. Я предлагаю прочитать 19-недельный дневник с сообщением о Джеймсе Шоре , где он документирует шаги, которые он прошел, чтобы принять гибкое развитие в своей компании. Это тяжелый бой, но его опыт показывает, что вы можете изменить ситуацию.

Ответ 11

Просто вопрос - хорошее начало.

В частности, вы можете:

  • Допустим, что ваш код сосет
  • Начните просить других, желательно других, имеющих больше опыта, просмотреть свой код.
  • Внедрение сервера непрерывной сборки - вы должны быть тем, кто использует этот первый
  • Имейте мужество, потому что это может быть трудно
  • Будьте скромными
  • Читать полный код
  • Используйте методологию разработки программного обеспечения, которая поощряет работу команды. Некоторые из гибких методологий действительно хороши в этом
  • Прочитайте блоги для разработчиков.
  • Включение в группу пользователей

Изменить сложно, и вы должны быть тем, кто сначала меняет.

Если вы работаете в среде, в которой другие счастливы, так оно и есть, вы будете иметь грубый ход. Будьте настойчивы в стремлении улучшить качество кода.

Ответ 12

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

Если вы используете g++, вы можете получить базовую сумму помощи из опции -WeffС++.