(no subject)
30/7/08 15:04Пишу мелкий джавовский (ME) проект. Нарушаю устои.
Например, пользуюсь глобальными переменными - то есть, синглтонами. Местами не делаю аксесоров, выставляю поля пабликами.
Вместо односторонних зависимостей делаю двусторонние; правда, это упрощает объектную модель.
Типа знаю, какие правила нарушаю, и к чему это может привести.
Интересно, расту или деградирую? Кто бы сделал кодревю?
Например, пользуюсь глобальными переменными - то есть, синглтонами. Местами не делаю аксесоров, выставляю поля пабликами.
Вместо односторонних зависимостей делаю двусторонние; правда, это упрощает объектную модель.
Типа знаю, какие правила нарушаю, и к чему это может привести.
Интересно, расту или деградирую? Кто бы сделал кодревю?
Tags:
(no subject)
30/7/08 12:11 (UTC)(no subject)
30/7/08 12:16 (UTC)То не работает то, что должно бы, то нужная фича есть только в более поздней версии прошивки. Ужоснах %)
Хотя Джава мне всё равно нравится.
(no subject)
30/7/08 12:18 (UTC)А WM - это намного больший больший ужас, хуже, чем Win32. Пока удерживаюсь %)
(no subject)
30/7/08 12:21 (UTC)Тренд в сторону сервисов идёт уже три года, и где всё?
(no subject)
30/7/08 12:24 (UTC)Завтра я не, а на следующей неделе, может, и вся команда с ICFP соберется.
(no subject)
30/7/08 12:19 (UTC)(no subject)
30/7/08 12:23 (UTC)А Series 40 цветут и пахнут, так что никто никуда не ушёл...
(no subject)
30/7/08 12:43 (UTC)По мне, так в программировании главнее Правила Здравого Смысла нет ничего.
(no subject)
30/7/08 12:45 (UTC)Проект хоть и мелкий, но саппорт будет, и в нём всё должно быть чисто.
(no subject)
30/7/08 12:58 (UTC)Если это все равно интересно, тогда кидай ссылку на сырцы в мыло/асю :)
(no subject)
30/7/08 13:02 (UTC)Может, на днях буду гулять по городу, зайду :)
(no subject)
30/7/08 15:38 (UTC)Только позвони заранее :)
(no subject)
30/7/08 14:47 (UTC)Я тоже как-то обёртку над скриптом делал, мелкая гуи либа чтобы по ремоту не тормозила. Я поначалу кругом передавал указатели на интерфейсы ( с++ ).
А потом устал. Сделал штук шесть глобалными. Понравилось, удобно. Я подумал. А ведь многи люди к этому пришли уже лет 10 назад -- удобно -- правда.
(no subject)
30/7/08 14:49 (UTC)Так что возможны варианты.
(no subject)
30/7/08 16:24 (UTC)(no subject)
30/7/08 18:32 (UTC)особенно могу делать что хочу, поглубже в реализации.
например:
почему бы внутреннему private классу с простой логикой или вообще только с данными не иметь все члены публичными.
а, например, если нужна константа, которая используется исключительно в пределах одного класса.. то я даже предпочту сделать ее глобальной в cpp-файле, чем делать private static - интерфейс чище остается..
а вот например заводить глобальную переменную с настройками приложения, меня пугает обычно.. хотя часто встречается такой заход.
тут лучше тоже припрятать дерьмо, например передавать стратегию в класс, а стратегия у себя в реализации будет уже пользоваться глобальной переменной с настройкой приложения. вытянуть класс из приложения и избавиться от такой глобальной переменной проще будет.
ну и тд.. вообще любое дерьмо надо зарывать, что бы не мешало окружающим.
вообще тут все зависит от того, что ты в конечном итоге хочешь получить))
ЗЫЖ это я конечно говорю с колокольни плюсов, т.е. разделение на *.h и *.cpp файлы, зависимости не только между сущностями но и между хедерами..
(no subject)
30/7/08 18:35 (UTC)(no subject)
30/7/08 18:51 (UTC)одна из причин для чего придуманы "формальные критерии"
это что бы переложить контроль за качеством, с людей на правила и со здравого смысла на шаблон.
и это действительно хорошо: можно смело не делать public переменных-членов, и не думать каждый раз, а какой доступ мне нужен к этой переменой..
но, естественно они могут грешить излишними обобщениями,
урезанием возможностей программиста/языка/технологии,
не упоминанием контекста в котором это правило работает.. и тд.
вот недавно пробегала ссылка на гугловский c++ code convention.
там каждый нашел место, куда плюнуть. но с другой стороны, они каждым правилом обезопасили себя от чего-то (не знаю от чего:))
(no subject)
30/7/08 18:57 (UTC)Они помогают автоматически проверить наличие ошибки.
Если у тебя доступ к переменной, особенно коллекции, только private, то ни одна сволочь снаружи её не попортит. И те де.
И везде, где я их нарушаю, я перекладываю ответственность за потенциальный баг с компилятора на себя.
(no subject)
30/7/08 19:08 (UTC)но в твем случае, да и в случае когда делаешь небольшой и не зависимый от всего проекта кусок.. каждый волен слушаться своего здравого смысла.
(no subject)
30/7/08 19:09 (UTC)(no subject)
30/7/08 19:24 (UTC)опасных мест не оставляю, просто не следую правилу в слепую.
деталей насчет твоих "грехов" не знаю. поэтому не отвечу)
(no subject)
31/7/08 11:36 (UTC)ведь ты же знаешь, что будет, если обойти эти конкретные правила?
;)
(no subject)
31/7/08 12:38 (UTC)(no subject)
17/9/08 11:02 (UTC)(no subject)
17/9/08 11:00 (UTC)нарущатьменять правила.Понимание, результатом какого компромисса является правило — признак роста. Это понимание может легко оказаться неверным, но есть только один способ это проверить ;-)
(no subject)
17/9/08 11:14 (UTC)Очки для умников - "Эксперт"
От Соломона.
Всё суета сует.
Мудрость веков,
Тайны бытия
Мир бестолков
А над миром - Я.
Очки, покупайте очки
Мальчики, девочки
;-)