Читал я ее.sanych_dv писал(а): http://books.tr200.ru/v.php?id=277635
Хочу узнать ваше мнение по поводу пакетов и классов.
Re: Хочу узнать ваше мнение по поводу пакетов и классов.
Re: Хочу узнать ваше мнение по поводу пакетов и классов.
Ок) Я не буду рассматривать сейчас практическую пользу, ибо где вам нужен отдельный класс, а где хватит массива или переменных вы будете решать сами, в зависимости нужд да и просто личных предпочтений и стиля. Например имеем основной класс программы Main и создадим еще класс героя Hero.А не могли бы вы показать на самом простом примере как связать два класса(например чтобы один зависел от другого или еще что-то) чтобы они работали "сообща"
Класс Main:
Код: Выделить всё
package { import flash.display.MovieClip; import flash.display.Sprite; public class Main extends Sprite { private var hero:Hero; public function Main():void { hero = new Hero(100, 5, new MovieClip()); trace(hero.life); hero.lifeMin(10); trace(hero.life); } }}
Далее создаем класс Hero:
Код: Выделить всё
package { import flash.display.MovieClip; public class Hero { public var userdata:MovieClip; public var life:int; public var speed:int; public function Hero(_life:int = null, _speed:Number = null, _userdata:MovieClip = null):void { this.life = _life; this.speed = _speed; this.userdata = _userdata; } public function lifeMin(num:int = 0):void { this.life -= num; } } }
И для завершения картины добавил в класс Hero метод lifeMin() который уменьшает жизнь life на переданное в метод число. И видим что в классе Main вызываем этот метод со значением 10. А далее снова trace(hero.life) который уже выведет 90.
Re: Хочу узнать ваше мнение по поводу пакетов и классов.
Спасибо вам огромное:)
Теперь только классы
Теперь только классы
Re: Хочу узнать ваше мнение по поводу пакетов и классов.
Пара мыслей:
В новом классе очень желательно писать его наследование:
В обычной практике все же свойства лучше делать приватными, а получать (устанавливать) значения через геттеры / сеттеры.
Ключевое слово this излишне, функция уже определена внутри класса. Имеет смысл использовать его в качестве ссылки на глобальный объект, если функция определена вне классов и объектов. Или в классе, если, к примеру, необходимо установить переменную из пары "ключ-значение".
В новом классе очень желательно писать его наследование:
Код: Выделить всё
public class Hero extends MovieClip
Ключевое слово this излишне, функция уже определена внутри класса. Имеет смысл использовать его в качестве ссылки на глобальный объект, если функция определена вне классов и объектов. Или в классе, если, к примеру, необходимо установить переменную из пары "ключ-значение".
Re: Хочу узнать ваше мнение по поводу пакетов и классов.
А класс именно от MovieClip наследовать или лучше от Spritesanych_dv писал(а):Пара мыслей:
Код: Выделить всё
public class Hero extends MovieClip
Re: Хочу узнать ваше мнение по поводу пакетов и классов.
Sprite - тот же MovieClip, но без возможности работать с таймлайном. Собственно, MovieClip частично наследуется от Sprite и является более "тюнингованным". )
Ищите в свойствах и методах базового класса, который вы будете расширять, те, которые вам будут необходимы.
Ищите в свойствах и методах базового класса, который вы будете расширять, те, которые вам будут необходимы.
Re: Хочу узнать ваше мнение по поводу пакетов и классов.
Derial, ага вот sanych_dv опытный флешер, плохого не посоветует. Я пока еще всех тонкостей не знаю
Re: Хочу узнать ваше мнение по поводу пакетов и классов.
И вот еще такой вопрос по поводу графики: как лучше сделать в Flash IDE или программно прописывать каждое событие(например в IDE мы создадим кнопку и на кадре который "активируется" при наведении на кнопку поменяем цвет кнопки(коддинг совершенно не нужен) или сделать все тоже только прописав каждое действие в программе(нужен коддинг)?