Thread: About time Java gave in...

Hybrid View

Previous Post Previous Post   Next Post Next Post
  1. #1
    Lurking whiteflags's Avatar
    Join Date
    Apr 2006
    Location
    United States
    Posts
    9,612
    It's one thing to do it when learning data structures. It's another thing completely when learning an introduction to computer science. There's no reason to use C as an introductory language and algorithms and datastructures are language independent, so C holds no advantage here either.
    What is computer science other than this? I'm sorry but every foray into the computer science department for me was basically learning how to program.

    C does give you a reason to actually implement the data structures though. You might actually learn how they work and use them appropriately in other places, in other languages. Data structures might be language agnostic, but people sure aren't. In C++ for instance the wonder is always "why aren't you using the STL?" Personally I don't think people understand anything until they study it inside and out.
    Last edited by whiteflags; 10-04-2016 at 02:31 PM.

  2. #2
    Registered User
    Join Date
    Oct 2006
    Posts
    3,445
    Quote Originally Posted by whiteflags View Post
    C does give you a reason to actually implement the data structures though.
    C may give you a reason to do it - because it doesn't include an implementation by default. But that doesn't mean it's the ideal language to use when learning these things. The same algorithms and data structures can be implemented using modern C++, which can be far more intuitive for new programmers.
    What can this strange device be?
    When I touch it, it gives forth a sound
    It's got wires that vibrate and give music
    What can this thing be that I found?

  3. #3
    C++まいる!Cをこわせ!
    Join Date
    Oct 2007
    Location
    Inside my computer
    Posts
    24,654
    Quote Originally Posted by whiteflags View Post
    What is computer science other than this? I'm sorry but every foray into the computer science department for me was basically learning how to program.

    C does give you a reason to actually implement the data structures though. You might actually learn how they work and use them appropriately in other places, in other languages. Data structures might be language agnostic, but people sure aren't. In C++ for instance the wonder is always "why aren't you using the STL?" Personally I don't think people understand anything until they study it inside and out.
    Experience (from what I've gathered from people who teach C++; source: Cppcon) has shown that people tend to struggle less if you let them believe data structures are magical when you do intro into programming. When you've taught students the basics, THEN and only then should you venture into details. It means less scratching heads, better learning experience, students generally more happy and less giving up because it's too hard.

    The idea is teach 'em the basics first, then teach 'em the details in the more advanced follow-up courses. C can't do that because it forces you to focus on the details first because you have to explain pointers, how to implement and use a linked list, why we null-terminate strings and how we need to allocate space for strings, etc, etc. In modern languages such as Java or C# or C++, this is all done for you. It's magical. You don't need to learn the details until later when you're more ready for them. And that's why I disagree C is a good introductory language.

    If you want to learn C, do it as an advanced course, not an introductory one.
    Quote Originally Posted by Adak View Post
    io.h certainly IS included in some modern compilers. It is no longer part of the standard for C, but it is nevertheless, included in the very latest Pelles C versions.
    Quote Originally Posted by Salem View Post
    You mean it's included as a crutch to help ancient programmers limp along without them having to relearn too much.

    Outside of your DOS world, your header file is meaningless.

Popular pages Recent additions subscribe to a feed

Similar Threads

  1. Replies: 6
    Last Post: 03-08-2012, 06:12 PM
  2. my teacher gave it to us....
    By jacek in forum C Programming
    Replies: 3
    Last Post: 01-11-2010, 12:17 PM
  3. Java for real-time applications
    By zacs7 in forum A Brief History of Cprogramming.com
    Replies: 4
    Last Post: 08-26-2008, 06:34 AM
  4. gave it shot...it gave me an error!
    By LonelyPlanderWa in forum C Programming
    Replies: 3
    Last Post: 07-12-2002, 01:26 AM
  5. Please Heelp me ... I gave up
    By NANO in forum C++ Programming
    Replies: 14
    Last Post: 04-21-2002, 08:14 PM

Tags for this Thread