[MD1] Raven 1.0 on Info-Mac

[MD1] Raven 1.0 on Info-Mac

From: jesjones@halcyon.com (Jesse Jones)
Subject: [ANN] Raven 1.0 A new C++ framework

I've recently uploaded Raven 1.0 to Info-Mac. Raven is a new C++ framework
for Macintosh programming. Raven is similar to PowerPlant and MacApp but
takes full advantage of newer C++ features, has a more modular structure,
and makes extensive use of programming by contract.

Like ODF and MacApp Raven makes extensive use of multiple inheritance by
means of mixin classes. Raven also uses the standard C++ classes wherever
possible, including the string class, the standard exception classes, and
STL. Raven also makes use of template classes and RTTI.

Raven is divided into four layers: Foundation, Core, Application, and
Esoteria. Each layer is composed of a number of packages. For example the
Core layer has a Files package containing classes to manage things like
reading/writing a file, iterating over files, accessing the Desktop
Manager, and CustomGetFile and CustomPutFile.

The Foundation layer contains low level classes for things like memory
management, debugging, broadcast/listener, exceptions, string utilities,
and geometry classes.

The Core layer includes a large number of generally useful classes for
things like graphics, sound, files, menus, command objects, drag and drop,
preferences, etc.

The Application layer contains higher level classes for views, windows, and
application objects.

The Esoteria layer contains more exotic classes that most applications
won't need. It includes classes for compression, parsing, 2D graphing, and
mathematics.

Because the lower layers are independant of the higher layers and coupling
between packages is minimized you can easily use parts of Raven with other
frameworks. For example, most of the Foundation and Core layers can be used
with PowerPlant.

Raven includes a rich set of debugging tools that include several excellent
debug macros, a powerful debug menu, a framework for developing unit tests,
and a flexible replacement for the default operator new that keeps a stack
crawl for each allocated block.

In addition the member functions in Raven classes do a good job of
verifying the validity of their arguments and many of the classes include
Invariant methods to catch bugs within Raven or within ill behaved
subclasses.

There are currently four example programs written using Raven:

IconEdit - A simple document oriented application similar to the MacApp
example of the same name.

DropCount - A drag and drop app that counts the number of source lines in
C/C++ code.

Skeleton - A do nothing app for use as the base for new projects.

Quill - The Raven view editor.

info-mac/dev/raven-10.hqx; 2776K
info-mac/dev/raven-10-examples.hqx; 1915K

-- Jesse (jesjones@halcyon.com)

 
AAPL
$282.52
Apple Inc.
-1.23
MSFT
$24.38
Microsoft Corpora
-0.11
GOOG
$525.62
Google Inc.
-0.17
MacTech Search:
Community Search:

Introducing the App Hall of Fame!
App discoverability continues to be a real issue. With the fast churn of apps in the App Store, an app has only a few weeks of promotional life in it before it‚Äôs largely forgotten. There are a few things developers can do to fix that, but those... | Read more »
Gobliiins Are Coming
In the midst of the huge Q4 launch schedule, the cult classic, Gobliiins, as well as the rest of the trilogy, are being ported to the iPhone in all of their original glory. The Goblins trilogy was a quirky Atari/Amiga game series from the early 90‚Äôs... | Read more »
myPhoneDesktop – Chrome to iPhone Extens...
Anyone who has used myPhoneDesktop knows that it is a fantastic tool for streamlining your onscreen workflow. Instead of having to type line after line into your phone directly, you can use myPhoneDesktop to type from your computer directly into... | Read more »
Classes Review
Developer: Dustlab Price: $0.99 Version Reviewed: 2.4.7 iPhone Integration Rating: 3 out of 5 stars User Interface Rating: 4 out of 5 stars Re-use / Replay Value Rating: 3 out of 5 stars Overall Rating: 3.33 out of 5 stars | Read more »
AutoVerbal Talking Soundboard Pro helps...
Being able to speak and communicate with others is something that many of us take for granted. It‚Äôs not so easy for many folks though, in particular for individuals with autism spectrum disorders, as well as those who have suffered various brain... | Read more »
Pocketbooth Review
Developer: Project Box Price: $0.99 Version Reviewed: 1.0 iPhone Integration Rating: 4 out of 5 stars User Interface Rating: 4 out of 5 stars Re-use / Replay Value Rating: 4.5 out of 5 stars Overall Rating: 4.17 out of 5 stars | Read more »
Get Your Roast Right With ‘Time To Roast...
Roasting meat, in the cooking world, is about as simple as it gets. The greatest roast recipe I‚Äôve ever found is from Michael Ruhlman‚Äôs website, with the recipe titled, ‚ÄúThe World‚Äôs Most Difficult Roasted Chicken Recipe.‚Äù | Read more »

All contents are Copyright 1984-2010 by Xplain Corporation. All rights reserved. Theme designed by Icreon.
Greetings, and welcome to the new MacTech web site! Our home page is designed to be your Industry Dashboard -- so you can have a snapshot of all that's relevant in the industry in one easy location. Many readers tell us that because the information is updated so frequently, they are now checking the site multiple times a day. Here's a quick run down of the features on the new web site, which can be subtle. We truly hope you register so that we can keep you up to date about new features as they are implemented. And, please use the BETA button in the top right to provide us any feedback, suggestions or bugs. We love to hear from you.