|
OK then - we can be friends
If it's not broken, fix it until it is.
Everything makes sense in someone's mind.
Ya can't fix stupid.
|
|
|
|
|
LMAO... yay!
Jeremy Falcon
|
|
|
|
|
Kevin Marois wrote: If you're referring to WinForms vs WPF, then yes, I agree.
if you're referring to Windows Development as a practice, then I disagree. There are and always will be many different types of enterprise level apps that are and always will be Windows based.
[Soapbox Mode]
Even though it might be "fashionable" to move from WinForms technology to WPF (or whatever), I don't think that either of them are going to disappear; they both have their place. As "old" as one might consider WinForms to be, it is a time-tested and true technology for developing the front-end of a Windows application. I tried application development with the XAML style UI in WPF for awhile. I found that, while there are some things you can pull off with it that can't be done with WinForms that few if any of said features mattered to me. If your front-end isn't trying to be "pretty" in some way with odd-shaped forms and special graphical presentations, why bother with it? I haven't yet (myself) run into a situation where doing a web-style (XAML) type user-interface would have added any value to the application I was working on. If I were developing a program that presented the front-end to look exactly like a DVD player or something, then I would probably need to use WPF.
Naturally, Microsoft, and the market-at-large are going to "push" the newer technologies so that they can sell solutions that, to many, solve problems that don't exist for them. It isn't, by and large, "fashionable" to stick with a technology that "just works" ... you've got to constantly change your tool set so that someone can sell you said tools.
As you stated, Windows desktop development ain't going anywhere for a very, very long time. WinForms is still an extremely powerful tool with which to develop presentation-layer to an application. Developers who have only been around for the last dozen or so years or less have no appreciation for how much work it used to take to make an intelligent presentation of data on a screen or a printer.
There's room for all of these technologies, however there are some (like WinForms) that are just so well defined and stable that they'll probably never stop being the mainstay of really excellent front-end presentations that don't require constant tweaking just to make them work. With a mature technology like WinForms I find that I spend a higher percentage of time solving the problem-at-hand rather than spending my time trying to tweak (or make work in the first place) the front-end user experience. Again, if the user experience is the point (DVD Player for example) then, yeah, use WPF (or whatever UI technology is best for that).
It's just the assertion that developers like to make that such-and-such technology is "dead" because they don't consider it fashionable anymore that's silly. COBOL development is not considered fashionable either, but I read recently that 70% of business-oriented code (banks, etc.) is still COBOL, and the guys that know that technology cry all the way to the bank!
[/Soapbox mode]
If you think hiring a professional is expensive, wait until you hire an amateur! - Red Adair
|
|
|
|
|
Jeremy Falcon wrote: I know WinForms isn't going anywhere. Like SQL92, present, reliable and widely unknown.
I'm using WinForms on Ubuntu and OpenSUSE; regardless of what Microsoft does or doesn't, the library will be there. Support for it is something I do not need, it just needs to be there; a proven UI, a wrapper around the legendary common controls. Stuff that people recognize and know how to interact with, without having to follow a "proper" course to interact with your application or reading a book!
So, I'd say you're right. Unlike hypes like WPF, we know for sure that WinForms isn't going anywhere; it is a standard UI recognized regardless of the platform, available for free, with a mountain of documentation, examples and tutorials. A rich-UI, free, documented, and the defacto-standard since the Amiga left the market that's not going anywhere.
Much like SQL92 and me - always present, always boring. With the promise not to go anywhere
Bastard Programmer from Hell
If you can't read my code, try converting it here[^]
|
|
|
|
|
Eddy Vluggen wrote: I'm using WinForms on Ubuntu and OpenSUSE; Is this over Mono or something like Wine?
Eddy Vluggen wrote: Much like SQL92 and me - always present, always boring. With the promise not to go anywhere Sometimes boring is a good thing. It's another way of saying stable. Just wanna make sure I have as much info as possible.
That's cool about the Linux side of things. With the MS adoption of Linux now, it'll be interesting to see what happens.
Jeremy Falcon
|
|
|
|
|
Jeremy Falcon wrote: Is this over Mono or something like Wine? In my case Mono, though Wine should work (with limits).
Jeremy Falcon wrote: Sometimes boring is a good thing. It's another way of saying stable. Just wanna make sure I have as much info as possible. Some managers like sexy, others like predictable
Jeremy Falcon wrote: That's cool about the Linux side of things. With the MS adoption of Linux now, it'll be interesting to see what happens. It is cool to present a recognizable UI on a "foreign" platform, and it is doubly cool to cut dependencies.
It is triple cool to see it run on a 40$ raspberry pi - it gives some competitive advantages for replacing those thin-clients
Bastard Programmer from Hell
If you can't read my code, try converting it here[^]
|
|
|
|
|
Eddy Vluggen wrote: a wrapper around the legendary common controls. Hi Eddy, please correct me if I am mistaken, but I think WinForms on any platform but Windows do not have these standard WinForm Win Controls (how could they ? ... they're wrappers around old COM fossils), and what Controls they might offer will certainly not offer identical api's and behavior.
That's a problem, I think, for WinForm devs who have a hard-won skill-set of techniques and work-arounds using these Win specific Controls.
«While I complain of being able to see only a shadow of the past, I may be insensitive to reality as it is now, since I'm not at a stage of development where I'm capable of seeing it. A few hundred years later another traveler despairing as myself, may mourn the disappearance of what I may have seen, but failed to see.» Claude Levi-Strauss (Tristes Tropiques, 1955)
|
|
|
|
|
BillWoodruff wrote: Hi Eddy, please correct me if I am mistaken, but I think WinForms on any platform but Windows do not have these standard WinForm Win Controls (how could they ? ... they're wrappers around old COM fossils), and what Controls they might offer will certainly not offer identical api's and behavior. You'd be right! I actually once wrote an article explaining the makings of a button, and how the Delphi-VCL is but a wrapper over the common controls.
Still I only need to add "System.Windows.Forms" in Mono; and while WinForms is available, WPF isn't.
BillWoodruff wrote: That's a problem, I think, for WinForm devs who have a hard-won skill-set of techniques and work-arounds using these Win specific Controls. Nah, same UI-rules apply for WPF, Gtk and the Web; yes, different events and properties, but that's what documentation is for
Bastard Programmer from Hell
If you can't read my code, try converting it here[^]
|
|
|
|
|
Not to beat a dead horse, but ...
So, I use VS and create a X/Mono Forms app targeting IOS/Linux ... what do I do for a TreeView, a SplitContainer, etc, ?
«While I complain of being able to see only a shadow of the past, I may be insensitive to reality as it is now, since I'm not at a stage of development where I'm capable of seeing it. A few hundred years later another traveler despairing as myself, may mourn the disappearance of what I may have seen, but failed to see.» Claude Levi-Strauss (Tristes Tropiques, 1955)
|
|
|
|
|
You simply use a TreeView and a SplitContainer. Those classes exists, not just on Windows.
Bastard Programmer from Hell
If you can't read my code, try converting it here[^]
|
|
|
|
|
Excellent post, and it has garnered a lot of attention.
I think winforms have their place still in our world. I use them all the time for internal utility apps, etc. Not everything needs to be pretty . I hat working with WPF, always have. I have not worked with it in 2 years; perhaps it has gotten better. -- my opinion.
With that said, I would not take a job where my work would be full-time winforms, unless I was certain to stay up to date on other technologies (more current) on my own.
|
|
|
|
|
BTW, read this awesome reply.
Not sure how it ended up there, but it's a gem on WPF. Totally expresses my sentiments.
|
|
|
|
|
Well I actually used to develop LOB with WPF sometime back when
it got released and we had a considerable time invested in it , The things
component developers did with it was remarkable and well its different.
We actually wanted to XBAP it and not code a web app UI over the LOB framework,
it was back some time and well XBAP did'nt actually gel in a way because
it needed some security setting etc done on IE , though we
had it working and it worked and it did not need all the complicated call
backs and stuff u do it in java-script if it was run in a closed
enterprise environment,just the database drivers,it was like there was
no need to re-code a web app when you had WPF running in the browser.
Then came silverlight and the decline...
There are similar sentiment other devs shared ...like below...
[^]
also
The consequences of declaring WPF is dead. | RIAGENIC.com[^] (also many other interesting thing on this blog.
Caveat Emptor.
"Progress doesn't come from early risers – progress is made by lazy men looking for easier ways to do things." Lazarus Long
modified 14-Oct-17 4:26am.
|
|
|
|
|
My friend.
First I will quote Redmonk analyst James Governor: "When companies grow up, they turn into Java shops".
With that in mind, if you want A FUTURE you should learn Java. Period.
So that said and knowing that that only applies to the Server, your options in the thick client front end are quite limited.
We have seen everything come to Windows since the heyday of Win32.
It's the "Fire and Motion" that Joel Spolsky mentioned in it's seminal Joelonsoftware blog.
We've had WinForms, WPF, Silverlight, Metro, and now UWP. I've seen Fortune 1000 throw thousands of dollars rebuilding something from the former to the latter.
Ironically, my fellow, I've only seen WinForms apps survive. With the whole Web then Mobile revolution when you need a thick app you can't be picky about the environment. It has to run across the board and only WinForms does that. WPF needs heft graphics, Silverlight is just dead, Metro needs awful Windows 8 and UWP needs Windows 10. In the same, Swift or Obj C need iOS and Java is only valid for Android in the client side with people moving swiftly to Kotlin.
with that in mind, don't think .NET Standard or .NET Core have any future outside Docker containers. We are currently pushing all IIS dependent migrations to go to .NET Core, but that gonna take a while, since Kestrel is still NOT IIS.
Hope this long rant serves you.
BTW. If you haven't, learn WCF, that's the only thing useful from the Vista era 3.0 (pseudo) framework.
The more you see, the less you know.
|
|
|
|
|
Well, at the speed Microsoft has abandoned technology, I recommend you wait 5 years, and see what they did. But I would put a decision like this OFF until real demand for other platforms shows up in a serious way. And then I would look to go to the cloud. Maybe mobile if it makes a difference.
We maintain systems that are LOB winForms that were first implemented in Windows 95. While we converted many things to NT Services because they no longer require a GUI, the remaining stuff is solid, and there is no requirement to support any other platform.
But even the screen sizes and font combinations are starting to cause old programs some issues.
a 16x16 icon is like a spec nowadays... (BTW, what I would have given to have created the idea of a FONT as the icon package, totally scalable, portable).
|
|
|
|
|
The last thing I want to do is write a web app for just a handful of users where a Winforms desktop app will do. If an app isn't specifically calls for declarative UI or must be ran on other OS, write it in Winforms can be done much more quickly. I've seen simple application that use the more elaborate frameworks like Prism, Unity and MVVM pattern. Really for bragging rights and over engineering.
|
|
|
|
|
Quote: I assume there is no real future in WinForms
Heh... dude, if you think like that, programming is not for you - just coding. WinForms is alive and will be alive for as long as Win7 exists. As you guess, cr@p like Win10 just shakes imaging "future OS", but reality is nobody wanna be sheep of MS. So Win7 is the last OS I installed and I feel it will stay for 10+ years AT LEAST.
And of course, overengineered rubbish like WPF will never outperform WinForms. Conclusions are too obvious that you look a bit fool sacrificing WinForms.
|
|
|
|
|
Is a peanut a lunatic legume farmer?
Bad command or file name. Bad, bad command! Sit! Stay! Staaaay...
AntiTwitter: @DalekDave is now a follower!
|
|
|
|
|
Is his daughter called Nutella?
... such stuff as dreams are made on
|
|
|
|
|
No that was my former bossette. She was from Italy and lived well up to that name.
I am endeavoring, ma'am, to construct a mnemonic memory circuit using stone knives and bearskins.
|
|
|
|
|
Nut wishing to cashew any feelings that I just want to pecan you for cheap thrills, I none the less have my filbert of this seedy thread.
(Raisin the bar a bit)
Ravings en masse^ |
---|
"The difference between genius and stupidity is that genius has its limits." - Albert Einstein | "If you are searching for perfection in others, then you seek disappointment. If you are seek perfection in yourself, then you will find failure." - Balboos HaGadol Mar 2010 |
|
|
|
|
|
As usual you are off the pop corn. You just walnut give up!
... such stuff as dreams are made on
|
|
|
|
|
Don't worry - I won't be totally pistachio for that remark.
Ravings en masse^ |
---|
"The difference between genius and stupidity is that genius has its limits." - Albert Einstein | "If you are searching for perfection in others, then you seek disappointment. If you are seek perfection in yourself, then you will find failure." - Balboos HaGadol Mar 2010 |
|
|
|
|
|
Bean there, done that.
/ravi
|
|
|
|
|
Bean there? A rather dahl place, wasn't it?
Ravings en masse^ |
---|
"The difference between genius and stupidity is that genius has its limits." - Albert Einstein | "If you are searching for perfection in others, then you seek disappointment. If you are seek perfection in yourself, then you will find failure." - Balboos HaGadol Mar 2010 |
|
|
|
|
|