root/tags/dabo-20040308/__init__.py

Revision 3, 4.1 kB (checked in by paul, 5 years ago)

Set eol-style to native

  • Property svn:eol-style set to native
Line 
1 ''' Dabo: A Framework for developing data-driven business applications
2         by Paul McNett (p@ulmcnett.com)
3
4     Dabo is for developing multi-platform database business applications -
5     you know, applications that need to connect to a database server (MySQL,
6     Oracle, MS-SQL, whatever), get recordsets of data based on criteria
7     set by the user, provide easy ways to edit and commit changes to the
8     data, and to report on the data.
9     
10     For basic, easy use that hopefully satisfies 80% of your needs, you
11     simply create/edit data definition files that Dabo uses to dynamically
12     create things like menus, edit forms, data browsing grids, etc.
13     
14     So, the basic idea is that you have a functional, working, albeit basic
15     application up and running very quickly, and you can then spend time
16     getting all the fancy bells and whistles implemented. Keep things as
17     simple as possible though, while still fulfilling your customer's
18     specifications. Simplicity is the better part of elegance.
19     
20     Dabo is fun to say, which is enough justification for its name, but
21     perhaps it could stand for:
22         Database Application Business Objects
23         Database Application Builder O (Just think, it could have been ActiveO... <g>)
24         Object oriented Business Application Development (but OBAD sounds so bad)
25         
26     Dabo has a few parts. First, there is this package, the Dabo framework. Your
27     applications will be based on the classes and modules herein. There are several
28     Dabo packages available:
29         
30         Dabo:       This package, the base framework. Other packages require this
31                     to be installed, but Dabo doesn't care whether the other packages
32                     are installed.
33         
34         DaboWiz:    Wizards for common tasks, such as setting up directories for a
35                     new project based on Dabo, and for setting up dynamic view
36                     definitions, dynamic menu items, etc. The wizards take the
37                     drudgery out of setting up your data definitions: they pretty
38                     much do it for you!
39                     
40         DaboDemo:   A demonstration application that you can run on your machine
41                     to get a feel for Dabo's capabilities. You can then take a
42                     look at the DaboDemo's source code, which is mostly made up
43                     of data definition scripts instead of actual source code, to
44                     see what makes it tick. You can experiment with a change here
45                     or there, learning how to use Dabo in a hands-on way.
46     
47     The Dabo framework will have to be distributed to your client's machine(s),
48     along with your project-specific data definitions and (if applicable), your
49     subclasses of the Dabo classes and additional Python scripts, if any. There
50     are ways to do runtime deployment via installers that take the complexity
51     out of this, but that is outside the scope of Dabo itself, and you'll use
52     a different method for each target platform.
53     
54     To run Dabo, and apps based on Dabo, you need:
55         + Python 2.3 or higher
56         
57         + wxPython 2.4.2.4 or higher, which has a dependency on:
58             + wxWindows 2.4.2.4 or higher
59         
60         + Windows 98SE or higher
61         + Macintosh OSX 10.2 or higher
62         + Linux 2.4 with X11 running
63         
64         + Access to some sort of database server, along with the
65         appropriate Python driver(s) installed. For example, for
66         MySQL you'll need to have the MySQL client libraries
67         installed, as well as the MySQLDb Python module. (Dabo
68         does not use ODBC: it connects directly using the Python
69         DB API coupled with the individual database drivers. This
70         is, at the same time, less flexible, tougher to get started
71         with, but more capable, more multi-platform, and better
72         performing, than ODBC is.)
73     
74     How you get started is pretty much up to you. Look at the demo.
75     Run a wizard. Hand-edit the data definition files.
76     
77     ToDo: pointers to get started.
78                             
79 '''
Note: See TracBrowser for help on using the browser.