• Open Menu Close Menu
  • Apple
  • Shopping Bag
  • Apple
  • Mac
  • iPad
  • iPhone
  • Watch
  • TV
  • Music
  • Support
  • Search apple.com
  • Shopping Bag

Lists

Open Menu Close Menu
  • Terms and Conditions
  • Lists hosted on this site
  • Email the Postmaster
  • Tips for posting to public mailing lists
Porting Tk applications to Cocoa
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

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


  • Follow-Ups:
    • Re: Porting Tk applications to Cocoa
      • From: Kaelin Colclasure <email@hidden>
  • Prev by Date: Re: Core Data + NSOutlineView + Sorting without NSTreeController
  • Next by Date: Re: NSImage representations
  • Previous by thread: Releasing WebView After Caching
  • Next by thread: Re: Porting Tk applications to Cocoa
  • Index(es):
    • Date
    • Thread