36. Should I Build a Desktop or Web Application?

preview_player
Показать описание
Which is better: desktop apps or web apps? Which should I learn? Are desktop apps dead? Is ASP.NET Core better than WPF? These are the questions we will tackle in this episode of Dev Questions.

Рекомендации по теме
Комментарии
Автор

Tim has some of the best training videos on the Internet. His voice is clear, his explanations leave no stone unturned, and just does a great job. It took me 3 weeks to learn c# and I'm continually trying to up my game with educational resources. I've been in system design and development for 40 years and seen a lot of instructors. Tim is one of the best. This video covered a lot of things I already knew but brought up some things I didn't think of.

MotorcycleMan
Автор

A seriously great clear and concise speaker. Voice projection, No "umms" at all make it so clean to listen to. Nice job Tim!

Ishanamin
Автор

For internal business CRUD apps, I've decided to stick with winforms and c#. Its fast, easy and maintainable and I can do just about everything including dozens of data grids on the same page without dependencies or third party frameworks. With web you have to worry about a whole lot more stuff, like what is backend, what is front end, security (a winform app I can put in a domain authorised folder), frameworks etc.... but for anything outside of business, Web is becoming the only way to go. BTW thanks for speaking so clearly. I can usually listen to your videos at 2x.

I
Автор

Thank you, Tim. Your channel is a gold mine.

victordudnyk
Автор

Great point about the strengths and weaknesses of the team!

turn
Автор

Really good and helpful video👍👍👍

There are two additional points to make:

1. Do you also need a mobile app?

Because It is much harder to add a mobile app to a desktop app, than to a web app (or you build a hybrid and than it gets easier...). That it is not to say that you have to have a web app to also build a mobile app, but maybe you can already use web apis for your desktop app, which are than also responsible for the mobile app.

2. What kind of people use your application?

I work on a scheduling software, were the main customers are people without much technological background, but often work on windows since win 95. So they have some expectations when it comes to software. Also they are often quite limited on their own rights to their machine. So I think to evaluate your customer base is another very important point, before you make a decision...

kgnet
Автор

Tim, nice presentation but one great benefit of a web application is that they run across devices/platform, once the device has a browser

paulecampbell
Автор

Thanks a lot Tim. As a software developer for a lot of years with both Desktop and Web applications. I agree with you in every word you have said.

imadabab
Автор

I like web apps when you have users from multiple areas working on the same project. Like when two companies that are merging and a lot of cross referencing needs to be done and / or queried. If you need speed and processing large chunks of data or long running processes you want an app. Web apps are easier to deploy than desktop apps and I like that. The problem is that many times the developer doesn't have the choice of one over the other. You are told what to develop and then go from there. I would say this -

1.) If need is for processing large amounts of data and / or long processing runs I would say use a desktop application. Just know that if the amount of data is large enough and processing takes a long enough period of time, you will want to incorporate batch processing in the background via a windows service of some kind. The user won't leave an app up long enough if processing takes too long.

2.) If the processing is mostly just short transactional processing with small amounts of data going back and forth a web app works great, EXCEPT that later on in the life cycle of that web app the amounts of data may get larger and eventually make that web app untenable to use.
I would say that if you think this might be a problem later that you build as a web site with a web service doing the work for you in the back ground. Not exactly a web app anymore but I'm speaking from experience here. I can't count the times I was tasked with building a web app / app for a "small" process only to have it become a monster 6 months later that bogs down when it doesn't have enough memory. Most managers can't understand why a web app doesn't work like a desktop app.

Cool topic.

jackgarrett
Автор

Nice one, I mix both depending on task at hand, integrations with my biometric scanners, reporting, rf equipment go on desktop(win for). my web app is for data collection, retrieval, querying and display, even my reporting is on win form connected to my web host database. To me web is still restricted in some aspects, thats why i love blazor, because its looking more like desktop development and has alot of features that has been missing from web development way back. Thanks for sharing.

jeffybanjo
Автор

I would mix them, to give the admins desktop or mobile app client and the normal users web application client, but as you said it depends, at the end a good developer is the one who knows both and adapt to them

ramioopgotoguy
Автор

Can you please do a video that explains with streaming data?
I think its a great library, and really underated

yogevgershon
Автор

Great video Tim, thanks a lot! Sometimes I still doubt about changing my desktop apps to web, you gave me more information to take note.

AlfredoMartinezA
Автор

You were definitely right...Tim.
Thank you.
Between the desktop app and web app....I usually look at also the system requirement expected by the user. To update a desktop app I would usually use ClickOnce technology which is awesome.

zulhishamtan
Автор

This is super insightful, very experienced!

husseinkizz
Автор

I quite agree with what you mentioned but I'd like to add another point of view as you measured only advantages and disadvantages: know the market you are targeting at. In my case I work for the healthcare industry (small clinics with up to 10 providers) and here 95% of the market is desktop. When you consider the whole US healthcare system there are just 3 or 4 web players here, even the biggest player (Epic--not the games company, the healthcare company which holds over 50% of the market--) and their main competition (NextGen) are desktop-oriented.

refactorear
Автор

I'm definitely a desktop guy. The only significant web work I ever did was in Silverlight, but for the most part that felt enough like desktop that I didn't find it too uncomfortable.

mark
Автор

That totally makes sense. Greate opinion! Clearly, web apps are easier to deliver to users.

LukasNachtigall
Автор

Good article Tim. I gotta say the one thing that almost always makes me move away from choosing a Desktop app is the install-hurdle. Installing isn't hard - for us: Developers/IT personnel/Power-users. For other people it is more of a challenge or something scary. On top of that, most companies we deal with have some sort of Norton Ghost/Citrix environment that prohibits installing applications let alone running unsanctioned .exe's.

ReSpawNnL
Автор

Great points to help with decision making. Thanks Tim.

patsnoma
welcome to shbcf.ru