Become an Awesome Software Architect: Book 1: Foundation 2019
暫譯: 成為卓越的軟體架構師:第一冊:基礎 2019

Volkhover, Anatoly

  • 出版商: Independently Published
  • 出版日期: 2019-10-07
  • 售價: $2,040
  • 貴賓價: 9.5$1,938
  • 語言: 英文
  • 頁數: 192
  • 裝訂: Quality Paper - also called trade paper
  • ISBN: 1697271065
  • ISBN-13: 9781697271065
  • 海外代購書籍(需單獨結帳)

買這商品的人也買了...

相關主題

商品描述

Great software architects aren't born. They are a product of decades of building real-life solutions and relentless learning. They become really good at their trade closer to the retirement age. But most startups are fostered by young entrepreneurs who dare to try but lack the experience. They also lack the $$ to hire a silver-haired architect to join their team from day one. Left to their own faculties, the entrepreneurs and their engineering teams quickly get on the path of learning from their own mistakes. Eventually, they discover this is the most expensive way of learning. Over time they get better, and some become the true masters of the craft - but way too late to make a difference for their early-day projects.

This book is meant to break the vicious circle. It isn't a textbook, at least not in the traditional sense. It is a business-centric practical guide to software architecture, intended for software engineers, technology executives, students of computer science, and tech-savvy entrepreneurs who want to de-risk their entrepreneurial endeavors or to fast-track their careers in software engineering. The recipes in this book are highly practical, battle-tested, and current for building mid- to large-scale systems in 2019-2020.

The book covers the following topics:

  • Software architecture, what it is, and what it's for
  • The Hit List of a software architect; functional vs non-functional requirements
  • Programming languages; object-oriented vs functional programming; how to pick the right tool for a job
  • Datastores, SQL vs NoSQL vs Event Stores, CRUD vs CQRS vs Append-Only
  • Data Models, Domain-Driven Design approach to data modeling
  • Layering your architecture, reducing complexity and dependencies
  • Code composition, SOLID principles
  • Dependency inversion demystified
  • Latency; synchronous and asynchronous processing
  • Errors, error recovery, and the right way of handling retries
  • Practical approach to logging
  • Real-time and near-real-time processing
  • Event streaming and streaming architectures
  • Caching and CDNs
  • User Interfaces, unified cross-platform UI architectures
  • MVC model and its successors; a reusable UI composition model
  • Microservices, the Dos and the Don'ts
  • API design patterns, API versioning, and backward compatibility
  • API security
  • Batch processing, and how to eliminate it
  • Multi-tenancy, and why it is more important than you might think
  • Removing dependencies between engineering workstreams, develop great code fast with a team of any size
  • Runtime infrastructures, from dedicated servers to cloud to serverless architectures
  • Runtime frameworks, how to pick one, and how to protect yourself from the framework's shortcomings
  • Brainstorming technique that really works

Every topic is illustrated with easy to follow code examples and diagrams. Enjoy

商品描述(中文翻譯)

偉大的軟體架構師不是天生的。他們是經過數十年實際解決方案建設和不斷學習的產物。他們在接近退休年齡時,才會在自己的專業上變得非常出色。但大多數初創公司都是由年輕的企業家所創立,他們敢於嘗試,但缺乏經驗。他們也缺乏資金來從第一天起就聘請一位經驗豐富的架構師加入團隊。在缺乏指導的情況下,企業家和他們的工程團隊很快就會走上從自己的錯誤中學習的道路。最終,他們發現這是最昂貴的學習方式。隨著時間的推移,他們變得更好,有些人成為真正的專家,但對於他們早期的項目來說,這樣的進步來得太晚了。

本書旨在打破這個惡性循環。它不是一本教科書,至少不是傳統意義上的教科書。這是一本以商業為中心的實用指南,針對軟體工程師、技術高管、計算機科學學生以及希望降低創業風險或加速其軟體工程職業生涯的技術型企業家。本書中的內容非常實用,經過實戰考驗,並且適用於2019-2020年中到大型系統的建設。

本書涵蓋以下主題:
- 軟體架構,什麼是軟體架構,及其用途
- 軟體架構師的重點清單;功能性需求與非功能性需求
- 程式語言;物件導向與函數式程式設計;如何為工作選擇合適的工具
- 數據存儲,SQL與NoSQL與事件存儲,CRUD與CQRS與僅附加
- 數據模型,基於領域驅動設計的數據建模方法
- 分層架構,減少複雜性和依賴性
- 代碼組合,SOLID原則
- 依賴反轉的解釋
- 延遲;同步與非同步處理
- 錯誤、錯誤恢復及正確的重試處理方式
- 實用的日誌記錄方法
- 實時與近實時處理
- 事件流與流式架構
- 快取與CDN
- 使用者介面,統一的跨平台UI架構
- MVC模型及其後繼者;可重用的UI組合模型
- 微服務,應該做的與不應該做的
- API設計模式、API版本控制及向後相容性
- API安全性
- 批處理及如何消除它
- 多租戶,及其為何比你想像中更重要
- 消除工程工作流之間的依賴,與任何規模的團隊快速開發優秀代碼
- 運行時基礎設施,從專用伺服器到雲端到無伺服器架構
- 運行時框架,如何選擇一個,及如何保護自己免受框架缺陷的影響
- 真正有效的頭腦風暴技術

每個主題都有易於理解的代碼示例和圖表進行說明。享受閱讀!