3 Replies - 1649 Views - Last Post: 15 April 2009 - 04:40 AM

#1 MeltingPoint   User is offline

  • New D.I.C Head

Reputation: -4
  • View blog
  • Posts: 17
  • Joined: 31-March 09

Is .NET framework suitable for shrinkwrapped apps on the desktop?

Posted 07 April 2009 - 12:00 PM

I picked up a book called "Professional .NET Framework" the other day at a local MicroCenter. It is an older book, but I belive relevant as a decent intro into all things .NET. In 700+ pages it goes into detail on what .NET is and how it functions, from concept to execution. Throughout the several first chapters one theme is constantly repeated: .NET is for primarily web applications and in-house enterprise apps. Here is a quote from chapter 1:

".NET has been designed primarily with Windows-based internet and distributed applications in mind. Other kinds of development, such as games and drivers, may or may not recognize the same benefits from .NET"

Similar theme is repeated over and over in the book. I myself am new to .NET. Recently I ported two of my old VB5-6 apps to VB.NET (one a simple database parser, the other a WMI/Xitami frontend) as a intro to .NET, but I was hit with an realization of how indeed web-centric .NET was. Also, I realized that these apps could not be distributed over the web either to your average consumer. My 380KB database app was saddled with a near 200MB runtime, same happened with my 70KB frontend app. 200MB runtimes over the web?! (And I thought people would take issue with my 4-5MB VB5-6 runtimes) Pushing massive 200MB runtimes sounds fine for corporate intranet setups but for retail or even over the web direct-to-consumer apps they seem, well massive. That along with a fact that .NET apps seem in effect open source (from what I understand from the book and elsewhere) .NET apps are easily decompiled, obfuscation or not. That is a big no-no. There is a difference between some kid patching your licensing routine and making your demo app into a fully registered copy and between that same kid getting his hands on your source.

All of this leads me to belive that .NET framework and .NET apps are not suitable for shrinkwrapped environment or consumer desktop. The entire framework seems directed at the enterprise and corporate environment, something that book even mentions in a way in several places.

Also, I noticed that even nearly a decade after .NET hit street, framework penetration seems weak considering how much time has passed and there seem to be very few shrinkwrapped apps on the consumer desktop, again contrasted with how much time has passed. So, if .NET is not it, what is the preferred framework or language environment as far as Windows is concerned? Just good old Win32 API & C++? (unmanaged C++ I mean)

Is This A Good Question/Topic? 0
  • +

Replies To: Is .NET framework suitable for shrinkwrapped apps on the desktop?

#2 Martyr2   User is offline

  • Programming Theoretician
  • member icon

Reputation: 5537
  • View blog
  • Posts: 14,539
  • Joined: 18-April 07

Re: Is .NET framework suitable for shrinkwrapped apps on the desktop?

Posted 14 April 2009 - 10:49 PM

First of all, your book is flat out wrong. While the .NET framework does have a powerful presence on the web through ASP.NET the .NET framework is very strong for desktop development. Actually, that is what the whole Windows Forms setup in .NET is all about.

And even though .NET is only 7 years old (it was launched in 2002) it IS the DEFACTO framework for developing windows applications. There will be times where you may need to develop something in unmanaged C++, but typically .NET is what you will want for most of your development of desktop applications on a windows platform. Just to give you an idea, .NET 3.5 is a big deal with the development of Vista and Windows 7.

So don't get tricked into thinking .NET is only good for web or distributed applications because that is absolutely false. In fact most of the time you will be using .NET for web AND desktop applications.

Just take a look through our VB.NET, C# forums where we talk mostly about desktop application building with .NET. Many of us, myself included, do a lot of desktop, non distributed application development with the framework.

P.S. Typically you don't want to include the .NET framework in your application distribution unless you have an idea that they won't have the framework installed. Most of the time however, they will have some version of the framework installed already because of another application. The smart thing to do is provide a place where they can download the framework if they don't have it prior to starting your application. Maybe auto detect it?

:)

This post has been edited by Martyr2: 14 April 2009 - 10:53 PM

Was This Post Helpful? 0
  • +
  • -

#3 baavgai   User is offline

  • Dreaming Coder
  • member icon


Reputation: 7507
  • View blog
  • Posts: 15,558
  • Joined: 16-October 07

Re: Is .NET framework suitable for shrinkwrapped apps on the desktop?

Posted 15 April 2009 - 04:33 AM

View PostMeltingPoint, on 7 Apr, 2009 - 01:00 PM, said:

".NET has been designed primarily with Windows-based internet and distributed applications in mind. Other kinds of development, such as games and drivers, may or may not recognize the same benefits from .NET"


This is absurd. Please, find another book. :P

If a user has ever updated their system, then have .NET framework on it already. Many very standard tools from Microsoft require it to run. It's integral to all of Microsoft's newer offerings. Any new windows based application that doesn't use managed code is either supporting legacy code or as clueless as your author.
Was This Post Helpful? 0
  • +
  • -

#4 baavgai   User is offline

  • Dreaming Coder
  • member icon


Reputation: 7507
  • View blog
  • Posts: 15,558
  • Joined: 16-October 07

Re: Is .NET framework suitable for shrinkwrapped apps on the desktop?

Posted 15 April 2009 - 04:40 AM

View PostMeltingPoint, on 7 Apr, 2009 - 01:00 PM, said:

Also, I noticed that even nearly a decade after .NET hit street, framework penetration seems weak considering how much time has passed and there seem to be very few shrinkwrapped apps on the consumer desktop, again contrasted with how much time has passed.


I would disagree with this assessment.

What is interesting, in terms of "framework penetration", is that the web side doesn't do as well. ASP.NET rules inside the Enterprise, where is provides easy RAD solutions to problems. However, for applications exposed to the Internet, Apache is still preferred and that usually means PHP, or Perl, or Python, or something that runs well on Linux.
Was This Post Helpful? 0
  • +
  • -

Page 1 of 1