Tổng quan về giáo trình

Giáo trình Thiết kế đa phương tiện (Flash) là tài liệu đào tạo chuyên môn thuộc hệ thống giáo trình trình độ Cao đẳng, phục vụ chuyên ngành Thiết kế trang web. Tài liệu được ban hành chính thức theo Quyết định số 1157/QĐ-CĐNĐL ngày 11 tháng 12 năm 2019 của Hiệu trưởng Trường Cao đẳng Nghề Đà Lạt, căn cứ theo quy định tại Thông tư số 03/2017/TT-BLĐTBXH ngày 01 tháng 03 năm 2017 của Bộ Lao động – Thương binh và Xã hội về quy trình xây dựng, thẩm định và ban hành chương trình đào tạo nghề. Giáo trình do nhóm tác giả gồm Phạm Đình Nam, Ngô Thiên Hoàng, Nguyễn Quỳnh Nguyên và Phan Ngọc Bảo biên soạn, lưu hành nội bộ phục vụ công tác giảng dạy và học tập.

Mục tiêu học tập của giáo trình là trang bị cho người học hệ thống kiến thức nền tảng và kỹ năng thực hành về thiết kế đồ họa tương tác, hoạt hình đa phương tiện và lập trình điều khiển luồng kịch bản trong môi trường Macromedia Flash (Flash MX). Thông qua giáo trình, sinh viên đạt được các chuẩn đầu ra:

  • Hiểu và giải thích được cấu trúc của ngôn ngữ ActionScript (AS), tiêu chuẩn ECMAScript và cơ chế vận hành của Flash runtime.
  • Làm chủ giao diện lập trình Action Panel ở cả hai chế độ Normal Mode và Expert Mode.
  • Viết mã xử lý sự kiện cho Button, Movie Clip và quản lý timeline của Scene.
  • Lập trình thao tác biến đổi không gian, xử lý va chạm và tương tác kéo thả đối tượng.
  • Xử lý chuỗi ký tự, nhận dữ liệu nhập từ bàn phím và biểu mẫu (Form).
  • Điều khiển văn bản động (Dynamic Text), định dạng qua HTML/TextFormat và liên kết dữ liệu ngoài (Text file, HTML parameters, XML, JavaScript).
  • Tích hợp và điều khiển âm thanh, quản lý streaming audio và sử dụng Flash Components.

Cấu trúc giáo trình gồm 9 bài học theo trình tự phát triển kỹ năng từ cơ bản đến chuyên sâu:

  1. Bài 1: Làm quen với AS
  2. Bài 2: Sử dụng Action panel
  3. Bài 3: Viết code trong Flash
  4. Bài 4: Điều khiển luồng movie
  5. Bài 5: Menu và button động
  6. Bài 6: ActionScript và JavaScript
  7. Bài 7: Dùng XML với Flash
  8. Bài 8: Sử dụng component
  9. Bài 9: Điều khiển âm thanh với ActionScript

Cách tiếp cận của giáo trình là phân tích cú pháp kết hợp thực hành trực tiếp trên các tệp mã nguồn mẫu (.fla). Nội dung giáo trình giữ nguyên hệ thống thuật ngữ kỹ thuật tiếng Anh chuyên ngành (như script, movie clip, parameter, instance name, timeline, keyframe, expert mode) nhằm đảm bảo tính đồng bộ với môi trường phần mềm và tài liệu chuẩn quốc tế.


Nội dung kiến thức cốt lõi

Các chương và chủ đề chính

  • Bài 1 – Làm quen với AS: Trình bày nguồn gốc lịch sử của ActionScript, sự tương đồng với C++ và Java, việc tuân thủ tiêu chuẩn ECMAScript. Phân tích sự tiến hóa từ Flash 4 (lệnh điều kiện và vòng lặp thô sơ), Flash 5 đến Flash MX (với hơn 300 câu lệnh, hàm). Phân loại 3 nhóm biểu tượng (symbol): Button, Graphic và Movie Clip; xác định nguyên tắc gán mã ActionScript vào Keyframe trên Timeline, vào Button và Movie Clip (Graphic không chứa mã trực tiếp).
  • Bài 2 – Sử dụng Action panel: Hướng dẫn cấu hình môi trường làm việc, chuyển đổi giữa chế độ Normal mode (tránh lỗi cú pháp cho người mới học) và Expert mode (phím tắt Ctrl + Shift + E và Ctrl + Shift + N). Giới thiệu các công cụ hỗ trợ: Check Syntax, Auto Format, Code Hint, tìm kiếm/thay thế (Ctrl + F, Ctrl + H), thiết lập giao diện biên soạn qua Edit > Preferences > ActionScript Editor. Phân tích bản chất của tư duy lập trình: phân rã bài toán lớn thành các thao tác đơn lẻ.
  • Bài 3 – Viết code trong Flash: Cung cấp cú pháp chi tiết của ActionScript. Cửa sổ Output Window (F2) và lệnh trace(). Phân biệt phạm vi biến: biến toàn cục (global) và biến cục bộ (local khai báo bằng từ khóa var). Hệ thống toán tử so sánh (==, !=, <, >, <=, >=), toán tử số học và gán kết hợp (+=, -=, *=, /=, ++, --), toán tử logic (and / &&, or / ||). Cấu trúc điều kiện if...else, else if. Ba cấu trúc vòng lặp: for, while, do...while cùng các lệnh điều khiển luồng break, continue. Cú pháp xây dựng hàm tái sử dụng (function, từ khóa return). Cú pháp dấu chấm (Dot Syntax) truy xuất phương thức và thuộc tính đối tượng (ví dụ Math.sqrt(), myClip.myVariable). Kỹ thuật chú thích mã nguồn (//, /* */) và các phương pháp gỡ lỗi.
  • Bài 4 – Điều khiển luồng movie: Các lệnh điều hướng phát hoạt hình: stop(), play(), gotoAndPlay(), gotoAndStop(), nextFrame(), prevFrame(). Cấu trúc 4 trạng thái của Button Timeline (Up, Over, Down, Hit). Lập trình bộ xử lý sự kiện nút bấm on(press) và on(release). Xây dựng ứng dụng Slide Show và bài trình diễn đa khung cảnh (Scene).
  • Bài 5 – Menu và button động & Tương tác đối tượng: Quy tắc định danh Instance Name cho Movie Clip trên bảng thuộc tính Properties. Phân cấp đối tượng qua các từ khóa định vị: _root (mức gốc timeline chính), this (mức hiện hành), _parent (mức cha). Các sự kiện vòng đời của Movie Clip: onClipEvent(load), onClipEvent(enterFrame), onClipEvent(mouseDown), onClipEvent(mouseUp). Hệ thống thuộc tính không gian và hiển thị: tọa độ _x, _y, tọa độ chuột _xmouse, _ymouse, góc quay _rotation (-180 đến 180 độ), tỉ lệ co giãn _xscale, _yscale (tính theo phần trăm), kích thước thực _width, _height (tính theo pixel), độ mờ _alpha (0 đến 100), trạng thái hiển thị _visible (giá trị boolean). Thuật toán kiểm tra va chạm hitTest() theo tọa độ và theo vùng hộp bao (bounding box). Kỹ thuật kéo thả cơ bản (startDrag(), stopDrag()) và kéo thả nâng cao sử dụng biến cờ dragging kết hợp bù độ lệch tâm (offset xOffset, yOffset). Tạo menu thả xuống (dropdown menu), thanh điều hướng và liên kết duyệt web.
  • Bài 6 đến Bài 9 – Tích hợp nâng cao: Xử lý sự kiện bàn phím qua on(keyPress) (các phím chữ cái và phím chức năng như <Left>, <Right>, <Up>, <Down>, <Enter>, <Space>), đối tượng Key với hàm Key.isDown(), Key.getCode(), và cơ chế lắng nghe sự kiện Key.addListener(_root) với sự kiện onKeyUp, hàm Key.getAscii(), String.fromCharCode(). Thao tác xử lý văn bản và chuỗi với đối tượng String (substring(), charAt(), indexOf(), lastIndexOf(), toUpperCase(), toLowerCase(), length). Tạo biểu mẫu với Input Text, hiển thị nội dung động qua Dynamic Text, định dạng thẻ HTML (<B>, <I>, <U>, <FONT>, <A HREF>, <P>,
    ), định dạng nâng cao với đối tượng TextFormat. Kỹ thuật nạp dữ liệu từ xa qua tham số thẻ nhúng HTML (<PARAM>, <EMBED>) hoặc qua tệp văn bản bằng hàm loadVariables(). Xử lý dữ liệu cấu trúc XML, tích hợp JavaScript, áp dụng Components và lập trình điều khiển âm thanh đa phương tiện.

Kiến thức nền tảng được xây dựng

  1. Mô hình lập trình hướng đối tượng (OOP Concepts): Áp dụng cú pháp Dot Syntax để tương tác với các đối tượng tích hợp sẵn (Math, Key, String, TextFormat, XML, Sound) và các thể hiện Movie Clip do người dùng tạo ra.
  2. Kiến trúc hướng sự kiện (Event-Driven Architecture): Cơ chế phản hồi các tác động ngoại vi từ chuột và bàn phím thông qua các khối lệnh on(), onClipEvent() và các đối tượng giám sát (Listener Pattern).
  3. Mô hình phân cấp Timeline và Level Scope: Phân định không gian biến và không gian đối tượng theo cây phân cấp (_root, _parent, this, biến toàn cục không định từ khóa var, biến cục bộ phạm vi khối với var).

Kỹ năng phát triển

  • Kỹ năng kỹ thuật (Technical Skills): Viết mã ActionScript hợp chuẩn ECMAScript; cấu hình thuộc tính đồ họa theo thời gian thực; đóng gói biểu tượng; gỡ lỗi mã nguồn bằng Output Window và AS Debugger.
  • Kỹ năng phân tích (Analytical Skills): Phân tích chuyển động đồ họa thành các thuật toán toán học (tính góc quay, tính tỉ lệ co giãn dựa trên khoảng cách tọa độ dx, dy, kiểm tra vùng va chạm hình học hitTest).
  • Kỹ năng thực hành ứng dụng (Practical Competencies): Xây dựng hoàn chỉnh các thành phần giao diện web động: Slide Show, Banner quảng cáo nhận tham số URL/HTML, thanh điều hướng (Navigation Bar), Ticker tin tức chạy chữ tự động, Form thu thập thông tin và các đối tượng tương tác kéo thả.

Phương pháp giảng dạy và học tập

Giáo trình áp dụng phương pháp tiếp cận thực hành định hướng giải quyết vấn đề (hands-on, problem-based learning). Mỗi bài học được thiết kế theo quy trình 3 giai đoạn:

  1. Trình bày khái niệm và cú pháp: Phân tích ý nghĩa từng câu lệnh, tham số và cơ chế biên dịch của Flash runtime.
  2. Mẫu mã nguồn chi tiết: Cung cấp đoạn mã hoàn chỉnh với các chú thích rõ ràng về cấu trúc và dòng chảy thực thi.
  3. Bài tập thực hành có hướng dẫn (Step-by-step Tutorials): Hướng dẫn người học từng thao tác trên phần mềm từ khởi tạo tệp, vẽ biểu tượng, gán tên instance đến viết mã và kiểm tra kết quả.

Bài tập và thực hành điển hình

Giáo trình thiết kế chuỗi bài tập thực hành ứng dụng trực tiếp các kiến thức đã học:

  • Bài tập dừng và chuyển frame: Tạo 3 Keyframe chứa các hình vẽ khác nhau, đặt lệnh stop() tại Frame 2 để quan sát luồng timeline.
  • Bài tập Slide Show: Tạo liên kết giữa nút bấm chứa mã on(release) { nextFrame(); } và các frame nội dung trên Layer độc lập.
  • Bài tập gỡ lỗi cơ bản: Sử dụng trace("hello world") hoặc trace("I am expert") để theo dõi giá trị biến trong cửa sổ Output.
  • Bài tập co giãn đối tượng theo chuột: Tính toán độ lệch khoảng cách giữa tâm Movie Clip và con trỏ chuột (_root._xmouse, _root._ymouse) trong sự kiện enterFrame để gán tỉ lệ phần trăm cho _xscale, _yscale.
  • Bài tập xử lý Form nhập liệu: Tạo biểu mẫu gồm các trường Input Text (firstName, lastName, address, city, phone...), gắn hàm clearForm() và submitForm() vào các nút bấm để trích xuất và xử lý chuỗi.
  • Bài tập News Ticker: Tạo trường Dynamic Text, bọc vào Movie Clip và lập trình dịch chuyển tọa độ _x liên tục theo thời gian.
  • Bài tập điều khiển đối tượng bằng bàn phím: Sử dụng Key.isDown() để cập nhật tọa độ x, y kết hợp với biến vận tốc speed trước khi gán cho vị trí Movie Clip.

Phương pháp kiểm tra đánh giá và tự học

  • Đánh giá quá trình: Dựa trên khả năng hoàn thành các tệp bài tập .fla, độ chính xác của logic lập trình, khả năng tối ưu hóa mã nguồn và xử lý triệt để các lỗi cú pháp bằng công cụ Check Syntax.
  • Hướng dẫn tự học: Người học được khuyến khích đặt bản thân vào quy trình tư duy của máy tính để dự đoán hành vi runtime; sử dụng chế độ Expert Mode để tăng tốc độ viết mã; kết hợp bộ công cụ gỡ lỗi gồm hàm trace(), cửa sổ Output và AS Debugger.

Điểm nổi bật và cập nhật

Giáo trình ghi nhận bước chuyển biến về công nghệ từ các phiên bản Flash sơ khai sang Flash MX:

Tiêu chí Flash 4 trở về trước Flash 5 Flash MX / Flash MX 2004 (Nội dung giáo trình)
Nền tảng ngôn ngữ Tập lệnh cơ bản, vòng lặp thô sơ Bắt đầu gắn script vào thành phần movie Ngôn ngữ toàn diện >300 lệnh/hàm, chuẩn ECMAScript
Cơ chế kiểu dữ liệu Xử lý giá trị đơn giản Kiểu biến cơ bản Hỗ trợ linh hoạt kiểu số (Number/Integer), chuỗi, Boolean
Mô hình lập trình Lập trình tuần tự Bắt đầu hỗ trợ hướng đối tượng Lập trình hướng đối tượng đầy đủ với cú pháp Dot Syntax
Xử lý sự kiện bàn phím Gán trực tiếp qua frame Bắt đầu có Key object Bổ sung cơ chế Key.addListener() đồng bộ sự kiện
Giao tiếp dữ liệu ngoài Hạn chế Hỗ trợ nạp biến cơ bản Hỗ trợ thẻ HTML, TextFormat, XML, tham số nhúng URL

Ứng dụng thực tế và kết nối công nghiệp

Giáo trình hướng trực tiếp đến các yêu cầu kỹ thuật trong ngành thiết kế trang web tại thời điểm biên soạn:

  • Tối ưu hóa tài nguyên truyền thông: Kỹ thuật tạo hoạt họa tương tác chỉ bằng 1 khung hình và vài dòng lệnh ActionScript thay vì sử dụng hàng ngàn frame hoạt hình truyền thống, giúp giảm dung lượng tệp tin tải qua Internet.
  • Quản lý nội dung động không cần biên dịch lại: Khả năng nạp biến từ tệp văn bản bên ngoài (loadVariables("10external.txt", _root)) hoặc truyền tham số trực tiếp từ mã HTML (<PARAM NAME=movie VALUE="10banner.swf?txtName=...&gender=male">), cho phép một tệp Flash banner dùng chung cho nhiều trang web khác nhau.
  • Tương tác đa nền tảng: Tích hợp mã JavaScript để điều khiển cửa sổ trình duyệt và giao tiếp dữ liệu có cấu trúc thông qua đối tượng XML.

Đối tượng sử dụng giáo trình

  1. Sinh viên:
    • Sinh viên trình độ Cao đẳng chuyên ngành Thiết kế trang web hoặc các ngành Công nghệ thông tin liên quan.
    • Kiến thức tiên quyết (Prerequisites): Cần nắm vững kiến thức lập trình cơ bản (khái niệm về biến, hàm, rẽ nhánh, vòng lặp) và các thao tác đồ họa cơ bản trong Flash (quản lý Timeline, phân biệt Layer, tạo Keyframe, phân biệt các dạng biểu tượng Symbol).
  2. Giảng viên:
    • Sử dụng làm tài liệu giảng dạy chính thức cho mô đun Thiết kế đa phương tiện (Flash) theo khung chương trình đào tạo của nhà trường.
    • Sử dụng hệ thống bài tập thực hành mẫu trong giáo trình để tổ chức các giờ học lý thuyết kết hợp thực hành tại phòng máy.
  3. Người tự học và kỹ thuật viên:
    • Kỹ thuật viên đồ họa hoặc lập trình viên cần tài liệu tra cứu có hệ thống về cú pháp ActionScript, các phương thức xử lý va chạm hình học, xử lý chuỗi và cơ chế giao tiếp dữ liệu qua XML/JavaScript.

Câu hỏi thường gặp

1. Giáo trình này phù hợp với ai?

Giáo trình được biên soạn chuyên biệt cho sinh viên hệ Cao đẳng ngành Thiết kế trang web, các học viên ngành Công nghệ thông tin và những người cần nghiên cứu chuyên sâu về kỹ thuật kịch bản ActionScript trong môi trường Flash MX.

2. Cần chuẩn bị kiến thức nền nào trước khi học mô đun này?

Người học cần có kiến thức cơ sở về logic lập trình (biến, biểu thức, điều kiện, hàm) và đã làm quen với các khái niệm căn bản của phần mềm Flash như Timeline, Keyframe, Layer và cách tạo các biểu tượng đồ họa (Graphic, Button, Movie Clip).

3. Điểm khác biệt của giáo trình này so với các tài liệu đồ họa Flash thông thường là gì?

Tài liệu tập trung chuyên sâu vào khía cạnh lập trình kịch bản (scripting) thay vì đồ họa đơn thuần. Nội dung giải thích chi tiết cấu trúc ngôn ngữ ActionScript, kỹ thuật lập trình hướng đối tượng với Dot Syntax, thuật toán tương tác tọa độ và các cơ chế xử lý dữ liệu ngoại vi như Form, HTML parameters, XML và JavaScript.

4. Phương pháp tự học giáo trình này như thế nào để đạt hiệu quả cao?

Người học nên cài đặt Action Panel ở chế độ Expert Mode (Ctrl + Shift + E), tự gõ mã nguồn thay vì sao chép, sử dụng thường xuyên lệnh trace() và cửa sổ Output (F2) để kiểm tra trạng thái biến, đồng thời thực hiện tuần tự từng bước các bài tập mẫu (.fla) được hướng dẫn trong tài liệu.

5. Có những tài liệu và công cụ bổ trợ nào đi kèm giáo trình?

Giáo trình liên kết với hệ thống các tệp mã nguồn mẫu (.fla) cho từng bài học (như 07visible.fla, 08buttoninmc.fla, 08complexdrag.fla, 08drop.fla, 09keybutton.fla, 09form-noscripts.fla, 10formattext.fla, 10ticker.fla), hệ thống đĩa CD bài giảng hướng dẫn thao tác cơ bản và bộ tài liệu tham khảo nội bộ của Trường Cao đẳng Nghề Đà Lạt.


Kết luận

Giáo trình Thiết kế đa phương tiện (Flash) của Trường Cao đẳng Nghề Đà Lạt là tài liệu học thuật chuẩn hóa, cung cấp hệ thống kiến thức toàn diện về lập trình hoạt họa tương tác bằng ActionScript theo chuẩn ECMAScript. Giá trị cốt lõi của tài liệu nằm ở tính sư phạm rõ ràng, kết hợp chặt chẽ giữa lý thuyết cấu trúc ngôn ngữ và các giải pháp lập trình thực tiễn cho giao diện web.

Lộ trình học tập đề xuất:

  1. Nắm vững cú pháp cơ bản, biến số, hàm và Action Panel (Bài 1 – Bài 3).
  2. Làm chủ kỹ thuật điều khiển luồng, trạng thái Button và tương tác Movie Clip (Bài 4 – Bài 5).
  3. Triển khai các ứng dụng nâng cao về xử lý chuỗi, Form biểu mẫu, giao tiếp XML, JavaScript, Components và âm thanh (Bài 6 – Bài 9).

Để hoàn thiện kỹ năng, người học cần kết hợp nghiên cứu tài liệu cùng hệ thống tệp bài tập mẫu .fla, tra cứu tài liệu hướng dẫn kỹ thuật của phần mềm Flash và thực hành thường xuyên trên môi trường máy tính.