Porting Tk applications to Cocoa
Porting Tk applications to Cocoa
- Subject: Porting Tk applications to Cocoa
- From: Kevin Walzer <email@hidden>
- Date: Sun, 08 Jul 2007 15:10:33 -0400
- Organization: WordTech Communications LLC
I'm looking for suggestions on the best strategies for porting
applications written in scripting languages and using a Tk GUI to Cocoa.
I currently have several shareware applications, using Tk for the GUI
and Python and Tcl for the back-end languages. Tk is a powerful,
flexible GUI toolkit, but it has some limitations on Aqua--it doesn't
wrap some of the widgets and, in general, simply can't keep up with UI
trends on OS X. Even with a lot of recent development in the Tk core
that support theming, my applications look a bit out of place And
because Tk builds on Carbon, the recent announcements by Apple about
64-bit Carbon (or lack thereof) have made me nervous about Tk's future
on OS X.
I've picked up the standard Cocoa textbooks (Hillegass, Kochan) and I'm
trying to learn the basics of Cocoa and Objective-C. This, however,
doesn't give me much guidance on how to proceed porting my stuff over. I
see several options:
1. Do a complete rewrite of my applications in Objective-C.
2. Do a complete rewrite of my applications in a scripting language
supported by Cocoa, such as Python or AppleScript.
3. Rewrite the GUI components only in Objective-C and leave the business
logic as is (in Tcl or Python), with some refactoring.
4. Rewrite the GUI components only in one of the Cocoa scripting
languages, and refactor the business logic.
A complete rewrite would make everything "clean" from a Cocoa
standpoint, but would take a lot of time. The refactoring approach could
be done more quickly, but might raise issues with maintenance,
application speed, and so on.
I'd appreciate advice from anyone who has ported an application from
something else to Cocoa. I'd also appreciate hearing from people who are
in this boat currently, particularly if your decision is being spurred
along by Apple's deliberate decision to downgrade support for Carbon.
How have you managed your Cocoa port, what strategy did you use, and why?
--
Kevin Walzer
Code by Kevin
http://www.codebykevin.com
_______________________________________________
Cocoa-dev mailing list (email@hidden)
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:
This email sent to email@hidden