1. This site uses cookies. By continuing to use this site, you are agreeing to our use of cookies. Learn More.

Learning C# before learning C?

Discussion in 'C, C++, C#' started by yensidtlaw, Jun 9, 2013.

  1. yensidtlaw

    yensidtlaw Power Member

    Joined:
    Feb 25, 2013
    Messages:
    721
    Likes Received:
    474
    Occupation:
    "I play computers."
    Location:
    USA Baby!
    Hey all.

    I'm pretty new-ish to programming. I have basic knowledge of HTML, CSS, and about 5 hours learning C... I gave up because it was some shitty (but probably good for master minds) free course from edX. (I still think I'd be able to learn C, the course just wasn't good for my learning style). Anyway, I want to learn C#. Should I learn C before that though? Pretty confused here so some advice from experienced programmers would help.

    Cheers :)
     
  2. jntarnold

    jntarnold Junior Member

    Joined:
    Nov 10, 2010
    Messages:
    113
    Likes Received:
    35
    I think your good either way. Just pick one and stick to it. I learn pretty good by just looking at some working source code and modifying for my needs.
     
  3. TheBlackHatBud

    TheBlackHatBud Registered Member

    Joined:
    Dec 7, 2012
    Messages:
    68
    Likes Received:
    26
    Why don't you learn C++?
     
  4. MrBeastsOnToast

    MrBeastsOnToast Jr. VIP Jr. VIP Premium Member

    Joined:
    Dec 17, 2011
    Messages:
    921
    Likes Received:
    537
    Location:
    The Internetz
    Id stick with c# personally if it is your first language. Its not the best language in the world but is very versatile and easy to pick up.
     
  5. Junkfood00

    Junkfood00 Elite Member

    Joined:
    Sep 13, 2011
    Messages:
    1,949
    Likes Received:
    1,336
    Ah.. there is a quite big difference there. C# is an object oriented language while C is not. The concept of OOP (Object Oriented Programming) won't be easy to learn at the same time learning the basics, if you're not sort of gifted of course. Also with OOP, there comes program design and there follows some UML modelling.

    I would suggest to learn C as your first language then move on to other languages. Transition will be easy when you have the experience.
     
    • Thanks Thanks x 1
  6. TehEpidemick

    TehEpidemick BANNED BANNED

    Joined:
    Oct 31, 2011
    Messages:
    778
    Likes Received:
    181
    C# is way better for online stuff than C++. If you plan on online stuff go with c# for offline applications c++, as a general rule.
     
  7. garthor

    garthor Newbie

    Joined:
    Mar 24, 2013
    Messages:
    48
    Likes Received:
    13
    Well, as you are starting out programming I would tell you to stick to C#, PHP (even though it's a scripting language, it's a lot more powerful than what most of people think), or even Visual Basic. C/C++ and Java are stricter programming languages than the ones I listed above and therefore are harder to learn and actually developing something useful to yourself or to the masses.

    All languages are different in a way or another. Choosing a language comes down to know what you want to accomplish.
    If you plan to develop a bot to post to a couple sites I don't see why you should develop it on C/C++ instead of C# or Visual Basic.
    Many people here vote down on Visual Basic, yet it's amazing how many bots written on Visual Basic are leading the market.
     
  8. TehEpidemick

    TehEpidemick BANNED BANNED

    Joined:
    Oct 31, 2011
    Messages:
    778
    Likes Received:
    181
    Hes completely correct. I didn't know visual basic was an answer choice. I honestly think visual basic is easier to learn than c# and is more functional, however they are essentially the same. Visual Basic is just more lenient with new programmers. It depends what you want.
     
  9. yensidtlaw

    yensidtlaw Power Member

    Joined:
    Feb 25, 2013
    Messages:
    721
    Likes Received:
    474
    Occupation:
    "I play computers."
    Location:
    USA Baby!
    Thanks for your answers everyone. Really puts things into perspective for me. I don't really want to accomplish anything like building bots (well maybe at some point), I just wanted to begin learning languages and hopefully learn as many as I can. I'm using a mac. Is anyone else using apple? (Sorry Windows users). I got told that I can use xCode to program in C, are there any good YouTube tutorials for this? Cheers.
     
  10. sm754

    sm754 Registered Member

    Joined:
    Mar 21, 2012
    Messages:
    93
    Likes Received:
    38
    Occupation:
    Farmer
    Location:
    Azerbaijan
    If you're using a Mac to write C# you'll need to get Mono, which is a software package that allows non-Windows systems to work with the .NET framework.
    Aside from the syntax, working in C# and working in C are entirely different. A task like concatenating two strings is just one simple line of code in C#, while in C you have to reserve memory, make sure you won't accidentally crash the program by writing too big a string, etc. I doubt an internet marketer would even need to learn C, unless they were planning to write extremely optimized software; but in most cases, your bottleneck is going to be network speed.
     
  11. rootjazz

    rootjazz Jr. VIP Jr. VIP

    Joined:
    Dec 21, 2012
    Messages:
    617
    Likes Received:
    313
    Occupation:
    Developer
    Location:
    UK
    Home Page:
    As mentioned, just pick a language and stick with it. And practise practise practise. Programming, is IMO an art learned by doing, not reading. You won't remember what you read in a book in a year, but you will remember that bug that took you 3 days to fix Good luck And to answer the question, go with c#, unless there is a requirement to be so close to the hardware or something else, there isn't much point in learning C. You'll get work done a lot quicker (and bug free) learning C#.
     
  12. funkseo

    funkseo Newbie

    Joined:
    Sep 27, 2012
    Messages:
    20
    Likes Received:
    1
    No you don't need to learn C before C#.
    Start with C#.
    You are going to learn .net framework for C# this is the most important part but in in C you don't.
     
  13. theMagicNumber

    theMagicNumber Regular Member

    Joined:
    May 13, 2010
    Messages:
    345
    Likes Received:
    195
    If you are going to develop software for iOS than go with Objective C, it is OO too.
    iPhone/iPad/iPod apps are developed in Objective C and the developers are highly paid.
    For windows C#, there is no need to start with C. The syntax and the operators are similar.

    I am not sure why you are so "scared" of OOP, it is a relatively simple concept.
     
    Last edited: Jun 18, 2013
  14. yensidtlaw

    yensidtlaw Power Member

    Joined:
    Feb 25, 2013
    Messages:
    721
    Likes Received:
    474
    Occupation:
    "I play computers."
    Location:
    USA Baby!

    What?
     
  15. Pa1nstxr

    Pa1nstxr Newbie

    Joined:
    Jun 23, 2013
    Messages:
    19
    Likes Received:
    1
    Just start with c#. You don't really need knowledge of C.
     
  16. JP1016

    JP1016 Junior Member

    Joined:
    Sep 1, 2012
    Messages:
    120
    Likes Received:
    36
    Occupation:
    Student
    Location:
    BHW :-)
    Home Page:
    C is the mother of all language so programming in c can make other languages easy for you
     
  17. oozyluce

    oozyluce Regular Member

    Joined:
    Jan 26, 2013
    Messages:
    277
    Likes Received:
    231
    Occupation:
    IT Coordinator, Senior Network Administrator
    Location:
    http://www.gaben.tv/
    Home Page:
    Thats true, but thats like saying latin is the mother of all languages and it will make it easier for you to learn english (or any other language).

    Do you know how hard and archaic it is to learn latin?

    Start by learning English, then when you understand fundamentals a little better, go for Latin to get better understandings of the very core of the language.


    P.S: You can replace Latin by C and English by C# :)
     
    • Thanks Thanks x 1