Gi th 01: Làm quen v i AS, Your First Look at AS AS là m t ngôn ng l p trình ư c xây d ng pdf

149 367 0
Gi th 01: Làm quen v i AS, Your First Look at AS AS là m t ngôn ng l p trình ư c xây d ng pdf

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

Thông tin tài liệu

Gi th 01: Làm quen v i AS, Your First Look at AS AS m t ngôn ng l p trình c xây d ng Flash AS gi ng ngôn ng khác Javascript, C++ v.v b n không c n bi t ngơn ng khác h c AS (n u có d hơn) B t âu h c AS, coi th AS gì, làm c nh ng có quan h v i ch c khác c a Flash Trong này, b n s tìm hi u coi AS i th nào, xem cách vi t AS làm sao, tìm hi u AS làm c nh ng sau sau xác nh c nơi lưu tr AS Flash i sát nghĩa ti n cho sau này, s khơng d ch m t s t ng ti ng vi t script, movieclip v.v Script gì? AS ngơn ng l p trình, v i l nh sai n Flash movie làm vi c theo úng nh ng vi t (ch có vi t sai ch computer không làm sai ) Ph n nhi u AS ch làm vi c mơi trư ng c a Flash, nhiên AS có th g i l nh cho browser, h i u hành v.v Script có th ng n g n vài ch hay có th dài c trăm trang Script có th vi t g p l i m t ch hay có th vi t rãi rác kh p nơi movie c Xu t x c a AS AS rât gi ng ngôn ng C++, Java, javascript v.v c d a tiêu chu n ECMA (European Computer Manufactuers Association) l p g i ECMAScript Nhi u ngư i hi u l m r ng AS d a Javascript, th c ch t c u d a ECMAScript Lúc u vi t script Flash r t ơn gi n cho t i Flash m i u c phát tri n v n "thơ sơ" v i nh ng vịng l p i u ki n "if else" Cho t i Flash dân Flash m i có th l p trình g n li n script v i y u t movie Sang t i Flash MX AS ã tr thành ngơn ng l p trình tồn di n v i 300 câu l nh, hàm v.v Nh n biêt AS AS ơn gi n nh ng câu l nh c vi t b ng ti ng Anh (vì l mà s khơng d ch tư ti ng Anh liên quan n AS, m t ph n khơng gi i thu t ng computer hay ti ng vi t cho l m) phép tính d u câu Ví d sau: ActionScript on (press) { gotoAndPlay ("my frame"); } B n có th gi i nghĩa o n mã b ng cách tìm hi u t ó Ch "press" g i ý ngư i dùng ang kích chu t vào m t ó, (và trư ng h p nút) Ch k ti p "gotoAndPlay" ch "go to and play" g p l i, g i ý r ng AS l nh cho Flash t im t i m ó movie b t u chơi t i m ó AS có th làm nh ng gì? Flash movie g m có scence (c nh), m i c nh s có timeline (th i gi n bi u???) timeline s có frame (khung) b t u t s Thơng thư ng Flash s chơi t frame cho t i frame cu i c a scence v i t c c nh d ng l i hay l pl it u theo ngư i làm Flash M c ích c a AS thay i th t cách chơi c a Flash AS có th dùng b t frame nào, hay ch y ngư c tr l i frame trư c hay nh y vài frame r i chơi ti p Nhưng ó khơng ch nh ng AS có th làm c AS có th bi n film ho t hình c a Flash thành m t chương trình ng d ng có s tương tác c a ngư i dùng Dư i ây nh ng b n mà AS có th làm: • • • • • • • • Ho t hình: B n khơng c n AS làm ho t hình, v i AS b n có th t o nh ng ho t hình ph c t p Ví d , trái banh có th tưng xung quanh mành hình mà khơng bao gi ng ng, tuân theo nh lu t v t lý l c hút, l c ma sát, l c ph n v.v N u khơng có AS b n c n ph i dùng c hàng ngàn frame làm, cịn v i AS ch frame Navigation (hông bi t d chlàm cho hay ): thay movie ch chơi t ng frame theo th t b n có th d ng movie b t c frame nào, cho phép ngư i dùng có th chơi b t c frame v.v Thu nh p thông tin t ngư i dùng (user input): b n có th dùng AS h i ngư i dùng c u h i, r i dùng thơng tìn ó movie hay có th g i cho server hay làm nh ng b n mu n Thu nh p thơng tìn t ngu n khác: AS có th tương tác v i server l y thông tin t server hay text file Tính tốn: AS có th làm b t c phép tính mà tốn h c cho phép Thay i hình nh movie: AS có th thay i kích thư c, màu s c, v trí c a b t c movie clip (MC) movie flash c a b n B n có th t o thêm phiên b n hay xoá b i phiên b n c a MC v i AS Phân tích mơi trư ng c a máy tính: V i AS b n có th l y gi t h i u hành hay a ch ang chơi movie Flash ó i u n âm flash movie: AS cách t t nh t i u n âm Flash,AS có chơi ch m, chơi nhanh, ng ng, quay vòng v.v bât kỳ âm Flash Phát tri n kh c a AS i u quan tr ng nh t mà AS có th làm cho b n nh ng chưa nghĩ t i V i AS trí tư ng tư ng óc sáng t o c a b n khơng có khơng th x y v i AS c M c ích c a sách, c a VNFX hư ng d n b n hi u bi t v Flash t ó b n có th t dùng Vi t AS làm nh ng s n ph m t v i mà khơng có âu Câu h i u tiên nh ng tìm hi u AS thư ng h i "Vi t AS vào âu?" Flash có m t mơi trư ng làm multimedia ph c t p N u b n ã dùng Flash r i hay ã c qua hư ng d n i kèm v i Flash, b n ã bi t y u t b n timeline, key frame v.v nêu b n chưa bi t khuyên b n nên tìm hi u trư c r i tiêp t c ây Ơ m c Flash T ng Quá, VNFX có post link download CD hư ng d n b n cho ngư i chưa bao gi dùng Flash Vi t AS time line AS có th vi t vào key frame b t c timeline làm v y, b n ch n key frame timeline trư c r i b n m Action Panel (có th nh n F9) viêt hay xem AS ã c vi t ó Mình khun b n nên dùng Action Panel dư i d ng Expert Normal, v y b n s h c c nhi u l Khi vi t AS vào key frame v y AS key frame ó s ho t ng mà Flash chơi t i key frame ó Ví d l nh AS stop() c t key frame Flash chơi t i key frame s d ng l i cho t i có l nh khác cách vi t g i vi t vào time line M t nh ng lý vi t script vào time line b n mu n dùng function (hàm), function cho phép tái s d ng o n mã ó t nhi u nơi, nhi u level khác Viêt AS nút Các ph n t c a Flash movie c g i symbol (bi u tư ng) thư ng symbol hình nh Và có lo i symbol: button (nút), graphich (hình nh), movie clips( o n phim) lo i AS khơng th vi t li n v i graphic, button movie clip OK Nút s khơng có tác d ng c n u khơng kèm AS lên Mu n kèm AS vào nút ch n nút stage (sân kh u: di n tích c a flash movie), r i sau ó m Action panel vi t vào ó ta vi t vào key frame AS vi t nút ch ho t Vi t AS ng chu t ho c bàn phím tác ng lên nút mà thơi MC MC khác v i graphic ch MC c t tên mang vào stage, MC thư ng hình ành ng, có th có AS kèm theo MC vi t AS vào MC tương t ta làm v i nút AS kèm theo MC có th i u n MC ó MC m t timeline hay timeline movie Bài t p T o m t movie m i t o key frames Dung Flash v m i hình khác cho m i frame Ch y th movie (nh n Control + enter) Sau ó tr l i timeline, vi t vào keyframe o n mã : "stop();" Cho ch y th movie l n n a Và kỳ b n ch th y Flash chơi t i frame th ng ng, b n ã thành công vi c vi t AS : Gi th 02: S d ng Action panel, Using the Script Editing Window N u dân ho coi Timeline nhà dân l p trình v i AS coi Action Panel nơi cư ng c a mình, t i ó dân AS có th thay i, vi t t t c l nh Vì v y r t quan tr ng b n có th s d ng quen thu c Action Panel Flash MX s d ng panel giúp b n có th l y thông tin v movie b n ang làm m t cách d dàng Khi b n cài t chay Flash l n u tiên, Flash s h i b n mu n s d ng Flash th Flash s x p t panel cho h p lý B n có th thay i cách x p t theo ý c a b n Nói chung b n nên x p t panel c a b n cho thu n ti n cho b n nh t, c n có kinh nghi m ó Mình dùng dual monitor, close h t panel ch gi l i hình, kéo action panel property panel qua m t bên monitor, bên cho stage, n u c n m panel dùng phím t t m S d ng Action panel có cách: bình thư ng (normal) chuyên d ng (expert) Khi m i ch y máy l n u Action panel c set dư i d ng bình thư ng d ng bình thư ng b n khơng có th ánh tr c ti p câu l nh, mà ph i ch n t menu bên tay trái c a panel V i setup v y b n khơng bao gi ph m ph i l i vi t AS c Mình s b ph n hư ng d n dùng normal th y dùng normal mode s khơng bao gi ti n c, dùng expert mode lúc u m t b o m b n s h c c mau nh lâu S d ng Action panel v i expert mode b n có nhi u t hơn, t ng nghĩa v i trách nhi m nên b n ph i c n th t vi t code T normal mode chuy n sang expert mode nh n phím t t CONTROL + SHIFT + E, chuy n ngư c l i dùng CONTROL + SHIFT + N (nh kích chu t vào action panel trư c dùng phím t t) B n có th i t Normal mode sang expert mode b t c lúc nào, i ngư c l i ch c mà code c a b n khơng có l i Action panel có popup menu (mũi tên ch xu ng dư i, n m góc ph i c a action panel) ó có nhi u l nh r t t t cho b n b n dùng Action panel, nh t i v i Expert mode B n có th tìm thay th b t c câu nào, ch script c a b n Phím t t cho tìm ki m Control + F cho thay th Control + H, nh n F3 Flash s ti p t c tìm ch , câu b n mu n tìm M t l nh n a "Goto Line" giúp b n tìm c câu b n mu n tìm L nh "Check Syntax" s rà sốt script c a b n tìm nh ng l i cú pháp Lúc m i t p vi t AS, dùng nên thư ng xuyên dùng Chech Syntax check l i sctipt L nh ti p theo "Auto Format" "Auto Format Options" giúp cho b n trình bày script c a b n cho d c B n có th thay i màu s c, font ch v.v cho script c a b n cho b n d c code b ng cách vào Edit > Preferences > ActionScript Editor Các ph n l i c a pop-up window cho phép b n c xu t hay nh p AS dư i d ng text file in script gi y Tuy g i expert mode th c dùng d normal mode B i dư i expert mode thi Action panel ch ng khác chương trình "note pad" hay "text pad" B n ch vi c vi t nh ng b n mu n vào ó Khi dùng dư i expert mode, b n v n có th tham kh o câu l nh, cú pháp c a AS khung bên trái c a Action Panel Và n u b n tôn th m t s quy t t b n s s c ch c "Code Hint" c a Action Panel, ch c t o nên khung nh nh ó có nh ng câu l nh c a AS úng h p quy cho b n l a ch n tr thành m t "cao th " v AS b n khơng th khơng n m v ng v Action panel c Sau ây th c hành nho nh , giúp b n làm quen v i Action panel dư i expert mode T o m t movie m i Ch n key frame u tiên (frame s 1) c a layer (mình khơng d ch ch layer = l p d trùng v i class= l p) M Action panel (có th dùng phím t t hay vào ph n Window > Action panel Chuy n sang expert mode (dùng phím t t hày vào pop-up menu c a Action panel i) vi t AS Vào ch Vi t o n code sau: ActionScript trace ("I am expert"); Khi b n th movie dịng ch "I am expert" s c hi n Output panel, s c p n l nh trace() vào nh ng gi t i Gi th 03: H c cách l p trình, Learning to program L p trình có th coi khoa h c ngh thu t Vì v y l p trình viên gi i c n có i u ki n ki n th c v ngơn ng mà h dùng tính sáng t o, có trư ng h p ch có cách l p trình cho m t án l m Trong trình vi t AS, b n s t o cho riêng m t phong thái vi t code c trưng Có th m i u b n s dùng phong cách vi t code nh ng vi t này, r i sau ó b n s t t chuy n sang phong cách c a riêng b n Thư ng khái ni m v ngơn ng l p trình u gi ng nhau, s bàn v nh ng khái ni m l p trình áp d ng Flash Cách suy nghĩ c a computer Th t computer d t l m ch ng bi t suy nghĩ âu, ch bi t làm vi c theo m nh l nh m t cách khơng suy nghĩ Vì v y computer khơng bao gi l i mà l i ngư i vi t l nh sai n Cịn AS ch m t chu i l nh, ch th cho computer, hay úng Flash ph i làm nh ng mơi trư ng runtime (runtime environment) Khi vi t AS b n nên t coi "ngu" computer, c l i nh ng dòng l nh AS nghĩ t i k t qu c a vi c thi hành l nh ó Khi t t vào v trí c a computer, b n s oán c script c a b n s làm nh ng mơi trư ng runtime, b n có th th y nh ng l i mà b n vô ý m c ph i Khi mà b n tr thành di n viên t v i vai computer b n tr thành m t l p trình viên tài ba L nh, hàm, phép tính L nh (command) y u t b n c a AS ch th Flash làm m t hành ng c th L nh c thi hành t i trư ng h p kh thi Ví d n u ta vi t gotoAndPlay(5) cho Flash t i frame chơi, n u movie khơng có frame l nh khơng th làm c Hàm (function, s dùng t function nhi u hàm) ph n tính tốn phép tính cho (return) m t k t qu Ví d hàm random() s cho m t s ng u nhiên ó, hay hàm sqrt() s cho giá tr bình phương c a s mà hàm nh n c truy n cho L nh hàm u có th c truy n cho hay nhi u thông s (parameter, s dùng t parameter thay thơng s ), nh ng thơng s ó giúp cho hàm l nh c c th Ví d gotoAndPlay(5) thơng s , n u khơng có thơng s l nh "gotoAndPlay" s khơng bi t rõ ph i nói Flash i âu hàm sqrt() c n có thơng s cho giá tr bình phương c a s y S khác bi t gi a hàm l nh phép tính Phép tính thư ng nh ng d u +, -, *, / phép so sánh Hàm có phép tính, l nh khơng Bi n s Bi n s (parameter) c n thi t m i ngôn ng l p trình lưu tr thơng tin v m t ó chương trình Bi n s g m có ph n: tên giá tr ôi b n ch c n lưu tr thông tin bi n s m t th i gian ng n, ví d b n mu n Flash thi hành s l nh 10 l n b n c n m s l n mà Flash ã thi hành l nh có th l nh cho Flash ngưng sau thi hành xong l nh l n th 10 Nhưng có lúc b n c n ph i lưu l i thông tin m t th i gian dài hay su t trình th i gian Flash chơi Tên c a bi n s thư ng m t nhóm t , hay có th ch ơn gi n t , hay ch Thông thư ng tên c a bi n s nên rõ ràng d hi u nói lên c tính ch t c a thông tin mà bi n s ang lưu tr Ví d n u b n mu n lưu tr tên c a ngư i dùng bi n s b n nên t tên bi n s ó userName (mình nghĩ t tên ti ng Anh d hi u hơn, ti ng vi t không d u d b hi u l m), b n có th t tên bi n s ó "n" ng n, ngư i c script c a b n s khó hi u, n u t name d trùng v i bi n s hay t khoá khác (_name m t c tính c a i tư ng MovieClip) c Và l p trình viên Khi vi t AS, b n c n lưu ý vi t cho d hi u d quy c tên bi n s theo quy t c sau: tên bi n s vi t thư ng ch u tiên, vi t hoa ch u tiên cho ch k ti p, ví d userName, userLastName, userMotherMaidenName v.v Lưu ý r ng ch ch s m i c dùng âu tên b ng ch t tên cho bi n s , b t lưu tr nhi u lo i thông tin, m i lo i thơng tin Có nhi u lo i bi n s có th có nhi u lo i khác n a Như s (number) m t lo i giá tr c a bi n s , dư i cịn có lo i khác s nguyên (integer), s khơng ngun (floating, double) B n có th dùng bi n s ch a chu i (chu i g i t t cho chu i ch cái), chu i có th ch có ch cái, nhi u ch khơng có h t, t t c chu i sau ây u h p l : "ablsdfjksl", "a", " ", "" Khi vi t m t chu i c n dùng d u ngo c kép ("") b t u k t thúc chu i Trong ngơn ng l p trình khác Java, C++, hay c ActionScript 2.0 Flash MX 2004 b n ph i xac nh trư c lo i thông tin b n s lưu bi n s Nhưng v i ActionScript (trong FlashMX) b n khơng c n làm vi c Ví d bi n s userName lúc u ch a chu i, sau ó l i ch a s nguyên v nh pl Ngồi chu i s , cịn có nhi u lo i khác n a s nh ng sau c p t i vào i u ki n Trong nh ng trư ng h p không bi t nên l nh cho Flash ph i làm cho thích h p v i t ng tình hu ng ta có th dùng " i u ki n" l nh cho Flash Ví d n u b n l nh cho Flash không cho ngư i dùng coi m t o n phim Flash n u user dư i 18 tu i, n u user 18 tu i chơi o n phim y Trư c tiên, Flash s so sánh s tu i c a user v i s 18, n u s tu i c a user tho mãn i u ki n t Flash s có giá tr true t phép so sánh trên, ngư c l i s false i u ki n s luôn úng (true) hay sai (false) M t giá tr ch có úng hay sai c g i boolean Sau th c hi n phép so sánh có c k t qu t phép so sánh trên, Flash s ch n m t gi i pháp ưa cho t ng trư ng h p c n có nhi u i u ki n ch ơn gi n "true" hay "false", ví d b n mu n Flash chơi o n phim A cho ng 18 tu i, dư i 18 13 chơi o n phim B, nh ng dư i 13 chơi o n phim C Vịng l p Con ngư i làm computer lư i không mu n làm nhi u, mà bán cho computer Nh t ph i làm i làm l i vi c ó nhàm chán Vì v y vịng l p (loop) m t y u t quan tr ng ngôn ng l p trình AS v y, b n có th dùng vòng l p script Trong vòng l p, " i u ki n" r t quan tr ng M i vịng l p c n có i m b t u i m d ng m t i u ki n báo hi u i m d ng c a vịng l p Ví d b n mu n cho vòng l p ch y 10 l n s có bi n s dùng m vòng l p, b t u t 0, M i vịng l p ch y bi n s s tăng thêm Khi t i vịng l p s d ng l i Sau ây minh ho c a vòng l p này: M t s l nh tr ơc vòng l p B t u vòng l p, set bi n s counter = Làm m t s l nh vòng l p Tăng bi n s counter +=1 N u bi n s counter nh 9, tr l i bư c th Ra kh i vòng l p, ti p t c chương trình ây b t d u bi n s counter = quy c thơng thư ng ngơn ng l p trình u b t u vòng l p M t i m lưu ý c a vòng l p i u ki n c xét trư c th c hi n l nh vòng l p Trong vài trư ng h p, i u ki n s c xét sau th c hi n l nh vòng l p Chúng ta có th ngưng vịng l p trư c i m d ng c a nó, i u s c c p t i vào k ti p Làm nh ng i u không tư ng L nh, hàm, phép tính, bi n s , thơng s , i u ki n, vịng l p nh ng ph n b n ngôn ng l p trình, bi t ph i h p l i thành m t chương trình hồn h o m i khó Chương trình ơn gi n ch m t t p h p l nh cho computer gi i quy t v n ó Vì v y trư c vi t chương trình c n ph i xác nh "v n " c n ph i gi i quy t Ví d th c t ngồi i, m b n nh b n ch mua gà Nhưng ch ơn gi n nói ch mua gà chưa bi t mua gà s ng hay gà làm r i n u mua gà s ng mua lo i v.v ó chưa nói t i mua gà ch nào, giá c v.v N u b n m nói rõ ch b n thành, mua gà mái d u, n ng kho ng kg, v i giá kho ng 10000 th t d dàng cho b n ph i không? Bi t c v n mua gà r i tìm cách mua gà B n ph i "lên k ho ch", nên nh b n ch hay i taxi ch b n thành N u i taxi i hãng nào, tìm s phone g i, v.v cịn nh b n ch i nh tên R i nên m c qu n áo i ch Ra n ch ph i m c c làm sao, tr ti n m t hay ghi s n B n th y không, t m t chuy n mua gà ơn gi n v y mà có th t n c ngày tr i lên chương trình Vi t AS, b n c n ph i lưu ý t i t t c m i vi c dù nh cách m y cho Flash có th làm úng theo ý b n m i tình hu ng Các chương trình có bug khơng ph i ngư i vi t d mà chưa nghĩ t i h t m i tình hu ng thơi Tóm l i, i u quan tr ng l p trình kh n ng phân tích m t v n thành nhi u v n nh cho t i khơng cịn nh n a, sau ó xây d ng chương trình t gi i quy y v n nh lên d n cho t i v n Vi t mã hoàn ch nh B (bug) ơn gi n l i c a chương trình mà b n t o Bug có th ch nh ng l i cú pháp ơn gi n, nh ng l i ph c t p cách b n gi i quy t v n môi trư ng runtime tránh có bug script c a b n b n nên t n nhi u gi vào giai o n phân tích, thi t k chương trình cho script c a b n Ki m tra o n code nhi u l n, óng vai "computer" cho th t gi ng, ng suy nghĩ, mà thi hành l nh script c a b n Vi t t ng o n code nh r i ráp l i v i (vì v y mà l p trình theo hư ng i tư ng c s d ng nhi u nh t) N u script c a b n có bug ng th mà n n lịng, khơng có chương trình ngư i làm mà khơng có bug c Vì v y b n ng c g ng viêt code cho t h o khơng có l i N u có bug b n di t bug thơi B n có th chu n b "chi n u" v i bug b ng cách vi t code cho d hi u d c, vi t nhi u thích cho o n mã ôi di t bug (debug) r t ơn gi n có r t kho mà bi t bug âu di t Flash có kèm theo vài cơng c giúp b n debug d dàng hơn, s nói t i công c t i Gi th 04: Viêt code Flash, Writing code in Flash Khi b n vi t script, b n s dùng t t c nh ng t khóa, ký hi u v.v V y trư c tiên s phân tích m t o n script sau ây o n script g n vào button ActionScript on (press) { var myVariable = 7; var myOtherVariable = "Macromedia"; for (var i=0; i

Ngày đăng: 11/08/2014, 20:21

Tài liệu cùng người dùng

Tài liệu liên quan