Diskuze: Kdy a kde začít? Jaké minimální znalosti potřebuji pro uplatnění jako C# programátor?
V předchozím kvízu, Test znalostí C# .NET online, jsme si ověřili nabyté zkušenosti z kurzu.
Tvůrce
Zobrazeno 26 zpráv z 76.
//= Settings::TRACKING_CODE_B ?> //= Settings::TRACKING_CODE ?>
V předchozím kvízu, Test znalostí C# .NET online, jsme si ověřili nabyté zkušenosti z kurzu.
Otázkou je, co si programátor představuje pod pojmem OOP. Pokud v metodě záleží na pořadí příkazů, už se jedná spíš o imperativní programování.
Zkus to rozlišit na dvou programech, které dělají totéž, ale jeden to má v C++ na 50 řádcích a druhý to má na jednom řádku v shellu. Kdo z nich je lepší programátor, když ten "skriptař" to bude mít dřív a dokonce ten jeho program bude rychlejší?
Nerekl bych prikazu. Pote by neslo pouzit prave oop nikdy. Spise volani
samostatnych metod. Pokud bych mel metodu,ve ktere volam dalsi a zavisi u nich
na poradi tak ok,ale jak chces zjistit delku pole pred jeho naplnenim?
Ale chapu jak si to myslel.
Proč bych měl zjišťovat délku pole před jeho naplněním? V OOP to není nutné a dokonce to nebylo nutné ani v tak starém jazyku jako např. ve Fortranu.
Jasně, ale když budeš takových blbostí hledat víc, tak nakonec dojdeš k tomu, že v OOP jsou while, if, switch a další řídící struktury de facto zbytečné a že jsou tam jen kvůli programátorům, kteří je vyžadují.
To máš pravdu a jsem rád že si to nahodil. Je rozdíl si ten příkaz napsat (programátor) a ten příkaz jen hloupě používat a nevědět pomalu ani jak to uvnitř funguje (lepič) Takže pro mě je rozhodně lepší ten kdo to udělá v C++ samozřejmě teď otázka "umí si to ten co to dělal v shellu napsat taky sám v nějakém jazyce?" Až pak bych začal řešit rychlost a počty řádků.
tak sem to nemyslel. Jen ze ten tvuj popis neni uplne presny. To je vse.
Když jsme u toho, tak existují jazyky s čistým OOP, ale jsou pro praxi nepoužitelné, protože některé vlastnosti se tam dělají až moc složitě.
Chtěl bych tě vidět, jak tohle obhajuješ při tvorbě programu, který má třeba jen seřadit jména podle abecedy.
Otázka tedy zní obráceně: Umí to ten programátor v C++ udělat i nějakým hotovým nástrojem, který je na to určen? Nebo ho mám vyhodit hned kvůli nízké produktivitě jeho práce?
Dejme tomu list, fajn používá to každý javista, C#ista. Ale hodně z nich ani neví jak si udělat vlastní list bez použití pole - jen přes spojový seznam. A podle tebe to jsou programátoři, podle mě ne. Stejně tak jako podle mě není práce ve worldu programování. Obhajovat nic nemusím je to můj osobní názor. Taky nejsem dokonalý a nevím jak se některé věci co používám vytváří například... teď mě nic nenapadá ... jo třeba bufferedImage v javě taky nemám páru jak bych to udělal sám pomocí něčeho jiného a udělat si vlastní bufferedImage, proto si taky neříkám programátor.
Naučit se používat hotové nástroje je daleko jednodušší než "to" napsat sám. Pokud něco programátor dokáže sám napsat, pak pro něj nebude problém se naučit pro tu danou věc používat nějaký hotový nástroj. Pokud ale někdo umí pouze používat již hotové nástroje, nevypovídá to o něm, že je dobrý programátor, protože ve skutečnosti třeba neumí nic.
a přesně tohle jsem měl na mysli, dík neumim se vyjadřovat.
EDIT: ten bufferedimage nebyl zrovnu dobrý příklad
Podle tebe tedy jsem programátor, protože umím udělat list přes spojový seznam. Jenom to už tak nedělám, protože jsem líný. Stejně tak už neprogramuji AVL stromy ani hashovací tabulky, i když je umím. A se sortem se už také párat nebudu, protože dělat porovnávací funkci pro česká písmenka je opruz.
Podle mě je programátor ten člověk, který si nástroje, které používá umí napsat i sám. To že to sám nepíše je úplně jedno...komu by se chtělo si psát svůj list když už v javě arraylist je. Ale nenazval bych programátorem někoho kdo arraylist používá a udělat si ho sám neumí. No docela jsme odbočili od SQL až po spojový seznam v c++. hehe
Opravdovému programátorovi stačí děrovačka štítků, kompilátor Fortranu a pivo.
Já jsem si v C++ spojový seznam dělal, stejně tak šablonu pro práci s poli nebo vlastní String, a používám to. Ne proto, že by to snad bylo efektivnější než standardní khihovny, ale funguje to přesně tak jak mi to vyhovuje. A ten spojový seznam není zase až tak jednoduchý, záleží tedy, co všechno člověk chce aby to umělo.
Taky jsem si dělal spojový seznam a fungovalo to přesně jako pole a trochu jsem zajel i do listu. Nepoužívám to, pole v Javě mi vyhovuje stejně jako arraylist. Nepotřebuju si v každym projektu includovat další třídu. Kde jsem si to napsal sám. Určitě na nějaké věci by to mohlo být dobré, ale stejně nemusím při každém projektu vynalézat kolo.
Já tam implementoval i spojení dvou seznamů nebo vložení pole do seznamu atd. K tomu jsem se snažil aby to nebylo úplně pomalé.
Zobrazeno 26 zpráv z 76.