出版時(shí)間:2011-3 出版社:機(jī)械工業(yè)出版社 作者:Francesco Cesarini,Simon Thompson 頁(yè)數(shù):444 譯者:慕尼黑Isar工作組
Tag標(biāo)簽:無(wú)
內(nèi)容概要
《Erlang編程指南》是對(duì)Erlang語(yǔ)言的深入介紹。Erlang是任何必須并發(fā)、容錯(cuò)和快速響應(yīng)的環(huán)境的理想編程語(yǔ)言。隨著多核處理器及其針對(duì)并發(fā)的新的可擴(kuò)展方式的發(fā)展,Erlang得到了廣泛的使用。通過(guò)本書,你將學(xué)會(huì)如何使用Erlang編寫復(fù)雜的并發(fā)程序,不管你是否有編程背景和經(jīng)驗(yàn)。
《Erlang編程指南》由國(guó)際知名的Erlang社區(qū)領(lǐng)導(dǎo)者根據(jù)他們的培訓(xùn)材料編寫而成。本書的重點(diǎn)集中在解釋Erlang的語(yǔ)法和語(yǔ)義,并且介紹了其模式匹配、規(guī)范列表、遞歸、調(diào)試、網(wǎng)絡(luò)和并發(fā)性等內(nèi)容。
本書幫助你:
理解Erlang的強(qiáng)大功能及其包含的特殊功能。
學(xué)習(xí)并發(fā)背后的概念以及Erlang處理并發(fā)的方式。
編寫高效的Erlang程序并保持代碼整潔和良好的可讀性。
探究Erlang如何滿足分布式系統(tǒng)的要求。
輕松添加簡(jiǎn)單的圖形用戶界面。
學(xué)習(xí)Erlang的跟蹤機(jī)制以調(diào)試并發(fā)和分布式系統(tǒng)。
使用內(nèi)置的Mnesia數(shù)據(jù)庫(kù)和其他表存儲(chǔ)功能。
本書每章末尾都提供了練習(xí)題,并且由簡(jiǎn)單的示例貫穿全書。
作者簡(jiǎn)介
Francesco Cesarini,14年來(lái)一直向?qū)W生、開發(fā)人員、測(cè)試人員、項(xiàng)目和技術(shù)經(jīng)理教授Erlang/OTP技術(shù)。他協(xié)助在愛(ài)爾蘭、美國(guó)和英國(guó)建立起了Erlang開發(fā)中心?! imon Thompson是一位肯特大學(xué)計(jì)算機(jī)實(shí)驗(yàn)室的邏輯和計(jì)算學(xué)教授,在過(guò)去25年里,他在那里教授本科生和研究生的計(jì)算學(xué)課程。
書籍目錄
序/1
前言/3
第1章引言/9
為什么我應(yīng)該使用Erlang/9
Erlang語(yǔ)言的歷史及發(fā)展/11
Erlang的特性/12
Erlang和多核/17
案例研究/18
應(yīng)該如何使用Erlang/21
第2章Erlang基礎(chǔ)/22
整數(shù)/22
Erlang終端/23
浮點(diǎn)數(shù)/23
基元/25
布爾類型/27
元組/28
列表/29
項(xiàng)元比較/34
變量/36
復(fù)雜數(shù)據(jù)結(jié)構(gòu)/38
模式匹配/40
函數(shù)/44
模塊/46
練習(xí)/50
第3章Erlang順序編程/52
條件評(píng)估/52
保護(hù)元/57
內(nèi)置函數(shù)/60
遞歸/66
運(yùn)行時(shí)錯(cuò)誤/75
處理錯(cuò)誤/77
模塊庫(kù)/84
調(diào)試器/87
練習(xí)/90
第4章并發(fā)編程/95
創(chuàng)建進(jìn)程/96
消息傳遞/98
接收消息/100
注冊(cè)進(jìn)程/107
超時(shí)/110
性能基準(zhǔn)測(cè)試/111
進(jìn)程架構(gòu)/112
尾遞歸和內(nèi)存泄漏/113
面向并發(fā)程序設(shè)計(jì)的個(gè)案研究/115
競(jìng)爭(zhēng)條件、死鎖和饑餓進(jìn)程/116
進(jìn)程管理器/118
練習(xí)/119
第5章進(jìn)程設(shè)計(jì)模式/121
客戶端/服務(wù)器模型/122
進(jìn)程模式實(shí)例/128
有限狀態(tài)機(jī)/130
事件管理器和句柄/134
練習(xí)/141
第6章進(jìn)程錯(cuò)誤處理機(jī)制/143
進(jìn)程鏈接和退出信號(hào)/143
健壯性系統(tǒng)/152
練習(xí)/158
第7章記錄和宏/161
記錄/162
宏/168
練習(xí)/172
第8章軟件升級(jí)/175
升級(jí)模塊/175
幕后/178
升級(jí)過(guò)程/184
.erlang文件/188
練習(xí)/188
第9章更多數(shù)據(jù)類型和高級(jí)別構(gòu)造/190
實(shí)踐中的函數(shù)式編程/190
Funs和高階函數(shù)/191
列表解析/198
二進(jìn)制類型和序列化/202
引用/211
練習(xí)/212
第10章ETS和Dets表/214
ETS表/214
Dets表/228
移動(dòng)用戶數(shù)據(jù)庫(kù)實(shí)例/231
練習(xí)/242
第11章Erlang中的分布式編程/244
Erlang中的分布式系統(tǒng)/244
Erlang中的分布式計(jì)算:基礎(chǔ)/246
epmd進(jìn)程/259
練習(xí)/260
第12章OTP行為包/261
OTP行為包介紹/261
通用服務(wù)器/264
監(jiān)控進(jìn)程/274
應(yīng)用/278
版本發(fā)行的處理/284
其他行為包和更多閱讀資源/287
練習(xí)/288
第13章Mnesia介紹/290
何時(shí)使用Mnesia/290
配置Mnesia/292
事務(wù)處理/296
分區(qū)網(wǎng)絡(luò)/301
擴(kuò)展閱讀/302
練習(xí)/303
第14章圖形用戶界面編程wxErlang/305
wxWidgets/305
wxErlang:wxWidgets綁定到Erlang/306
第一個(gè)實(shí)例:MicroBlog/309
MiniBlog實(shí)例/313
獲取和運(yùn)行wxErlang/316
練習(xí)/317
第15章套接字編程/319
用戶數(shù)據(jù)報(bào)協(xié)議/319
傳輸控制協(xié)議/323
inet模塊/328
擴(kuò)展閱讀/329
練習(xí)/330
第16章Erlang與其他編程語(yǔ)言接口/332
交互運(yùn)作概況/332
與Java交互運(yùn)作/334
C節(jié)點(diǎn)/339
Unix終端的Erlang調(diào)用:erl_call/343
端口程序/343
通信支持庫(kù)/347
內(nèi)聯(lián)驅(qū)動(dòng)程序和FFI/349
練習(xí)/350
第17章跟蹤內(nèi)置函數(shù),dbg跟蹤器以及匹配規(guī)則/351
引言/351
跟蹤內(nèi)置函數(shù)/352
用trace_pattern內(nèi)置函數(shù)跟蹤調(diào)用/358
dbg跟蹤器/362
匹配規(guī)則:fun語(yǔ)法/370
匹配規(guī)則:螺母和螺栓/379
擴(kuò)展閱讀/387
練習(xí)/388
第18章類型和文檔/390
Erlang中的類型/390
TypEr: 成功類型和類型推斷/394
使用EDoc生成文檔/397
練習(xí)/405
第19章EUnit和測(cè)試驅(qū)動(dòng)開發(fā)/406
測(cè)試驅(qū)動(dòng)開發(fā)/406
EUnit/407
EUnit的基礎(chǔ)架構(gòu)/411
測(cè)試基于狀態(tài)的系統(tǒng)/413
在Erlang中測(cè)試并發(fā)程序/414
練習(xí)/415
第20章風(fēng)格和效率/417
應(yīng)用和模塊/417
進(jìn)程和并發(fā)/422
格式約定/425
編碼策略/431
效率/433
最后/437
附錄使用Erlang/439
章節(jié)摘錄
當(dāng)編寫程序的時(shí)候,你怎么知道這個(gè)程序?qū)⑷绾芜\(yùn)行呢?你也許會(huì)在腦子里面形成一個(gè)模型,這個(gè)模型定義了該程序會(huì)做什么。但是只有使用你的程序或者與它以某種方式互動(dòng)時(shí),才能確定這個(gè)程序真正的功能。第18章展示了如何使用-spec來(lái)表示預(yù)想的一個(gè)函數(shù)的輸入和輸出的類型是什么,TypEr可以檢查它是否和代碼本身一致。類型并不能告訴你一個(gè)程序如何運(yùn)行,但是測(cè)試是了解你的代碼如何工作的最好方法之一。其實(shí)本書從頭到尾我們都在非正式地這樣做。每一次給出一些定義,我們馬上就到Erlang的終端中嘗試它們。在Erlang中進(jìn)行開發(fā)時(shí),你的代碼和測(cè)試循環(huán)往往都很小。你寫完一些函數(shù)然后測(cè)試它們。你再添加一些函數(shù),然后再次測(cè)試它們。每次在終端中重復(fù)所有這些測(cè)試往往會(huì)變得既耗時(shí)且容易出錯(cuò)?! ?hellip;…
媒體關(guān)注與評(píng)論
“即便我已經(jīng)使用Erlang多年,在編程的時(shí)候仍然需要參考本書。不同層次的Erlang程序員都會(huì)發(fā)現(xiàn)本書是有價(jià)值的學(xué)習(xí)和參考資料。” ——Steve Vinoski,《IEEE Internet Computing》專欄作家
圖書封面
圖書標(biāo)簽Tags
無(wú)
評(píng)論、評(píng)分、閱讀與下載