編程語言原理 2024 pdf epub mobi 電子書 下載
☆☆☆☆☆
簡體網頁||
繁體網頁
編程語言原理 pdf epub mobi 著者簡介
Robert W.Sebesta,賓夕法尼亞州立大學獲得計算機科學博士,擁有30多年的教授計算機科學課程的經驗。目前擔任科羅拉多大學科羅拉多斯普林斯分校計算機科學係的副教授、ACM和IEEE計算機學會的會員,主要研究方嚮是設計和評估程序設計語言、編譯器設計以及軟件測試方法和工具。
編程語言原理 pdf epub mobi 圖書描述
塞巴斯塔編寫的這本《編程語言原理(第10版)》從為什麼學習程序設計語言入手,深入細緻地講解瞭命令式語言的主要結構及其設計與實現,內容涉及變量、數據類型、錶達式和賦值語句、控製語句、子程序、數據抽象機製、對麵嚮對象程序設計的支持(繼承和動態方法綁定)、並發、異常處理和事件處理等方麵。最後兩章介紹瞭函數式程序設計語言和邏輯程序設計語言。
《編程語言原理(第10版)》內容豐富,講解透徹,既可用做高等院校計算機及相關專業本科生程序設計語言課程的教材和參考書,也可供程序設計人員參考。
編程語言原理 2024 pdf epub mobi 電子書 下載
編程語言原理 pdf epub mobi 圖書目錄
目錄
第1章 預備知識
1.1 學習程序設計語言原理的原因
1.2 程序設計領域
1.2.1 科學應用
1.2.2 商務應用
1.2.3 人工智能
1.2.4 係統程序設計
1.2.5 網絡軟件
1.3 語言評價標準
1.3.1 可讀性
1.3.2 可寫性
1.3.3 可靠性
1.3.4 成本
1.4 影響語言設計的因素
1.4.1 計算機體係結構
1.4.2 程序設計方法學
1.5 程序設計語言的分類
1.6 語言設計中的權衡
1.7 實現方法
1.7.1 編譯
1.7.2 完全解釋
1.7.3 混閤實現係統
1.7.4 預處理器
1.8 編程環境
第2章 主要程序設計語言的發展
2.1 Zuse的Plankalkül語言
2.1.1 曆史背景
2.1.2 語言概述
2.2 僞代碼
2.2.1 Short Code語言
2.2.2 Speedcoding係統
2.2.3 UNIVAC“編譯”係統
2.2.4 相關工作
2.3 IBM 704計算機與Fortran語言
2.3.1 曆史背景
2.3.2 設計過程
2.3.3 Fortran I概述
2.3.4 Fortran II
2.3.5 Fortran IV、77、90、95、2003和2008
2.3.6 評價
2.4 函數式程序設計:LISP語言
2.4.1 人工智能的起源和錶處理
2.4.2 LISP語言的設計過程
2.4.3 語言概述
2.4.4 評價
2.4.5 LISP的兩種後代語言
2.4.6 相關語言
2.5 邁嚮成熟的第一步:ALGOL 60
2.5.1 曆史背景
2.5.2 早期設計過程
2.5.3 ALGOL 58概述
2.5.4 對ALGOL 58報告的響應
2.5.5 ALGOL 60的設計過程
2.5.6 ALGOL 60概述
2.5.7 評價
2.6 商務記錄的計算機化:COBOL語言
2.6.1 曆史背景
2.6.2 FLOW-MATIC語言
2.6.3 COBOL語言的設計過程
2.6.4 評價
2.7 分時處理的開始:BASIC語言
2.7.1 設計過程
2.7.2 語言概述
2.7.3 評價
2.8 滿足所有人的需要:PL/I
2.8.1 曆史背景
2.8.2 設計過程
2.8.3 語言概述
2.8.4 評價
2.9 兩種早期的動態語言:APL和SNOBOL
2.9.1 APL語言的起源與特點
2.9.2 SNOBOL語言的起源與特點
2.10 數據抽象的開始:SIMULA 67
2.10.1 設計過程
2.10.2 語言概述
2.11 正交設計:ALGOL 68
2.11.1 設計過程
2.11.2 語言概述
2.11.3 評價
2.12 ALGOL係列語言的早期後代語言
2.12.1 為簡單性而設計:Pascal語言
2.12.2 可移植的係統語言:C語言
2.13 基於邏輯的程序設計:Prolog語言
2.13.1 設計過程
2.13.2 語言概述
2.13.3 評價
2.14 曆史上規模最大的設計工作:Ada語言
2.14.1 曆史背景
2.14.2 設計過程
2.14.3 語言概述
2.14.4 評價
2.14.5 Ada 95和Ada 2005
2.15 麵嚮對象的程序設計:Smalltalk
2.15.1 設計過程
2.15.2 語言概述
2.15.3 評價
2.16 結閤命令式和麵嚮對象的特性:C++
2.16.1 設計過程
2.16.2 語言概述
2.16.3 評價
2.16.4 一種相關語言:Objective-C
2.16.5 另一種相關語言:Delphi
2.16.6 一種關係不大的語言:Go
2.17 基於命令式的麵嚮對象語言:Java
2.17.1 設計過程
2.17.2 語言概述
2.17.3 評價
2.18 腳本語言
2.18.1 Perl的起源與特點
2.18.2 JavaScript的起源與特點
2.18.3 PHP的起源與特點
2.18.4 Python的起源與特點
2.18.5 Ruby的起源與特點
2.18.6 Lua的起源與特點
2.19 一流的.NET語言:C#
2.19.1 設計過程
2.19.2 語言概述
2.19.3 評價
2.20 標記與程序設計混閤的語言
2.20.1 XSLT
2.20.2 JSP
第3章 描述語法和語義
3.1 概述
3.2 描述語法的普遍問題
3.2.1 語言識彆器
3.2.2 語言生成器
3.3 描述語法的形式化方法
3.3.1 巴科斯-諾爾範式和上下文無關文法
3.3.2 擴展的BNF
3.3.3 文法與識彆器
3.4 屬性文法
3.4.1 靜態語義
3.4.2 基本概念
3.4.3 屬性文法定義
3.4.4 本質屬性
3.4.5 屬性文法的例子
3.4.6 計算屬性值
3.4.7 評價
3.5 描述程序的意義:動態語義
3.5.1 操作語義
3.5.2 指稱語義
3.5.3 公理語義
第4章 詞法分析和語法分析
4.1 概述
4.2 詞法分析
4.3 語法分析問題
4.3.1 語法分析概述
4.3.2 自頂嚮下的語法分析器
4.3.3 自底嚮上的語法分析器
4.3.4 語法分析的復雜度
4.4 遞歸下降的語法分析
4.4.1 遞歸下降的語法分析過程
4.4.2 LL文法類
4.5 自下而上的語法分析
4.5.1 自下而上的語法分析器的分析問題
4.5.2 移進-歸約算法
4.5.3 LR語法分析器
第5章 名字、綁定和作用域
5.1 概述
5.2 名字
5.2.1 設計問題
5.2.2 名字形式
5.2.3 特殊字
5.3 變量
5.3.1 名字
5.3.2 地址
5.3.3 類型
5.3.4 數值
5.4 綁定的概念
5.4.1 屬性與變量綁定
5.4.2 綁定類型
5.4.3 存儲綁定和生存期
5.5 作用域
5.5.1 靜態作用域
5.5.2 塊
5.5.3 聲明的次序
5.5.4 全局作用域
5.5.5 靜態作用域的評價
5.5.6 動態作用域
5.5.7 動態作用域的評價
5.6 作用域和生存期
5.7 引用環境
5.8 命名常量
第6章 數據類型
6.1 概述
6.2 基本數據類型
6.2.1 數值類型
6.2.2 布爾類型
6.2.3 字符類型
6.3 字符串類型
6.3.1 設計問題
6.3.2 字符串及其操作
6.3.3 字符串長度的設計選項
6.3.4 評價
6.3.5 字符串類型的實現
6.4 用戶定義的序數類型
6.4.1 枚舉類型
6.4.2 子界類型
6.4.3 實現用戶定義的有序類型
6.5 數組類型
6.5.1 設計問題
6.5.2 數組和索引
6.5.3 下標的綁定和數組的種類
6.5.4 數組的初始化
6.5.5 數組操作
6.5.6 矩形數組和不規則數組
6.5.7 切片
6.5.8 評價
6.5.9 數組類型的實現
6.6 關聯數組
6.6.1 結構和操作
6.6.2 關聯數組的實現
6.7 記錄類型
6.7.1 記錄的定義
6.7.2 記錄域的引用
6.7.3 評價
6.7.4 記錄類型的實現
6.8 元組類型
6.9 列錶類型
6.10 聯閤類型
6.10.1 設計問題
6.10.2 判彆式聯閤與自由聯閤
6.10.3 Ada的聯閤類型
6.10.4 F#的聯閤類型
6.10.5 評價
6.10.6 聯閤類型的實現
6.11 指針和引用類型
6.11.1 設計問題
6.11.2 指針操作
6.11.3 指針的相關問題
6.11.4 Ada中的指針
6.11.5 C和C++中的指針
6.11.6 引用類型
6.11.7 評價
6.11.8 指針和引用類型的實現
6.12 類型檢查
6.13 強類型化
6.14 類型等價
6.15 理論和數據類型
第7章 錶達式與賦值語句
7.1 概述
7.2 算術錶達式
7.2.1 運算符的運算順序
7.2.2 操作數的運算順序
7.3 運算符重載
7.4 類型轉換
7.4.1 錶達式中的強製類型轉換
7.4.2 顯式類型轉換
7.4.3 錶達式中的錯誤
7.5 關係錶達式和布爾錶達式
7.5.1 關係錶達式
7.5.2 布爾錶達式
7.6 短路求值
7.7 賦值語句
7.7.1 簡單賦值
7.7.2 條件賦值
7.7.3 混閤賦值運算符
7.7.4 一元賦值運算符
7.7.5 賦值錶達式
7.7.6 多重賦值
7.7.7 函數式編程語言中的賦值
7.8 混閤模式賦值
第8章 語句級控製結構
8.1 概述
8.2 選擇語句
8.2.1 雙路選擇語句
8.2.2 多重選擇結構
8.3 迭代語句
8.3.1 計數控製循環
8.3.2 邏輯控製循環
8.3.3 用戶自定義的循環控製機製
8.3.4 基於數據結構的迭代
8.4 無條件分支
8.5 防護命令
8.6 結論
第9章 子程序
9.1 概述
9.2 子程序的基本原理
9.2.1 子程序的一般性質
9.2.2 子程序的基本定義
9.2.3 參數
9.2.4 過程與函數
9.3 子程序的設計問題
9.4 局部引用環境
9.4.1 局部變量
9.4.2 嵌套子程序
9.5 參數傳遞方式
9.5.1 參數傳遞的語義模型
9.5.2 參數傳遞的實現模型
9.5.3 參數傳遞方法的實現
9.5.4 常見語言的參數傳遞方法
9.5.5 參數的類型檢查
9.5.6 多維數組作為參數
9.5.7 設計考慮
9.5.8 參數傳遞的例子
9.6 子程序作為參數
9.7 間接調用子程序
9.8 重載子程序
9.9 泛型子程序
9.9.1 C++中的泛型函數
9.9.2 Java 5.0中的泛型方法
9.9.3 C# 2005中的泛型方法
9.9.4 F#中的泛型函數
9.10 函數的設計問題
9.10.1 函數的副作用
9.10.2 返迴值的類型
9.10.3 返迴值的個數
9.11 用戶定義重載運算符
9.12 閉包
9.13 協同程序
第10章 實現子程序
10.1 調用和返迴的一般語義
10.2 實現“簡單”的子程序
10.3 通過棧動態局部變量實現子程序
10.3.1 更復雜的活動記錄
10.3.2 一個不含遞歸調用的例子
10.3.3 遞歸調用
10.4 嵌套子程序
10.4.1 基礎知識
10.4.2 靜態鏈
10.5 塊
10.6 動態作用域的實現
10.6.1 深層訪問
10.6.2 淺層訪問
第11章 抽象數據類型與封裝結構
11.1 抽象的概念
11.2 數據抽象簡介
11.2.1 抽象數據類型之浮點型
11.2.2 用戶自定義的抽象數據類型
11.2.3 示例
11.3 抽象數據類型的設計問題
11.4 語言示例
11.4.1 Ada中的抽象數據類型
11.4.2 C++中的抽象數據類型
11.4.3 Objective-C中的抽象數據類型
11.4.4 Java中的抽象數據類型
11.4.5 C#中的抽象數據類型
11.4.6 Ruby中的抽象數據類型
11.5 參數化的抽象數據類型
11.5.1 Ada
11.5.2 C++
11.5.3 Java 5.0
11.5.4 C# 2005
11.6 封裝結構
11.6.1 引言
11.6.2 C中的封裝
11.6.3 C++中的封裝
11.6.4 Ada包
11.6.5 C#程序集
11.7 命名封裝
11.7.1 C++命名空間
11.7.2 Java包
11.7.3 Ada包
11.7.4 Ruby模塊
第12章 麵嚮對象程序設計的支持
12.1 概述
12.2 麵嚮對象編程
12.2.1 引言
12.2.2 繼承
12.2.3 動態綁定
12.3 麵嚮對象語言的設計問題
12.3.1 對象的排他性
12.3.2 子類是子類型嗎
12.3.3 單繼承與多繼承
12.3.4 對象的分配和釋放
12.3.5 動態綁定與靜態綁定
12.3.6 嵌套類
12.3.7 對象的初始化
12.4 Smalltalk對麵嚮對象編程的支持
12.4.1 一般特徵
12.4.2 繼承
12.4.3 動態綁定
12.4.4 Smalltalk的評價
12.5 C++對麵嚮對象編程的支持
12.5.1 一般特徵
12.5.2 繼承
12.5.3 動態綁定
12.5.4 評價
12.6 Objective-C對麵嚮對象編程的支持
12.6.1 一般特徵
12.6.2 繼承
12.6.3 動態綁定
12.6.4 評價
12.7 Java對麵嚮對象編程的支持
12.7.1 一般特徵
12.7.2 繼承
12.7.3 動態綁定
12.7.4 被嵌套的類
12.7.5 評價
12.8 C#對麵嚮對象編程的支持
12.8.1 一般特徵
12.8.2 繼承
12.8.3 動態綁定
12.8.4 被嵌套的類
12.8.5 評價
12.9 Ada 95對麵嚮對象編程的支持
12.9.1 一般特徵
12.9.2 繼承
12.9.3 動態綁定
12.9.4 子包
12.9.5 評價
12.10 Ruby對麵嚮對象編程的支持
12.10.1 一般特徵
12.10.2 繼承
12.10.3 動態綁定
12.10.4 評價
12.11 麵嚮對象構造的實現
12.11.1 存儲實例數據
12.11.2 方法調用到方法的動態綁定
第13章 並發
13.1 概述
13.1.1 多處理器體係結構
13.1.2 並發的種類
13.1.3 使用並發的目的
13.2 子程序級並發概述
13.2.1 基本概念
13.2.2 為並發而設計的語言
13.2.3 設計問題
13.3 信號量
13.3.1 概述
13.3.2 閤作同步
13.3.3 競爭同步
13.3.4 評價
13.4 管程
13.4.1 概述
13.4.2 競爭同步
13.4.3 閤作同步
13.4.4 評價
13.5 消息傳遞
13.5.1 概述
13.5.2 同步消息傳遞的原理
13.6 Ada對並發的支持
13.6.1 基本原理
13.6.2 閤作同步
13.6.3 競爭同步
13.6.4 任務終止
13.6.5 優先級
13.6.6 受保護對象
13.6.7 評價
13.7 Java綫程
13.7.1 Thread類
13.7.2 優先級
13.7.3 信號量
13.7.4 競爭同步
13.7.5 閤作同步
13.7.6 非阻塞同步
13.7.7 顯式鎖定
13.7.8 評價
13.8 C#綫程
13.8.1 基本綫程操作
13.8.2 同步綫程
13.8.3 評價
13.9 函數式語言中的並發
13.9.1 Multilisp
13.9.2 並發ML
13.9.3 F#
13.10 語句級並發
第14章 異常處理和事件處理
14.1 異常處理概述
14.1.1 基本概念
14.1.2 設計問題
14.2 Ada中的異常處理
14.2.1 異常處理程序
14.2.2 將異常綁定到處理程序
14.2.3 繼續
14.2.4 其他設計選擇
14.2.5 例子
14.2.6 評價
14.3 C++中的異常處理
14.3.1 異常處理程序
14.3.2 異常與處理程序的綁定
14.3.3 繼續
14.3.4 其他設計選擇
14.3.5 例子
14.3.6 評價
14.4 Java中的異常處理
14.4.1 異常類
14.4.2 異常處理程序
14.4.3 異常與處理程序的綁定
14.4.4 其他設計選擇
14.4.5 例子
14.4.6 finally子句
14.4.7 斷言
14.4.8 評價
14.5 事件處理概述
14.6 Java的事件處理
14.6.1 Java Swing的GUI組件
14.6.2 Java事件模型
14.7 C#中的事件處理
第15章 函數式程序設計語言
15.1 概述
15.2 數學函數
15.2.1 簡單函數
15.2.2 函數形式
15.3 函數式程序設計語言基礎
15.4 第一種函數式程序設計語言LISP
15.4.1 數據類型和結構
15.4.2 第一個LISP解釋器
15.5 Scheme概述
15.5.1 Scheme的起源
15.5.2 Scheme解釋器
15.5.3 基本數值函數
15.5.4 定義函數
15.5.5 輸齣函數
15.5.6 數值謂詞函數
15.5.7 控製流
15.5.8 錶函數
15.5.9 用於符號原子和錶的謂詞函數
15.5.10 Scheme函數示例
15.5.11 LET
15.5.12 Scheme中的尾遞歸
15.5.13 函數形式
15.5.14 構建代碼的函數
15.6 Common LISP
15.7 ML
15.8 Haskell
15.9 F#
15.10 基本命令式語言對函數式編程的支持
15.11 函數式語言和命令式語言的比較
第16章 邏輯程序設計語言
16.1 概述
16.2 謂詞演算簡介
16.2.1 命題
16.2.2 子句形式
16.3 謂詞演算與定理證明
16.4 邏輯程序設計概述
16.5 Prolog的起源
16.6 Prolog的基本元素
16.6.1 項
16.6.2 事實語句
16.6.3 規則語句
16.6.4 目標語句
16.6.5 Prolog的推理過程
16.6.6 簡單算術
16.6.7 錶結構
16.7 Prolog存在的缺陷
16.7.1 歸結的順序控製
16.7.2 封閉世界假設
16.7.3 否定問題
16.7.4 固有的限製
16.8 邏輯程序設計的應用
16.8.1 關係數據庫管理係統
16.8.2 專傢係統
16.8.3 自然語言處理
參考文獻
· · · · · · (
收起)
下載链接在页面底部
點擊這裡下載
立刻按 ctrl+D收藏本頁
你會得到大驚喜!!
發表於2024-12-22
編程語言原理 2024 pdf epub mobi 電子書 下載
編程語言原理 2024 pdf epub mobi 電子書 下載
編程語言原理 2024 pdf epub mobi 電子書 下載
喜欢 編程語言原理 電子書 的读者还喜欢
編程語言原理 pdf epub mobi 讀後感
評分
☆☆☆☆☆
這本書的名氣很大,很多人說是經典之作。 讀過後是什麼感覺呢?就是沒什麼感覺。讀之前對程序語言有多少睏惑和不解,讀之後還是有多少睏惑和不解。 為什麼,因為書裏對各種語言的敘述更多停留在語法層麵上,是的,不同語言的語法是不一樣的。但是為什麼新的語言引入瞭一種東...
評分
☆☆☆☆☆
在讀,不求甚解 隻因為很多內容不能在自己的腦海中形成自己的體係,一些基本功有所欠缺所緻 讀到中間部分瞭,對於程序設計語言的曆史,一些程序語言的特點及一些常見結構的形成原因有所瞭解,比如字符串,知道為什麼會有字符串這個數據類型,在不同的語言中對於這個數據類型的...
評分
☆☆☆☆☆
作為一個程序員,一般隻有精通一門程序設計語言就可以勝任當前的工作瞭。當往往進入一個新的項目,或者重新選擇一份工作,或者自己發現當前的所使用的程序語言對於有些問題的解決,用著不是那麼方便,這個時候我們就傾嚮於去尋求一種閤適的語言。比如,我最近在工作過程中...
評分
☆☆☆☆☆
這本書的名氣很大,很多人說是經典之作。 讀過後是什麼感覺呢?就是沒什麼感覺。讀之前對程序語言有多少睏惑和不解,讀之後還是有多少睏惑和不解。 為什麼,因為書裏對各種語言的敘述更多停留在語法層麵上,是的,不同語言的語法是不一樣的。但是為什麼新的語言引入瞭一種東...
評分
☆☆☆☆☆
作為一個程序員,一般隻有精通一門程序設計語言就可以勝任當前的工作瞭。當往往進入一個新的項目,或者重新選擇一份工作,或者自己發現當前的所使用的程序語言對於有些問題的解決,用著不是那麼方便,這個時候我們就傾嚮於去尋求一種閤適的語言。比如,我最近在工作過程中...
類似圖書 點擊查看全場最低價
出版者:清華大學齣版社
作者:Robert W. Sebesta
出品人:
頁數:617
譯者:馬躍
出版時間:2013-3
價格:98.00元
裝幀:
isbn號碼:9787302311126
叢書系列:
圖書標籤:
編程語言
計算機
編譯原理
編程
計算機科學
計算機科學-語言與編譯器
程序設計
PL
編程語言原理 2024 pdf epub mobi 電子書 下載
編程語言原理 pdf epub mobi 用戶評價
評分
☆☆☆☆☆
讀瞭1、2、6、9、10、11、12章,書中多是不同語言語法特性的羅列,沒有我更想知道的why、具體的實現機理。
評分
☆☆☆☆☆
《程序設計語言原理 》
評分
☆☆☆☆☆
說實話,這本書無論是對編程新手還是碰過三四門語言的人來說,都不是一本值得花時間看的書。我前麵看的很細,一開始說程序語言發展的曆史我還是比較感興趣的,後麵慢慢就變成針對編程語言的不同特性羅列各種不同語言的設計實現,往往也一筆而過,作者想說的太多,但寫得又太少,最後成為介紹性的大雜燴
評分
☆☆☆☆☆
說實話,這本書無論是對編程新手還是碰過三四門語言的人來說,都不是一本值得花時間看的書。我前麵看的很細,一開始說程序語言發展的曆史我還是比較感興趣的,後麵慢慢就變成針對編程語言的不同特性羅列各種不同語言的設計實現,往往也一筆而過,作者想說的太多,但寫得又太少,最後成為介紹性的大雜燴
評分
☆☆☆☆☆
《程序設計語言原理 》
編程語言原理 2024 pdf epub mobi 電子書 下載