Article View: comp.sys.mac.programmer.codewarrior
Article #454Re: Looking for cross-platform best practices
From: Paul
Date: Tue, 18 Jan 2005 21:32
Date: Tue, 18 Jan 2005 21:32
42 lines
3233 bytes
3233 bytes
<jonhoyle@mac.com> wrote in message news:1106007254.689360.5600@z14g2000cwz.googlegroups.com... > Hi Chris, > > My experience has been very positive using CodeWarrior C++ (both Mac & > Windows) for the core code for speed and optimization and RealBasic as > the GUI that rides on top of it. I tend to find that this really gives > me the best of all worlds when it comes to cross-platform code > generation. > > Essentially, I begin with a CodeWarrior DLL project for Mac and Windows > (ie Carbon Shared Library for Mac and Dynamic Linked Library for > Win32). I write my model code in here, typically using a command line > interface for it to make sure Unit Tests pass. (I can provide you with > a sample CW 8.3 project I use as my template.) > > Then I write my GUI in RealBasic, using Declares to call into the DLL. > Since I use RB only for GUI, it's fairly thin since none of my model > code uses RB objects. The RB calls essentially resolve to Mac and Win > API calls under the hood, making life so much easier. GUI writing is a > breeze this way, allowing me to spend most of my time writing the core > in C++. > > I have done other projects in th past doing the same thing, except > using Java for the GUI instead of RealBasic. I find that Java's > runtime is a bit heavy and less responsive as compared to RealBasic, > and the coding much more involved, so I am not really interested in > going back to that. > I've looked into this and never really got going on it. How difficult is it to call back from a DLL into RB (if a control needs to updated by a DLL process, for example)? I was once part of a (Win only) project that did this w/ a VB front end. They had decided to use a massive ActiveX control instead of a simple DLL, to get the ability to raise events back to VB. (It was slow and so complex that only a few people could actually do that, but it did sort of work.) Paul
Technical Details
Message-ID:
<tffHd.772$PA2.279@newsread2.news.atl.earthlink.net>Path:
arc1-ca.pugleaf.net!g2news1.google.com!news2.google.com!newshub.sdsu.edu!elnk-nf2-pas!newsfeed.earthlink.net!stamper.news.pas.earthlink.net!stamper.news.atl.earthlink.net!newsread2.news.atl.earthlink.net.POSTED!961d7c11!not-for-mailReferences:
<4XKGd.7822$nt.593@fed1read06> <1106007254.689360.5600@z14g2000cwz.googlegroups.com>Show Full Headers
Complete Article Headers
X-Google-Thread: f635e,3b32242fe52324ef X-Google-Thread: fd047,3b32242fe52324ef X-Google-Thread: 10bcce,3b32242fe52324ef X-Google-Attributes: gidf635e,gidfd047,gid10bcce,public X-Google-Language: ENGLISH,ASCII-7-bit Path: arc1-ca.pugleaf.net!g2news1.google.com!news2.google.com!newshub.sdsu.edu!elnk-nf2-pas!newsfeed.earthlink.net!stamper.news.pas.earthlink.net!stamper.news.atl.earthlink.net!newsread2.news.atl.earthlink.net.POSTED!961d7c11!not-for-mail From: "Paul" <remove_this_its_just_paul@patchdance.com> Newsgroups: comp.sys.mac.programmer.codewarrior,codewarrior.windows,codewarrior.mac References: <4XKGd.7822$nt.593@fed1read06> <1106007254.689360.5600@z14g2000cwz.googlegroups.com> Subject: Re: Looking for cross-platform best practices Lines: 44 X-Priority: 3 X-MSMail-Priority: Normal X-Newsreader: Microsoft Outlook Express 6.00.2800.1437 X-MimeOLE: Produced By Microsoft MimeOLE V6.00.2800.1441 Message-ID: <tffHd.772$PA2.279@newsread2.news.atl.earthlink.net> Date: Tue, 18 Jan 2005 21:32:09 GMT NNTP-Posting-Host: 69.68.80.137 X-Complaints-To: abuse@earthlink.net X-Trace: newsread2.news.atl.earthlink.net 1106083929 69.68.80.137 (Tue, 18 Jan 2005 13:32:09 PST) NNTP-Posting-Date: Tue, 18 Jan 2005 13:32:09 PST Organization: EarthLink Inc. -- http://www.EarthLink.net