CookBook

0

Описание

Книга "рецептов" написания кода.

Языки

  • Markdown100%
год назад
3 года назад
2 года назад
год назад
3 года назад
2 года назад
3 года назад
3 года назад
4 месяца назад
год назад
5 месяцев назад
2 года назад
readme.md

Зачем нам code style?

Мы, разработчики, являемся сотрудниками компании, которая платит нам деньги, чтобы мы писали код. Код является конечным продуктом нашей работы, и компания, как и любой потребитель, заинтересована в том, чтобы получать качественный продукт за свои деньги. Как ответственные сотрудники, мы, со своей стороны, стараемся выпустить продукт нашей работы в наиболее качественном виде. Coding Style - это набор общепринятых практик, которые, по мнению сообщества, позволяют выпускать объективно качественный код.

Основные критерии качественного кода: работоспособность и гибкость. Чтобы компания могла заработать на нашем коде или могла использовать его для собственных нужд, он должен быть работоспособным. Также, заказчик в лице компании заинтересован в быстром и дешёвом развитии продукта. Мы, разработчики, и так обходимся компании недёшево. Чтобы минимизировать издержки компании на развитие продукта, код должен быть гибким, а значит, легко расширяемым и изменяемым. Основные общепринятые практики стиля кода направлены на увеличение работоспособности и гибкости продукта.

У каждого из нас есть свой собственный вкус. Собственный вкус, не подтверждённый объективно хорошими практиками, является сугубо субъективным и не является подтверждением качества нашего продукта. Мы не художники, мы ремесленники. А у ремесла есть стандарты качества. Навязывать собственный вкус за чужие деньги не является добросовестной практикой, если компания не наняла нас в качестве художников.

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

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