[Mono-osx] Is native look on OS X possible?
cocoasharp at carterconsulting.org.uk
Wed Feb 11 09:01:08 EST 2009
Iain Collins a écrit :
> When I first saw mention of Delphi in this this thread I thought
> "That's crazy, why is someone going off topic and mentioning Delphi?"
> (and I think I wasn't alone in thinking that :-) but looking at
> Delphi Prism it makes more more sense.
> I wonder if you - or another user of Prism - could clarify a few
> things about how you use it in practice for Mono/Mac OS X development
> - these questions sound a bit like shill marketing questions for
> Delphi Prism but I'm genuinely interested to know more about it if it
> can stream line my cross platform Mono development, and I figure
> others might be too.
Let me explain my background :
I am a consultant who spends most of her time teaching developers how to
design solutions, thus I don't tend to write complete programs, my job
is to help application developers make that task easier.
I am also a member of TeamB, which is the international network of
newsgroup monitors and general "bigheads" started by Borland to support
their users. Unfortunately, over the past years, Borland did their best
to destroy their development tools division and we suffered a series of
disastrous releases which put more and more people off using Delphi at a
time when Visual Studio and C# was emerging as a very strong contender
in the development tools market.
Despite my "allegiance" to Borland, I found my clients were looking for
better solutions than Delphi and thus I started, over four years ago, to
use C# with one particular client, to develop an MVP (Model View
Presenter) framework that would allow them to refactor their "spaghetti
code" Delphi application into something that they could write the
business logic in business classe and have the UI to be readily
customisable to the client's requirements.
Out of the last four years has come a very carefully thought out set of
frameworks that allows us to put Winforms or Web front ends onto a
completely unchanged business layer.
In the meantime, Borland, finally, divested themselves of their
developer tools division, starting by forming CodeGear as a wholly owned
subsidiary, then finally selling CodeGear to Embarcadero, who have
allowed CodeGear to blossom back to the kind of innovation and quality
that used to be their original trademark.
Also, during that period, CodeGear tried to make a single source native
Win32 and .NET compiler to allow Delphi developers to easily move their
apps to .NET. this turned out to be "not a good thing"(tm) and, only
recently, they licensed what used to be Chrome (also known as Oxygene)
from RemObjects, to give them a mature "Pascalesque" .NET compiler, that
runs in Visual Studio, to add to their stable of products.
> - Do you use Delphi Prism to develop all your Mono applications in,
> or just when it comes to building/rolling out Mac OS X versions?
Apart from the need to provide OS X UIs for our .NET applications, we
would not normally use Mono for application development. All of our
business code is written, primarily for a Windows UI but, due to the
separation of our frameworks, and due to the arrival of Delphi Prism, it
made sense to start looking at using the Mono frameworks in Delphi Prism
to create OS X UIs.
> - Do you think it offers a particularly well integrated solution for
> Mono/Mac OS X development?
Personally speaking, I think that Delphi Prism gives me a very easy
solution to developing OS X front ends for .NET applications; see the
example project I wrote for the Prism Wiki.
> For example, I have used a range of IDE's and editors from Visual
> Studio in VMware, to Eclipse and TextMate on Mac OS X. Can you really
> do everything in just Delphi Prism (& Interface Builder), or do you
> still end up having to do a bit of fudging to glue things together?
If I installl Delphi Prism in a full version of Visual Studio, I can
develop C# class assemblies, import them into a Prism project, create
the UI in Interface Builder and link that UI to the Prism classes that
their custom tool provides from the NIB file. Of course, I could also
develop specialised ObjectiveC controller classes in XCode, import them
via Interface Builder and extend/implment them in Prism.
> - Lastly, it looks like Prisim is 'just' a nicely packaged up set of
> free tools (such as Mono) and a compiler in a Visual Studio shell.
> This isn't a necessarily a bad thing, it's not that expensive for a
> professional licenses and I could see it saving a lot of time and
> effort - and making things easy for developers who are not already
> familiar with Mono or Mac development to work on .NET/Mono projects.
> Do you feel there is a significant benefit to using Prism over using
> existing free tools (e.g. like Mono Develop)? If there are particular
> features you like I'd be really interested to hear about them.
I took a look at Mono Develop and found the interface to be somewhat
inconsistent with both the OS X and Windows way of doing things and,
since I already make extensive use of Visual Studio in Parallels for
most of my development, I decided it was easier to simply install Prism
into the existing VS IDE.
The only thing that would move me away from that setup would be an OS X
IDE that allows me to use C# to easily connect to Interface Builder
NIBs. MonoMate is an interesting project but not yet really as mature an
IDE as Visual Studio.
More information about the Mono-osx