Файл: Маълумотлар типи (примитив ва объект) Массивлар Функция ва методлар.doc

ВУЗ: Не указан

Категория: Не указан

Дисциплина: Не указана

Добавлен: 06.11.2023

Просмотров: 151

Скачиваний: 1

ВНИМАНИЕ! Если данный файл нарушает Ваши авторские права, то обязательно сообщите нам.

СОДЕРЖАНИЕ

МАЪЛУМОТЛАР ТИПИ (ПРИМИТИВ ВА ОБЪЕКТ)

МАССИВЛАР

ФУНКЦИЯ ВА МЕТОДЛАР

Date объекти

SOUND ОБЪЕКТИ ActionScript дастурлаш тилида фойдаланувчига етиб борадиган хар қандай аудиоинформацияни бошқариш мумкин. Бунинг учун Sound объекти методларидан фойдаланиш етарли. Энг аввало объектни ўзини аниқлаш керак:magSound=new Sound ();кўплаб методлар . оператори орқали берилади. Масалан: MagSound.setVolume (75). Қуйида шу объект учун керак бўладиган баъзи функциялар рўйхати келтирилган. attachSound ("soundName"). Филмга кутубхонадан овоз қўшиш. getPan ().-100 ва 100 диопазондаги вақт бўйича баланснинг энг охирги қийматини қайтаради. Чап қисм манфий қийматларни, ўнг қисми эса мусбат қийматларга мос келади. 0 қиймат овоз кучини тенг тақсимланганини англатади. getVolume (). Овоз баландлигини 0 ва 100 интервалда белгилайди. setPan (). Чап ва ўнг калонкалар балансини ўрнатади. -100 ва -1 қиймат ўнг калонка овозининг баландлигини, 1 ва 100 диопазондаги қиймат эса ўнг калонка овозининг баландлигини билдиради. setVolume (). Овоз баландлиги даражасини ўрнатиш учун хизмат қилади. У 0 ва 100 сохада ўзгаради. Умумий холда 100 қиймат ўрнатилган бўлади. startCoff.loop (). Овозни файлдан ўқийди. Унга ушланиш вақтини ва қайтаришлар сонини бериш мумкин. stop (). Ўйнаётган овозни ўзиш учун хизмат қилади. Унда хеч қандай параметр йўқ. FLASH ДАСТУРИНИНГ БИРИКТИРИЛГАН ФУНКЦИЯЛАРИ Flash дастурининг кўпчилик бириктирилган функциялари _global обектининг функцияларидир. Яъни уларни эгасини кўрсатмасдан ихтёрий жойда чақириш мумкин. Аммо математик функцияла бундан мустасно. Бирор математик функцияни чақиришдан олдин Math объекти методини кўрсатиш керак. Math объекти хамма керакли математик функциялар ва константалар жамланган. Қуйида Math объекти константалари келтирилган: Math.E —натурал логарифм асоси (2,718), ёки Эйлера константаси; Math.LN10 — ўнли натурал логарифм (2,302); Math.LN2 — иккили натурал логарифм (0,693); Math.LOG2E — икки асосли е натурал логарифм (1,442); Math.LOG10E — ўн асосли е натурал логарифм (0,434); Math.PI — айлана узунлигини унинг диаметрига нисбати. (пи сони 3,14159); Math.SQRT1_2 - 1/2 дан квадрат илдиз (0,707); Math.SQRT2 — 2 дан квадрат илдиз (1,414). Number типи Flash дастурида битта сонли тип- Number типи мавжуд. Number типи орқали ўзгарувчига хар – қандай сонни:бутун, натурал ва х.к бириктиришимиз мумкин. Number типининг энг юқори ва энг паст чегаралари мавжуд. Уларни Number.MAX_VALUE ва Number.MIN_VALUE константалари орқали аниқланади. Number.MAX_VALUE константаси 1.79769313486231e+308 га ва Number.MIN_VALUE константаси 4.94065645841247e-324 га тенг. Flash дастурида Number типига double стандарт типи хам бирлаштириб юборилган. Бу тип хам бутун сонларни ва хам сузувчи вергулли сонларни хам ўз ичига олади. Double стандарт типи мураккаб хисоб китобларда, натижа юқори даражадаги аниқликда керак бўлганда ишлатилади.Масалан:a = 1/3;trace ("a = 1/3, яъни " + a);trace (" (a*3 == 1) = " + (a*3 == 1))trace (" (a*3 - 1)*Math.pow (2, 52) = " + (a*3 - 1)*Math.pow (2, 52));trace (" (a - 0.333333333333333)*Math.pow (2, 52) = "+ (a - 0.333333333333333)*Math.pow (2, 52));trace (" (a - 0.3333333333333333)*Math.pow (2, 52) = "+ (a - 0.3333333333333333)*Math.pow (2, 52));trace ("");// 1 ни бошқа сонга бўлиб кўрамизb = 1/Math.pow (7, 45);trace ("b = 1/Math.pow (7, 45), то есть " + b);trace (" (b*Math.pow (7, 45) == 1) = " + (b*Math.pow (7, 45) == 1))ва натижага эга бўламиз:a = 1/3, яъни 0.333333333333333(a*3 == 1) = true(a*3 - 1)*Math.pow (2, 52) = 0(a - 0.333333333333333)*Math.pow (2, 52) = 1.5(a - 0.3333333333333333)*Math.pow (2, 52) = 0b = 1/Math.pow (7, 45), то есть 9.34519137233795e-39(b*Math.pow (7, 45) == 1) = true Number типида сон бўлмаган қийматлар хам сақланиши мумкин. Бундай махсус қийматлар учта. Улардан иккитаси чексизликларни англатади. Чексизлилар мусбат чексизлик ва манфий чексизликларга бўлинади. Мусбат чексизликларга Number.MAX_VALUE константасидан катта сонлар, манфий чексизликларга эса Number.MAX_VALUE. -Number.MAX_VALUE дан кичик қийматлар киради. Мусбат чексизлик Number.POSITIVE_INFINITY ва манфий чексизлик Number.NEGATIVE_INFINITY константаларидир. Яна бир сон бўлмаган қиймат бу бирор сонни 0 га бўлганда хосил бўлади. Агар бу қийматлар қаторли ўзгарувчиларга айлантирилса Infinity ва –Infinity кўринишида бўлади:trace ("5/0 = " + 5/0);trace ("-5/0 = " + -5/0);trace ("-5/-0 = " + -5/-0);trace ("-5/Number.MIN_VALUE = " + -5/Number.MIN_VALUE);trace ("-5/-Number.MIN_VALUE = " + -5/-Number.MIN_VALUE);trace ("Math.log (0) = " + Math.log (0));trace ("Math.sqrt (-1) = " + Math.sqrt (-1));натижа:5/0 = Infinity-5/0 = -Infinity-5/-0 = -Infinity-5/Number.MIN_VALUE = -Infinity-5/-Number.MIN_VALUE = InfinityMath.log (0) = -InfinityMath.sqrt (-1) = NaN Учинчи сон бўлмаган қиймат бу Number.NaN дир. NaN-"Not a Number", яъни “Сон эмас”. Бунга юқоридаги мисолни охирги қаторини кўрсатиш мумкин. ТИПЛАР КОНВЕРТАЦИЯСИ ActionScript дастурлаш тили типлашмаган бўлсада типлар билан ишлаш яхши йўлга қўйилган. Бир типни бошқа типга ўгириш (конвертация)ни икки хил- аниқ ва ноаниқ усули мавжуд. Аввал ноаниқ усулини кўриб чиқайлик. “+” оператори билан ўзгарувчиларни қўшаётганимизда (конкатенация) қаторли тип бошқа хамма типлардан устунликка эга бўлади. Яъни автоматик тарзда бошқа типлар қаторли типга аланади. Масалан:trace ( (5 > 7) + 10 + " Қатор ");trace (10 + " Қатор " + (5 > 7));trace (10 - " Қатор " - (5 > 7));консолдан натижани кўрамиз:10 Қатор10 Қатор falseNaNБиринчи қаторда trace операндасидаги сонли ва логик типдаги ўзгарувчилар автоматик тарзда қаторли типга айланди. Қаторлар билан амал бажаришда “-” операторидан фойдаланиш маънога эга эмаслиги учун учинчи қаторда NaN натижаси пайдо бўлди. Логик типлар фақат true ёки false қайтара олгани учун уларни сонли типлага ноаниқ усулда қўшганда true 1га ва false 0 га айланади. Ва аксинча сонли типлар ноаниқ усулда логик типларга айлантирилаётганда хар қандай ноль бўлмаган сон true га ва ноль false га тенглашади. Гохида типларни конвертация қилишда аниқ сулдан фойдаланишга тўғри келади. Бунинг учун тўртта Number (), String (), Boolean () и Object (). Глобал функциялар мавжуд. Бу функциялар аргументи сифатида ўгирилиш керак бўлган объект киритилади ва натижа примитив типда бўлади. Бу функциялар шу типларнинг конструкторлари хамдир. Шунинг учун шу тўртта типдан бошқа фойдаланувчи типлари ўгирилмайди (ноаниқ усулда бир-бирини тушуниб кетади). МАХСУС ТИПЛАР ActionScript дастурлаш тилида иккита махсус типлар бўлиб, улар объектнинг қийматига бир хонали қиймат беради. Null типи – бўшлиққа ссилка бериш учун фойдаланилади. Flash дастурида бу типни четлаб ўтса хам бўлади, аммо ActionScript кодни Java фрагментга ўтишни оснолаштиради. Undefined типи – махсус типи чақирилаётган ўзгарувчи ёки функция типи олдиндан аниқланмаган бўлса фойдаланилади. Агар бу тип қаторли типга ўтказилаётган бўлса бўш қатор, сонга айлантирилаётган бўлса нолга ва логик типга айлантирилаётган бўлса false га тенглашади. БИРИКТИРИЛГАН ТИПЛАР Бириктирилган типлар typeof оператори билан аниқланган типларга айтилади:typeof <ифода>typeof қайтарувчи қийматлар жадвали: Тип typeof Number number Boolean boolean String string Object object Function function Array array MovieClip movieclip Button object Text field object undefined undefined null null Қуйидаги код орқали янада аниқлаштириш мумкин:trace ('typeof (5 + "") = ' + typeof (5 + ""));trace ('typeof (a) = ' + typeof (a));a = new Object ();trace ('typeof (a) = ' + typeof (a));a = null;trace ('typeof (a) = ' + typeof (a));a = {x: 20, y: "строчка"};trace ('typeof (a) = ' + typeof (a));trace ('typeof (a.x) = ' + typeof (a.x));trace ("typeof (String) = " + typeof (String));trace ("typeof (Function) = " + typeof (Function));// typeof (function) ёзуви синтаксис хато беради Ва қуйидаги натижани оламиз:typeof (5 + "") = stringtypeof (a) = undefinedtypeof (a) = objecttypeof (a) = nulltypeof (a) = objecttypeof (a.x) = numbertypeof (String) = functiontypeof (Function) = functionДеярли хар бир қатор ўзи хақида маълумот бермоқда.Замонавий дастурлаш тилларида фойдаланувчилвр учун катта қулайликлар яратишга эътибор қаратилмоқда. Худди шундай Flash дастурида хам. ОПЕРАТОРЛАР ActionScript дастурлаш тилининг деярли хамма операторлари С++ ва Java дастурлаш тилларидан олинган. Биринчи навбатда логик операторлар && ва ||. &&-логик “ва” ни билдиради ва ||-логик “ёки” ни билдиради. Бундан ташқари эскирган операторлар хам мавжуд. Уларни номларини ўзгарувчи ва функцияларга бериш мумкин эмас. Шунинг учун уларга хам тўхталайлик. Flash дастурининг тўртинчи версиясидан бошлаб қаторларни солиштириш учун махсус операторлар ишлаб чиқилди. Бу операторлар ифодаларни солиштириш учун уларни аввал қаторли кўринишга келтириб олади. Қуйида уларнинг рўйхати келтирилган: lt - кичик (less than) gt - катта (greater than) le – кичик ёки тенг (less or equal) ge – катта ёки тенг (greater or equal) eq - тенг (equal) ne - тенг эмас (not equal) яна хозирда қўлланилаётган != (агар солиштирилаётганлар тенг бўлмаса true қийматини қатаради) операторининг хам эскирган кўриниши мавжуд: <> - "ТЕНГ ЭМАС" оператори; Охирги эскирган операторларга add – қаторларнинг конкатенацияси киради. У худди “+” оператори билан бир хил вазифани бажаради.ПРИОРИТЕТЛАР ЖАДВАЛИ

FLASH КЛИПЛАРИДАН ВЕБ-САХИФАЛАРНИ ЮКЛАШ

КОМПОНЕНТЛАР

КТ си маълумотларни киритиш (тўплаш), уни ишлаш ва натижани (узатиш)га, ТТ маълумотларнинг нусхасини олишга мўлжалланган.

КТ ва ТТ ишларининг таркиби

КТ си билан ишлайдиганлар ишлаб чиқариш муҳитини зарарли ва хавфли омиллари ҳамда меҳнат жараёни таъсирига учраши мумкин:

- электростатик майдонларининг кучланганлиги;

- ҳавонинг ионизацияланиши;

- механик ва электр қурилмаларида ишлаганда ҳосил бўладиганшовқин;

электр токидан жароҳатланиш хавфи;

Компютер ва ташкилий техника қурилмаларини режалаштириш, жойлаштириш ва ишлатишга қўйиладиган талаблар

КТ ва ТТ ларда иш бошлашдан олдин хоналарда меҳнат шароитини ташкил этиш ва назорат қилиш ҳамда жавобгар шахс тайинланиши лозим.

Хоналарда ишчи ўринларини ташкил этиш

Иш стулининг устки қисмидаги қоплама материали кирланишдан осон тозаланиши, ярим юмшоқ, сирпанмайдиган, электролизатсияланмайдиган ва қопламаси ҳаво ўтказувчан бўлиши мақсадга мувофиқ.

Видеомониторга (видеотерминалга — ВДТ) қўйиладиган талаблар

Видеомонитор қуйидаги талабларга жавоб бериши керак:

Ёритилаётган нуқтанинг энг кичик ўлчами монохронли дисплей учун 0,4 мм ва рангли дисплей учун 0,6 мм. дан ката бўлмаслиги;

белги тасвирининг кескин фарқ қилиши 0,8 мм. дан кичик бўлмаслиги;

позитив кескин фарқ қилувчи ишларда тасвирлаш регенератсиясининг частотаси, тактнинг ишлаш тартиби 72 Гс. дан кам бўлмаслиги;

экран юзаси хираланишдан сақловчи қопламага эга бўлиши;

ишловчи кўзидан экрангача бўлган оралиқ 80 см чэгарасида бўлиши;

тасвирнинг паст частотаси 0,05—1,0 Гс, титраши 0,1 мм чегарасида бўлиши;

экран ўлчами диагонал бўйича 31 см.дан экрандаги белгининг баландлиги 38 мм. дан кам бўлмаслиги лозим.

Компютер техникаси билан ишловчиларнинг меҳнат қилиш ва дам олиш тартиби



Macromedia Flash дастурида анимация яратиш


Аннотация

Режа:

Аннотация

I. Кириш

II. Асосий қисм
  1. Маълумотлар типи (примитив ва объект)

  2. Массивлар

  3. Функция ва методлар

  4. Date объекти

  5. Sound объекти

  6. Flash дастурининг бириктирилган функциялари

  7. Number типи

  8. Типлар конвертацияси

  9. Махсус Типлар

  10. Бириктирилган типлар

  11. Операторлар

  12. Flash клипларидан веб-сахифаларни юклаш

  13. Ташқи роликни юклаш

  14. Тугма

  15. Movie clips


III. Лойихалаш қисми

    1. Дастурнинг асосий иш сохалари ва тушунчалари

    2. Белгининг турлари

    3. Macromedia Flash дастурининг иш куроллар сохаси.

    4. Macromedia Flash дастурида анимация яратиш

    5. Шакллар геометриясини узгариши (shape tweening)асосидаги яратилган анимация

    6. Macromedia Flash дастурининг менюси.

IV. Хулоса

V. Фойдаланилган адабиётлар

Илова


Кириш

FLASH ТЕХНОЛОГИЯСИГА КИРИШ
Flash теҳналогияси Shockwave Flash (SWF) веcтор форматидаги гарфикалардан фойдаланишга асосланган. SWF муаллифлари тасвирларни ифодалашни юқори имкониятли тарафларини топа олдилар, графика билан ишлашни ускунавий муҳитини ва натижаларни Web-саҳифада акс еттириш меҳанизмини ишлаб чиқдилар. SWF нинг қошимча афзаллиги ундан бир қанча дастурий-апарат платформаларида фойдаланиш имкониятиниг мавжудлигидир (ҳусусан, Макинтош компйетерларида, МаcОС оператсион тизимида ва Windows ОС билан ишловчи IBM компютерларида) . SWF нинг яна бир асосий афзаллик томони: тасвирлар асосида анимация яратиш билан биргаликда унга интерактив елементларни ва овозларни қошиш имкониятидир.

Мослашувчанлик ва интерактив мултимедиа дастурларини яратиш мумкинлиги Web дизайнерлар орасида SWF форматидаги дастурларни оммавийлашишига олиб келди. Шу сабабли Micromedia фирмасининг SWF формати пайдо бўлиши билан деярли бир вақтда икки асосий тармоқ броузерлари (Internet Explorer ва Netscape Communicator) учун “Plug-In” компоненти яратилди. Бу еса ўз навбатида SWF ни бутун дунё ўргимчак тўрида янада кенг тарқалишига олиб келди. Натижада бу икки броузер дастурчилари ўз маҳсулотлари ядросига SWF ни қўллаб-қувватловчи қўшимча дастур киритишга аҳд қилдилар.


Ҳозирги вақтда Micromedia фирмаси SWF форматини яртувчи дастурларни етарлича қулай ва содда бўлган ускуналар ва дастурий воситалар билан таъминлашга еришди. Micromedia фирмаси томонидан ишлаб чиқилган баъзи бир дастурий воситалар: мултимедиа презентасияларини яратиш учун мўлжалланган (Micromedia Director Shockwave Studio) , график тасвирларни тайёрлаш учун мўлжалланган (Micromedia Freehand ва Micromedia Fireworks) , интерактив ўқув курсларини яратиш учун мўлжаланган (Authorware va Macromedia CourseBuilder) .

SWF ни кўпчилик қисқача Flash деб юритишга одатлангани сабабли биз ҳам қулайлик учун уни Flash деб юритамиз. Демак Flash-теҳналогия асосини қуйидагилардан ташкил қилади:

  • векторли графика;

  • бир неча кўринишдаги анимацияларни қоллаб-қувватлаш;

  • Интерактив елементлар интерфейсини яратиш имконияти;

  • растрли график форматдаги тасвирларни импорт қилиш имконияти;

  • синҳрон товушларни қўйиш имконияти;

  • Flash-филмларни ва Internetда ишлатиладиган ихтиёрий график форматдаги тасвирларни HTML форматига експорт қилиш;

  • Платформа еркинлиги;

  • Web-броузерда Flash-филмларни автоном режимда кўриш имконияти;;

  • Flash филмларни яратишда кўпгина имкониятга ега бўлган мукаммал усканвий ва дастурий воситаларнинг мавжудлиги ва ҳоказо.


ГРАФИКА
Ҳозирги вақтда лидерлик ҳолатида турган аксарият Web-саҳифалар растрли графикадан фойдаланган ҳолда яратилган. Растрли форматдаги график тасвирлар қуйидагилардир: GIF (Graphics Interchange Format – малумотларни алмашиш учун мўлжалланган график формат) , JPEG (Join Photographic Experts Group –Тасвир бўйича експертлар гуруҳини қўшиш) ва PNG (Portable Network Graphics – кўчувчан график формат) .

Растрли графикадан фойдаланилганда, тасвирлар нуқталар (пикселлар) йиғиндиси билан ифодаланади. Бу нуқталарнинг бир қанчаси бир- бири билан ҳеч қандай боғланмаган, бу нуқталарнинг ҳар бири ранг ва кордината талаб қилади. Одиий ҳолаттларда, қачон икки ҳил рангли тасвирлардан (масалан, оқ-қора рангли) фойдаланилганда ҳар бир пиксел разряди 2 бўлиши етарли бўлади: 0-қора, 1-оқ. 256-рангли тасвирларни ифодалш учун ҳар бир пиксел камида 8-разрядни талаб қилади (256-28) . Қийинроқ ифодаланувчи фотографик рангли тасвирларда ҳар бир пикселнинг разряди 24 ёки 32 гача бўлиши мумкин. Шу сабабли растрли тасвирларда ранглар уйгунлиги ва пиксел разрядларининг сони ортиши файл ҳажмини ҳам оритшига олиб келади. Растрли тасвирларни яна бир камчилиги – тасвир (деталларнинг аниқ ва тиниқ бўлиши) сифати пикселлар ҳажмига ва бу ўз навбатида мониторнинг рангларга рухсат бериш чегарасига боғлиқлигидир. Шу сабали тасвир баъзи мониторларда яҳши акс етса, баъзи бирларида сифатсиз ҳолатда чиқиши мумкин. Растрли тасвирлар ҳажмини ўзгартириш ҳам – унчалик осон иш емас. Тасвир ҳажмини катталаштириш учун пикселлар сонини ортириш керак, кичрайтириш учун еса пикселлар сонини камайтириш керак.



Векторли гарафика – умуман бошқача теҳнологиягҳа асосланган.

Векторли графика – бу тасвирларни расмдаги жойлашувини математик формулалар билан аниқланадиган егри чизиқлар йиғиндиси сифатида ифодалаш усулидир. Мисол учун, ҳар қандай айланани ифодалш учун уч-тўртта сон етарли, булар: радиус, марказ координаталари ва чизиқ қалинлиги. Шу сабабли векторли графика растрли графикага нисбатан бир қатор афзалликларга ега:

  • математик формулалар билан ифодаланувчи веcтор графикли тасвирлар пикселлар билан ифодаланувчи растрли граифик тасвирларга нисбатан компютер ҳотирасидан оз жой егаллайди;

  • тасвир (ёки унинг алоҳида бир қисми) масштабини унинг сифатини йўқотмаган ҳолда ўзгартириш имкониятини чегараланмаганлиги;

  • векторли тасвирни ҳеч қандай қийинчиликсиз бир платформадан бошқасига кўчириш (мослаштириш) имконияти;

Лекин, векторли тасвирларда ҳам баъзи бир камчиликлар мавжуд. Масалан, веcторли форматдаги фототасвирларни яратишни тасаввур қилиш жудаям қийин. Бу муаммони ҳал қилиш учун Flash авторлари шундай ускуналалрни ишлаб чиқишдики, бу ускуналардан фойдаланиб, Web-саҳифаларга нафақат веcторли тасвирларни, балки, растлри тасвирларни ҳам импорт қилиб олиш мумкин.
АНИМАЦИЯ
Flash да анимация - ҳудди мултфилмлардаги каби, объектлар ҳусусиятини озгартириш орқали амалга ошириш натижасида яратилади. Масалан, объект тасвирда йўқолиши ёки пайдо бўиши мумкин, унинг тасвирдаги жойлашиш ҳолати, шакли, ҳажми, ранги ва ҳоказолари ўзгариши мумкин.

Flash да объектларни ҳаракатлантириш унинг учта турли ҳил меҳанизми орқали амалга оширилади:

  • фреймларни кетма-кет қўйиш (“классик”) анимация. Бунда муаллиф яратилаётган “мултик”ни ҳар бир фреймини ўзи яратиб чиқади ёки бошқа дастурлардан импорт қилади ва уларни кетма-кет равишда жойлаштириб чиқиши натижасида анимация ҳосил бўлади;

  • автоматик тарзда ҳосил қилинган анимация (буни “tweened-animatsiya” деб юритилади) . Бунда муаллиф мултипликатсиянинг фақат биринчи ва оҳирги фреймларини яратади, оралиқда жойлашган фреймларни Flash ўзи генератсия қилади (яратади) . Tweened-animatsiya икки ҳил бўлади: объектнинг жойлашиш ҳолатига асосланган анимация (motion animation) ва объект шаклини ўзгариши (Трансформация бўлиши) га асосланган анимация (shape animation) ;

  • ценарий асосида юзага келувчи анимация. ценарий объект билан Flash нинг дастурлаш тили (ActionScript) орқали муомала қилиш натижасида юзага келади. Flash дастурлаш тилининг тузилиши Web-дастурлашда қўлланиладиган бошқа дастурлаш тилларига ўҳшаб кетади (Масалан, JavaScript ёки VBScript) .


Юқорида келтирилган меҳанизмларнинг ҳар бирини ўзига яраша ютуқ ва камчикикларга ега. Ҳусусан, Tweened-анимациянинг етиборга молик томонлари :

  • муаллиф ҳар бир калит (бош ва оҳирги) фреймни алоҳида-алоҳида яратиши зарур;

  • бундай анимацияларни сақлашда Flash фақат биринчи ва оҳирги фреймларни сақлайди ҳолос, бу еса филмни ҳажми кичкина бўлишини таъминлайди.

Аммо, Tweened-анимация содда кўринишга ега бўлган, объект ҳусусиятлари тенгдан ўзгарадиган сюжетларни яратиш учунгина қулай ҳолос.

ценарий (ActionScript) ёрдамида анча мураккаб кўринишга ега бўлган сюжетларни яратиш мумкин, лекин… лекин бунинг учун ActionScript-тилини билиш талаб етилади.

Flash ёрдамида анимацияли Web-саҳифа яратиш имкониятлари билан яқиндан танишишни истаганлар учун Дисней компаниясиниг Web-саҳифасига (www.Disney.cом) мурожаат етишларини тавсия қиламиз.

ИНТЕРАКТИВЛИК
Flash - сайтга боғланувчилар клавиатура ёки сичқончадан фойдаланишларини (масалан, филмнинг иҳтиёрий қисмига мурожаат қилиш, формага информатсия қўшиш ёки бирор объект қошиш ва ҳ.) назарда тутган ҳолда интерактив филмлар яратиш инкониятини беради.

Интерактивлик – Flash-филмларда кечадиган жараёнлар мос равишда ActionScript да ёзилган буйруқлар кетма-кетлиги (инструктсиялари) асосида амалга оширилади. Яъни, ҳаракат бажарилади, қачонки у билан боғлиқ бирор жараён амалга ошрилса. Бундай жараёнлар, ҳусусан, филмнинг аниқланган бирор фреймига ўтиш ёки фойдаланувчи томонидан саҳифадаги бирор тугмани босиши, клавиатура ёрдамида мурожаати бўлиши мумкин.

Асосий қисм
ActionScript дастурлаш тилини Flash дастурини ишлаб чиқарувчи Macromedia компанияси йўлга қўйган. Бу тил ECMA-262 (European Computer Manufacturers Association-европа компьютер ишлаб чиқарувчилар ассоциацияси).стандарти асосида ишлаб чиқилган. Бу ассоциация хисоблаш техникаси сохасида стандартлаштириш билан шуғулланади. ActionScript дастурлаш тили C++ ва Java дастурлаш тиллари синтаксисига асосланган ва анча соддалаштирилган. Масалан ActionScript дастурлаш тилида ўзгарувчилар типи C++ ёки Java тиллари каби қаттиқ тартибда олдиндан эълон қилиш шарт эмас. ActionScript Unicode стандартини қўллаб қуватлайди. Яъни ўзгарувчи ва шу кабиларни крил харфлари орқали ёзилса хам хеч қандай хатолик бўлмайди.

МАЪЛУМОТЛАР ТИПИ (ПРИМИТИВ ВА ОБЪЕКТ)


Хар бир тилнинг типи бўлганидек ActionScript дастурлаш тилининг хам ўз типлари мавжуд. Аввал ифода ва ўзгарувчиларни қараймиз. Примитив типлар худди объект типларига ўхшаш, фақат улар ўқиш учун (read-only). Примитив объектларнинг ўз майдони ва методлари мавжуд, примитив типлар объектни ўзгартира олмайди. Примитив типлар унчалик кўп эмас: String, Number ва Boolean (худди шу типлар примитив тип бўлишидан ташқари объект типлари бўлиши хам мумкин. Яъни улар read-only бўлиши шарт эмас). Қуйида примитив типлар натижасида хосил бўлган ифодалар.
"қатор", 1е-12, 5<4, false + "10", 1. + "1"

Примитив типларни объект типлари каби қараш мумкинлигини янада аниқроқ кўриш учун қуйидаги кодни қарайлик:
a = (5 < 4).toString (); // ўзгарувчи false сўзига тенг //бўлади

trace ("a.length = " + a.length);

trace ("9+6..toString () = " + 9+6..toString ());

trace ("харфлардан хосил бўлган қатор".toUpperCase ());
Бу код консолга қуйидаги натижани чиқаради:
a.length = 5

9+6..toString () = 96

ХАРФЛАРДАН ХОСИЛ БЎЛГАН ҚАТОР
Бу коддан примитв типда хам булев хам сонли ва қаторли методларни чақириш мумкин булмоқда. Фақат интаксисда хатолик бўлмаса бас. Қуйидаги мисол билан янада аниқроқ тушуниш мумкин:
trace (4+ (7).toString ());

trace (4+ (7));

ва натижа:

47

11
Flash МХ объектларини Java объектларига ўхшашлик томонлари ва ўхшамайдиган томонлари бор. Бир томонларидан бири Flash объектлари фақат ссилка бўйича фойдаланиш мумкин. Объектнинг ўзи алохида сақланади ва ундан тўғридан тўғри фойдаланиш мумкин эмас. Масалан:
a = new Object ();
энда а ўзгарувчида шу объектга ссилка сақланади.

Ссилкани кўрсатувчи маълумот примитив ёки объект типидалигини қандай аниқдаш мумкин? Уни икки хил усулда: биринчиси-текширилаётган объектга янги майдон олиб кириш мумкинми? Агар мумкин бўлмаса демак у фақат ўқиш учун (read-only), яъни примитив;иккинчиси бирор бир классга қарашлиликни ифодаловчи instanceof операторидан фойдаланиш:
a = new String ("Объектли қатор");

trace ("a = " + a);

a.x = 4; // Объектли типлар кўпайиши мумкин.

trace ("a.x = " + (a.x == undefined ? "undefined" : a.x));

// Бу энг оддий усуллардан бири

trace (" (a instanceof String) = " + (a instanceof String));

trace ("");

b = "Примитивли қатор";

trace ("b = " + b);

b.x = 4; // Примитивнли типлар кўпайиши мумкин эмас

// улар ўқиш учун (read-only). Шунинг учун бу код ишламайди.

trace ("b.x = " + (b.x == undefined ? "undefined" : b.x));