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

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

Версия для печати  Отправить по электронной почте    « Предыдущая тема | Следующая тема »  
Опции темы Опции просмотра
 
Создать новую тему Ответ
Старый 07.11.2010, 17:45
Psycho Tiger вне форума Посмотреть профиль Отправить личное сообщение для Psycho Tiger Найти все сообщения от Psycho Tiger
  № 21  
Ответить с цитированием
Psycho Tiger
 
Аватар для Psycho Tiger

блогер
Регистрация: Jun 2005
Адрес: Господи пожалуйста не Новосибирск
Сообщений: 6,598
Записей в блоге: 17
Цитата:
Сообщение от iNils Посмотреть сообщение
А тоже нативный TextFormat позволяет все задать в конструкторе.
Я придержусь мнения что текстформат в большинстве случаев логично делать статичным полем класса (единая стилистика текстов и всё такое), а значит это как раз тот единственный случай когда задача всего-всего в конструкторе уместна - чтобы не мучаться с определением где то в методах.

К тому же, ни один параметр не является обязательным - как раз случай Кордума. И если думать что г-да Адоубовцы пользовались каким-то другим образом мышления, отличного от моего - то один фиг не Object в конструкторе.

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

блогер
Регистрация: Jan 2008
Адрес: syktyvkar
Сообщений: 3,803
Записей в блоге: 10
Тигер, вот сижу я сейчас над классом фона и думаю: а если сделать и необязательную передачу обджекта в конструктор, и сеттеры? Что-то насчет ненужности изменений я погорячился, а если и правда, нужно будет в определенный момент времени сменить цвет бордюра или фона?
Но вот смотри, два варианта.
Первый: мы не делаем обджект в конструкторе, делаем только сеттеры. Плюсы - меньше кода в классе. Минусы - больше строчек в коде применения класса.
Второй: мы делаем и то, и то. Плюсы и минусы в таком случае меняются местами.
Что посоветуешь?
__________________
тут я

Старый 07.11.2010, 18:10
Psycho Tiger вне форума Посмотреть профиль Отправить личное сообщение для Psycho Tiger Найти все сообщения от Psycho Tiger
  № 23  
Ответить с цитированием
Psycho Tiger
 
Аватар для Psycho Tiger

блогер
Регистрация: Jun 2005
Адрес: Господи пожалуйста не Новосибирск
Сообщений: 6,598
Записей в блоге: 17
Я бы самое важное вынес в конструктор. Конструктор бы дёргал сеттеры. Опциональное - оставил только на сеттерах.

Тут смотри как тебе удобнее. Однозначно против хэшей в таких случаях я из за того что мне нужно помнить, как же зовутся параметры (спорно - подсказки к коду, но не всегда удобно искать глазами, как я назвал метод - destruct, destroy, clear или clean, по автокомплиту искать проще), не ошибиться при их вводе (а опечатка эта может проявится не сразу - не факт, что код выполнится, а значит, не факт что опечатка всплывет), не ошибится с их типом (принимаю только интовые, а захотел половину - и не могу понять, в чем дело - не вижу тип).

Старый 07.11.2010, 18:16
iNils вне форума Посмотреть профиль Отправить личное сообщение для iNils Посетить домашнюю страницу iNils Найти все сообщения от iNils
  № 24  
Ответить с цитированием
iNils
Негуру
 
Аватар для iNils

администратор
Регистрация: Jan 2000
Адрес: Кёнигсберг in Moscow
Сообщений: 21,879
Записей в блоге: 7
Цитата:
Я придержусь мнения что текстформат в большинстве случаев логично делать статичным полем класса (единая стилистика текстов и всё такое), а значит это как раз тот единственный случай когда задача всего-всего в конструкторе уместна - чтобы не мучаться с определением где то в методах.
О, есть куча классов где параметры задаются в конструкторе. Я понимаю, что ты книжек начитался, но книжки это лишь теория, надо и своей головой думать, иначе погрязнешь в бюрократии ООП.
__________________
(и)Нильс.ru | Плагины для FlashDevelop

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

блогер
Регистрация: Jan 2008
Адрес: syktyvkar
Сообщений: 3,803
Записей в блоге: 10
Цитата:
Я бы самое важное вынес в конструктор. Конструктор бы дёргал сеттеры
Код AS3:
public function BgSimple(border:uint) {
	this.border = border;
}
public function set border(value:uint):void {
	_border = value;
}
Типа того?
__________________
тут я

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

блогер
Регистрация: Jun 2005
Адрес: Господи пожалуйста не Новосибирск
Сообщений: 6,598
Записей в блоге: 17
Цитата:
Сообщение от iNils Посмотреть сообщение
О, есть куча классов где параметры задаются в конструкторе. Я понимаю, что ты книжек начитался, но книжки это лишь теория, надо и своей головой думать, иначе погрязнешь в бюрократии ООП.
Неа, мимо. Я уже года два собираюсь прочитать хоть одну - то нет возможности, то желания (художественная не в счет). Это лично моё мнение, основанное на моём опыте.

Вообще редкий класс задаёт всё что только может в конструкторе. Если задаёт - на то есть причины.


@Кордум, ага. Часто встречаю что люди в сеттерах и в конструкторе код копипастят фактически. Сказал на всякий )

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

блогер
Регистрация: Jan 2008
Адрес: syktyvkar
Сообщений: 3,803
Записей в блоге: 10
Тигер, неудобство такого подхода в том, что приходится придумывать вменяемые имена сеттерам, ибо, допустим, width уже используется. Писать, что ли
Код AS3:
public function set setWidth(value:uint)
?
__________________
тут я

Старый 07.11.2010, 18:29
Psycho Tiger вне форума Посмотреть профиль Отправить личное сообщение для Psycho Tiger Найти все сообщения от Psycho Tiger
  № 28  
Ответить с цитированием
Psycho Tiger
 
Аватар для Psycho Tiger

блогер
Регистрация: Jun 2005
Адрес: Господи пожалуйста не Новосибирск
Сообщений: 6,598
Записей в блоге: 17
Ну width можно переопределить, я очень сомневаюсь что доступ к оригинальному width DisplayObject`а нужен в подобного рода эффектах. А если нужен - делай сеттер effectWidth

Старый 07.11.2010, 18:31
iNils вне форума Посмотреть профиль Отправить личное сообщение для iNils Посетить домашнюю страницу iNils Найти все сообщения от iNils
  № 29  
Ответить с цитированием
iNils
Негуру
 
Аватар для iNils

администратор
Регистрация: Jan 2000
Адрес: Кёнигсберг in Moscow
Сообщений: 21,879
Записей в блоге: 7
Цитата:
Неа, мимо. Я уже года два собираюсь прочитать хоть одну - то нет возможности, то желания (художественная не в счет). Это лично моё мнение, основанное на моём опыте.
Значит ты погряз в бюрократии сам по себе. Это еще хуже.
__________________
(и)Нильс.ru | Плагины для FlashDevelop

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

блогер
Регистрация: Jan 2008
Адрес: syktyvkar
Сообщений: 3,803
Записей в блоге: 10
В таких эффектах - да. Я спрашивал на будущее. Хорошо, с передачей параметров/настройкой разобрался. Есть еще что-то, что можно в целях оптимизации/исключения быдлокодности сделать? Опираемся на код первого поста, с поправкой, что там поселился таймер создания звездочек.

Добавлено через 50 минут
Повторюсь маленько:
Хочется при создании каждой звездочки определять начальные значения скорости и шага поворота. Как это лучше сделать? Конечно, можно создать класс одной звезды, определить у нее публичные свойства. Но как-то не хочется создавать еще один класс.
__________________
тут я

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

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

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


 


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


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