Hexagonal Architecture - Apply Ports and Adapter Patterns
Hexagonal Architecture - Apply Ports and Adapter Patterns
Hexagonal Architecture เป็นแนวคิดการวาง Application Structure ที่ถูกคิดขึ้นมาโดย Alistair Cockburn (หนึ่งใน Agile Manifesto Fellowship) โดยมีพื้นฐานมาจาก Ports & Adapters Pattern เพื่อแยก Business logic ไม่ให้ผูกกับ technology มากเกินไป ช่วยให้ออกแบบ Application ให้อยู่ในรูปของ Modular Monolith ได้ง่ายขึ้น
เนื้อหาใน class นี้ จะพูดถึง
เนื้อหาใน class นี้ จะพูดถึง
- ที่มาของ Hexagonal ตั้งแต่ Ports & Adapters Pattern
- ความแตกต่างของ Layered-Architecture และ Modular Architecture ของ Monolith Application
- มี hands-on labs ที่ได้เขียนโปรแกรมจริงๆ โดยเริ่มจาก refactor code เดิม ให้อยู่ใน structure ของ Ports & Adapter Pattern
- มี hands-on labs ที่จะได้ลองวาง structure เพื่อสำรวจไอเดียของ Ports & Adapters ว่านำไปสู่การออกแบบ Application ให้เป็น Modular ได้ยังไง
- เนื้อหาจะรวมไปถึง การ apply แนวคิดที่เล็กๆ ไปสู่ความเข้าใจถึงสิ่งที่ต่อยอดไปจาก Hexagonal Architecture เช่น Clean Architecture, ความสัมพันธ์ไปยัง Domain-Driven Design, รวมถึงแนวทางการออกแบบระบบขนาดใหญ่ด้วย Microservices Architecture
Class นี้ ออกแบบมาสำหรับ Software Developer เพื่อให้เข้าใจความสำคัญของการสื่อสารด้วย Application Structure เพื่อให้สามารถดูแลรักษา code ได้ง่ายขึ้น, ทีมสามารถนำแนวทางไปทำ code review ที่ชัดเจนขึ้น, ช่วยให้ออกแบบและสื่อสารไปในแนวทางเดียวกัน
ใน class จะมี lab เขียน code ด้วยภาษา TypeScript แต่ผู้เรียนสามารถใช้ภาษาและเครื่องมือที่ตัวเองถนัดได้ ไม่ว่าจะเป็น Java, C#, Kotlin, Swift, หรือภาษาใดๆที่เป็น Object-Oriented Programming ขอให้นำเครื่อง Laptop ของตัวเองมาด้วย