- 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.
- 大學計算機基礎(第三版)
- 從零開始:數字圖像處理的編程基礎與應用
- Unity 2020 Mobile Game Development
- CKA/CKAD應試教程:從Docker到Kubernetes完全攻略
- 零基礎學Java程序設計
- 算法訓練營:提高篇(全彩版)
- 微信小程序入門指南
- Scratch3.0趣味編程動手玩:比賽訓練營
- ExtJS Web應用程序開發指南第2版
- Flink技術內幕:架構設計與實現原理
- Go語言從入門到精通
- Microsoft Dynamics GP 2013 Cookbook
- Android應用開發攻略
- Python深度學習(第2版)
- Building Microservices with Go