qlync rd 第三屆讀書會候選清單

Post on 27-Aug-2014

231 Views

Category:

Software

8 Downloads

Preview:

Click to see full reader

DESCRIPTION

1. Refactoring 2. Unit Test 3. Scalable Web Site Structure 4. RESTful Web Service

TRANSCRIPT

Qlync Inc. RD 第三屆

讀書會候選清單2014/07/24

候選主題1. Refactory

2. Unit Test

3. Scalable Web Application Architecture

4. Web Service and API Design

候選書目 1/21. Refactory

a. Refectoring - Improve the Design of Existing Code (1999)i. 重構 - 改善既有程式的設計

b. Refactory to Pattern (2013)i. 重構 - 向範式前進

2. Unit Testa. Unit Test Frameworks - Tools for High-Quality Software Development

(2004)

候選書目 2/23. Scalable Web Application Architecture

a. Building Scalable Web Sites - Building, Scaling, and Optimizing the Next Generation of Web Applications (2006)

4. Web Service and API Designa. RESTful Web Services - Web Services for the Real Word (2007)b. RESTful Web APIs (2013)

Refacrory● Refactory to Patterns (2013)

○ 重構 - 向範式前進

1. 為什麼寫這本書○ refactory 成為/接近/遠離 patterns○ not up-front pattern design

2. 重構 (Refactoring)○ << Principles in Refactoring >>

3. 範式 (Patterns)4. 程式碼壞味道 (Code Smells)5. 一份Refactorings to Patterns名錄

○ 名稱/ 概要/ 動機/ 作法/ 範例/ 變異

Refacrory● Refactory to Patterns (2013)

○ 重構 - 向範式前進

6. 創建 (Creation)○ 過度複雜建構式/ 非必要的Singletons○ [DP]: Singletons/ Factory Method/ Builder/ Composite

7. 簡化 (Simplification)○ 簡化函式/ 狀態變遷/ 樹狀結構○ [DP]: Strategy/ Decorator/ State/ Composite/ Command

8. 一般化 (Generalization)○ 特定用法至一般用法/ 移除重複程式碼/ 簡化清理○ [DP]: Template Method/ Composite/ Observer/ Adapter/ Interpreter

9. 保護 (Protection)○ 既有程式碼保護機制○ Singleton/ Null Object

Refacrory● Refactory to Patterns (2013)

○ 重構 - 向範式前進

10. 積累 (Accumulation)○ 改善『在單一物件內或橫跨數個物件積累資訊』的程式碼○ [DP]: Visitor

11. 工具 (Utilities)○ 高階重構會用到的低階轉換

Refacrory● Refactory to Patterns (2013)

○ 重構 - 向範式前進

A Study Sequence(學習順序)

Refactory● Refectoring - Improve the Design of Existing Code (1999)

○ 重構 - 改善既有程式的設計

1. 重構,第一個案例(Refactoring, a First Example)2. 重構原則(Principles in Refactoring)3. 程式碼的壞味道(Bad Smells in Code, by Kent Beck and Martin Fowler)4. 建立測試體系(Building Tests)5. 重構名錄(Toward a Catalog of Refactoring)6. 重新組織你的函式(Composing Methods)7. 在物件之間移動特性(Moving Features Between Objects)8. 重新組織你的資料(Organizing Data)9. 簡化條件句(Simplifying Conditional Expressions)

10. 簡化函式呼叫(Making Method Calls Simpler)11. 處理繼承關係(Dealing with Generalization)12. 大型重構(Big Refactorings, by Kent Beck and Martin Fowler)13. 重構, 復用, 與現實(Refactoring, Reuse, and Reality, by William Opdyke)14. 重構工具(Refactoring Tools, by Don Roberts and John Brant)15. 綜述(Put It All Together, by Kent Beck)

Unit Test● Unit Test Frameworks - Tools for High-Quality Software

Development (2004)

1. Unit Test Frameworks: An Overview○ TDD/ Unit Test/ QA

2. Getting Started: Tutorial3. The xUnit Family of Unit Test Frameworks4. Writing Unit Tests

○ An overview of writing unit tests.○ Different types of unit tests and patterns of unit test development

5. Unit Testing GUI Applications○ Explains how to build and test GUI objects following the smart object

model

Unit Test● Unit Test Frameworks - Tools for High-Quality Software

Development (2004)

6. JUnit (Java)7. CppUnit (C++)8. NUint (.NET)9. PyUnit (Python)

10. XMLUnit (XML)11. Resources

Scalable Web Application Architecture● Building Scalable Web Sites - Building, Scaling, and Optimizing

the Next Generation of Web Applications (2006)

1. What is web application?2. Web Application Architecture (硬體,軟體,網路分層架構)3. Development Environments (開發環境,步驟,流程)4. Internationalization and Localization (語系,不同環境下UTF-8的使用)5. Data Integrity and Security (DIP,Validate,Filter,XSS,SQL Injection)6. Email (整合Email與Web Application)7. Remote Service (Server之間溝通, Redundancy, Async, Protocols)8. Bottlenecks (Identify, CPU, I/O, MEM, DB, External Service)9. Scaling Web Applications (Network,PHP,MySQL,Storage,Caching)

10. Statistics, Monitoring, and Alerting11. APIs

Web Service and API Design● RESTful Web APIs (2013)

Basic concepts behind REST as it applies to web APIs1. Surfing the Web2. A Simple API3. Resource and Representations4. Hyptermedia

Different strategies for designing a hypermedia API 5. Domain-Specific Designs6. The Collection Pattern7. Pure-Hyptermedia Designs8. Profiles

Web Service and API Design● RESTful Web APIs (2013)

Pracical topics and best practices9. The Design Procedure

10. The Hypermedia Zoo11. HTTP for APIs12. Resource Description and Linked Data13. CoAP: REST for Embedded System

Web Service and API Design● RESTful Web Services - Web Services for the Real Word (2007)

1. The Programmable Web and Its Inhabitants2. Writing Web Service Clients3. What Makes RESTful Services Different?

○ resources, ○ representations, ○ uniform Interface

Web Service and API Design● RESTful Web Services - Web Services for the Real Word (2007)

4. The Resource-Oriented Architecture○ addressability, statelessness, connectedness, uniform interface.

5. Designing Read-Only Resource-Oriented Services 6. Designing Read/Write Resource-Oriented Services 7. A Service Implementation

○ RPC-style to RESTful service8. REST and ROA Best Practices 9. The Building Blocks of Services

○ representions, prepackaged control flows, hypermedia

Web Service and API Design● RESTful Web Services - Web Services for the Real Word (2007)

10. The Resource-Oriented Architecture Versus Big Web Services○ simpler, scalable, easier, client support

11. Ajax Applications as REST Clients ○ Ajax and JavaScript client

12. Frameworks for RESTful Services ○ Ruby on Rails, Restlet (for Java), Django (for Python)

top related