|
Much thanks!
<hr>
"Qulatiy is Job #1"
|
|
|
|
|
No problem. Happy to chat offline if you have more questions. You can find me on LinkedIn.
/ravi
|
|
|
|
|
Ravi Bhavnani wrote: FWIW, I'm in the process of porting this[^] WinForms app (30K lines of code) to Android, and later iOS. I'm using Xamarin to build a native UI and 99% of the business and persistence layer has been portable without any changes. I would consider it a great goodness if you were to publish CP articles, or blog, about the process, the hurdles, the "gotchas," etc.
So far, I've read mainly negative articles and posts about using Xamarin Forms.
thanks. Bill
«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)
|
|
|
|
|
Hi Bill,
I'm using Xamarin.Android and not Xamarin.Forms to port my app. I used XF to build the Android half of an Android/iOS prototype about 3 years ago and found it to be quite powerful at the time, but haven't touched it since.
/ravi
|
|
|
|
|
Quote: So, my question is, if I wanted to write a Microsoft-backed thick client application in C# that's possibly cross platform... what options do I have? I know Xamarin is one. Is that the only one?
Cross Platform in a business depends on business decisions....winforms is pretty mature and has a historical component source as in third party controls and components...so its a good think if you can flex ... cross platform there is WinForms | Mono[^]
Caveat Emptor.
"Progress doesn't come from early risers – progress is made by lazy men looking for easier ways to do things." Lazarus Long
|
|
|
|
|
abmv wrote: Cross Platform in a business depends on business decisions.... That's a given. And having been involved with the business for years in my career, this is something I already know. However, it's up to the tech people to know about the tech that's out there, so we can communicate this to the business to help them make a better decision. Thus, I'm fishing for info.
abmv wrote: winforms is pretty mature and has a historical component source as in third party controls and components VB6 is also mature. Doesn't mean I'd use it 10 years from now.
abmv wrote: so its a good think if you can flex ... cross platform there is WinForms | Mono[^]
My understanding of this is it's not feature complete. Granted, I've never used Mono WinForms so maybe things have changed. It's worth looking into again no less. Thanks.
Jeremy Falcon
|
|
|
|
|
VB6 actually is not used much...
Considering the amalgamation and proliferation of JavaScript there is something interesting called Electron | Build cross platform desktop apps with JavaScript, HTML, and CSS.[^] that could be a basis for architecture modern apps while maintaining less or more build complexity.
Rather just code for MAC and iphones .. haaa..
Caveat Emptor.
"Progress doesn't come from early risers – progress is made by lazy men looking for easier ways to do things." Lazarus Long
|
|
|
|
|
abmv wrote: VB6 actually is not used much... That's my point.
abmv wrote: Considering the amalgamation and proliferation of JavaScript there is something interesting called Electron | Build cross platform desktop apps with JavaScript, HTML, and CSS.[^] that could be a basis for architecture modern apps while maintaining less or more build complexity. Going web is something I've strongly considered. I'm just fishing for options.
Jeremy Falcon
|
|
|
|
|
electron is not web, but a cross platform desktop application framework. Visual Studio Code uses electron.
|
|
|
|
|
I'm fully aware of that. But thanks for stating the obvious.
Jeremy Falcon
|
|
|
|
|
Here, instead of saying "going web" let's say "going with web technologies."
Jeremy Falcon
|
|
|
|
|
Wellllll....(deep subject, I know)
I've hosted Chromium in a WinForm app, which is quite interesting actually -- you can call into C#, and the C# can call into the Javascript.
Why? Well, you end up with a "thick-client" that can easily be turned into a web app, particularly if you don't have any C# calls, or you've abstracted them in the Javascript so that they're easily replaced with by AJAX calls to a server.
I know, it's a crazy idea, but since I won't touch WPF, don't really want to learn Xamarin/XAML, Qt, GTK+, wxWidgets all suck, and I do enough web development nowadays anyways, it makes more sense for me, particularly since I can also leverage some really nice web-based UI components.
|
|
|
|
|
As a web guy myself, I love that idea. But if I get this role, I think I'll be the only web guy there. So in an effort to play with the team that may not be viable. Granted all this of this down the road anyway, it's a low priority for now and for good reasons they said in the interview. However, I'm totally inline with the web vibe you're thinking man.
Jeremy Falcon
|
|
|
|
|
Personally, I love WinForms!
No HTML/CSS or XAML mess! Just grab a control, drop it on the screen and IT JUST WORKS!
You may want to add a third party control library such as DevExpress or Telerik to make it better looking, get more features and make it even easier to develop.
Sure, it doesn't scale as well and it's not really multi-platform, but if your customers use Windows desktops that isn't really an issue.
I'm not really sure about Microsoft alternatives, but I know they used Electron[^] for Visual Studio Code.
Yeah, it features all of that awful HTML and CSS and it even adds JavaScript to make it worse, but at least it's "modern" multi-platform desktop development.
It's what all the cool desktop developers use
|
|
|
|
|
Sander Rossel wrote: No HTML/CSS or XAML mess! Just grab a control, drop it on the screen and IT JUST WORKS! Aw come one man, you don't like having to install 500 npm packages for hello world?
Sander Rossel wrote: I'm not really sure about Microsoft alternatives, but I know they used Electron[^] for Visual Studio Code. That's cool. Didn't know this. At first glance it reminds me of Adobe Flex rehashed. I reckon if Slack and MS and Atom all use it though, it'll be around for a while. Thanks for the tip.
Jeremy Falcon
|
|
|
|
|
I got started in my programming career on the old VC++ and then migrated to WinForms C#. I heartily agree with this post. Back then, the UI was not complicated, and all the stuff that is a PITA to do in JavaScript seemed to be so easily abstracted out. GUI Programming then was fun; now it's like getting a tooth removed.
|
|
|
|
|
I like Winforms. It seems a good match with the Windows UI. It seems odd that MS have left it fallow - what else would they like us to use? We could use WPF but that isn't updated before. Given that Windows' success is on the top of desktop apps - why wouldn't Microsoft want to give us a first class, up-to-date framework for it? What would be the downside?
|
|
|
|
|
they don't have people to working on it...especially since google,amazon,oracle,saleforce are stealing the thunder and sales with cloud
and with microsoft strategy for the cloud and since all development is moving towards web or cloud or whacma call
it
Caveat Emptor.
"Progress doesn't come from early risers – progress is made by lazy men looking for easier ways to do things." Lazarus Long
|
|
|
|
|
I can see they might not put 100% at the top. If everything goes to the cloud Windows becomes irrelevant... so why not keep people interested in developing for it.
|
|
|
|
|
If I'm not mistaken WinForms makes use of GDI which is an older Windows specific method for drawing stuff on screen.
That makes it hard to scale, which is very important with all these different devices nowadays.
It also just doesn't work on anything that isn't a Windows computer.
As such, making "modern" applications that speak to a majority of the public is difficult, if not impossible, using WinForms.
It's great for a lot of businesses, but they're moving to the cloud and the web.
So all in all I think WinForms had its best days
That's not to say it isn't or can't be used anymore, COBOL is still around too
Try to see WinForms as a finished product, it's just great the way it is and doesn't need any more updates
|
|
|
|
|
Sander Rossel wrote: Personally, I love WinForms!
No HTML/CSS or XAML mess! Just grab a control, drop it on the screen and IT JUST WORKS!
You may want to add a third party control library such as DevExpress or Telerik to make it better looking, get more features and make it even easier to develop.
Sure, it doesn't scale as well and it's not really multi-platform, but if your customers use Windows desktops that isn't really an issue.
Agreed.
Tell you what? Let all the young kids go drive themselves to distraction chasing whatever technology is the fad of the day and let us old guys cry all the way to the bank as we continue to write professional applications that get the job done, even if "behind-the-scenes", eh?
-CM
If you think hiring a professional is expensive, wait until you hire an amateur! - Red Adair
|
|
|
|
|
ClockMeister wrote: Let all the young kids... I'm only 29 myself (almost 30)
|
|
|
|
|
Wow ... a smart young developer!
If you think hiring a professional is expensive, wait until you hire an amateur! - Red Adair
|
|
|
|
|
Write your own UI. It's not very hard.
I am endeavoring, ma'am, to construct a mnemonic memory circuit using stone knives and bearskins.
|
|
|
|
|
I think the keys to what Microsoft is thinking are:
1. announcing that they won't be creating HW devices (pads and phones) -- plus Surface may go away by 2020 or something
2. They are going to support Edge on iOS and Android
I think that is a move toward Progressive Web Apps -- this is _not_ Progressive Enhancement - that's a different concept. When I heard PWA I initially thought progressive enhancement.
This is a web technology that allows you to install a web app on a device as if it is an app but it uses HTML, JavaScript, CSS and ServiceWorkers.
Check out this book I am reading right now O'Reilly press, amazon link:
Building Progressive Web Apps[^]
|
|
|
|