<?xml version="1.0" encoding="UTF-8"?><rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	>
<channel>
	<title>Comments on: Унификация стиля кодирования в команде - тупичок с граблями.</title>
	<atom:link href="http://blog.not-a-kernel-guy.com/2008/08/13/332/feed" rel="self" type="application/rss+xml" />
	<link>http://blog.not-a-kernel-guy.com/2008/08/13/332</link>
	<description>... in the Windows kernel team</description>
	<pubDate>Thu, 08 Jan 2009 16:32:16 +0000</pubDate>
	<generator>http://wordpress.org/?v=2.7</generator>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
		<item>
		<title>By: Not a kernel guy</title>
		<link>http://blog.not-a-kernel-guy.com/2008/08/13/332/comment-page-1#comment-13132</link>
		<dc:creator>Not a kernel guy</dc:creator>
		<pubDate>Thu, 18 Dec 2008 18:17:37 +0000</pubDate>
		<guid isPermaLink="false">http://blog.not-a-kernel-guy.com/2008/08/13/332#comment-13132</guid>
		<description>&lt;blockquote&gt;Не вижу в этом ничего логичного. Открыли проект, нажали “применить стиль”, закоммитили, profit.&lt;/blockquote&gt;

А вот нет кнопочки "применить стиль", которая даёт приемлемый результат. Лучшие стилизаторы правят только 100% распознанные участки кода. Нетронутые участки кода требуют ручной правки. Худшие стилизаторы правят 100% кода, требуя последующей ручной правки всего кода.

&lt;blockquote&gt;Автоматический проверятор на continious integration сервере не даст забыть.&lt;/blockquote&gt;

Именно. Только автоматика не ловит все.

&lt;blockquote&gt;Поэтому надо _везде_ применить одинаковый стиль.&lt;/blockquote&gt;
&lt;blockquote&gt;Да откуда вы это взяли? Стиль выбирают _до_ написания кода.&lt;/blockquote&gt;

Это всё в теории хорошо...

&lt;blockquote&gt;Переведите их из warning’ов в error’ы. Иначе действительно на них все будут забивать.&lt;/blockquote&gt;

Нам вообще-то еще и работать надо. Есть более еффективные способы приложить свои усилия чем вычищать ВСЕ предупреждения. Опять же, на самом деле нужно вычистить только те предупреждения, что действительно скрывают за собой проблемы. Только вот как их распознать. :-)

&lt;blockquote&gt;Выберите такой стиль, который поддерживается стилизатором.&lt;/blockquote&gt;

Он не удобен, так как значительная часть исправлений портит код.

&lt;blockquote&gt;Либо error, либо конструкция является приемлемой.&lt;/blockquote&gt;

Если бы компилятор мог 100% достоверно распознавать ошибки, то он бы не выдавал бы предупреждения как класс. А пока этого не случилось для предупреждений определены "уровни", которые приблизительно отражают степень потенциальной опасности предупреждения.

&lt;blockquote&gt;Зачем? Просто не надо в одном и том же коммите исправлять стиль и менять логику работы кода.&lt;/blockquote&gt;

Во-первых, эта и есть одно из правил, как минимизировать кол-во правок. А во-вторых, массовые правки сложно мерджить, соотв. нужно избагать массовых правок в разных ветках.</description>
		<content:encoded><![CDATA[<blockquote><p>Не вижу в этом ничего логичного. Открыли проект, нажали “применить стиль”, закоммитили, profit.</p></blockquote>
<p>А вот нет кнопочки &#8220;применить стиль&#8221;, которая даёт приемлемый результат. Лучшие стилизаторы правят только 100% распознанные участки кода. Нетронутые участки кода требуют ручной правки. Худшие стилизаторы правят 100% кода, требуя последующей ручной правки всего кода.</p>
<blockquote><p>Автоматический проверятор на continious integration сервере не даст забыть.</p></blockquote>
<p>Именно. Только автоматика не ловит все.</p>
<blockquote><p>Поэтому надо _везде_ применить одинаковый стиль.</p></blockquote>
<blockquote><p>Да откуда вы это взяли? Стиль выбирают _до_ написания кода.</p></blockquote>
<p>Это всё в теории хорошо&#8230;</p>
<blockquote><p>Переведите их из warning’ов в error’ы. Иначе действительно на них все будут забивать.</p></blockquote>
<p>Нам вообще-то еще и работать надо. Есть более еффективные способы приложить свои усилия чем вычищать ВСЕ предупреждения. Опять же, на самом деле нужно вычистить только те предупреждения, что действительно скрывают за собой проблемы. Только вот как их распознать. <img src='http://blog.not-a-kernel-guy.com/wp-includes/images/smilies/icon_smile.gif' alt=':-)' class='wp-smiley' /> </p>
<blockquote><p>Выберите такой стиль, который поддерживается стилизатором.</p></blockquote>
<p>Он не удобен, так как значительная часть исправлений портит код.</p>
<blockquote><p>Либо error, либо конструкция является приемлемой.</p></blockquote>
<p>Если бы компилятор мог 100% достоверно распознавать ошибки, то он бы не выдавал бы предупреждения как класс. А пока этого не случилось для предупреждений определены &#8220;уровни&#8221;, которые приблизительно отражают степень потенциальной опасности предупреждения.</p>
<blockquote><p>Зачем? Просто не надо в одном и том же коммите исправлять стиль и менять логику работы кода.</p></blockquote>
<p>Во-первых, эта и есть одно из правил, как минимизировать кол-во правок. А во-вторых, массовые правки сложно мерджить, соотв. нужно избагать массовых правок в разных ветках.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Marat Radchenko</title>
		<link>http://blog.not-a-kernel-guy.com/2008/08/13/332/comment-page-1#comment-13128</link>
		<dc:creator>Marat Radchenko</dc:creator>
		<pubDate>Thu, 18 Dec 2008 08:00:35 +0000</pubDate>
		<guid isPermaLink="false">http://blog.not-a-kernel-guy.com/2008/08/13/332#comment-13128</guid>
		<description>

&lt;blockquote&gt;Логичное решение, которое принимает любая вменяемая команда – постепенный переход; вместе с нормальными исправлениями разработчики будут править стиль исправляемого участка кода. На этом почему-то все успокаиваются.
&lt;/blockquote&gt;

Не вижу в этом ничего логичного. Открыли проект, нажали "применить стиль", закоммитили, profit.



&lt;blockquote&gt;Разработчики возвращаются к насущным проблемам, все реже вспоминая про выбранный стиль (хотя и пытаясь, время от времени, ему следовать).
&lt;/blockquote&gt;

Автоматический проверятор на continious integration сервере не даст забыть.



&lt;blockquote&gt;После массовых правок кода, наиболее ретивые поклонники стиля наталкиваются на многочисленные конфликты при слиянии кода из разных веток.
&lt;/blockquote&gt;

Поэтому надо _везде_ применить одинаковый стиль.



&lt;blockquote&gt;Почему так случается? Очевидно потому, что факт выбора стиля никак не влияет на его интеграцию в процесс написания кода. Типичное «стиль выбран, давайте весь новый код писать в новом стиле» не работает.
&lt;/blockquote&gt;

Да откуда вы это взяли? Стиль выбирают _до_ написания кода.



&lt;blockquote&gt;Аналогичная вещь случается когда пытаются вычистить все предупреждения компилятора если их количество больше 10 на каждый исходный файл проекта.
&lt;/blockquote&gt;

Переведите их из warning'ов в error'ы. Иначе действительно на них все будут забивать.



&lt;blockquote&gt;На практике же выясняется, что либо выбранный стиль не поддерживается ни одним из них, либо стилизатор недостаточно толерантен к вариациям стиля, исправляя то, что исправлять не следовало.
&lt;/blockquote&gt;

Выберите такой стиль, который поддерживается стилизатором.



&lt;blockquote&gt;Аналогично, стилизатор должен позволять контролировать важность того или иного предупреждения. По мере уменьшения предупреждений определённого вида, их можно превратить в ошибки с тем, чтобы гарантированно избежать их появления в будущем.
&lt;/blockquote&gt;

Не согласуется с вашим же утверждением, что warning'и исправляться не будут. Либо error, либо конструкция является приемлемой.



&lt;blockquote&gt;Кроме всего прочего, в документ, описывающий выбранный стиль следует включить рекомендации о том, как избежать массовых правок кода при стилевых правках.
&lt;/blockquote&gt;

Зачем? Просто не надо в одном и том же коммите исправлять стиль и менять логику работы кода.</description>
		<content:encoded><![CDATA[<blockquote><p>Логичное решение, которое принимает любая вменяемая команда – постепенный переход; вместе с нормальными исправлениями разработчики будут править стиль исправляемого участка кода. На этом почему-то все успокаиваются.
</p></blockquote>
<p>Не вижу в этом ничего логичного. Открыли проект, нажали &#8220;применить стиль&#8221;, закоммитили, profit.</p>
<blockquote><p>Разработчики возвращаются к насущным проблемам, все реже вспоминая про выбранный стиль (хотя и пытаясь, время от времени, ему следовать).
</p></blockquote>
<p>Автоматический проверятор на continious integration сервере не даст забыть.</p>
<blockquote><p>После массовых правок кода, наиболее ретивые поклонники стиля наталкиваются на многочисленные конфликты при слиянии кода из разных веток.
</p></blockquote>
<p>Поэтому надо _везде_ применить одинаковый стиль.</p>
<blockquote><p>Почему так случается? Очевидно потому, что факт выбора стиля никак не влияет на его интеграцию в процесс написания кода. Типичное «стиль выбран, давайте весь новый код писать в новом стиле» не работает.
</p></blockquote>
<p>Да откуда вы это взяли? Стиль выбирают _до_ написания кода.</p>
<blockquote><p>Аналогичная вещь случается когда пытаются вычистить все предупреждения компилятора если их количество больше 10 на каждый исходный файл проекта.
</p></blockquote>
<p>Переведите их из warning&#8217;ов в error&#8217;ы. Иначе действительно на них все будут забивать.</p>
<blockquote><p>На практике же выясняется, что либо выбранный стиль не поддерживается ни одним из них, либо стилизатор недостаточно толерантен к вариациям стиля, исправляя то, что исправлять не следовало.
</p></blockquote>
<p>Выберите такой стиль, который поддерживается стилизатором.</p>
<blockquote><p>Аналогично, стилизатор должен позволять контролировать важность того или иного предупреждения. По мере уменьшения предупреждений определённого вида, их можно превратить в ошибки с тем, чтобы гарантированно избежать их появления в будущем.
</p></blockquote>
<p>Не согласуется с вашим же утверждением, что warning&#8217;и исправляться не будут. Либо error, либо конструкция является приемлемой.</p>
<blockquote><p>Кроме всего прочего, в документ, описывающий выбранный стиль следует включить рекомендации о том, как избежать массовых правок кода при стилевых правках.
</p></blockquote>
<p>Зачем? Просто не надо в одном и том же коммите исправлять стиль и менять логику работы кода.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: SanSanych</title>
		<link>http://blog.not-a-kernel-guy.com/2008/08/13/332/comment-page-1#comment-11806</link>
		<dc:creator>SanSanych</dc:creator>
		<pubDate>Tue, 02 Sep 2008 18:39:06 +0000</pubDate>
		<guid isPermaLink="false">http://blog.not-a-kernel-guy.com/2008/08/13/332#comment-11806</guid>
		<description>Мне кажется, что стили кодирования, регламентирующие написание кода с точностью до расстановки скобок и отступов - это исключительно дело автоматических утилит. Например, в Eclipse (в том числе с CDT) есть масса возможностей по настройке автоматического поддержания стиля кодирования.
Что мне кажется действительно важным - это правила именования и ограничения на используемые конструкции.</description>
		<content:encoded><![CDATA[<p>Мне кажется, что стили кодирования, регламентирующие написание кода с точностью до расстановки скобок и отступов - это исключительно дело автоматических утилит. Например, в Eclipse (в том числе с CDT) есть масса возможностей по настройке автоматического поддержания стиля кодирования.<br />
Что мне кажется действительно важным - это правила именования и ограничения на используемые конструкции.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Weekly linkdump #139 - max - блог разработчиков</title>
		<link>http://blog.not-a-kernel-guy.com/2008/08/13/332/comment-page-1#comment-11667</link>
		<dc:creator>Weekly linkdump #139 - max - блог разработчиков</dc:creator>
		<pubDate>Fri, 15 Aug 2008 05:00:09 +0000</pubDate>
		<guid isPermaLink="false">http://blog.not-a-kernel-guy.com/2008/08/13/332#comment-11667</guid>
		<description>[...] Опыт внедрения единых стандартов кодирования, Not a kernel guy » Унификация стиля кодирования в команде - ту... [...]</description>
		<content:encoded><![CDATA[<p>[...] Опыт внедрения единых стандартов кодирования, Not a kernel guy » Унификация стиля кодирования в команде - ту&#8230; [...]</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Not a kernel guy</title>
		<link>http://blog.not-a-kernel-guy.com/2008/08/13/332/comment-page-1#comment-11664</link>
		<dc:creator>Not a kernel guy</dc:creator>
		<pubDate>Thu, 14 Aug 2008 15:38:54 +0000</pubDate>
		<guid isPermaLink="false">http://blog.not-a-kernel-guy.com/2008/08/13/332#comment-11664</guid>
		<description>&lt;blockquote&gt;Под стилем имеется в виду только форматирование кода или что-то еще?&lt;/blockquote&gt;

И форматирование, и именование переменных, и использование/не использование определённых конструкций. Всего по немножку. Всё это автомитически проверить не удается, но я хочу сказать, что то, что можно проевить автоматически должно проверяться автоматически. 

Рецензирование кода, безусловно, помогает.</description>
		<content:encoded><![CDATA[<blockquote><p>Под стилем имеется в виду только форматирование кода или что-то еще?</p></blockquote>
<p>И форматирование, и именование переменных, и использование/не использование определённых конструкций. Всего по немножку. Всё это автомитически проверить не удается, но я хочу сказать, что то, что можно проевить автоматически должно проверяться автоматически. </p>
<p>Рецензирование кода, безусловно, помогает.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Alex Lebedev</title>
		<link>http://blog.not-a-kernel-guy.com/2008/08/13/332/comment-page-1#comment-11662</link>
		<dc:creator>Alex Lebedev</dc:creator>
		<pubDate>Thu, 14 Aug 2008 11:41:08 +0000</pubDate>
		<guid isPermaLink="false">http://blog.not-a-kernel-guy.com/2008/08/13/332#comment-11662</guid>
		<description>Под стилем имеется в виду только форматирование кода или что-то еще?

Если форматирование, то задача почти полностью решается через автоматические стайлеры.  Если что-то более нематериальное (соглашения об именовании, например, вообще не проверишь автоматически), то помогает только процедура рецензирования кода.  Чем более тшательно она проводится и для чем большей доли изменений является обязательной, тем лучше будет ситуация со стилем.

Еще может оказаться весьма полезным fxCop, надо только подобрать правильные набор проверок для конкретного проекта.</description>
		<content:encoded><![CDATA[<p>Под стилем имеется в виду только форматирование кода или что-то еще?</p>
<p>Если форматирование, то задача почти полностью решается через автоматические стайлеры.  Если что-то более нематериальное (соглашения об именовании, например, вообще не проверишь автоматически), то помогает только процедура рецензирования кода.  Чем более тшательно она проводится и для чем большей доли изменений является обязательной, тем лучше будет ситуация со стилем.</p>
<p>Еще может оказаться весьма полезным fxCop, надо только подобрать правильные набор проверок для конкретного проекта.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: The</title>
		<link>http://blog.not-a-kernel-guy.com/2008/08/13/332/comment-page-1#comment-11661</link>
		<dc:creator>The</dc:creator>
		<pubDate>Thu, 14 Aug 2008 10:53:51 +0000</pubDate>
		<guid isPermaLink="false">http://blog.not-a-kernel-guy.com/2008/08/13/332#comment-11661</guid>
		<description>Мы все решили просто - написали свой стайлер кода, который перепахивает 100% всех проектов в нужный стиль. Повесили на хоткей в студии у всех и теперь по нажатию на одну кнопку гарантированно за 1-2 секунды правится весь текущий активный проект.

Теперь все проекты, включая старые, гарантированно в одном стиле.</description>
		<content:encoded><![CDATA[<p>Мы все решили просто - написали свой стайлер кода, который перепахивает 100% всех проектов в нужный стиль. Повесили на хоткей в студии у всех и теперь по нажатию на одну кнопку гарантированно за 1-2 секунды правится весь текущий активный проект.</p>
<p>Теперь все проекты, включая старые, гарантированно в одном стиле.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Not a kernel guy : Унификация стиля кодирования в команде - тупичок с граблями.</title>
		<link>http://blog.not-a-kernel-guy.com/2008/08/13/332/comment-page-1#comment-11660</link>
		<dc:creator>Not a kernel guy : Унификация стиля кодирования в команде - тупичок с граблями.</dc:creator>
		<pubDate>Thu, 14 Aug 2008 06:52:55 +0000</pubDate>
		<guid isPermaLink="false">http://blog.not-a-kernel-guy.com/2008/08/13/332#comment-11660</guid>
		<description>[...] from blog.not-a-kernel-guy.com.  Published Thursday, August 14, 2008 7:52 AM by alexeypa Filed under: [...]</description>
		<content:encoded><![CDATA[<p>[...] from blog.not-a-kernel-guy.com.  Published Thursday, August 14, 2008 7:52 AM by alexeypa Filed under: [...]</p>
]]></content:encoded>
	</item>
</channel>
</rss>
