Software Architecture = technical framework + business implementation.
1. select an appropriate technical framework to meet business needs;
2. Rebuild the existing framework based on business needs.
Two major problems: Data Access and presentation; Application Component Integration.
1. Business Requirements =: application logic segments. A. What should I do? What goals are achieved?
2. Data Model = is implemented as a database. B. What data is involved? How can we Reasonably organize the data?
3. Technical Framework = "organizes all application logic segments in an elegant way. C. What application components are required? How can we reasonably integrate these application components to make them work well?
Data is driving and content, and business goals are driven through the application logic and technical framework;
Business needs are presented and presented in a form that directly targets users and provides value and services.
The core of software is data and business. Where does the data come from? Where is the data distribution? How can we organize and present data to provide the best value and services?
A major difference between software and products is that software tends to focus more on technology, while products tend to focus more on business. To improve product value and service, you must carefully design your own business objectives.
Technology = software = Product = business = users
A developer should not spend too much time paying attention to it:
1. Project Construction, compilation, packaging, deployment, and other development processes. These should be automated using project building tools such as Maven combined with scripts. The only manual activity is to input a command line and thenSource codeGenerate the binary data that can be released directlyCode;
2. Technical Architecture of the project. Small and medium sized applicationsProgramBy selecting the appropriate technical architecture to build a system application framework, these technical architectures are done by those who are clamoring to be system architects all day long;
A developer should pay attention:
1. Focus on your actual goals. It can be somethingAlgorithmOr the implementation of a specific business;
2. Application Architecture of the project. For large-scale applications, it is necessary and inevitable to focus on the application architecture used by the project.
Any tools and practices that help to be lazy are worth trying.