Abstract: learn how to plan and design ASP. NET applications. This article takes a knowledge base web application as an example to discuss the most common factors in the practice of creating an application.
Introduction
This is a series Article In this series of articles, we will gradually detail how to use Microsoft ASP.. NET and Microsoft Visual Studio.. Net to design, implement, and deploy typical web applications, to explore the most common factors in the practice of application creation. We not only deploy some web forms, but also not limited to binding some data to backend databases. Data Binding and web form layout are important, but there are many other problems.
For example, regardless of the target platform or language, all well-coded projects include some basic planning steps, such as the target declaration, user solution documentation, it is even an architectural document that identifies the physical and logical boundaries of a solution. In addition, it is a good habit to include security planning in the early stages of the solution lifecycle. Together with a good database model, well-designed middleware components, and a simple user interface, this ensures that the applications you deploy in production are secure and reliable, and is user-friendly.
At this time, some readers may think that this article belongs to those articles with a high tone and is targeted at some very large enterprise-level solutions, which are not applicable to small factories, enthusiasts, or individual development groups. This is not the case! Even if you just create a small web-based solution that you use on your own, a well-developed plan from the very beginning will help ensure that the process can be easily implemented and deployed. Moreover, these technologies are not available to senior programmers or web developers. Regardless of your technical level or target readers, I believe you will find this series of articles very helpful to you and provide you with rich information, and (Let me say this) is very interesting.
We will generate a sample knowledge base web application called dotnetkb, which runs through the entire series of articles. In this article, we will introduce the design phases of typical projects, including basic planning, application architecture, and implementation solution design. After learning this article, you will have prepared all the documents and can't wait to start creating a solution.
The preparation is very simple. Let's skip this part and start the first step of "application planning ".
Plan basic ASP. NET Applications
The first step in creating web-based ASP. NET applications using Visual Studio. NET is to develop basic application planning (AP ). Planning is not only essential for large-scale solutions built by multiple developers, but also for a complete AP even for the smallest applications. Creating an AP helps you carefully consider common issues before coding. In this way, you can fully understand the challenges and solutions in the early stages of the application lifecycle, rather than discovering problems after they are completely in a dilemma. In the software project release Val guide, author Steve McConnell pointed out that the cost of correcting errors in later stages of a software project is compared to the cost of discovering and correcting these errors in earlier stages, the former may be 50-200 times that of the latter.
What content does a complete project plan contain? It can contain a lot of content, but the most basic thing is to include the target declaration and a series of user solutions. There are many other useful materials, including the requirement documents, coding standards, delivery progress, and testing process. For the simple example solution we want to establish, we will mainly introduce simple application declarations and some user solutions. It also solves some other problems.
Application Declaration
The project (called dotnetkb) to be created in this series of articles is a simple knowledge base web site. On this site, you can ask a variety of questions and get answers from authorized "experts. In this way, visitors can search and filter the result data when looking for solutions to common ASP. NET problems.
This is a basic object Declaration for our dotnetkb project. Dotnetkb is a web-based application that lists a series of questions raised by visitors and shows authorized experts' replies to these questions. Visitors can add new questions to the system, and search and filter these questions based on the topic, question, and/or keyword in the answer. Visitors can also sort the problem list by topic or by date added to the system.
Authorized experts can log on to the application that has configured security mechanisms, review questions, add, edit, and delete one or more answers to a question. The application administrator can also create expert logon permissions and logon configuration files, and add, edit, and delete question topics.
In addition, some basic statistics are provided, including the number of questions and answers in the system, the number of replies for each expert, and the number of pages that have been accessed so far.
As you can see in the preceding statement, this solution is very simple. When reading the target declaration, you may begin to consider many other features that can be added to the application to make the application more powerful. This shows a major basis for project goal Declaration, that is, to avoid "function spread ". We all know that if we change the concept that the final result is originally based, a simple idea will lead to very large and distorted results. There is an old saying: "If you don't know where to go, you may stop somewhere." It originally revealed that summer road trips can also be used in software projects.
Some project object declarations may need more information. For our use, the above object declaration meets the requirements. Now we have a clear understanding of the application to be completed. Next we need some detailed information to describe how the user interacts with the system and what tasks the user needs to perform to accomplish the goal. We need a series of user solutions. |