[linux] multiplatformova db aplikacia

pivoluska na globtelnet.sk pivoluska na globtelnet.sk
Sobota Březen 16 10:35:05 CET 2002


Zdravim Vas vsetkych!

On Sat, Mar 09, 2002 at 12:06:21PM +0100 Oskar Stolc wrote:

> Aplikacia by bola zalozena na postgreSQL (samozrejme na linuxe, tu
> problem nevidim) a pristupovalo by sa k datam z linuxackych a hlavne z
> windowsackych klientov.

Ja by som klientov nenechaval priamo pristupovat do databazy.
Pokojnejsie by som spaval, ak by to fungovalo na architekture
klient/server (server - program, ktory na poziadanie klienta vytiahne
informacie z SQL servera, pripadne ich po prekontrolovani ulozi).

Urcite to neuskodi ani faktu, ze klienty maju byt multiplatformove. Ak
im uz podhodis data priamo cez nejaky interface (vid CORBA), budu
jednoduchsie, cize sa budu dat aj lahsie portovat. 

Spojenie medzi klientom a serverom by mohol zabezpecit standard CORBA,
ktory je na heterogenne prostredie ako uliaty a definuje jednotny
interface na pristup k udajom.

Mozno Ti pisanie aplikacneho servera usetri kopu problemov a mozno Ti
ich len narobi. Neviem, co konkretne ocakavas od Tvojej aplikacie.
Nieco podobne plati aj o CORBE. Mozno to bude kanon na vrabce, ale na
druhej strane je dobre vediet, ze existuje aj takato alternativa.
(Vyhodne, ak budes menit fyzicku strukturu databazy, databazovy server,
udaje budes chciet cacheovat alebo ich zrazu nebudes ukladat v SQL
databaze, ale vo vlastnom, superrychlom, na danu aplikaciu
optimalizovanom formate)...

> 
> Ide o jednoduchu aplikaciu s formularmi, po vyplneni ktorych sa data
> odoslu do databazy a potom by sa mali generovat nejake reporty vo forme
> prehladnych tabuliek a grafov...
> 
> potrebujem programatorske nastroje realizujuce:
> 
> - jednotne graficke rozhranie, rovnaky vzhlad pod linuxom aj windowsom
>   (tcl, java ?)

Myslim, ze Java by mohla byt dobrou volbou pre klientov, ale musis mat
na to patricne zelezo.

Ak by sme si urobili exkurziu do C++, ani tu by nemali byt velke
problemy pri portovani, ale treba na to mysliet uz pri prvom riadku
kodu, cize pouzivat kniznice, ktore su dostupne na vsetkych cielovych
platformach, osetrovat vynimocnosti tej ktorej platformy podmienenym
prekladom... Pri portovani na Windows Ti urcite pomoze CygWin (nebudu
potrebne velke zasahy do Makefile-ov).

Co sa tyka multiplatformovych GUI kniznic, ja viem o QT, GTK (GTK je v
C), FLTK (rychle, malicke, funkcne!!!!!) a WxWindows.

> - jednoduchy (najlepsie vysokourovnovy, skriptovaci) programovaci jazyk,
>   v ktorom by sa pisali klienti, lahko by sa dal kod prepojit s GUI a 

Moment, spomenul si, ze potrebujes jednotne graficke rozhranie a do
zatvorky si uviedol tcl a Javu. 

Ale Tcl a Java su sami o sebe programovanie jazyky, v ktorych sa
vyskytuju kniznice na podporu GUI. V Jave sa konkretne jedna o AWT a
Swing. Tcl vyuziva na tvorbu okienok Tk.

Vysokourovnovy skriptovaci...

No, zeby Perl alebo Python v kombinacii s TK. Zaujimavy je vyvoj
projektu PHP-Gtk, v podstate umoznuje vyuzivat Gtk kniznicu v Php
skriptoch, ktore budes spustat za pomoci executable-binarky PHP-cka.

S okienkovym Perl-om programatorske skusenosti nemam, v Python-e som mal
problem s diakritikou, ale pravdepodobne sa to da nie zlozito riesit.
(Zeby cez kodovanie UTF8?) Co sa PHP-Gtk tyka, hral som sa len s rannou
vyvojovou verziou, ktora este nebola prilis pouzitelna. Vyvoj vsak
pokrocil a dockali sme sa uz stabilnej verzie. 

>   podporou spoluprace s postgreSQL

V Perl nie je problem prepojit s databazou. Sluzi na to skupina modulov
pod spolocnym nazvom DBI, PHP tiez nema problem s databazami. S Pythonom
v tomto smere skusenosti nemam, ale urcite je to mozne.



mP





Další informace o konferenci linux