NET Learning route (detailed)

Source: Internet
Author: User
Tags dot net

. NET Learning Routes

Introductory article 1. Learning Object-oriented (OOP) programming ideas

Many high-level languages are object-oriented programming. NET is no exception. If you touch object-oriented programming for the first time, you must understand concepts such as classes, objects, fields, properties, methods and events, encapsulation, inheritance and polymorphism, overloading, rewriting, and so on. It should be explained that Microsoft's product Help documentation is very well done, and the query is quite convenient, the novice must not look. After you install Visual studio.net2003 (or Visual studio.net2002), you have a visual Studio combined Help collection in the Programs group. Beginners get a lot of knowledge from help documents.

2. Choose a language and learn grammar and related basics

Choose the language standard: according to your own needs and personal technical background. Under the. NET Platform, C #, VB. NET is called the framework of the class library, the efficiency is basically the same, C # syntax rigorous, suitable for the previous C + +, VC programmers. Vb. NET is not case-sensitive., auto indent, suitable for the previous VB programmers, Microsoft has repeatedly advocated the use of vb.net for rapid development. Vc. NET is closer to the bottom, and can be programmed in both managed and unmanaged ways.

After choosing the language to use, we need to understand the grammar rules of the language, including statements, types, expressions, operators, functions, and so on, I suggest that the beginning of writing a program to develop a good programming style, the specification of the name of the variable, in the code to write good comments. This is very meaningful for future software development career.

3. Understanding. NET ideas and familiarity with Framework class libraries (Framework classes Library)

We use a picture to illustrate the relationship between the common language runtime (CLR), the Framework class library (FCL) and the application, and the entire system.

First, we want to understand the concepts of the common language runtime, assemblies, and common type systems. On this basis, learn. NET Framework class Library: The NET Framework class library is a reusable collection of types that is tightly integrated with the common language runtime. The. NET Framework class library encapsulates most of the Win32 APIs, many of which were previously required to be implemented by the API, and are easily implemented under. NET, and in many cases only a single sentence is sufficient. Therefore, we should try our best to avoid calling Win32API when we are programming. Learn the shortcut to the. NET Framework Class Library: Mastering commonly used class libraries, other infrequently used class libraries only need to understand, when used to consult.

4. Writing programs with Visual Studio.NET

Write programs under the. NET platform we generally use Microsoft's development tools, Visual Studio.NET, because a good IDE can greatly improve the development efficiency. I suggest that beginners start with windowsforms or WebForm, and then move on to writing libraries or controls and components after having a certain foundation. Microsoft's Help documentation comes with a lot of examples, and we can do a walkthrough while watching help. While learning the code, be sure to understand and think. Writing more code and exercising from a project is the path of growth for a master programmer. Remember: Be sure to read more about the source code, and discuss technical issues with the Microsoft newsgroups on more forums (such as CSDN and Dev-club).

We have to use visualstudio.net. This integrated development environment, in addition to writing code, we also understand the principles of. NET deployment, learning to package, deploy, and manage applications. Multi-person projects can consider using Visualsource safe for source code management, a series of development tools to use a lot of practice.

Recommended Books:

"C # Advanced Programming" (Second Edition) (Tsinghua University Press)

The Insider of Microsoft.NET Program Design Technology (Tsinghua University Press)

Visual VB. NET Technology Insider "(Tsinghua University Press)

Visual C #. NET Technology Insider "(Tsinghua University Press)

. NET Getting Started tutorials (including Windows Form and Web Form):

Http://chs.gotdotnet.com/quickstart

5. It's best to master large database programming

Generally speaking, most software development involves a database. Most of the software's backend databases are used such as access, SQL Server, Oracle, and so on. Ado. NET provides access to relational data, XML, and application data. We must master the use of connection, command, DataReader and DataAdapter objects, and correctly use DataSet Datasets and DataView for data manipulation. Of course, there must be a database base, including the use of tables, views, stored procedures, and so on. Must be the background database and the front office of ADO to Master, in order to really proficient in database programming.

In the development of a project, it is recommended to use the data Access Application Block (applicationblock) to simplify SQL queries. Microsoft MSDN Web site has downloads, we can take advantage of the SqlHelper class for data access, which is very simple to use and easy to build our data access layer.

Recommended Books:

The ADO. NET Technology Insider "(Tsinghua University Press)

The ADO. NET Advanced Programming (China Power Press)

"VB." NET and SQL Server 2000 Advanced Programming-creating efficient data layers (Tsinghua University Press)

6. Learning XML WEB Service

XML Web Services is creating a new era of distributed application development. XML Web Services is a manifestation of software as a service that enables data exchange and remote invocation of application logic by using XML message processing. XML enables data to move data between heterogeneous systems through firewalls. Although the public webservices is not very popular, in some enterprises, the development of Web services has been involved. It's easy to create a Web service with Visual Studio.NET, and it's fairly simple to invoke a Web service, just add a Web reference and call it. To learn this, you need to understand the Web Services Description Language (WSDL), the SOAP protocol, and so on.

Recommended Books:

"Building XML Web Service: Based on Microsoft.NET platform" (Tsinghua University Press)

"Building XML WEB Services for the Microsoft. NET Platform" (photocopy version)

. NET Technology Online resources:

China Software Network (China's largest technology community)

Computer World Developer Club

China Dot Net Club

Microsoft Official MSDN Authoritative site:

************************************************************************

Promotion Chapter

1. Learn. NET Framework development platform underlying principles and architecture

At the core of the. NET Framework is the common language runtime (Common languageruntime,clr). Typically, we use a high-level language (such as C # or vb.net) to write programs that produce a managed module (the intermediate Language IL Code) for the compilers of these high-level languages. A managed module is a standard windowsPE file that requires the CLR to execute. When executing the intermediate language code, the instant compiler (Just-in-time, or JIT) in the CLR translates it into CPU instructions. There are many details, including how to initialize the CLR, the Microsoft Component Runtime Execution engine MSCorEE.dll (Microsoft Component objectruntime Executionengine, in the system32 directory), how to work, and so on. If you want to be proficient. NET technology, you must be right. NET Framework principles, assemblies, metadata, value type/reference types, type design, exception handling, automatic garbage collection and other core technologies have a clear understanding.

Recommended Books:

《. NET Framework Program Design (revised edition) (Tsinghua University Press)

"Applied. NET Framework Programming" (photocopy) Jeffrey Richter

《. Microsoft. NET IL assembly language programming

". NET essence" (China Electric Power Press)

2. Proficiency in running the underlying tools to debug and solve various problems

Know. NET platform, we need to learn some tools and the use of the CLR Debugger (DbgCLR.exe). The importance of the C # command-line compiler (Csc.exe) and the vb.net compiler (Vbc.exe) does not have to be said.

Several of the more important tools provided by the. NET Framework SDK are the MSIL Assembler (Ilasm.exe), the MSIL Disassembler (Ildasm.exe), and the Assembly Linker (Al.exe). It is strongly recommended that you use the MSIL Disassembler (Ildasm.exe) in your development to enhance understanding of the CLR and the underlying. The MSIL Assembler (Ilasm.exe) generates a portable executable PE file from MSIL assembly language. The Disassembler (Ildasm.exe) can parse any. NET framework. exe or. dll assemblies and display the information in a readable format. The Assembly Linker (Al.exe) generates a file with an assembly manifest from one or more files: The NET Framework SDK also provides many other tools, such as the PEVerify tool (Peverify.exe), the Strong Name tool (Sn.exe), and so on, and we strive to use them in a command-line manner.

It should be noted that visualstudio.net is not able to do all the command line work, some tasks must be done by the command line. For example, to create a multi-file assembly, you must resort to Csc.exe's addmodule option. Only in the right. NET Framework has a deep understanding of how these tools can be used flexibly.

3. Design of large-scale software system architecture

The architecture design of software system needs to accumulate considerable experience, which requires us to grasp the overall structure of the software from the global concept. The first point is that we have to refer to the software Requirements specification. The requirement specification is the user and the development both sides to the development software function, the performance, the user interface and the operating environment and so on to make the detailed explanation, therefore our design software must use this as the basis. Next, we want to do the overall design of the software, that is, the outline design. Generally need to according to the software business requirements and Business Process Module Division, the overall structure of the planning program, input and output and interface design, operation design, data structure design and error processing design, for detailed design lay the foundation. In the detailed design, we need to point out how each module is implemented, including implementation algorithm, logic flow, data flow chart and so on. The future work, is the realization of the program. The test is in sync with the code, must be strictly to the good quality.

In use. NET when developing large systems, it is generally done in the form of a three-layer (or n-tier) structure. The application is logically divided into 3 basic tiers: Data access and storage, business logic layer, presentation layer. The advantages of the three-tier structure are: scalability, scalability, and flexibility. When doing Web applications, consider using the MVC (model-View-controller Model-view-controller) pattern to modularize the user interface functionality of the Web application.

By the way, large software sometimes needs to integrate multiple products to meet enterprise-class application needs. Microsoft offers a number of Server products, such as SQL Server, ExchangeServer, Share Point Server, Biztalkserver, and so on. Remember: We must know more about Microsoft's product line, Microsoft A lot of technology are consistent with each other, combined to play a role! We can integrate software systems on the basis of Microsoft's server-level products, achieve data-sharing access, e-mail on end devices, and message collaboration. In short, through the Internet, let everyone work together, is the future development of software trends. If we take these directions, we will harness the future.

Recommended Books:

Enterprise Solution Model using Microsoft. NET, Microsoft Press

"Enterprise solution Patterns Using Microsoft. NET" MS Divss

4. Lead the team for software development

A good team to develop a successful product. Software development is mainly composed of project management team, software development team and software Test team. Project management personnel mainly control the project, coordinate the work of the developers and testers. The developer's work is mainly responsible for the implementation of the software. Testers are the quality assurance of software products. Other personnel, such as product planning, software technical support and documentation, logistics are indispensable.

Large-scale software is the crystallization of the collective wisdom of many people, requiring Projectleader to have strong management skills and technical background, as well as good communication skills. If you make the technology for a long time, accumulated a wealth of experience, the project leader and other management work, through continuous learning and promotion, it is very likely to grow into project Leader. If you are projectleader, you are responsible for the success or failure of the software, you can according to the existing resources to determine the development of task allocation, reasonable employment, determine whether the functional modules are worthy of development, project schedule control and many other issues. In short, the people who lead the team must be visionary and take the right approach to lead the team to success.

Recommended Books:

"Human Moon Myth" Tsinghua University Press

"People's Pieces" Tsinghua University Press

Source: http://jingyan.baidu.com/article/ff42efa96667b5c19e2202d3.html

NET Learning route (detailed)

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.