[Pythonmac-SIG] Objective C and Cocoa
Kevin Ollivier
kevino at tulane.edu
Thu Oct 16 02:52:32 EDT 2003
Hi,
On Wednesday, October 15, 2003, at 09:13 PM, Bob Ippolito wrote:
[snip wxWindows comments]
>
> I think that the point that Ronald was trying to make earlier is that
> sometimes it's best to just develop multiple GUI frontends. It's
> definitely easier to develop a PyObjC+Cocoa application than a
> wxPython application assuming you like using OS X (subjective, but I
> don't think many of you will disagree). Cocoa encourages good
> model/view separation. So theoretically if you write it with Cocoa
> first, it shouldn't be terribly hard to write (or hope someone else
> writes) another frontend on top of that, whether that's wxWindows,
> GTK, or whatever. Nothing you've said so far leads me to believe that
> trying to make wxWindows fit both GUI paradigms (win32/linux and mac)
> is less effort than making wxWindows do what it does best
> (win32/linux) and spending the "mac thinking" time just writing a
> PyObjC/Cocoa frontend for Mac.
To be honest, I doubt I could convince you as I think you're already
sold on what approach you want to take, and considering your criteria
for tools I think you chose what works best for you. I understand that.
What I don't understand is that you debate the very usefulness of
wxPython for Mac to anyone except "people who don't own Macs" or people
who want a quick (and dirty) port to Mac. That, I think, is based more
on how you feel about wxPython than anything else, but in any case
contradicts my experiences with the wxPython developers I know of who
are testing and tweaking their apps for Mac.
As for your comment about 2-3 frontends being less work than a wxPython
interface, I think that's highly subjective and depends on many
factors, like the developer's familiarity with both tools, free time to
work on the app, access to appropriate hardware and/or the kindness of
others to port the application. In any case, since there's no one who
actually has done this, I think this sort of debate would be pointless
as it would be based on opinions only, not experience. I will say that
I've never heard of having to learn two toolkits as being easier than
learning one (i.e. Cocoa + wxWindows) so this would likely become a
multi-person effort.
> wxWindows makes porting to the Mac easiest for people who don't own a
> Mac. In which case, they'll probably design it such that it's not
> consistent with the Apple HIG anyway. Of course, in some situations
> the application is more important than the interface, and the Mac user
> just won't care so much because it does what they need it to do.
I own two Macs, I've 'ported' (not really, wxPackageManager was built
on Mac) two apps with wxPython, and in both cases they just ran on
platforms other than what I designed them on, without my thinking they
looked out of place or non-native. I'm having more trouble getting PIMP
to run on Windows than anything else. ;-) (Dependencies on a couple
command line apps that aren't available on Windows.) To convince me
that PyObjC is the only real way to go for native Mac interfaces, you'd
have to convince me (for example) that wxPackageManager is a poor
interface for Mac that needs serious revising (not tweaking), that the
interface problems are the result of the tools I use and not interface
design mistakes on my part, and that re-writing it in PyObjC would
solve all my problems, and have almost zero learning curve.
Lastly, let me say that I'm not trying to argue that "wxPython is for
everyone" or that "wxPython is superior" to PyObjC and I apologize if I
gave anyone that impression. Such arguments are inherently pointless.
It's all relative to the developer's needs. If I were developing
Mac-only apps, I probably would be using PyObjC, but in the end all
that matters is whether or not it can meet my needs/criteria. So when I
promote wxPython, I'm not trying to win some battle or anything, I'm
just sharing my own preferences and experiences with others in the hope
that it may help some of them and maybe help wxPython or even Python as
well. =)
Kevin
More information about the Pythonmac-SIG
mailing list