Re: Structured Coding



Jesse Liberty<jliberty@xxxxxxxxxxxxxxxxxxxxx> 02/13/06 7:29 AM >>>
First, thank you for reading my books, and please do not read what follows

as defensive, but rather as an attempt to exchange views with a reader (and

thus to improve the next edition).

No problem, Jesse! Can I assume you googled your name, and that lead you
here? Or are you a comp.lang.cobol lurker? :-)

Before I go on, let me also mention that you can find an errata, a FAQ,
source code and a link to a free private support discussion on my web site

(http://www.LibertyAssociates.com) - click on Books.

I'll check it out. Thanks.

The book I am reading is _Programming C#_ (by Jesse Liberty) (hmm, looks
like I should have got it from amazon.com and saved myself $15.00...).
I
like the book less than I like the language. It seems like some more
advanced concepts (such as classes, etc.) are addressed earlier than
simpler
concepts (such as arrays and strings). Or maybe he just has a different
opinion on what is advanced and what is not.

It is not that I think that classes are "easier" or less advanced, it is
that I feel strongly that object oriented programming should be taught
classes-first, from the earliest opportunity; and everything that follows
should be within the context of classes and objects. In C# Arrays are
implemented with the Array class, and while they have traditional array
semantics, they also have properties, methods and so forth. So this was a
conscious decision.

Makes sense. As I said, I only have my own "learning" experience to base my
opinion on. If you've found that it's better to teach OO earlier on then I
don't think I can argue. To me, objects are somewhat more "advanced"
features of a language. But, as I say, that's very likely just because I
learned them last.

---
Frank Swarbrick
Senior Developer/Analyst - Mainframe Applications
FirstBank Data Corporation - Lakewood, CO USA

Still, I'm finding it fairly useful. Not for a beginning programmer,
though.

Absolutely, Programming C# assumes some experience with a related language

(C++, Java, etc.)


And it sounds like Learning C#_ is not either.

Ah, now that would be a failure on my part. Learning C# was targeted at
novice programmers, and in the next edition we go further to make that
explicit (adding more introductory material as well as quizzes, etc.)

Well, that latter was based on someone else's opinion. I have not read
_Learning C#_, and since I'm not a beginning programmer I assume I don't
need to.

Or perhaps C# simply is not a "first language" at all?

Oh, I think if written correctly (and I accept that so far I may have
failed
in doing so) C# makes a terrific first language, if used within the
constext
of Visual Studio 2005.

As I said, it not being my first language it's hard for me to evaluate
whether or not it would be a good "first language".

Thanks for your input!
Frank

.



Relevant Pages

  • RE: C# book for 16 yo?
    ... First I would suggest first learning Visual Studio.NET. ... Then I suggest 2 books to actually learn C# - Microsoft has a book called ... important to quality programming. ... language that combines all the best features of previous languages and is ...
    (microsoft.public.dotnet.languages.csharp)
  • Re: Lisp Ruby Scheme
    ... :> pure functional programming in Haskell and learning it in Scheme ... prototypical language to incorporate it, so if I wanted to really grok ... I would find me a compiler for Eiffel and start feeding it ...
    (comp.lang.scheme)
  • Re: Opinions on intro lisp books
    ... But Lisp is a little different, ... Some languages support one style of programming better than they ... Even if that weren't the case, I'm not sure that a language being a ... I don't believe that learning to program in CL requires more theory ...
    (comp.lang.lisp)
  • Re: Newbie (Followup)
    ... level language (as I believe I will end up learning more). ... know a little bit including the basics of pointers, ... Alas I am forced to learn a "language" that deviates from even the most basic principles of programming (from what I have seen so far/ ...
    (comp.lang.c)
  • Re: AspectJ: solution to Javas repetitiveness?
    ... The only real benefit of university in learning those languages ... Every language I have learned since I have learned ... fundamentals of good programming from a good teacher. ... Incidentally I am just teaching myself Ruby. ...
    (comp.lang.java.programmer)