Форум Flasher.ru

Форум Flasher.ru (http://www.flasher.ru/forum/index.php)
-   ActionScript 3.0 (http://www.flasher.ru/forum/forumdisplay.php?f=83)
-   -   Прокрутка текста (http://www.flasher.ru/forum/showthread.php?t=151825)

КорДум 06.03.2011 22:15

Раз уж пошел оффтоп: хотел бы узнать, а для чего показывать, какая переменная приватная, а какая нет? Внутри класса, на мой взгляд, бессмысленно, а вне класса видны только публичные свойства и так.

Wolsh 06.03.2011 22:15

Я тоже всегда именую приватные переменные с underscore.
Вот к названиям типа timerEventHandler никак не привыкну, все по-старинке - "onTimer", "onFadeOutStart" ))) Никак не могу понять, чем такое название проясняет смысл лучше, чем то что идет за ним в скобках))
Код AS3:

function timerEventHandler ( event:TimerEvent ) : void

Добавлено через 12 минут
Цитата:

для чего показывать, какая переменная приватная, а какая нет?
У них же разное назначение в теле функции. Локальная переменная - временная, это "оперативная память", которая умрет когда функция отработает. Приватная же - storage, и о ее содержимом после всех вычислений надо заботиться. Она - для многих функций/методов. И когда в теле просматриваемой мной функции вдруг появляется имя с "_" - я знаю что это член класса и он определен ЗА пределами этой функции. Я не беспокоюсь о том, что эта переменная не объявлена и не инициализирована ЗДЕСЬ. Я беспокоюсь только о том, чтобы в неё не записалось какое-то вспомогательное промежуточное значение. Например я знаю что rowWidth это плавающая ширина при расстановке элементов, а _rowWidth это результирующая после того, как вся строка составлена.

gloomyBrain 06.03.2011 22:28

Цитата:

хотел бы узнать, а для чего показывать, какая переменная приватная, а какая нет? Внутри класса, на мой взгляд, бессмысленно, а вне класса видны только публичные свойства и так.
Ну взять хотя бы акцессоры и мутаторы:
Код AS3:

private var _direction:Point = ...
...
public function get direction():Point {
 
}
 
public function set direction():Point {
 
}

Максимальная ясность внутри класса - где акцессор-мутатрор, а где приватная переменная. При этом так же ясно, что имеется ввиду одно и то же.

Bgg 06.03.2011 22:29

Цитата:

Сообщение от gloomyBrain (Сообщение 978496)
Ну взять хотя бы акцессоры и мутаторы:

А ещё зачем?

gloomyBrain 06.03.2011 22:36

Ну, если Вы согласны называть часть приватных переменных начиная с "_", то какие у Вас есть причины этого не делать для второй части? =)

КорДум 06.03.2011 22:46

Wolsh, а зачем использовать "_" для приватных, а не для локальных? Красивее (да и понятнее, на мой взгляд) ведь смотрится, когда "_" нет вообще или меньше всего? :)
gloomyBrain, вот для акцессоров и мутаторов я и использую.
Цитата:

какие у Вас есть причины этого не делать для второй части?
Эстетика и красота правят миром кодом!

Bgg 06.03.2011 22:48

Цитата:

Сообщение от gloomyBrain (Сообщение 978498)
Ну, если Вы согласны называть часть приватных переменных начиная с "_", то какие у Вас есть причины этого не делать для второй части? =)

Лень и ещё ощущение бессмысленного, повсеместно расставленного символа в коде.

Зачем мне тут наживать 4 раза shift+"-"?
Код AS3:

private function ppc():void
{
    _internalTextField.text = _internalVar + _otherInternalVar + _internalInt.toString();
}


Wolsh 07.03.2011 01:44

Цитата:

Wolsh, а зачем использовать "_" для приватных, а не для локальных? Красивее...
Красивее - когда pubic члены класса не содержат подчеркивания, согласны?)) Ну а дальше все само организуется - storage для геттеров и сеттеров называются как эти геттеры и сеттеры, но с подчеркиванием. И они - приватные. И ничто не заставит меня называть одни приватные по конвенции, а другие приватные - как в голову взбредет.
Насчет того, какие в коде встречаются чаще - ну это уж когда как.
Подчеркивание цепляет глаз. Приватные рассыпаны по разным функциям - это они должны цеплять глаз, чтобы легче было найти их в других методах. А как раз локальные переменные в контексте всей страницы кода совершенно неинтересны и могут сливаться сколь угодно. Когда-то у меня как дизайнера тоже были претензии к этому уродливому подчеркиванию, и я тоже размышлял так - пусть уродливыми будут малозначимые и временно живущие, то есть - локальные. А гордые бессмертные - приватные - пусть будут красивыми, без костылей. Я попробовал писать так. Разочарование настигло на следующий же день, когда я попытался прочитать вчерашний код - глаз упорно цеплялся за андерскоры локальных переменных, совершенно меня не интересующих при попытке собрать в голове логику класса.

in4core 07.03.2011 02:02

Бредовый разговор если честно. Кто как хочет так и пишет. Но писать _private есть правильно имхо. И понятно и читабельно + автокомплит быстрей... ваще короче одни плюсы

Добавлено через 1 минуту
А вот минусов кроме ЛИШНИЙ раз ШИФТ нажать - я не вижу. лентяи...


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

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