What are the disadvantages of a web application?

I am going to write a database application for the camp in which I work. I am thinking of writing it in C # with a Windows GUI, but using a browser, as the application looks more and more complex for various reasons. I am wondering why someone would not want to write an application as a web application. Ex. The back button may cause some problems. Are there other things to think about?

+4
source share
13 answers

There are many disadvantages:

  • Speed โ€‹โ€‹and responsiveness are generally much worse
  • Complex user interface widgets (such as tree controls) are harder to do
  • Graphics rendering of any kind is rather complicated, 3D graphics are even more complicated
  • You need to mess with the entrances
  • A centralized server means that clients always need access to the network.
  • Security restrictions can cause problems.
  • Browser incompatibilities can cause a lot of extra work.
  • UI contexts are less defined on the Internet - users may find it more difficult to use
  • Client side restriction

The question is, does this do enough for your project to make the Internet the wrong choice?

+9
source

One thing that was not mentioned here is the level of complexity and knowledge required to create a good web application. The problem is that if you are not doing something very simple, there is no โ€œsingleโ€ knowledge or technology in these applications. For example, if you have to write an application for some client server platform .. you can develop Java or C ++. For a complex web application, you may need experience with Java, Java Script, HTML, Flash, CSS, Ajax, SQL, J2EE, etc. In addition, the components of the web application are also more numerous, the Web Application Server, the HTTP server, the database, the browser .. are typical components, but maybe more .. the client server application is typical what it says .. the client application and server application. My experience and personal preferences are not based on the Internet. A website is great for many things. But even despite the fact that I am an IT architect for a leading company, fully released in Web Apps, as a solution for everything ... There are still many disadvantages. I do what the technology will evolve, and the cons will go away over time, though.

+2
source

In fact, these restrictions exist only through the platform, being a browser. If you have to consider all the browsers currently in use, which can be a pain due to the different standards in each of them.

If you have control over which browser to use, that is, everyone is on the computers that you control on the site and say that you install firefox for all of them, then you can make the most of the latest Javascript and CSS standards in your delivery content.

[edit] You can also see options, such as the adobe integrated runtime or "AIR", as an option that allows you to code the interface with traditional browser-based settings, such as xhtml / css / javascript, flash / flex and have a backend connected to your database online, but also provides the functionality of a traditional desktop application at the same time.

+1
source

The biggest difference and disadvantage that I see in web applications is government. Since the Internet is, by its nature, stateless, every thing you want to keep must be sent back and forth from the server with every request and response. How to efficiently store and retrieve it depending on the size and performance of the page is difficult to do from time to time. Also, the fact that there is no real standard (at least not everything everyone adheres to) for browsers makes the sequence really .......... fun.

+1
source

You need to have network access to the server on which the web application will be located (if there are several users for the application, which usually takes place).

In fact, there are more pros than cons - if you can give some details about your application, we could help a little more ...

0
source

It completely depends on the requirements of your project. For the most part, there are currently not many web applications that cannot be executed. Admittedly, some applications do indeed belong to the desktop as browsers (while they are currently advancing quickly), still not quite at all. Since the advent of applications such as Google Docs , Gmail

There is not much you can do on the Internet. However, if you are creating a competitor to World of Warcraft, the network is certainly not the best solution. Again, unfortunately, we need to learn more about the application you are building for the camp. The best part of a website is that anyone with a browser can use your application.

0
source

Handling Web application delegates to a remote machine. Depending on the amount of processing, this may be con. Consider a photo editor that has a web application.

Web applications also cannot process a lot of data sent back and forth from the client. You can watch videos online .. under compression. It will be some time before we see any video editing software on the Internet.

Browser compatibility is also a problem. You cannot control the appearance of the application by 100%.

Waibhav has a good point. What is your application?

0
source

The most important is the downtime for migration ... users do not expect the application to be unavailable, but, apparently, it will be necessary for major updates. When you do this using a desktop application, the user (or the end-user system administrator) controls when updates occur; with an online application, it is not.

For applications with big data, performance can be a serious problem when centrally storing large amounts of user data, which means that I / O performance will not be as good as if you gave them the entire laptop.

In general, scalability gives problems for the server application. Desktop applications look very good.

0
source

You can do a lot with a web application, but it is much easier to do certain things with a fat client:

  • Performance. You get easy access to the full power of the client CPU.
  • Responsiveness: Interactivity is quick and easy.
  • Graphics: You can easily use graphics libraries such as DirectX and OpenGL to create fast, impressive graphics.
  • Work with local files
  • Peer to peer
0
source

Deciding whether a web application is a good approach depends on what you are trying to achieve. However, there are several common drawbacks of web applications:

  • Real integration with desktop applications (for example, Outlook) is not possible.
  • Drag and drop between your application and desktop / other running applications
0
source

The web application has more privacy issues when you store user data on your servers. You must make sure that you do not lose / disclose it, and your users should be happy with the idea of โ€‹โ€‹storing this data on your servers.

In addition, there are many security issues, such as Man-in-the-middle attacks, XSS, or SQL injection.

You also need to make sure that you have enough processing power and bandwidth.

0
source

"Example. The back button may cause some problems."

You must be specific about this. Many people make fundamental mistakes in their web applications and introduce errors in the way they handle transactions. If you are not using Redirect after Post (also known as Post-Redirect-Get, a PRG project), then you created an error that appears as a problem with the back button.

A hidden expression that the feedback button is unlikely to be true. In a specific example, your specific question will be explained to you.

0
source

The back button is really not such a big problem if you are developing your application correctly. You can use AJAX to manage parts of the current page without adding elements to your browser history (since the page itself will not change).

The biggest problem in developing web applications is related to the status and problems that need to be programmed. With a desktop application, the state is easily processed, you can leave an open connection to the database, block the record and wait for the user to make changes and commit. Using a web application, you can block the recording ... but then what if the user closes the browser? These things must be overcome when developing your application.

When developing a web application, make sure that each trip to the server "stands alone" and gives a complete answer. Always re-initialize the variables before doing any work, and never accept anything. One of the problems I ran into is dragging the "pages" of grid data back to the user. In a real loaded system with adding / changing records in real time, user navigation from page to page will vary greatly, sometimes even as a result of viewing the same set of several records, since new additions were added before the request,

0
source

Source: https://habr.com/ru/post/1276996/


All Articles