Jump to page: 1 2
Thread overview
Learning D
Sep 01, 2004
Clessy
Sep 01, 2004
Stewart Gordon
Sep 01, 2004
Sean Kelly
Preferred 1st language to facilitate learning D [was: Learning D]
Sep 01, 2004
Lynn A
Sep 01, 2004
Sean Kelly
Sep 01, 2004
Id
Sep 01, 2004
Joey Peters
Sep 02, 2004
Dave
Sep 01, 2004
clayasaurus
Sep 01, 2004
Berin Loritsch
Sep 01, 2004
J C Calvarese
Sep 01, 2004
Deja Augustine
Sep 01, 2004
John Reimer
Sep 01, 2004
Ant
Sep 01, 2004
Lynn Allan
Sep 01, 2004
Mr.Novice back !
September 01, 2004
Is there any genertic guide on actually learning D if you dont know any other programing language. Like D for dummies or something? It sounds like its a easier choice than C++ and it also seems like it would have much more portable libaries than C++ and its Windows based compilers.


September 01, 2004
Clessy wrote:

> Is there any genertic guide on actually learning D if you dont know any other
> programing language. Like D for dummies or something? It sounds like its a
> easier choice than C++ and it also seems like it would have much more portable
> libaries than C++ and its Windows based compilers.

http://www.digitalmars.com/d/overview.html

Who D is Not For

    * As a first programming language - Basic or Java is more suitable for beginners. D makes an excellent second language for intermediate to advanced programmers.

Well, D hadn't been invented when I started doing BASIC on the good old ZX Spectrum, so I'm not sure if I'd agree or disagree....

Stewart.

-- 
My e-mail is valid but not my primary mailbox.  Please keep replies on the 'group where everyone may benefit.
September 01, 2004
Clessy wrote:
> Is there any genertic guide on actually learning D if you dont know any other
> programing language. Like D for dummies or something? It sounds like its a
> easier choice than C++ and it also seems like it would have much more portable
> libaries than C++ and its Windows based compilers.
> 

my advice to you is first learn C, and then learn D. D is like C except a step upwards, more so than c++ is.

After you know C, you can goto www.dsource.org tutorials and ditigalmars.com/d to learn D.
September 01, 2004
clayasaurus wrote:

> Clessy wrote:
> 
>> Is there any genertic guide on actually learning D if you dont know any other
>> programing language. Like D for dummies or something? It sounds like its a
>> easier choice than C++ and it also seems like it would have much more portable
>> libaries than C++ and its Windows based compilers.
>>
> 
> my advice to you is first learn C, and then learn D. D is like C except a step upwards, more so than c++ is.
> 
> After you know C, you can goto www.dsource.org tutorials and ditigalmars.com/d to learn D.

I would advise learning another object oriented language.  Having
maintained code that was developed by someone who knew C, but tried
to throw some "objects" in there--you can cause more work for yourself
than necessary.  Learning the value of good object orientation will
help create more maintainable and modular code.  It's not impossible
to do with C, but its a lot harder to do it right with C.

Heck, I routinely have to work with atrocities written in Java because
the original author didn't know enough about good object oriented
design.

Once you get the basics down, the most difficult being the mindset,
you can judge whether a simple C style function or a class makes more
sense.
September 01, 2004
In article <ch4hma$287j$1@digitaldaemon.com>, Stewart Gordon says...
>
>Clessy wrote:
>
>> Is there any genertic guide on actually learning D if you dont know any other programing language. Like D for dummies or something? It sounds like its a easier choice than C++ and it also seems like it would have much more portable libaries than C++ and its Windows based compilers.
>
>http://www.digitalmars.com/d/overview.html
>
>Who D is Not For
>
>     * As a first programming language - Basic or Java is more suitable
>for beginners. D makes an excellent second language for intermediate to advanced programmers.
>
>Well, D hadn't been invented when I started doing BASIC on the good old ZX Spectrum, so I'm not sure if I'd agree or disagree....

Pascal is a good first language for procedural programming (it was created as a teaching language, after all).  Java is okay, though I think it depends on the person.  Also, I worry that learning a garbage-collected language first might make picking up C/C++ later more difficult (which may suggest D shouldn't be learned first either).  I think C++ is probably the most complicated language I've encountered, which may or may not make it a good first choice.  But I can think of a good intro book for C++: "Accelerated C++" by Andrew Koenig and Barbara Moo.  Between that and the comp.lang.c++ usenet group you would probably do pretty well.


Sean


September 01, 2004
In article <ch4gi7$27lb$1@digitaldaemon.com>, Clessy says...
>
>Is there any genertic guide on actually learning D if you dont know any other programing language. Like D for dummies or something? It sounds like its a easier choice than C++ and it also seems like it would have much more portable libaries than C++ and its Windows based compilers.

Here's an overview of the tutorial-type resources that I know of: http://www.prowiki.org/wiki4d/wiki.cgi?D__Tutorial

You might try starting here: http://www.dsource.org/tutorials/index.php?show_topic=Fundamentals

None of the tutorials are what I'd call "complete", but they might be enough to get started. You can request more examples, but it might be more effective to learn some C and then try learning D again.

Personally, I have limited C experience, but I've programmed some in BASIC, Pascal, FORTRAN, Java, and PHP. If you want to learn D, C is probably the best language to get you prepared.

jcc7
September 01, 2004
Clessy wrote:
> Is there any genertic guide on actually learning D if you dont know any other
> programing language. Like D for dummies or something? It sounds like its a
> easier choice than C++ and it also seems like it would have much more portable
> libaries than C++ and its Windows based compilers.
> 
> 


I would strongly recommend going through some C tutorials (avoid C++ at this point) until you feel comfortable with the basics such as working with functions, the compile/link build system, using the standard C library, etc.

Once you're able to write small apps in C without having to constantly reference a tutorial, then you would probably have enough of a grasp of programming in general to take a look at D.

However, it's important to heed what other people mentioned and spend some time learning good Object-Oriented Programing techniques as knowing the language and knowing how to use it well are two very different things.  Something that might help would be to learn C and then learn D.  While you're learning D, don't even bother with objects, just stick to C-style programming as you learn the language.  While you're doing that, however, do a google search for a few articles on object-oriented programming and really try to understand how it works and when and why you'd use it.

Good luck,

-Deja
September 01, 2004
From The WB:
>http://www.digitalmars.com/d/overview.html
>
>Who D is Not For
>
>     * As a first programming language - Basic or Java is more suitable
>for beginners. D makes an excellent second language for intermediate to advanced programmers.

<alert comment="D newbie who is NOT advocating Javascript and is VERY IMPRESSED with D>

The last several times I've been asked about "What is a decent very first programming language?", I've found myself recommending Javascript. IMHO, it has these advantages:

* less to learn to get "Hello, World" to show up
* fewer tools to learn and setup
* often immediately useful for work or school
* often advantageous for career advancement
* syntactically/semantically somewhat like C and D
* reasonably well designed
* somewhat "object based"
* vast resources, especially sample code and co-workers
* FUN! It's cool with immediate feedback to see a webpage "come to life" in a
browser window as you made changes.

BTW, this thread has the potential for straying from something that is helpful to the original poster. Should this sub-thread be renamed to something like: "Preferred 1st language to facilite learning D"

</alert>



September 01, 2004
> 
> I would strongly recommend going through some C tutorials (avoid C++ at this point) until you feel comfortable with the basics such as working with functions, the compile/link build system, using the standard C library, etc.
> 
> Once you're able to write small apps in C without having to constantly reference a tutorial, then you would probably have enough of a grasp of programming in general to take a look at D.
> 
> However, it's important to heed what other people mentioned and spend some time learning good Object-Oriented Programing techniques as knowing the language and knowing how to use it well are two very different things.  Something that might help would be to learn C and then learn D.  While you're learning D, don't even bother with objects, just stick to C-style programming as you learn the language.  While you're doing that, however, do a google search for a few articles on object-oriented programming and really try to understand how it works and when and why you'd use it.
> 
> Good luck,
> 
> -Deja

This is very good advice, I think.  D is not merely an OOP language; it's features are quite useful without even taking its OOP set into consideration.  In fact, as far as procedural programming goes, D is a wonderfully fun language to learn.  I would have even preferred learning it before learned C.  But the process of learning C gives one more of an opportunity to understand basic low-level computer function.

Still, I would like to mention that those coming from object oriented C++ and Java backgrounds may find D OOP a little confusing.  D tries to imitate C++ type inheritance characteristics despite it's adoption of decidely Java-like features (interfaces, single inheritance).  The mix of ideologies can sometimes lead a new programmer to making some confusing and incorrect assumptions.

Heck, it might be best to just learn D without any prior background afterall.  All D needs then, is a proper language tutorial.
September 01, 2004
In article <ch4osa$2b7u$1@digitaldaemon.com>, Lynn A says...
>
>The last several times I've been asked about "What is a decent very first programming language?", I've found myself recommending Javascript. IMHO, it has these advantages:
>
>* less to learn to get "Hello, World" to show up
>* fewer tools to learn and setup
>* often immediately useful for work or school
>* often advantageous for career advancement
>* syntactically/semantically somewhat like C and D
>* reasonably well designed
>* somewhat "object based"
>* vast resources, especially sample code and co-workers
>* FUN! It's cool with immediate feedback to see a webpage "come to life" in a
>browser window as you made changes.

To be perfectly honest, I think the ideal first language depends on the student. My wife learns from the bottom up and was incredibly frustrated at having details left out of a C++ course she took recently.  She was so focused on the need to know *how* things were being done that she had a very hard time with even simple programming assignments.  And to make matters worse, the teacher was so devoted to his specific learning process that my wife was afraid to do any outside work to learn the material in a way that made sense to her.  I suggested she start over with a course on computer architecture and assembler and she's loving it, and I expect that she'll excel at the next programming couse she takes.  By the same token, some people learn better from the top down, and Javascript is a good language for this--it's very forgiving and allows the student to focus on program flow and boolean logic without sweating the other issues.  It's also important to note that Javascript applications can be run from the command-line in Windows, so its use is not strictly limited to web page design (and I think it would probably be better to leave the webserver layer out of a Programming 101 type course as it's just extra baggage that might confuse people).


Sean


« First   ‹ Prev
1 2