Forum Cross Platform with Xamarin


The Xamarin Forums have officially moved to the new Microsoft Q&A experience. Microsoft Q&A is the home for technical questions and answers at across all products at Microsoft now including Xamarin!

To create new threads and ask questions head over to Microsoft Q&A for .NET and get involved today.

VB.NET support

I know, there's an FAQ about this, but I wanted to put my vote in for it! I know VB6 very well and making the jump to allow me to make a multithreaded app. on iOS and Android with VB.NET would be very short. My worry is that if I spent months or even a year learning C# to do the same, you may come out with VB.NET compatibility and I'll have wasted all that time for no good reason. And please no one tell me "learning a new programming language isn't a waste of time", because it would be for me! :)

Your website states "Cross-Platform Apps. No Compromises.", unless you're wanting to use VB.NET. You would at least double your sales/user-base if you added VB.NET support. From reading the FAQ, it doesn't sound like it would be all that difficult. I'd buy immediately if it was available.

That's my 2 cents. Thank you for listening.



  • FZelleFZelle DEMember ✭✭✭

    Do yourself a favor and learn C#.

    I'm porting VB6 software to .NET now for 11 years and the companies that had their sw ported to were the once that strugled the most.

    The reason is that you see VB6 and think VB6, but everything is different.
    Those that changed to C# had to think DotNet and it seemed to be easier.

    And C# isn't that much different, it's just brackets instead of begin/end and a few other things.
    It's the concepts that you have to learn, for ex. real oop or generics.
    And that you have to do in both.

  • AlexWhiteAlexWhite GBMember ✭✭✭

    Having transitioned from VB6, to VB.NET then to C#, I know there are plenty of free tools to take you from VB.NET to C#, but the transition from VB6 to VB.NET all of the tools I have used are near useless. The best decision I made was dropping VB.NET completely and I had over 100 projects in VB.Net/VB6, I moved about 10 of them into C# as they needed updating.

    Best decision I made in my programming work was dumping everything VB*

  • moljacmoljac HRBeta ✭✭✭

    I was never VB dev (OK wrote 2-3 "apps") and I was never java dev (but wrote few java apps).
    Yes I miss xml-literals for some proofs-of-concept in c# like VB has, but that's it.

    Right now in our team there are 3 junior devs coming from different backgrounds (objective-c, c, c++) and I needed almost 2 years to convince them that language itself is really tiny bit of programming, that the most of the effort is in grasping APIs, libs, changing SDKs the big guys make every few months...

    I did some presentations about Mono and usually there are some questions about
    My answer is, please do not just criticize or suggest - get involved and help...
    Benefits You have mentioned could be implemented...


  • CrazyDudeCrazyDude USMember ✭✭

    I hear what you're all saying, but 10 years ago I tried learning C++ and I gave up in a week. It was just way too much for me. Back then I thought VB6 was crap because so many crappy apps were coded in it. Then I saw a nice professional app done in it and that proved to me it was the way for me to go. Even some of the complicated VB6 code is too difficult for me and I have to pay others to do parts of it for me, depending on what it is. I looked at some simple C# code in a tutorial the other day just to see what it was like and my head was about to explode. I'm not a "real programmer", but my VB6 app has made me about $1mil over the years and I'm wanting to make a simpler version of it for Android, iOS and maybe eventually Win8 Metro. I'm one of those people who have a good idea, and know how to make a good GUI, but maybe not the coder mentality required for C#. I have a lot of VB6 back-end code that could easily be converted to VB.NET much easier than C#. It would probably take a year to convert to C# and many $thousands$, not to mention the massive learning curve. I estimate it may take the Xamarin developers a couple months or so of solid work to include VB.NET, something they plan to do anyway. I'm just wanting to make it known that it would be huge for people like myself.

    I've been using VB6 for 10 years now, so my brain is pretty used to the way VB works. VB.NET is somewhat different than VB6, but nowhere near C#. If Xamarin supported VB.NET, I could probably have a mobile app working in 3 months or so. Trying to convert all that to C# and learn C#? I barely have a life now! Not to mention the fact I would also need to continue to work in VB6 along side it for my native Windows app. Imagine trying to move back and forth throughout the day/week between C# and VB6. I'd probably go insane. Both C# and VB.NET are compiled to the same bytecode, so why can't I choose between either language for what I want to do?

    The thing is, the Xamarin FAQ says "We have not established an ETA for this functionality yet, but we are looking at adding support for Visual Basic on upcoming versions of Mono for Android." The open source Mono Project page says it supports VB.NET to a point, yet the commercial version does not.

    I hope this helps you understand my situation a little better and why I'm pushing for VB.NET support in Xamarin, rather than killing myself trying to learn C#.

  • AlexWhiteAlexWhite GBMember ✭✭✭

    I totally know where you are coming from having used all the languages you describe, I would say from experience the jump from vb6 to is much larger than the jump from to c#, once you are doing anything .net there are so many similarities between all of the languages.

    I made the jump to c# on the basis of 2 things, firstly one of the core things I was trying to do in a major project I was working on was porting a c++ program, it was much simpler to go c++ to c# than c++ to also I found that there was many times the examples of a c# way of doing something than a way, this is something you will come up against with, for example us MonoTouch developers find quite a few examples of how to do something in c#, but about 50% of the time for me I am looking at objective C examples and converting them to c#, you will find yourself doing the same once you get deeper into the platform.

    It is totally possible to get working in MonoTouch but I don't think it is as simple as it looks, this will take a couple of programmers a significant amount of time to deliver it and then there is the support issues of training everyone on two languages.

    There are lots of very good things about vb6 that I still think are very good, I still today write vb6 style code as I maintain a few access databases that will never be converted to anything else.

    Have you had a good look at VB.NET and C# once you line up chunks of code that do the same thing you will see that there are not that many differences {}'s, case sensitivity are the two biggest ones in my view.



  • CrazyDudeCrazyDude USMember ✭✭
    edited November 2012

    Thanks Alex, but what about going from VB6 to C#? See, that's what I'd have to do. I've barely ever even worked with VB.NET, but when I see sample code, it sure looks familiar enough! Isn't going from VB6 to VB.NET a lot easier than going from VB6 to C#? I've heard people tell me I might as well learn C# because it's not that different from VB.NET since they're both .NET. It sure doesn't look that way to me.

    And sure, if I was coming from C++, there's no reason to think about going VB.NET. But being a VB6 person all this time, it makes a lot of sense to me going to VB.NET.

    I know what you mean by case-sensitivity. Once I saw that, I was like "I'm screwed." And yes, I've looked at just If/Then comparisons in C# vs. VB.NET and even those are

    I saw this the other day comparing VB.NET with C# and it made me want to not even try. Take a look at that. Just reading the Switch clause comparison made me want to give up.

    Link to short & sweet comparisons between C# vs. VB.NET. I found this a very interesting read.

    I'm not wanting to start a C#/VB war here. I'd get beaten to a pulp! I'm just trying to show why I prefer VB and why it makes sense to me, and I'd hope many more people. Maybe this is a difference between "real programmers" (C++/C#/Objective-C) and the lesser people like myself who like the more verbose and seemingly easier-to-use VB. Or maybe I'm just stuck in my ways, but I see myself learning C# like trying to learn French, German or some other language. It's not an easy thing to do after 10 years in VBA/VB6.

    Don't forget including all the semicolons in those differences. :) But I now fear as if I'm sounding like a complainer rather than convincing anyone of anything.

    I wrote the Xamarin developers about the possibility of being able to code cross-platform in VB.NET and while they didn't blow me off, but I basically got "this is not expected in the near future".

    Also found this measurement of speed to function link interesting as well. It says that VB is almost twice more productive than C#, although for some reason it puts C++ a little higher than C#. But this also scares me from C#. I'm mostly a one-man-band right now. I'd have to learn a new language, which slows me down, and then once I've learned it, I'm creating software at half the speed I'm used to? How is that advantageous at all, except that Xamarin only supports C#? :(

  • FZelleFZelle DEMember ✭✭✭
    edited November 2012

    I would never trust these biased measurements, because they only show what they want it to show.

    Believe me, not a single developer I mett ( during the 11 Years I'm porting software to .NET ) that switched from vb6 to VB.NET alone was able to get the concepts of .NET right because he/she was allways thinking in non OOP vb6.

    And the guy that wrote the "10 reasons why is better"...
    If you are so narrowminded that case sensitivity is a mayor point, come on,
    there is some good reason for that, but you have to understand the basic principles C-type languages follow.

    And he seems to not even get the basic concepts of the case switch in c# ( and the fallthroughs ) either.
    3 + 4 show his lack of understanding the tools he uses.

    5 Shows again that he doens't know a thing, as with codesnippets you even only type prop [tab][tab] and get everything allready filled out.
    Or you use the build in refactoring tools, but that again would require to even start to understand the surounding.

    And in .NET not only C# arrays are for fixed data and dynamic data goes into list and co.
    But as you said that's off topic.

    For your VB6 code, nearly 80% of that has to be thrown away, because nearly everything in .NET ( C# and VB.NET ) is different.
    That starts with the way bigger framework where you don't have to reimplement everything on your own, goes over ADO.NET and everything else.

    Those new concepts will be the things you will strugle with, not that small part of the syntax.

  • AlexWhiteAlexWhite GBMember ✭✭✭

    the case sensitivity is easy to fix, just go with either upper (or preferably) lower case variable names throughout the project job done.



  • CrazyDudeCrazyDude USMember ✭✭

    Hey, sorry I've been away for a while here. I've just been working my tail off on Windows software here. I really want to do develop on iOS and Android though. I can learn C# if needed, but what it comes down to is that if I bust my butt learning C# all year and Xamarin comes out with VB.NET support soon afterward, I'm gonna be one angry little developer. :)

    So I guess instead of a promise TO support VB.NET, how about a promise from Xamarin NOT to support VB.NET so I know what I need to do? :) According to the FAQ, it sounds like a daunting task for the iOS side of things since they'd need to make a VB.NET compiler, right?

    Thanks to everyone who's replied about this, Alex, Frank, Miljenko. All of it really has helped.

  • KvlooverKvloover BEMember

    bumping this thread as a newling, I'm faced with a similar dilemma as I'm developing in for my company. But i want to try me own hand at some mobile apps through mono.

    I found this with google and was wandering if this means u can just develop in

  • CrazyDudeCrazyDude USMember ✭✭

    Unfortunately I think that only means you can make a VB.NET app that runs on Unix/Linux, but not on Android or iOS like we're hoping.

  • KvlooverKvloover BEMember

    Ye I ended up continueing my google search and found that the compiler for monodroid (or monotouch) needs the rework the mono compiler to work with other libraries etc.

    Just hoping it'll be out sooner than later :)

  • CrazyDudeCrazyDude USMember ✭✭

    Yeah, I'm afraid they won't add VB.NET support unless they find there's a lot of VB coders interested. So spread the word for VB'ers to post here and ask Xamarin for it. Because they need to be convinced it's worth the effort.

  • TonyLuggTonyLugg CAMember

    I've been a professional developer for 28 years, used C on Windows 286, embraced VB1 when it came out, switched to VB.NET in 2002, and have been building commercial software in VB.NET since then. I have created a sophisticated app in Windows Phone 7.5/8 all in VB.NET. I can program fine in C# (almost identical to VB.NET by the way) but my preference is VB.NET.

  • CrazyDudeCrazyDude USMember ✭✭

    That's interesting to hear Tony! I played with C# recently, but sure didn't find it almost identical to VB.NET. :)

    May I ask why you prefer VB.NET over C#? Is it faster to build in or?

  • KSNagarajanKSNagarajan INMember

    Will be more delighted if Xamarin provides support for VB.NET in all its products.

  • sanyo2sanyo2 RUMember

    Is it possible to compile most existing logic in and create new GUI in C#?

    Could you give a link to your another VB6 application to have a better idea ?

  • GuillaumeGirardGuillaumeGirard CAMember ✭✭

    One solution to reuse existing code could be to wrap it in a PCL from Visual Studio (Portable Class Library if you still never heard anything about it). This is the solution we plan to use.

    But this is not a complete solution since VB.Net is still not supported by Xamarin Studio... So you will face a problem when trying to edit your solution for the iOS part, specially for the views cause iOS designer is still not available in VS.

  • ChrisAChrisA GBMember

    I'd like to add another vote for supporting VB.NET.

    And I'm not an old VB6/VBA developer - I came to .NET when it was v1 was in beta, and started with C#. I'm very comfortable and experienced with OO development.

    I moved to VB.NET because at the time, the Visual Studio IDE was so much better - Intellisense and AutoComplete were far more effective.

    Generally I'm fairly happy programming with anything that does the job, but now that I'm developing using C# and Xamarin integrated with VS2013, it's clear that the C# IDE still has some way to go.

    I now write mostly in VB.NET (with Option Strict on, mind you!), because the IDE support is still better.

    I realise that the syntactic similarity of C# to Java and JavaScript reduces the C# learning curve if you come from a C/Java background, but the Visual Studio IDE is so good now that any arguments about verbosity are IMO extremely weak - there really isn't extra typing to do if you write in VB.NET.

  • SKallSKall USMember ✭✭✭✭

    One solution to reuse existing code could be to wrap it in a PCL from Visual Studio (Portable Class Library if you still never heard anything about it). This is the solution we plan to use.

    Do you have this solution working? I tried to reference a VB.NET PCL library from Xamarin.Android and the error message is "Microsoft.VisualBasic" not found from the Android runtime.

  • CrazyDudeCrazyDude USMember ✭✭

    Well I'd still love to have VB.NET support too. And maybe Microsoft would like it too. But unless Xamarin was inundated with VB.NET requests, it's really not worth it for them. Which makes sense, because as developers we usually implement features customers request most.

  • Sten2005Sten2005 GBMember

    I vote for VB.Net support too.

  • AlexWhiteAlexWhite GBMember ✭✭✭

    One thing that is worth mentioning, if you learn C# then you will understand ObjC examples, without the basic grasp of C# looking that those examples is going to be hard work. I am not knocking VB as I spent many years writing in it and still maintain a few access databases, but the two main languages now are C# and java, I know this because one of my friends recruits software programmers for companies and the VB requirement is very small compared with the other two, I would rather Xamarin focus on making what they already have better rather than be distracted with another language.

  • CrazyDudeCrazyDude USMember ✭✭

    That is a good point, but then working in ObjC & Java because we need to could be done on a more limited basis, rather than this HUGE jump from VB.NET or even Classic VB (VB6) to C#. I'd rather wait until I'm able to learn C# more at my leisure, after my mobile software takes off. :) And companies may not be looking for VB coders nearly as much as C#, but that's partly because Xamarin doesn't support VB.NET. If it did, I bet you'd see an increase. When I look at the newsgroup post totals, C# has 454K messages and VB.NET has 321K messages. That not a huge difference. It tells me VB.NET is alive and well despite efforts to kill it by certain C Sharpers.

  • I vote for VB.Net too. I can develop much faster in it than C#.
    Sorry, but I just hate to place the semicolon after each line and I still can't understand why we still have to do that in 2014.

  • ChristianGillChristianGill DEMember ✭✭

    I was developing VB.Net for several years.
    The time before VB.NET I mainly coded c++.
    Because of Xamarin I now switched from VB to c#.

    It was not to complicated to switch from to c#. It's really nearly the same thing ... at least in most cases ;-)
    Only the syntax is a little different.
    So don't be afraid from c#. It's quite easy and does nearly the same as
    Most c# developers talking bad about have never used

    Believe me ... I have expereince with both languages ...
    you can write good code in vb .net and you can write bad code in c# too.

    The one language isn't better than the other.
    They are just different. VB is a little more verbous and tries to hide code behind if possible.

    In the past years I have even found several thinks which are more elegant in vb than in c#
    Here are my favorite two things ...

    1. It's annoying that c# is still case sensitive!
      It doesnt make sense for me that BigVariable is different from bigvariable as a Variable Name.
      I think it's bad practice to create two different variables or function that are only different in upper/lower case.
      So if its bad practice why c# supports this behaviour?

    2. if i have a function without paramaters returning a value i can simple call it in vb without ()
      if i write
      vb simply calls the function and returns an int ...
      In c# i'm NOT calling the function but assigning the delegate adress to i ...
      In 99% of all cases thats NOT what the programer wants. you want i=GetValue() ...

    In vb .net you have to write i=address of getvalue if you really want the delegate ...
    If i write i=getvalue it's not important whether getvalue is a variable a constand a function or a property.
    So why the hell the programer has to care about ...

    And "Yes" it's annoying that you have to end a statement with ; in c# !
    The only case c# users doesn't think about it, is they are used to it ...
    I also think it doesn't make sense to have a ; as delimiter. VB doesn't needs it and and i have never missed it.
    I really think the VB Syntax is more useful. Placing _ at the end of the line if you want to continue in the next line instead of terminating a line with ;
    You have much more lines ending with ; than not ending.
    So it's better to mark the lines that will continue in the next line instead of terminating all others ...
    Like Getvalue() that's is a wrong default behaviour ...

    Casting in C# ...
    I hate it ... If i is and int and j is an double. Why i have to cast i=J?
    Yes they have different types ... and maybe there can happen an exception ... and yes thats bad practice.
    But what makes casting better ?!?
    VB tries to convert assignements more flexible than c#. I never experienced problems ... In most cases you simply have to call the damned convert routine by hand ... (And i would bet it's always the same ... you doesn't do anything else than vb ... but you have to code it by hand ...)

    There are of course some things which are in c# better ... but sometimes thats just a point of view.

    VB.Net hides for example designer generated code ... so this is good for a novice programer because most things you don't have to care about are invisible for you. In c# this code is always visible for the user. If you are completly new it's easier to understand. But i think that this is thre reason that most VB programers really doesn't understand what they are doing behind the curtain.
    An if there are problems with designer generated code they are helpless ...

    Threading? Delegates? Recursive classes, Interfaces ... Yes this is possible in VB but most VB Programers doesn't care about or understand ... They want easy results. And programing sometimes isn't easy ... (in every language)

    I guess that's why c# programers think bad about VB. It's not the programing language it's the attitude of most programers using vb.

    So at least here why i vote for vb support in xamarin ...

    I face the problem that in the years i programed in i've created tons of wrapper Classes which I have two port now from to c# when i want too use the windows libs in ios and android ...
    porting vb classes to c# isn't fun ...
    There are a converters in the web which really helps you a lot porting classes from vb to c#.
    (You can also try the other way if a c# developer wants to see how the same vb code look like :-)

    But porting code is a tedious work ...
    And you can't be sure that you don't code a mistake. It would be much nicer for me if i yould use the code without porting it. But that's nice to have.

    Xamarin rocks :-) even in C# without vb.

    If you don't have vb Code you have already written ... simply start with c# (you will be used to c# in a few weeks.)
    Simply give c# a try it's not more complicated than

  • CrazyDudeCrazyDude USMember ✭✭

    Thank you, I think you hit the nail on the head "Threading? Delegates? Recursive classes, Interfaces ... Yes this is possible in VB but most VB Programers doesn't care about or understand ... They want easy results. And programing sometimes isn't easy ... (in every language)"

    Not just "easy results", but quick results, without the need to worry about case-sensitive variables, semi-colons, casting, delegates, etc. And now with .NET, I hear execution speed is almost exactly the same whether the code's written in or C#. VB is a major part of .NET and it sucks I'll never be able to use it for cross-platform development.

    This thread was completely dead for 8 months. So while a couple votes now for in Xamarin is great, it's far fewer than what's required, which is an overwhelming amount of people chiming in. I've even posted this on a major VB forum, but they didn't seem to care. So I guess if they don't care, I don't care. I've been reserved to the fact I'm going to have to learn C#, and while people may say it's "easy" to make the jump from VB to C#, I see a lot of long posts like yours describing the differences. If it's so "easy", why can't Microsoft have a realtime converter so you can see C# and VB versions in split windows, and then it really wouldn't matter which language one developed in.

    I'm through trying to get Xamarin to support It's not going to happen and they've all but 100% agreed. It'd be nice if Xamarin could post and put a nail in this coffin once and for all so no one has to bother wasting their time.

  • FahimFahim AUMember, University

    I have just started trialling Xamarin in Visual Studio and I agree VB.Net support would have been great. I am finding it difficult to develop in C# as I have traditionally been a VB developer. I am sure there are as much as VB.Net developers as C#. Xamarin would go a long way, If they allow VB.Net support.

  • yemokuyemoku NGMember

    Where do we sign up to sign the petition for support? I believe there are more than enough people who would sign
    (ex VBA/VB6 - current

  • RolfBjarneKvingeRolfBjarneKvinge USXamarin Team Xamurai

    You can make your voice heard here:

  • CrazyDudeCrazyDude USMember ✭✭

    Maybe there are more users now who want this than there was when I originally posted this. So I apologize for my last gloomy post there. If there's real interest, I still would very much like to have VB.NET as part of Xamarin, I just wish it was already there. Because even if there started now and devoted a lot of resources to it, it would take at least a year to get there. That's one of the reasons I originally started this thread way back in 2012.

    I think it's good to post on, but also here. Xamarin won't do anything for just several people though. It needs to be thousands. So many that it keeps this thread perpetually at the top. Response needs to be overwhelming, not a smattering as it's been. Surely there are thousands of VB.NET and Classic VBer's (as yemoku mentioned) who want to develop on the most awesome mobile platform around. Don't only just post here and on uservoice, post on your favorite forum or blog about this and get other users to come to this thread & uservoice and make their "voice" heard. Otherwise, VB.NET and Xamarin will never happen.

    It doesn't seem anyone has started a Visual Basic thread on Any volunteers on that?

  • MichaelBothMichaelBoth AUMember ✭✭✭

    The problem you might come up against is that the majority of developers are willing to learn a new language when required, and the jump from VB to C# is about as small a leap as you can get in terms of 'new'. As a Xamarin Mac user, I've had to learn at least some Objective C to understand how to port code examples from that language into something I can use in C#.

    The solution to your problem is already there - learn C#. I think you'll find you can be productive from pretty much day one, and given you started this thread - what? - a couple of years ago, if you'd spend 15 minutes a day learn C# you'd already have 180hrs+ of experience in the language already.

    I would vote against adding VB.NET support, as I would prefer Xamarin allocate their limited resources to something more valuable to me (more Mac-based documentation, squashing bugs across Mac and the mobile platforms etc).

  • CrazyDudeCrazyDude USMember ✭✭

    Well sure, if Xamarin has that limited of resources like you say, then I'm against it as well. But they basically told me if there was enough interest, they'd do it. I would think they'd know better than you or I if they'd have enough resources to dedicate to such a project. Maybe someone from Xamarin could come in here like I asked previously and settle this once and for all? Does Xamarin have such limited resources and so many bugs to fix? Because if there's no way Xamarin would ever add VB no matter how many people were interested, I'd like to know now so I can decide to bother learning C# with my limited resources.

    As far as what you say about me learning C# by now, if you read previous posts by coders who use both C# & VB, they tell you they can code faster in VB. So if that's the case, why learn C# for software I develop commercially? I want coding speed and ease-of-use. The code output from VB vs C# is runs exactly the same speed. I don't even know why C# is more popular than VB. It doesn't make a lot of sense. If VB is such a bad language, why doesn't Microsoft just drop it instead of supporting it year-after-year? If an argument is what you want, I'm sure there's a lot of people here available to give you plenty.

  • AlexWhiteAlexWhite GBMember ✭✭✭

    Having come from the vb world many years ago I know both languages very well and still today write vba code to maintain a few big access databases. I moved over to C# for one reason it was the lack of VB examples compared to C#. It took a while to get my head round C# but I am really glad I made the transitition it helped me understand Java and a bunch of other languages eg objectc understanding these without learning C# would have been much much harder.

    IMHO xamarin should remain focused on C# and not be sidetracked getting vb up and running.

  • MichaelBothMichaelBoth AUMember ✭✭✭

    Does Xamarin have such limited resources and so many bugs to fix?

    All companies have finite resources. I don't see that it's worth their while developing VB support when the 'problem' for you is solved by doing what (IMO) any capable developer can do anyway - learn a new language. I mean, even all the .NET APIs would be identical (or close to it).

    In my experience if you can solve a problem by your own actions, and not have to wait for a software company to maybe solve it for you, then you should do it. Of course, feel free to keep waiting; but if you start learning C#, you could be coding and productive in the very near future, not to mention having another language 'notch' on your programmer's belt.

  • CrazyDudeCrazyDude USMember ✭✭

    I didn't say Xamarin had unlimited resources, but the way you explained limited made it sound like they were barely able to keep up with what they're doing. And if that's the case, great, don't bother with VB. And I'm not "waiting" around for anything. I'm working on software right now for Windows and I want to move to mobile at some point. I just wasn't looking forward to learning another language. But in the past year I've assumed that's what I'm going to have to do, so I was fine with that. But a couple people posted recently and I guess it got me fired up again. I say screw it. Can I just delete this thread and be done with it? Let's BURY VB.NET INTO THE GROUND SO I'M NO LONGER TEMPTED.

  • FahimFahim AUMember, University

    You should know by now, learning another language is not as simple as what you think. Sometimes, developers spend hours and days on learning and perfecting on how to troubleshoot and find solutions to issues from the language they already know. Just imagine the number of years they have spent working on a particular language to be a master of it. Therefore, C# developers only know a great deal about C#, but not much about VB.Net and vice-versa. There are several languages out there for a reason and each and every developer has their choice of how they understand each language.

  • AlexWhiteAlexWhite GBMember ✭✭✭

    Not true for me, I consider myself very proficient in C#, VB.NET, VBA, JAVA, C++, ASP, HTML happy to switch from one to another based on the project type, the spin up going from VB.NET to C# is minimal compared to the switching to/from the rest.

    VB.NET and C# are the same except for the syntax e.g. {}, they compile down to the same code eventually.

    The only thing I miss on C# from VB.NET is the WITH statement only because I am lazy lol.



  • SKallSKall USMember ✭✭✭✭

    My opinion is that having C++/CLI support would be much more beneficial than VB.Net. Being able to include C and C++ libraries with C++/CLI wrapper and compile them for Android, iOS & WP from Visual Studio would be huge whereas VB.Net doesn't offer any technical advantages over C#.

    As far as personal preferences go I do prefer the C syntax languages over the verbose languages like ObjC and VB. I just find them much cleaner and easier to read but I am sure there are those who find it the exact opposite.

  • rmaciasrmacias USBeta, University ✭✭✭✭✭
    edited December 2014

    ...... the spin up going from VB.NET to C# is minimal compared to the switching to/from the rest. VB.NET and C# are the same except for the syntax e.g. {}, they compile down to the same code eventually.

    I don't mean to start any flame wars, and I risk sounding condescending here, but this quote nails it in the head. Many .NET developers don't realize that C# and VB.Net are no more than syntax around the .NET Framework. Both use the same base classes, and abide by the Common Language Specification. You can write a language like LOL Cat Speak, but as long as it follows the CLS, it's no different than a C# or VB.Net under the hood. It's just the syntax that's different. Going from VB.Net to C# (or vice versa) is not difficult. If you get over the intimidation of curly braces and semi-colons, it's really not difficult to understand, really is no different than VB.Net under the hood. Write a HelloWorld app in VB.Net, and then in C#. Use Reflector to examine the IL code. You'll see that they are nearly identical.

Sign In or Register to comment.