• Open Menu Close Menu
  • Apple
  • Shopping Bag
  • Apple
  • Mac
  • iPad
  • iPhone
  • Watch
  • TV
  • Music
  • Support
  • Search apple.com
  • Shopping Bag

Lists

Open Menu Close Menu
  • Terms and Conditions
  • Lists hosted on this site
  • Email the Postmaster
  • Tips for posting to public mailing lists
Re: Beginner with Objective-C was Re: scanf...?
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: Beginner with Objective-C was Re: scanf...?


  • Subject: Re: Beginner with Objective-C was Re: scanf...?
  • From: Paul Lynch <email@hidden>
  • Date: Mon, 10 Apr 2006 19:05:56 +0100


On 10 Apr 2006, at 16:27, Ondra Cada wrote:

On 10.4.2006, at 17:10, Erik Buck wrote:

I actually disagree with many who say it is not necessary to thoroughly understand the C programming language before learning Cocoa. However, we may all be talking at cross purposes, and we may even be saying the same thing in different ways.

Most probably :)

I'll try to explain myself :)

(a) IMHO, for a start, just a passing knowledge of some important features is sufficient

I'm with Ondra on this one. You don't need to be a complete expert in all aspects of your environment before you can start; if you did, then nothing would ever get started :-). Erik's viewpoint is a purist, rather than entirely practical, one.


A long time ago, probably starting in 1992, I used to tell people on my NeXT course (I based it on John Glover's University of Houston one) that I could teach an experienced C programmer ObjC in ten minutes - and sometimes I did. You can comfortably cover everything that you see in far more than 90% of ObjC programs in that time. I think I was probably the person that originated that claim, back on comp.sys.next.programmer.

The catch in this claim is the mythical "experienced C programmer". There is a lot of lore and background knowledge involved in reaching that state, and I certainly couldn't teach those fundamentals in 10 minutes (and probably not in 10 hours). Conversely, a knowledgeable object oriented programmer could pick up both the essentials of C and ObjC in probably 20 minutes or less.

Being able to remember the details of every class in the Cocoa universe also isn't at all important - having a rough idea of where to look and being able to decode the documentation (including header files) is what really matters.

But the most important factor of them all is being able to think in objects. Even with an encyclopaediac understanding of ObjC, if you don't naturally think in objects, your applications will be disappointing. Reaching this understanding is a different process, and it seems to require the elapsed time to absorb the usual explanations of OO before your brain can deploy it; this is going to be measured in months, or even years, not in minutes.

If you study the beginner questions asked most often here, and in the webobjects-dev lists, the common factor is a lack of oversight; some of those beginners are very experienced CodeWarrior/C++ developers, not just complete newbies to programming. A lot of them I would classify as "you can't get there from here" questions, and I see that most of those either don't get answered, or get a RTFM response. You have to grok it, you can't just quote from the manual.

Paul
_______________________________________________
Do not post admin requests to the list. They will be ignored.
Cocoa-dev mailing list      (email@hidden)
Help/Unsubscribe/Update your Subscription:
This email sent to email@hidden


References: 
 >Beginner with Objective-C was Re: scanf...? (From: Erik Buck <email@hidden>)
 >Re: Beginner with Objective-C was Re: scanf...? (From: Ondra Cada <email@hidden>)

  • Prev by Date: Distributed Objects - setting protocol crashing GCC 4.0
  • Next by Date: Re: Drag and Drop from NSOpenGLView
  • Previous by thread: Re: Beginner with Objective-C was Re: scanf...?
  • Next by thread: Re: Beginner with Objective-C was Re: scanf...?
  • Index(es):
    • Date
    • Thread