Scala編程

出版時(shí)間:2010-12  出版社:電子工業(yè)出版社  作者:Martin Odersky、Lex Spoon、Bill Venners 著  頁(yè)數(shù):492  字?jǐn)?shù):782000  譯者:黃海旭,高宇翔  
Tag標(biāo)簽:無(wú)  

內(nèi)容概要

本書(shū)介紹了一種新的編程語(yǔ)言,它把面向?qū)ο蠛秃瘮?shù)式編程概念有機(jī)地結(jié)合為整體,從而形成一種完整統(tǒng)一、語(yǔ)義豐富的新思維體系。本書(shū)循序漸進(jìn),由淺入深,經(jīng)作者精心組織、仔細(xì)編排,將語(yǔ)言中的各種概念自然地鋪陳在字里行間。除此之外,本書(shū)還包含了大量富有針對(duì)性和趣味性的示例,它們除了提供對(duì)語(yǔ)言各個(gè)方面的具體演示之外,還從側(cè)面說(shuō)明了如何將函數(shù)式編程的理念切實(shí)并廣泛地應(yīng)用到面向?qū)ο缶幊讨?。本?shū)面向的讀者是有一定編程經(jīng)驗(yàn)的開(kāi)發(fā)人員,他們希望能夠開(kāi)拓眼界,并致力于提高在軟件開(kāi)發(fā)各方面的技能。

作者簡(jiǎn)介

關(guān)于作者
Martin Odersky是Scala語(yǔ)言的創(chuàng)造者。作為瑞士洛桑聯(lián)邦理工學(xué)院(EPFL)的教授,他主要從事編程語(yǔ)言領(lǐng)域的工作。更具體地說(shuō),是面向?qū)ο蠛秃瘮?shù)式編程的語(yǔ)言。他研究的論題是,這兩種編程模式是硬幣的兩面,應(yīng)該被盡可能地統(tǒng)一在一起。為了證明這點(diǎn),他已試驗(yàn)性地設(shè)計(jì)了大量的語(yǔ)言,從Pizza到GJ到Functional Nets語(yǔ)言 。他還作為Java泛型的聯(lián)合設(shè)計(jì)師及當(dāng)前javac參考編譯器的原作者影響了Java的發(fā)展。從2001年起,他主要從事Scala編程語(yǔ)言的設(shè)計(jì)、實(shí)現(xiàn)及改進(jìn)工作。
Lex Spoon是Google的軟件工程師。他以EPFL博士后身份在Scala方面工作了兩年時(shí)間,從佐治亞理工學(xué)院(Georgia Tech)獲得計(jì)算機(jī)科學(xué)的博士學(xué)位。那時(shí)他的主要工作是動(dòng)態(tài)語(yǔ)言的靜態(tài)分析。除了Scala之外,他還從事大量其他的編程語(yǔ)言工作,范圍從動(dòng)態(tài)語(yǔ)言Smalltalk到科學(xué)性語(yǔ)言X10。他和他的妻子,兩只貓、一條吉娃娃還有一只烏龜,現(xiàn)生活于亞特蘭大。
Bill Venners是Artima的總裁,兼Artima開(kāi)發(fā)者網(wǎng)站(www.artima.com)的發(fā)行人。他是《深入Java虛擬機(jī)》(“Inside the Java Virtual Machine”)的作者,該書(shū)是定向?yàn)槌绦騿T的Java平臺(tái)架構(gòu)和內(nèi)部組織的總體研究。他在JavaWorld雜志上有很受歡迎的專欄,內(nèi)容涵蓋Java內(nèi)部機(jī)制,面向?qū)ο笤O(shè)計(jì),還有Jini。Bill從Jini誕生伊始就活躍于Jini社區(qū),他曾領(lǐng)導(dǎo)Jini社區(qū)的ServiceUI項(xiàng)目,而其中的ServiceUI API已經(jīng)變成了聯(lián)系用戶界面和Jini服務(wù)之間的事實(shí)標(biāo)準(zhǔn)。Bill還是ScalaTest(Scala和Java開(kāi)發(fā)的開(kāi)源測(cè)試工具)的首席開(kāi)發(fā)者(lead developer)和設(shè)計(jì)者。

書(shū)籍目錄

圖表清單前言致謝導(dǎo)讀第1章  可伸展的語(yǔ)言第2章  Scala入門初探第3章  Scala入門再探第4章  類和對(duì)象第5章  基本類型和操作第6章  函數(shù)式對(duì)象第7章  內(nèi)建控制結(jié)構(gòu)第8章  函數(shù)和閉包第9章  控制抽象第10章  組合與繼承第11章  Scala的層級(jí)第12章  特質(zhì)第13章  包和引用第14章  斷言和單元測(cè)試第15章  樣本類和模式匹配第16章  使用列表第17章  集合類型第18章  有狀態(tài)的對(duì)象第19章  類型參數(shù)化第20章  Abstract Members抽象成員第21章  隱式轉(zhuǎn)換和參數(shù)第22章  實(shí)現(xiàn)列表第23章  重訪for表達(dá)式第24章  Extractors抽取器第25章  注解第26章  使用XML第27章  使用對(duì)象的模塊化編程第28章  對(duì)象相等性第29章  結(jié)合Scala和Java第3章  Actor和并發(fā)第31章  連結(jié)符解析第32章  GUI編程第33章  試算表附錄A  Unix和Windows的Scala腳本術(shù)語(yǔ)表參考文獻(xiàn)關(guān)于作者索引

章節(jié)摘錄

  當(dāng)然也可以直接使用Java的類庫(kù)。但結(jié)果卻不容樂(lè)觀,因?yàn)楸M管Java允許創(chuàng)建新的類,但這些類總感覺(jué)不像原生的語(yǔ)言支持那么方便。 前面的例子演示了如何在Scala中增加新的類型,使得它們用起來(lái)方便得像內(nèi)建類型一樣。同樣的擴(kuò)展理念也應(yīng)用在了控制結(jié)構(gòu)上。這種擴(kuò)展可以由Scala的“基于actor”的并發(fā)編程API闡明?!‰S著近年來(lái)多核處理器的激增,為了獲取可接受的性能,應(yīng)用中必須運(yùn)用更多的并行機(jī)制。這常常就意味著須重寫(xiě)代碼以使計(jì)算分布到若干并發(fā)線程上。不幸的是,創(chuàng)建可依賴的多線程程序經(jīng)實(shí)踐證明非常具有挑戰(zhàn)性。Iava的線程模型是圍繞著共享內(nèi)存和鎖建立的,當(dāng)系統(tǒng)在規(guī)模和復(fù)雜度都不斷變大的時(shí)候,這種模型會(huì)越發(fā)變得難以理解。很難說(shuō)程序里面沒(méi)有資源競(jìng)爭(zhēng)或潛藏的死鎖--有些東西不是能經(jīng)測(cè)試檢驗(yàn)出的,或許只在投入生產(chǎn)后才會(huì)表現(xiàn)出來(lái)。目前可以認(rèn)為比較安全的可選方案是消息傳遞架構(gòu),例如在Erlan只編程語(yǔ)言中應(yīng)用的“actor”方案?!?ava帶了一個(gè)豐富的、基于線程的并發(fā)庫(kù)。scala也可以像使用其他Java API那樣用它編程。不過(guò),Scala還提供了一個(gè)實(shí)質(zhì)上實(shí)現(xiàn)了Erlang的actor模型的附加庫(kù)。  ……

圖書(shū)封面

圖書(shū)標(biāo)簽Tags

無(wú)

評(píng)論、評(píng)分、閱讀與下載


    Scala編程 PDF格式下載


用戶評(píng)論 (總計(jì)24條)

 
 

  •   適合有較多編程經(jīng)驗(yàn)的朋友閱讀。
  •   scala的入門好書(shū),講解詳細(xì)透徹,灌輸函數(shù)式思想。
  •   昨天入手,正在讀。對(duì)于scala的介紹循序漸進(jìn),適合我的學(xué)習(xí)風(fēng)格。
  •   寫(xiě)的挺好 國(guó)內(nèi)scala相關(guān)的書(shū)還是少了點(diǎn)
  •   學(xué)scala的人必定要有一本。平常就當(dāng)工具書(shū)用吧
  •   對(duì)于入門scala,這是一本不錯(cuò)的書(shū),特別是在現(xiàn)在scala的紙質(zhì)書(shū)不多的情況下,推薦
  •   講的很詳細(xì),入門經(jīng)典之作,慢慢溫習(xí)
  •   剛到手,看了一下,比網(wǎng)上的只言片語(yǔ)要好
  •   書(shū)和服務(wù)俱佳!
  •   并行開(kāi)發(fā)的好書(shū),利用jvm,是java開(kāi)發(fā)者學(xué)習(xí)并行開(kāi)發(fā)的不二之選。
    也是一本了解函數(shù)式編程的好書(shū)。
    全書(shū)講解比較全面,是初學(xué)者的入門必選。
  •   了解Scala編程
  •   沒(méi)見(jiàn)過(guò)這么大開(kāi)本的書(shū)。排版各個(gè)方面都給人很不專業(yè)的感覺(jué)。而且價(jià)格定的很高??磥?lái)“博文視點(diǎn)”的質(zhì)量不在像以前那么過(guò)硬了。
  •   好用。不錯(cuò)。有點(diǎn)難。
  •   scala方面的書(shū)太少了,難得
  •   關(guān)注一下新興技術(shù)
  •   Scala書(shū)評(píng)
  •   寫(xiě)的不錯(cuò),值得看~
  •   單位正好要開(kāi)始搞屎殼郎了
  •   不是入門教程,是高級(jí)教程
  •     好的一方面,這本書(shū)倒是一本很詳盡細(xì)致的參考手冊(cè),scala里做一件事往往有好幾種做法(一種最底層的原始做法,一種加了點(diǎn)語(yǔ)法糖的友好做法,還一種糖加多了甜的不得了的做法),這本書(shū)介紹的比較充分,并且在很多地方對(duì)這語(yǔ)言為什么這么設(shè)計(jì)做了解釋,在讀完書(shū)開(kāi)始實(shí)用時(shí)碰到問(wèn)題的時(shí)候(一定會(huì)的)回來(lái)翻書(shū)是很有幫助的。
      
      不好的一方面:作者 Martin Odersky是寫(xiě)java編譯器的牛人,技術(shù)是沒(méi)說(shuō)的,但這書(shū)寫(xiě)的可就不夠深入淺出。作者一方面試圖將java程序員引導(dǎo)到函數(shù)式編程的世界,一方面有沒(méi)對(duì)函數(shù)式編程做足夠的理論上的解釋,如果讀者沒(méi)有函數(shù)式編程的經(jīng)驗(yàn)(比如haskell),直接從這本書(shū)上手是有點(diǎn)難。我建議想學(xué)scala的人可以先學(xué)下haskell換換腦子,http://learnyouahaskell.com/chapters,先看這本書(shū),有概念后再回來(lái)學(xué)scala進(jìn)行應(yīng)用。
      書(shū)里的代碼例子往往試圖同時(shí)反映scala的多個(gè)特點(diǎn)(scala也確實(shí)很有特點(diǎn)。。。),怕是也會(huì)嚇倒不少對(duì)scala感興趣的人。
  •   讀此書(shū)前,最好念一本fp的理論書(shū)
  •   魔頭一語(yǔ)中的。
  •   最近的scala評(píng)價(jià)很不好吶,應(yīng)用也沒(méi)有多少,更不用說(shuō)在生產(chǎn)環(huán)境的實(shí)例了,抉擇吶。
  •   用了的都說(shuō)好,沒(méi)用過(guò)的都說(shuō)不好。生產(chǎn)環(huán)境使用的企業(yè)有LinkedIn、twitter、FourSquare等。列表見(jiàn)http://www.scala-lang.org/node/1658
 

250萬(wàn)本中文圖書(shū)簡(jiǎn)介、評(píng)論、評(píng)分,PDF格式免費(fèi)下載。 第一圖書(shū)網(wǎng) 手機(jī)版

京ICP備13047387號(hào)-7