[linux] EIS - aky programatorsky nastroj

Matej Pivoluska pivoluska na matfyz.cz
Čtvrtek Duben 10 14:33:49 CEST 2003


Ahoj,

predkladam moju uvahu na odu EIS:

Dňa St 9. Apríl 2003 23:57 Jan Kostial napísal(a):
> V otázke, aký programátorský nástroj sa na vývoj použije, nemám zatiaľ
> jasno. Považujem to ale za kľúčovú otázku. Nechám si v tom poradiť.
> Požiadavka je, aby to chodilo v Linuxe aj Win (klient aj DBserver).

> 1. JAVA

OK, ale myslim si, ze cast trhu ziskame (Java je buzzword), ale cast trhu aj 
stratime, lebo Java ma dost velke naroky na hardware. Bolo by to na zvazenie, 
lebo v Jave sa sice programuje fajn, ale za aku cenu...

> 2. PHP - HTML

Nie! Uz na to odznelo dost kritiky, preto to tu uz nebudem opakovat.

> 3. PERL

Mozno, ak nebudu ine moznosti. Problem je v tom, ze Perl pripomina sypany caj, 
a dost zle sa da orientovat v uz napisanom kode (aspon pre mna)

> 4. PYTHON

ANO, ANO, ANO! Python si neviem v poslednom case vynachvalit. Podla mna by to 
bola velmi dobra volba, dobre sa da optimalizovat pomocou prepisania 
kritickych casti kodu do C/C++. Myslim si, ze by to bola velmi dobra volba,

> 4. Kylix + Delphi (čiastočná prenositeľnosť kódu)

Radsej nie, klient by sa v nom asi dal nakreslit celkom dobre, ale Kylix OE ma 
to dake cudne licencne podmienky (programy musia byt pod GPL, co by az tak 
nevadilo), ale je dost okresany o komponenty, ktore by boli potrebne pri 
programovani toho projektu, cize by ho napokon bolo treba aj tak kupit aj pod 
Win aj pod Lin.

> 5. C, C#, C++, gcc

Fu, tu je to dost prepletene, jediny spolocny ukazovatel tohto bodu je vyskyt 
pismena C.

C - radsej nie, bolo by to sice pekelne rychle, ale bol by to beh na dlhe 
trate a nedalo by sa programovat objektovo,

C# - nepoznam, je to daky vymysel Microsoftu a urcite to nebude dobre fungovat 
v tejto dobe pod Linuxom,

C++ - to by celkom slo, bol by som za, musela by sa vsak zvolit nejaka dobra 
graficka kniznica. 

Gr. kniznica:
Najlepsie skusenosti mam s QT, ale ta je free len pre X11 pre GPL (opravte ma 
ak sa mylim) programy, inak ju treba kupit. Moc sa mi to QT paci koli tomu, 
ako obchadza callbacky, toto ma dost navrch. Existuju vsak aj ine graficke 
kniznice, ktore su zadarmo aj pre komercne app., naprv. wxWindows, GTK, 
FLTK... 

Ina moznost je spravit textoveho klienta. Na ucely uctovnictva to podla mna 
postacuje, ale napr. si neviem predstavit z takeho textoveho klienta drag & 
drop nejakej tabulky z/do nejakeho tabulkoveho kalkulatora. A okrem toho, 
textovy klient by sa asi nepresadil komercne.

> 6. ... máte lepší typ?
> (Toto ste videli ? http://www.gnu.org/software/gnue/project/what.html)
>
> Ja by som zvolil Kylix, predpokladám, že sa nájde veľa použiteľných free
> komponentov. Prenos do Delphi by tiež mohol byť schodný.

Na klientsku cast by sa to snad pouzit dalo, ale je pre mna otazka, ako by sa 
riesil server. Klienta podla mna treba co najviac osklbat, aby sa v nom dalo 
spravit co najutulnejsie pouzivatelske rozhranie, ale na druhej strane, 
server by som radsej v Delfoch nepisal. A tu je ten zadrhel -- aj tak sa 
nevyhneme pouzitiu ineho nastroja na vytvorenie servera. (Co by mozno az taky 
problem nebol, ale team by bol pruznejsi, keby ludia co tvoria server mohli 
odbehnut k tvorbe klienta a naopak...) 

> Viacerí sa prikláňajú k Jave. Použiť by sa dalo aj C++ s nejakými
> knižnicami komponentov.

Ta Java, co ja viem, je to pekna zabavka, ale tie HW naroky su dooost vysoke! 
A neviem, ci by to niektori klienti dokazali akceptovat, ze s novym 
uctovnictvom si budu musiet kupit aj nove pocitace, ale ak bude dobre 
marketingove oddelenie, mozno sa zarobi volaco aj na predaji HW ;)

>
> DB server:
> 1. MySQL

Ano, s vyhradami,

> 2. FireBird + InterBase

Ano,

> 3. PostgreSQL (existuje verzia pre Win?)

Ano,

> 4. SAP

Nie SAP, ale SAPDB. Zabaval som sa s tym chvilu a nechalo to vo mne dobry 
dojem, ale neviem sa k tomu vyjadrit,

> 5. IBM DB/2 (tuším je free)
> 6. SYBASE
> 7. ...

Mam dojem ze by to bol kanon na vrabce, ale co ja viem, mozno nie...

> Prikláňam sa k MySQL (podľa referencií, ktoré som čítal).
> Ale už mi aspoň dvaja ľudia napísali, že radšej PostgreSQL ako MySQL. (?)

PostgreSQL podporuje vnorene selecty. 

> V prípade, že sa ako programovací nástroj zvolí Delphi (Kylix),
> možno bude lepšie použiť FireBird (InterBase).

IMHO, urcite.


Stalo by za to pouvazovat, ci by nebolo vhodnejsie spravit celu app ako 
trojvrstvovu, klient - app. server (sem by sa presunula logika z klientov) - 
db server (pripadne aj ine zdroje dat). Podla mna by sa takto dala urobit 
cela app flexibilnejsia a bezpecnejsia, lahsie by sa upgradovala, nebol by az 
taky velky problem vymenit sql server (teda, problem by to bol taky isty, co 
sa tyka programovania ako keby sa to menilo v klientovi, ale pri uz 
existujucich instalaciach by to vyriesilo niektore starosti)

Takto by sa dalo pokracovat donekonecna... Ale treba to dobre prediskutovat.


mP



Další informace o konferenci linux