Re: Need for Swift
Re: Need for Swift
- Subject: Re: Need for Swift
- From: Turtle Creek Software via Cocoa-dev <email@hidden>
- Date: Tue, 15 Oct 2019 13:27:58 -0400
We did put 2 or 3 programmer-years into a Cocoa GUI. Problem is, it
appears that it will need 2 or 3 more. There probably won't be enough Mac
buyers left in 2 or 3 years to pay for that.
I agree that QT, wxWidget and Electron build crappy apps. And some effort
will always be required to interface between one's working code, and the
GUI layer. It's just a matter of making that effort small enough so one
can bring a product to market fast enough and cheaply enough to get paid
decently for the work.
MVC is an excellent design paradigm. The M and V layers were no problem at
all to set up. The C started out easy, but ended up being a big problem.
Quite a bit of the business logic is not just data, but fancy stuff that
happens with the GUI. Fields that switch between % and $, table cells that
change other table cells, etc. There is a lot of code in our C++
RecordViewer classes to make that happen, and it didn't integrate easily
with NSWindowControllers or NSViewControllers. It often was faster to just
redo the logic in Cocoa. That took a lot of time. Much more rewriting than
expected.
Within source files, Objective-C++ is fantastic. It really makes Cocoa
coding easy for C++ programmers. We were surprised about how well it
worked. I probably didn't mention Obj-C++ because it became second nature
so quickly. If all parts of Cocoa were like that, we would have finished
by now.
The basic language problem as I see it is in the headers. Classes are
either Obj-C or C++ and can't be both. It turned out to be an enormous
barrier that caused all sorts of pains.
Casey McDermott
TurtleSoft.com
On Tue, Oct 15, 2019 at 12:20 PM Jens Alfke <email@hidden> wrote:
>
> > On Oct 15, 2019, at 6:59 AM, Turtle Creek Software via Cocoa-dev <
> email@hidden> wrote:
> >
> > TurtleSoft has a big investment in C++ source code that's full of
> > construction business logic. Unfortunately, with the death of Carbon its
> > future value is in doubt.
>
> I know I’ve brought up Objective-C++ to you here before, but I’m not sure
> you registered its existence, based on comments like this.
>
> Any well-designed app keeps the data model and core business logic
> separate from the UI. So having that logic in C++ is not a big problem.
>
> As for the UI code, I’ve still never found a cross-platform UI framework
> that creates decent apps. Qt is hideous, and Electron results in immensely
> bloated websites-in-a-box. So to do a good job, you need to code the UI for
> each platform anyway.
>
> —Jens
>
_______________________________________________
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