Thread: a good decision?

  1. #1
    بابلی ریکا Masterx's Avatar
    Join Date
    Nov 2007
    Location
    Somewhere nearby,Who Cares?
    Posts
    497

    a good decision?

    hello all, i was wondering if i was right to choose C++ for my entire life in programming, now i wana ask you to tell me if anything is wrong with the concept i have about using C++,

    i hate being limited , i hate to waste my time on sth that cant be be used in many different situations, i love to know many things and thus be able to do many things, i love knowing lots of information that actually are useful !

    i chose C++ then , cause whenever i try , i have everything at hand to start any kind of project, reading C++, gives me the power that anything is doable , my existing knowledge wont be useless when i switch to different kinds of project!
    i can start coding a kernel , writting crossplatform applications , or simply making games, i can make system applications , , the C++ just gives me a whole lots of stuffs in one place.C++ is the language of making someones dream come true!
    there is no limitations, you are free to investigate to do it in your own ! no limitations , nothing !


    ok guys am i thinking rihgtfully? or its just worng ? guid me please
    tanx
    Highlight Your Codes
    The Boost C++ Libraries (online Reference)

    "...a computer is a stupid machine with the ability to do incredibly smart things, while computer programmers are smart people with the ability to do incredibly stupid things. They are,in short, a perfect match.."
    Bill Bryson


  2. #2
    Code Abuser
    Join Date
    Jan 2009
    Posts
    16
    >ok guys am i thinking rihgtfully?
    No you are not. C++ can't do everything (nor should you try to do everything with it), especially when there's other languages which may be able to accomplish what you're trying to do more efficiently. Not that there's anything wrong with learning C++, but keep an open mind and don't think that you can go through the rest of your career as a programmer only knowing C++ and nothing else.

  3. #3
    Unregistered User Yarin's Avatar
    Join Date
    Jul 2007
    Posts
    2,158
    So you want to know a language that can do everything that's possible??

    Learn Assembly.

  4. #4
    Registered User
    Join Date
    Dec 2006
    Location
    Canada
    Posts
    3,229
    Different languages are suitable for different jobs. You can do MOST things with C++, but many things can be done more easily with other languages. That's why most professional programmers know at least half a dozen languages.

    The first language is always the hardest to learn, because you are learning programming at the same time.

  5. #5
    C++ Witch laserlight's Avatar
    Join Date
    Oct 2003
    Location
    Singapore
    Posts
    28,413
    Quote Originally Posted by cyberfish
    The first language is always the hardest to learn, because you are learning programming at the same time.
    Yeah, and you might have to learn programming all over again if you learn a language that "naturally" uses paradigms that you are unfamiliar with. On the other hand, if you stick to languages in which you only use paradigms that are familiar to you, you might end up just learning new syntax and a few idioms, and this would not benefit your overall programming ability as much as learning a language in which your less familiar paradigms are more natural.
    Quote Originally Posted by Bjarne Stroustrup (2000-10-14)
    I get maybe two dozen requests for help with some sort of programming or design problem every day. Most have more sense than to send me hundreds of lines of code. If they do, I ask them to find the smallest example that exhibits the problem and send me that. Mostly, they then find the error themselves. "Finding the smallest program that demonstrates the error" is a powerful debugging tool.
    Look up a C++ Reference and learn How To Ask Questions The Smart Way

  6. #6
    Malum in se abachler's Avatar
    Join Date
    Apr 2007
    Posts
    3,195
    Quote Originally Posted by sorrofix View Post
    No you are not. C++ can't do everything
    You are wrong. C++ is turing complete, and therefore by definition can do everything. Since most other languages are written in C/C++ it therefore follows that those other languages cannot do anything that C/C++ cannot do.

  7. #7
    C++ Witch laserlight's Avatar
    Join Date
    Oct 2003
    Location
    Singapore
    Posts
    28,413
    Quote Originally Posted by abachler
    You are wrong. C++ is turing complete, and therefore by definition can do everything.
    Although that is literally true within the limits of what Turing completeness implies, I interpreted sorrofix's statement in a different light: you cannot use C++ to do some things as easily as you would with other programming languages, possibly even with the good use of libraries (and the converse is true as well).
    Quote Originally Posted by Bjarne Stroustrup (2000-10-14)
    I get maybe two dozen requests for help with some sort of programming or design problem every day. Most have more sense than to send me hundreds of lines of code. If they do, I ask them to find the smallest example that exhibits the problem and send me that. Mostly, they then find the error themselves. "Finding the smallest program that demonstrates the error" is a powerful debugging tool.
    Look up a C++ Reference and learn How To Ask Questions The Smart Way

  8. #8
    بابلی ریکا Masterx's Avatar
    Join Date
    Nov 2007
    Location
    Somewhere nearby,Who Cares?
    Posts
    497
    thank you all , i really appreciate that.
    so what languages do you recommend for a programmer to learn ?
    you know i chose programming , because i wanted to be creative, just make sth that really effects humans life! well you know i like system programming , i dont know why, but i think the only thing that can give me the power to do magics in all platforms is C++,
    you know i have no idea about the future ! i just dont want to waste my precious time and youth on sth that can be outdated! you know , as far as i know its more than 20 years that C++ is alive and kicking , and still new aspects of it power just appears .

    anyway, because i have no idea about how my future goes, im planning to focus on anything but cross platform, (by the way i hate java! ( i dont know why , but i kinda feels its just C++ wrapped in a new style and name! just worst! !)

    web programming hp
    application :!!? C++? what else? that is cross platform
    and i m just clueless , please tell me more about languages, if my point of view on programming is wrong!

    thank you all .
    Highlight Your Codes
    The Boost C++ Libraries (online Reference)

    "...a computer is a stupid machine with the ability to do incredibly smart things, while computer programmers are smart people with the ability to do incredibly stupid things. They are,in short, a perfect match.."
    Bill Bryson


  9. #9
    and the hat of int overfl Salem's Avatar
    Join Date
    Aug 2001
    Location
    The edge of the known universe
    Posts
    39,660
    Sticking with C++ is like saying "I've learnt to drive, and now I'm only ever going to drive a Mustang".

    Part of being a good programmer is knowing what each language is like and the kinds of problems people typically use that language to solve. That doesn't mean you have to learn all of the syntax for it, but just enough to be able to say "Yeah, I could use perl to solve that" kinda thing.

    Other aspects you can look at are design (http://en.wikipedia.org/wiki/Unified_Modeling_Language)
    If you can't create an effective design for large-scale programs, then you'll remain a cubicle grunt. At least you would be expected to be able to contribute and understand such design methodologies in the beginning, before being let loose to design your own system.
    Anything over 1K lines is an ideal time to start thinking about generating small design diagrams for.

    http://en.wikipedia.org/wiki/Source_control
    Knowing about this will certainly help when you get to working in teams of people.
    At least enough to check out, check in, branch and merge.

    Learn about testing, profiling, test coverage.

    Learn about Dictionary of Algorithms and Data Structures
    http://www.itl.nist.gov/div897/sqg/dads/
    Picking the right A+DS is critical to producing something which runs in an acceptable amount of time.
    Or being able to show that whatever is proposed just isn't going to happen before the universe ends.

    Learn about different methodologies, who knows which one you might end up working in.
    http://en.wikipedia.org/wiki/List_of...t_philosophies
    If you dance barefoot on the broken glass of undefined behaviour, you've got to expect the occasional cut.
    If at first you don't succeed, try writing your phone number on the exam paper.

  10. #10
    بابلی ریکا Masterx's Avatar
    Join Date
    Nov 2007
    Location
    Somewhere nearby,Who Cares?
    Posts
    497
    Quote Originally Posted by Salem View Post
    Sticking with C++ is like saying "I've learnt to drive, and now I'm only ever going to drive a Mustang".

    Part of being a good programmer is knowing what each language is like and the kinds of problems people typically use that language to solve. That doesn't mean you have to learn all of the syntax for it, but just enough to be able to say "Yeah, I could use perl to solve that" kinda thing.

    Other aspects you can look at are design (http://en.wikipedia.org/wiki/Unified_Modeling_Language)
    If you can't create an effective design for large-scale programs, then you'll remain a cubicle grunt. At least you would be expected to be able to contribute and understand such design methodologies in the beginning, before being let loose to design your own system.
    Anything over 1K lines is an ideal time to start thinking about generating small design diagrams for.

    http://en.wikipedia.org/wiki/Source_control
    Knowing about this will certainly help when you get to working in teams of people.
    At least enough to check out, check in, branch and merge.

    Learn about testing, profiling, test coverage.

    Learn about Dictionary of Algorithms and Data Structures
    http://www.itl.nist.gov/div897/sqg/dads/
    Picking the right A+DS is critical to producing something which runs in an acceptable amount of time.
    Or being able to show that whatever is proposed just isn't going to happen before the universe ends.

    Learn about different methodologies, who knows which one you might end up working in.
    http://en.wikipedia.org/wiki/List_of...t_philosophies
    many many thanks to you Dear Salem, i really appreciate it, thanks
    im on it .
    Highlight Your Codes
    The Boost C++ Libraries (online Reference)

    "...a computer is a stupid machine with the ability to do incredibly smart things, while computer programmers are smart people with the ability to do incredibly stupid things. They are,in short, a perfect match.."
    Bill Bryson


Popular pages Recent additions subscribe to a feed

Similar Threads

  1. In a game Engine...
    By Shamino in forum Game Programming
    Replies: 28
    Last Post: 02-19-2006, 11:30 AM
  2. Good books for learning WIN32 API
    By Junior89 in forum Windows Programming
    Replies: 6
    Last Post: 01-05-2006, 05:38 PM
  3. Good resources for maths and electronics
    By nickname_changed in forum A Brief History of Cprogramming.com
    Replies: 8
    Last Post: 12-22-2004, 04:23 PM
  4. what is good for gaphics in dos
    By datainjector in forum Game Programming
    Replies: 2
    Last Post: 07-15-2002, 03:48 PM
  5. i need links to good windows tuts...
    By Jackmar in forum Windows Programming
    Replies: 3
    Last Post: 05-18-2002, 11:16 PM