当前位置:网站首页>STM32 and motor development (from MCU to architecture design)
STM32 and motor development (from MCU to architecture design)
2022-07-03 13:10:00 【Embedded - old fee】
【 Statement : copyright , Welcome to reprint , Do not use for commercial purposes . Contact mailbox :feixiaoxing @163.com】
Students who have worked in foreign-funded enterprises should have this feeling , It seems that foreigners are good at architecture design . In contrast to this , Domestic students seem to be better at writing code . Same design , Foreigners prefer to draw pictures , The text part has , But it is also half of the text and half of the picture ; Domestic students write less documents , I prefer to write code , Even when writing documents, words and tables account for a large part .
Think about it carefully , There's this difference , There are cultural reasons 、 differences , There are also differences in industrial segmentation , At the same time, there are also differences between eastern and Western working methods . What the West values more is communication 、 synergy 、 The interface is clearly defined ; The East stresses division of labor , Fully functional , Fast forward .
Take architecture design for example , No matter at the business level , Or technical level , Painting is indispensable . But the purpose of drawing is to build the model , Dig out the main contradiction of the problem 、 Main process , Not to draw a picture . If architecture design just stays on paper , Unable to land , That really became ppt Architect .
1、 Architects are not suitable for novices who just work
For starters , Maybe this part of personal development software is not very familiar , I don't know about business , It's not suitable to be an architect at this time . It's best to wait until you have some work experience , such as 3~5 It is more appropriate to become an architect slowly after 20 years .
2、 Architects are not the end of their careers
To put it bluntly , Architects just translate requirements into software modules one by one 、 Software subsystem 、 Even across pc Distributed systems , Extract the interface and main process . Specific module development also depends on engineers and development teams . Even if the architect is ready , His work also needs the cooperation of others , To make a finished software product .
3、 Software architects need to write their own code
If the architect doesn't write code himself , He has no way to know the complexity of the problem , There is no way to evaluate the development time of software modules , So generally speaking, architects need to write their own code .
4、 Communication is for architects , As important as technology
Architecture design is essentially an art of compromise , It needs manpower 、 Time 、 cost 、 Accumulation of knowledge 、 Complexity and other conditions . From this point of view , He needs to communicate with different people , For example, communicate with product economy , Communicate with developers , Communicate with the project manager, etc , therefore , Communication is very important for architects .
5、 Abstract ability is an important criterion to distinguish architects
A lot of people don't understand , Why should object-oriented have polymorphism . Actually , This is mainly because I don't understand software engineering . In the process of software development , For various functions , We must find a way to extract the main process . Besides , After the software is developed , Generally, there will be all kinds of new changes , If you have no abstract ability to the original logic , For these new requirements, if only the method of patching is used to solve , Code quality will only get worse , Finally, there is no way to use and maintain .
6、 The architecture diagram is the final output of the architect
From the complex requirements , Build a reasonable framework , Until the final code generation 、 Compile and deploy , This part requires a lot of architecture diagrams .uml Figure is a good method . The architecture is at the module level and in key sub functional areas , Each of these uml Pictures can be taken and used . for instance , The state machine does not mean that the high-level module is used , Low level development cannot be used , No such thing .
In the actual architecture process , Don't have any ideological baggage , Other pictures can also be drawn , For example, the structure diagram 、 Swimlane diagram 、 Brain map 、 fishbone diagram 、 Gantt Chart 、cad chart 、 Chart 、 Topology and so on , These can be used . What I use more personally is openoffice Of draw Software , Some people like it processon, It's all right .
Even the circuit diagram , It can also be completed by architecture design , such as soc Core board

7、 The architecture also needs to be updated in time
The reason why many students don't like writing documents is that the code updates quickly , Sometimes it is troublesome to update to the document . But the architecture is the same , If there are new changes that are not updated in time , Then architecture will eventually lose its meaning , No one will look at an outdated architecture diagram and document .
8、 Architecture is discussed
Many people talk about architecture , Not necessarily . Most of the time, architecture is discussed . First , The knowledge of architects also has certain limitations , Besides , The discussed architecture has less resistance to implementation ; Finally, since it is a discussion , There will be a process of persuasion and persuasion , This requires architects to have a global vision , Before actual development, you must reconsider your own architecture design , There are no obvious loopholes , So as not to make people laugh .
Besides , Many students think that architecture is made behind closed doors , Put the design pattern 、uml、java Open source framework 、 Three layer architecture 、 Do it in blocks and layers , You can do architecture design , It's not right . Architecture comes from business , It is also constantly adjusted , It is impossible to apply the template directly . The part mentioned above is only the meaning of operation , Essence is still the refinement of needs 、 Modeling and abstraction . This is the purpose of never changing , Is the starting point of all work .
9、 Architecture is not framework plus edition
Architecture is business centric , Not framework centric . The architecture is finalized , What frame is suitable for what frame , Never have preconceived concepts . I can use rtos, For all projects rtos. This will only add to your troubles , Let the development students at a loss , It deviates from the original intention of architecture design .
10、 Architecture allows you to have a holistic view 、 Close to money 、 Let more people work for you
There are many factors to consider when building an architecture , At this time, you will be required to consider all aspects . A thoughtless , We're going to push it over again , This is also a common thing . Another one is embarrassed to say , Software architecture is often about solutions 、 Out method , Compared with writing code , Software architects are much closer to money . meanwhile , With an overall vision , Architects can also arrange others to work , Constantly expand your ability boundaries , This is also not comparable to ordinary programmers . therefore , Generally speaking , The income of architects is much higher than that of ordinary programmers , That's one of the reasons .
边栏推荐
- Logback 日志框架
- ncnn神經網絡計算框架在香柳丁派OrangePi 3 LTS開發板中的使用介紹
- Image component in ETS development mode of openharmony application development
- IDEA 全文搜索快捷键Ctr+Shift+F失效问题
- Express abstract classes and methods
- 2022-02-14 analysis of the startup and request processing process of the incluxdb cluster Coordinator
- 2022-02-11 heap sorting and recursion
- 【习题七】【数据库原理】
- C graphical tutorial (Fourth Edition)_ Chapter 15 interface: interfacesamplep271
- [exercise 7] [Database Principle]
猜你喜欢

Low code platform international multilingual (I18N) technical solution

Sword finger offer 12 Path in matrix

Cache penetration and bloom filter

Flick SQL knows why (10): everyone uses accumulate window to calculate cumulative indicators

2022-02-11 heap sorting and recursion

如何在微信小程序中获取用户位置?

自抗扰控制器七-二阶 LADRC-PLL 结构设计

【数据库原理及应用教程(第4版|微课版)陈志泊】【第四章习题】

【数据库原理及应用教程(第4版|微课版)陈志泊】【SQLServer2012综合练习】

IDEA 全文搜索快捷键Ctr+Shift+F失效问题
随机推荐
自抗扰控制器七-二阶 LADRC-PLL 结构设计
C graphical tutorial (Fourth Edition)_ Chapter 18 enumerator and iterator: enumerator samplep340
Quick learning 1.8 front and rear interfaces
如何在微信小程序中获取用户位置?
正则表达式
Dojo tutorials:getting started with deferrals source code and example execution summary
Slf4j log facade
【数据库原理及应用教程(第4版|微课版)陈志泊】【第六章习题】
Glide 4.6.1 API initial
Tencent cloud tdsql database delivery and operation and maintenance Junior Engineer - some questions of Tencent cloud cloudlite certification (TCA) examination
Node. Js: use of express + MySQL
Method overloading and rewriting
SQL learning notes (I)
regular expression
【数据库原理复习题】
Idea full text search shortcut ctr+shift+f failure problem
The latest version of lottery blind box operation version
C graphical tutorial (Fourth Edition)_ Chapter 20 asynchronous programming: examples - using asynchronous
Deeply understand the mvcc mechanism of MySQL
Cache penetration and bloom filter