<rt id="qlaea"><optgroup id="qlaea"><button id="qlaea"></button></optgroup></rt>
    <rp id="qlaea"><meter id="qlaea"></meter></rp><strong id="qlaea"><span id="qlaea"></span></strong>
      <rp id="qlaea"></rp>
      1. <source id="qlaea"><nav id="qlaea"><strike id="qlaea"></strike></nav></source>

        計算機書籍控

        圖靈程序設計叢書 代碼的未來

           《代碼的未來》編輯推薦:20年后、100年后的編程語言會是什么樣?《代碼的未來》中Ruby之父松本行弘剖析云計算、大數據時代下的技術:Lisp會是未來的發展趨勢嗎? Go和Dart能取代C和JavaScript嗎?關系型數據庫已經走到窮途末路了嗎?Go、VoltDB、node.js、CoffeeScript、Dart、MongoDB…… 云計算、大數據時代下誰主沉浮?作者在《代碼的未來》中一一剖析。
        

        目錄

        
        第一章 編程的時間和空間
        1.1 編程的本質 3
        編程的本質是思考 4
        創造世界的樂趣 4
        快速提高的性能改變了社會 5
        以不變應萬變 8
        摩爾定律的局限 9
        社會變化與編程 10
        1.2 未來預測 13
        科學的未來預測 14
        IT未來預測 14
        極限未來預測 16
        從價格看未來 16
        從性能看未來 17
        從容量看未來 18
        從帶寬看未來 19
        小結 20
        第二章 編程語言的過去、現在和未來
        2.1 編程語言的世界 23
        被歷史埋沒的先驅 25
        編程語言的歷史 26
        編程語言的進化方向 30
        未來的編程語言 32
        20年后的編程語言 34
        學生們的想象 34
        2.2 DSL(特定領域語言) 36
        外部DSL 37
        內部DSL 38
        DSL的優勢 39
        DSL的定義 39
        適合內部DSL的語言 40
        外部DSL實例 42
        DSL設計的構成要素 43
        Sinatra 46
        小結 47
        2.3 元編程 48
        Meta,Reflection 48
        類對象 51
        類的操作 52
        Lisp 53
        數據和程序 54
        Lisp程序 56
        宏 56
        宏的功與過 57
        元編程的可能性與危險性 59
        小結 60
        2.4 內存管理 61
        看似無限的內存 61
        GC的三種基本方式 62
        術語定義 62
        標記清除方式 63
        復制收集方式 64
        引用計數方式 65
        引用計數方式的缺點 65
        進一步改良的應用方式 66
        分代回收 66
        對來自老生代的引用進行記錄 67
        增量回收 68
        并行回收 69
        GC大統一理論 69
        2.5 異常處理 71
        “一定沒問題的” 71
        用特殊返回值表示錯誤 72
        容易忽略錯誤處理 72
        Ruby中的異常處理 73
        產生異常 74
        更高級的異常處理 75
        Ruby中的后處理保證 76
        其他語言中的異常處理 77
        Java的檢查型異常 77
        Icon的異常和真假值 78
        Eiffel的DesignbyContract 80
        異常與錯誤值 80
        小結 81
        2.6 閉包 82
        函數對象 82
        高階函數 83
        用函數參數提高通用性 84
        函數指針的局限 85
        作用域:變量可見范圍 87
        生存周期:變量的存在范圍 88
        閉包與面向對象 89
        Ruby的函數對象 89
        Ruby與JavaScript的區別 90
        Lisp—1與Lisp—2 91
        第三章 編程語言的新潮流
        3.1 語言的設計 97
        客戶端與服務器端 97
        向服務器端華麗轉身 98
        在服務器端獲得成功的四大理由 99
        客戶端的JavaScript 100
        性能顯著提升 101
        服務器端的Ruby 102
        RubyonRails帶來的飛躍 102
        服務器端的Go 103
        靜態與動態 104
        動態運行模式 105
        何謂類型 105
        靜態類型的優點 106
        動態類型的優點 106
        有鴨子樣的就是鴨子 107
        StructuralSubtyping 108
        小結 108
        3.2 Go 109
        New(新的) 109
        Experimental(實驗性的) 109
        Concurrent(并發的) 110
        Garbage—collected(帶垃圾回收的) 110
        Systems(系統) 111
        Go的創造者們 111
        HelloWorld 112
        Go的控制結構 113
        類型聲明 116
        無繼承式面向對象 118
        多值與多重賦值 120
        并發編程 122
        小結 124
        3.3 Dart 126
        為什么要推出Dart? 126
        Dart的設計目標 129
        代碼示例 130
        Dart的特征 132
        基于類的對象系統 132
        非強制性靜態類型 133
        Dart的未來 134
        3.4 CoffeeScript 135
        最普及的語言 135
        被誤解最多的語言 135
        顯著高速化的語言 136
        對JavaScript的不滿 138
        CoffeeScript 138
        安裝方法 139
        聲明和作用域 139
        分號和代碼塊 141
        省略記法 142
        字符串 143
        數組和循環 143
        類 145
        小結 146
        3.5 Lua 148
        示例程序 149
        數據類型 149
        函數 150
        表 150
        元表 151
        方法調用的實現 153
        基于原型編程 155
        和Ruby的比較(語言篇) 157
        嵌入式語言Lua 157
        和Ruby的比較(實現篇) 158
        嵌入式Ruby 159
        第四章 云計算時代的編程
        4.1 可擴展性 163
        信息的尺度感 163
        大量數據的查找 164
        二分法查找 165
        散列表 167
        布隆過濾器 169
        一臺計算機的極限 170
        DHT(分布式散列表) 171
        Roma 172
        MapReduce 173
        小結 174
        4.2 C10K問題 175
        何為C10K問題 175
        C10K問題所引發的“想當然” 177
        使用epoll功能 180
        使用libev框架 181
        使用EventMachine 183
        小結 185
        4.3 HashFold 186
        HashFold庫的實現(Level1) 187
        運用多核的必要性 190
        目前的Ruby實現所存在的問題 191
        通過進程來實現HashFold(Level2) 191
        抖動 193
        運用進程池的HashFold(Level3) 194
        小結 197
        4.4 進程間通信 198
        進程與線程 198
        同一臺計算機上的進程間通信 199
        TCP/IP協議 201
        用C語言進行套接字編程 202
        用Ruby進行套接字編程 204
        Ruby的套接字功能 205
        用Ruby實現網絡服務器 208
        小結 209
        4.5 Rack與Unicorn 210
        Rack中間件 211
        應用程序服務器的問題 212
        Unicorn的架構 215
        Unicorn的解決方案 215
        性能 219
        策略 220
        小結 221
        第五章 支撐大數據的數據存儲技術
        5.1 鍵—值存儲 225
        Hash類 225
        DBM類 226
        數據庫的ACID特性 226
        CAP原理 227
        CAP解決方案——BASE 228
        不能舍棄可用性 229
        大規模環境下的鍵—值存儲 230
        訪問鍵—值存儲 230
        鍵—值存儲的節點處理 231
        存儲器 232
        寫入和讀取 233
        節點追加 233
        故障應對 233
        終止處理 235
        其他機制 235
        性能與應用實例 236
        小結 236
        5.2 NoSQL 237
        RDB的極限 237
        NoSQL數據庫的解決方案 238
        形形色色的NoSQL數據庫 239
        面向文檔數據庫 240
        MongoDB的安裝 241
        啟動數據庫服務器 243
        MongoDB的數據庫結構 244
        數據的插入和查詢 244
        用JavaScript進行查詢 245
        高級查詢 246
        數據的更新和刪除 249
        樂觀并發控制 250
        5.3 用Ruby來操作MongoDB 251
        使用Ruby驅動 251
        對數據庫進行操作 253
        數據的插入 253
        數據的查詢 253
        高級查詢 254
        find方法的選項 256
        原子操作 257
        ActiveRecord 259
        ODMapper 260
        5.4 SQL數據庫的反擊 264
        “云”的定義 264
        SQL數據庫的極限 264
        存儲引擎Spider 265
        SQL數據庫之父的反駁 265
        SQL數據庫VoltDB 268
        VoltDB的架構 269
        VoltDB中的編程 270
        HelloVoltDB! 271
        性能測試 273
        小結 275
        5.5 memcached和它的伙伴們 276
        用于高速訪問的緩存 276
        memcached 277
        示例程序 278
        對memcached的不滿 279
        memcached替代服務器 280
        另一種鍵—值存儲Redis 282
        Redis的數據類型 284
        Redis的命令與示例 285
        小結 289
        第六章 多核時代的編程
        6.1 摩爾定律 293
        呈幾何級數增長 293
        摩爾定律的內涵 294
        摩爾定律的結果 295
        摩爾定律所帶來的可能性 296
        為了提高性能 297
        摩爾定律的極限 302
        超越極限 303
        不再有免費的午餐 304
        6.2 UNIX管道 305
        管道編程 306
        多核時代的管道 308
        xargs——另一種運用核心的方式 309
        注意瓶頸 311
        阿姆達爾定律 311
        多核編譯 312
        ccache 313
        distcc 313
        編譯性能測試 314
        小結 315
        6.3 非阻塞I/O 316
        何為非阻塞I/O 316
        使用read(2)的方法 317
        邊沿觸發與電平觸發 319
        使用read(2)+select的方法 319
        使用read+O_NONBLOCK標志 321
        Ruby的非阻塞I/O 322
        使用aio_read的方法 323
        6.4 node.js 330
        減負 330
        拖延 331
        委派 332
        非阻塞編程 333
        node.js框架 333
        事件驅動編程 334
        事件循環的利弊 335
        node.js編程 335
        node.js網絡編程 337
        node.js回調風格 339
        node.js的優越性 340
        EventMachine與Rev 341
        6.5 ZeroMQ 342
        多CPU的必要性 342
        阿姆達爾定律 343
        多CPU的運用方法 343
        進程間通信 345
        管道 345
        SysVIPC 346
        套接字 347
        UNIX套接字 349
        ZeroMQ 349
        ZeroMQ的連接模型 350
        ZeroMQ的安裝 352
        ZeroMQ示例程序 352
        小結 354
        版權聲明 356
        

        書籍下載

        尊重版權,請購買正版書籍

        正版書籍

        圖靈程序設計叢書 代碼的未來

        163A官方彩票导航网 www.52okcar.com:卓资县| www.g3676.com:灵宝市| www.pathsofbeauty.org:江油市| www.rs338.com:莫力| www.fw355.com:磐安县| www.adonis-danieletto.com:合江县| www.quizgrok.com:靖西县| www.274758.com:绥芬河市| www.poengun.com:石林| www.leg7.com:自治县| www.bash4guild.com:石楼县| www.01dyy.com:茌平县| www.jackshomeservices.com:栾城县| www.hongliansy.com:金溪县| www.safelightstore.com:中山市| www.suenoshumedos.com:鄯善县| www.cdxufeng.com:辽阳市| www.masterdealzone.com:宁阳县| www.nkshbd.com:石首市| www.h-lm.com:新乡市| www.innovatech-peru.com:呼图壁县| www.idosurfbetter.com:上杭县| www.bdygjt.com:溧水县| www.heritage-academy.org:长春市| www.dk992.com:灯塔市| www.blogcampghana.com:嘉义县| www.msplg.com:绍兴市| www.365zhy.com:北碚区| www.w-b-z.com:昆山市| www.donorsnet.net:宜宾县| www.1pshouhui.com:来宾市| www.al-khodair.com:太湖县| www.gparkin.com:广水市| www.tjhct.com:大竹县| www.iamreviewing.com:阜宁县| www.sufeautolights.com:马尔康县| www.compassionhealing.com:兴化市| www.i-remax.com:通化县| www.jamesstephenshurling.com:曲松县| www.artbyandra.com:家居| www.daqingwater.com:会宁县| www.francebittorrent.com:峨边| www.weipengsc.com:松潘县| www.primal2.com:宾川县| www.bigbanganimation.com:个旧市| www.damoa33.com:嵊泗县| www.skillupnavi.com:丰宁| www.brosway-gioielli-it.com:类乌齐县| www.chambres-dhotes-le-cigalon.com:新竹县| www.fjhyqm.com:宣汉县| www.hashtagluzit.com:固安县| www.czyxjx.com:施甸县| www.amde-in-china.com:连州市| www.open82.com:丰原市| www.shanghailondoncab.com:汝南县| www.tredadlar.com:安龙县| www.teknikellermakina.com:盘锦市| www.zdrowienatalerzu.com:西林县| www.laproducers.net:白银市| www.almadatech.com:吉木乃县| www.possn.com:扎囊县| www.informasijakarta.com:达尔| www.salmonbc.com:嘉黎县| www.tztdkyj.com:莱阳市| www.ldc-ci.com:桃园县| www.tswtchkviii.net:饶阳县| www.tjjdwsbesrq.com:兴安盟| www.huazhugg.com:务川| www.ourmanufacturers.com:会泽县| www.youjiataoci.com:平原县| www.xzjwgczw.com:阿勒泰市| www.tq4h.com:诸城市| www.626037.com:江都市| www.chansamabut.com:泸定县| www.wzxj888.com:梁河县| www.apjiahaisw.com:芜湖县| www.alexferrismedia.com:黄大仙区| www.cantastorie05.com:海门市| www.homeworkoutsforseniors.com:阿图什市| www.cp7765.com:泉州市| www.farukfunclub.com:鹤壁市| www.shhupai.com:慈溪市| www.gluguru.org:交口县| www.bjkxxsh.com:兴业县|