NOVINKA: Získej 40 hodin praktických dovedností s AI – ZDARMA ke každému akreditovanému kurzu!
Hledáme nové posily do ITnetwork týmu. Podívej se na volné pozice a přidej se do nejagilnější firmy na trhu - Více informací.
Avatar
Richard H.
Tvůrce
Avatar
Odpovídá na Luboš Běhounek Satik
Richard H.:7.1.2016 19:46

S deseti vlastnostmi k čemu by si něco takového psal a navíc minimálně eclipse umí číst strukturu tedy....

Odpovědět
7.1.2016 19:46
Malý užitečný manuál je vždy lepší než bichle k ničemu.
Avatar
Jaro
Člen
Avatar
Odpovídá na Neaktivní uživatel
Jaro:7.1.2016 19:56

a čo tak toto?

foo.addToBar(int value);
Nahoru Odpovědět
7.1.2016 19:56
“What would you do if you were 100% sure you couldn’t fail?”
Avatar
Atrament
Člen
Avatar
Odpovídá na Luboš Běhounek Satik
Atrament:7.1.2016 19:57

Ne, nemá to ani ten nejmenší vliv, jak už jsem tu několikrát psal - je to čistě subjektivní pocit, neexistuje žádný objektivně lepší způsob, protože každému vyhovuje něco jiného. Tobě se líbí jak to má C#, mně se to tak nelíbí, ale plně chápu že tobě v tom případě přijde C# verze lepší, mně ne. Mně se líbí jak to má Java a já si myslím, že Javovský přístup je lepší, přehlednější a čitelnější. Ale je to opět jen a jen můj subjektivní pocit. Srovnávání jazyků na základě těchto vlastností je mimo.

 
Nahoru Odpovědět
7.1.2016 19:57
Avatar
Jaro
Člen
Avatar
Odpovídá na Luboš Běhounek Satik
Jaro:7.1.2016 19:59

Hovorí ti niečo SRP? Trieda, ktorá má 10 vlastností a ku každej getter/setter je buď dátová štruktúra alebo veľmi zle navrhnutá trieda.

Nahoru Odpovědět
7.1.2016 19:59
“What would you do if you were 100% sure you couldn’t fail?”
Avatar
Jaro
Člen
Avatar
Odpovídá na Neaktivní uživatel
Jaro:7.1.2016 20:03

by the way, keď máš k premennej getter aj setter môžeš ju nechať rovno public, čiže sa to zjednoduší na niečo takéto

foo.bar++;

:) a to je už veľmi podobné tomu C#-like zápisu

Nahoru Odpovědět
7.1.2016 20:03
“What would you do if you were 100% sure you couldn’t fail?”
Avatar
Odpovídá na Richard H.
Luboš Běhounek Satik:7.1.2016 20:45

K čemu bych něco takového psal? To tak u programování bývá, že se píše kód :)
Deset vlastností byl jen příklad...
Ano strukturu číst umí, ale pořád ti ten kód zabere 4-5x víc řádků, takže pokud třeba přidáváš někam další getter/setter, musíš se skrz to proscrollovat, když to čteš jako něco, co psal někdo jiný, tak taky - musíš se přes to proscrollovat...

Nahoru Odpovědět
7.1.2016 20:45
https://www.facebook.com/peasantsandcastles/
Avatar
Odpovídá na Jaro
Luboš Běhounek Satik:7.1.2016 20:46

a čo tak toto?

foo.addToBar(int value);

Takže když budu chtít hodnotu místo přičtení násobit, přidáš další metodu? To čitelnosti moc nepomůže... :)

Nahoru Odpovědět
7.1.2016 20:46
https://www.facebook.com/peasantsandcastles/
Avatar
Odpovídá na Atrament
Luboš Běhounek Satik:7.1.2016 20:47

Ne, to není subjektivní pocit, prohrabávat se kódem třídy, která má 10 nebo 60 řádků je o něčem jiném, to není o pocitu.

Nahoru Odpovědět
7.1.2016 20:47
https://www.facebook.com/peasantsandcastles/
Avatar
Odpovídá na Jaro
Luboš Běhounek Satik:7.1.2016 20:49

Hovorí ti niečo SRP? Trieda, ktorá má 10 vlastností a ku každej getter/setter je buď dátová štruktúra alebo veľmi zle navrhnutá trieda.

Ty jsi akademik nebo student, co nezažil praxi, viď?
Ano, spousty těhlech myšlenek jsou hezký, ale v praxi to není tak jednoduchý :)

Nahoru Odpovědět
7.1.2016 20:49
https://www.facebook.com/peasantsandcastles/
Avatar
Odpovídá na Atrament
Luboš Běhounek Satik:7.1.2016 20:52

Ne, nemá to ani ten nejmenší vliv, jak už jsem tu několikrát psal - je to čistě subjektivní pocit, neexistuje žádný objektivně lepší způsob, protože každému vyhovuje něco jiného. Tobě se líbí jak to má C#, mně se to tak nelíbí, ale plně chápu že tobě v tom případě přijde C# verze lepší, mně ne. Mně se líbí jak to má Java a já si myslím, že Javovský přístup je lepší, přehlednější a čitelnější

Jak může být Javovský přístup čitelnější a přehlednější, když C# umožňuje obojí? :)

Srovnávání jazyků na základě těchto vlastností je mimo.

To je pravda jen z části, čitelnost a jednoduchost zápisu sice nepatří mezi ty nejdůležitější vlastnosti jazyka, ale také patří :)

OT: Omlouvám se za spam, ale citace neumožňuje zobrazit autora (nebo aspoň nevím jak), tak je to takhle přehlednější.

Nahoru Odpovědět
7.1.2016 20:52
https://www.facebook.com/peasantsandcastles/
Avatar
Jaro
Člen
Avatar
Odpovídá na Luboš Běhounek Satik
Jaro:7.1.2016 21:14

Viem že v praxi to je iné, ale to neznamená, že sa prestanem snažiť robiť všetko najlepšie ako viem, áno zaujímam sa o agile development a vždy sa budem snažiť robiť veci správne, aj keď mi je jasné, že to nebude ľahké, ale to je už každého osobná vec. Každému sa páči niečo iné, každý preferuje iné zápisy, iný štýl a tým by som to uzavrel, nemá význam to ďalej riešiť, či sú lepšie gettery alebo vlastnosti.

Nahoru Odpovědět
7.1.2016 21:14
“What would you do if you were 100% sure you couldn’t fail?”
Avatar
Jaro
Člen
Avatar
Odpovídá na Luboš Běhounek Satik
Jaro:7.1.2016 21:17

Ako som písal, ak k tomu máš getter aj setter, môžeš to dať public a máš identické zápisy so C#.

Nahoru Odpovědět
7.1.2016 21:17
“What would you do if you were 100% sure you couldn’t fail?”
Avatar
Richard H.
Tvůrce
Avatar
Odpovídá na Luboš Běhounek Satik
Richard H.:7.1.2016 21:30

No nejenom číst jde se v tom taky pohybovat jednoduše klikneš na nějakou metodu a eclipse se tam automaticky presune.

Nahoru Odpovědět
7.1.2016 21:30
Malý užitečný manuál je vždy lepší než bichle k ničemu.
Avatar
dobrakmato
Člen
Avatar
Odpovídá na Neaktivní uživatel
dobrakmato:7.1.2016 21:44

Ja by som sa este vyjadril k tomu prikladu Foo.Bar++. Ak casto zvysujem hodnotu tej vlastnosti o jedna, tak si myslim, ze sa to podoba na nejaky counter. Ak je to counter, tak mi pride najcistejsie a prehladnejsie riesenie vytvorit objekt counteru (alebo pouzit existujuci napr. https://docs.oracle.com/…Integer.html) a volat na nom metodu increment();.

Ale az tak casto sa mi nestava, ze by som potreboval incrementovat nejaky integer medzi viacerimi triedami. Skor mi to zavana nejakym zlym navrhom. Casto incrementujem iba nejake sukromne coutnery, ktore patria tej triede a okolie sa o ne nema zaujimat. A ak je to nejaka klucova vlastnost, mozno je dobre sa zamysliet nad tym, ako vytvorit mutatori s ohladom na to, ako ma byt ta vlastnost mutovana.


Ale cudujem sa, ze sa tu riesia take somariny ako gettery, settery, foreach a podobne hovadiny, ked podla mna su celkom podstate vyhody C# v tom, ze ma napriklad pretazovanie operatorov. Zas je ale dobre sa zamysliet, ci je to pretazovanie operatorov naozaj take podstatne pre jazyk ako je Java...

 
Nahoru Odpovědět
7.1.2016 21:44
Avatar
Atrament
Člen
Avatar
Odpovídá na Luboš Běhounek Satik
Atrament:7.1.2016 21:46

No ale Java ten C# přístup taky přece umožňuje. Prostě si nadefinuj všechny atributy jako public a nemusíš se vůbec s nějakýmy gettery a settery vůbec otravovat :) Heh a když už v tom budeš tak si rovnou udělej všechny metody statické, abys nemusel řešit předávání instancí mezi objekty, to ti taky ušetří hromady práce :)

 
Nahoru Odpovědět
7.1.2016 21:46
Avatar
Odpovídá na dobrakmato
Neaktivní uživatel:7.1.2016 22:09

Samozřejmě že nejsou potřeba přetěžovatelné operátory, vlastně nejsou potřeba ani třídy a další vymoženosti. Můžeš rovnou psát v assembly jestli chceš. Všechny tyhle věci co zavádí vyšší jazyky tam jsou prostě pro usnadnění práce.

Nahoru Odpovědět
7.1.2016 22:09
Neaktivní uživatelský účet
Avatar
Jaro
Člen
Avatar
Odpovídá na Neaktivní uživatel
Jaro:7.1.2016 22:23

a čo iné ako "syntaktický cukor", ktorý môže viesť k veľkým chýbám a zlým interpretáciam, je preťažovanie operátorov...? "Operators don't always do what you expect them to do."

Nahoru Odpovědět
7.1.2016 22:23
“What would you do if you were 100% sure you couldn’t fail?”
Avatar
Odpovídá na Jaro
Neaktivní uživatel:7.1.2016 22:47

Já osobně zastávám názor, že moderní jazyky by měli ne jen dovolovat co největší svobodu v overloadingu operátorů ale i možnost definovat vlastní operátory. Programátor by měl mít svobodu, ale měl by také mít rozum ji využít moudře. Overloading prostě povoluje tvořit třídy, které se chovají jak to od nich očekáváš i bez použití zbytečných metod. Například takový vektor nebo komplexní číslo.

Nahoru Odpovědět
7.1.2016 22:47
Neaktivní uživatelský účet
Avatar
jackx
Člen
Avatar
jackx:7.1.2016 22:47

To je parada, jak se to tu rozjelo. Pridam trochu oleje do ohne: Byl by Schwarzenberg lepsi prezidet nez Zeman?
Nebo: Je lepsi Linux nez Windows? A nez odpovite, ptam se jako hrac her ;-)
Atd...

Nahoru Odpovědět
7.1.2016 22:47
Nic není nemožné.
Avatar
Jaro
Člen
Avatar
Odpovídá na Neaktivní uživatel
Jaro:7.1.2016 23:10

Súhlasím, že sú situácie, kedy sa preťaženie hodí. V C++ sa to hojne využíva, Java preťaževanie nemá a je to jeden z najpoužívanejšich jazykov, nech si každý spraví vlastný názor, či je to dobre alebo nie. Podľa mňa ak by to ozaj chýbalo a nedalo sa bez toho fungovať, tak by to tam už dávno pridali.

Nahoru Odpovědět
7.1.2016 23:10
“What would you do if you were 100% sure you couldn’t fail?”
Avatar
Atrament
Člen
Avatar
Odpovídá na dobrakmato
Atrament:7.1.2016 23:21

Jo tak přetěžování operátorů by se občas fakt hodilo :)

 
Nahoru Odpovědět
7.1.2016 23:21
Avatar
Patrik Valkovič:7.1.2016 23:25

No, jako když jsme u toho bez čeho by se nedalo fungovat? K čemu vlastně potřebujeme funkce, a třídy? Bez těch se přece obejdeme. A když jsme u toho, nějaké cykly...bez těch bychom se koneckonců taky obešli.
Na druhou stranu, přetěžování operátorů - no jak často to potřebujeme?

Nahoru Odpovědět
7.1.2016 23:25
Nikdy neumíme dost na to, abychom se nemohli něco nového naučit.
Avatar
Jaro
Člen
Avatar
Odpovídá na Patrik Valkovič
Jaro:8.1.2016 8:18

Tak do istej miery sa dajú uplatniť princípy OOP aj v C, alebo vo funkcionálnom jazyku. Skôr si je lepšie položiť otázku, bez čoho nemôžem rozumne programovať?

Nahoru Odpovědět
8.1.2016 8:18
“What would you do if you were 100% sure you couldn’t fail?”
Avatar
Richard H.
Tvůrce
Avatar
Odpovídá na Jaro
Richard H.:8.1.2016 9:56

Bez počítače nemůžeme programovat protože se dá programovat i ve strojáku. Ale bez compu prostě programovat nejde.

Editováno 8.1.2016 9:56
Nahoru Odpovědět
8.1.2016 9:56
Malý užitečný manuál je vždy lepší než bichle k ničemu.
Avatar
Atrament
Člen
Avatar
Odpovídá na Richard H.
Atrament:8.1.2016 10:05

Mno čistě teoreticky můžeš. Když na kus papíru napíšeš přesný postup výroby něčeho a ten papír předáš dělníkovi, a ten podle tohoto postupu vyrobí daný výrobek - právě jsi úspěšně naprogramoval dělníka :) Imho nelze programovat akorát bez mozku :)

 
Nahoru Odpovědět
8.1.2016 10:05
Avatar
Jaro
Člen
Avatar
Odpovídá na Atrament
Jaro:8.1.2016 10:23

Tu sa ponúka otázka, čo je to podľa vás programovanie? :)

Nahoru Odpovědět
8.1.2016 10:23
“What would you do if you were 100% sure you couldn’t fail?”
Avatar
David Novák
Tvůrce
Avatar
Odpovídá na Richard H.
David Novák:8.1.2016 10:24

Ada Lovelace nesouhlasí ;)

Nahoru Odpovědět
8.1.2016 10:24
Chyba je mezi klávesnicí a židlí.
Avatar
Richard H.
Tvůrce
Avatar
Odpovídá na David Novák
Richard H.:8.1.2016 14:43

Ale ten program nebyl nikdy uveden do provozu protože Babbge to comp nidky nepostavil.

Nahoru Odpovědět
8.1.2016 14:43
Malý užitečný manuál je vždy lepší než bichle k ničemu.
Avatar
David Novák
Tvůrce
Avatar
Odpovídá na Richard H.
David Novák:8.1.2016 15:28

No a? To přeci vůbec nevadí. Byla první programátor vůbec a dodnes z jejího díla čerpáme dodnes.

Pointa je v tom, že můžeš naprosto v pohodě programovat bez počítače.. Jestli ne, tak sorry, ale programátor vůbec nejsi.. A je bohužel smutná pravda, že existuje spousta "programátorů", co jsou bez IDE nebo možnosti si to přeložit a spustit, naprosto ztracení a nepoužitelní..

Nahoru Odpovědět
8.1.2016 15:28
Chyba je mezi klávesnicí a židlí.
Avatar
Odpovídá na David Novák
Neaktivní uživatel:8.1.2016 15:38

ja mam pocit, ze jsem nekde cetl, ze ve skutecnosti nebyla prvni programator...ten jeji mentor ve skutecnosti napsal algoritmus daleko driv a ona z nej prave cerpala...navic treba takovej Eukleides :D co ten chudak by na to rekl? ze pro nas "pouhy" algoritmus neni dost eno nuno

Nahoru Odpovědět
8.1.2016 15:38
Neaktivní uživatelský účet
Avatar
David Novák
Tvůrce
Avatar
Odpovídá na Neaktivní uživatel
David Novák:8.1.2016 15:48

napsat algoritmus != programovat..

Proč? Takový recept na bábovku je třeba dobrý příklad algoritmu ;) Jsou všichni autoři kuchařek programátoři?

Skoro vše můžeš popsat nějakým algoritmem (postupem).. To z tebe ovšem nedělá ještě programátora - programátor je někdo, kdo vytváří programy. Program je algoritmus zapsaný jako posloupnost instrukcí a je určen k vykonání počítačem.

Nahoru Odpovědět
8.1.2016 15:48
Chyba je mezi klávesnicí a židlí.
Avatar
Petr Čech
Tvůrce
Avatar
Odpovídá na David Novák
Petr Čech:8.1.2016 19:49

To je sice pravda, ale kdy v situaci bez IDE nebo nedejbože počítače budeš psát kód?

Nahoru Odpovědět
8.1.2016 19:49
the cake is a lie
Avatar
David Novák
Tvůrce
Avatar
Odpovídá na Petr Čech
David Novák:8.1.2016 20:01

Typicky na přijímacím pohovoru.. ;)

Nebo tě napadne něco někde mimo civilizaci nebo při cestování, tak si to napíšeš na papír..

Jinak mluvím z vlastní zkušenosti - dříve (střední škola) jsem byl na IDE naprosto závislý.. Nepamatoval jsem si názvy funkcí a často ani jak napsat některé konstrukce (snippety v IDE to vkládaly za mě). Jsem rád, že jsem od toho upustil a dal si na rok zákaz jakýchkoliv našeptávačů.. Teď je již vůbec nepotřebuji (ale ani mi nevadí, když je mám) a moje efektivita se zlepšila - i při použití IDE. Osobně si myslím, že IDE je dobré pro naprosté začátečníky a pak až pro zkušené programátory. Začátečníkům to usnadní začátek - klikneš na zelenou šipečku a spustí se to.. Zkušeným zase práci. Těm mezi bych naopak vřele doporučil IDE zavrhnout, naučit se psát všemi deseti, pokud neumí a vyzkoušet si překlad pomocí Makefilu a psát bez berliček - vryje se to mnohem lépe do paměti ;)

Nahoru Odpovědět
8.1.2016 20:01
Chyba je mezi klávesnicí a židlí.
Avatar
Odpovídá na David Novák
Neaktivní uživatel:8.1.2016 20:07

Na druhou stranu programování ve vyšších jazycích není moc dobře možné bez IDE nebo alespoň editoru s našeptávačem, protože těch tříd a funkcí je tam tolik, že zapamatovat si to fakt moc nejde :-D

Nahoru Odpovědět
8.1.2016 20:07
Neaktivní uživatelský účet
Avatar
David Novák
Tvůrce
Avatar
Odpovídá na Neaktivní uživatel
David Novák:8.1.2016 20:23

Nikdy jsem moc nechápal, k čemu to tam vše je, když ti teoreticky na vše stačí AND, OR a NOT.. :D

A pak chudák lokalita zdrojového kódu..

Nahoru Odpovědět
8.1.2016 20:23
Chyba je mezi klávesnicí a židlí.
Avatar
Odpovídá na David Novák
Michal Žůrek - misaz:8.1.2016 20:54

tak přemýšlej znova.

 
Nahoru Odpovědět
8.1.2016 20:54
Avatar
Jaro
Člen
Avatar
Odpovídá na David Novák
Jaro:8.1.2016 21:13

IDE je skvelá vec, napríklad potrebuješ urobiť úplne jednoduchú refaktorizáciu (premenovanie triedy) v projekte ktorý má stovky súborov a tá trieda je použitá na x miestach.. som zvedavý ako to v tom tovojom editore spravíš :) ako čo sa týka refaktorizácie sa žiadny editor nechytá.

Nahoru Odpovědět
8.1.2016 21:13
“What would you do if you were 100% sure you couldn’t fail?”
Avatar
Jaro
Člen
Avatar
Odpovídá na David Novák
Jaro:8.1.2016 21:14

je to tam na to aby si sa mohol sústrediť na svoju aplikáciu a nemusel vynaliezať koleso

Nahoru Odpovědět
8.1.2016 21:14
“What would you do if you were 100% sure you couldn’t fail?”
Avatar
tomisoka
Tvůrce
Avatar
Odpovídá na Jaro
tomisoka:8.1.2016 21:37

regex? Mimochodem nedělá to IDE taky pomocí regexů?

 
Nahoru Odpovědět
8.1.2016 21:37
Avatar
Odpovídá na tomisoka
Michal Žůrek - misaz:8.1.2016 21:40

ne nedělá, musí samozřejmě analyzovat kód.

 
Nahoru Odpovědět
8.1.2016 21:40
Avatar
Jaro
Člen
Avatar
Odpovídá na tomisoka
Jaro:8.1.2016 21:58

No to nie je také jednoduché, tomu kódu to musí aj trošku rozumieť, čo keď premenuje, to čo nemal premenovať? a toto je len najednoduchší refaktoring, nejaké zložitejšie by sa ešte horšie robili. Proste na toto sú IDE skvelé.

Nahoru Odpovědět
8.1.2016 21:58
“What would you do if you were 100% sure you couldn’t fail?”
Avatar
David Novák
Tvůrce
Avatar
Odpovídá na Jaro
David Novák:8.1.2016 22:13

Proč bych potřeboval dělat refaktorizaci? Mám ve zvyku se prvně zamyslet a udělat si nějaký návrh, než začnu psát.. ;)

Ale neříkám, že IDE není dobré.. Proč si neusnadnit práci, když je ta možnost - jen říkám, že jeho používání často vytváří opravdu špatné návyky a pak spousta softwaru vypadá tak, jak vypadá..

Nahoru Odpovědět
8.1.2016 22:13
Chyba je mezi klávesnicí a židlí.
Avatar
Jaro
Člen
Avatar
Odpovídá na David Novák
Jaro:9.1.2016 8:43

No ja mám skôr pocit že veľa softweéru vyzerá tak ako vyzerá (krásny príklad Android) kvôli tomuto

Proč bych potřeboval dělat refaktorizaci?

:) Nie vážne na prvý pokus sa ti málokedy podarí napísať poriadne kód, veľmi rýchlo zistíš, že niečo by sa dalo presunúť do inej triedy, premenovať, hodiť to do inej funkcie. Refaktorizácia je potrebná a to najmä vo veľkých projektoch, pri domácich úlohách to je asi jedno :)

Nahoru Odpovědět
9.1.2016 8:43
“What would you do if you were 100% sure you couldn’t fail?”
Avatar
Jaro
Člen
Avatar
Odpovídá na David Novák
Jaro:9.1.2016 8:46

Tým nechcem povedať, že textové editory nie sú super, sám používam gedit/notepad++ a aj vim trochu a teraz si predstav, akú produktivitu budeš mať, keď máš v ruke vi skratky a začneš programovať v takej IntelliJIDEA s IdeaVim pluginom.. :) To je proste radosť pracovať s takou kombináciou.

Nahoru Odpovědět
9.1.2016 8:46
“What would you do if you were 100% sure you couldn’t fail?”
Avatar
David Novák
Tvůrce
Avatar
Odpovídá na Jaro
David Novák:9.1.2016 10:45

Pokud to pak potřebuješ přepisovat, pak jsi zanedbal první a nejdůležitější krok - návrh.. Což je také jeden z hlavních důvodů selhání projektu (nedodržení termínu, funkcionality nebo vůbec nedokončení)..

Když dostaneš nápad/zadání a pár hodin potom už píšeš kód, tak je někde chyba a ten kód většinou nebude stát za nic (teď mluvíme o složitějších projektech).. V reálných projektech je implementace pouze malá část (10-20% času) a zdaleka nejvíc zabere testování a údržba.. Dobrý návrh minimalizuje problémy po implementaci.. Jenže spousta lidí nepřemýšlí dopředu a často dělají návrh během implementace (sedneš k PC, napíšeš si kostru třídy a pak si říkáš: "Tak jak bych to mohl udělat..?"). Takový přístup ovšem prakticky vždy vede ke špatnému návrhu a řešení, protože nepřemýšlíš nad celkem.

A to je rozdíl mezi programováním a softwarovým inženýrstvím. Před začátkem implementace by měl existovat kompletní návrh celého systému a všech jeho částí.. Pak nebudeš potřebovat dělat nějakou refaktorizaci a narazíš jen na málo problémů.. ;)

Nahoru Odpovědět
9.1.2016 10:45
Chyba je mezi klávesnicí a židlí.
Avatar
Jaro
Člen
Avatar
Odpovídá na David Novák
Jaro:9.1.2016 11:00

V tom prípade si človek nevýdaných schopností, ak napíšeš dokonalý kód na prvý pokus. To nevedia ani špičkoví svetoví programátori ;) Nebudem sa ďalej hádať, sám na to prídeš časom.

Nahoru Odpovědět
9.1.2016 11:00
“What would you do if you were 100% sure you couldn’t fail?”
Avatar
David Novák
Tvůrce
Avatar
Odpovídá na Jaro
David Novák:9.1.2016 11:39

Přečti si to znova ;)

A co říkám vychází nejen z mé zkušenosti, ale také ze zkušenosti tisíců profesionálů, kteří se na vzniku SW inženýrství podíleli. Mimochodem se o tom začalo mluvit právě proto, že vývoj trval dlouho a byl často neúspěšný.. Typicky zabere detailní návrh asi tak dvakrát více času než následná implementace - tam už ale moc problémů není, protože se na ně narazilo při tvorbě návrhu a byly vyřešeny.. A je to třeba právě kvůli nedokonalosti programátorů a také proto, že je typicky větší tým a je třeba prvně se domluvit..

Nahoru Odpovědět
9.1.2016 11:39
Chyba je mezi klávesnicí a židlí.
Avatar
Jaro
Člen
Avatar
Odpovídá na David Novák
Jaro:9.1.2016 11:52

V tomto sa mi páči agile prístup a TDD, ktoré ťa prirodzene vedieť k správnemu návrhu, pretože testovateľný systém je aj dobre navrhnutý systém. Cyklus red-green-refactor, ťa tiež núti udržovať svoj kód čistý. Ono nerefektoruje sa preto lebo je to riziko, že niečo pokazíš, ale akonáhle máš ku kódu testy, na ktoré sa môžeš spolahnúť, tak si môžeš refaktorovať a vylepšovať koľko chceš s čistým svedomím. Som zvedavý ako sa zaobídeš bez refaktorizácie a testovania, keď budeš musieť pracovať s nie moc pekným kódom a niečo do neho pridať/zmeniť (veľmi častá činnosť). Asi zvolíš prístup "Edit and pray" :) Málokedy budeš písať niečo od základu.

Nahoru Odpovědět
9.1.2016 11:52
“What would you do if you were 100% sure you couldn’t fail?”
Avatar
Odpovídá na David Novák
Luboš Běhounek Satik:9.1.2016 15:16

Pokud to pak potřebuješ přepisovat, pak jsi zanedbal první a nejdůležitější krok - návrh.. Což je také jeden z hlavních důvodů selhání projektu (nedodržení termínu, funkcionality nebo vůbec nedokončení)..

To platí jen v ideálním prostředí = skoro nikdy. Musel bys na projektu pracovat sám a nesmí se ti měni zadání v průběhu práce...

Většina vývoje je udržování existujících projektů - klient se rozhodne přidat někde něco malýho, co třeba ve výsledku znamená přepsat i nějaké základní věci a nebo je to už delší dobu běžící projekt, ještě se zbytky starých technologií, které už nejsou podporovány apod.

A ani při návrhu se nevyhneš chybám, pokud je to nějaký rozsáhlejší projekt.

Nahoru Odpovědět
9.1.2016 15:16
https://www.facebook.com/peasantsandcastles/
Avatar
Odpovídá na Luboš Běhounek Satik
Michal Žůrek - misaz:9.1.2016 15:35

on je z vysoké školy evidentně zvyklí jen na ideální prostředí, kde jim zadají zadání a pak po nich chtějí řešení.

 
Nahoru Odpovědět
9.1.2016 15:35
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 50 zpráv z 163.