[
Date Prev][
Date Next][
Thread Prev][
Thread Next][
Date Index][
Thread Index]
[
List Home]
Re: [platform-swt-dev] Mac OS X Port
|
Hi Ringo,
Because Carbon is a C api as is the lowest level Windows widget API?
No, because Carbon's level of abstraction is *low* enough to get the
SWT details right!
As a Eclipse JDT UI developer and therefore SWT user
I know that the SWT API is one thing and its 'dynamic behavior' in a
real application
is another thing. Ensuring that the same application code results in
the same application behavior on different SWTs implementations (no
platform specific 'ifdefs'!) requires a tremendous effort of the SWT
developers! And it requires that you have the flexibility to access
lots of low-level stuff.
Cocoa (or Swing, or AWT) is more like SWT itself: it is high-level
and hides all low-level details.
If you are lucky you can map every SWT abstraction to a Cocoa
abstraction. But a single detail required by SWT that is not
available in Cocoa can kill you!
I mainly developed in Java so far. Didn't do any C/C++ programming
on any other platform I used. This also means that I'm not familiar
with the path that Apple takes concerning their libraries. Correct
me if I'm wrong, but isn't Carbon a temporary (even long term)
migration path for Classic to OS X conversion? My idea of the whole
situation is that Apple is pushing developers to go the Cocoa way
and only to use Carbon for a first port of an app to OS X and then
start mixing Carbon with Cocoa, finally resulting in a pure Cocoa
app. If this is the case, I would not like to do a binding to Carbon.
Yes, the NeXT guys at Apple see the future in Cocoa. However Apple's
history is not based on NeXT's applications and APIs and Objective-C.
Most current MacOS X productivity applications are Carbon-based (And
I'm using one right now and I see no problem with them). And in
todays world Objective-C looks somewhat strange.
Apple has spend a tremendous effort in the Carbon libraries which run
both on MacOS 9 and X. For the forseeable future (> 5 years) Apple
will support and improve them and will make certain useful Cocoa
features available.
I would not try to implement SWT on top of Cocoa without Apple's support.
But SWT on top of Carbon is possible (BTW: I ported our ET++
Application Framework (= SWT+JFACE) to the Mac Toolbox and lately to
Carbon without problems).
My 0.02 CHF...
--andre