Linked by Eugenia Loli-Queru on Wed 16th Jul 2003 19:26 UTC
Features, Office Aaron Hillegass' new book, titled "Core Mac OS X and Unix Programming", is now available in the stores. In the past, we reviewed his previous book "Cocoa Programming for MacOSX" and we got a good idea of Aaron's elegant writing style, descriptive chapters and advanced development under Mac OS X. In this book, he goes down under, teaching us how to handle and develop for the underpinnings of OSX, the core of the OS.
E-mail Print r 0   · Read More · 19 Comment(s)
Order by: Score:
speaking of elegant writing style...
by Anonymous on Wed 16th Jul 2003 19:43 UTC

is Scot Hacker up to anything writing-wise these days..?

I wish that Apple would add C++
by debman on Wed 16th Jul 2003 20:05 UTC

I know C++, I have no interest in learning how to program in C (yes, it can be done, but I like objects). objective C AFAIK uses all of C's syntax for the structured programming features and an object syntax that fits well withthe C syntax.

is this correct about ObjC or no?

I wish that Apple would add C++
by Anonymous on Wed 16th Jul 2003 20:09 UTC

I don't exactly understand your question, but objective-c syntax looks more like smalltalk than it does c or c++.

For instance if you wanted to call a object method it would look like:

[obj methodParam1: 1 param2: @"This is a string"]

A lot of people (myself included like obj-c syntax better than c++.

re:I wish that apple would include C++
by debman on Wed 16th Jul 2003 20:12 UTC

but what about the structured aspect of their syntax? inside the object you need to use structured syntax for methods as you do for the code manipulating the objects. what is that like? I have been under the assumption that it is almost exactly like C.

Yikes
by praetorian on Wed 16th Jul 2003 21:05 UTC

90 bucks for a developers book!?!

Wow. I only paid $55 for ANSI Common Lisp, which seems like a far more specialized and, therefore, expensive topic.

Not saying it isn't worth it. But still. Sticker shock.

Perforce instead of CVS? bah
by Anonymous on Wed 16th Jul 2003 21:07 UTC

The core of the OS is hosted in CVS at opendarwin.org, so it makes sense to discuss CVS if you're going to be building upon anything in OS X that has an open source component.

RE: Perforce instead of CVS? bah
by JonP on Wed 16th Jul 2003 21:15 UTC

You have to be realistic here. Hillegass writes these books also as a promoting way for his Big Nerd Ranch week-long classes. This is his main business. People who will buy this (expensive) book, are people who are most likely to attend his classes. These PRO developers want to learn about Mac OS X for their applications and products, they don't care on hacking Darwin. Darwin hackers -- except the Apple employees-- are students and open source devs/enthusiasts, with most of the time no money for the $4000 classes that Aaron offers. Therefore, the main audience of this book, pro developers, are more likely to be using ClearCase or Perforce than CVS. And that was a miss in that book in my opinion too.

Perforce vs CVS
by Taz on Wed 16th Jul 2003 21:43 UTC

JonP, I can't agree with you there. If they cover Perforce they had to cover other alternatives, for example clearcase as you mention, and absolutly cover CVS. CVS is to widespread to ignore. I also can't agree that only "professionals" would buy this book.

Everyone can set up a CVS repository at home so it makes sense to use that as an example. If you are a professional then you surely know and probably already use a version control system and know what it is about.

I really can't see any reason to include a chapter on using perforce or any other commercial system.

Perforce vs CVS part II
by Taz on Wed 16th Jul 2003 21:46 UTC

Not to mention that CVS is good enough for almost all projects out there. And, im not really sure about this, but is there really a perforce OSX server?

Re: C++
by techtrucker on Wed 16th Jul 2003 22:03 UTC

I seem to recall seeing something about C++ being included in the next update to the dev tools, XCode...yep, mentions C++ here:

http://developer.apple.com/tools/xcode/index.html

re:re:C++
by debman on Wed 16th Jul 2003 22:43 UTC

X Code.....hmmm...is that going to be free like the other dev tools?

also, doe coaca support C++ in this next iteration?

and what the heck is objective C++!!!

re : debman
by A Non Mouse on Wed 16th Jul 2003 23:07 UTC

a) c++ began as c plus classes. One can write c code that is just a well organized, structured and encapsulated as c++. in the proper hands it can actually work more effectively. (perhaps you have heard of linux?)

b) if you only learn c++ you will be obsolete in the next 5-8 years; expand your mind to become a better programmer.

c) there is no such thing as objective c++

d) objective c is just that, c with objects. the objects you claim to love are there. see b).

RE:re:re:C++
by zephc on Wed 16th Jul 2003 23:17 UTC

C++ is supported of course, by the compiler (GCC) as is Objective-C++, which is exactly what it sounds like, a mix of C++ and Objective-C. This doesn't mean that there are C++ interfaces to the Cocoa APIs.

For anyone interested in Objective-C as a programming language, a quick intro is here: http://www.geom.uiuc.edu/software/w3kit/overview/objective-c.html

re : debman
by Nicolas Roard on Wed 16th Jul 2003 23:30 UTC

As a matter of fact, there is Objective-C++ . It's not a language : just a clever (?) hack to mix in the same .o ObjectiveC and C++. The ONLY interest (but hey, that's quite useful) is to simply mix C++ and ObjectiveC code, so you could for example have a C++ backend and an ObjectiveC code for the gui. But if you start from scratch... well, ObjectiveC is so more clean :-)
ObjectiveC++ is for example the thing which made possible WebCore, the Apple framework for HTML rendering based on KHTML, the KDE C++ HTML rendering engine.

precision
by Nicolas Roard on Wed 16th Jul 2003 23:41 UTC

it's possible to use in a program C++ and Objective-C without ObjectiveC++, but they will then need to be in two separate objects files, and, it could be quite painful to communicate between them. ObjectiveC++ just made things easier.

re:A Non Mouse
by debman on Thu 17th Jul 2003 00:24 UTC

umm... yeah... thanks for your..... comments.

a)I know, I just prefer C++ over C because I like what classes do... you can pretend you have classes in C but they are still functions and can be used by anything in the program though the programmer is pretending that you can not.

b) where did I say anything about other Languages? I was giving my reasons for not learning C. I know python, I am learning Java, I am interested in C# and I will eventually look at pearl, and that is a list of short term objectives.

c) well yes there is, as can be seen from the Xcode web page if you bother looking. I was asking what it was and have gotten satisfactory responses (thanks everyone.)

d) umm...yeah I know, in-fact I even said that. I was interested in the syntax used in class/object creation and calling.

here is a tip for the future...don't be so presumptuous and try not to make assumptions.

great thread
by kevin on Thu 17th Jul 2003 03:33 UTC

It's nice to see an actual technical discussion

re:A Non Mouse
by Dobber on Thu 17th Jul 2003 05:39 UTC

Response to d)

An example of creating an image object:

//Objective C
NSImage *icon = [NSImage imageNamed:@"DefaultWorkoutIcon.tif"];
//Java
NSImage icon = new NSImage( "DefaultWorkouticon.tif", false );

Then you can access the icon object instance methods like this:

// Objective-C
if ( [icon isFlipped] == true ) {
// do something..
}

// Java
if( icon.isFlipped() == true ) {
// do something..
}

Well dont know if this helped or just added some more confusion.

/D

re:A Non Mouse
by debman on Thu 17th Jul 2003 14:59 UTC

hey, thanks.....wow...ObjC's syntax is realy diffrent from Java/C++