-----------------------------------------------------------
New Message on BDOTNET
-----------------------------------------------------------
From: spprivate
Message 5 in Discussion
Well,
here are some interesting discussions happened in the same lines in ChennaiDotnet user
groups..some time back..
******************************
I am rather disturbed by some of the replies that I see here. Of course, my bias for
VB is well known, so in the case of some of the answers, we can simply agree to
disagree. But in the case of others, I see mistakes in understanding. Specifically,
these two points:
C# provides better maintainability and extensibility to the application for new
business requirement. Most important feature support for design patterns which keeps
it developer friendly across skillsets. Also Applicaiton object model design can be
reused if application required to be developed in other platforms like J2EE.
Not to disparage C#, but in what way does it provide "better" maintainability and
extensibility? By being fully object oriented? VB.NET has that. And what does "feature
support for design patterns" mean? By definition, design patterns are proven solutions
to specific problems in a given context. This has absolutely nothing to do with
features in a particular language. It may be argued that the majority of patterns (or
more accurately pattern frameworks) available today have been created with
object-oriented techniques. Again, VB.NET is fully object-oriented.
Here is the other one:
But, given a choice always go for C# because JIT Compiler generates more efficient IL
code for the code written in C# than in VB.NET. Performance wise C# is much better.
This one is just not true. When Visual Studio.NET 2002 was launched, Sanjay Vyas and I
had done a talk on Intermediate Language, and covered this particular topic in great
detail. One of the many points we made there, the one that is most pertinent to this
discussion, is this:
In general, default settings for VB.NET compiler are biased towards productivity and
accuracy (all mathematical operations are checked, default operators use
higher-precision types, some very neat debugging features are supported right down to
IL level). This is in keeping with the spirit of the BASIC (Basic) language. In
contrast, the same settings in the C# compiler are biased towards performance, in
keeping with the C family of languages. Both compilers can be passed options to change
these defaults.
The article pointed to falls victim to not understanding this fact. To be fair, he is
just giving the result of an experiment that he has done, and is asking for an
explanation. A one line explanation is that the VB.NET-generated IL is the debug
version, generated from Visual Studio, which generates NOPs for the debugger to be
able to single-step over Sub and End Sub statements. The final version would look much
like the C#-generated IL.
In short, C# applications will NOT be "much faster" than VB.NET applications. Not
because they are written in C#.
I am not really answering the original question, just pointing out some errors in the
replies that I saw.
*********************************
I would like to add my 2 cents to this. I agree with Raj saying that VB.Net is
equally powerful compared to C#; its just a matter of settings that you have to do.
Next thing is you have both VB.Net and C# resources. So you can divide the whole
project into good number of modules and Use one language for UI and underlying
components [Business layer/Data Layer] components with another language. I would say
use VB.Net for UI and C# for components. One advantage I am seeing here is VB.Net guys
are the guys who might have migrated from VB6 [These guys love creating fantastic UIs
:) ] and C# guys might be those who are migrated from C, C++ or Java [These guys love
playing with classes and objects :) ]. If you have ppl who are well versed with both
languages, put them into integration team :)
Hope that helps
Have a great day :)
R. Pooran Prasad
Itreya Technologies Pvt Ltd.,
Mail: [EMAIL PROTECTED]
Phone(Off) : 5200179/80/81/82/83 Extn: 42
Mobile: +91 98860 29578
-----------------------------------------------------------
To stop getting this e-mail, or change how often it arrives, go to your E-mail
Settings.
http://groups.msn.com/BDotNet/_emailsettings.msnw
Need help? If you've forgotten your password, please go to Passport Member Services.
http://groups.msn.com/_passportredir.msnw?ppmprop=help
For other questions or feedback, go to our Contact Us page.
http://groups.msn.com/contact
If you do not want to receive future e-mail from this MSN group, or if you received
this message by mistake, please click the "Remove" link below. On the pre-addressed
e-mail message that opens, simply click "Send". Your e-mail address will be deleted
from this group's mailing list.
mailto:[EMAIL PROTECTED]