Просмотр полной версии : хороший стиль программрования
flash-master
22.06.2005, 02:13
плз, помогите! вот бывает начинаю программить что нибудь, получаю код на +-1000 строк, и все это где-то неработает, а если начинать разбирать то ничего понять немогу, и возникает непреодолимое желание все переписать заново :) мне кажется что я неграмотно программлю, может есть что нибудь что сможет облегчить читабельность кода?? ну естественно кроме коментариев...
мне помогает две вещи
заранее спроктировать всю эту фиговину, на листе бумаги(все методы, все свойства, где что возможно расширить на будущее)
и потом писать классами, кода получаеться больше зато запутаться труднее.
так же неплохо почитать колина мука, там в конце книги неплохо изложены различные патерны, да и я у себя в блоге когда то выкладывал парочку
flash-master
22.06.2005, 02:30
Nirth, спасибо...
Artem Brigert
22.06.2005, 02:38
волшебное слово UML знаешь?
да и как уже сказал Nirth ... design patterns
flash-master
22.06.2005, 02:48
Uml - унифицированный язык моделирования является графическим языком для визуализации, специфицирования, конструирования и документирования систем, в которых большая роль принадлежит программному обеспечению. ну и ... ??
Artem Brigert
22.06.2005, 02:50
мне кажется что я неграмотно программлю
тебе на кажется и ненадо говорить ну, иди читай а не нукай
flash-master
22.06.2005, 02:55
Artem Melnikov, я вроде коректно спросил, или нет? Если я что-то зделал не так - поправь меня, а не провоцыруй на грубость...
Artem Brigert
22.06.2005, 02:59
чувак ... облегчить читабельность кода может только грамотное программирование, а перед этим моделирование того что ты хочешь сделать. это делается разными способами, один из них это UML теперь понятно? или тебе по байтам разложить?
flash-master
22.06.2005, 03:04
теперь понятно, спасибо... чувак :)
Artem Brigert
22.06.2005, 03:05
значит с design patterns проблем нет, это хорошо :D
У меня вот тоже вопросы по этому поводу.
Пренебригаете ли вы префиксами и словом var? (просто иногда не хочется их писать)
Нужно ли давать имена переменным полностью? Например мне быстрее объявить переменную fp_mc и часто ее использовать, чем firstpreloader_mc. (более понятно, но нагромождение кода большое)
У меня лично такой взгляд. Если проект простой - по барабану даже как названы мувики, а если трудоемкий то тогда задумываюсь над названиями всех имен.(иногда записываю)
Когда много подгружаемых swf, то в каждом в _root определяю список методов (функций) что он умеет делать.
например
myStart() - собраться в кучу и появится всем частям
mySetProgress(value) - истановить значение загрузки
myEnd() - разлететься всем частям, исчезнуть... выгрузится
...ну и т.д.
чем короче имя переменной, тем лучше мне кажеться, а по поводу функций, я также примерно делаю, для кажого MovieClip определяю функциональные методы, что достаточно облегчает жизнь + мне ещё очень помогает mx.transitions =)
ну и конечно листенеры, события, и пр ... =)
можно подробней о mx.transitions
Листенеры как то редко использую. Можно примерчик где их лучше всего применять. (в чем их преимущество)
" чем короче имя переменной, тем лучше мне кажеться, "
я тож так думал, но по серьезной литературе видно что нужно давать не сокращенные имена а полностью. ссылаются на то что код более читабельный
А у меня своя библиотека для изингов =) макромедиевские транзишины как то слишком долго набивать, свой код я сократил на пару параметров.
2 Артем Мельников
UML вещь замечательная, но для AS я толкового еще ничего не видел, плохо смотрел?
да кстати очень помогают правила намисания суфиксов и префиксов
_array - массив
_txt - текствовое поле
_mc - мувиклип
и тд подробнее можно прочесть в хелпе,
и еще
__functionName для приватных функций(или свойств)
да кстати очень помогают правила намисания суфиксов и префиксов
_array - массив
_txt - текствовое поле
_mc - мувиклип
и тд подробнее можно прочесть в хелпе,
и еще
__functionName для приватных функций(или свойств)
Можно слегка оптимизировать и писать в начале без использования символа подчеркивания:
mcMyCLip
txtInput
arrayBall
и тд.
2iNils можно но один символ ничего не решает=)
да кстати, при работе с классами я всегда пишу import для всех классов(даже когда сокращнеие ненужно) просто чтобы видеть все ветки структуры.
ну и в тэгах [Event()] прописываю все создаваемые мной события.
GoreMika
22.06.2005, 12:30
Вставлю свои пять копеек.
Насчет читабельности - ИМХО спасение в хороших, продуманных коментариях.
Насчет имен переменных - взрослая летиратура говорит, что лучше давать полные имена. Если очень хочеться, то можно сокрашать общепринятые слова и словосочитания (mc например). Если все равно писать лень, то желательно в начале каждого блока оставлять коментарии к именам переменных, оъясняющих их назначение...
А вообще помогают схемы алгоритмов.... даже если не полные и от руки на клочке бумаги...
Artem Brigert
22.06.2005, 12:38
UML вещь замечательная, но для AS я толкового еще ничего не видел, плохо смотрел?
UML он же для всего ... ведь он же "U"ML ;)
а вообще меня например учили переменный обьявленные в классах называть m_bla. Member переменнные, или как это по-русски
угу, только вот под яву и с++ есть спец плагины, с удобными плюшками=) а под AS еще нету, в принципе я использую Visio и ArgoUML и надеюсь что выйдет плагин
Artem Brigert
22.06.2005, 12:51
когда AS станет "большим" ,будут и плагины IMHO
в OSFlash уже поднималась данная тема пару раз, и если не ошибусь в FlashCoders, есть надежда что скоро соберуться.
Artem Brigert
22.06.2005, 12:58
всё может быть
Ну что касается полных понятных имён , то лучше сначала объявлять полно ну например firstMoviePreloader_mc , а перед компиляцией просто заменять их на короткие (fmp) ... в итоге и код читабельный и вес откомпилированного файла меньше ;)
2 Kuzen
но увы не так хорошо работает при использовании многоразового кода(классы)
да и размер в несколько байт(и тех архивированных) не сильно мешает=)
но всеже давать имена больше 10 символов очень не люблю.
... или тебе по байтам разложить?
Очень хотелось бы почитать рахмышлизмы
великого программёра всех времён....... :p
2Nirth
Да в классах конечно же эта фишка не покатит ...
Artem Brigert
22.06.2005, 15:26
Очень хотелось бы почитать рахмышлизмы
в отличии от тебя я знаю о чём говорю, все экзамены по softwareengeneering я сдал без особых проблем
да и размер в несколько байт(и тех архивированных) не сильно мешает=)
размер одно, но и производительность не нада забывать
for(var i=10000,s,t=getTimer();i--; ) s+=i;
trace(getTimer()-t);//56,59,56,57
for(var i=10000,longVariableName,t=getTimer();i--; ) longVariableName+=i;
trace(getTimer()-t);//61,62,74,60
//10-15 % на дороге не валяются, если надо экономить канеш..
но всеже давать имена больше 10 символов очень не люблю
ну так и говорю, в принципе в 5-6 символов можно уложить много чего=)
Artem Brigert
22.06.2005, 19:58
Что пишет Мук на 62 странице ActionScript Подробное руководство русского издания 2002 года :)
Допустимые имена переменных
Не должны превышать в длину 255 символовю.(Ладно, это неправда, но пересмотрите свою систему именования переменнных, если они превосходят в длину 255 символов.)
;)
Работает на vBulletin ® версия 3.7.3. Copyright ©2000-2026, Jelsoft Enterprises Ltd. Перевод: zCarot
Copyright © 1999-2008 Flasher.ru. All rights reserved.