CodeGuru Home VC++ / MFC / C++ .NET / C# Visual Basic VB Forums Developer.com
Results 1 to 13 of 13

Thread: .NET madness

  1. #1
    Join Date
    Oct 2000
    Posts
    212

    What is Visual C++ .NET?

    I've been taking a look at Visual Studio .NET 2003 and found microsoft have taken leave of their senses.

    When I first saw Visual Studio C++ 6, I was puzzled, because its not visual as you may be lead to believe by the title.

    Now VS .NET is on us with VC++ .NET, VB .NET VJ .NET and google of other aledged .NET technologies the scene has become a real can of worms.

    How does visual C++ compare with visual C++ .Net and just C++

    What a mess microsoft .NET have created.


    http://www.olagam.com/tech1/visual-studio-net.htm

  2. #2
    Join Date
    Jan 2002
    Location
    Scaro, UK
    Posts
    5,940
    What mess ?

    Firstly, VC 6 is a C++ compiler/linker with a UI. If you want a truly graphical user interface and don't want to get your hands dirty then use VB and go away.

    Secondly, VC++.NET is just (guess what -) a C++ compiler/linker with a UI. The compiler has been (allegedly) improved but basically that's all it is.

    The compiler will compile managed (.NET) code, or native (ordinary C++) code.

    C# and VB.NET are different languages, with different goals to C++.

    So I say again - what mess ? It's perfectly simple to me.

    Darwen.
    www.pinvoker.com - PInvoker - the .NET PInvoke Interface Exporter for C++ Dlls.

  3. #3
    Join Date
    May 2000
    Location
    KY, USA
    Posts
    18,652
    [Merged threads]

  4. #4
    Join Date
    Oct 2000
    Posts
    212
    The compiler will compile managed (.NET) code, ...

    managed .NET code, what in hells name is managed .NET code as opposed to .NET code?

    What is it with microsoft, is a version number not good enough they have to introduce meaningless names like .NET

  5. #5
    Join Date
    May 2000
    Location
    KY, USA
    Posts
    18,652
    Originally posted by kogg
    managed .NET code, what in hells name is managed .NET code as opposed to .NET code?
    Well...quite obvious...it is managed... On a more serious road...managed code means that it will be run by the CLR (Common Language Runtime), thus managed. It is the same like with Java. Unmanaged code is the same you are writing now-a-days with your Visual Studio 6.0.

    Do not take this as critism, but did you actually read about the whole technology yet? It seems to me that you simply tried to do something out of the box and are frustrated that they did not succeed. In any case, you might want to take a look at the following site...

    Originally posted by kogg
    What is it with microsoft, is a version number not good enough they have to introduce meaningless names like .NET
    That is not only with Microsoft, however, .NET is a simple surname as well as NT 4.0 was...

  6. #6
    Join Date
    Oct 2000
    Posts
    212
    Do not take this as critism, but did you actually read about the whole technology yet?

    You're right I have tried using .NET out the box, however, my problem with it is there is so much information with .Net attached to it, its crazy. Microsoft are trying to take over the world with it.

    My prediction for the future for programming and c++ is that c++ will be gone or made such a pain to get things done programmers'll wish and beg for VB or C#. All Programmers will be programming MS products with MS visual basic or VC#. As programs focus more on quantity and less on quality they're set to become multifold blotted products, consumming many of a systems resourses doing very little in the process.

    Microsoft tell us "Do more with less", the reality is we are doing less with much more but in a shorter time span, something must give and that something is quality.

    Its ok for MS to tell people not to worry about over weight code, but MS don't buy the equipment that run it. Its us the consumer. Its us, the consumer that have to put up with them wasting our hard drive, RAM and CPU cycles/space and in the process our money. In the mean time MS gets even more wealthy.


    .........
    That is not only with Microsoft, however, .NET is a simple surname as well as NT 4.0 was...
    ...........

    NT means something, new technology, which it is compared with the Dos based systems. NT systems are completely different to Dos although they may look the same in the GUI. As has already been said VC++ .NET is simpley C++ with the name .NET tagged on the end. But what is .NET?

    .NET is a ploy to get you to think you are out dated using just plain old VC++. Its a mechanism to get you to buy this new .NET system. .NET is realy the technology of yestaday with a .NET tag and a new GUI.

  7. #7
    Join Date
    May 2000
    Location
    KY, USA
    Posts
    18,652
    Well...I can understand your level of being overwhelmed and thus frustrated on the other side. However, if it helps, you are not alone. The .NET technology pretty much adds a deep cut between the older and the newer world. Ask the Visual Basic guys, they know how deep the cut is, since they basically have to learn their language from ground up again.

    Same applies to the C++ developer, who wants to start writing managed C++. There is also a deep learning curve to master to actually understand the architecture and the layout of the .NET strategy.

    Although I agree that many developers will probably move on to Visual Basic and/or C#, I do not see C++ getting away. As always with interpreted code it has one problem...it is slow...and will always be slower than compiled code. The difference will of course decrease and at some point in time, you will not even notice. I simply think, that is the way human beings live...there will always be the research for a simpler, easier, faster etc. way.

    Platform-independency is of course a nice thing, however, there is always a question how many developers actually really develop one application for several operating systems, thus having the need for platform-independent frameworks. The more important thing is (at least in my eyes) that the .NET framework including its languages greatly simplifies the cost of the development. You do not need to look at the particular qualification of a programmer, it does not matter whether he/she can program in Visual Basic, C# or Cobol etc. - using the .NET framework everything will be compiled into the same intermediate code anyway. And that will of course reduce the cost of development.

    I do not want to say, that the .NET framework is perfect in all considerations, however, it is a start. There are still many things open, missing or not well designed. Of course it is being pushed by Microsoft very strongly...however, I for example still do 95% of my programming work with the old Visual Studio 6.0...

    Well...this answer has become longer than I thought it would be...well, I will stop here...

  8. #8
    Join Date
    Jan 2002
    Location
    Scaro, UK
    Posts
    5,940
    OK, so what do I consider .NET to be ?

    Well in short, not the end of native code for one (although I suspect Microsoft would like it to be).

    Native code is still much better at doing time efficient things, no matter how good the JIT environment is (Just In Time).

    Supposedly file reading and writing is faster than in C (from Kate Gregory's article on this very site).

    However, I would still presume (and until someone tells me otherwise) that .NET is built upon Win32 (and maybe MFC as well... although I'd doubt it) and therefore isn't truly integrated into the operating system.

    As such it suffers from performance hits.

    However that said, since its main job is to do UI as well as client/server mechanisms then this really isn't too bad.

    However, if you compare a Visual Basic 6 form firing up to a Visual Basic .NET form you will see a definate hit in the performance first time.

    Just In Time is all well and good, but if you're writing professional code then this just isn't good enough.

    It's even worse on older machines running windows 98.

    Don't get me wrong, I'm a great proponent of .NET. I think what it does is truly fantastic and what it's trying to do is even better.

    I would, however recommend that if you're writing a new application from scratch then you use .NET and get used to the assemblies etc unless you're writing time-critical servers or other time-critical applications.

    These do not include database access applications.

    Why do I recommend this ? Because the force which Microsoft has put behind .NET cannot be ignored and sooner or later it will become the norm so you might as well write all new applications in it. Otherwise in future you will (I'm certain) be forced to rewrite them.

    .NET is great : it's a considerably better attempt at MFC than MFC ever was. I remember complaining bitterly about the shortfalls of MFC when it first came around and truth be known it did take a while for it to get really worthwhile using.

    I'm sure .NET is the same thing. And if Longhorn is all that Microsoft say it is (for those of you who don't know it's the new operating system to replace XP) then .NET may well have direct OS links which will make it much faster.

    So in short new applications should use .NET unless there's a very good reason not to.

    For existing applications : I'd certainly get to know .NET (especially inter-op between native and managed code which isn't easy) but hold off to see what happens.

    In ten years time I'm sure we'll have all gone .NET and C++ will be considered in the same way as assembler was 10 years previous to today.

    Bear in mind we are in an industry which is constantly changing. It's amazing that we programmers constantly moan when things change and we have to learn new things.

    Good programmers learn and move on. Bad programmers get stuck and die out. That's the evolution of software engineering.

    Darwen.
    www.pinvoker.com - PInvoker - the .NET PInvoke Interface Exporter for C++ Dlls.

  9. #9
    Join Date
    Jan 2002
    Location
    Scaro, UK
    Posts
    5,940
    Oh and as a little post script (P.S.) :

    Good design of a program has always been, and will always be the thing which sorts out the great programmers from the wanna-bes.

    This applies equally in .NET as it does to object orientation.

    I used to hate VB 6.

    I love VB.NET.

    In fact I prefer VB.NET to C# - if I'm going to be writing in C++ why not use C++ ?

    In actual fact I write all my assemblies in managed C++ and then piece together in VB.NET.

    I can test all the main code using simple little VB.NET programs and it's truly wonderful to have such interopability between both languages just so long as I use well defined interfaces.

    Previously I used COM to acheive the same, but I ended up having to write IDispatch wrappers around my IUnknown interfaces which took time and was a pain. Now I don't need to bother.

    There is a huge amount that .NET has given us as developers, and yes it does take some learning but there's some great books out there and basically you ought to think of it as what Win32 programmers had to do when MFC came around.

    My hat is definately off to Microsoft. .NET is wonderful in every conceivable respect.

    Darwen.
    www.pinvoker.com - PInvoker - the .NET PInvoke Interface Exporter for C++ Dlls.

  10. #10
    Join Date
    Aug 2001
    Location
    Israel
    Posts
    60

    Thumbs down C++ vis C# / MFC vis .NET

    C++ ...The Budha

    C++ is a programming language for veriety of platforms:
    Embedded, UNIX, Mac, Windows & more...

    C++ has ANSI C++

    Lots of cross platform code is in ANSI C++

    MFC ...The Dharma

    MFC Is a C++ Application Framework

    C++ Exploring/Debugging MFC reveals Win32 Programming

    The Programmers ...The Sangha

    I am a C++ & VC++ (6) /w MFC.

    Knowing Win32 is enough for me to get into MFC

    & exploring MFC teachs me Win32 programming

    I can use non-Windows ANSI C++ Code easily


    BUTTOM LINE

    The big question is why should I need more for
    stand alone application programming? Why should
    I need .NET for? Why should I learn C# for programming
    Windows & C++ for programming other platforms?

    It sucks if Microsoft will force me to learn C# in order to
    know what goes on in .NET framework for stand
    alone application programming debugging.

  11. #11
    Join Date
    Jan 2002
    Location
    Scaro, UK
    Posts
    5,940
    They dont - you can write .NET in C++.

    Darwen.
    www.pinvoker.com - PInvoker - the .NET PInvoke Interface Exporter for C++ Dlls.

  12. #12
    Join Date
    May 2000
    Location
    KY, USA
    Posts
    18,652

    Re: C++ vis C# / MFC vis .NET

    Originally posted by Amit Gefen
    Why should I need .NET for? Why should I learn C# for programming
    Windows & C++ for programming other platforms?

    It sucks if Microsoft will force me to learn C# in order to
    know what goes on in .NET framework for stand
    alone application programming debugging.
    I have to repeat my earlier question again...do not take this as critism, but did you actually read about the whole technology yet?

  13. #13
    Join Date
    Oct 2000
    Posts
    212
    Yes it is true you can use C++ .NET, however it isn't given as much emthisis as C# & VB .NET. MS are clearly pushing C++ out into the cold.

    The two main languages for .NET are C# and VB, C++ is just another that can be used

    "I would still presume (and until someone tells me otherwise) that .NET is built upon Win32 "

    darwen - by the shear size of the .NET frame work I'd swear it was written in VB. I could install an operating system quicker than I could VS .NET.

    I was taking a look at some of the code produced by .NET and it is bizzar. They don't use commands with parameters anymore they use sentances and paragraphs. It won't be too long before MS have us writing chapters and books to program a simple application.

    Don't get me wrong I like the concept of .NET, but the tools suck.

    .Net reminds me of the car manufacturers 100 years ago. Cars were big, big engines, big heavy body's and big wheels - but they didn't do very much, 20 - 30 MPH tops.

    I stand by what I said .Net is a mess.

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •  





Click Here to Expand Forum to Full Width

Featured