Professional Web Applications Themes

beginner's questions - Mac Programming

I love my mac! I can do anything on that I can do on a PC except for programming it. when I used Windows (i still shutter at the name) I could make applications via Visual Basic. It was an easy and friendly language. When I switched to the Mac though, I was lost. eventually I found RealBasic, but after reading into it a bit I soon realized that all the good applications were written in 'Cocoa' rater than 'Carbon'. I know that cocoa is really Objectice-C, a subset of C/C++, and I know that the Basic language is much ...

  1. #1

    Default beginner's questions

    I love my mac! I can do anything on that I can do on a PC except for
    programming it. when I used Windows (i still shutter at the name) I
    could make applications via Visual Basic. It was an easy and friendly
    language. When I switched to the Mac though, I was lost. eventually I
    found RealBasic, but after reading into it a bit I soon realized that
    all the good applications were written in 'Cocoa' rater than 'Carbon'.
    I know that cocoa is really Objectice-C, a subset of C/C++, and I know
    that the Basic language is much easier to understand than C/C++. Should
    I continue with my adventures into the Basic realm, or should I learn
    how to program in C/C++ and Cocoa?? What books/resources should I look
    at??

    Thank you
    --
    What you seek cannot be found by looking

    Indird Guest

  2. #2

    Default Re: beginner's questions

    Indird Cold <com> wrote:
     

    Actually you don't know what you think you know. Cocoa is an application
    framework, not a language. Objective-C is a language, and it is not a
    subset of C++ (it is a superset of C).

    The language is not the issue. It will take you one day to learn
    Objective-C; it's a very easy language, and the object-oriented concepts
    you learned working with REALbasic will help you. The issue is the
    framework, Cocoa; it is very big and powerful. I like to say it takes
    one day to learn Objective-C, one month to write your first real Cocoa
    app, and one year to stop feeling like a total beginner.

    The best way to start is to read Hillegass's book (now in its second
    edition). That, along with the online doentation, is all you need. m.

    PS On the other hand, REALbasic will feel a lot more comfortable to a VB
    user, and it will let you compile for Windows and Linux as well as Mac.

    --
    matt neuburg, phd = com, http://www.tidbits.com/matt/
    AppleScript: The Definitive Guide
    http://www.amazon.com/exec/obidos/ASIN/0596005571/somethingsbymatt
    Read TidBITS! It's free and smart. http://www.tidbits.com
    matt Guest

  3. #3

    Default Re: beginner's questions

    Actually, in this context the old claim that you can learn Objective C in a
    day is absolutely false. Yes, if you know C, you can learn Objective C in a
    day but Indird doesn't know C. I think we all tend to forget how much basic
    C code we write: not everything in a Cocoa program is a message. Even
    simple things like the organization of header and implementation files are
    going to be new. Hillgass' book isn't going to help with any of that.

    Having said that, C isn't all that difficult. Yes, if you want to get down
    to it, there are lot of subtle things and expertise is hard to develop but
    if you are going to be writing using Objective C and the Cocoa frameworks,
    you won't have to be a C expert, just have a working knowledge of the
    language.

    Jim Spencer
    Rochester, MN

    "Badges? Badges? We don't need no stinkin badges!"

    On 5/16/04 9:38 AM, in article 1gdvbnc.lkfyuy31oneoN%com, "matt
    neuburg" <com> wrote:
     

    James Guest

  4. #4

    Default Re: beginner's questions

    On 2004-05-16 11:58:45 -0300, James Spencer <com> said:
     [/ref]

    Wow! I guess I really don't know much about Cocoa at all. Thank you for
    the advice, I guess my first step is to larn C, thanks again....

    --
    What you seek cannot be found by looking

    Blair Guest

  5. #5

    Default Re: beginner's questions

    On Sun, 16 May 2004 15:36:36 GMT, Blair Macdonald <com>
    wrote: 

    And for that the best place is the original book "The C
    Programming Language" a model of a concise tutorial.

    But there is another way in the interim which is to learn the
    Mac's own scripting language Applescript(*). You can write Cocoa
    applications in Applescript using its own development tools.
    However I've not tried it and I don't know how much doentation
    there is, but as a feel for Cocoa it might work and is closer to
    VB than obj-C.

    (*)And that's a useful skill in its own right, since you can then
    automate your favourite Mac applications...

    Alan G.
    Author of the Learn to Program website
    http://www.freenetpages.co.uk/hp/alan.gauld
    Alan Guest

  6. #6

    Default Re: beginner's questions

    In article <2004051609460745356%nanacom>, Indird Cold <com>
    wrote:
     

    Don't worry, the feeling passes. You should become as comfortable in C
    as you are in VB. You will find, once the initial confusion passes,
    that you will understand what you are doing much better than you did in
    VB. Writing C is like operating a marionette; it takes inspiration,
    creativity, and fine motor skills. When you understand it, you can make
    an inanimate object truly come to life.

    Peter

    --
    -- ---<>--- --
    A house without walls cannot fall.
    Help build the world's largest encyclopedia at Wikipedia.org
    -- ---<>--- --
    Peter Guest

  7. #7

    Default Re: beginner's questions

    In article <com>,
    Alan Gauld <com> wrote:
     

    YMMV, but AppleScript is in my humble opinion a horrible language. It
    hides data types, but only to a degree, and while it has a
    HyperTalk-like readable syntax up front, it is a full-n OOP language
    under the hood. Sounds good in theory, but in this combination it just
    means that the code looks readable at first, but if you're doing
    something not quite trivial immediately becomes un-grammatical, and thus
    is actually *harder* to read. That's just my opinion of course.

    That being said, most Cocoa forums, tutorials and mailing lists concern
    themselves with ObjC, because

    a) cocoa was developed with ObjC in mind, all the others added Cocoa
    support later (like Java and AppleScript and Python and Perl and ...)

    b) the majority of Cocoa apps are written with ObjC, as is the majority
    of the sample code and most of the third-party classes available

    c) the lack of Cocoa-specific docs often forces users of other language
    to at least learn to read ObjC to be able to understand docs not written
    for their language

    d) a, b, c, and the other things above make people go for the
    best-supported language for use with Cocoa, making it a circular
    argument, sort of.

    So, if you want my advice, go with ObjC unless you already know one of
    the "bridged" languages and don't mind learning ObjC in addition to that
    so you can understand the more advanced docs and books and ...

    Just my $0.02
    -- Uli
    http://www.zathras.de
    Uli Guest

  8. #8

    Default Re: beginner's questions

    In article <2004051609460745356%nanacom>, Indird Cold <com>
    wrote:
     

    Not necessarily a good mindset to adopt. RealBASIC is a decent tool for
    a large subset of desktop applications.
     

    Not quite correct. Cocoa is a set of libraries written in, and for
    Objective-C. Bridges to other languages have also been made available by
    Apple and others.
     

    It's a superset of C and a peer to C++. Not a subset of either.
     

    There's nothing really _wrong_ with RealBASIC. I think you should choose
    a tool based on its applicability to your task, and knowledge is
    pragmatically a serious factor in determining applicability. So I
    wouldn't abandon RealBASIC in your case. I _would_ advocate
    investigating Cocoa, for the same reason that I would suggest someone
    get a set of hex wrenches to go along with their drivers.

    If you decide to go that way, absolutely start with The C Programming
    Language. Play around with that and get comfortable. Then look at
    Apple's online introduction to the Objective-C language, which is
    appropriately small. Once you're basically comfortable with the
    language, you can dive into Cocoa, and Aaron Hillegass's "Cocoa
    Programming For Mac OS X" is an excellent resource.

    --
    Standard output is like your butt. Everyone has one. When using a bathroom,
    they all default to going into a toilet. However, a person can redirect his
    "standard output" to somewhere else, if he so chooses. - Jeremy Nixon
    Gregory Guest

  9. #9

    Default Re: beginner's questions

    On Sun, 16 May 2004 19:48:29 +0100, Gregory Weston wrote
    (in article <comcast.net>):
     

    Also have a look at Stephen Kochan's "Programming in Objective-C" to go
    along with it. It teaches the Objective-C language, and the needed bits
    from C, without assuming any previous knowledge.

    Ian

    --
    Ian Robinson, Belfast, UK - <http://www.canicula.com>
    Soapbox - <http://homepage.mac.com/ianrobinson/index.html>

    Ian Guest

  10. #10

    Default Re: beginner's questions

    In article <2004051609460745356%nanacom>, Indird Cold <com> wrote:
     

    A few corrections:

    RealBasic is a reasonable way to go about making Mac apps.
    Using Cocoa or Carbon does not mean that your app will be inherently better or
    worse than others. iTunes and the Finder use Carbon, for example.

    Given that you already have VB background, I would continue with RealBasic at
    least until you familiarize yourself with concepts and tasks that might be
    unique to Mac programming; whether you want to use Carbon or Cocoa in addition
    or instead of RB later mainly depends on whether you believe they are more
    appropriate for the projects you are working on and, of course, whether want to
    learn them.

    hth

    meeroh

    --
    If this message helped you, consider buying an item
    from my wish list: <http://web.meeroh.org/wishlist>

    Miro Guest

  11. #11

    Default Re: beginner's questions

    "There's nothing really _wrong_ with RealBASIC. I think you should choose
    a tool based on its applicability to your task, and knowledge is
    pragmatically a serious factor in determining applicability."

    I'd agree with that - REALBasic is a fine language and development
    environment which I have used for several years. Although I now do most
    of my Mac programming with Cocoa, it has a *much* steeper learning curve,
    and I wouldn't recommend it for someone without a lot of time to spare.

    I would suggest that you give REALBasic a try first - I think you'll like
    it. If you later decide that it is not flexible enough, then you can
    always move on to Cocoa later - your time with REALBasic wouldn't be
    wasted as much of the knowledge would transfer over. I found that knowing
    REABasic made learning Cocoa easier - I often knew that there *should* be
    a way to do a certain task with Cocoa since I'd done it (easily) with
    REALBasic. This made it easier to motivate myself to go search through
    the doentation until I found it...

    And if you're looking for a REALBasic book, the one written by Matt who
    replied to your posting above is very well done (REALBasic the definitive
    guide).

    heliosnorf Guest

  12. #12

    Default Re: beginner's questions

    In article <t-online.com>,
    Uli Kusterer <de> wrote:
     

    A horrible programming language, yes. A handy scripting language
    though. For little things, what it lacks in structure and, well, that
    je-ne-sais-quoi, it makes up for in convenience. For little things.

    Peter

    --
    "The road to mediocity is filled | +------------------+
    with empty ketchup packets" | | AssumeGoodFaith. |
    --a hot sauce packet | +------------------+
    Peter Guest

  13. #13

    Default Re: beginner's questions

    In article <40a7bfe3$0$58824$gradwell.net>,
    Ian Robinson <com> wrote:
     
    >
    > Also have a look at Stephen Kochan's "Programming in Objective-C" to go
    > along with it. It teaches the Objective-C language, and the needed bits
    > from C, without assuming any previous knowledge.[/ref]

    IMO, "the needed bits from C" would be C, and every C programmer should
    have a copy of The C Programming Language.

    Once you know C, the actual language features of Objective-C (as opposed
    to what's provided by libraries) could fit on a trifold pamphlet.

    G

    --
    Standard output is like your butt. Everyone has one. When using a bathroom,
    they all default to going into a toilet. However, a person can redirect his
    "standard output" to somewhere else, if he so chooses. - Jeremy Nixon
    Gregory Guest

  14. #14

    Default Re: beginner's questions

    In article
    <com.client.newsread.com>,
    Peter Jaros <com> wrote:
     
    >
    > A horrible programming language, yes. A handy scripting language
    > though. For little things, what it lacks in structure and, well, that
    > je-ne-sais-quoi, it makes up for in convenience. For little things.[/ref]

    I think the part you like is Apple Events. I *love* AEs, but AppleScript
    on top of it is horrible. Apple should just get it done and license
    Aretha/Frontier or whatever it's called these days...

    Cheers,
    -- Uli
    http://www.zathras.de
    Uli Guest

  15. #15

    Default Re: beginner's questions

    In article
    <com.client.newsread.com>,
    Peter Jaros <com> wrote:
     

    Let me correct my previous suggestion. Even if they just added a few
    more sensible coercion handlers to AppleScript, it would receive a
    tenfold increase in manageability. Just get rid of those darned "can't
    make alias into string" messages etc, and find a way to get more
    consistency into applications' script terminology.

    Cheers,
    -- Uli
    http://www.zathras.de
    Uli Guest

  16. #16

    Default Re: beginner's questions

    On Mon, 17 May 2004 12:01:59 +0100, Gregory Weston wrote
    (in article <comcast.net>):
     

    Which is why my original post included the phrase "to go along with
    it."

    :-)

    Ian

    --
    Ian Robinson, Belfast, UK - <http://www.canicula.com>
    Soapbox - <http://homepage.mac.com/ianrobinson/index.html>

    Ian Guest

  17. #17

    Default Re: beginner's questions

    Alan Gauld <com> wrote:
     
    >
    > And for that the best place is the original book "The C
    > Programming Language" a model of a concise tutorial.
    >
    > But there is another way in the interim which is to learn the
    > Mac's own scripting language Applescript(*). You can write Cocoa
    > applications in Applescript using its own development tools.
    > However I've not tried it[/ref]

    Then you are unaware of how little of Cocoa is bridged from AppleScript
    Studio. I would (and do, in my book) recommend AppleScript Studio only
    as a last resort for purposes of leverage, e.g. because you've already
    got a large working script written in AppleScript and just want to wrap
    some GUI around it quickly. m.

    --
    matt neuburg, phd = com, http://www.tidbits.com/matt/
    AppleScript: The Definitive Guide
    http://www.amazon.com/exec/obidos/ASIN/0596005571/somethingsbymatt
    Read TidBITS! It's free and smart. http://www.tidbits.com
    matt Guest

  18. #18

    Default Re: beginner's questions

    Uli Kusterer <de> wrote:
     
    >
    > Let me correct my previous suggestion. Even if they just added a few
    > more sensible coercion handlers to AppleScript, it would receive a
    > tenfold increase in manageability. Just get rid of those darned "can't
    > make alias into string" messages etc, and find a way to get more
    > consistency into applications' script terminology.[/ref]

    I think my book is quite "definitive" on what's wrong with AppleScript,
    so you can stop trying to make your own list, Uli! :) m.

    --
    matt neuburg, phd = com, http://www.tidbits.com/matt/
    AppleScript: The Definitive Guide
    http://www.amazon.com/exec/obidos/ASIN/0596005571/somethingsbymatt
    Read TidBITS! It's free and smart. http://www.tidbits.com
    matt Guest

  19. #19

    Default Re: beginner's questions

    Gregory Weston <com> wrote:
     
    >
    > IMO, "the needed bits from C" would be C, and every C programmer should
    > have a copy of The C Programming Language.[/ref]

    Todays C is not K&R C any more, so maybe a more up to date version like
    the C99 standard is beneficial..

    Regards,
    Tom_E

    --
    This address is valid in its unmodified form but expires soon.

    Thomas Guest

  20. #20

    Default Re: beginner's questions

    On Mon, 17 May 2004 21:48:24 +0200, Thomas Engelmeier
    <com> wrote: 
    >
    > Todays C is not K&R C any more, so maybe a more up to date version like
    > the C99 standard is beneficial..[/ref]

    The original K&R book has long been updated to ANSI C standard
    (albeit the first version not C99, but the differences are
    not huge compared to the shift from K&R to ANSI).

    K&R is still, IMHO, the best (and most concise) C tutor around.
    And it's pretty much essential if only for the fact that I've
    found more than one bit of production C with a comment
    that refers to a page number in K&R by way of explanation!

    Alan G.
    Author of the Learn to Program website
    http://www.freenetpages.co.uk/hp/alan.gauld
    Alan Guest

Page 1 of 2 12 LastLast

Similar Threads

  1. Beginner Freehand Questions
    By Randys42 in forum Macromedia Freehand
    Replies: 2
    Last Post: March 10th, 04:57 AM
  2. Beginner's questions
    By Craig_Busch@adobeforums.com in forum Adobe Photoshop & Illustrator
    Replies: 10
    Last Post: April 20th, 03:57 AM
  3. B&W Beginner's questions
    By Andrei in forum Photography
    Replies: 12
    Last Post: December 7th, 02:03 AM
  4. Beginner - two simple questions please?
    By The Oracle in forum Sun Solaris
    Replies: 1
    Last Post: August 1st, 05:17 PM

Bookmarks

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •  

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139