Going forward with desktop application development

Entityframework/WCF Dataservices/WPF is a decent stack for desktop development, else could explore React Native/Electron for something new.

Otherwise I agree, rather focus on the web if you want to learn something new, there's more demand.
 
Although there is still a place for WinForms, I feel that there are so many emerging/new technologies that have a great future.

Mobile: Xamarin/Swift/Android (Java). Long runway still for mobile dev

Cloud: Azure or AWS. Just in this area, learning the functionality and how to use/assemble the Azure services to put together a system has huge potential as many organisation are moving to the cloud and lack the know-how.

Web: Backend (Learn to do WepApi / websites with MVC & .Net Core)
Front-end: Html/CSS/JS/Typescript. Still very popular especially the emergence of new standards and responsive design.

AI: TensorFlow,adding AI to any application to learn from its users.

To be honest, there is a bucketload of new things to learn. You actually need to pick your area that you interested in. All of the above is in great demand.

You can evolve from where you are now to where you want to end up.

Even if you stay with WinForms, I can guarantee you there is loads that you dont yet know. Many devs that do WinForms do not use a great architecture. I.e. have loads of code in event handlers in the form code-behind. Try developing and exploring new architectures, new patterns, etc.
 
Why suffer with Entity if you work with dapper? Sooooo much faster.

I found this as a starting point.

[video=youtube;FyaCtcJwpJk]https://www.youtube.com/watch?v=FyaCtcJwpJk[/video]
 
Last edited:
I found this as a starting point.

[video=youtube;FyaCtcJwpJk]https://www.youtube.com/watch?v=FyaCtcJwpJk[/video]

In my years we've used quite a few frameworks, progressing from :

- Direct Sql
- Gentle
- nHibernate
- Entity
- Dapper

nHibernate was a staple for a few years and we experimented with Entity as it was fully microsoft and we code primarily in c# but Dapper is a LOT quicker. There was an article somewhere that showed speed differences on some query loads and it went something like :

Entity - 600ms
nHibernate - 125ms
Dapper - 40ms
Direct Sql -25ms

Some articles around speed.

https://weblogs.asp.net/fbouma/net-micro-orm-fetch-benchmark-results-and-the-fine-details
https://weblogs.asp.net/fbouma/fetch-performance-of-various-net-orm-data-access-frameworks
https://blogs.msdn.microsoft.com/sq...ibraries-using-stackexchangedapper-benchmark/
https://exceptionnotfound.net/dapper-vs-entity-framework-vs-ado-net-performance-benchmarking/

We use a repository pattern with Dapper for persistence and webservices as a central utilization point. Works really well and supplies a common point for our databases to all products and other languages ( websites, services, apps , chatbots , anything as webservices are generic )

https://www.c-sharpcorner.com/artic...-repository-pattern-and-dependency-injection/
https://msdn.microsoft.com/en-us/library/ff649690.aspx
 
Last edited:
Busy working through a Dapper series I found on Youtube. This is good stuff.
 
Would have to agree that there seems to be a diminishing use of desktop apps in the dev space.

Been using EF, AutoMapper, AutoFac, MVC, .Net Core, WebApi, etc for backend and then integrating frontend of Angular, React, Vue etc

A lot of the stuff I've been doing lately is responsive frontend all working off api calls to make the experience seemless.

Been using both Xamarin and Android Studio for mobile dev and want to start looking at Swift or similar soon.


So much to know.....
 
Still feeling pretty lost and have no idea which direction to go. I've come across MVP/MVVM/MVC and I have no idea what to go with. I would like the presentation and data separated. I came across this(data binding)and it's muddied the waters even more. Help!!

[video=youtube;U1eypjtM8JI]https://www.youtube.com/watch?v=U1eypjtM8JI[/video]

Edit: Think I'm just going to pay for a course. possibly this https://www.youtube.com/watch?v=2HlnhfNuRwg

The MVP route looks pretty awesome.
 
Last edited:
Still feeling pretty lost and have no idea which direction to go. I've come across MVP/MVVM/MVC and I have no idea what to go with. I would like the presentation and data separated. I came across this(data binding)and it's muddied the waters even more. Help!!

[video=youtube;U1eypjtM8JI]https://www.youtube.com/watch?v=U1eypjtM8JI[/video]

Edit: Think I'm just going to pay for a course. possibly this https://www.youtube.com/watch?v=2HlnhfNuRwg

The MVP route looks pretty awesome.

Pretty similar patterns.

https://stackoverflow.com/questions/2056/what-are-mvp-and-mvc-and-what-is-the-difference
 
Still feeling pretty lost and have no idea which direction to go. I've come across MVP/MVVM/MVC and I have no idea what to go with. I would like the presentation and data separated. I came across this(data binding)and it's muddied the waters even more. Help!!

[video=youtube;U1eypjtM8JI]https://www.youtube.com/watch?v=U1eypjtM8JI[/video]

Edit: Think I'm just going to pay for a course. possibly this https://www.youtube.com/watch?v=2HlnhfNuRwg

The MVP route looks pretty awesome.

DataBinding is very powerful. I built a whole MVVM framework for WinForms using databinding. The end result is complete separation of behaviour (VM) and presentation (Form). The form ends up having virtually no code.

I posted an extensive explanation of databinding with sample project in one of your other threads:
https://mybroadband.co.za/vb/showth...m-controls?p=19100493&viewfull=1#post19100493
 
DataBinding is very powerful. I built a whole MVVM framework for WinForms using databinding. The end result is complete separation of behaviour (VM) and presentation (Form). The form ends up having virtually no code.

I posted an extensive explanation of databinding with sample project in one of your other threads:
https://mybroadband.co.za/vb/showth...m-controls?p=19100493&viewfull=1#post19100493

Thanks Spacerat! I got side tracked with another project for about a year and lost direction.
 
DataBinding is very powerful. I built a whole MVVM framework for WinForms using databinding. The end result is complete separation of behaviour (VM) and presentation (Form). The form ends up having virtually no code.

I posted an extensive explanation of databinding with sample project in one of your other threads:
https://mybroadband.co.za/vb/showth...m-controls?p=19100493&viewfull=1#post19100493

I've still got that project in my dropbox folder WinformsDataBinding1.zip
 
Desktop UI I’ve used metro UI which is WPF but the controls looks quite pretty actually and it’s free
 
Xamarin or Cordova are good options IMO. Cross platform.
 
Desktop UI I’ve used metro UI which is WPF but the controls looks quite pretty actually and it’s free

I'm now making the permanent move to WPF/MVVM. I think the days of WinForms are numbered at least that's the same opinion I get from several professionals out there.
 
I'm now making the permanent move to WPF/MVVM. I think the days of WinForms are numbered at least that's the same opinion I get from several professionals out there.

Though I don't use it myself (except for some XAML in old Silverlight project), I really do suggest moving on to WPF. It is flexible and powerful with proper separation of UI and functionality, you can achieve professional looking UI without the need for buggy and/or expensive third party add-ons and if lucky enough to be in the right environment one person/department can focus on UI/UX and another on coding (or if doing it all yourself you can better 'switch between modes'). Windows Forms also tend to be more problematic when having to keep screen resolution and especially DPI settings in mind.
 
Last edited:
Top
Sign up to the MyBroadband newsletter
X