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

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

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

Регистрация: Mar 2013
Адрес: Black Sea cost
Сообщений: 30
Question Муки новичка, от Колина Мука

Начал изучать AS3 по книге Колина Мука.
В этом деле я начинаю абсолютно с нуля, не имея за собой никакого опыта в программировании. И, не знаю, у всех ли новичков, кто начинал с Мука, воспринималось так же, но для меня - книга дотошно оперирует кучами разных терминов. Большими кучами! Не дает сопоставить между собой элементарное, постоянно в этих терминах запутывая; не позволяя сосредоточится на том, что, собственно, сам-то код делает!.

Поэтому, перечитывая по 5 раз (не преувеличиваю), одни и те же страницы, еле дополз дошел до 84'й...

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

Сейчас такое дерево каталогов с файлами:
Код:
╚ virtualzoo
   ╚ src
      ╚ zoo
         ╠ VirtualZoo.as
         ╚ VirtualPet.as

VirtualZoo.as
Код AS3:
package zoo {
	public class VirtualZoo{
		public function VirtualZoo ( ) { 
			var pet = new VirtualPet("Stan"); 
		}
	}
}
package zoo { -- Здесь мы указываем имя пакета и подчеркиваем имя поддериктории (по правилам компилятора), в которой этот as-файл расположен.

public class VirtualZoo{ -- Затем создаем класс, внутри этого пакета.
"public" - в этом месте это, своего рода, тоже стандарт компилятора, дает понять, что этот класс - основной в "zoo". Оно и понятно - "public" в принципе делает класс доступным за пределами дериктории, в которой находится.
"class" - задает класс
"VirtualZoo" - несет имя точно совпадающее с регистром букв файла VirtualZoo.as (так нужно описывать каждый класс, если я правильно понял)

public function VirtualZoo ( ) { -- Описываем функцию.
"public" - опять же делает функцию общедоступной, даже ЗА пределами директории "zoo",
"function" - описывает функцию,
"VirtualZoo" - так мы назвали функцию... судя по всему, могли назвать как угодно, на совпадения с именами файла и основного класса это никак не влияет и какой-нибудь "главной" функцию не делает.

var pet = new VirtualPet("Stan"); -- задаем значение функции, описанной в VirtualPet.as.
"var" - мы задаем новую переменную
"pet" - даем переменной имя
"new" - указываем, что она новая (тут не понял, зачем, естественно, они все новые, объясните, пожалуйста)
"VirtualPet("Stan")" - присваиваем значение name для функции VirtualPet, созданной в VirtualPet.as... судя по всему...




VirtualPet.as
Код AS3:
package zoo { 
	internal class VirtualPet{
		internal var petName;
 
		public function VirtualPet (name){
		this.petName = name;
		}
	}
}
package zoo { -- тоже, что и в предыдущий раз. Задаем имя пакета, соответствуя директории "zoo", чтобы в дальнейшем можно было вызвать через точку

internal class VirtualPet{ -- здесь мы прописываем класс уже "internal", давая понять, что это не основной класс и за пределами "zoo" он вызываться ничем не будет! Только внутренними классами.

internal var petName; -- задаем переменную petName. Не совсем понял, почему internal. Судя по всему, потому, что планируем использовать ее в другом классе. однако тоже в пределах "zoo"

public function VirtualPet (name){ -- объявляем функцию VirtualPet
"public" - доступна везде
"function" - описывает, что мы делаем функцию
"VirtualPet (name)" - функция называется VirtualPet, а ее значение мы называем "name" (или это одно из значений, которое можно дать функции, не знаю, запутался)

this.petName = name; -- ...
"this" - книга говорит, что мы указываем на какой-то создаваемый экземпляр класса VirtualPet... затем говорит, что имелось ввиду, что мы указываем на создаваемый объект... какой объект и что имеет ввиду под этим объектом, не говорит. Функция - наш создаваемый объект? Или значение name... или класс имеется ввиду.
"petName" - обращение к переменной petName, которую мы создали.
"name;" - присваиваем petName значение name. А name'ом у нас является, вроде как "Stan". то есть теперь petName содержит слово "Stan"


Последний раз редактировалось Jim; 31.03.2013 в 00:29.
Создать новую тему   Часовой пояс GMT +4, время: 19:35.
Быстрый переход
  « Предыдущая тема | Следующая тема »  
Опции темы
Опции просмотра

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

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


 


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


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