Abstraktne programovanie

Programovacie jazyky, rady, poradňa...
grrJava
Amateur
Amateur
Príspevky: 33
Registrovaný: 12 feb 2012, 16:35

Abstraktne programovanie

Príspevok od používateľa grrJava »

Ahoj lidi. Nepoznáte pls niekto nejaký dobrý spôsob na precvičenie abstraktného programovania resp. nápad na abstraktné programovanie samotné? Robil som už binárne stromy a podobnéí vecičky, a keď mi teraz došiel zoznam zadaní, hľadám ďalšie. Vopred dik.
k+
axxis
Addict
Addict
Používateľov profilový obrázok
Príspevky: 3690
Registrovaný: 29 máj 2007, 21:53
Bydlisko: Spálené mlyny
Kontaktovať používateľa:

Re: Abstraktne programovanie

Príspevok od používateľa axxis »

co je to abstraktne programovanie?
Baseilos
Light Expert
Light Expert
Príspevky: 57
Registrovaný: 01 máj 2011, 2:15

Re: Abstraktne programovanie

Príspevok od používateľa Baseilos »

Neviem co myslis pod abstraktnym programovanim, ale spomenul som si na jedno zadanie z teorie grafov:

Starosta okresu planuje vydaje na opravu ciest na dalsi rok. Medzi jednotlivymi mestami v okrese moze existovat lubovolny pocet ciest a cielom je naplanovat vydaje tak, aby medzi jednotlivymi mestami bola opravene cesty za co najnizsiu cenu. Cena opravy sa odvija od dlzky cesty.
Na vstupe budu zadane jednotlive mesta - uzly v grafe. A cesty medzi jednotlivymi mestami z udanou dlzkou - hrany medzi uzlami s nezapornou vahou,

K binarnym stromom ma napada
- Heapsort
- Prioritna fronta
grrJava
Amateur
Amateur
Príspevky: 33
Registrovaný: 12 feb 2012, 16:35

Re: Abstraktne programovanie

Príspevok od používateľa grrJava »

axxis napísal:co je to abstraktne programovanie?
ja pod tym v skratenej forme chapem programovanie ktore neni zalozene na grafike (ui) a celkovo ani na vystupe. podstatne su tazke operacie v systeme. Napr. binarny strom: Console vstup, vystup, kym v kode sa zistuje ci je zadane cislo vacsie nez cislo v uzle, ak hej ide do laveho podstromu, ak ne tak do laveho. POtom sa prejde cely strom. A pokrocilejsia verzia bezi na IEnumerable a where T:IComparable, cize sa tam da nastavit typ vkladanych a zoradovanych dat, ktore sa porovnavaju ak su IComparable cez IComparable.CompareTo. Pritom uzivatel len tuka do kompu cisla.
harrison314
Hardcore addict
Hardcore addict
Používateľov profilový obrázok
Príspevky: 8223
Registrovaný: 27 máj 2009, 20:42
Bydlisko: Bratislava
Kontaktovať používateľa:

Re: Abstraktne programovanie

Príspevok od používateľa harrison314 »

Ziadne programovanie nie je zalozene na grafike ( v tykom vyzname ako to myslis ty ).
To co si popisal je OOP.

Ak ta bavia algoritmy skus http://people.ksp.sk/~acm/welcome.php ,
ak si chces precvicit iba OOP mozes skusit robit akukolvek vetciu aplikaciu, tam ho vyuzijes az az.
grrJava
Amateur
Amateur
Príspevky: 33
Registrovaný: 12 feb 2012, 16:35

Re: Abstraktne programovanie

Príspevok od používateľa grrJava »

harrison314 napísal:Ziadne programovanie nie je zalozene na grafike ( v tykom vyzname ako to myslis ty ).
To co si popisal je OOP.

Ak ta bavia algoritmy skus http://people.ksp.sk/~acm/welcome.php ,
ak si chces precvicit iba OOP mozes skusit robit akukolvek vetciu aplikaciu, tam ho vyuzijes az az.
Dik. Ide to skor o to, ze aj ked robim väcsiu aplikaciu, babrem sa tam s listboxmi, tlacidlami, textboxmi a pod. A to je nuda.
audiotrack
VIP
VIP
Používateľov profilový obrázok
Príspevky: 25958
Registrovaný: 09 sep 2005, 18:39
Kontaktovať používateľa:

Re: Abstraktne programovanie

Príspevok od používateľa audiotrack »

tak to potom nerobíš väčšiu aplikáciu. Je to malá aplikácia s veľa zbytočnými elementami
grrJava
Amateur
Amateur
Príspevky: 33
Registrovaný: 12 feb 2012, 16:35

Re: Abstraktne programovanie

Príspevok od používateľa grrJava »

Robil som správu obchodu - trochu dedičnosti a kopec (nie zbytočných elementov) na zadávanie a zobrazovanie. Zmenšoval som všetko tak že sa cez radiobutton vyberalo, čo listbox vypisuje. A šlapalo to aklo hodinky, len tried tam bolo málo. Väčšinou formy.
audiotrack
VIP
VIP
Používateľov profilový obrázok
Príspevky: 25958
Registrovaný: 09 sep 2005, 18:39
Kontaktovať používateľa:

Re: Abstraktne programovanie

Príspevok od používateľa audiotrack »

grrJava napísal:...len tried tam bolo málo. Väčšinou formy.
audiotrack napísal:tak to potom nerobíš väčšiu aplikáciu. Je to malá aplikácia s veľa zbytočnými elementami
harrison314
Hardcore addict
Hardcore addict
Používateľov profilový obrázok
Príspevky: 8223
Registrovaný: 27 máj 2009, 20:42
Bydlisko: Bratislava
Kontaktovať používateľa:

Re: Abstraktne programovanie

Príspevok od používateľa harrison314 »

No vidis a uz mas co robit, prerob tu aplikaciu tak ako sa ma, oddelit GIU od jadra sprav ju modularnu, konfigovatelnu a aby splnala open-close princip. Ak to spravis poriadne zarujem ti ze bude mat nad 7 rozhrani a 15 tried, aj ked bude vizerat tak isto a robit to iste.

Len tak medzi nami C# je velmi velmi zle na ucenie OOP, lebo zvadza svojimi funkcionalni prvkami.
Baseilos
Light Expert
Light Expert
Príspevky: 57
Registrovaný: 01 máj 2011, 2:15

Re: Abstraktne programovanie

Príspevok od používateľa Baseilos »

Je nutne si uvedomit, ze tlacit OOP vsade (mam pocit ze aj na skolach sa uci povacsine rovno OOP) je uplne scestne. Na tie ulohy co som ti napisal, ti uplne staci obycajny dosovsky Pascal, alebo C. OOP je podla ako bolo spomenute prinosne az u strednych a vacsich projektoch.

Ako spominal Harisson snad sa v programoch aplikovat spravny OO pristup, navrhove vzory (http://objekty.vse.cz) a architektonicke vzory a zistis ze to nie je len o UI vrstve a pokial programujes nad .NET obzri sa po WPF.
audiotrack
VIP
VIP
Používateľov profilový obrázok
Príspevky: 25958
Registrovaný: 09 sep 2005, 18:39
Kontaktovať používateľa:

Re: Abstraktne programovanie

Príspevok od používateľa audiotrack »

si trochu protirečíš, lebo práve návrhové vzory bez OOP nevyužiješ. A dôvod, prečo sa na školách učí rovno OOP je ten, že v jednotlivých metodach tried využiješ princípy štrukturálneho programovania rovnako ako v štrukturálnom programovaní. Opačne to však neplatí
Baseilos
Light Expert
Light Expert
Príspevky: 57
Registrovaný: 01 máj 2011, 2:15

Re: Abstraktne programovanie

Príspevok od používateľa Baseilos »

audiotrack napísal:si trochu protirečíš, lebo práve návrhové vzory bez OOP nevyužiješ. A dôvod, prečo sa na školách učí rovno OOP je ten, že v jednotlivých metodach tried využiješ princípy štrukturálneho programovania rovnako ako v štrukturálnom programovaní. Opačne to však neplatí
Ano suhlasim navrhove vzory bez OOP nevyuzijes. Ja som mal na mysli to, ze pokial programovat OO tak sa snazit aplikovat zname a overene postupy a nech to ma hlavu a patu.
Podla mojho nazoru je OOP pre zaciatocnika skor na skodu. Nemam to sice overene, ale myslim si, ze na skolach ludi nenaucia OOP tak, aby vedeli rozlisit kde a kedy je to vhodne a kde este nie a uz vobec si nemyslim ze pochopia jeho prinosy. Niesom zastancom tlacenia OOP za kazdu cenu.
harrison314
Hardcore addict
Hardcore addict
Používateľov profilový obrázok
Príspevky: 8223
Registrovaný: 27 máj 2009, 20:42
Bydlisko: Bratislava
Kontaktovať používateľa:

Re: Abstraktne programovanie

Príspevok od používateľa harrison314 »

Baseilos: nie na vsetkych skolach sa hned uci OOP, ale v principe mas pravdu, pchat ho vsade nie je "zdarave" ale videl som aj take, ze proceduralne programovanie sa uci na jave co sa mi zda dost metuce pre studentov.
Na druhej strane celkom nesuhlaim z prehnanim pouzivanim vzorov, ked sa tam hodia preco nie, ale pchat ich do projektu len preto ,ze je to vzor, to nie.
Napísať odpoveď