- Scala Design Patterns
- Ivan Nikolov
- 192字
- 2021-07-16 12:57:28
Chapter 4. Abstract and Self Types
Designing and writing high quality code in software engineering is important in order to have applications that are easy to extend and maintain. This activity requires the domain to be well known, correctly understood by a developer, and the requirements for the application to be well defined. If any of these is absent, then writing good programs becomes quite challenging.
Many times, engineers model the "world" using some abstractions. This helps with code extendibility and maintainability and removes duplication, which in many cases could be a reason for bugs. Good code, generally, will consist of multiple small components, which depend on and interact with each other. There are different approaches that help to achieve abstraction and interaction. We will look into the following topics in this chapter:
- Abstract types
- Polymorphism
- Self types
The topics that we will cover here will be really useful when we start looking into some of the concrete design patterns. Understanding them will also help to understand the design patterns that rely on them. Moreover, the concepts covered in this chapter are useful just by themselves for writing good code.
- Spring 5企業級開發實戰
- 前端跨界開發指南:JavaScript工具庫原理解析與實戰
- 軟件架構設計:大型網站技術架構與業務架構融合之道
- Python爬蟲開發:從入門到實戰(微課版)
- 算法訓練營:入門篇(全彩版)
- Learning SAP Analytics Cloud
- Bulma必知必會
- x86匯編語言:從實模式到保護模式(第2版)
- INSTANT OpenNMS Starter
- Ext JS 4 Web Application Development Cookbook
- Web性能實戰
- Node.js開發指南
- Android應用開發深入學習實錄
- HTML+CSS+JavaScript網頁制作:從入門到精通(第4版)
- 青少年Python趣味編程