Exhibition: Unterschied zwischen den Versionen

Aus Info-Theke
Zur Navigation springen Zur Suche springen
 
(10 dazwischenliegende Versionen desselben Benutzers werden nicht angezeigt)
Zeile 12: Zeile 12:
* A '''module''' is an object normally stored in one database table. Example: the module '''Users''' handles data of a user who can login to the app.
* A '''module''' is an object normally stored in one database table. Example: the module '''Users''' handles data of a user who can login to the app.
* The '''metadata''' of a module is a dart class specifying all properties of the module in a well readable form. This must be defined by the developer.
* The '''metadata''' of a module is a dart class specifying all properties of the module in a well readable form. This must be defined by the developer.
* '''Basic actions''' are: '''new''' ("create"), '''edit''' ("change"), '''list''' ("show many") and '''standard''' ("user defined")
* '''Basic actions''' are: '''create''', '''edit''' ("change"), '''list''' ("show many"), '''standard''' ("user defined") and '''delete'''.
* A '''page''' is a dialog for exactly one '''basic action''' of a module. The page name is normally the name of the basic action, but can be changed. Normally each module has the pages new, edit and list.
* A '''page''' is a dialog for exactly one '''basic action''' of a module. The page name is normally the name of the basic action, but can be changed. Normally each module has the pages new, edit and list.
* The '''restserver''' is a sub project of the dev-app implementing a backend for managing the data storage in a MySql database. . See [[Exhibition-RestServer]]
* The '''rest_server''' is a sub project of the dev-app implementing a backend for managing the data storage in a MySql database. . See [[Exhibition-RestServer]]


= Installation =
= Installation =
* clone the Git project exhibition from github
* Clone the Git project exhibition from github.
* create a symbolic link for the command line tool meta_tool:  
* Create the project files for the dev-app:
<source lang="bash">
<syntaxhighlight lang="bash">
# precondition: the current directory is the base folder of Exhibition
APP=myapp
sudo ln -s $(pwd)/bin/meta_tool /usr/local/bin
# precondition: the current directory is the parent of the base folder of Exhibition
</source>
if [ ! -d exhibition/dart_tools ]; then
* create a Flutter project (with AndroidStudio). It is important to create the dev-app as neighbour of exhibition: If the base folder of exhibition is /home/ws/flutter/exhibition the base folder of the dev-app "myapp" is /home/ws/flutter/myapp.
  echo "+++ $(pwd) is not the parent of the base folder of exhibition!"
else
  exhibition/tools/InitProject $APP
fi
</syntaxhighlight>

Aktuelle Version vom 23. Januar 2022, 17:05 Uhr

Links[Bearbeiten]

Motivation[Bearbeiten]

Exhibition is a Flutter framework for developing an Flutter app very quickly.

Glossary[Bearbeiten]

  • The dev-app is the Flutter application that should be developed with Exhibition.
  • A module is an object normally stored in one database table. Example: the module Users handles data of a user who can login to the app.
  • The metadata of a module is a dart class specifying all properties of the module in a well readable form. This must be defined by the developer.
  • Basic actions are: create, edit ("change"), list ("show many"), standard ("user defined") and delete.
  • A page is a dialog for exactly one basic action of a module. The page name is normally the name of the basic action, but can be changed. Normally each module has the pages new, edit and list.
  • The rest_server is a sub project of the dev-app implementing a backend for managing the data storage in a MySql database. . See Exhibition-RestServer

Installation[Bearbeiten]

  • Clone the Git project exhibition from github.
  • Create the project files for the dev-app:
APP=myapp
# precondition: the current directory is the parent of the base folder of Exhibition
if [ ! -d exhibition/dart_tools ]; then
  echo "+++ $(pwd) is not the parent of the base folder of exhibition!"
else
  exhibition/tools/InitProject $APP
fi