Форум Flasher.ru

Форум Flasher.ru (http://www.flasher.ru/forum/index.php)
-   Флейм (http://www.flasher.ru/forum/forumdisplay.php?f=53)
-   -   Конвенции (http://www.flasher.ru/forum/showthread.php?t=207691)

Wolsh 01.05.2014 12:48

Не понимаю позицию "если читать другим, то делайте хорошо, а для себя пишите ***код".
Боб Мартин например весьма убедительно трындит о том, что в процессе написания кода мы 75% времени его ЧИТАЕМ а не пишем. А уж когда начинаем писать другие классы и обращаемся к уже написанным частям, то, понятно, все 100%. И я с ним полностью согласен. Писать чистый код надо прежде всего ДЛЯ СЕБЯ, а не для каких-то мифических Контролёров и сослуживцев.

caseyryan 01.05.2014 13:03

Wolsh, если это был ответ на мой пост, то я там вначале написал "если нравится, чтобы везде был бардак" ;)
Если человеку не все равно, что у него творится в коде, то он сам, без подобных вопросов будет стремиться к написанию чистого кода

iNils 01.05.2014 14:19

Цитата:

Сообщение от Sintesis (Сообщение 1165020)
А догмы кто-то соблюдает? Например не более 5 приватных переменных на класс, не более 21 строчки в функции?

5 переменных на класс?!

Wolsh 01.05.2014 15:12

Да не, это бред. Это можно рассматривать как ориентир, типа "у тебя стало больше пяти переменных в классе? Подумай, может стоит выделить еще одну сущность? Разделить ответственности, выделив наследников?", но не более. Я думаю, нормальный девелопер итак об этом должен думать всегда, чтобы не плодить мультитулзы. Но как догмат, обязательный к соблюдению везде и всегда, это бред.

Добавлено через 3 минуты
caseyryan, да нет, это было сказано всем. В реальности ответ новичку "это надо для команды сослуживцев" означает строгое "это нафиг никому не надо". Поэтому не стоит вообще использовать такой аргумент. Человек, работающий в команде, просто не задает таких вопросов.

Sintesis 02.05.2014 16:37

Цитата:

Сообщение от Wolsh (Сообщение 1165053)
Это можно рассматривать как ориентир, типа "у тебя стало больше пяти переменных в классе? Подумай, может стоит выделить еще одну сущность?

Дада Wolsh, именно для этого. Это правила чистого кода! Ну ребят, что это вы забываете о FlexPMD?

Цитата:

FlexPMD
Техническая служба Adobe разработала инструмент FlexPMD, позволяющий оценить качество кода
ActionScript 3.0. FlexPMD — это инструмент, схожий с JavaPMD, но предназначенный для ActionScript.
FlexPMD оценивает непосредственно исходный код ActionScript 3.0 или Flex, помогая повысить его качество.
Инструмент обнаруживает фрагменты неправильного, неоправданно сложного и неоправданно длинного
кода, а также случаи некорректного использования жизненного цикла компонентов Flex.
FlexPMD — это проект с открытым исходным кодом от компании Adobe, доступный на странице
http://opensource.adobe.com/wiki/dis...lexpmd/FlexPMD. Подключаемый модуль Eclipse также доступен на
странице http://opensource.adobe.com/wiki/dis...Eclipse+plugin.
FlexPMD помогает оценить код и сделать его максимально чистым и оптимизированным. Сила FlexPMD — в
его расширяемости. Разработчик может создать собственный набор правил для оценки любого кода.
Например, можно создать правила для обнаружения чрезмерного использования фильтров или других
неудачных фрагментов кода, которые требуется исправить.
Эта штука даже встроена в FlashDevelop. Tools>FlashTools>Analyze Project Source Code

dark256 02.05.2014 18:43

Суть всех ваших эсхатологических реминесценций давно уже описана в литературе:

Цитата:

И никуда не денешься: литературный вкус у него великолепный, слабости любого художественного текста он вылавливает мгновенно, способность к литературному анализу у него прямо-таки редкостная, я таких критиков и среди наших профессионалов не знаю. И вот этот талант к анализу роковым образом оборачивается его неспособностью к синтезу, потому что сила писателя, на мой взгляд, не в том, чтобы уметь найти единственное верное слово, а в том, чтобы отбросить все заведомо неверные. А Леня, бедняга, сидит и день за днем мучительно, до помутнения в мозгах, взвешивает на внутренних весах своих, как будет точнее сказать: «она тронула его руку» или «она притронулась к его руке»... И в отчаянии он звонит за советом Вале, и жестокий Валя Демченко, не теряя ни секунды, отвечает ему знаменитым аверченковским: «Она схватила ему за руку и неоднократно спросила, где ты девал деньги...» И тогда он в отчаянии звонит мне, а я тоже не сахар, и ему остается только упавшим голосом упрекнуть меня в грубости...

Котяра 06.05.2014 13:10

Насчёт 5 приватов - это на самом деле не такой уж и бред. В 90% случаев можно провести такую декомпозицию/рефакторинг и, например, у меня в 90% случаев так и есть - приватов, да и пабликов не больше 5. Другое дело, что не всегда это будет оптимально с точки зрения производительности и читабельности. Тут нужны компромиссы. Но если количество таких приватов переваливает за десяток и это не какой-нибудь css враппер, то уже реально есть повод для задуматься.

caseyryan 06.05.2014 17:07

Цитата:

то уже реально есть повод для задуматься.
Да ну. Попробуй написать какую-нибудь игрульку с физ движком, и уложиться в 5 приватов. Это просто не реально. По-любому потребуется объявлять кучу тел, джоинтов, скоростей и т.п. Тут уж задумывайся не задумывайся, а переменных потребуется больше

Котяра 06.05.2014 19:12

Не факт. Делаешь для каждого типа тела свой классик. Объявление пишется в каком-нить конфиге и тому подобное. Если это у вас вызывает затруднения - то тоже есть повод задуматься. )
И я повторяю про 90% и специфику.

caseyryan 06.05.2014 20:33

Цитата:

Сообщение от Котяра (Сообщение 1165392)
Не факт. Делаешь для каждого типа тела свой классик. Объявление пишется в каком-нить конфиге и тому подобное. Если это у вас вызывает затруднения - то тоже есть повод задуматься. )
И я повторяю про 90% и специфику.

Все равно можно поставить задачу, где это не реально)
Если только пойти на хитрость, и все ссылки на объекты хранить в каком-нибудь массиве


Часовой пояс GMT +4, время: 08:03.

Copyright © 1999-2008 Flasher.ru. All rights reserved.
Работает на vBulletin®. Copyright ©2000 - 2026, Jelsoft Enterprises Ltd. Перевод: zCarot
Администрация сайта не несёт ответственности за любую предоставленную посетителями информацию. Подробнее см. Правила.