出版時間:2010-6 出版社:清華大學 作者:王愉//李文博//趙一飛//楊旺功 頁數(shù):605
Tag標簽:無
前言
1.創(chuàng)作背景隨著數(shù)字媒體技術的不斷發(fā)展,受眾對交互式體驗的需求曰益增長,F(xiàn)lash已經不再僅限于早期的網頁設計這一單一領域,而是逐步擴展到了動畫制作、游戲制作、交互設計、視頻點播、在線社區(qū)、桌面富媒體應用,特別是目前市場更加廣闊,號稱“第五媒體”的手持移動設備領域等。我們經過調查,這個領域的從業(yè)人員有超過半數(shù)為設計專業(yè)出身或者設計師出身,設計師對于交互程序設計的需求稍稍有別于有一定基礎的程序員。從我們的教學中可以發(fā)現(xiàn),目前一些相關ActionScript 3.0開發(fā)類的圖書并不完全適合學生,很多學生反映非常難啃,基于這個需求,我們產生了自己編寫一本書,門檻很低,但是希望這本書的內容可以非常有效地幫助對編程幾乎一無所知的朋友們。寫作過程很艱辛,本著真正出版一本“誠意作品”的原則,在近兩年的創(chuàng)作中,反復征求學生和同行的意見,大的調整就不下三次,細節(jié)調整更是每時每刻都在進行中。在這個最終版本中,雖然還有不少遺憾,但是我們堅信:即使你對ActionScript一無所知,即使你是一個毫無開發(fā)經驗的設計師,這本書也會為你提供幫助。ActionScript 3.0的腳本編寫功能超越了ActionScript的早期版本,它旨在方便創(chuàng)建擁有大型數(shù)據(jù)集和面向對象的可重用代碼庫的高度復雜的應用程序。ActionScript 3.0使用新型的虛擬機AVM2實現(xiàn)了性能的改善,并且代碼的執(zhí)行速度可以比舊式ActionScript代碼快10倍。雖然ActionScript 3.0包含ActionScript編程人員所熟悉的許多類和功能,但ActionScript 3.0在架構和概念上是區(qū)別于早期的ActionScript版本的。ActionScript 3.0中的改進部分包括新增的核心語言功能,以及能夠更好地控制低級對象的改進Flash PlayerAPl。
內容概要
ActionScript是針對Flash Player運行環(huán)境的編程語言,它實現(xiàn)了Flash內容與應用程序的交互性、數(shù)據(jù)處理以及其他功能。因此無論是Flash界面設計師還是Flash/Flex腳本程序員,都應該學好這門特征鮮明的動作腳本語言。特別是隨著市場需要,二者的復合型人才更是奇缺,所以掌握目前最成熟的動作腳本語言——ActionScript 3.0就顯得尤為重要?! ∫郧?,對于設計師而言,掌握一門編程語言顯得必要性不大,但是目前一些項目中已經對設計師提出了掌握ActionScript 3.0的強烈需求,這就是《給設計師看的交互程序設計書:Flash ActionScript 3.0溢彩編程》編寫的初衷。 《給設計師看的交互程序設計書:Flash ActionScript 3.0溢彩編程》是一本全面介紹ActionScript 3.0的基礎知識、編程方法和高級使用技巧的專業(yè)實用書籍。主要內容包括ActionScript 3.0語言基礎、ActionScript 3.0常用頂級類、ActionScript 3.0交互控制、ActionScript 3.0媒體、ActionScript 3.0網絡與通信、ActionScript 3.0綜合示例?! 督o設計師看的交互程序設計書:Flash ActionScript 3.0溢彩編程》由多年從事Flash ActionScript教學的人員和具有豐富交互媒體設計經驗的專家共同編寫。書中內容全面翔實,提供了大量的經典示例,并附帶了配套光盤。《給設計師看的交互程序設計書:Flash ActionScript 3.0溢彩編程》適合于設計和技術人員,尤其是從平面設計向交互設計過渡的設計師們閱讀和參考。
書籍目錄
第一部分 ActionScript 3.0語言基礎 第1章 ActionScript 3.0語言介紹與開發(fā)環(huán)境 3 1.1 ActionScript 3.0簡介 4 1.1.1 ActionScript 3.0的發(fā)展歷程 4 1.1.2 ActionScript 1.0、2.0、3.0版本的兼容性 5 1.1.3 Flash Player 5 1.2 ActionScript 3.0的新功能 6 1.2.1 核心語言功能 6 1.2.2 Flash Player API功能 7 1.3 ActionScript 3.0程序開發(fā)環(huán)境 8 1.3.1 Flash CS3、CS4動作面板 8 1.3.2 Flex 2、Flex 3及Flex SDK 9 1.3.3 代碼位置 10 1.4 ActionScript 3.0程序的開發(fā)過程 11 1.4.1 ActionScript 3.0基本開發(fā)步驟 11 1.4.2 示例:創(chuàng)建基本應用程序 11 1.5 本章小結 14 第2章 ActionScript 3.0語法基礎 15 2.1 常量的聲明和使用 16 2.2 變量的聲明和使用 16 2.2.1 變量的本質 16 2.2.2 變量命名規(guī)則 16 2.2.3 聲明變量的語法 17 2.2.4 變量的作用域 18 2.3 保留字與關鍵字 19 2.4 數(shù)據(jù)類型 20 2.4.1 數(shù)字:Numeric(Number、int、uint) 20 2.4.2 字符串:String 21 2.4.3 布爾值:Boolean 21 2.4.4 Null、void 22 2.4.5 復雜的數(shù)據(jù)類型:Object、MovieClip、SimpleButton、TextField、Date、Array、Error、Function、XML 22 2.4.6 數(shù)據(jù)類型轉換(隱式轉換、顯式轉換) 22 2.4.7 轉換為int、uint和Number、String、Boolean 23 2.4.8 默認值 26 2.5 運算符及表達式 26 2.5.1 運算符的優(yōu)先級和結合律 26 2.5.2 一元、二元、三元運算符 28 2.5.3 算術運算符 28 2.5.4 賦值運算符 28 2.5.5 關系運算符 29 2.5.6 邏輯運算符 29 2.5.7 字符串運算符 29 2.5.8 條件運算符 30 2.5.9 主要運算符 30 2.5.10 按位運算符 30 2.5.11 遞增、遞減運算符 31 2.5.12 數(shù)據(jù)類型檢查(is、as、typeof、in、instanceof) 32 2.5.13 其他運算符 33 2.6 代碼書寫規(guī)則 34 2.6.1 點語法與斜杠語法 34 2.6.2 區(qū)分大小寫 34 2.6.3 冒號 35 2.6.4 小括號 35 2.6.5 中括號 35 2.6.6 大括號 36 2.6.7 分號 37 2.6.8 字面值 37 2.6.9 注釋 37 2.7 外部文件路徑 38 2.8 本章小結 38 第3章 ActionScript 3.0程序結構 39 3.1 順序結構 40 3.2 分支結構 40 3.2.1 if、if…else、if…else if 40 3.2.2 switch的方法 42 3.3 循環(huán)結構 44 3.3.1 while、do…while 44 3.3.2 for、for…in、for each…in 46 3.3.3 break語句、continue語句 51 3.4 結構嵌套 52 3.5 其他常用語句 53 3.5.1 with語句 53 3.5.2 default語句 54 3.5.3 label語句 55 3.6 本章小結 56 第二部分 ActionScript 3.0常用頂級類 第4章 數(shù)學(Math) 59 4.1 Math方法和屬性 60 4.2 計算兩點之間的距離 61 4.3 計算角度 62 4.4 使用正弦、余弦 64 4.5 設計彈性運動 65 4.6 本章小結 67 第5章 數(shù)組(Array) 69 5.1 數(shù)組的簡介和創(chuàng)建 70 5.1.1 創(chuàng)建數(shù)組 70 5.1.2 訪問數(shù)組元素 71 5.1.3 數(shù)組的長度 71 5.1.4 多維數(shù)組 72 5.2 數(shù)組的基本操作 72 5.2.1 查找:indexOf / lastIndexOf 73 5.2.2 在數(shù)組首尾新增元素:push / unshift 74 5.2.3 刪除數(shù)組首尾元素:pop / shift 75 5.2.4 在數(shù)組中插入或者刪除元素:splice 77 5.2.5 提取數(shù)組中的部分元素:slice 78 5.2.6 將多個元素或數(shù)組合并成新的數(shù)組:concat 80 5.2.7 數(shù)組的排序:sort / sortOn 80 5.2.8 數(shù)組的翻轉:reverse 83 5.3 遍歷數(shù)組元素 85 5.3.1 forEach / every / filter /map / some 85 5.3.2 回調函數(shù) 86 5.3.3 示例:遍歷數(shù)組元素 86 5.4 本章小結 88 第6章 日期(Date)和時間(Timer) 89 6.1 日期和時間概述 90 6.2 創(chuàng)建Date對象 90 6.3 獲取日期和時間單位值 91 6.3.1 日期屬性 91 6.3.2 日期方法 95 6.4 使用日期和時間執(zhí)行運算 109 6.5 在時區(qū)之間進行轉換 109 6.6 設計電子時鐘 109 6.7 使用計時器 112 6.8 格式化日期和時間 113 6.8.1 Date.toString()和Date.toDateString()方法 113 6.8.2 定義月份和星期數(shù)組 113 6.8.3 組織字符串 113 6.9 本章小結 113 第7章 字符串(String) 115 7.1 字符串基礎知識 116 7.2 創(chuàng)建字符串 116 7.2.1 創(chuàng)建字符串文本 116 7.2.2 創(chuàng)建字符串對象 116 7.2.3 處理字符串中的引號 117 7.3 字符串屬性 117 7.4 字符串方法 118 7.4.1 指定對象的字符串表示形式(toString) 119 7.4.2 大寫轉換(toUpperCase)與小寫轉換(toLowerCase) 119 7.4.3 從ASCII碼轉換為字符串(fromCharCode) 120 7.4.4 字符串連接(concat) 120 7.4.5 用分隔符分隔字符串(split) 121 7.4.6 返回子字符串位置(indexOf)與(lastIndexOf) 123 7.4.7 通過位置查找子字符串(slice/substring/substr) 124 7.4.8 返回指定位置字符(charAt)與字符的ASCII碼(charCodeAt) 127 7.4.9 字符串查找(match/search)與替換(replace) 128 7.4.10 字符串比較(localeCompare) 130 7.5 本章小結 131 第8章 正則表達式(RegExp) 133 8.1 正則表達式基礎知識 134 8.1.1 正則表達式的概念 134 8.1.2 正則表達式的用途 134 8.1.3 重要概念和術語 134 8.2 正則表達式標志及屬性 135 8.2.1 與標志匹配的屬性 135 8.2.2 其他屬性 136 8.3 正則表達式的方法 137 8.4 字符、元字符、元序列、字符類 140 8.4.1 字符 140 8.4.2 元字符 140 8.4.3 元序列 143 8.4.4 字符類 143 8.5 常用正則表達式 144 8.5.1 匹配特定字符串 144 8.5.2 匹配特定數(shù)字 144 8.5.3 其他文本處理 145 8.5.4 HTML代碼和網絡方面應用 145 8.6 本章小結 147 第三部分 ActionScript 3.0交互控制 第9章 函數(shù) 151 9.1 函數(shù)定義方法 152 9.1.1 函數(shù)語句 152 9.1.2 函數(shù)表達式 152 9.1.3 兩種定義法的區(qū)別和選擇 152 9.2 調用函數(shù) 153 9.3 參數(shù) 154 9.3.1 按值或按引用來傳遞參數(shù) 154 9.3.2 默認參數(shù)值 157 9.3.3 對象arguments 157 9.3.4 參數(shù)...(rest) 158 9.4 函數(shù)返回值 158 9.5 函數(shù)嵌套 158 9.6 本章小結 160 第10章 ActionScript 3.0面向對象編程 161 10.1 面向對象編程概述 162 10.1.1 面向對象編程基礎知識 162 10.1.2 ActionScript 1.0/2.0/3.0對OOP的支持 162 10.1.3 重要概念和術語 164 10.2 類 164 10.2.1 內置類和定義類 164 10.2.2 類成員的訪問控制(internal/public/private/protected) 166 10.2.3 命名空間 167 10.2.4 屬性/變量 168 10.2.5 方法/函數(shù) 169 10.2.6 類的枚舉 170 10.2.7 嵌入資源類 171 10.3 對象 171 10.3.1 聲明對象實例的屬性 172 10.3.2 聲明對象實例的方法 172 10.3.3 構造函數(shù) 173 10.4 接口 174 10.4.1 定義接口 175 10.4.2 在類中實現(xiàn)接口 175 10.5 繼承 176 10.5.1 實例屬性和繼承 177 10.5.2 覆蓋方法 179 10.5.3 不繼承靜態(tài)屬性 180 10.5.4 靜態(tài)屬性和作用域鏈 181 10.6 本章小結 181 第11章 事件控制 183 11.1 事件處理基礎知識 184 11.1.1 重要概念和術語 184 11.1.2 ActionScript 3.0與早期版本事件處理的區(qū)別 184 11.1.3 事件流 185 11.1.4 事件對象 186 11.1.5 事件偵聽器 188 11.1.6 常用事件 189 11.2 捕獲用戶輸入 189 11.2.1 重要概念和術語 189 11.2.2 捕獲鼠標輸入 190 11.2.3 捕獲鍵盤輸入 193 11.2.4 自定義上下文菜單 195 11.2.5 管理焦點 198 11.3 按鈕 200 11.4 觸發(fā)連續(xù)動作 203 11.4.1 Event.ENTER_FRAME事件 203 11.4.2 setInterval()和setInterval()函數(shù) 205 11.4.3 計時器Timer 206 11.5 本章小結 208 第12章 控制復雜的時間軸 209 12.1 時間軸基礎知識 210 12.1.1 重要概念和術語 210 12.1.2 時間軸常用方法 210 12.1.3 幀號與幀標簽 212 12.2 場景Scene 214 12.3 舞臺(Stage) 214 12.3.1 控制幀速率 215 12.3.2 控制舞臺縮放模式 216 12.3.3 處理全屏模式 216 12.4 目標路徑 219 12.5 本章小結 222 第13章 與外部信息交流 223 13.1 使用Web瀏覽器 224 13.1.1 常用語法 224 13.1.2 更改發(fā)布設置中的安全性 225 13.1.3 鏈接應用 227 13.2 使用Flash播放器 231 13.2.1 Loader類 231 13.2.2 加載并控制外部Flash文件 233 13.2.3 加載并控制外部圖像文件 238 13.3 監(jiān)視加載進度 240 13.3.1 LoaderInfo類 241 13.3.2 監(jiān)視下載進度 242 13.4 控制打印機 243 13.4.1 重要術語 243 13.4.2 PrintJob類 244 13.4.3 處理異常和返回值 245 13.4.4 打印應用 245 13.5 使用fscommand 248 13.6 本章小結 249 第14章 異常和錯誤的捕捉與處理 251 14.1 異常和錯誤簡介 252 14.1.1 異常和錯誤的定義 252 14.1.2 重要概念和術語 252 14.1.3 異常和錯誤類型 253 14.1.4 異常處理機制的好處 253 14.1.5 ActionScript 3.0中對異常的支持 254 14.2 同步錯誤處理 254 14.2.1 try…catch...finally語句的使用 254 14.2.2 try...catch...finally語法規(guī)則 255 14.2.3 try...catch語句 256 14.2.4 finally語句 257 14.2.5 使用throw拋出異常 258 14.3 自定義異常 259 14.4 響應錯誤事件和狀態(tài) 259 14.4.1 基于ErrorEvent類的事件處理 260 14.4.2 基于狀態(tài)的事件處理 260 14.5 本章小結 261 第四部分 ActionScript 3.0視覺控制 第15章 處理顯示對象 265 15.1 顯示對象常識 266 15.1.1 顯示列表 266 15.1.2 重要概念和術語 266 15.2 顯示對象類的子類關系與選擇 267 15.2.1 顯示對象類的類繼承 267 15.2.2 選擇DisplayObject子類 268 15.3 ActionScript 3.0顯示列表層次結構的優(yōu)越性 269 15.4 顯示對象類的屬性和方法 270 15.4.1 顯示對象類的屬性 270 15.4.2 顯示對象類的方法 270 15.5 管理顯示對象容器 272 15.5.1 顯示對象容器的方法 272 15.5.2 添加視覺元件 273 15.5.3 刪除視覺元件 276 15.6 遍歷顯示列表 277 15.6.1 遍歷容器的子顯示對象 278 15.6.2 通過深度訪問子顯示對象 278 15.6.3 通過name訪問顯示對象 278 15.6.4 通過坐標訪問顯示對象 279 15.7 深度管理 280 15.7.1 深度順序的產生 281 15.7.2 交換不同深度的對象 281 15.7.3 重設子對象的深度 282 15.8 處理顯示對象外觀 283 15.8.1 改變位置 284 15.8.2 調整顏色 284 15.8.3 處理大小和比例 287 15.8.4 透明度 288 15.9 遮罩顯示對象 290 15.9.1 定義遮罩 290 15.9.2 Alpha遮罩 292 15.9.3 遮罩設備字體 293 15.10 本章小結 293 第16章 處理文本 295 16.1 處理文本的常識 296 16.1.1 常用處理文本的包 296 16.1.2 重要概念和術語 296 16.1.3 文本類型(靜態(tài)、輸入、動態(tài)) 296 16.2 TextField類的基本知識 297 16.2.1 TextField類的屬性 298 16.2.2 TextField類的方法 299 16.2.3 TextField類事件 300 16.3 TextField類的應用 300 16.3.1 顯示文本 300 16.3.2 顯示HTML文本 301 16.3.3 在文本字段中使用圖像 303 16.3.4 滾動文本 305 16.3.5 捕獲輸入文本 306 16.3.6 限制輸入文本 308 16.3.7 選擇和操作文本 308 16.4 TextFormat類的基本知識與應用 309 16.4.1 TextFormat類的屬性 310 16.4.2 TextFormat類的方法 310 16.4.3 TextFormat類的應用 311 16.5 StyleSheet類的基本知識與應用 312 16.5.1 StyleSheet類的屬性 312 16.5.2 StyleSheet類的方法 313 16.5.3 StyleSheet類的應用 314 16.6 高級文本呈現(xiàn) 316 16.6.1 使用嵌入字體 316 16.6.2 控制清晰度、粗細和消除鋸齒 317 16.7 處理靜態(tài)文本 318 16.7.1 使用StaticText類訪問靜態(tài)文本字段 318 16.7.2 使用TextSnapshot類處理靜態(tài)文本字段 319 16.8 本章小結 319 第17章 矢量圖(Graphics)與位圖(Bitmap) 321 17.1 矢量圖基礎知識 322 17.1.1 使用繪圖API 322 17.1.2 重要概念和術語 322 17.2 Graphics類 322 17.3 繪制矢量圖形 323 17.3.1 繪制直線和曲線 323 17.3.2 創(chuàng)建漸變線條和填充 329 17.3.3 使用內置方法繪制形狀 333 17.3.4 將Math類與繪制方法配合使用 336 17.4 位圖基礎知識 338 17.4.1 處理位圖簡介 339 17.4.2 位圖文件格式 339 17.4.3 重要概念和術語 339 17.4.4 Bitmap類和BitmapData類介紹 339 17.5 Bitmap類 340 17.5.1 Bitmap類基礎知識 340 17.5.2 Bitmap類的屬性 340 17.5.3 Bitmap()構造函數(shù) 341 17.6 BitmapData類 342 17.6.1 BitmapData類基礎知識 342 17.6.2 BitmapData類屬性 342 17.6.3 BitmapData類的方法 343 17.6.4 BitmapData()構造函數(shù) 345 17.6.5 顯示位圖圖像的方法 345 17.7 操作位圖圖像 346 17.7.1 繪制單個像素 346 17.7.2 拾色器 348 17.7.3 滾動位圖 351 17.7.4 復制位圖數(shù)據(jù) 354 17.7.5 混合位圖 356 17.8 本章小結 357 第18章 濾鏡 359 18.1 濾鏡基礎知識 360 18.2 斜角濾鏡BevelFilter 360 18.3 發(fā)光濾鏡GlowFilter 362 18.4 模糊濾鏡BlurFilter 364 18.5 投影濾鏡DropShadowFilter 365 18.6 顏色矩陣濾鏡ColorMatrixFilter 367 18.7 卷積濾鏡ConvolutionFilter 370 18.8 添加多個濾鏡 372 18.9 本章小結 374 第19章 處理幾何結構 375 19.1 幾何學基礎知識 376 19.1.1 處理幾何學簡介 376 19.1.2 重要概念和術語 376 19.2 點Point 376 19.2.1 Point類的屬性 377 19.2.2 Point類的方法 377 19.3 三維轉換矩陣Matrix3D 381 19.3.1 Matrix3D類的屬性 382 19.3.2 Matrix3D類方法 382 19.4 四元素矩陣Vector3D 385 19.4.1 Vector3D類的屬性 386 19.4.2 Vector3D類常量 386 19.4.3 Vector3D類的方法 386 19.5 透視轉換PerspectiveProjection 393 19.5.1 PerspectiveProjection類的屬性 393 19.5.2 PerspectiveProjection類的方法 394 19.6 本章小結 397 第20章 處理組件 399 第五部分 ActionScript 3.0媒體 第21章 聲音(Sound) 443 第22章 視頻(Video) 467 第六部分 ActionScript 3.0網絡與通信 第23章 ActionScript與XML 491 第24章 網絡與通信 515 第25章 Flash Player的安全性 543 第七部分 ActionScript 3.0綜合示例 第26章 綜合示例 559 參考文獻 606
章節(jié)摘錄
插圖:
媒體關注與評論
盡管最近有了Flash和HTML5的爭論,但事實上Flash和它的編程語言(ActionScript 3.0)仍然是實現(xiàn)一個優(yōu)秀的交互設計不可或缺的重量級的工具和解決方案。而同時設計師在實現(xiàn)交互設計的時候,如果能掌握一些ActionScript的知識,是事半功倍的。這本書站在設計師的角度去講解Action-Script,雖然沒有涉及高深的框架和技巧,但里面所涉及的例子都是設計師在他們的案例中經常使用的,非常貼近實際。 ——RIAMeeting資深講師、《Adobe AIR完整入門與開發(fā)實錄》作者 郭少瑞 現(xiàn)代技術的應用正在日趨廣泛,學科之間的交叉越來越多,在這樣的大背景下,掌握一定的代碼知識是必不可少的,作為一名設計師來說,學習代碼是—件非常痛苦的事情,本書站在沒有程序基礎的初學者的角度,以海量實例講解的方式,逐步引導讀者來學習ActionScript 3.0,可以說,掌握了ActionScript 3.0,就掌握了通往RIA應用大門的鑰匙。如果你還在為如何學習ActionScript 3.0而苦惱,那么不妨讓本書引領你步入ActionScript 3.0的殿堂。 ——藍色理想版主、ADOBE資深認證講師、著有《網頁設計全書》等多本暢銷書 作者 劉濤
編輯推薦
《給設計師看的交互程序設計書:Flash ActionScript 3.0溢彩編程》:純粹設計師編程寶典從零開始的交互程序之旅溢彩紛呈的設計與交互設計師思維模式下的AS3最佳實踐DVD《給設計師看的交互程序設計書:Flash ActionScript 3.0溢彩編程》實例素材源代碼與最終文件
圖書封面
圖書標簽Tags
無
評論、評分、閱讀與下載