Sign in to follow this  
phil05

[.net] Interested in .NET = Some questions about it

Recommended Posts

Hi. I've been programming in C/C++/Win32 for a while, but now I've been quite interested in .NET. How is it doing for businesses? Are most of them swaying over to .NET? Is it worth investing time into if I plan on building software instead of games?

Share this post


Link to post
Share on other sites
Quote:
Original post by philvaira
How is it doing for businesses?

Major financial institutions are developing some of their mission critical software on .NET. In addition .NET will become platform of choice for developing desktop applications for Windows.
Quote:
Original post by philvaira
Are most of them swaying over to .NET?

No. Why would they? They have millions (and sometimes billions) invested in C++, Java and even Cobol. They aren't going to wake up one morning and decide to rewrite all their software. Such things gain momentum fairly slowly but there are more than enough .NET jobs out there right now and they're only going to increase.
Quote:
Original post by philvaira
Is it worth investing time into if I plan on building software instead of games?

Yes. Even if you plan to develop games this system is interesting to look into.

Share this post


Link to post
Share on other sites
Games are software [smile]
Regarding your question: There is and will be a noticeable shift towards .NET in business software for Windows. .NET nicely integrates with many languages and existing systems (through interop) and has a vast advantage in the field of UI-based RAD.
I don't know for web-technologies since I didn't use it for that, but generally .NET is suitable for that, too.

With the advent of Microsoft®&'s next generation OS, the significance of .NET will increase even more since it will be an integral part of the OS itself (rather than an option, which it is now).

So in my opinion - yes! .NET is definately worth spending time and developing business applications with.

Regards,
Pat.

Share this post


Link to post
Share on other sites
Quote:
Original post by CoffeeMug
Quote:
Original post by philvaira
Are most of them swaying over to .NET?

No. Why would they? They have millions (and sometimes billions) invested in C++, Java and even Cobol.
Then again, there's C++.NET (and C++/CLI coming down the pipeline), J#.NET and COBOL.NET, in addition to Perl.NET, FORTRAN.NET, etc, etc, etc.

.NET's language agnosticism is, in fact, breathing new life into skills that had been considered "outdated," and allowing the lifespan of certain products to be extended through porting to the framework without changing languages, or using existing code in other languages thanks to MSIL. This feature of .NET makes it particularly attractive.

Share this post


Link to post
Share on other sites
Quote:
Original post by Oluseyi
Then again, there's C++.NET (and C++/CLI coming down the pipeline), J#.NET and COBOL.NET, in addition to Perl.NET, FORTRAN.NET, etc, etc, etc.

That's certainly true, although from what I've seen it's not enough to convince businesses to invest into porting (which is still far from smooth). Many supermarket chains and hospitals still use pre-cobol systems and don't plan to switch. They fit their needs, they scale and they're much cheaper to maintain then to port. That being said, the technologies you've listed are still an obvious advantage and many businesses do choose to make the switch. I still wouldn't say most buisnesses are "swaying" to .NET though, but it's certainly an attractive technology to look into if you're looking for something to learn.

Share this post


Link to post
Share on other sites
Quote:
Original post by CoffeeMug
I still wouldn't say most buisnesses are "swaying" to .NET though, but it's certainly an attractive technology to look into if you're looking for something to learn.

I agree on that, esp. given the fact that (though there's also the Compact Framework) hardware requirements (it's Windows after all) might just be impractical for certain areas. Nevertheless there is a growing interest for the various advantages the platform provides. Porting sure is not an option in some cases but for newly developed solutions .NET surely is worth a look or two.

Share this post


Link to post
Share on other sites
My (Nov 2003 - Nov 2004) and my Next (Starting Dec 13) job are both in C# .NET, developing ASP.NET web applications for 2 different areas of the financial services industry. I am located in the Nashville, TN area, and during my recent job serch and recruiter talks I have found it very very easy to apply for jobs with my recent 1 year of C# .NET, SqlServer 2000, XML, ASP.NET and ADO.NET experience (those are the skills that most comonly sit together in a .NET job listing - in fact I had 3 contract jobs that all desired exactly that skill set ...), I have also found that these jobs are of 2 types, the type that was previously VB oriented (the minority) and desired previous VB 6 experience, and the previous micrsoft techs that went with it, and the type that we're C++ oriented in the past (the vast majority in my area) - which give minor preference to people which have MFC,COM,DCOM, etc experience (which I don't have, but didn't hurt me - cause .NET really is being used for nearly all new development at most of the shops I've interviewed with).

Now, just to be fair. .NET is replacing all of the non-.NET microsoft technologies - but is not replacing alternative technologies (such as Java/J2EE, or cross platform and embedded C++). Also, even though .NET is a really good platform (in my opinion), it does have its flaws, such as the fact that, just like Java, program load times are absolutely horrendous (due to the framework and JIT aspects) ... and this makes it completely unsuitable for writing very small performance critical apps (if you need to write a C++ preprocess and you used .NET, you would find the 15 second load times would kill your build times ... but for larger apps (like say Wordpad sized of bigger) or apps with no performance contrains (like calculator), or web apps (which can be hosted, cached, and kept in memory) .. then .NET is nice.

Share this post


Link to post
Share on other sites
Quote:
Original post by Xai
Also, even though .NET is a really good platform (in my opinion), it does have its flaws, such as the fact that, just like Java, program load times are absolutely horrendous (due to the framework and JIT aspects) ... and this makes it completely unsuitable for writing very small performance critical apps (if you need to write a C++ preprocess and you used .NET, you would find the 15 second load times would kill your build times ... but for larger apps (like say Wordpad sized of bigger) or apps with no performance contrains (like calculator), or web apps (which can be hosted, cached, and kept in memory) .. then .NET is nice.


You should look into using Ngen to pre-jit your assemblies and store them in the global assembly cache. It can decrease the load times of some assemblies by up to a factor of 5.

For more information on Ngen and other optimization guidelines, you can refer to this e-book.

Also, you might be amused to find that it takes about 20 minutes to build a Wordpad-like application using System.Windows.Forms. I saw it done on .NET TV once. It's actually not that big of an application.

Share this post


Link to post
Share on other sites
Quote:
Original post by Xai
Also, even though .NET is a really good platform (in my opinion), it does have its flaws, such as the fact that, just like Java, program load times are absolutely horrendous (due to the framework and JIT aspects) ... and this makes it completely unsuitable for writing very small performance critical apps (if you need to write a C++ preprocess and you used .NET, you would find the 15 second load times would kill your build times ... but for larger apps (like say Wordpad sized of bigger) or apps with no performance contrains (like calculator), or web apps (which can be hosted, cached, and kept in memory) .. then .NET is nice.


Performance is really only limited by the ability of the developer to write quality code. You can get as good performance as you need for 95%+ applications out there. Look at games. Games that run at 60+ fps have a LOT of code that is running possibly in each frame. There are multiple commercial games out there now that are written in C# and perform wonderfully (Arena Wars and Alexander: Tin Soldiers (I think those were the names)). Anyways, I'm just getting knit-picky here :).

Granted, if you are in the business of developing embedded systems (let's say like software that runs a pacemaker) than .NET is not for you. It's all about using the right tool for the job. For instance, while cross-platform code is becoming more possible with .NET thanks to the Mono Project, I would probably use Java, C++, or some other language if I absolutely needed to be cross platform. Like I said before, use the right tool for the right job.

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now

Sign in to follow this