Avatar
Marek Šimon
Člen
Avatar
Marek Šimon:

Ahojte.

Rozhodol som sa pustit do nejakeho prveho lahsie projektu a zacal som teda robit aplikaciu v konzolovom rozhrani typu zaznamnik. Databaza jednoducha, stlpec ID (auto increment), stlpec zaznam (text zapisku). Cely program funguje (resp. bude fungovat :D ) ako cakanie na uzivatelsky vstup s moznymi prikazmi ako pridaj, odober, zmen, ukonci (pripade dalsie, ak ma nieco napadne). To v kratkosti o projekte.

Vec je ta, ze som na zaciatku a nemam to este tak velmi rozpracovane a plan bol taky, ze spracujem tuto verziu konzolovu a ked to budem mat hotove to prevediem do GUI pomocou JavaFX. Lebo k tomu som sa este nedostal.

Otazka znie.. oplati sa postupovat takto alebo lepsie spravim, ked sa rovno naucim tvorbu GUI a priamo to spracovavam do GUI? Jedna sa mi o tu transformaciu z konzolovej verzie do GUI verzie. Ci tam budem musiet nejake velke zmeny robit v kode alebo sa na urcite eventy a stlacania tlacitiek (pripadne vyber z drop listu) "pripevni" nejaka funkcionalita casti aplikacie.

Prepacte za takto polozenu otazku, ale nerobil som vobec GUI, takze neviem ako to presne funguje.

 
Odpovědět 17. července 16:11
Avatar
mara
Člen
Avatar
mara:

Ahoj,

záleží na tom, jestli aplikaci píšeš objektově. Pokud ji máš napsanou hezky, tak není problém předělat do GUI.

Pokud to ale máš všechno naplácané v jedné třídě, tak to problém bude.

Nahoru Odpovědět 17. července 17:32
Co na srdci, to na Facebooku
Avatar
patrik.valkovic
Šéfredaktor
Avatar
Odpovídá na Marek Šimon
patrik.valkovic:

Obvykle se dělává to, že je konzolová aplikace (ta může fungovat samostatně) a k ní se pouze připíše GUI. Ale jediné, co to GUI dělá je to, že posílá příkazy do konzole ;-) Tedy budeš mít GUI, ale bez jakékoliv logiky a budeš pouze volat příkazy na konzolovou aplikaci.

Akceptované řešení
+20 Zkušeností
+1 bodů
Řešení problému
Nahoru Odpovědět 17. července 17:42
Nikdy neumíme dost na to, abychom se nemohli něco nového naučit.
Avatar
Marek Šimon
Člen
Avatar
Marek Šimon:

Snazim sa robit co najviac objektovo, akurat s navrhom nemam skusenosti a je dost problem pre mna zakomponovat veci do spravnych tried, pripadne rozdelit nejaku logiku, ak by to bol kod efektivnejsi.

Napriklad Databazu, kde je vytvarane pripojenie som spracoval nie ako class, ale enum s jednou konstantou (vlastne singleton). Akurat som cital, ze sa tento navrhovy vzor zle debugguje (co v mojej aplikacii by nemalo robit problem, ale napriklad v praxi nepouzitelne) a ze lepsie je vyuzivat Dependency Injection. Ale ten musim este zistit co je, potom to prevediem na to, ale zatial to necham tak.

Mam triedu s HasMapou, do ktorej davam jednotlive prikazy a tu kolekciu budem odovzdavat triede, ktora bude plan davat dokopy, pre prikazy jednotlive vytvaram samostatne triedy (PrikazVytvorit, PrikazOdobrat,..), kazdy ma svoju logiku co vlastne sa robi po zadani prikazu, vsetky musia implementovat IPrikaz interface a mam tam triedu, ktora spracovava tie prikazy. Proste snazim sa to robit co najviac objektovo.

Tak teoreticky, ked budem mat trosku viac kodu, tak to hodim do zipu a mozete sa na to potom niekto mrknut a povedat, ze ci to robim dobre :)

 
Nahoru Odpovědět 17. července 19:40
Avatar
patrik.valkovic
Šéfredaktor
Avatar
Odpovídá na Marek Šimon
patrik.valkovic:

Tak až toho bueš mít víc, můžeš mi to poslat a já se na to podívám. Ale dopředu upozorňuji, že více kritizuji než chválím a neberu si servítky (abys potom nebyl zklamaný, že je tam třeba vše špatně...) :D

Nahoru Odpovědět 17. července 19:47
Nikdy neumíme dost na to, abychom se nemohli něco nového naučit.
Avatar
Marek Šimon
Člen
Avatar
Odpovídá na patrik.valkovic
Marek Šimon:

Haha :D To je dobre! Pokial to teda bude konstruktivna kritika ]:-> Tak ja si ta teda budem pamatat a poslem ti to do spravy.. ale popri tom sa ucim kopu veci novych, takze mi to bude chvilku trvat, nez to bude mat normalnejsi format hodny kritiky :D

 
Nahoru Odpovědět 17. července 19:50
Avatar
Marek Šimon
Člen
Avatar
Marek Šimon:

Ahojte.. tak mám už časť dokončenú a je plne fungujúca konzolová aplikácia (i keď tam veľa funkcií nie je, ale o tie teraz nejde).

Chcem sa opýtať, či by bol niekto ochotný sa mrknúť na zdroják a napísať mi ohľadom návrhu čo zlepšiť ako upraviť triedy atp. Neočakávam nič konkrétne,chcem to ale prerábať potom do GUI a tak nejaké tie tipy ako tie triedy vylepšiť pre jednoduchšie prehodenie do GUI verzie by boli veľmi vítané :)

Nie je tam toho veľa, možno tak 10-15 tried a nemajú veľa kódu :)

Ak bude niekto teda ochotný, tak napíšte, pošlem vám zdroják :) Je tam všetko okomentované.

 
Nahoru Odpovědět  +1 18. července 20:38
Děláme co je v našich silách, aby byly zdejší diskuze co nejkvalitnější. Proto do nich také mohou přispívat pouze registrovaní členové. Pro zapojení do diskuze se přihlas. Pokud ještě nemáš účet, zaregistruj se, je to zdarma.

Zobrazeno 7 zpráv z 7.