Форум Flasher.ru
Ближайшие курсы в Школе RealTime
Список интенсивных курсов: [см.]  
  
Специальные предложения: [см.]  
  
 
Блоги Правила Справка Пользователи Календарь Сообщения за день
 

Вернуться   Форум Flasher.ru > Flash > ActionScript 3.0

Версия для печати  Отправить по электронной почте    « Предыдущая тема | Следующая тема »  
Опции темы Опции просмотра
 
Создать новую тему Ответ
Старый 18.09.2012, 20:47
Fintch вне форума Посмотреть профиль Отправить личное сообщение для Fintch Найти все сообщения от Fintch
  № 1  
Ответить с цитированием
Fintch
 
Аватар для Fintch

Регистрация: Mar 2009
Сообщений: 51
Question Стилистика кодописания.

Здравствуйте!

Уважаемые гуру-программисты, поделитесь советами как писать код красиво, грамотно?
Нет, я не конечно понимаю, что в конечном итоге каждый пишет код так как ему удобнее, но..
Мне интересно, существуют какие-то стилистики у опытных программистов на ActionScript 3.0?

Может есть какие-то статьи?
Я нашел вот такую: ссылка
Но хотелось бы более подробное узнать о всех деталях)
Я часто вижу как используют
Код AS3:
this.nameFunction
, или задают имя закрытому методу как
Код AS3:
_privateMethod
и тп.

Есть же какие-то каноны стилистики?)

Очень хотелось бы узнать об этом подробнее!
Подскажите пожалуйста..

Старый 18.09.2012, 20:49
Krusty вне форума Посмотреть профиль Отправить личное сообщение для Krusty Найти все сообщения от Krusty
  № 2  
Ответить с цитированием
Krusty

Регистрация: Jul 2007
Сообщений: 393
Совершенный код С. Макконнелл
ИМХО, это лучшее по теме.

Старый 18.09.2012, 21:06
in4core вне форума Посмотреть профиль Отправить личное сообщение для in4core Найти все сообщения от in4core
  № 3  
Ответить с цитированием
in4core
[+4 06.05.14]
 
Аватар для in4core

Регистрация: Mar 2009
Сообщений: 4,219
Записей в блоге: 14
Все поля класса _poleName , публичные poleName
Все локальные переменные poleName
Все методы methodName

this используем для всех полей класса. Для локальных не используем.
Названия классов с Большой буквы.
Названия интерфейсов IName
Названия констант БОЛЬШИМИ буквами

Код AS3:
private function flush(size:int = 0):void
{
   this._privateVar = 5 * size;
   this._privateVar2 = this._privateVar3 / this._privateVar4;
   super.useWheel(this._privateVar5);
   if(!size || this._privateBoolean) trace("ok");
}
Это абсолютно читабельно, если еще и названия переменных соответсвующие будут )
__________________
Марк Tween

Старый 18.09.2012, 21:08
dimarik вне форума Посмотреть профиль Отправить личное сообщение для dimarik Найти все сообщения от dimarik
  № 4  
Ответить с цитированием
dimarik
.
 
Аватар для dimarik

модератор форума
Регистрация: Sep 2003
Адрес: Москва
Сообщений: 4,630
Записей в блоге: 20
Периодически такие темы поднимаются.
__________________
Воспитан в TimeZero. Работаю в Mail.ru.

Старый 18.09.2012, 21:09
Aquahawk вне форума Посмотреть профиль Отправить личное сообщение для Aquahawk Посетить домашнюю страницу Aquahawk Найти все сообщения от Aquahawk
  № 5  
Ответить с цитированием
Aquahawk
 
Аватар для Aquahawk

Регистрация: Nov 2010
Адрес: Москва
Сообщений: 915
Записей в блоге: 4
Отправить сообщение для Aquahawk с помощью ICQ Отправить сообщение для Aquahawk с помощью Skype™
Я сторонник того что кодстаил должен быть и точка. Какой не так важно. Я раньше был всегда против явного указания this и super, и подчёркивания не ставил, и скобку всегда переносил. А потом я сменил работу где всё вышеперечисленное делается и делается обязательно. Привык быстро.
Также я сторонник того чтобы одна конструкция всегда делалась однозначно, т.е. я сторонник всегда в ифе писать скобки и всегда переносить строку для следующей инструкции даже если она там одна
не так
Код AS3:
if (!isValid(value)) return;
а
Код AS3:
if (!isValid(value)) {
return;
}
табуляция кривая потому что тут прямо код написал.
И побуждений тут несколько.
1. Не надо каждый раз думать надо переносить или нет, надо скобки или нет. Чем меньше думаешь над повседневными кострукциями тем лучше.
2. При расширенни функционала всё однозначно, просто добавишь строки, не надо смотреть один там оператор был или нет, ставить скобки или нет.
__________________
:)

Старый 18.09.2012, 21:14
КорДум вне форума Посмотреть профиль Отправить личное сообщение для КорДум Найти все сообщения от КорДум
  № 6  
Ответить с цитированием
КорДум
 
Аватар для КорДум

блогер
Регистрация: Jan 2008
Адрес: syktyvkar
Сообщений: 3,803
Записей в блоге: 10
http://sourceforge.net/adobe/wiki/Pr...nthandlernames
А здесь была адобовская конвенция. Никто не в курсе, куда она делась? Очень даже в тему бы подошло.
__________________
тут я

Старый 18.09.2012, 21:21
Bgg вне форума Посмотреть профиль Отправить личное сообщение для Bgg Найти все сообщения от Bgg
  № 7  
Ответить с цитированием
Bgg
 
Аватар для Bgg

Регистрация: Jan 2009
Адрес: Петерсбург
Сообщений: 1,882
Как тимлид скажет, так и пишите. Если вы - тимлид, то пишите как вы считаете нужным.

Старый 18.09.2012, 22:05
Fintch вне форума Посмотреть профиль Отправить личное сообщение для Fintch Найти все сообщения от Fintch
  № 8  
Ответить с цитированием
Fintch
 
Аватар для Fintch

Регистрация: Mar 2009
Сообщений: 51
@Krusty Спасибо, но книга слишком абстрактна, много теории. Мне скорее нужнен практический материал, с примерами. И конечно, лучше по AS3.

@in4core Интересно. Я так все и делаю, почти) А методы вызывают с использованием this внутри класса?
И как насчет определения метода по типу
Код AS3:
private function _init(e:Event = null):void {
    // code
}
Код AS3:
function Main():void {
 
    super();
 
    if (stage) this._init();
    else this.addEventListener(Event.ADDED_TO_STAGE, this._init());
 
}
@dimarik Спасибо, просмотрю.

@Aquahawk Я тоже за второй вариант) Когда код большой легко зрительно выделять именно такие конструкции. В первом варианте не так четко выделяется.

@Bgg К сожалению, я единственный программист на AS3 в нашей маленькой студии)

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


Последний раз редактировалось Fintch; 18.09.2012 в 22:06. Причина: Правка кода.
Старый 18.09.2012, 22:11
Wadimir вне форума Посмотреть профиль Отправить личное сообщение для Wadimir Найти все сообщения от Wadimir
  № 9  
Ответить с цитированием
Wadimir

Регистрация: Nov 2009
Сообщений: 176
В каждой конторе может устанавливается своя конвенция.

Старый 18.09.2012, 22:13
in4core вне форума Посмотреть профиль Отправить личное сообщение для in4core Найти все сообщения от in4core
  № 10  
Ответить с цитированием
in4core
[+4 06.05.14]
 
Аватар для in4core

Регистрация: Mar 2009
Сообщений: 4,219
Записей в блоге: 14
Методы с _ я считаю лишним . Без подчеркивания у нас только паблик ( 10% ) и локал ( 20% ) , поэтому разграничение отличное, а если и методы с подчеркиванием , то уже 50%-50% выходит, тоесть хуже.
Методы с использованием this - так же считаю лишним, ведь методы ВСЕГДА this ) , а если метод суперкласса мы так и пишем super.method()

Скобки переношу всегда так

Код AS3:
if(a)
{
 //
}
Не придерживаюсь написание if со скобами и без, если 1 строчный пишу без скобок. НО есть правило, если конструкция
Код AS3:
if(a) a
else
{
 b
 c
}
то для if так же скобки.
__________________
Марк Tween

Создать новую тему Ответ Часовой пояс GMT +4, время: 22:58.
Быстрый переход
  « Предыдущая тема | Следующая тема »  

Теги
стилистика , стиль

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.


 


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


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