当前位置:网站首页>[beauty of software engineering - column notes] 23 | Architect: programmers who don't want to be architects are not good programmers
[beauty of software engineering - column notes] 23 | Architect: programmers who don't want to be architects are not good programmers
2022-07-29 08:01:00 【if...else...】
List of articles
Column information
Columnist : The treasure jade
Column publishing platform : Geek time
primary coverage
For programmers , It doesn't mean that there must be a title of architect , It's about having a big picture in mind , There is an architect's thinking , So we can understand architecture design , Be able to write good programs .
One 、 What is architect thinking ?
For architects , Control technical complexity , There are several effective ways : abstract 、 Divide and conquer 、 Reuse and iteration .
Abstract thinking
Abstract thinking can be said to be the basis of the whole architecture design .
In a software project , Encounter similar scenes , Will consider abstracting out , Summarize a rule and method . Sometimes even if the scene is different , You can also abstract the common contents , More convenient to use .
Divide and conquer thinking
A key point of architecture design , Is to divide and rule complex systems , Break down into small 、 Simple part . But light decomposition is not enough , At the same time, it is also necessary to ensure that the decomposed parts can be integrated through the agreed protocol .
Reuse thinking
Reuse is a very simple and effective way to improve development efficiency , By abstracting the same content , So that it can be reused in different scenes .
Iterative thinking
Good architecture design , Usually it is not achieved in one step , Instead, first meet the current business needs , Then it evolves gradually with the change of business .
Two 、 What is a good architect like ?
A good architect , Not only The technology is better , still more Know the business ; From the overall design architecture , It can also realize functions locally .
Because as an architect , If you don't write code , Can't realize the problems caused by poor design , Unable to make timely adjustments to problems in the architecture .
Another ability of a good architect is communication skills .
Be a good architect , Several conditions are required :
- There are architects thinking : Have good abstract thinking 、 Divide and conquer thinking 、 Reuse thinking and iterative thinking ;
- Understand business needs : Good understanding of business requirements , Can design a good architecture according to the characteristics of the business ;
- Rich coding experience : Like abstraction 、 Divide and conquer 、 Reuse these capabilities , It takes a lot of coding practice to master ; In addition, maintaining a certain amount of coding experience also helps to verify the architecture design ;
- Good communication skill : Architects need to communicate and confirm requirements , Need to get the team to understand architectural design .

3、 ... and 、 How to be a good architect ?
Want to be a good architect , There is no shortcut , It takes more effort than ordinary programmers .
For architects , My advice is :
- To be a good programmer
- Imitate and learn more
- Choose a good industry and platform
Four 、 Other excerpts
- For programmers , It doesn't mean that there must be a title of architect , It's about having a big picture in mind , There is an architect's thinking , So we can understand architecture design , Be able to write good programs .
- There is an architect called “PPT Architects ”, That is to say, he is good at writing PPT, Draw a framework diagram . Be familiar with all kinds of popular nouns . But away from front-line development , Little knowledge of business and underlying fundamentals . The architecture designed by such architects , It is usually ungrounded , It will be very difficult to achieve , The cost is also high. .
- At the beginning , Don't think about making cars behind closed doors , Think of a particularly good architecture . On the contrary, it is better to understand the mature and popular architecture in the industry first , The use of good .
summary
Architect thinking , It means having good Abstract thinking 、 Divide and conquer thinking 、 Reuse thinking and iterative thinking .
To be a good architect , There is no shortcut , First of all, you need to be a good programmer , Then imitate more 、 Learn more about good architecture design , Finally, we should choose the industry and platform as soon as possible , Accumulate business knowledge of the industry , Get a lot of practice opportunities with the help of the platform .
边栏推荐
- postman接口测试|js脚本之阻塞休眠和非阻塞休眠
- Greenplus enterprise deployment
- 207. Curriculum
- Rotation in model space and rotation in world space
- Very practical shell and shellcheck
- Mutationobserver document learning
- An optimal buffer management scheme with dynamic thresholds paper summary
- Zip gzip tar compression Advanced Edition
- Sort out the two NFT pricing paradigms and four solutions on the market
- The database uses PSQL and JDBC to connect remotely and disconnect automatically from time to time
猜你喜欢

V-Ray 5 acescg workflow settings

Solving linear programming problems based on MATLAB

Implementation of simple cubecap+fresnel shader in unity

The new generation of public chain attacks the "Impossible Triangle"
![[cryptography experiment] 0x00 install NTL Library](/img/2a/03d95082a2a63238b475b3f7f3e13d.png)
[cryptography experiment] 0x00 install NTL Library

佳木斯市场监管局开展防疫防虫害专题食品安全网络培训

Dynamic Thresholds Buffer Management in a Shared Buffer Packet Switch论文总结
![[experience] relevant configuration of remote connection to intranet server through springboard machine](/img/27/25301cce8a4e5fa0c91902c7b734fb.png)
[experience] relevant configuration of remote connection to intranet server through springboard machine
![[paper reading] tomoalign: a novel approach to correcting sample motion and 3D CTF in cryoet](/img/3a/75c211f21758ca2d9bb1a40d739d80.png)
[paper reading] tomoalign: a novel approach to correcting sample motion and 3D CTF in cryoet

CentOS deploy PostgreSQL 13
随机推荐
Some simple uses of crawler requests Library
Cyberpunk special effect shader
@Use of jsonserialize annotation
Unity beginner 2 - tile making and world interaction (2D)
An optimal buffer management scheme with dynamic thresholds paper summary
Use the cloud code to crack the problem of authentication code encountered during login
Monitor the bottom button of page scrolling position positioning (including the solution that page initialization positioning does not take effect on mouse sliding)
在js中,0表示false,非0表示true
【学术相关】为什么很多国内学者的AI的论文复现不了?
Ionicons icon Encyclopedia
Space shooting Lesson 17: game over (end)
Amaze UI icon query
Ue4/ue5 C disk enlargement processing
准备esp32环境
Vmstat memory consumption query
智慧城市的应用挑战,昇腾AI给出了新解法
Technology sharing | quick intercom integrated dispatching system
《nlp入门+实战:第五章:使用pytorch中的API实现线性回归》
Process and concept of process
Resize2fs: bad magic number in super block