tags:

views:

183

answers:

4

I'm starting a Mac OS X app that will connect to a small website I'm currently developing.

The idea is that the app will store a number of snippets on a local database and then sync with the website whenever it can.

So my questions are:

Carbon or Cocoa?

SQLite for local storage / another solution?

Is there any decent free text-editor control with basic syntax highlighting to embed on the app?

+4  A: 

At this point in each product's lifecycle, there is not really any compelling reason to use Carbon.

It's a fine API, and fine applications are written using it (Photoshop, iTunes), but a 64 bit version has not been made available, and it just seems that the writing is on the wall.

If you are just learning, and you want your knowledge to transfer to new projects in the future, Cocoa all the way.

mmc
Speaking as someone who's been writing to Carbon, and its predecessors, since 1984... its days are clearly numbered.
Bob Murphy
+1  A: 

Cocoa. Carbon is going the way of the dodo and is only available in 32 bits.

And Xcode is free, with lots of syntax highlighting ;)

Check out this link for info about syntax highlighting in cocoa

KevMo
+1  A: 

Carbon is being phased out. You should really go for Cocoa.

Cocoa has its own database solutions (a flavor of SQL I think).

bobber205
+7  A: 
  1. For new projects you should use Cocoa. Carbon is only useful to port already existing apps.

  2. Cocoa brings it's own database backend called Core Data. It's quite simple to use but at the same time really powerful.

  3. For syntax highlighting use a NSTextField, they are really powerful in Cocoa. One can even write highly graphical applications like Pages with it. For some examples of syntax highlighting see syntax highlighting on cocoadev.

    You could also have a look at how other editors do it. For example there's Smultron, which is discontinued for the moment.

If you know ruby you can try out MacRuby. This let's you use ruby with the Cocoa classes. I'm quite sure that ruby will be the second programming language for the Mac because of its similarities to Objective-C.

Georg
Regarding text editor, I was talking about a control I can embed on my app, not the IDE. However, thanks for the insight
changelog
I've modified my answer. I'd recommend asking this in another question. I bet you would get some really good answers.
Georg
Core Data is not really a database back end. It's an object persistence framework, which is capable of speaking with a variety of database back ends... of which SQlite is one such compatible back end.
mmc