The introduction

Small knowledge, big challenge! This article is participating in the creation activity of “Essential Tips for Programmers”

This article from the book “Thingking in Java, once upon a time, I deeply realize the technological progress may not be the progress of knowledge, but the progress of abstraction, because abstract watt invented the steam engine, the mankind into the era of steam, because the abstract, human transformed large computer out of the personal computer and the human into the information age, In this article we will talk about abstraction.

An object-oriented abstract background

In object-oriented not available before, people are to abstract the structure based on computer, then with assembly language, but assembly language is not easy to write, and abstract the c language, with the variables and functions, but such abstract requirements we focus on computer structure, not the problem, this requires that we must build the machine model and the model of the contact problem, But this kind of connection is only suitable for solving one kind of problem, very limited.

Advantages of object orientation

And object-oriented programming thought and programming language, we only need to pay attention to the problem, solution of the elements in the problems and questions are we abstract into object, if the corresponding problem space and the corresponding object, we add the elements in the problem space can be flexible, or add new object types to solve new problems, This is certainly a more flexible and powerful abstraction than our previous process-oriented abstractions.