Scala編程思想

Scala編程思想

Scala編程思想》中國機械工業出版社在2016 年1月出版,作者:(美)布魯斯·埃克爾(Bruce Eckel ) (美)黛安娜·馬什(Dianne Marsh),譯者:陳昊鵬;有關編程和Scala的基礎知識,但是並沒有用這門語言博大精深的完整知識體系來淹沒你。屬於初學者的程式設計師應該將其看作一個遊戲:你可以通關,但是需要一路解決多個難題。有經驗的程式設計師能夠快速閱讀本書,並且發現需要慢下來留心閱讀的地方。

基本介紹

  • 書名:Scala編程思想
  • 又名:The Scala programming ideas
  • 作者: (美)布魯斯·埃克爾(Bruce Eckel )  (美)黛安娜·馬什(Dianne Marsh) 
  • 原版名稱:The Scala programming ideas
  • 譯者: 陳昊鵬
  • ISBN:9787111517405
  • 類別:計算機
  • 頁數:305
  • 定價:¥69.00
  • 出版社:機械工業出版社
  • 出版時間:2016 年1月
  • 裝幀:平裝
  • 開本:16開
內容簡介,作譯者,圖書目錄,

內容簡介

Scala:寫給未來的代碼,多核時代,Scala已成為最主流的大數據處理程式語言之一。Scala相信程式設計師的智慧,賦予他們選擇工具和最佳化結構的自由,從容應對千變萬化的技術需求。
Bruce Eckel:續寫編程經典,大師視野,深入淺出,一脈相承,舉重若輕。帶你輕鬆掌握Scala語言的基礎概念和核心技術,是學習Scala編程的最佳入門寶典。
原子;厚積薄發的力量,從Scala中提煉出的一個可運行的核心功能子集.形成眾多短小精悍的“原乾”,再輔以練習和解答,使整個閱讀過程成為帶有許多檢查點的漸進式學習體驗。
·本書原則:積跬步以至千里,無任何前向引用,無任何對其他語言的引用,事實勝於雄辯,實踐出真知。
·書中包含的只呈編程和Scala的基礎知識,末涉及高級特性(如函式式編程)。我們的目的不是在Scala龐大的知識體系中囤圇吞棗,而是在踏上更高級的編程之路時祝你一臂之力。

作譯者

陳昊鵬,上海交通大學軟體學院副教授,從事軟體工程和分散式計算方面的研究,譯作有《Java編程思想》《Java核心技術·卷Ⅱ》《Java程式語言》等。Bruce Eckel ,獲得多項大獎的《Java編程思想》《C++編程思想》及其他眾多著作的作者。他在編程世界中耕耘了30餘載——著書、講座、舉辦研討會和提供諮詢。
Dianne Marsh,她從2008年以來一直在使用和研究Scala。自1987年開始從事編程工作起,熟知的語言從C到C#、從Python到Java,但她發現Scala出類拔萃且妙趣橫生。

圖書目錄

出版者的話
譯者序
前言
編輯器 / 1
shell / 2
安裝(Windows) / 5
安裝(Mac) / 9
安裝(Linux) / 13
運行Scala / 19
注釋 / 20
編寫腳本 / 21
值 / 22
數據類型 / 24
變數 / 27
表達式 / 29
條件表達式 / 31
計算順序 / 34
組合表達式 / 37
總結1 / 41
方法 / 45
類和對象 / 50
ScalaDoc / 54
創建類 / 55
類中的方法 / 58
導入和包 / 61
測試 / 65
域 / 70
for循環 / 72
Vector / 75
更多的條件表達式 / 79
總結2 / 82
模式匹配 / 91
類參數 / 94
具名參數和預設參數 / 98
重載 / 101
構造器 / 104
輔助構造器 / 108
類的練習 / 110
case類 / 112
字元串插值 / 115
參數化類型 / 117
作為對象的函式 / 120
map和reduce / 125
推導 / 128
基於類型的模式匹配 / 133
基於case類的模式匹配 / 136
簡潔性 / 139
風格拾遺 / 144
地道的Scala / 147
定義操作符 / 148
自動字元串轉換 / 151
元組 / 153
伴隨對象 / 157
繼承 / 163
基類初始化 / 166
覆蓋方法 / 170
枚舉 / 173
抽象類 / 176
特徵 / 179
統一訪問方式和setter / 185
銜接Java / 187
套用 / 190
淺嘗反射 / 192
多態 / 194
組合 / 200
使用特徵 / 206
標記特徵和case對象 / 209
類型參數限制 / 211
使用特徵構建系統 / 214
序列 / 219
列表和遞歸 / 223
將序列與zip相結合 / 226
集 / 229
映射表 / 232
引用和可修改性 / 235
使用元組的模式匹配 / 238
用異常進行錯誤處理 / 242
構造器和異常 / 247
用Either進行錯誤報告 / 250
用Option對“非任何值”
進行處理 / 255
用Try來轉換異常 / 261
定製錯誤報告機制 / 269
按契約設計 / 276
記日誌 / 279
擴展方法 / 282
使用類型類的可擴展系統 / 285
接下來如何深入學習 / 290
附錄A AtomicTest / 291
附錄B 從Java中調用

相關詞條

熱門詞條

聯絡我們