On 12/31/08, Achim Domma <[email protected]> wrote: > Hi, > > I develop software for a living and want to get started with cocoa > development just for fun. I'm good at python, C, C++ and C# and have > some Ruby knowledge. Now I'm asking myself, which language I should > use to get started with cocoa development: > > - ObjC looks interesing, but would be a new language to learn. I like > to learn new languages, but I also prefer to do one step after > another. So learning Cocoa and Obj-C toghether could be frustrating.
With the language set you already know, Obj-C should only take you a day to learn. It is a pretty minimal superset of C. My personal experience is people spend more time worrying about or resisting learning Obj-C than actually learning it. Cocoa is huge though. That's where you will be spending most of your time learning. > - I like dynamic scripting languages like python and ruby, but I would > like to ship my apps to other users. And they should not care about > the language I have used. Can pyObjC or RubyCoca be bundled with my > app, so that the enduser will not recognize that python/ruby is > shipped with my app? On Leopard, yes. Apple officially includes and supports these on Leopard and they have full access to Cocoa and other frameworks on the system. I don't think you need to bundle them in your app since they are already system frameworks. Only your code will go in your app. Your end users shouldn't be able to tell you are using these. These won't save you from having to learn Cocoa though. > - As far as I understand, GUIs are usually build with the interface > builder of XCode. That tools is tuned to be used with ObjC. How good > is the integration with scripting languages? I don't have any first-hand experience, but for PyObjC and RubyCocoa, but from what I've seen, the integration is really good. > - How up to date are bindings to "non ObjC" languages usually? If I > will like cocoa development, I want to have a look at core data and > core animations. Are these also available for ruby and python? PyObjC and RubyCocoa are fully supported by Apple. I believe these are really up-to-date. Other languages, not so much. I don't see why there would be any problems with Core Animation. I wrote my own minimal binding for Core Animation in Lua and I did it the hard way. PyObjC and RubyCocoa are much smarter and I don't see why they would have problems. Core Data I am less sure about since there is a modeling tool. Since they have IB integration, I fully expect PyObjC and RubyCocoa to have full support here too. I'm sure somebody else can confirm this. > - What about Mono/Cocoa#? Looks like Mono is not an good option, if I > want to distribute my app as small download via the web. Or am I wrong? I don't know anything about Mono/Cocoa#. Somebody else will have to answer this. Personally, I think you should start with Obj-C. You'll be able to find a lot more code examples and more easily be able to get direct help from people. And Cocoa is designed with Obj-C in mind so learning Cocoa from Python or Ruby may slow your learning of the common patterns and designs in Cocoa. -Eric _______________________________________________ Cocoa-dev mailing list ([email protected]) Please do not post admin requests or moderator comments to the list. Contact the moderators at cocoa-dev-admins(at)lists.apple.com Help/Unsubscribe/Update your Subscription: http://lists.apple.com/mailman/options/cocoa-dev/archive%40mail-archive.com This email sent to [email protected]
