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

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

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

Регистрация: Sep 2014
Сообщений: 3
Question Точка входа

Начал знакомиться с ActionScript совсем недавно, пока читаю книгу "ActionScript 3.0 для Flash" (Колин Мук).
В книге сказано, что главный класс приложения (конструктор которого и является точкой входа в программу) должен располагаться в безымянном пакете. Однако, FlashDevelop спокойно компилирует программу с единственным классом, который помещён в пакет с произвольным именем (т.е. не безымянным). Почему так?

И второй вопрос: есть ли варианты расположения точки входа? Или только конструктор главного класса? Можно ли создать программу вообще без классов?

Старый 08.09.2014, 08:45
caseyryan вне форума Посмотреть профиль Отправить личное сообщение для caseyryan Найти все сообщения от caseyryan
  № 2  
Ответить с цитированием
caseyryan
 
Аватар для caseyryan

Регистрация: Jun 2012
Адрес: Новосибирск
Сообщений: 6,644
Записей в блоге: 4
Цитата:
должен располагаться в безымянном пакете
Это только для примеров из книги. Сделано для простоты, чтобы новички с пакетами не путались.
А так, все опытные программисты обычно создают пакеты как обратный URL. То есть, что-то типа com.example.someprogram
Цитата:
И второй вопрос: есть ли варианты расположения точки входа?
Точка входа - это в любом случае тот код, который выполнится первым. Конструктор класса всегда выполняется первым, и уже потом все остальное.
Цитата:
Можно ли создать программу вообще без классов?
На флеше можно писать в кадрах, но лучше этого не делать.
__________________
Ко мне можно и нужно обращаться на ты)

Старый 08.09.2014, 11:07
MrLf вне форума Посмотреть профиль Отправить личное сообщение для MrLf Найти все сообщения от MrLf
  № 3  
Ответить с цитированием
MrLf

Регистрация: Sep 2014
Сообщений: 3
Цитата:
Сообщение от caseyryan Посмотреть сообщение
Это только для примеров из книги. Сделано для простоты, чтобы новички с пакетами не путались.
В книге утверждается, что это требование компилятора. Остаётся только предположить, что книга немного устарела (2009 г. издания, писалась в 2007 г.)

Что касается положения точки входа, то я спросил потому, что концепция ООП может быть излишней для очень простых пограмм, имхо. Т.е. все эти объявления классов и т.п. только увеличат громоздкость кода. К таким "простым программам" я отношу, например, программы для изучения нот на грифе гитары и т.п. Если бы это было возможно, я бы писал весь код в одном файле, просто разбивая его на функции.

Старый 09.09.2014, 15:25
ChuwY вне форума Посмотреть профиль Отправить личное сообщение для ChuwY Посетить домашнюю страницу ChuwY Найти все сообщения от ChuwY
  № 4  
Ответить с цитированием
ChuwY
 
Аватар для ChuwY

Регистрация: Nov 2009
Адрес: Тула / Москва
Сообщений: 734
Отправить сообщение для ChuwY с помощью ICQ Отправить сообщение для ChuwY с помощью Skype™
Цитата:
Сообщение от caseyryan Посмотреть сообщение
Конструктор класса всегда выполняется первым, и уже потом все остальное.
Сначала cinit
__________________
9 из 10 голосов в моей голове сказали наркотикам "НЕТ"
Мои ачивки: художник-паразит.

Старый 08.09.2014, 11:58
PainKiller вне форума Посмотреть профиль Отправить личное сообщение для PainKiller Найти все сообщения от PainKiller
  № 5  
Ответить с цитированием
PainKiller
 
Аватар для PainKiller

блогер
Регистрация: Sep 2011
Адрес: Москва
Сообщений: 533
Записей в блоге: 4
Цитата:
программы для изучения нот на грифе гитары
ни хрена себе простая программа)))
Цитата:
Если бы это было возможно, я бы писал весь код в одном файле, просто разбивая его на функции.
Это возможно. Начните с этого (сделайте один документ класс), и рано или поздно, когда количество кода превалит за несколько тысяч строк, вы сами поймете преимущества ООП, и начнете выделять код в отдельные классы.

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

Регистрация: Jun 2012
Адрес: Новосибирск
Сообщений: 6,644
Записей в блоге: 4
Цитата:
ни хрена себе простая программа)))
Во во)
Цитата:
В книге утверждается, что это требование компилятора.
Можно пример, на какой странице и в какой главе?
На сколько мне известно, таких требований никогда не было
__________________
Ко мне можно и нужно обращаться на ты)

Старый 09.09.2014, 10:08
MrLf вне форума Посмотреть профиль Отправить личное сообщение для MrLf Найти все сообщения от MrLf
  № 7  
Ответить с цитированием
MrLf

Регистрация: Sep 2014
Сообщений: 3
Колин Мук, "ActionScript 3.0 для Flash", подробное руководство, O'REILLY, Питер, 2009.

Стр.173: "Компилятор приложения Flex Builder требует, чтобы основной класс программы принадлежал безымянному пакету."

Стр.175: "Как и компилятор приложения Flex Builder, mxmlc требует, чтобы основной класс программы принадлежал безымянному пакету. Таким образом, перед компиляцией программы по созданию виртуального зоопарка с помощью mxmlc мы должны переместить класс VirtualZoo из пакета zoo в безымянный пакет...".

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

Регистрация: Jun 2012
Адрес: Новосибирск
Сообщений: 6,644
Записей в блоге: 4
В оригинале написано так:
Цитата:
When compiling ActionScript programs with the Flash authoring tool, FlexBuilder,
or mxmlc, bear in mind the following compiler restrictions:
• The program’s main class must be public.
• In FlexBuilder 2 and mxmlc, the program’s main class must reside in the
unnamed package.
Речь идет конкретно о второй версии флекс билдера. Сейчас эта программа называется Flash Builder 4.7
В уже нет этих ограничений
__________________
Ко мне можно и нужно обращаться на ты)

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

Регистрация: Mar 2009
Сообщений: 4,219
Записей в блоге: 14
Цитата:
Сначала cinit
Даже во как

Код AS3:
private static var f:Function = function() { trace(1) }
f();
__________________
Марк Tween

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

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

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


 


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


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