How to step into. NET architect Development

Source: Internet
Author: User
Tags dotnet microsoft website

Microsoft's dotnet development is definitely the kind of technology that makes it easier to get started. It is virtually impossible to be able to become a dotnet architect without three years or longer coding accumulation. Especially in large software projects, architects are the core members of the project, so the RUP methodology also agrees with architecture as the core and embodies the important role of 4+1 view in the whole software development process.  Architects must be proficient in technology and familiar with the business, and the basic software life cycle of all stages of related technologies need to have the relevant accumulation and knowledge reserves, and these years of training is difficult to achieve this height. To become a qualified architect must first be a qualified or excellent coding staff, for the development of coding is always the most important skill, in the coding process as long as they are good at thinking and analyzing problems, you can learn a lot of relevant knowledge and technology. Therefore, we must pay attention to the new knowledge and technology in the development process of learning, predecessors experience and results of learning. Some of the issues that should be considered during the coding process are:
1. Do you do unit testing yourself during the coding process, do unit tests using related tools, and if not, what are the reasons why you can't do unit tests?

2. Self-coded leak rate situation, code leak bug Cause analysis

3. Are you consciously refactoring the code, or are you introducing the idea of a design pattern in the refactoring process?

4. Whether to learn some advanced features of the C # language, such as reflection invocation, asynchronous processing, and so on.

5. Have you done research and comparative analysis on two distributed technologies for remoting and webservice?

6. Do you often study open source projects and open source code, such as Duwamish,petshop,nunit,enterprise library,nant

7. Whether the object persistence mechanism and the O/R mapping and other related technologies have done related research

8. Do you usually pay attention to the reuse and extraction of common components and common classes during the coding process?

9. In peacetime work and study whether often develop small tools to improve work efficiency, the consolidation of learning knowledge design and coding is actually close and inseparable, for the strict design and coding separate waterfall model is generally only in large projects. And in time coding and design separation, is not the coder does not need to think, coding activity is always a creative labor, if the negation of this view, it means that the coding process completely does not require personnel intervention and can be fully automated. Therefore, in this talk about the design is mainly refers to the designers of the systematic thinking ability, designers should be higher than the developer station to analyze and consider the problem. One of the most important skills of a designer is the transformation of reality-----abstract, and this need to talk about methodological issues, technical personnel need to accumulate the face of object analysis and design or structural analysis of knowledge accumulation, need to have strong database analysis and design capabilities. The depth and breadth of this accumulation is key to a design being a good architect.
So the issues to be considered in the design process are:
1. Are you currently capable of analyzing and designing for large or medium-sized applications or are they just independent functional analysis and design?

2. Is the design process consciously taking into account the components of the reuse and related interface design guidelines. It is possible to apply the relevant content of the analysis pattern and design pattern to the design process naturally.

3. Whether to Xp,rup, object-oriented, structural and other methodologies have a more systematic study and thinking.

4. Do you really understand the different guiding roles of system functional requirements and non-functional requirements on system design?

5. Is the function designed for yourself to reflect on the changes that have been made to your design so that the changes are not well adapted?

6. Do you often develop prototypes to validate your design ideas during the design process?

7. Do you focus on technology and start the analysis of professional business processes and focus on business modeling?

If we constantly focus on these knowledge and skills during the design and development process, it is a matter of time before we become a qualified architect. The knowledge and skills that are usually competent for the development of a job are negligible, and if you do not consciously learn the knowledge, the skills are difficult to improve. I attended two Microsoft architect training, and at the Microsoft Architecture Summit in Beijing, I also had the opportunity to participate in P&P Workshop's study, the training teacher is Microsoft headquarters SmartClient Architecture and Design Guide Book author Edward A.jezieski, let me feel the deepest is the deep technical background of foreigners, the development of the process of perseverance.
The knowledge and skills that are often used in the dotnet architecture are
1.RUP methodology, 4+1 view. Design Model--analysis model--case-driven business modeling

2. Use case pattern, analysis mode, design pattern

3. Common Distributed Technologies

4. Attention to non-functional requirements such as security, anomalies, logs, performance, etc.

5. Focus on the overall business of the application system


Some of the relevant reference books (Microsoft website and electric donkey can all be downloaded to) on the Microsoft website provided by the bibliography
Enterprise solution Patterns Using Microsoft. NET

. NET Data Accessarchitecture Guide

Application Architecture for. net:designing Applications and Services

Caching Architecture Guide for. NET Framework Applications

Designing Application-managed Authorization

Smart Client Architecture and Design Guide

Bibliography of other architectural aspects
Software Architecture in practice

pattern-oriented Software Architecture

The Art of software Architecture Beyond software Architecture

Patterns of Books
Analysis Patterns

Design patterns-elements of reusable object-oriented software

Applying UML and Patterns

Design Patterns Explained

How to step into. NET architect Development

Contact Us

The content source of this page is from Internet, which doesn't represent Alibaba Cloud's opinion; products and services mentioned on that page don't have any relationship with Alibaba Cloud. If the content of the page makes you feel confusing, please write us an email, we will handle the problem within 5 days after receiving your email.

If you find any instances of plagiarism from the community, please send an email to: info-contact@alibabacloud.com and provide relevant evidence. A staff member will contact you within 5 working days.

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.