TOP
0
0
【簡體曬書區】 單本79折,5本7折,活動好評延長至5/31,趕緊把握這一波!
斯坦福程序設計入門課:JavaScript實現(簡體書)
滿額折

斯坦福程序設計入門課:JavaScript實現(簡體書)

人民幣定價:119 元
定價
:NT$ 714 元
優惠價
87621
領券後再享88折起
海外經銷商無庫存,到貨日平均30天至45天
可得紅利積點:18 點
相關商品
商品簡介
名人/編輯推薦
目次

商品簡介

本書通過使用一門叫JavaScript的語言,教會你如何編寫程序,引導你走上奇妙的計算機科學的旅程。JavaScript語言是基於Web的應用程序的核心語言。書中所有示例代碼都可以在任何瀏覽器上運行,包括你手機上的瀏覽器。雖然本書是使用JavaScript來演示,然而,更重要的是,本書著重講解的是編程基本原則,其中的道理可以用在任何其他語言中。本書旨在用於大學課程中的第一門編程課。它覆蓋了傳統計算機科學首門課程(通常稱為CS1)的所有內容。

名人/編輯推薦

斯坦福大學計算機科學入門課程(CS1)教材,查爾斯·西蒙尼榮譽教授Eric S. Roberts新作。

目次

譯者序
寫給學生的話
寫給教師的話
致 謝
第1章 輕鬆入門 …… 1
1.1 Karel介紹 …… 2
1.1.1 Karel的編程 …… 2
1.1.2 Karel的世界 …… 3
1.1.3 Karel的內置函數 …… 3
1.2 教Karel解決問題 …… 4
1.2.1 開始起步 …… 4
1.2.2 定義函數 …… 5
1.2.3 完善程序 …… 6
1.2.4 使用庫函數 …… 7
1.2.5 分解策略 …… 7
1.3 控制語句 …… 9
1.3.1 條件語句 …… 9
1.3.2 循環語句 …… 11
1.3.3 解決通用問題 …… 13
1.4 逐步求精法 …… 15
1.4.1 一個逐步求精法的練習 …… 15
1.4.2 自上而下設計的原則 …… 15
1.4.3 求精第一個子問題 …… 16
1.4.4 編寫下一層代碼 …… 17
1.4.5 完成 …… 18
1.5 Karel世界裡的算法 …… 19
總結 …… 20
複習題 …… 22
練習題 …… 22
第2章 JavaScript簡介 …… 34
2.1 數據和類型 …… 35
2.2 數值數據 …… 35
2.2.1 JavaScript中數字的表示 …… 36
2.2.2 算術表達式 …… 36
2.2.3 優先級 …… 38
2.3 變量 …… 38
2.3.1 變量聲明 …… 39
2.3.2 賦值 …… 39
2.3.3 自增和自減操作符 …… 40
2.3.4 命名約定 …… 41
2.3.5 常量 …… 41
2.3.6 順序計算 …… 42
2.4 函數 …… 42
2.4.1 用JavaScript實現函數 …… 43
2.4.2 庫函數 …… 45
2.5 字符串數據 …… 46
2.5.1 字符串操作 …… 47
2.5.2 編寫簡單的字符串函數 …… 48
2.6 在瀏覽器中運行JavaScript …… 49
2.6.1 “Hello World”程序 …… 49
2.6.2 JavaScript和Web …… 51
2.6.3 JavaScript程序的HTML模板 …… 51
2.7 測試和調試 …… 53
2.7.1 防禦式編程 …… 54
2.7.2 成為一名優秀的調試者 …… 54
2.7.3 編程的各個階段 …… 54
2.7.4 心理障礙的一個例子 …… 57
2.7.5 編寫有效的測試程序 …… 58
2.8 軟件維護 …… 60
總結 …… 61
複習題 …… 63
練習題 …… 65
第3章 控制語句 …… 68
3.1 布爾數據 …… 69
3.1.1 關係操作符 …… 69
3.1.2 邏輯操作符 …… 70
3.1.3 短路求值 …… 72
3.2 if語句 …… 73
3.2.1 if語句的其他形式 …… 74
3.2.2 “?:”操作符 …… 75
3.3 switch語句 …… 76
3.4 while語句 …… 78
3.5 for語句 …… 81
3.5.1 for和while的關係 …… 84
3.5.2 嵌套的for語句 …… 84
3.6 算法編程 …… 86
3.6.1 早期的平方根算法 …… 87
3.6.2 尋找最大的公約數 …… 89
3.6.3 歐幾裡得算法 …… 90
3.7 避免使用模糊的真假值 …… 92
總結 …… 93
複習題 …… 94
練習題 …… 95
第4章 簡單圖形 …… 100
4.1 圖形版“Hello World” …… 101
4.2 類、對象和方法 …… 102
4.2.1 創建對象 …… 102
4.2.2 向對象發送消息 …… 103
4.2.3 引用 …… 104
4.2.4 封裝 …… 105
4.3 圖形對象 …… 105
4.3.1 GRect類 …… 105
4.3.2 GOval類 …… 108
4.3.3 GLine類 …… 109
4.3.4 GLabel類 …… 109
4.4 圖形窗口 …… 114
4.5 創建圖形化應用程序 …… 115
4.5.1 指定坐標和大小 …… 115
4.5.2 使用簡單的分解策略 …… 117
4.5.3 在圖形應用程序中使用控制語句 …… 119
4.5.4 返回圖形對象的函數 …… 121
總結 …… 122
複習題 …… 123
練習題 …… 124
第5章 函數 …… 132
5.1 快速回顧函數 …… 133
5.1.1 函數定義的語法 …… 133
5.1.2 傳遞參數 …… 134
5.1.3 可選參數 …… 134
5.1.4 謂詞函數 …… 135
5.2 程序庫 …… 136
5.2.1 創建自己的程序庫 …… 136
5.2.2 信息隱藏原則 …… 137
5.2.3 接口概念 …… 138
5.3 一個支持隨機選擇的程序庫 …… 138
5.3.1 設計RandomLib.js庫的接口 …… 139
5.3.2 實現RandomLib.js庫 …… 140
5.3.3 使用RandomLib.js庫 …… 142
5.4 函數調用的機制 …… 144
5.4.1 調用函數的步驟 …… 144
5.4.2 組合函數 …… 145
5.4.3 跟蹤組合函數 …… 146
5.5 遞歸函數 …… 149
5.5.1 fact的遞歸公式 …… 149
5.5.2?跟蹤遞歸過程 …… 150
5.5.3 遞歸的信仰之躍 …… 153
5.5.4 斐波那契函數 …… 153
5.5.5 計算斐波那契序列中的項 …… 154
5.5.6 在遞歸實現中獲得信心 …… 155
5.5.7 遞歸實現的效率 …… 155
總結 …… 158
複習題 …… 159
練習題 …… 160
第6章 編寫交互式程序 …… 164
6.1 一等函數 …… 165
6.1.1 將函數聲明為數據值 …… 165
6.1.2 傳遞函數作為參數 …… 166
6.2 一個簡單的交互式示例 …… 167
6.3 控制對象的屬性 …… 169
6.4 響應鼠標事件 …… 170
6.4.1 簡單的畫線程序 …… 171
6.4.2 在畫布上拖動對象 …… 173
6.5 基於計時器的動畫 …… 175
6.5.1 setTimeout和setInterval函數 …… 175
6.5.2 動畫的簡單示例 …… 176
6.5.3 跟蹤動畫的狀態 …… 177
6.6 擴展圖形庫 …… 179
6.6.1 GArc類 …… 179
6.6.2 GPolygon類 …… 181
6.6.3 GCompound類 …

您曾經瀏覽過的商品

購物須知

大陸出版品因裝訂品質及貨運條件與台灣出版品落差甚大,除封面破損、內頁脫落等較嚴重的狀態,其餘商品將正常出貨。

特別提醒:部分書籍附贈之內容(如音頻mp3或影片dvd等)已無實體光碟提供,需以QR CODE 連結至當地網站註冊“並通過驗證程序”,方可下載使用。

無現貨庫存之簡體書,將向海外調貨:
海外有庫存之書籍,等候約45個工作天;
海外無庫存之書籍,平均作業時間約60個工作天,然不保證確定可調到貨,尚請見諒。

為了保護您的權益,「三民網路書店」提供會員七日商品鑑賞期(收到商品為起始日)。

若要辦理退貨,請在商品鑑賞期內寄回,且商品必須是全新狀態與完整包裝(商品、附件、發票、隨貨贈品等)否則恕不接受退貨。

優惠價:87 621
海外經銷商無庫存,到貨日平均30天至45天

暢銷榜

客服中心

收藏

會員專區