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

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

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

Регистрация: Jul 2007
Сообщений: 393
По умолчанию Пространство имен

Когда мы определяем функцию не как принадлежащую экземпляру класса, а как принадлежащую самому классу, то можно ли с этой функцией работать в других пакетах/объектах без указания имени класса перед ней?
Через что это реализуется в AS3? Пространство имен?

Старый 03.06.2012, 00:50
zuxul вне форума Посмотреть профиль Отправить личное сообщение для zuxul Найти все сообщения от zuxul
  № 2  
Ответить с цитированием
zuxul

Регистрация: Dec 2009
Адрес: 59°13′N, 39°54′E
Сообщений: 445
Записей в блоге: 1
Пакеты

Старый 03.06.2012, 01:34
expl вне форума Посмотреть профиль Отправить личное сообщение для expl Найти все сообщения от expl
  № 3  
Ответить с цитированием
expl

блогер
Регистрация: Feb 2006
Сообщений: 1,474
Записей в блоге: 3
один из способов - написать обертку в виде функции в отдельном файле
Код AS3:
package {
    public function doSomething():void {
        MyClass.doSomething();
    }
}

Старый 03.06.2012, 12:44
Krusty вне форума Посмотреть профиль Отправить личное сообщение для Krusty Найти все сообщения от Krusty
  № 4  
Ответить с цитированием
Krusty

Регистрация: Jul 2007
Сообщений: 393
т.е. кроме обвертки, math.round до round не сократить?

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

блогер
Регистрация: Nov 2007
Адрес: Almaty, Moscow
Сообщений: 396
Записей в блоге: 5
Отправить сообщение для Партизан с помощью Skype™
Цитата:
Сообщение от Krusty Посмотреть сообщение
т.е. кроме обвертки, math.round до round не сократить?
Код AS3:
var round:Function = Math.round;
Один вопрос: Зачем?

Старый 03.06.2012, 22:31
Krusty вне форума Посмотреть профиль Отправить личное сообщение для Krusty Найти все сообщения от Krusty
  № 6  
Ответить с цитированием
Krusty

Регистрация: Jul 2007
Сообщений: 393
Ну та же обвертка, в виде ссылки.
рефакторинг, чтож еще


Последний раз редактировалось Krusty; 03.06.2012 в 23:03.
Старый 03.06.2012, 23:17
Партизан вне форума Посмотреть профиль Отправить личное сообщение для Партизан Найти все сообщения от Партизан
  № 7  
Ответить с цитированием
Партизан
 
Аватар для Партизан

блогер
Регистрация: Nov 2007
Адрес: Almaty, Moscow
Сообщений: 396
Записей в блоге: 5
Отправить сообщение для Партизан с помощью Skype™
Цитата:
Сообщение от Krusty Посмотреть сообщение
Ну та же обвертка, в виде ссылки.
А вы как себе видите по-другому? В питоне есть кажется оператор as выглядит примерно import Math.random as random
ну та же ссылка только боком по сути.
Цитата:
рефакторинг, чтож еще
Не думаю, что с таким подходом будет удобнее. Мне к примеру гораздо удобнее сразу понимать где искать функцию, а не шорткат[... еще шорткат] > функция

Старый 04.06.2012, 00:17
expl вне форума Посмотреть профиль Отправить личное сообщение для expl Найти все сообщения от expl
  № 8  
Ответить с цитированием
expl

блогер
Регистрация: Feb 2006
Сообщений: 1,474
Записей в блоге: 3
В haXe можно так написать:
Код AS3:
import flash.display.Sprite;
import flash.display.Shape;
...
using Math;
...
trace(10.5.round());
Только это никак не помогает рефакторингу. Всмысле как это помочь то должно?

Старый 04.06.2012, 00:38
Krusty вне форума Посмотреть профиль Отправить личное сообщение для Krusty Найти все сообщения от Krusty
  № 9  
Ответить с цитированием
Krusty

Регистрация: Jul 2007
Сообщений: 393
Идейно так. Я с as3 мало работал. У меня сейчас проект-300кбайт *****кода, и вроде бы как даже заработал. И там полный бардак- десятки классов, совсем разных по сути, хочу структурировать, для дальнейшего использования.
Основа
Код AS3:
package test
{
public class Main extends Sprite 
	{
public function Main():void 
		{
}}}
Как в as3 правильно разносить определения классов- допустим, в разные пакеты, в один пакет, потом импорт делать всего, не всего. Файл один(все вместе), файлов много, файлов два(под основу и под импорт).

Старый 04.06.2012, 00:53
expl вне форума Посмотреть профиль Отправить личное сообщение для expl Найти все сообщения от expl
  № 10  
Ответить с цитированием
expl

блогер
Регистрация: Feb 2006
Сообщений: 1,474
Записей в блоге: 3
А у нас сейчас 3650 Кб кода проекта (не считая либ), но я всё равно не понимаю при чем здесь вызов статических функций без точки.

Если надо делать большой рефакторинг с переносом и переименованием кучи всего - установите FlashBuilder(для таких рефакторингов лучше средства еще не сделали - может Idea только) - создайте проект - попереносите там всё.

60-дневной полнофункциональной триальной версии на это хватит, если останавливает платность.

Кстати, с какого языка перешли?
Если чего - это не PHP - #include здесь для подключения кучи функций не используют (хотя он есть)
import - это просто указание какой класс использовать во избежании конфликтов одноимённых классов в разных пакетах.


Последний раз редактировалось expl; 04.06.2012 в 00:57.
Создать новую тему Ответ Часовой пояс GMT +4, время: 18:48.
Быстрый переход
  « Предыдущая тема | Следующая тема »  

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

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


 


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


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