VB vs. C

This is a discussion on VB vs. C within the A Brief History of Cprogramming.com forums, part of the Community Boards category; The code in the Linux kernel demonstrates how to write an operating system from the ground up. There are also ...

  1. #76
    Banned Troll_King's Avatar
    Join Date
    Oct 2001
    Posts
    1,784
    The code in the Linux kernel demonstrates how to write an operating system from the ground up. There are also office suits, games, and web browser source codes to learn by example. Sorry but I would rather learn and have something to show for it rather than hang my knowledge on a Microsoft interface that looks like crap.

  2. #77
    Banned Troll_King's Avatar
    Join Date
    Oct 2001
    Posts
    1,784
    Originally posted by -KEN-
    "The right tool for the right job", ever heard that? Now stop bickering, dumbasses.
    No, I'm a programmer, not an end user.

  3. #78
    Registered User
    Join Date
    Jun 2002
    Posts
    151
    >The code in the Linux kernel demonstrates how to write an operating system from the ground up. There are also office suits, games, and web browser source codes to learn by example. Sorry but I would rather learn and have something to show for it rather than hang my knowledge on a Microsoft interface that looks like crap.<

    I think you're confusing learning how an o/s works with writing application software for one. Nobody said you had to hang your knowledge on a Microsoft interface. Learning how an o/s works and how to use an API doesn't have to be a mutually exclusive activity.

    As I have already attempted to demonstrate, calling something "just an interface" is pointless as everything is more or less "just an interface" to something else. You may not get all the gory details but the WinAPI will give more insight into what the o/s is doing (take a look at something like "Programming Applications for Windows" by Jeffrey Richter), than programming using VB in point and click mode.

    And as the giver of clichés has mentioned not everybody is programming Windows to learn what is going on underneath (because either they don't care or already have an idea) so a higher level interface may be more suitable.

  4. #79
    TK
    Guest
    I don't think that you understand, and no not everything is an interface. My point is that with Microsoft you are dependant on an interface (Win32), you have no idea of it's implementaton and no control over it. Open source provides many more choices. You have access to the implementation, so therefore you are not dependant on an interface, in addition you have a choice of windows managers, you also have access to source code for high level applications like web browsers, file managers, office suits, email clients, etc. None of this is available for the Microsoft OS.

    All software written for the MS OS is dependant on the Win32 interface. Since you have spent all your time memorizing the interface you don't come out with any knowledge of the implementation, you have nothing to show for the time you have invested after they change the interface. It is important to understand the implementation of the software architecture, not just the interface, because you are building upon the constraints of the software architecture, the constraints effect your choice of high level solutions.

    In addition it is no easy task to learn and memorize the MS interface (Win32). That is a big reason why they have invented languages like VB and wrappers for "fake C++" like MFC. With .net they are using a framework (aka middleware component) to combine the different high level interfaces of MFC, ATL, VB, COM, etc all of which interoperate with Win32, into one single high level interface called the .net Base Class Library.

    There is nothing wrong with building applications on the MS Windows OS, however I am beginning to outgrow the operating system. My knowledge is becomming to extensive. I am not satisfied with being controlled by a vendor. There are a few books that atttempt to describe the Win32 architecture, however even those books can not reveal the implementation details. Not for the OS subsystems, not for the browser, not for he office suites or real time applications, etc. Sure you can learn things using the Microsoft OS however you will outgrow it once you enter topics such as design patterns and software modeling, framework development, etc. Now Microsoft can build almost anything that they want on their OS but nobody else can. I can see this. I want to avoid that dead end.

  5. #80
    Registered User
    Join Date
    Jun 2002
    Posts
    151
    >and no not everything is an interface

    Show me some code that isn't.

    >You have access to the implementation, so therefore you are not dependant on an interface<

    Ultimately you're dependant on the ISA of the host machine you're developing for (which is an interface).

    >in addition you have a choice of windows managers, you also have access to source code for high level applications like web browsers, file managers, office suits, email clients, etc. None of this is available for the Microsoft OS.<

    So? If you want to learn how it's done by looking at open source examples nobodies stopping you. This doesn't mean that you're forbidden from learning an API.

    >Since you have spent all your time memorizing the interface you don't come out with any knowledge of the implementation

    You don't have to spend *all* your time doing anything of the sort. Have you ever used an API?

    >It is important to understand the implementation of the software architecture, not just the interface, because you are building upon the constraints of the software architecture, the constraints effect your choice of high level solutions.<

    It's useful to have an understanding of what's happening (which is available in documentation provided by MS), it's not necessary to know the exact details. If you only wish to develop in environments where everything is completely transparent then you are going to have limited opportunities.

    >you have nothing to show for the time you have invested after they change the interface<

    You will become dependent (especially if you don't have an understanding of what is happening), but the fundamentals of the WinAPI have remained the same since Windows 1.0. That's the point of interfaces; they remain constant while the implementation changes. You could reverse this argument by claiming that time spent learning implementation details will be wasted when the underlying architecture becomes obsolete or the o/s is improved/upgraded.

    >Sure you can learn things using the Microsoft OS however you will outgrow it once you enter topics such as design patterns and software modelling, framework development, etc<

    If you wish to learn how an operating system works then you will be better off looking at something open source or even developing one yourself; but the buzzwords you mention are not tied to the underlying o/s implementation details and are abstract topics.

    >Now Microsoft can build almost anything that they want on their OS but nobody else can<

    Perhaps you can elaborate on this statement. What are the limitations of the API?

  6. #81
    Its not rocket science vasanth's Avatar
    Join Date
    Jan 2002
    Posts
    1,683
    VB was basically buils to make building interfaces faster.. It is a paion in the .......... to build a GUI user interface using C.. So here is where VB comes in.. But C is very usefull in developing system applications etc etc..

  7. #82
    Banned Troll_King's Avatar
    Join Date
    Oct 2001
    Posts
    1,784
    Nothing has changed. You can be dependent on a monopolistic vendor or else you can have freedom to understand the implimentation by choosing open source. That is the bottom line.

    I want to see the implimentation details for academic purposes and for enterprise use. I am not going to fool myself into blindly allowing the vendor to dictate every action that is performed on the operating system, and in addition use unfair competitive practices, perhaps even against me (especially if I am sucessful). I think that only unskilled and undertrained developers take the Microsoft OS seriously. Due to it's inception as a consumer OS and underground dealings with OEMs which I could care less about the system is popular, however it is almost totally useless to me for the work that I am doing. It adds no business value, or academic value after a certain point. It is extremely limiting and not to be taken seriously. The only work if any, that can be done on the OS is by being led by Microsofts many varied half baked development environments. It just doesn't work for me, I'm sorry but it doesn't work! The area of knowledge that I am now focusing on is taking me beyond the range of use that I can get out of the Microsoft OS. If you want to continue to use the Microsoft OS than go ahead, I am not stopping you, have fun, but it is useless for me.

  8. #83
    Registered User
    Join Date
    Jun 2002
    Posts
    151
    Right on, dude. Cheers for the laughs. Are you a Gnubie?

  9. #84
    &TH of undefined behavior Fordy's Avatar
    Join Date
    Aug 2001
    Posts
    5,789
    Originally posted by Enmeduranki
    Right on, dude. Cheers for the laughs. Are you a Gnubie?
    TK isnt the most consistant of chaps when it comes to his OS of choice.......

    Only a few months, he had ".NET Crusader" or something as his title and had the M$ flag as his avatar...........

    But I know he'll come back to Windows..........




  10. #85
    Registered User
    Join Date
    Jun 2002
    Posts
    151
    >Only a few months, he had ".NET Crusader" or something as his title and had the M$ flag as his avatar........... <

    Yeah, they say knucklehead extremists don't really care about the cause; they're just in it for the fight. Any ideology will suffice as long as it directly opposes another.

  11. #86
    Registered User billholm's Avatar
    Join Date
    Apr 2002
    Posts
    225
    Cmon you guys you shouldn't bash Microsoft that much. After all, she's the only company dedicated in bringing out an OS that will serve useful for the general uneducated public. As progammers, we should understand that. Programmers are supposed to be practical and sensible, not closed-minded.
    All men are created equal. But some are more equal than others.

    Visit me at http://www.angelfire.com/my/billholm

  12. #87
    $null
    Guest
    Originally posted by billholm
    Cmon you guys you shouldn't bash Microsoft that much. After all, she's the only company dedicated in bringing out an OS that will serve useful for the general uneducated public. As progammers, we should understand that. Programmers are supposed to be practical and sensible, not closed-minded.
    as programmers we can appreciate secure coding... you think xp is secure lmao try this in windows 2000 and on...

    Code:
    #include <stdio.h>
    int main()
    {
    for(int i = 0; i < 5 ; i++)    
    printf("\t\t\b\b\b");
    }
    its a simple screen buffer overflow that rebbots the computer... do you think microsoft had the common sense to fix this for the xp version of course not... nah they just trust in the fact their os is closed source and leave insecure code as they go... if ever we live to see the day ms becomes open source i predict about 10,000 bufferoverflows in the first month of the open source

    while we are at it... isnt it closed minded to not have open source?

  13. #88
    Registered User billholm's Avatar
    Join Date
    Apr 2002
    Posts
    225

    Red face

    >>while we are at it... isnt it closed minded to not have open source?<<

    Yes, Open-source is for the open-minded. But you must realize that not everything in the world is free.

    Microsoft is making a decent living by making products. But do you think open-source can get you enough money to ba able to get you through for one month? No one makes hardcore money in the open-source industry. Why? After you release it and get your initial pay, your software will become freely available so that you can no longer collect royalties. So what happens to you? After all the time you spent in your large project, you will be crawling out in the street begging for food.

    The next best thing is to open source is reporting the bug to the developer. That way, you can be a big help to the software community.

    Since you know an xp bug, you might as well report it to Microsoft. It may look like they will not recognize it but they will actually test it. That way you will be able to help everyone else in the world who uses xp, much like helping to develop open-source software. Now, any rebuttals?
    All men are created equal. But some are more equal than others.

    Visit me at http://www.angelfire.com/my/billholm

  14. #89
    the hat of redundancy hat nvoigt's Avatar
    Join Date
    Aug 2001
    Location
    Hannover, Germany
    Posts
    3,139
    >however it is almost totally useless to me for the work that I am doing.

    Excuse me, but can you tell us what work you are actually doing ? I thought you were a student.

    Once you code for a living, you will see that giving away what you have done for free is not what gets you money to pay your rent. And M$ is not a welfare organisation either. You can buy their product or you can ignore it. If your customers demand it, and you ignore it, you are in need of a new job.
    hth
    -nv

    She was so Blonde, she spent 20 minutes looking at the orange juice can because it said "Concentrate."

    When in doubt, read the FAQ.
    Then ask a smart question.

  15. #90
    Registered User
    Join Date
    Jul 2002
    Posts
    25

    Lightbulb Open-source

    If you were really determined you would know that the source code for the ms os has been 'released' *ahem* on several ..um.. less-cousher sites What's stopping you looking at the implementation there? Oops.. maybe I spoiled your fun - you just wanted to argue instead of actually "learning" something!

    Nah, that's a bit harsh though, sorry. Seriously, there isn't really anything stopping you getting the source code or learning the implementation of the win32 api - you just have to make the errort. Which, to be fair, you don't seem to be doing
    DiskJunky

Page 6 of 8 FirstFirst 12345678 LastLast
Popular pages Recent additions subscribe to a feed

Similar Threads

  1. Passing an Array of Strings from VB to a C DLL
    By mr_nice! in forum Windows Programming
    Replies: 9
    Last Post: 03-08-2005, 06:16 AM
  2. C with VB ?
    By khpuce in forum Windows Programming
    Replies: 2
    Last Post: 02-21-2005, 08:00 AM
  3. Passing parameters from VB to C++ through ActiveX DLL
    By torbjorn in forum Windows Programming
    Replies: 0
    Last Post: 12-10-2002, 03:13 AM
  4. VB Calling Convention?!
    By minime6696 in forum Windows Programming
    Replies: 6
    Last Post: 03-27-2002, 04:39 PM
  5. Sending a string to C++ from VB 6.
    By VirtualAce in forum C++ Programming
    Replies: 4
    Last Post: 08-21-2001, 03:28 AM

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21