New technologies are not useless, but new technologies are built up. Those who take over will learn this.
The definition of new technologies is widely defined as those that have not been used in the system. At the beginning of the system, the technical requirements were blank. During subsequent design, the unused technologies were added each time, we need to consider whether continuity exists and whether it should be defined as the basic technology... and so on. It is like whether to use design patterns, DDD, TDD, or mvvm or ASP. net mvc. A little smaller is like the version control to use, the version branch, and the merge policy. These are based on the current team, future goals, and so on.
Each system has a hidden project talent table. Talent is the technology in the system, and developers can gain a thorough understanding of the system only when they have full talent.
-- From the developer's perspective, the more talents you have, the better, and the more interesting you are.
-- From the Perspective of development management, the more project talent tables, the higher the level required by the substitute manpower.
This is a trade-off in design and it is difficult to strike a balance ......
If we look at this issue from the perspective of system design. I am currently trying to use two methods to cut Blocks of different levels through the system architecture level and establish an extensible framework and sample version for the key technologies of each block.
-- For example, to cut the system into N layers, the third layer requires multi-threaded design, the first two layers only require single-threaded design, and the additional layer requires Web development. In this way, you can roughly allocate manpower Based on the skill levels of developers.
-- For example, the mvvm plugin mode and device projection mode previously written define the key model technologies for the presentation layer and communication layer respectively. In this way, when the labor level of the substitutes is low, the system will be directly developed based on the model, and the skill level will be gradually improved through the use and learning model, so as to design the sample version and design the system.
This is a practice that is still being explored. The team is also a small team of no more than 10 people. At the moment, I still cannot see a big problem. When the explosion occurs one day, let's see how to adjust it. Orz