473,597 Members | 2,726 Online
Bytes | Software Development & Data Engineering Community
+ Post

Home Posts Topics Members FAQ

questions about VB.NET, and uses in education

D H
Hi,
Hi, I was looking for your opinion on VB.NET - its long-term
prospects, etc. Sorry this is vague, but it's not meant to be a troll.
It's a pro-VB.NET post actually.

I haven't used VB or VB.NET really, but I have used Realbasic (a vb
clone), Java, C#, C, and Python.
I work in education, and I'd like something that is easy enough for
teachers and students to use to develop real, usable applications, not
just to learn programming for programming's sake. We used to use
Hypercard/Supercard for this kind of stuff, and Realbasic was ok, too,
but they are commercial, not cheap, and also lock you in to their
environment. Nowadays most in education use Java and flash.

I didn't really consider VB.NET before because it is also proprietary
and I didn't want to force teachers or students to have to buy Visual
Studio even if there is academic pricing. But now we have the free
SharpDevelop IDE as well as Mono's mbas and MonoDevelop IDE for other
platforms.

MY QUESTIONS:
But I'm wondering why there seems to be a lot of negative opinions about
VB.NET when it is very well designed and much easier to learn and use
than even python for example.
And secondly, is there a real waning interest in VB.NET, or is VB.NET's
long-term future in any jeopardy? Will VB.NET ever become an open
standard like C#? Is Microsoft going to do anything with .NET to
compete more with java and flash's features like easier animations,
better scientific/numeric libraries, and running in any browser (not
just IE)? Avalon seems too limiting.

Thanks for any feedback.
I have a lot of appreciation for the design of VB.NET now.
When I've looked at ways to make other open source languages like python
or boo easier for beginners, the ideas turn out to be the same as what
VB.NET uses. Things like using "as" for types: "i as String" (seen in
boo), case-insensitivity, real division (7/4=1.75 instead of 1 like in
python and C#), WYSIWYG form designer, etc.

So I'm listing some other nice features in the design of VB.NET and then
some drawbacks, but I don't see why VB.NET deserves so much heat.

NICE FEATURES OF VB.NET:
-you can use GUI designers and code completion when coding VB in an IDE,
including the free SharpDevelop IDE (you have nothing as good as this
for python or javascript for example)
-uses just = for both assignment and equivalence tests, instead of = and
==, which can cause errors in other languages.
-use of understandable English keywords like "MustInheri t" instead of
obtuse keywords like abstract or virtual. Although I'm sure this is a
significant drawback when you already have learned java or C#, and the
upper-casing of all keywords hurts readability a little I think.
-case-insensitive syntax (unlike C# or python), which definitely helps
beginners
-no semi-colons at the end of the line, no curly braces for blocks
-don't have to worry about perfectly indenting everything like in python
-flexible options that let you for example not have to declare every
variable first if you don't want to
-the My.Computer stuff added for .NET 2.0
-default values for parameters

DRAWBACKS:
-missing some advanced features that C# has, but many were added for
VB.NET in .NET 2.0. It even supports generics.
-sometimes difficult for classic VB programmers to switch to VB.NET
since it is quite different with its new OOP java-like features.
-my main reason for not considering VB.NET before was because it wasn't
open or free. But now we can use SharpDevelop or Mono's mbas and
MonoDevelop, although I believe its vb implementation is behind on .NET
2.0 features.
-The array index thing is a bit strange, like this creates a 5 item
array, not 4: Dim names(4) As String
-the popularity of VB and VB.NET seems to be waning. Book sales have
dropped a good bit over the past couple of years. People are switching
to C# instead of VB.NET I guess. It seems like most every .NET code
sample out there is in C# too instead of VB.NET.
-both VB.NET and C# have no type inference. If the compiler were open
and flexible we could add this ourselves (see the boo language for .NET
for example) as well as other useful new features that may take
Microsoft years to add if they add them at all.
-event handling is clunky, "AddHandler MsgArrivedEvent , AddressOf
My_MsgArrivedCa llback"

GENERAL DRAWBACKS OF .NET FOR EDUCATION
-can't run apps in any browser like java, only IE on Windows
-not as geared to animations and simulations like java and flash are
-Mono hasn't caught on as much yet as hopefully it will
Nov 21 '05 #1
2 1682
Hi DH,

I won't begin to answer all of your questions, but vb .net is here to stay;
it's robust, cutting edge, capable of anything, provides data access and oop
features as effective as found in any language, and MS will be supporting it
for a long, long time. It's not only in itself feature rich, but the 3rd
party support is remarkable. It is the future, no less than any of the
visual studio languages, namely c#.

HTH,

Bernie Yaeger

"D H" <no@spam> wrote in message news:u5******** ************@co mcast.com...
Hi,
Hi, I was looking for your opinion on VB.NET - its long-term prospects,
etc. Sorry this is vague, but it's not meant to be a troll. It's a
pro-VB.NET post actually.

I haven't used VB or VB.NET really, but I have used Realbasic (a vb
clone), Java, C#, C, and Python.
I work in education, and I'd like something that is easy enough for
teachers and students to use to develop real, usable applications, not
just to learn programming for programming's sake. We used to use
Hypercard/Supercard for this kind of stuff, and Realbasic was ok, too, but
they are commercial, not cheap, and also lock you in to their environment.
Nowadays most in education use Java and flash.

I didn't really consider VB.NET before because it is also proprietary and
I didn't want to force teachers or students to have to buy Visual Studio
even if there is academic pricing. But now we have the free SharpDevelop
IDE as well as Mono's mbas and MonoDevelop IDE for other platforms.

MY QUESTIONS:
But I'm wondering why there seems to be a lot of negative opinions about
VB.NET when it is very well designed and much easier to learn and use than
even python for example.
And secondly, is there a real waning interest in VB.NET, or is VB.NET's
long-term future in any jeopardy? Will VB.NET ever become an open
standard like C#? Is Microsoft going to do anything with .NET to compete
more with java and flash's features like easier animations, better
scientific/numeric libraries, and running in any browser (not just IE)?
Avalon seems too limiting.

Thanks for any feedback.
I have a lot of appreciation for the design of VB.NET now.
When I've looked at ways to make other open source languages like python
or boo easier for beginners, the ideas turn out to be the same as what
VB.NET uses. Things like using "as" for types: "i as String" (seen in
boo), case-insensitivity, real division (7/4=1.75 instead of 1 like in
python and C#), WYSIWYG form designer, etc.

So I'm listing some other nice features in the design of VB.NET and then
some drawbacks, but I don't see why VB.NET deserves so much heat.

NICE FEATURES OF VB.NET:
-you can use GUI designers and code completion when coding VB in an IDE,
including the free SharpDevelop IDE (you have nothing as good as this for
python or javascript for example)
-uses just = for both assignment and equivalence tests, instead of = and
==, which can cause errors in other languages.
-use of understandable English keywords like "MustInheri t" instead of
obtuse keywords like abstract or virtual. Although I'm sure this is a
significant drawback when you already have learned java or C#, and the
upper-casing of all keywords hurts readability a little I think.
-case-insensitive syntax (unlike C# or python), which definitely helps
beginners
-no semi-colons at the end of the line, no curly braces for blocks
-don't have to worry about perfectly indenting everything like in python
-flexible options that let you for example not have to declare every
variable first if you don't want to
-the My.Computer stuff added for .NET 2.0
-default values for parameters

DRAWBACKS:
-missing some advanced features that C# has, but many were added for
VB.NET in .NET 2.0. It even supports generics.
-sometimes difficult for classic VB programmers to switch to VB.NET since
it is quite different with its new OOP java-like features.
-my main reason for not considering VB.NET before was because it wasn't
open or free. But now we can use SharpDevelop or Mono's mbas and
MonoDevelop, although I believe its vb implementation is behind on .NET
2.0 features.
-The array index thing is a bit strange, like this creates a 5 item array,
not 4: Dim names(4) As String
-the popularity of VB and VB.NET seems to be waning. Book sales have
dropped a good bit over the past couple of years. People are switching to
C# instead of VB.NET I guess. It seems like most every .NET code sample
out there is in C# too instead of VB.NET.
-both VB.NET and C# have no type inference. If the compiler were open and
flexible we could add this ourselves (see the boo language for .NET for
example) as well as other useful new features that may take Microsoft
years to add if they add them at all.
-event handling is clunky, "AddHandler MsgArrivedEvent , AddressOf
My_MsgArrivedCa llback"

GENERAL DRAWBACKS OF .NET FOR EDUCATION
-can't run apps in any browser like java, only IE on Windows
-not as geared to animations and simulations like java and flash are
-Mono hasn't caught on as much yet as hopefully it will

Nov 21 '05 #2
DH,

The last week took something remarkable place in these newsgroups.
There is a crossposted message between VBNet and C# in this link.

http://groups-beta.google.com/group/...40dd84ef286452

The remarkable part is that I saw for the first time that C# adapts were
strongly defendable discussing about benefits of VBNet. (Although they keep
it with C#)

This thread above should give you a lot of information. I point you on my
first answer, which is not mine, however again a link to a message from
somebody who gave in my opinion on of the best (complete) answers about this
questions I have seen in this.

However, VBNet is the same as mature natural languages is, a not consistent
language. You can do (say) a lot of things in different ways, and you cannot
tell that one is better than another. For starting teaching simple
programming, I would therefore use a C derived language. It does not
directly confuse a student. Showing him/here this mature situation is in my
opinion however something that should be done in the same time, to give not
a wrong idea.

By the way, VBNet has (as C#) a free compiler in every framework. For VBNet
it is VBC.exe. You have than to create programs with by instance a notebook.
Probably does the IDE's that you mention use that one.

(The big benefit for me from VBNet above C# is its extremely helpful IDE as
it is in Visual.Studio.N et)

I hope this helps something,

Cor
Nov 21 '05 #3

This thread has been closed and replies have been disabled. Please start a new discussion.

Similar topics

25
3468
by: Brian Patterson | last post by:
I have noticed in the book of words that hasattr works by calling getattr and raising an exception if no such attribute exists. If I need the value in any case, am I better off using getattr within a try statement myself, or is there some clever implementation enhancement which makes this a bad idea? i.e. should I prefer: if hasattr(self,"datum"): datum=getattr("datum") else: datum=None
4
3091
by: Venn Syii | last post by:
I've searched all the forums but cannot find an answer to this question. I do the following: vector<MyClass*> myClassList; Later in the program I try to add to myClassList with a .push_back(...) I get an "out of memory" runtime error. I know I'm not out of memory because normal vectors such as vector<int> a, still work, and still work fine.
0
1298
by: Philip Nelson | last post by:
POSTED ON BEHALF OF DAVID OWEN (UK DB2 Users Group Chair) DB2 UK Education Conference   Westmead Hotel, Birmingham Tuesday 16th Wednesday 17th November 2004   in association with GSE   Dear DB2 user,   Mark your calendar for the UK DB2 Education Conference, supported by
50
4328
by: Jatinder | last post by:
I 'm a professional looking for the job.In interview these questions were asked with some others which I answered.But some of them left unanswered.Plz help. Here are some questions on C/C++, OS internals? Q1 . What is the use of pointer to an array? Q2 . What is the use of array of pointers? Q3 . What is the use of pointer to function ? Q4 . How to print through serial port? What is Flow Control(Xon,Xoff) ?
33
1780
by: earthlinkmail | last post by:
....you experienced programmers of C; did you start with C? What course of study did you pursue to get to where you are today? Would you suggest starting with REALbasic first for a n00b? I am completely new to programming and using a Mac and would like some input as to where to begin a career in programming. I know this is probably a somewhat undefined question, but would appreciate you input/advice. Thanks.
15
1128
by: WStoreyII | last post by:
First Question: Due to the hours of my job i can not go to school right now and i can't afford online classes. My questions is that i have learned a lot about .net and i am pretty sure that if i got the right books i could learn what i need to pass a test for the .net certification. Of course i have no practical experience. Which brings me to my question. How credible in the eyes of an employer would a certification be? Any other...
6
1553
by: antonyliu2002 | last post by:
Right now I put my VB code in the aspx pages. I would prefer to use codebehind, especially many of my VB functions may be shared across multiple aspx pages. I've tried a few pages with codebehind by follwing some examples on the Web and they work just fine. However, I am scared away from codebehind by such extenstions as "Handles MyBase.Load", "Handles Button1.Click" and "Handles MyBase.Init" etc. which we seem to have to add to the...
2
454
by: efrat | last post by:
Hello, I'm planning to use Python in order to teach a DSA (data structures and algorithms) course in an academic institute. If you could help out with the following questions, I'd sure appreciate it: 1. What exactly is a Python list? If one writes a, then is the complexity Theta(n)? If this is O(1), then why was the name "list" chosen? If this is indeed Theta(n), then what alternative should be used? (array does not seem suited for...
102
5392
by: dreamznatcher | last post by:
Hello, I'm considering a career switch to a more database-related job, but need help on a few questions and issues. I'm a Computer Engineering graduate and have always felt most comfortable creating database- driven applications, preferably for web portals. 1. What are the most viable career options for me out there? What profile do I fit in? 2. What is the current job market/salary situation for database
0
7894
by: Hystou | last post by:
Most computers default to English, but sometimes we require a different language, especially when relocating. Forgot to request a specific language before your computer shipped? No problem! You can effortlessly switch the default language on Windows 10 without reinstalling. I'll walk you through it. First, let's disable language synchronization. With a Microsoft account, language settings sync across devices. To prevent any complications,...
0
8281
Oralloy
by: Oralloy | last post by:
Hello folks, I am unable to find appropriate documentation on the type promotion of bit-fields when using the generalised comparison operator "<=>". The problem is that using the GNU compilers, it seems that the internal comparison operator "<=>" tries to promote arguments from unsigned to signed. This is as boiled down as I can make it. Here is my compilation command: g++-12 -std=c++20 -Wnarrowing bit_field.cpp Here is the code in...
0
8381
jinu1996
by: jinu1996 | last post by:
In today's digital age, having a compelling online presence is paramount for businesses aiming to thrive in a competitive landscape. At the heart of this digital strategy lies an intricately woven tapestry of website design and digital marketing. It's not merely about having a website; it's about crafting an immersive digital experience that captivates audiences and drives business growth. The Art of Business Website Design Your website is...
0
8262
tracyyun
by: tracyyun | last post by:
Dear forum friends, With the development of smart home technology, a variety of wireless communication protocols have appeared on the market, such as Zigbee, Z-Wave, Wi-Fi, Bluetooth, etc. Each protocol has its own unique characteristics and advantages, but as a user who is planning to build a smart home system, I am a bit confused by the choice of these technologies. I'm particularly interested in Zigbee because I've heard it does some...
1
5847
isladogs
by: isladogs | last post by:
The next Access Europe User Group meeting will be on Wednesday 1 May 2024 starting at 18:00 UK time (6PM UTC+1) and finishing by 19:30 (7.30PM). In this session, we are pleased to welcome a new presenter, Adolph Dupré who will be discussing some powerful techniques for using class modules. He will explain when you may want to use classes instead of User Defined Types (UDT). For example, to manage the data in unbound forms. Adolph will...
0
5437
by: conductexam | last post by:
I have .net C# application in which I am extracting data from word file and save it in database particularly. To store word all data as it is I am converting the whole word file firstly in HTML and then checking html paragraph one by one. At the time of converting from word file to html my equations which are in the word document file was convert into image. Globals.ThisAddIn.Application.ActiveDocument.Select();...
0
3937
by: adsilva | last post by:
A Windows Forms form does not have the event Unload, like VB6. What one acts like?
1
2409
by: 6302768590 | last post by:
Hai team i want code for transfer the data from one system to another through IP address by using C# our system has to for every 5mins then we have to update the data what the data is updated we have to send another system
1
1497
muto222
by: muto222 | last post by:
How can i add a mobile payment intergratation into php mysql website.

By using Bytes.com and it's services, you agree to our Privacy Policy and Terms of Use.

To disable or enable advertisements and analytics tracking please visit the manage ads & tracking page.