標籤:電腦
這篇是電腦類的優質首發推薦>>>>《JavaScript程式設計:基礎·PHP·XML》
內容簡介
《華章程式員書庫·JavaScript程式設計:基礎 PHP XML》從電腦的基礎知識開始介紹,涵蓋程式設計的基礎知識、JavaScript基礎知識、JavaScript的迴圈結構、選擇結構、表單、函數和源檔案、數組、搜尋和排序、檔案物件模型和XML、PHP概述及相關知識。《華章程式員書庫·JavaScript程式設計:基礎 PHP XML》充分考慮初學者的需求,內容深入淺出,每章後都安排了相應的案例、練習和實踐項目。
譯者序
JavaScript是Web上的一種功能強大的程式設計語言,用於開發互動式網頁。它不僅可以直接應用於HTML文檔以獲得互動效果或其他動態效果,而且還可以運行於伺服器端來替代傳統的CGI程式。此外,JavaScript符合ECMAScript語言標準,支援多種程式設計風格。
本書是一本面向入門級Web程式員的教材。書中內容由淺入深,既包含JavaScript的基本編程技術,也涵蓋JavaScript與XML、PHP、MySQL的協同編程方法。與國內同類書籍相比,本書具有以下特點:
1)筆法細膩、循序漸進。本書詳細講解了程式設計的基本概念(如變數、選擇語句和迴圈語句等),並且幾乎對每個樣本程式和代碼都有詳細的注釋和講解,從而使本書適用於從來沒有或者略有編程經驗的學生。
2)樣本豐富、貫穿始終。本書幾乎為每個新知識點都配有相應的例子,並且兩個完整的案例(一個遊戲網站和一個教學網站)貫穿全書各章本文和練習,從而增強趣味性和實
用性。
3)立足基礎、兼顧全域。本書主要講解基於JavaScript的Web用戶端編程技術,此外也簡單介紹了Web伺服器端開發技術PHP和MySQL,使學生能夠很自然地使用JavaScript並且理解與伺服器端技術的互動性。
本書可用作高等院校本、專科各專業JavaScript程式設計、Web程式設計和動態網頁製作等課程的教材。
由於譯者水平有限,譯文中疏漏和錯誤難免,懇請讀者批評指正。
譯者
於中山大學
部分前言
歡迎閱讀本書。作者創作本書的動機是為兩年期“網際網路服務程式設計”學習過程中的“網際網路程式設計Ⅰ”課程提供適當的學習資料。在完成兩年Web開發課程之後,學生必須熟悉用戶端和伺服器端指令碼語言。儘管有許多很好的關於靜態網頁開發技術(HTML、XHTML、HTML5和CSS)的書籍,但涉及JavaScript的書籍要麼過於繁瑣要麼遠超出兩年期學習計劃。因此本書設計成滿足入門級程式員的需求,使他們能夠很自然地使用JavaScript並且理解它與伺服器端技術的互動性。
本書可用於為已瞭解HTML和CSS知識的學生開設的一學期“JavaScript程式設計”課程。本書程式設計基礎部分強調把程式設計概念應用於JavaScript和PHP中,適用於從來沒有或者略有編程經驗的學生。每個概念都通過簡短的例子來協助讀者加深對概念的理解,短例後面緊跟著面向實際環境的較長例子。
兩個案例研究貫穿全書:一個遊戲網站和一個教學網站。每章都有一節為這兩個案例研究增加內容和功能,並且學生可以在每章末尾的編程挑戰中補充內容。另外兩個網站(一個是園藝公司網站,另一個是珠寶公司網站)也可以從零開始建立,並且學生可以在編程挑戰中增強它們的功能。老師可以根據要求調整這些內容。
本書假定學生已經學過HTML和CSS,並且是建立靜態網頁的好手。然而,不要求學生有編程經驗,也不要求學生具備數學、財務或其他學科的特殊知識。當最後一章使用SQL命令時,不要求學生已經接觸過SQL或資料庫。
本書組織
本書從第0章電腦基礎開始,隨後第1章著眼於JavaScript程式設計入門的一般概念。第1章介紹貫穿全書的案例研究,但本書各章的案例研究是相互獨立的,可以單獨使用。第2章介紹變數、操作符和資料類型。對於那些從來沒有學習過程式設計課程和熟悉程式設計概念的學生來說,這幾章是非常重要的。理解網頁和JavaScript代碼之間的互動性是JavaScript最基本的重要特徵之一。
第3~5章學習JavaScript基本控制結構,即順序、選擇和重複。沒有編程經驗的學生將學習這些語句結構一般是如何工作的,特別是在JavaScript中。有編程經驗的學生可以快速閱讀這幾章。
第6和7章是JavaScript專屬的,包含表單、函數和外部JavaScript檔案。由於大多數學生已經在靜態網頁中使用過表單,所以這裡以與JavaScript程式對接的方法討論表單。
第8和9章包含數組和幾種進階搜尋與排序技術,這兩章連同後面的三章最適合具有牢固編程基礎的學生。
第10章討論文件物件模型並介紹XML,第11和12章介紹PHP。學完這三章後,學生將能夠開發使用資料庫處理資料的網站。學生可以使用免費程式XAMPP在電腦上建立一個含有MySQL和PHP軟體的Apache伺服器。本書將詳細介紹這個軟體的操作方法。不需要具備MySQL或資料庫知識,學生可以藉助給出的MySQL命令建立使用資料庫、伺服器和PHP的實際環境,從而建立一個動態網站。
每章都有很多例子。自始至終,例子、檢查點和練習的難度依次從最基本的概念理解提高到非常有挑戰性的實際應用。每章包含一節操作實踐,在此開發案例研究網站Greg‘s Gambits和Carla‘s Classroom。在每章末尾的編程挑戰部分,要求學生對這些案例研究進行補充。如果從本書開始學習到結束,開發的這些案例研究將建成健壯的網站。編程挑戰還包含另外兩個案例研究,即Lee‘s Landscape和Jackie‘s Jewelry網站,學生將完全靠自己建立這兩個網站。本書在編程挑戰部分為Greg‘s Gambits和Carla‘s Classroom項目提供了很多協助,而為Lee‘s Landscape和Jackie‘s Jewelry項目只提供了很少的協助。老師可以決定學生完成這些項目的獨立程度。
練習部分包含填空題、判斷題和簡答題,而在編程挑戰部分學生能夠使用相應章節學習的知識建立自己的網頁。
各章簡介
格式說明
本書通過使用不同的字型來區分程式碼,變數和數組名是粗體。有時某些代碼必須單行錄入,但是限於紙張大小不可能完整地把這些代碼顯示在一行,因此使用符號表示下一行代碼應該是上一行的一部分,這個符號不應該包含在內。如果沒有符號,那麼下列範例代碼應該錄入在同一行。注意,其中的變數dinner是粗體:
第1章本章介紹程式設計和JavaScript,討論程式設計的一般問題解決方案策略以及程式的基本結構和3種控制結構,討論用虛擬碼和流程圖規劃程式以及資料類型,引導學生在網頁中建立JavaScript指令碼,討論對象、點標記以及幾個重要的JavaScript方法和事件,介紹Greg‘s Gambits和Carla‘s Classroom網站並使用JavaScript為這些網站建立互動頁面。
第2章本章著眼於變數、JavaScript資料類型和操作符(包括算術、關係和邏輯操作符),解釋類似JavaScript的弱類型語言和強型別語言的區別,討論串連操作符的使用和JavaScript對使用者輸入數位處理方法,討論條件操作符從而使學生在不會使用選擇結構的情況下建立有趣的頁面,討論操作符優先順序和ASCII碼。學生要為Greg‘s Gambits網站建立填字遊戲並為Carla‘s Classroom網站建立拼字課。
第3章本章討論判斷(選擇)結構(包含單路、二路和多路分支結構)。介紹switch語句、驗證方法和Math對象,使用嵌套選擇結構和複合條件開發程式。學生可以使用Math.random()方法建立有趣的程式,要為Greg‘s Gambits建立幸運預言程式並且為Carla‘s Classroom建立一門算術課。
第4章本章從重複結構開始,著眼於基本的迴圈結構:前測、後測迴圈,哨兵控制迴圈,計數器控制迴圈以及用於資料輸入和資料驗證的迴圈。迴圈語句包括while迴圈、do...while迴圈和for迴圈。學生要為Greg‘s Gambits建立一個資訊編碼器並且為第3章建立的Carla‘s Classroom算術課增加很多功能和深度。
第5章本章進一步探討第3章和第4章涉及的重複結構和選擇結構,通過使用Math對象的一些方法介紹總數和平均數的計算方法,深入探討嵌套結構(包括迴圈中的選擇結構、迴圈中的迴圈和選擇結構中的迴圈)以及台式檢查。介紹提前退出迴圈的各種方法。學生要為Greg‘s Gambits建立一個戰鬥遊戲(石頭-紙-剪刀遊戲的變種)並且為Carla‘s Classroom建立文法課。
. 第6章大多數學過網頁製作課程的學生已經處理過表單,然而本章的目的是讓學生熟悉用JavaScript處理表單。由於網頁製作課程已經討論過基本的表單控制項(選項按鈕、複選框、文字框、文本區框、挑選清單)以及隱藏欄位和特殊控制項(密碼元素、提交和重設按鈕),因此本章著眼於把表單資料返回給JavaScript程式,然後這個程式可以使用這些資料並且把其他資訊返回給網頁或者通過電子郵件把資訊發送給使用者。學生要為Greg‘s Gambits網站使用者建立一個物品目錄頁面,並且為Carla‘s Classroom網站的Carla產生一份將發送給學生父母的學習進度報告。
第7章本章包含函數、對象和JavaScript源檔案,討論內建和自訂函數,包含變數範圍、使用實參和形參、值參數和引用參數、按引用傳遞與按值傳遞,介紹新的對象(Boolean對象和Date對象)並且提供Math對象的更多資訊,介紹建立和使用外部JavaScript源檔案。學生要為Greg‘s Gambits建立一個懸吊人猜字遊戲,並且為Carla‘s Classroom建立閱讀理解課。
第8章本章是著眼於數組的兩章中的一章,討論作為JavaScript對象的數組概念(包含一維數組、二維數組和平行數組),討論裝載數組的不同方法以及幾個添加和刪除數組元素的JavaScript數組方法。學生要為Greg‘s Gambits建立一個數字拼圖遊戲15,並且為Carla‘s Classroom建立一個投影片放映。
第9章本章基於第8章,講解排序和搜尋數組,討論JavaScript的sort()和reverse()方法。為了維護平行數組的完整性,開發其他搜尋和排序方法,包括兩個排序演算法(冒泡排序和選擇排序)、兩個搜尋演算法(線性搜尋和二分搜尋)以及一些實施搜尋的JavaScript方法。學生要為Greg‘s Gambits建立一個拼字遊戲並且為Carla‘s Classroom建立因數分解課。
第10章本章從JavaScript轉到相關主題,討論文件物件模型(DOM)和XML,討論DOM節點和樹的概念以及網頁的父子模型,討論用DOM技術建立、插入、刪除和替換元素以及使用DOM方法建立定時器。本章還介紹了XML、XSL、命名空間和模式。在為Greg‘s Gambits建立頁面時,結合使用XML和JavaScript是顯示資料的另一種替代方法,結合使用XML和JavaScript為Carla‘s Classroom建立拼字課。
第11章這是兩章PHP相關內容的一章。要使用PHP,學生必須能夠訪問伺服器。本章向學生介紹XAMPP的安裝和使用方法,它是一個包含Apache伺服器、PHP和MySQL的免費程式,並且能夠安裝在任何個人電腦或膝上型電腦上。本章討論PHP基本知識,包括PHP檔案名稱、如何訪問Apache伺服器的檔案、PHP資料類型、PHP操作符和PHP關鍵字,介紹PHP的基本程式結構(包括順序、選擇和重複)與PHP數組和字串,強調在伺服器上為網站建立適當的檔案夾結構。學生要使用PHP為Greg‘s Gambits建立歡迎頁面,並且通過使用ajax_post()函數讓使用者向伺服器發送和返回資料。學生還要使用PHP為Carla‘s Classroom建立一個頁面,讓使用者輸入部分名字然後程式顯示一個大數組中的所有條目或者以那些字元開頭的列表(也就是說,程式為使用者提供可用選項並最終能夠用於自動完成使用者錄入)。
第12章本章在第11章介紹PHP的基礎上示範如何完成兩個特別而又重要的任務,討論建立和讀取Cookie,指引學生使用phpMyAdmin控制台建立資料庫(它是XAMPP安裝的一部分)。然後,使用PHP方法填充資料庫。因為本書不包括MySQL的學習並且不要求學生具備資料庫管理和MySQL知識,所以本章給出開發程式所需要的所有MySQL命令和語句,並且給出解釋。這樣,學生就能夠為想要成為Greg‘s Gambits遊戲網站成員的玩家建立和驗證賬戶。學生也要為Carla‘s Classroom建立一個資料庫,並且從資料庫中提取資訊從而向學生父母發送一封電子郵件報告。
著作權聲明:本文為博主原創文章,未經博主允許不得轉載。
JavaScript程式設計:基礎·PHP·XML