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

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

Версия для печати  Отправить по электронной почте    « Предыдущая тема | Следующая тема »  
Опции темы Опции просмотра
 
Создать новую тему Ответ
Старый 06.02.2011, 00:09
iNils вне форума Посмотреть профиль Отправить личное сообщение для iNils Посетить домашнюю страницу iNils Найти все сообщения от iNils
  № 21  
Ответить с цитированием
iNils
Негуру
 
Аватар для iNils

администратор
Регистрация: Jan 2000
Адрес: Кёнигсберг in Moscow
Сообщений: 21,879
Записей в блоге: 7
Цитата:
Сообщение от i.o. Посмотреть сообщение
вызвать конструктор суперкласса Sprite, если нет уверенности вызывается он по-дефолту до или после конструктора класса-наследника..
Конструктор супер класса всегда вызывается до любой строчки кода в конструкторе наследника, если не указано обратное.

Просто кто-то решил, что это якобы "хороший тон", хотя на самом деле к тону это никак не относится. Просто люди выдают свои личные предпочтения за "хороший тон".
__________________
(и)Нильс.ru | Плагины для FlashDevelop

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

блогер
Регистрация: Jun 2005
Адрес: Господи пожалуйста не Новосибирск
Сообщений: 6,598
Записей в блоге: 17
@iNils, Отрицать конвенцию это точно не хороший тон.
Цитата:
Constructors

If a classes has instance members, write a constructor, and make it explicitly call super(), even if it does nothing else
Нетрудно догадаться, что в случае любых классов, которые имеют экземпляры следует писать super().

Старый 06.02.2011, 00:20
mikhailk вне форума Посмотреть профиль Отправить личное сообщение для mikhailk Найти все сообщения от mikhailk
  № 23  
Ответить с цитированием
mikhailk
 
Аватар для mikhailk

Регистрация: Nov 2009
Адрес: СПб
Сообщений: 2,236
Я так понимаю, без супера не обойтись, если необходимо вызвать конструктор супер класса с параметрами. Без параметров есть он или нет ни на что не влияет.

ок, ответ я получил.

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

администратор
Регистрация: Jan 2000
Адрес: Кёнигсберг in Moscow
Сообщений: 21,879
Записей в блоге: 7
Цитата:
@iNils, Отрицать конвенцию это точно не хороший тон.
Забудь про нее.
Цитата:
Конвенция — (лат. conventio — договор, соглашение) — разновидность международного договора, в котором прописанные нормы являются юридически-обязующими для сторон, подписавших эту конвенцию.
Ты ее подписывал? Я нет, и не собираюсь. Она абсурдна и пытается навязать абсолютно все, даже где мне ставить пробелы. И и это при том, что родной адобовский автоформат в Flash IDE, плевать на нее хотел. Ее не разу уже разбирали и у нас, и на руФлеше и всегда все возмущались тем или иным пунктом.
Чем больше правил, тем чаще их нарушают. Описывать нужно только ключевые моменты.

Например. Название класса пишется с большой буквы. Это важный момент, так как помогает понять любому в чужом коде, что это класс.
Описывать массив как [ 1, 2, 3 ], а не [1, 2, 3] или [1,2,3]. Извини, это бред. Всем и так понятно, что в обоих случаях это массив.
__________________
(и)Нильс.ru | Плагины для FlashDevelop


Последний раз редактировалось iNils; 06.02.2011 в 00:44.
Старый 06.02.2011, 01:10
Psycho Tiger вне форума Посмотреть профиль Отправить личное сообщение для Psycho Tiger Найти все сообщения от Psycho Tiger
  № 25  
Ответить с цитированием
Psycho Tiger
 
Аватар для Psycho Tiger

блогер
Регистрация: Jun 2005
Адрес: Господи пожалуйста не Новосибирск
Сообщений: 6,598
Записей в блоге: 17
Я когда-то был за её незыблемость?
Конечно, что-то из конвенции для меня кажется неправильным. И конечно, я делаю так, как удобно мне. Но именно конвенция должна лежать в основе кода.
Если не будет фундамента — то точно придёт кто-то и скажет: "будем писать классы с маленькой, а переменные с большой!".
Если есть какие-то аргументы (вплоть до не нравится), то от конвенции можно отступать. Если таких аргументов нету, то отступать не нужно. У тебя есть аргументы против написания пустого super() или что-то, что выдаст в этом дурной тон?

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

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

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

блогер
Регистрация: Jun 2005
Адрес: Господи пожалуйста не Новосибирск
Сообщений: 6,598
Записей в блоге: 17
А ещё не нужны пробелы и переносы строк. И там, и там компилятор всё сделает за нас.
Но и то, и то я делаю. Визуально проще.
Почему проще с явным указанием super: не всегда конструктор имеет длину в 50 строчек. Он бывает и под 200, и под 300 (про рефактор, структуру класса и всё остальное умолчим). Это несколько экранов. Гораздо проще увидеть super() в самом верху и успокоится, что здесь всё стандартно. В противном случае нет той подсказки, которая сообщит мне, где же будет super. Мне придется пользоваться поиском.

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

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

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

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

Цитата:
200-300 строк в конструкторе? Мне с тобой разговаривать больше не о чем.
Я нигде не говорил что это мой код.

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

администратор
Регистрация: Jan 2000
Адрес: Кёнигсберг in Moscow
Сообщений: 21,879
Записей в блоге: 7
1. Ты следуешь 100% всех описанных там "норм"?

2. Создатель языка? Сомневаюсь. В том же адобовском хелпе эти нормы игнорируют. Как и в автоформате в родном Flash IDE, где официально должны были поддерживаться.

3. Это не официальные нормы, а рекомендуемые. И как я уже говорил выше, общий список норм вызывает
сомнение в адекватности того, кто это писал. Поэтому я не вижу причин разделять то, что там написано.

4. Если это не твой код, то требовать от автора кода писать super в конструкторе в 200 строк, это как перед казнью отказываться от жирной пищи, потому что она вредит здоровью. Даже если представить, что там есть супер, то тебя не спасет от поиска тот факт, что он будет на 178 строке конструктора.
__________________
(и)Нильс.ru | Плагины для FlashDevelop

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

Теги
removeChild , tween
Опции темы
Опции просмотра

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

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


 


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


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