What's new

What's the fastest way to learn a programming language. (1 Viewer)

MichaelG

Second Unit
Joined
Jul 10, 2000
Messages
322
Learning a language to do simple tasks is easy, learning a language to do complex tasks is difficult. It is true that it will be easier to learn a new language after you already know one. There aren't many programmers out there that really understand OO desgin and implementation. I think one of the best books out there is the Patterns book.

I don't think that C++ is a good first language at all, too complicated to just learn. Usually what happens is that newbies to C++ really just write C code and don't really understand how to take advantage of inheritence, operator/function overloading, when to use virtual constructors/functions. I do think that Java is a good first language because is forces you to learn to handle exceptions, and is a very strict OO language. Yes, the IO package is poor, but overall Java is a good way to learn good programming practices without spending a ton of time trying to debug pointers and things like that.
 

Shawn C

Screenwriter
Joined
May 15, 2001
Messages
1,429
Delphi is a VERY good starting languange. It pretty much slots in between VB and C++. Alot of people shun it immediately since it's "Pascal". "Isn't Pascal something you use in High School?" Yeah, Pascal is it's underlying syntax but it's not your father's Pascal.
That's like calling Visual Basic "just BASIC". It's not really BASIC anymore.
Delphi can do everything that C++ can (on Windows), short of some really esoteric type stuff.
A super-cool new feature of Delphi is it's ability to integrate UML models"
Unified Modeling Language
technology. Full support for class diagrams, tagged
values, stereotypes, associations (aggregates,
compositions), cardinality, visibility, mixed
transient/persistent elements and classes
Bold for Delphi integrates a powerful model-driven and n-tier business-object framework into
Delphi to establish a model-driven application design system that links the UML
environment in ModelMaker, Rational Rose,
®
or any XMI file directly to the application design
environment of Delphi and the VCL framework for Bold.
 

Max Leung

Senior HTF Member
Joined
Sep 6, 2000
Messages
4,611
Steve, virtually all C++ compilers support one form of the STL or another nowadays. Since 1997, at least. Thank goodness!
Problems arise mostly with embedded platforms though...some processors do not have a GNU C++ compiler port, so you're forced to use the vendor's proprietary compiler that likely has many bugs and does not support enough ANSI C++ features. But then again, you'd be tied to a proprietary platform anyways, so I guess that's a moot point!
Partial template specialization, however, is not possible on most mainstream C++ compilers nowadays, except for the latest GNU compiler. Visual C++ .NET can't grok that yet, although people have somehow managed to port(!) the new advanced C++ libraries (like the Loki library, and that other new library that is being pushed as the new standard C++ library of the future) to it.
MS claims they'll make the compiler more standards-compliant, but I'm not holding my breath. :D
C# might also be a good beginner's language: No pointers, no explicit memory management, etc. Java/C#/Delphi/Modula-2/etc. etc. are all good candidates!
 

Steven K

Supporting Actor
Joined
Jan 10, 2000
Messages
830
No pointers, no explicit memory management
These are specific reasons why I DON'T like C# and Java... Of course, a beginner might really appreciate not having to learn about pointers and deallocation of dynamically-allocated memory :)
 

Chris Bardon

Senior HTF Member
Joined
Jul 4, 2000
Messages
2,059
Just my 2 cents, but I learned most of my serious programming in C and C++ (but started with C-64 basic!), and think that they were great because they forced you to learn about how to deal with memory etc. Never been much of a Java fan because of the lack of pointers (and the whole VM hassle), but I'm actually interested in C#. It seems to have inherited more from C++, and I've heard nothing but good things about the new windows forms (as opposed to MFC).
 

Shawn C

Screenwriter
Joined
May 15, 2001
Messages
1,429
These are specific reasons why I DON'T like C# and Java... Of course, a beginner might really appreciate not having to learn about pointers and deallocation of dynamically-allocated memory
Well, that all depends on what type of programs you are writing. I've been programming for 10+ years and have never really been in a situation where I ever had to worry about such things. 99.9% of the applications that I write have to deal with financial data in a client/server style framework. Why have to deal with all of that when you are dealing with data from a database 99.9% of the time? Writing these style applications in C++ are a real pain, and really overkill, IMHO.
This is where Delphi, VB, and those sorts of languange really make things easier.
I guess that's just me. :) I believe that if you can write an application in language "Y" as opposed to language "X" in 3/4 of the time and with 1/2 the headaches while still giving the users what they want, then do it in "Y".
It all depends on the kind of programs you are writing for, and on what platform.
 

Max Leung

Senior HTF Member
Joined
Sep 6, 2000
Messages
4,611
I agree...sometimes it just isn't worth the hassle using a sledgehammer (C++) when all you're gonna do is serve webpages from a database.
Now, writing device drivers in Windows and embedded systems really doesn't work well in VB or Java. Dangit, gotta use C or C++ for that. Painful, for sure, but someone's gotta do it! :)
 

Steven K

Supporting Actor
Joined
Jan 10, 2000
Messages
830
class ActionLawSuit {
public:
bathroom();
virtual RealitySucks();
private:
Parts AreFunToTouch;
};
:D
 

Shawn C

Screenwriter
Joined
May 15, 2001
Messages
1,429
Now, writing device drivers in Windows and embedded systems really doesn't work well in VB or Java. Dangit, gotta use C or C++ for that. Painful, for sure, but someone's gotta do it!
UGH! No thanks!

About two years ago, Westwood Studios (Red Alert, etc..) was hiring someone to do some database work for them. I applied and they sent me their "standardized programmer's test". It had all kinds of complicated questions concerning algorithms in assembler, etc...You get the idea.

Look, I HAVE NO IDEA HOW THAT STUFF WORKS. I've just never had to do those sorts of things with the types of programs that I write. Database guys deal with SQL and stored procedure and triggers, etc. We just don't deal with those sorts of things. I didn't even bother trying to answer the questions.

That really sucked too, becuase I literally live down the street from them. I could have walked to work every day.
 

Users who are viewing this thread

Sign up for our newsletter

and receive essential news, curated deals, and much more







You will only receive emails from us. We will never sell or distribute your email address to third party companies at any time.

Forum statistics

Threads
357,052
Messages
5,129,622
Members
144,285
Latest member
acinstallation715
Recent bookmarks
0
Top