【簡介】 Python被譽為最易上手的程式語言,但你真的是用Python的腦袋寫Python嗎? 身為Python的開發者,想要「寫得更好」,還想知道「為什麼這樣寫比較好?」 《Effective Python 第三版》延續前兩版廣受好評的風格,集結125個經過實戰驗證的開發技巧,全面涵蓋Python 3.11最新語法與標準函式庫。從基礎語言機制、函式與類別設計,到協同程式、型別提示與效能優化,每一項建議都清楚說明「為什麼這樣寫比較好」,幫助你避開常見雷區、寫出更簡潔、可維護、具備Python風格的程式碼。 條目式設計,查找方便、精練實用 專為Python 3.11打造,掌握語言最新演進 每個條目皆含範例、反例與最佳實踐 作者為Google資深工程師,實戰經驗豐富 不僅告訴你「怎麼寫」,更像是經驗豐富的前輩手把手教你「為什麼這樣寫更好」,帶你從語言使用者晉升為真正精通Python的開發者! ----------------------------------------------------------------------- 精通Python程式設計技術,掌握125個具體可行的最佳實務做法,寫出更加高效、易讀、易維護的程式碼 Python是一門功能多元且強大的語言,但想真正發揮它的潛力,光是熟悉語法還不夠。Effective Python中文版 第三版,是你掌握Python獨特優勢、避開隱藏陷阱的全方位指南。本書奠基於廣受好評的第二版,將最佳實務做法從90項擴增至125項,這些都是撰寫高品質 Python 程式碼的關鍵基石。 作者Brett Slatkin汲取其多年在Google的深厚實務經驗,為初階與資深的Python開發者提供了清晰、簡潔且實用的建議。書中每一個做法都深入剖析了「Pythonic」的程式設計之道,幫助你理解如何寫出不僅正確、有效,更能兼具優雅與易維護性的程式碼。無論你是在建構Web應用程式、分析資料、撰寫自動化指令稿,或是訓練AI模型,本書都將賦予你必要的技能,讓你能運用Python創造非凡的影響力。 主 要特點包括 ■ 內容升級:新增35個全新做法,擴增至125條具體可行的準則。 ■ 對應新版:涵蓋至Python3.13新版功能的語法與實務趨勢。 ■ 新增章節:剖析如何建置兼具穩健性與高效能的程式。 ■ 進階主題:深入探討如何建立C擴充模組,以及與原生共享程式庫的介接。 ■ 實際範例:切合真實情境的程式碼範例,清楚對照每一項建議背後的最佳實務做法。 Brett Slatkin 是Google CTO辦公室的首席軟體工程師,專注於新興技術領域。他是Google Surveys的共同創辦人,也是Google Cloud第一款產品(App Engine)的主要推手,並共同創建了PubSubHubbub協定——這些專案全都使用Python完成。他投入專業Python開發逾19年,擁有哥倫比亞大學電腦工程學士學位。 【目錄】 第1章 Pythonic 思維 做法 01 了解你使用的是哪個版本的 Python 做法 02 遵循 PEP 8 風格指南 做法 03 永遠不要預期 Python 會在編譯時期偵測錯誤 做法 04 撰寫輔助函式而非複雜的運算式 做法 05 比起透過索引,請優先選用多重指定的拆分 做法 06 始終用括弧圍住單元素的元組 做法 07 考慮使用條件運算式來處理簡單的行內邏輯 做法 08 使用指定運算式來防止重複 做法 09 考慮在流程控制中使用 match 進行解構;如果 if 述句就足夠,則避免使用 第2章 字串和切片 做法 10 了解 bytes 與 str 之間的差異 做法 11 優先選用內插的 F-String,而非 C 式格式字串和 str.format 做法 12 列印物件時,要知道 repr 和 str 之間的差異 做法 13 偏好明確的字串串接,而非隱含的串接,特別是在串列中 做法 14 知道如何切割序列 做法 15 避免在單一運算式中同時使用跨步(Striding)和切片 做法 16 優先選用捕捉全部的拆分,而非切片 第3章 迴圈與迭代器 做法 17 優先選用 enumerate,而不是 range 做法 18 使用 zip 平行處理迭代器 做法 19 避免 for 和 while 迴圈之後的 else 區塊 做法 20 永遠別在迴圈結束後使用 for 的迴圈變數 做法 21 迭代引數時要做好防禦 做法 22 絕對不要在迭代容器時修改它們;改用複本或快取 做法 23 將迭代器傳遞給 any 和 all,以實現有效率的短路邏輯 做法 24 考慮使用 itertools 來處理迭代器和產生器 第4章 字典 做法 25 依賴字典插入順序時,請務必謹慎 做法 26 優先選用 get 而非 in 和 KeyError 來處理缺少的字典鍵值 做法 27 偏好使用 defaultdict 而非 setdefault 來處理內部狀態中缺少的項目 做法 28 了解如何使用 __missing__ 建構依存於鍵值的預設值 做法 29 使用類別取代深層內嵌的字典、串列和元組 第5章 函式 做法 30 知道函式引數是可以變動的 做法 31 回傳專用的結果物件,而非要求函式呼叫者拆分三個以上的變數 做法 32 偏好提出例外,而非回傳 None 做法 33 了解 Closure 如何與變數範疇和 nonlocal 互動 做法 34 使用數目可變的位置引數減少視覺雜訊 做法 35 藉由關鍵字引數提供可選行為 做法 36 使用 None 和 Docstring 來指定動態預設引數 做法 37 使用僅限關鍵字引數和僅限位置引數來確保程式碼清楚易懂 做法 38 使用 functools.wraps 定義函式裝飾器 做法 39 對於黏合用的函式,請優先選用 functools.partial 而非 lambda 運算式 第6章 概括式和產生器 做法 40 使用概括式取代 map 和 filter 做法 41 避免在概括式中使用超過兩個控制子運算式 做法 42 利用指定運算式減少概括式中的重複 做法 43 考慮使用產生器而非回傳串列 做法 44 考慮使用產生器運算式來處理大型串列概括式 做法 45 用 yield from 組合多個產生器 做法 46 將迭代器作為引數傳遞給產生器,而非呼叫 send 方法 做法 47 使用類別管理迭代式狀態變遷,而非產生器的 throw 方法 第7章 類別與介面 做法 48 對於簡單的介面,請接受函式而非類別 做法 49 優先採用物件導向的多型機制,而非帶有 isinstance 檢查的函式 做法 50 考慮使用 functools.singledispatch 進行函式型風格的程式設計,取代物件導向的多型 做法 51 定義輕量化類別時,請優先選用 dataclasses 做法 52 使用 @classmethod 的多型機制以泛型的方式建構物件 做法 53 使用 super 初始化父類別 做法 54 考慮使用 Mix-in 類別來組合功能 做法 55 優先選用公開屬性而非私有屬性 做法 56 偏好使用 dataclasses 來建立不可變的物件 做法 57 繼承 collections.abc 的類別以建立自訂的容器型別 第8章 元類別與屬性 做法 58 使用普通的屬性,而非設值器和取值器方法 做法 59 考慮使用 @property,而非重構屬性 做法 60 使用描述器來實現可重複使用的 @property 方法 做法 61 使用 __getattr__、__getattribute__ 和 __setattr__ 實現惰性屬性 做法 62 使用 __init_subclass__ 驗證子類別 做法 63 使用 __init_subclass__ 註冊類別的存在 做法 64 使用 __set_name__ 來注釋類別屬性 做法 65 考慮以類別主體定義順序來確立屬性之間的關係 做法 66 對於可組合的類別擴充,請優先選用類別裝飾器而非元類別 第9章 共時性和平行處理 做法 67 使用 subprocess 來管理子行程 做法 68 針對會造成阻斷的 I/O 使用執行緒;避免用於平行處理 做法 69 使用 Lock 來預防執行緒之間的資料競態 做法 70 使用 Queue 來協調執行緒之間的工作 做法 71 知道何時需要共時性 做法 72 避免為視需要增加的扇出創建新的 Thread 實體 做法 73 了解將 Queue 用於共時性會需要怎樣的重構 做法 74 非得將執行緒用於共時性時,考慮使用 ThreadPoolExecutor 做法 75 藉由協程實現高度共時的 I/O 做法 76 知道如何將分緒的 I/O(Threaded I/O)移植到 asyncio 做法 77 混合執行緒與協程,以簡化轉換至 asyncio 的工作 做法 78 利用對 async 友善的工作者執行緒最大化 asyncio 事件迴圈的回應性 做法 79 考慮使用 concurrent.futures 實現真正的平行處理 第10章 穩健性 做法 80 善用 try/except/else/finally 中的每個區塊 做法 81 使用 assert 斷言內部假設並以 raise 提出未符合預期之處 做法 82 考慮使用 contextlib 與 with 述句以達成可重複使用的 try/finally 行為 做法 83 務必讓 try 區塊盡可能簡短 做法 84 小心會消失的例外變數 做法 85 捕捉 Exception 類別時務必小心 做法 86 了解 Exception 和 BaseException 之間的差異 做法 87 使用 traceback 強化例外回報 做法 88 考慮明確地鏈串例外以釐清回溯追蹤 做法 89 始終將資源(Resources)傳入產生器中,並讓呼叫者在外部清理它們 做法 90 絕不要將 __debug__ 設為 False 做法 91 除非你正在建置開發人員工具,否則應避免使用 exec 和 eval 第11章 效能 做法 92 最佳化前,請先進行效能評測 做法 93 使用 timeit 微型基準化分析來最佳化關鍵效能程式碼 做法 94 了解何時應改用其他程式語言來取代 Python,並知道該怎麼做 做法 95 考慮使用 ctypes 與原生程式庫快速整合 做法 96 考慮使用擴充模組來最佳化效能和開發者體驗 做法 97 仰賴預先編譯的位元組碼與檔案系統快取來改善啟動時間 做法 98 使用動態匯入來惰性載入模組以減少啟動時間 做法 99 考慮透過 memoryview 和 bytearray 與 bytes 進行零拷貝互動 第12章 資料結構與演算法 做法 100 使用 key 參數來以複雜的條件進行排序 做法 101 了解 sort 與 sorted 之間的差異 做法 102 考慮使用 bisect 搜尋排序好的序列 做法 103 優先選用 deque 作為 Producer–Consumer 佇列 做法 104 知道如何使用 heapq 建立優先序佇列 做法 105 針對本地時間,請使用 datetime 而非 time 做法 106 當精確度至關重要時,請使用 decimal 做法 107 透過 copyreg 讓 pickle 序列化保有可維護性 第13章 測試與除錯 做法 108 在 TestCase 的子類別中驗證相關行為 做法 109 偏好整合測試而非單元測試 做法 110 使用 setUp、tearDown、setUpModule 和 tearDownModule 將測試彼此隔離 做法 111 使用模擬功能來測試具有複雜依存關係的程式碼 做法 112 將依存關係封裝起來以利模擬與測試 做法 113 使用 assertAlmostEqual 控制浮點測試中的精確度 做法 114 考慮使用 pdb 進行互動式除錯 做法 115 使用 tracemalloc 來了解記憶體用量(Memory Usage)與洩漏(Leaks)情況 第14章 協作 做法 116 知道在哪裡可以找到社群建置的模組 做法 117 使用虛擬環境以達成獨立且可重現的依存關係 做法 118 為每個函式、類別和模組撰寫 Docstring 做法 119 使用套件來組織模組並提供穩定的 API 做法 120 考慮使用模組範疇程式碼來設定部署環境 做法 121 定義一個根例外以隔離呼叫端與 API 做法 122 知道如何打破循環依存關係 做法 123 考慮使用 warnings 來重構及遷移用法 做法 124 考慮透過 typing 進行靜態分析以消除臭蟲 做法 125 捆裝 Python 程式時,優先選擇開源專案而非 zipimport 與 zipapp
還沒有人留下心得,快來搶頭香!
為您推薦
其他會員也一起購買
【簡介】 《系統分析與設計》(第十三版)涵蓋系統分析與設計各階段的理論基礎與實務應用的技術,並透過許多真實案例,深入說明各項技術如何落實於實際情境。本書同時呈現傳統與新興的系統分析與設計方法,包含物件導向分析和敏捷法,以及學習新的技術,例如,人工智慧(AI)、機器學習(ML)、雲端運算和網路安全等,協助讀者掌握最新發展趨勢。 此外,本版特別新增第五階段之「系統維護和支援」章節,涵蓋維護任務分類、維護管理、系統備份和恢復計畫,以及系統安全策略的規劃,強調當今資訊系統完備的維護和安全功能之重要性。 本書以務實且令人賞心悅目的方式展示資訊系統發展的知識,廣為各大學及技術學院,包括資訊管理、資訊科學及資訊工程等電腦相關科系,或是軟體開發的相關學程所採用。 【目錄】 第一篇 系統規劃 第1章 系統分析與設計簡介 第2章 分析企業個案 第3章 系統專案管理 第二篇 系統分析 第4章 需求工程 第5章 資料與流程塑模 第6章 物件塑模 第三篇 系統設計 第7章 使用者介面設計 第8章 資料設計 第9章 系統架構 第四篇 系統建置 第10章 開發策略 第11章 系統建置管理 第五篇 系統運作 第12章 系統維護和支援
其他會員也一起購買
簡介 ●Has been thoroughly revised to incorporate recent research and applications. ●Includes a new chapter on nonprobability samples, and more than 200 new examples and exercises have been added. ●Teaches the principles of sampling with examples from social sciences, public opinion research, public health, business, agriculture, and ecology. 目錄 1. Introduction 2. Simple Probability Samples 3. Stratified Sampling 4. Ratio and Regression Estimation 5. Cluster Sampling with Equal Probabilities 6. Sampling with Unequal Probabilities 7. Complex Surveys 8. Nonresponse 9. Variance Estimation in Complex Surveys 10. Categorical Data Analysis in Complex Surveys 11. Regression with Complex Survey Data 12. Two-Phase Sampling 13. Estimating the Size of a Population 14. Rare Populations and Small Area Estimation 15. Nonprobability Samples 16. Survey Quality A Probability Concepts Used in Sampling
相關熱銷的書籍推薦給您
書名:DEEP LEARNING|用PYTHON進行深度學習的基礎理論實作 出版社:歐萊禮 出版年月:201708 條碼:9789864764846 內容簡介 不走捷徑,幫助您真正搞懂「深度學習」的真義 這是一本與「深度學習」有關的書籍。從入門開始說明,一步一步帶領你瞭解深度學習必須具備的知識。本書可以幫助您了解:深度學習究竟是什麼?有何特色?根據何種原理來運作? 從零開始,由實做中學習 本書的目標是,盡量避免使用不瞭解內容的「黑盒子」,以基礎的知識為起點,以容易上手的Python撰寫程式,從動手實作的過程中,一步步深入瞭解深度學習。若以車用書籍來比喻這本書的話,這本書並不屬於汽車駕訓教材,而是希望能夠幫助您瞭解車子的原理,而非教您開車的方法。為了瞭解汽車的結構,必須試著打開車子的引擎蓋,將每個零件都拿起來觀察、操作看看。然後盡量用簡單的形狀,篩選出車子的核心部分,就像組合迷你模型般,製作出這台車子。本書的目標,就是透過製作車子的過程,讓你感受到自己實際可以製作出車子,進而熟悉與車子的相關技術。 本書特色: .利用最少的外部函式庫,使用Python,從零開始實際執行深度學習的程式。 .說明Python 的用法,讓Python 的初學者也能理解。 .實際執行Python 的原始碼,同時提供讀者手邊可以進行實驗的學習環境。 .從簡單的機器學習問題開始,到最後執行精密辨識影像的系統。 .以淺顯易懂的方式說明深度學習與神經網路理論。 .針對看似複雜的技術,如誤差反向傳播與卷積運算等,利用實際操作方式說明,幫助理解。 .介紹在執行深度學習時,有幫助且實用的技巧,包括決定學習率的方法、權重的預設值等。 .說明Batch Normalization、Dropout、Adam 等最近的趨勢與操作。 .為什麼深度學習很優秀,為什麼加深層數,就能提高辨識準確度,為什麼隱藏層很重要,仔細說明這些「為什麼」。 .介紹自動運作、產生影像、強化學習等深度學習的應用範例。 作者介紹 作者簡介 斎藤康毅 1984年生於長崎縣對馬,畢業於東京工業大學工學院,東京大學研究所學際情報學府學士課程修畢。現在於企業內從事與電腦視覺、機器學習有關的研究開發工作。1984年生於長崎縣對馬,畢業於東京工業大學工學院,東京大學研究所學際情報學府學士課程修畢。現在於企業內從事與電腦視覺、機器學習有關的研究開發工作。 目錄 第一章 Python入門 第二章 感知器 第三章 神經網路 第四章 神經網路的學習 第五章 誤差反向傳播法 第六章 與學習有關的技巧 第七章 卷積神經網路 第八章 深度學習 附錄A Softmax-with-Loss層的計算圖 參考文獻
類似書籍推薦給您
內容簡介 專為Python 3更新及擴充 開始使用Python開發程式是很容易的事情,這就是這個語言如此受歡迎的原因。然而,Python獨特的優勢、魅力和表達力可能很難掌握,而且還存在著容易讓人絆倒的隱藏陷阱。 第二版的《Effective Python》將會幫助你精通真正的「Pythonic」程式設計之道,完整駕馭Python的能力讓你撰寫出非常穩健且效能良好的程式碼。透過Scott Meyers在暢銷系列《Effective C++》中所開創,由情境驅動的簡潔風格,Brett Slatkin彙整了90個Python最佳實務做法、技巧與捷徑,並以真實的程式碼範例解釋它們,幫助你充滿自信地擁抱Python。 憑藉著多年來在Google建置Python基礎架構的經驗,Slatkin揭露了對於程式碼行為和效能有強大影響卻又鮮為人知的訣竅和慣用手法。你將會學到達成關鍵任務的最佳方式,讓你寫出來的程式碼更容易理解、維護和改善。除了提供更多建議外,新版還大幅修訂了第一版的所有做法,以反映最佳實踐方法的演變。 關鍵特色包括: ‧涵蓋Python所有主要領域的30個可實行指導方針 ‧對於述句、運算式和內建型別的詳盡說明與範例 ‧撰寫函式的最佳實務做法,幫忙釐清意圖、方便重複使用,並避免臭蟲 ‧概括式(comprehensions)和產生器函式更好的使用技巧和慣用語 ‧涵蓋如何以類別和介面精確表達行為 ‧對於如何以元類別(metaclasses)和動態屬性避開常見陷阱的指引 ‧達到共時(concurrency)和平行處理(parallelism)更有效且清楚的途徑 ‧用於最佳化和強化的解決方案,以最大化效能和品質 ‧輔助除錯和測試的訣竅和內建模組 ‧協同開發的工具與最佳實務做法 產品目錄 第1章 Pythonic 思維 第2章 串列和字典 第3章 函式 第4章 概括式和產生器 第5章 類別與介面 第6章 元類別與屬性 第7章 共時性和平行處理 第8章 穩健性和效能 第9章 測試與除錯 第10章 協作 索引
類似書籍推薦給您
類似書籍推薦給您
【簡介】 "The eighth edition of Designing Effective Instruction has evolved from one of Jerry’s early textbooks. In 1971, Instructional Design: A Plan for Unit and Course Development was published by Fearon Publishers. In the preface Jerry wrote, "Planning for student learning should be a challenging, exciting, and gratifying activity." Almost 50 years later, experienced instructional designers would agree with Jerry’s statement. We believe that this edition of our textbook will help instructional designers to accept the challenge of designing effective and efficient instruction that is exciting and interesting, to find that the process is stimulating, and to believe that there is a great deal of satisfaction to gain from completing an instructional design project"--
類似書籍推薦給您
【簡介】 提昇TypeScript技術的83個具體做法 「Effective TypeScript探討使用TypeScript時最常見的問題,並提出實用的、結果導向的建議。無論你的TypeScript經驗如何,都可以從本書學到一些東西。」 —Ryan Cavanaugh,微軟TypeScript工程主管 「本書滿載著實用的撇步,專業的TypeScript開發者都應該把這本書放在桌上。即使你認為已經熟悉TypeScript了,買下這本書也絕對不會後悔。」 —Yakov Fain, Java Champion TypeScript是包含型態的JavaScript超集合,能有效解決許多JavaScript惡名昭彰的問題。然而,TypeScript有自成一格的學習曲線,開發者往往需投入大量時間來實際操作才能有效運用其強大功能。這本實用的書籍採取《Effective C++》與《Effective Java》(皆由Addison-Wesley出版)風糜已久的寫作風格,提出83條具體建議,明確說明哪些做法值得採用、哪些應該避免,以及如何深入理解這門語言的設計思維。 作者Dan Vanderkam將透過實際範例指引你如何實際運用每一項建議。無論你是TypeScript的初學者,還是已掌握基礎知識、希望更進一步的開發者,本書都將協助你晉升為能熟練運用 TypeScript的專家。 第二版內容更新至TypeScript 5.X,並加入了兩個全新章節,深入介紹型態級程式設計與各種進階的 TypeScript技巧。 •學習TypeScript型態系統的運作細節 •使用型態推斷,以最少的型態註記來獲得嚴密的安全性 •設計型態,讓程式碼更安全且更容易瞭解 •使用泛型型態與型態級設計來定義複雜的API •瞭解依賴項目與型態宣告檔案在TypeScript之中如何運作 •將JavaScript程式順利遷移至TypeScript【目錄】 第一章 認識TypeScript 第1項:瞭解TypeScript與JavaScript之間的關係 第2項:知道你正在使用哪些TypeScript設定選項 第3項:認知程式碼生成與型態無關 第4項:熟悉結構定型 第5項:限制any型態的使用頻率 第二章 TypeScript的型態系統 第6項:使用編輯器來訊問和探索型態系統 第7項:將型態想成值的集合 第8項:知道如何判斷一個代號是在型態空間裡,還是值空間裡 第9項:優先使用型態註記,而非型態斷言 第10項:避免使用物件包裝型態(String、Number、Boolean、Symbol、BigInt) 第11項:區分「額外屬性檢查」與「型態檢查」 第12項:盡可能為整個函式表達式指定型態 第13項:瞭解type和interface之間的差異 第14項:使用readonly來避免就地修改造成的錯誤 第15項:使用型態操作與泛型型態來避免重複 第16項:優先考慮比索引簽章更精確的替代方案 第17項:避免數值索引簽章 第三章 型態推斷與控制流分析 第18項:避免可推斷的型態使程式碼變得雜亂 第19項:讓不同的型態使用不同的變數 第20項:瞭解變數是怎麼獲得它的型態的 第21項:一次建立物件 第22項:瞭解型態窄化 第23項:使用一致的別名 第24項:瞭解背景資訊在型態推斷中的作用 第25項:瞭解演變的型態 第26項:使用泛函結構與程式庫來協助型態流動 第27項:使用async函式來改善型態流動,而不是使用callback 第28項:使用類別和柯里化來建立新推斷位置 第四章 型態設計 第29項:優先使用始終代表有效狀態的型態 第30項:寬鬆地接收東西,嚴格地產生東西 第31項:不要在註釋中重複敘述型態資訊 第32項:避免在型態別名中加入null或undefined 第33項:將null值推到型態外圍 第34項:優先考慮多個介面的聯集,而不是包含聯集的介面 第35項:盡量使用比字串型態更精確的型態 第36項:為特殊值定義獨立的型態 第37項:盡量避免使用「選用屬性」 第38項:避免反覆使用型態相同的參數 第39項:與其表達差異,不如統一型態 第40項:寧可使用不精確的型態,也不使用不正確的型態 第41項:用問題領域的語言來為型態命名 第42項:避免根據片面資料建立型態 第五章 不完善性與any型態 第43項:將any型態限制在最小範圍內 第44項:優先使用更精確的any版本,而不是一般的any 第45項:將不安全的型態斷言隱藏在定義了良好型態的函式中 第46項:讓型態不明的值使用unknown,而不是any 第47項:優先考慮型態安全的做法,而不是Monkey Patching 第48項:避免落入不完善陷阱 第49項:追蹤型態覆蓋率,以防止再次失去型態安全性 第六章 泛型與型態級設計 第50 項:將泛型視為型態之間的函式 第51 項:避免非必要的型態參數 第52 項:優先考慮條件型態,而不是多載簽章 第53 項:瞭解如何控制聯集型態在條件型態中的分佈 第54 項:使用模板字面型態來表達DSL與字串之間的關係 第55 項:為你的型態撰寫測試程式 第56 項:注意型態的顯示方式 第57 項:優先考慮尾遞迴泛型型態 第58 項:考慮用程式碼生成來取代複雜型態 第七章 TypeScript錦囊妙計 第59項:使用never型態進行完整性檢查 第60項:知道如何迭代物件 第61項:使用Record型態來讓值保持同步 第62項:使用rest參數與tuple型態來表達可變參數函式 第63項:使用選用的never屬性來表達互斥或 第64項:考慮使用烙印(brand)來實現名目定型 第八章 型態宣告與@types 第65項:將TypeScript與@types放入devDependencies中 第66項:瞭解涉及型態宣告的三種版本 第67項:將出現在公用API裡的所有型態匯出 第68項:使用TSDoc來撰寫API註釋 第69項:如果callback裡的this是API的一部分,那就提供它的型態 第70項:以鏡像型態切斷依賴關係 第71項:使用模組擴充來改善型態 第九章 編寫與執行你的程式 第72項:優先考慮ECMAScript的功能,而非TypeScript的功能 第73項:使用source map來找出TypeScript的bug 第74項:瞭解如何在執行期重建型態 第75項:瞭解DOM階層架構 第76項:為你的環境建立精確的模型 第77項:瞭解型態檢查與單元測試之間的關係 第78項:注意編譯器的效能 第十章 現代化與遷移 第79項:撰寫現代的JavaScript 第80項:使用@ts-check與JSDoc來試驗TypeScript 第81項:使用allowJs來混合TypeScript與JavaScript 第82項:沿著依賴關係圖往上一一轉換模組 第83項:在啟用noImplicitAny之前,不要認為遷移已經完成了 附錄 第一版與第二版的項目之間的對應關係
資訊
工程
數學與統計學
機率與統計
自然科學
健康科學
地球與環境
建築、設計與藝術
人文與社會科學
教育
語言學習與考試
法律
會計與財務
大眾傳播
觀光與休閒餐旅
考試用書
研究方法
商業與管理
經濟學
心理學
生活
生活風格商品
參考書/測驗卷/輔材