This is a frequently asked question. As Program Clerk, why do I have to be considered to know how to develop Web applications? There is no simple answer to this question, and even those educational institutions may not know it clearly; the university I attended did not offer any courses on this topic. So, like most web developers in this field, I learned this only by doing and experimenting. No one told me how to do it. I started from doing something for myself and learned how to develop Web applications as a by-product in this process. This is a very effective way to learn any language.
You are very lucky. Here I will talk about how to develop a web application. Hope to help you get started.
Differences between web applications and websites
First, I want to explain that developing a web application is different from developing a website. Although there are great similarities in general, there is a huge difference in the time needed to develop them. So what are the differences between web applications and websites? Usually, Wikipedia can help us explain this problem. Let's take a look at how Wikipedia defines the application software:
Application Software, also known as applications, refers to computer software designed to help users execute one or more specific tasks. Enterprise software, accounting software, office kits, drawing software, media players, etc.
Compared with application software, system software and middleware are used to manage computer performance and how computer integration is managed. However, these tasks are not directly reflected in the execution of tasks that benefit users. For example, the relationship between application software and system software is like the relationship between a light bulb and a power plant. A power plant (System Software) only generates electricity, it has no real purpose, unless it uses an application tool such as a lightbulb to provide services to users.
In this section, I have summarized my definition of Web applications:
A Web application is a website that allows users to complete certain tasks. The main goal of a common website is to provide users with information (such as BLOG, news, guidance, and so on ).
Web Application Development Process
Now that the features have been clarified, we can start to define the entire process of developing a web application. Of course, this depends on the size of the project. Some steps in the process may be very small and you can complete this kind of work in your mind, but it is always good to understand the whole thing. At the same time, it is very important to understand that this articleArticleEach step is not described in depth.
Step 1: Analyze
The first step in developing a web application is to analyze your needs. At this time, you should define a list of functions that your application should provide as comprehensive as possible. If you do this for a customer, you need to understand what they want (make sure that the other party knows what the other party is talking about ). From your discussion, you can summarize the requirements and software specifications. Even if you develop it for yourself, I suggest you write down the functions you want this web application to do.
Step 2: Design
Once you have figured out what the web application needs to do, you can design it. This step is usually repeated multiple times, and the design is refined each time. The first thing you need to do is to draw a page flowchart (drawing on paper or using software tools, depending on what you do. I like paper, so that I can make changes faster ). The page flowchart is usually a very abstract black and white painting that draws the web application you want to implement (you can add some colors, but try to keep it simple ).
This step will let you know what your application will look like in the end. In contrast to 37signals, I suggest using some words to describe them in a more refined manner. When I think of a good idea or how to do things, I will mark it on paper (for example, when I click this button, another element should be changed or hidden, I will write this on the flowchart ).
When you are satisfied with the sketch, you can start to create an entity model.
The entity model is still some pattern, but colored and detailed. The final entity model should look like a screenshot of the Web application you are about to implement. If you develop for a customer, he will take a look at these things and give you his approval. However, many people like to skip this step (most of them are non-designers), and they like to go directly to the web page prototype.
At the end of this step, you basically know how your web applications are organized together. What are there on the logon page, and how do users switch from the home page to various pages.
Step 3: Implement
Select a framework
Now that we know what to develop, we need to develop it. This part of the work is a lot of work, and you will spend most of your time on it. The first decision you need to make is how to proceed, what technologies and frameworks are used. You have a lot of options, and you need to select one that suits you. The following is a list of the most commonly used frameworks:
● ASP. NET
● Any process framework on PHP
● Python with Django
● Ruby on Rails
There is no clear standard to say which framework is the best. Each of them has its own strengths. The most important thing is that you need to know that any of them can enable you to develop useful web applications.
Once again, there are many ways to implement background programs. We recommend that you read the information related to the framework you selected and find out how to implement this part of work. In general, this knowledge will be related to object-oriented programming, but some frameworks are slowly driving the development of design to the field.
Step 4: Polishing
Now the application has been developed, and each independent module is integrated. You need to test to ensure that the requirements and software specifications you have defined in step 1 are implemented (this issue should be kept in mind throughout your development ). Make sure that stupid users cannot break your application by trying to perform some operations that you have not yet implemented (refer to white box and black box testing ). You also need to make sure that your program runs correctly in various browsers (hopefully not IE6.
Now you can make some small adjustments to improve the way your application feels, so that it will become perfect.
Step 5: Release and follow-up
This last step (but not the end) is to release your application so that users can actually use it (if this application is a public-developed application, don't forget to make news ). If you want to release a beta version, only a small number of users can find the major problems in your application (because there will be bugs in your program ), they will help you improve program quality. Do not be busy adding features. Focus on improving the stability of your current programs.
After the beta stage, your program has become very stable, listen to user feedback, and try your application on your own. You can start to think about how to make the application better. Find out the discord and eliminate it. Every iteration will go through the five steps mentioned above, but as I said at the beginning, you now have an application that can run, you can easily complete these steps directly and test your functions in the code.
Congratulations, you are proud to be the author of a Web application.