Some thoughts on programming

In the future, some feelings about program design will be summarized and summarized again, and it will be iteratively improved.


How to measure the value of a product or need?
How many people can be helped, how busy it can be, and how long can it continue to help

How to measure the quality of a product design?
    With the development of the product, it takes less and less time to add a requirement, otherwise it needs to be redesigned!

Why is it difficult to design?
It is always ignored and fooled in the past. There is no supporting system and quantification mechanism, and the implementation process is easy to cut corners.

How to pass the demand without quantifying the requirements and bugs (design is not achieved overnight, through bit by bit)?
Don't be smart about processing, and pass on the original needs of users.

How are the requirements designed?
Some users don't know what they want at all. At this time, we need to follow up on similar products and site users' perspectives, and gradually release products to users.

How to choose open source technology?
     Look at the activity of its code, community, bug fixes, and whether it has the support of major suppliers. How to balance

generality and over-design?
     Code extraction (more general), extracting the complexity to a point is generally desirable, but if the pursuit of generality is too much, it will lead to a sharp increase in the complexity of this point.



Programmers must have 2 qualities:
1. To explore the essence of needs as much as possible (to be able to help others better)
     instead of just obeying the command coding, to understand what problem the current coding solves and what its significance is.
2. The pursuit of code cleanliness (be able to maintain better, continuous development)
     and constantly refactor (but don't over-design)


Book Recommendations:
"The Beauty of Simplicity: The Way of Software Design"
mainly explains: how to design software, from the point of view to the simple.
The biggest obstacle to design: complexity will lead to fewer and fewer people who can maintain it, bugs will become more and more difficult to maintain every month, and requirements will become more and more difficult to add, and eventually over

Guess you like

Origin http://43.154.161.224:23101/article/api/json?id=326492468&siteId=291194637