možnost půjčovat si e-knihy (ZDARMA) z knihoven. Výkonem i funkcemi patří ereading.cz 4 ke

Rozměr: px
Začít zobrazení ze stránky:

Download "možnost půjčovat si e-knihy (ZDARMA) z knihoven. Výkonem i funkcemi patří ereading.cz 4 ke"

Transkript

1

2 Recenze: Česká čtečka ereading.cz je vlastně tablet s elektronickým papírem. Netradiční funkce doplnila možnost půjčovat si e-knihy (ZDARMA) z knihoven. Výkonem i funkcemi patří ereading.cz 4 ke

3 špičce...

4 Kevlin Henney 97 klíčových znalostí programátora Computer Press, a. s. Brno 2010

5 97 klíčových znalostí programátora Kevlin Henney Computer Press, a. s., Vydání první. Jazyková korektura: Veronika Macková Vnitřní úprava: Dagmar Hajdajová Sazba: Ctibor Foltýn Rejstřík: Daniel Štreit Obálka: Zuzana Šindlerová Komentář na zadní straně obálky: Martin Herodek Technická spolupráce: Jiří Matoušek Odpovědný redaktor: Martin Herodek Technický redaktor: Jiří Matoušek Produkce: Petr Baláš Authorized Czech translation of 97 Things Every Programmer Should Know ISBN , Kevlin Henney. This translation is published and sold by permission of O Reilly Media, Inc., the owner of all rights to publish and sell the same. Autorizovaný překlad z originálního anglického vydání 97 Things Every Programmer Should Know. Originální copyright: 2010 Kevlin Henney. Překlad: Computer Press, a. s., Computer Press, a. s., Holandská 3, Brno Objednávky knih: distribuce@cpress.cz tel.: ISBN Prodejní kód: K1834 Vydalo nakladatelství Computer Press, a. s., jako svou publikaci. Computer Press, a. s. Všechna práva vyhrazena. Žádná část této publikace nesmí být kopírována a rozmnožována za účelem rozšiřování v jakékoli formě či jakýmkoli způsobem bez písemného souhlasu vydavatele.

6 Obsah Tipy podle zaměření Úvod Jednejte s opatrností Seb Rose Aplikujte principy funkcionálního programování Edward Garson Položte si otázku: Co by udělal uživatel? (vy jím nejste) Giles Colborne Automatizujte své kódovací standardy Filip van Laenen V jednoduchosti je krása Jørn Ølmheim Před refaktorováním Rajith Attapattu Pozor na sdílený kód Udi Dahan Skautské pravidlo Robert C. Martin (Uncle Bob) Než začnete obviňovat ostatní, zkontrolujte vlastní kód Allan Kelly Obsah 3

7 Nástroje volte s rozvahou Giovanni Asproni Programujte v jazyce domény Dan North Kód představuje návrh Ryan Brush Na odsazení kódu záleží Steve Freeman Revize kódu Mattias Karlsson Odůvodnění správnosti kódu Yechiel Kimchi Pár slov ke komentářům Cal Evans Komentujte pouze to, co kód sám nedokáže říct Kevlin Henney Nepřetržité učení Clint Shank Pohodlnost nepatří mezi ctnosti Gregor Hohpe Nasazujte brzy a často Steve Berczuk Rozlište technické a business výjimky Dan Bergh Johnsson Procvičujte se Jon Jagger Jazyky specifické pro doménu Michael Hunger Nebojte se, že něco rozbijete Mike Lewis Nesnažte se okouzlit testovacími daty Rod Begbie 4 97 klíčových znalostí programátora

8 Neignorujte chyby Pete Goodliffe Nestačí pouze naučit se jazyk, ale porozumět jeho kultuře Anders Norås Nesnažte se svůj program přibít do vzpřímené polohy Verity Stob Nevěřte na kouzla Alan Griffiths Neopakujte se Steve Smith Nedotýkej se toho kódu Cal Evans Zapouzdřete chování, ne pouze stav Einar Landre Čísla s plovoucí řádovou čárkou nejsou reálná Chuck Allison Naplňte své ambice pomocí open-source Richard Monson-Haefel Zlaté pravidlo návrhu API Michael Feathers Mýtus guru Ryan Brush Dřina se nevyplácí Olve Maudal Použití systému pro sledování chyb Matt Doar Vylepšete kód tím, že ho odstraníte Pete Goodliffe Nainstaluj si mě Marcus Baker Komunikace mezi procesy ovlivňuje reakční dobu aplikace Randy Stafford Obsah 5

9 Udržujte build čistý Johannes Brodwall Naučte se používat nástroje příkazového řádku Carroll Robinson Ovládejte více než dva programovací jazyky Russel Winder Poznejte své IDE Heinz Kabutz Poznejte své limity Greg Colvin Poznejte, kdy dokončíte práci Dan Bergh Johnsson Rozsáhlá vzájemně propojená data patří do databáze Diomidis Spinellis Naučte se cizí jazyky Klaus Marquardt Naučte se odhadovat Giovanni Asproni Naučte se říct: Ahoj, světe Thomas Guest Nechte projekt mluvit sám za sebe Daniel Lindner Linker není žádným magickým programem Walter Bright Dlouhověkost provizorních řešení Klaus Marquardt Rozhraní by se měla snadno používat správným způsobem a těžko špatným Scott Meyers Ať se neviditelné stane více viditelným Jon Jagger 6 97 klíčových znalostí programátora

10 Předávání zpráv vede v paralelních systémech k lepší rozšiřitelnosti Russel Winder Odkaz budoucnosti Linda Rising Nevyužité příležitosti k polymorfizmu Kirk Pepperdine Novinka: Testeři jsou vaši kamarádi Burk Hufnagel Pouze jeden binární soubor Steve Freeman Pouze kód říká pravdu Peter Sommerlad Nezapomínejte na sestavení Steve Berczuk Párové programování Gudny Hauknes, Kari Røssland a Ann Katrin Gagnat Preferujte typy specifické pro doménu před primitivními typy Einar Landre Předcházejte chybám Giles Colborne Profesionální programátor Robert C. Martin (Uncle Bob) Všechno verzujte Diomidis Spinellis Odložte myš a odstupte od klávesnice Burk Hufnagel Čtěte kód Karianne Berg Zajímejte se o humanitní vědy Keith Braithwaite Obsah 7

11 Často znovu vynalézejte kolo Jason P. Sage Odolejte pokušení návrhového vzoru jedináček Sam Saariste Honbu za výkonem komplikuje špinavý kód Kirk Pepperdine Jednoduchost jde ruku v ruce s redukcí Paul W. Homer Princip jedné odpovědnosti Robert C. Martin (Uncle Bob) Začněte u Ano Alex Miller Odstupte a automatizujte, automatizujte, automatizujte Cay Horstmann Využijte nástrojů pro analýzu kódu Sarah Mount Testujte požadované, nikoli nahodilé chování Kevlin Henney Testujte přesně a konkrétně Kevlin Henney Testujte ve spánku (a přes víkendy) Rajith Attapattu Testování je přísností softwarového vývoje Neal Ford Myšlení ve stavech Niclas Nilsson Dvě hlavy jsou často lepší než jedna Adrian Wible Dvakrát špatně může znamenat dobře (a těžko se opravuje) Allan Kelly Ubuntu pro vaše přátele Aslam Khan 8 97 klíčových znalostí programátora

12 Unixové nástroje jsou vaši kamarádi Diomidis Spinellis Použijte správný algoritmus a datovou strukturu Jan Christiaan JC van Winkel Přehnané protokolování vám na klidném spánku nepřidá Johannes Brodwall WET pomáhá překonat výkonnostní překážky Kirk Pepperdine Když programátoři a testeři spolupracují Janet Gregory Piště kód tak, jako byste museli zajišťovat jeho podporu po zbytek svého života Yuriy Zubarev Vytvářejte malé funkce na základě příkladů Keith Braithwaite Vytvářejte testy pro lidi Gerard Meszaros O kód se musíte starat Pete Goodliffe Vaši zákazníci neuvažují nad tím, co říkají Nate Jackson Přispěvatelé Rejstřík Obsah 9

13

14 Tipy podle zaměření Chyby a opravy Než začnete obviňovat ostatní, zkontrolujte vlastní kód Nedotýkej se toho kódu Použití systému pro sledování chyb Dvakrát špatně může znamenat dobře (a těžko se opravuje) Vývoj Nasazujte brzy a často Nedotýkej se toho kódu Nainstaluj si mě Udržujte build čistý Nechte projekt mluvit sám za sebe Pouze jeden binární soubor Nezapomínejte na sestavení Vzhled kódu Automatizujte své kódovací standardy Na odsazení kódu záleží Revize kódu Pár slov ke komentářům Komentujte pouze to, co kód sám nedokáže říct Využijte nástrojů pro analýzu kódu Tipy podle zaměření 11

15 Techniky návrhu Aplikujte principy funkcionálního programování Položte si otázku: Co by udělal uživatel? (vy jím nejste) V jednoduchosti je krása Nástroje volte s rozvahou Programujte v jazyce domény Kód představuje návrh Odůvodnění správnosti kódu Pohodlnost nepatří mezi ctnosti Rozlište technické a business výjimky Neopakujte se Zapouzdřete chování, ne pouze stav Zlaté pravidlo návrhu API Komunikace mezi procesy ovlivňuje reakční dobu aplikace Rozhraní by se měla snadno používat správným způsobem a těžko špatným Předávání zpráv vede v paralelních systémech k lepší rozšiřitelnosti Nevyužité příležitosti k polymorfismu Pouze kód říká pravdu Preferujte typy specifické pro doménu před primitivními typy Předcházejte chybám Odolejte pokušení návrhového vzoru jedináček Princip jedné odpovědnosti Myšlení ve stavech WET pomáhá překonat výkonnostní překážky Myšlení v souvislostech Programujte v jazyce domény Jazyky specifické pro doménu Naučte se cizí jazyky Preferujte typy specifické pro doménu před primitivními typy Zajímejte se o humanitní vědy Myšlení ve stavech Vytvářejte malé funkce na základě příkladů klíčových znalostí programátora

16 Chyby, výjimky a ladění Rozlište technické a business výjimky Neignorujte chyby Nesnažte se svůj program přibít do vzpřímené polohy Předcházejte chybám Přehnané protokolování vám na klidném spánku nepřidá Výuka a dovednosti Nepřetržité učení Procvičujte se Nestačí pouze naučit se jazyk, ale porozumět jeho kultuře Naplňte své ambice pomocí open-source Mýtus guru Dřina se nevyplácí Čtěte kód Zajímejte se o humanitní vědy Často znovu vynalézejte kolo Tajemno a magično Nevěřte na kouzla Nedotýkej se toho kódu Mýtus guru Naučte se používat nástroje příkazového řádku Linker není žádným magickým programem Testujte ve spánku (a přes víkendy) Přehnané protokolování vám na klidném spánku nepřidá Piště kód tak, jako byste museli zajišťovat jeho podporu po zbytek svého života Výkon a optimalizace Aplikujte principy funkcionálního programování Čísla s plovoucí řádovou čárkou nejsou reálná Vylepšete kód tím, že ho odstraníte Komunikace mezi procesy ovlivňuje reakční dobu aplikace Poznejte své limity Tipy podle zaměření 13

17 Rozsáhlá vzájemně propojená data patří do databáze Předávání zpráv vede v paralelních systémech k lepší rozšiřitelnosti Honbu za výkonem komplikuje špinavý kód Použijte správný algoritmus a datovou strukturu WET pomáhá překonat výkonnostní překážky Profesionální přístup Nepřetržité učení Procvičujte se Dřina se nevyplácí Dlouhověkost provizorních řešení Profesionální programátor Odložte myš a odstupte od klávesnice Testování je přísností softwarového vývoje Piště kód tak, jako byste museli zajišťovat jeho podporu po zbytek svého života O kód se musíte starat Programovací jazyky a paradigmata Aplikujte principy funkcionálního programování Jazyky specifické pro doménu Nestačí pouze naučit se jazyk, ale porozumět jeho kultuře Ovládejte více než dva programovací jazyky Naučte se cizí jazyky Refaktorování a údržba kódu Jednejte s opatrností Před refaktorováním Skautské pravidlo Komentujte pouze to, co kód sám nedokáže říct Nebojte se, že něco rozbijete Vylepšete kód tím, že ho odstraníte Udržujte build čistý Poznejte, kdy dokončíte práci Dlouhověkost provizorních řešení Odkaz budoucnosti klíčových znalostí programátora

18 Pouze kód říká pravdu Nezapomínejte na sestavení Profesionální programátor Honbu za výkonem komplikuje špinavý kód Jednoduchost jde ruku v ruce s redukcí Ubuntu pro vaše přátele O kód se musíte starat Znovupoužití verzus opakování Pozor na sdílený kód Pohodlnost nepatří mezi ctnosti Procvičujte se Neopakujte se Často znovu vynalézejte kolo Použijte správný algoritmus a datovou strukturu WET pomáhá překonat výkonnostní překážky Plány, termíny a odhady Jednejte s opatrností Kód představuje návrh Poznejte, kdy dokončíte práci Naučte se odhadovat Ať se neviditelné stane více viditelným Jednoduchost V jednoduchosti je krása Naučte se říct: Ahoj světe Odkaz budoucnosti Jednoduchost jde ruku v ruce s redukcí Práce v týmu Revize kódu Naučte se cizí jazyky Párové programování Začněte u Ano Tipy podle zaměření 15

19 Dvě hlavy jsou často lepší než jedna Ubuntu pro vaše přátele Když programátoři a testeři spolupracují Testy, testování a testeři Aplikujte principy funkcionálního programování Kód představuje návrh Nesnažte se okouzlit testovacími daty Zlaté pravidlo návrhu API Rozhraní by se měla snadno používat správným způsobem a těžko špatným Ať se neviditelné stane více viditelným Novinka: Testeři jsou vaši kamarádi Testujte požadované, nikoli nahodilé chování Testujte přesně a konkrétně Testujte ve spánku (a přes víkendy) Testování je přísností softwarového vývoje Když programátoři a testeři spolupracují Vytvářejte malé funkce na základě příkladů Vytvářejte testy pro lidi klíčových znalostí programátora

20 Úvod I ten nejnovější počítač pouze znásobuje pradávný problém vztahu mezi lidskými bytostmi a na konci bude zprostředkovatel muset čelit problému toho, co říci a jak. Edward R. Murrow V hlavách programátorů se honí mnoho myšlenek. Programovací jazyky, programovací techniky, vývojová prostředí, způsoby kódování, nástroje, proces vývoje, termíny, schůzky, softwarová architektura, návrhové vzory, dynamika týmu, kód, požadavky, chyby, kvalita kódu a mnoho a mnoho dalšího. Programování je umění, dovednost a věda, zdaleka přesahující rámec samotného programu. Programování spojuje diskrétní svět počítačů s fluidním světem lidských záležitostí. Programátoři jsou prostředníky mezi vyjednanými a nejistými obchodními fakty a neústupnou oblastí bitů a bajtů a vyšších jazykových konstruktů. Vzhledem k množství potřebných znalostí a bezpočtu možných postupů nemůže nikdo označovat právě svůj postup za ten jediný správný. Kniha 97 klíčových znalostí programátora staví na kolektivních vědomostech a zkušenostech a spíše než ucelený větší obrázek poskytuje představu odborné veřejnosti o tom, co by měl každý programátor znát. Svým rozsahem tak pokrývá vše od rad týkajících se kódu po vzdělávání, od použití algoritmů po agilní uvažování, od implementačního know-how po profesionalismus, od způsobu k podstatě. Příspěvky na sebe vzájemně nenavazují a není to ani záměr spíše opak je pravdou. Hodnota příspěvků pramení právě z jejich osobitosti. Hodnota kolekce spočívá v tom, jak se vzájemně doplňují, potvrzují, nebo jsou dokonce v rozporu. Nenajdete zde žádné oslí můstky je na vás reagovat, uvážit a spojit si dohromady, co čtete, vzít v potaz váš vlastní kontext a zkušenosti. Oprávnění Autorskou ochranu každého článku lze přirovnat k open-source řešením. Každý tip je dostupný online a chráněn na základě licence Creative Commons, což znamená, že můžete každý z článků samostatně využívat ve své praxi, pokud uvedete jeho autora. Úvod 17

21 Poděkování Mnoho lidí přispělo svým časem či názory ke vzniku knihy 97 klíčových znalostí programátora, a to přímo i nepřímo. Ti všichni si zaslouží uznání. Richard Monson-Haefel je původce myšlenky edice 97 klíčových znalostí a také sestavil první knihu této série 97 klíčových znalostí softwarového architekta, do které jsem přispěl. Chtěl bych Richardovi poděkovat za tuto sérii, její koncept otevřeného přispívání a hlavně za podporu mého nápadu realizovat tuto knihu. Chci poděkovat všem, kteří věnovali čas a úsilí přispět do tohoto projektu. Přispěvatelům, kteří jsou se svými radami uvedeni v této knize, i těm, kteří vybráni nebyli. Velký objem a kvalita příspěvků učinily výběr hodně složitým, pevně daný počet bohužel vyřadil i několik těch, které by se normálně do knihy podařilo vmáčknout. Velký dík za zpětnou vazbu, komentáře a další nápady patří Giovanni Aspronimu, Paulu Colin Glosterovi a Michaelu Hungerovi. Děkuji O Reilly za podporu, kterou věnovalo tomuto projektu, velkou pozornost a lidem v O Reilly jmenovitě pak Miku Loukidesovi, Laurelu Ackermanovi, Ediemu Freedmanovi, Edu Stephensonovi a Rachel Monaghanové. Chtěl bych také poděkovat svojí ženě Carolyn za to, že vnesla pořádek do mého chaosu, a také mým dvěma synům, Stefanovi a Yannickovi za znovuvytvoření části chaosu. Doufám, že kniha vám poskytne informace, vhled a inspiraci. Poznámka redakce českého vydání Nakladatelství Computer Press, které pro vás tuto knihu přeložilo, stojí o zpětnou vazbu a bude na vaše podněty a dotazy reagovat. Můžete se obrátit na následující adresy: Computer Press redakce PC literatury Holandská Brno nebo knihy@cpress.cz Další informace a případné opravy českého vydání knihy najdete na internetové adrese Prostřednictvím uvedené adresy můžete též naší redakci zaslat komentář nebo dotaz týkající se knihy. Na vaše reakce se srdečně těšíme klíčových znalostí programátora

22

23 Jednejte s opatrností Seb Rose Ať už se ujmete čehokoli, jednejte s opatrností a uvažte následky. Anon Bez ohledu na to, jak příjemně vypadá plán na začátku iterace, alespoň část tohoto času nevyhnutelně budete pod tlakem. Pokud se dostanete od situace, kdy se musíte rozhodnout mezi tím, jestli to udělat správně, anebo rychle, je často lákavé to udělat rychle s vědomím toho, že se později budete muset vrátit a opravit to. Pokud učiníte toto předsevzetí, musíte si za ním stát sami před sebou, před svým týmem i zákazníkem. Velmi často však další iterace přinese nové problémy vyžadující vaši pozornost. Tento druh odložené práce se často označuje jako technický dluh a dozajista není vaším přítelem. Martin Fowler to ve svém rozboru technických dluhů ( TechnicalDebtQuadrant.html) označuje za záměrný technický dluh a neměl by se zaměňovat s neúmyslným technickým dluhem. Technický dluh je jako půjčka v krátkodobém horizontu z ní těžíte, ale budete z ní muset odvádět úroky, dokud nebude úplně splacená. Zkratky použité v kódu ztěžují přidávání nových funkcí a refactoring kódu. Jsou úrodnou půdou pro defekty a křehké testy. Čím déle je necháte bez povšimnutí, tím horší to bude. V okamžiku, kdy se dostanete k původní opravě, může existovat již celá řada ne příliš dokonalých rozhodnutí učiněných na základě původního problému, což značně ztěžuje opravu kódu a jeho refaktorování. Často se k opravě původního problému přikročí až v okamžiku, kdy se situace natolik zhorší, že je oprava původního problému nutná. A v tento okamžik je oprava často natolik obtížná, že si nemůžete potřebný čas nebo riziko s ní spojené dovolit klíčových znalostí programátora

24 Nastanou případy, kdy se uchýlíte k technickému dluhu, abyste stihli termín nebo v minimálním rozsahu implementovali funkci. Pokuste se těmto situacím vyhnout. Pokud to však okolnosti vyžadují a není zbytí, nezbývá než se vydat touto cestou. Nezapomeňte však svůj technický dluh sledovat a rychle ho splatit, jinak půjdou věci rychle z kopce. Hned jak učiníte takovýto kompromis, udělejte si do bloku poznámku anebo tuto skutečnost poznamenejte ve svém systému pro sledování problémů, abyste zajistili, že se na něj nezapomene. Pokud naplánujete splacení dluhu v další iteraci, bude cena minimální. Pokud dluh zůstane nesplacený, zvýší se úroky. Ty je třeba sledovat a mít náklady na očích. Zdůrazní se tak dopad technického dluhu na obchodní hodnotu projektu a dosáhne se potřebného upřednostnění jeho splacení. Způsob jakým vypočítat a sledovat úroky bude záviset na konkrétním projektu, sledování je však nezbytné. Splaťte technické dluhy tak rychle, jak je to jen možné. Nebylo by moudré to neudělat. Zkušenosti expertů z praxe 21

25 Aplikujte principy funkcionálního programování Edward Garson Funkcionální programování se těší nové vlně zájmu ze strany mainstreamové programátorské komunity. Z části je to proto, že vynořující se vlastnosti funkcionálního paradigmatu vhodně adresují výzvy, kterým čelíme v důsledku přechodu průmyslu na vícejádrovou architekturu. Přestože je to jistě důležité využití, není to důvod proč vás tento příspěvek nabádá ke znalosti funkcionálního programování. Ovládnutí funkcionálního paradigmatu může významně zlepšit kvalitu kódu, který v jiných kontextech vytváříte. Pokud hluboce rozumíte funkcionálnímu paradigmatu a aplikujete ho, budou vaše návrhy vykazovat mnohem vyšší stupeň referenční transparence. Referenční transparence je velmi žádoucí vlastností značící, že funkce konzistentně vrací pro stejné vstupy stejné výsledky, bez ohledu na to, odkud a kdy se volají. To znamená, že vyhodnocení funkce závisí méně, ideálně vůbec, na vedlejších efektech stavových změn. Hlavní příčinou problémů v imperativním kódu jsou nestálé proměnné. Všichni, kteří tyto řádky čtou, už jistě pátrali po příčině toho, proč nemá určitá proměnná v dané situaci takovou hodnotu, jaká se očekává. Viditelná sémantika může pomoci zmírnit tyto zákeřné defekty anebo přinejmenším drasticky snížit počet míst, kde se vyskytují. Hlavním pachatelem je však neprozřetelnost návrhů, které podporují nadměrnou proměnlivost. V tomto ohledu se od průmyslu nedočkáme žádné výrazné podpory. Úvody do problematiky objektově orientovaného programování mlčky podporují takovéto návrhy, protože často ukazují příklady relativně dlouhověkých objektů, jež zvesela vzájemně volají své editační a potencionálně nebezpečné metody. V případě použití rafinovaného návrhu řízeného testy, především pak dodržujícího zásadu simulovat role, a nikoli objekty ( je možné nežádoucí proměnlivost odstranit klíčových znalostí programátora

26 Výsledkem je návrh, který má lepší rozdělení odpovědností mezi více menších funkcí pracujících s jim předanými parametry namísto s nestálými členskými proměnnými. Vyskytne se menší množství defektů a často se také snadněji budou ladit, protože je v případě těchto návrhů jednodušší určit, kde se konkrétní hodnota mění, než je tomu v návrzích, kdy je třeba dovodit konkrétní kontext, jež má za následek chybné přiřazení. To podstatně zvyšuje stupeň referenční transparentnosti. Nic jiného vám tyto myšlenky nevryje do paměti tak, jako funkcionální programovací jazyk, kde je tento výpočetní model normou. Tento přístup samozřejmě není za všech okolností optimální. Např. v objektově orientovaných systémech tento způsob často podává lepší výsledky při vývoji modelu domény (kde vzájemná spolupráce slouží k redukci složitosti business rolí) než při vývoji uživatelského rozhraní. Osvojte si funkcionální paradigma, abyste mohli v ostatních doménách uváženě aplikovat nabyté vědomosti. Vaše objektové systémy budou dosahovat vyššího stupně referenční transparentnosti a budou se svým funkcionálním protějškům podobat mnohem více, než si myslíte. V některých případech se dokonce bude zdát, že je (na nejvyšší úrovni) funkcionální a objektově orientované programování pouze vzájemným odrazem tvořícím počítačovou obdobu yin a yang. Zkušenosti expertů z praxe 23

27 Položte si otázku: Co by udělal uživatel? (vy jím nejste) Giles Colborne Všichni máme ve zvyku předpokládat, že ostatní lidé myslí jako my. Ale nemyslí. Psychologové to označují za falešný konsenzus. Když lidé myslí nebo jednají jinak než my, s velkou pravděpodobností je (podvědomě) označíme za podivíny. To vysvětluje, proč je pro programátory tak obtížné vžít se do role uživatelů. Uživatelé nemyslí jako programátoři. Pro začátek tráví u počítače mnohem méně času. Neví, jak počítač pracuje a ani je to nezajímá. To znamená, že nemohou čerpat z artilerie programátorům tak dobře známých technik pro řešení problémů. Neznají návrhové vzory a výsledky práce programátorů používají skrze rozhraní. Nejlepším způsobem, jak zjistit, jak uživatel uvažuje, je pozorovat ho. Požádejte uživatele, aby provedl určitý úkol s pomocí softwaru podobajícího se tomu, který vyvíjíte. Ujistěte se, že je tento úkol realistický Sečti hodnoty ve sloupci je v pořádku, Vypočítej své výdaje za poslední měsíc je ještě lepší. Vyhněte se příliš specifickým úkolům jako je Mohl bys označit tyto buňky tabulky a pod ně uvést jejich sumu?. Tento požadavek už sám o sobě k něčemu nabádá. Nechte za uživatele hovořit jeho vlastní postup. Nepřerušujte ho. Nesnažte se mu pomoci. Položte si otázku, proč dělá právě to, a ne tohle. První věcí, které si všimnete, je, že uživatelé dělají mnohé základní věcí podobně. Pokouší se plnit úkoly ve stejném pořadí a dělají stejné chyby na stejných místech. Na těchto základních věcech byste měli stavět. Velmi se to liší od návrhářských schůzek, kde lidé poslouchají diskuze na téma Co když chce uživatel klíčových znalostí programátora

28 Vede to ke komplikovaným funkcím a nejasnostem v tom, co uživatelé chtějí. Sledování uživatelů tyto nejasnosti rozptýlí. Uvidíte, jak se uživatelé při něčem zaseknou. Když se zaseknete vy, rozhlédnete se okolo. Když se zaseknou uživatelé, svůj pohled na věc zúží. Je pro ně obtížnější vidět řešení jinde na obrazovce. To je jeden z důvodů, proč je textová nápověda chabým řešením nevhodného návrhu uživatelského rozhraní. Pokud jsou instrukce nebo nápověda nezbytné, umístěte ji hned vedle problematických oblastí. Úzké zaměření pohledu uživatele je důvod, proč jsou tzv. tool-tipy úspěšnější než klasická nápověda. Uživatelé mají ve zvyku dělat zmatek. Najdou řešení, které funguje, a zůstanou u něj, bez ohledu na to, jak složité je. Je lepší poskytnout jeden skutečně zjevný způsob, jak úkol provést, než dvě nebo tři zkratky. Zjistíte také, že existuje rozdíl v tom, co uživatelé říkají, že chtějí, a co ve skutečnosti dělají. To je znepokojivé, protože se požadavky uživatelů běžně získávají dotázáním se uživatelů. Proto je nejlepším způsobem, jak určit požadavky, sledovat uživatele. Hodinové sledování uživatelů přinese více informací než den strávený odhadováním toho, co chtějí. Zkušenosti expertů z praxe 25

29 Automatizujte své kódovací standardy Filip van Laenen Pravděpodobně jste tam také byli. Na začátku projektu má každý mnoho dobrých nápadů nazývejme je předsevzetí nového projektu. Poměrně často jsou mnohá z těchto předsevzetí zaznamenaná v dokumentech. Ty, které se týkají kódu, skončí v kódovacích standardech projektu. V průběhu úvodní schůzky hlavní vývojář projde dokumenty a v nejlepším případě se všichni shodnou na tom, že se pokusí podle nich postupovat. Poté co se však projekt rozběhne, se tyto dobré úmysly jeden po druhém rozplynou jako pára nad hrncem. Po dokončení projektu vypadá kód naprosto chaoticky a nikdo nechápe, jak k tomu mohlo dojít. Kdy se věci zvrtly? Pravděpodobně už na úvodní schůzce. Někteří z účastníků projektu nedávali pozor. Jiní požadavku nerozuměli, či ještě hůře nesouhlasili a už plánovali svou rebelii v oblasti standardu kódování. Někteří sice požadavek akceptovali a souhlasili s ním, ale jak se tlak v průběhu projektu zvyšoval, museli od něj upustit. Vhodně formátovaný kód zákazníka požadujícího větší funkcionalitu zajímat nebude. Dodržování standardů kódování navíc může být vcelku nudnou záležitostí, pokud se neautomatizuje. Jen si zkuste ručně odsadit kód zaneřáděné třídy. Pokud je to ale takový problém, proč bychom vůbec měli chtít kódovací standard? Jedním z důvodů formátování kódu jednotným způsobem je, že si nikdo nemůže přivlastnit určitou část kódu pouze tím, že ho naformátuje svým vlastním způsobem. Můžeme chtít zabránit vývojářům v tom, aby používali určité antivzory, a vyhnout se tak běžným chybám. Standard kódování by měl konec konců usnadnit práci na projektu a udržovat rychlost vývoje od začátku až do konce. Z toho jasně plyne, že by všichni měli souhlasit s použitým standardem kódování ničemu nepomůže, pokud jeden vývojář používá pro odsazení kódu tři mezery, zatímco jiný čtyři klíčových znalostí programátora

30 Existuje celá řada nástrojů, které generují hlášení o kvalitě kódu a je možné je použít k dokumentaci a údržbě standardu kódování, to však jako řešení nestačí. Standard by se měl automatizovat, a je-li to možné, i vynutit. Zde je několik příkladů: Ujistěte se, že je formátování kódu součástí procesu sestavení, takže se automaticky provede pokaždé, když někdo provádí překlad svého kódu. Používejte nástroje pro statickou analýzu kódu, které v kódu vyhledají nežádoucí anti-vzory. Pokud se nějaké najdou, přeruší se sestavení. Naučte se tyto nástroje nakonfigurovat tak, abyste mohli hledat své vlastní anti-vzory specifické pro váš projekt. Neměřte pouze pokrytí testů, ale také automaticky kontrolujte jejich výsledky. Přerušte sestavení, pokud je pokrytí testů příliš malé. Pokuste se tyto postupy aplikovat na všechno, co považujete za důležité. Nebudete moci automatizovat vše, na čem vám skutečně záleží. V případě věcí, které nemůžete automaticky označit nebo opravit, uvažte sadu pravidel doplňujících automatizovaný standard kódování, akceptujte však skutečnost, že je vy a vaši kolegové nemusí tak pečlivě dodržovat. Standard kódování by měl být dynamický, a nikoli statický. Jak se projekt vyvíjí, jeho potřeby se mění a to, co se zdálo chytré na začátku, o několik měsíců později už tak chytré být nemusí. Zkušenosti expertů z praxe 27

31 V jednoduchosti je krása Jørn Ølmheim Jeden z výroků řeckého filozofa Platona by podle mého měli softwarový vývojáři dobře znát a mít ho neustále na paměti: Krása návrhu a harmonie a elegance a dobrý rytmus závisí na jednoduchosti. Tato jedna věta shrnuje hodnoty, o které bychom měli coby softwaroví vývojáři usilovat. Existuje řada vlastností, které jsou u kódu žádoucí: Čitelnost Udržovatelnost Rychlost vývoje Neuchopitelná kvalita krásy Platon nám říká, že faktorem, umožňujícím všechny tyto čtyři kvality, je jednoduchost. Co je to krásný kód? To je potencionálně velmi subjektivní otázka. Vnímání krásy závisí převážně na daném zázemí, stejně jako naše vnímání čehokoli závisí na našem zázemí. Lidé vzdělaní v oblasti umění jinak vnímají (anebo k ní alespoň jinak přistupují) krásu než lidé vzdělaní ve vědních oborech. Studenti umění mají tendenci přistupovat ke kráse softwaru tak, že software porovnávají s uměleckými díly. Naproti tomu studenti vědních oborů zpravidla hovoří o symetrii a zlatém řezu ve snaze redukovat věci na vzorce. Podle mých zkušeností je jednoduchost základem většiny argumentů obou stran klíčových znalostí programátora

32 Zamyslete se nad zdrojovým kódem, který jste studovali. Pokud jste nestrávili nějaký čas studováním kódu jiných lidí, odložte tuto knihu a najděte si nějaký open-source ke studiu. Myslím to vážně. Najděte na Webu nějaký kód ve vámi požadovaném programovacím jazyce, napsaném nějakým uznávaným a dobře známým expertem. Jste zpátky? Dobře. Tak kde jsme to skončili? Ano, už vím přisel jsem na to, že kódy, které považuji za krásné a jsem s nimi takříkajíc na stejné vlně, mají něco společného. Tím hlavním je jednoduchost. Přišel jsem na to, že bez ohledu na to, jak komplexní celá aplikace nebo systém je, jednotlivé části musí být jednoduchými objekty s jednou zodpovědností obsahující podobně jednoduché, vyhraněné metody s popisnými názvy. Někteří lidé považují krátké metody o rozsahu 5 až 10 řádků kódu za extrém a v některých jazycích je toho velmi obtížné docílit, přesto si myslím, že je takováto stručnost žádoucím cílem. Ponaučením, které byste si měli odnést, je, že krásný kód je jednoduchý kód. Každá jednotlivá část se udržuje jednoduchá s jednoduchými odpovědnostmi a jednoduchými vztahy s ostatními částmi systému. To je způsob, jakým můžeme systémy v průběhu času udržet upravovatelné, s čistým, jednoduchým, testovatelným kódem a zajistit vysokou rychlost vývoje v průběhu života systému. Krása je v jednoduchosti. Zkušenosti expertů z praxe 29

33 Pokud se Vám tato ukázka knihy líbila, bude úžasné, když nás, všechny spolutvůrce, podpoříte zakoupením jedné kopie na matora. Kniha nestojí víc než večeře (pro jednoho) v restauraci. Tento text vznikl díky práci následujících lidí: 1) autora, který sepsal svoje jedinečné myšlenky 2) překladatele, který je pečlivě přeložil (neplatí u českých titulů :) 3) redaktora, který dohlížel na srozumitelnost a kvalitu textu 4) korektora, který ochránil vaše oči před hrubkami a překlepy 5) grafika, který připravil obálku (nebo grafiku v textu) 6) sazeče, který knihu vysázel do této podoby Všichni vám děkujeme..

Obsah. Tipy podle zaměření... 11 Úvod... 17 Jednejte s opatrností... 20 Seb Rose. Aplikujte principy funkcionálního programování...

Obsah. Tipy podle zaměření... 11 Úvod... 17 Jednejte s opatrností... 20 Seb Rose. Aplikujte principy funkcionálního programování... Obsah Tipy podle zaměření............................................. 11 Úvod............................................................ 17 Jednejte s opatrností.............................................

Více

Kevlin Henney. 97 klíčových znalostí programátora

Kevlin Henney. 97 klíčových znalostí programátora Kevlin Henney 97 klíčových znalostí programátora Computer Press, a. s. Brno 2010 97 klíčových znalostí programátora Kevlin Henney Computer Press, a. s., 2010. Vydání první. Jazyková korektura: Veronika

Více

Váš největší problém pravděpodobně nebude technického rázu Mark Ramm

Váš největší problém pravděpodobně nebude technického rázu Mark Ramm Obsah Předmluva....................................................... 11 Požadavky mají přednost před vaším životopisem................. 14 Nitin Borwankar Zabraňte esenciální složitosti, odstraňte nahodilou

Více

VÝUKOVÝ MATERIÁL. Bratislavská 2166, Varnsdorf, IČO: tel Číslo projektu

VÝUKOVÝ MATERIÁL. Bratislavská 2166, Varnsdorf, IČO: tel Číslo projektu VÝUKOVÝ MATERIÁL Identifikační údaje školy Vyšší odborná škola a Střední škola, Varnsdorf, příspěvková organizace Bratislavská 2166, 407 47 Varnsdorf, IČO: 18383874 www.vosassvdf.cz, tel. +420412372632

Více

By Daniel Defoe. Robinson Crusoe

By Daniel Defoe. Robinson Crusoe By Daniel Defoe Robinson Crusoe Computer Press, a. s. Brno 2011 Robinson Crusoe BY DANIEL DEFOE Computer Press, a. s., 2011. Dotisk prvního vydání. Editor: Ben Epperson Překlad: Lucie Poslušná Grafika

Více

Obsah. Úvodem 9 Zpětná vazba od čtenářů 10 Zdrojové kódy ke knize 10 Errata 10

Obsah. Úvodem 9 Zpětná vazba od čtenářů 10 Zdrojové kódy ke knize 10 Errata 10 Obsah Úvodem 9 Zpětná vazba od čtenářů 10 Zdrojové kódy ke knize 10 Errata 10 KAPITOLA 1 Co budeme potřebovat 11 Co knihovna jquery nabízí 11 Editor zdrojového kódu 12 Webový server 12 Software pro ladění

Více

Řízení reálných projektů, agilní metodiky

Řízení reálných projektů, agilní metodiky Agent Technology Group Katedra kybernetiky Fakulta elektrotechnická - České vysoké učení technické Praha, 2009 Osnova Lze vyvíjet software bez metodiky? - bohužel ano menší komerční firmy (zejména vývoj

Více

KAPITOLA 1 Přehled aktuálního vývoje webů 11

KAPITOLA 1 Přehled aktuálního vývoje webů 11 Obsah Úvodem 9 KAPITOLA 1 Přehled aktuálního vývoje webů 11 Definice webového designu 12 Poznejte sedm pravidel webového designu 14 Pochopte tři přístupy k webovému designu 16 Shrnutí 24 KAPITOLA 2 Design

Více

Richard Monson-Haefel. 97 klíčových znalostí softwarového architekta

Richard Monson-Haefel. 97 klíčových znalostí softwarového architekta Richard Monson-Haefel 97 klíčových znalostí softwarového architekta Computer Press, a. s. Brno 2010 97 klíčových znalostí softwarového architekta Richard Monson-Haefel Computer Press, a. s., 2010. Vydání

Více

pro blbce Vladimír Klaus Doostřování fotografií

pro blbce Vladimír Klaus Doostřování fotografií pro blbce Vladimír Klaus Doostřování fotografií Photoshop pro blbce 1 Doostřování fotografií Copyright 2013 by Vladimír Klaus Cover design 2013 by Vladimír Klaus Veškerá práva vyhrazena. Žádná část tohoto

Více

Obsah. Úvod 9 Poděkování 10 Co je obsahem této knihy 10 Pro koho je tato kniha určena 11 Zpětná vazba od čtenářů 11 Errata 11

Obsah. Úvod 9 Poděkování 10 Co je obsahem této knihy 10 Pro koho je tato kniha určena 11 Zpětná vazba od čtenářů 11 Errata 11 Úvod 9 Poděkování 10 Co je obsahem této knihy 10 Pro koho je tato kniha určena 11 Zpětná vazba od čtenářů 11 Errata 11 KAPITOLA 1 Co je třeba znát aneb důležité pojmy 13 Krátce o požadavcích 13 Stakeholdeři

Více

Faily při tvorbě e-shopů,

Faily při tvorbě e-shopů, Faily při tvorbě e-shopů, za které zaplatíte víc, než za celý e-shop Marek Čevelíček Twitter: @mcevel Nefunkční weby a e-shopy Proč existuje tolik nefunkčních webů a e-shopů? 1/ nevím, jak udělat funkční

Více

aneb Snadné psaní bez pravidel Publikace je chráněna autorským právem Pavel Fara 2013

aneb Snadné psaní bez pravidel Publikace je chráněna autorským právem Pavel Fara 2013 aneb Snadné psaní bez pravidel Publikace je chráněna autorským právem Pavel Fara 2013 1 Finanční trh je přesycen finančními poradci a zprostředkovali pojištění. Určitě využíváte všechny dostupné aplikace

Více

Přístupnost webů knihoven příklady dobré a špatné praxe. Radek PAVLÍČEK, TyfloCentrum Brno, o. p. s., projekt Blind Friendly Web

Přístupnost webů knihoven příklady dobré a špatné praxe. Radek PAVLÍČEK, TyfloCentrum Brno, o. p. s., projekt Blind Friendly Web Přístupnost webů knihoven příklady dobré a špatné praxe Radek PAVLÍČEK, TyfloCentrum Brno, o. p. s., projekt Blind Friendly Web Máte rádi CAPTCHA? Líbila by se vám takto prezentovaná stránka vaší knihovny?

Více

Ukázka knihy z internetového knihkupectví www.kosmas.cz

Ukázka knihy z internetového knihkupectví www.kosmas.cz Ukázka knihy z internetového knihkupectví www.kosmas.cz U k á z k a k n i h y z i n t e r n e t o v é h o k n i h k u p e c t v í w w w. k o s m a s. c z, U I D : K O S 1 8 1 5 4 4 Nadpis kapitoly Mojmír

Více

Gymnázium a Střední odborná škola, Rokycany, Mládežníků 1115

Gymnázium a Střední odborná škola, Rokycany, Mládežníků 1115 Gymnázium a Střední odborná škola, Rokycany, Mládežníků 1115 Číslo projektu: CZ.1.07/1.5.00/34.0410 Číslo šablony: 32 Název materiálu: Ročník: Identifikace materiálu: Jméno autora: Předmět: Tématický celek:

Více

Pelham Grenville Wodehouse. Jeeves. aneb anglický Saturnin

Pelham Grenville Wodehouse. Jeeves. aneb anglický Saturnin Pelham Grenville Wodehouse Jeeves aneb anglický Saturnin Computer Press, a. s. Brno 2011 Jeeves aneb anglický Saturnin PELHAM GRENVILLE WODEHOUSE Computer Press, a. s., 2011. Vydání první. Jazykové úpravy:

Více

POČÍTAČE A PROGRAMOVÁNÍ

POČÍTAČE A PROGRAMOVÁNÍ POČÍTAČE A PROGRAMOVÁNÍ Moderní metody vývoje softwaru, Demontrační příklad piškvorky Miroslav Vavroušek PPI 09 V1.0 Opakovaní z minulé přednášky Vícerozměrná statická a dynamická pole Pole polí Datový

Více

kolektiv Anglictina.com Angličtina pro samouky

kolektiv Anglictina.com Angličtina pro samouky kolektiv Anglictina.com Angličtina pro samouky a věčné začátečníky Computer Press, a.s. Brno 2009 Angličtina pro samouky a věčné začátečníky KOLEKTIV AUTORŮ ANGLIČTINA.COM Computer Press, a. s., 2009.

Více

THE KNOWLEDGE VOLUNTEERS

THE KNOWLEDGE VOLUNTEERS PROJEKT THE KNOWLEDGE VOLUNTEERS -POKYNY PRO SENIORY The Knowledge Volunteers www.mondodigitale.org THE KNOWLEDGE VOLUNTEERS Číslo grantové smlouvy: 2011-3279/001-001 Tento projekt byl realizován za finanční

Více

Uvolnění energie, která je blokovaná dávnými utkvělými představami

Uvolnění energie, která je blokovaná dávnými utkvělými představami Uvolnění energie, která je blokovaná dávnými utkvělými představami Co to je utkvělá víra v náboženský systém? Je to obraz promítnutý do vědomí. Síť utkaná v naší duši. Je to postoj k životu, kterému jsme

Více

Jak testovat software v praxi. aneb šetříme svůj vlastní čas

Jak testovat software v praxi. aneb šetříme svůj vlastní čas Jak testovat software v praxi aneb šetříme svůj vlastní čas Proč testy nepíšeme Nemáme na to čas Platí v cca 5% případů Nový projekt Prototyp je třeba mít během pár dní Počítá se s tím, že další verze

Více

Obsah. Zpracoval:

Obsah. Zpracoval: Zpracoval: houzvjir@fel.cvut.cz 03. Modelem řízený vývoj. Doménový (business), konceptuální (analytický) a logický (návrhový) model. Vize projektu. (A7B36SIN) Obsah Modelem řízený vývoj... 2 Cíl MDD, proč

Více

PHP framework Nette. Kapitola 1. 1.1 Úvod. 1.2 Architektura Nette

PHP framework Nette. Kapitola 1. 1.1 Úvod. 1.2 Architektura Nette Kapitola 1 PHP framework Nette 1.1 Úvod Zkratka PHP (z anglického PHP: Hypertext Preprocessor) označuje populární skriptovací jazyk primárně navržený pro vývoj webových aplikací. Jeho oblíbenost vyplývá

Více

INFORMACE PRO UCHAZEČE

INFORMACE PRO UCHAZEČE INFORMACE PRO UCHAZEČE Přihlašování Uchazeči o středoškolské studium podávají školám přihlášku k přijímacímu řízení nejpozději do 15. března 2016. Vzor přihlášky byl stanoven Ministerstvem školství, mládeže

Více

Vyřešené teoretické otázky do OOP ( )

Vyřešené teoretické otázky do OOP ( ) Vyřešené teoretické otázky do OOP (16. 1. 2013) 1) Vyjmenujte v historickém pořadí hlavní programovací paradigmata a stručně charakterizujte každé paradigma. a) Naivní chaotičnost, špatná syntaxe a sémantika

Více

BAKALÁŘSKÝ SEMINÁŘ 2. JAK VYHLEDAT ZDROJE A PRÁCE S NIMI. Ing. Maryna Garan

BAKALÁŘSKÝ SEMINÁŘ 2. JAK VYHLEDAT ZDROJE A PRÁCE S NIMI. Ing. Maryna Garan BAKALÁŘSKÝ SEMINÁŘ 2. JAK VYHLEDAT ZDROJE A PRÁCE S NIMI Ing. Maryna Garan Zdroje informace 1. Váš vedoucí 2. Knihy 3. Internet 4. Vědecké články 5. Patenty 6. Závěrečné práce jiných studentů Zdroje informace

Více

Jak mluvit s roboty. Dokážeš naprogramovat robota tak, aby postavil kelímky ve správnou stavbu?

Jak mluvit s roboty. Dokážeš naprogramovat robota tak, aby postavil kelímky ve správnou stavbu? Jak mluvit s roboty Dokážeš naprogramovat robota tak, aby postavil kelímky ve správnou stavbu? Témata: Algoritmy, Debuggování (opravy chyb) Během této hodiny se žáci naučí, jak předávat pokyny robotovi

Více

Programování II. Modularita 2017/18

Programování II. Modularita 2017/18 Programování II Modularita 2017/18 Modul? Osnova přednášky Vývoj programování Modularita Příklad Vývoj programování Paradigmata programování Jak a proč se jazyky vyvíjejí? V čem se OOP liší od předchozích

Více

Být člověkem před zákonem

Být člověkem před zákonem Vaše občanská práva Být člověkem před zákonem Inclusion Europe Zpráva Inclusion Europe společně se svými 49 členskými organizacemi v 36 zemích usiluje o odstranění diskrimance : Anglie Belgie Bulharsko

Více

Obsah. Úvod 7 Zpětná vazba od čtenářů 7 Dotazy 8 Errata 8 Poznámka k aktuálnosti 8 Konvence použité v knize 8

Obsah. Úvod 7 Zpětná vazba od čtenářů 7 Dotazy 8 Errata 8 Poznámka k aktuálnosti 8 Konvence použité v knize 8 Obsah Úvod 7 Zpětná vazba od čtenářů 7 Dotazy 8 Errata 8 Poznámka k aktuálnosti 8 Konvence použité v knize 8 KAPITOLA 1 Mechanismy fungování sociálních sítí 9 Jak funguje Facebook 11 Jak sociální sítě

Více

Scénář ukázkového testu Přetištěno z knihy Nenuťte uživatele přemýšlet! 2010 Steve Krug

Scénář ukázkového testu Přetištěno z knihy Nenuťte uživatele přemýšlet! 2010 Steve Krug Scénář ukázkového testu Přetištěno z knihy Nenuťte uživatele přemýšlet! 2010 Steve Krug Ve webovém prohlížeči by měla být načtení nějaká neutrální stránka, například Google. Dobrý den. Jmenuji se a budu

Více

IB111 Úvod do programování skrze Python Přednáška 13

IB111 Úvod do programování skrze Python Přednáška 13 IB111 Úvod do programování skrze Python Přednáška 13 Programovací jazyky Nikola Beneš 14. prosinec 2016 IB111 přednáška 13: programovací jazyky 14. prosinec 2016 1 / 21 Osnova dnešní přednášky Programovací

Více

Vývoj řízený testy Test Driven Development

Vývoj řízený testy Test Driven Development Vývoj řízený testy Test Driven Development Richard Salač, Ondřej Lanč Fakulta jaderná a fyzikálně inženýrská České vysoké učení technické v Praze 23. - 30. 10. 2012 Obsah 1 Testování 2 Klasický přístup

Více

Joelův test. 12 kroků k lepšímu programování. Jaroslav Šnajdr

Joelův test. 12 kroků k lepšímu programování. Jaroslav Šnajdr Joelův test 12 kroků k lepšímu programování Jaroslav Šnajdr i Co je Joelův test? Co je to? 12 otázek o vašem vývojovém týmu Každá odpověď ano = 1 bod Jaký je výsledek? Plných 12 bodů: dobře organizovaný,

Více

Pohled zvenčí je metoda řešení problémů společností a firem

Pohled zvenčí je metoda řešení problémů společností a firem Pohled zvenčí je metoda řešení problémů společností a firem Pohled zvenčí je metoda, která je založena na nestranné a nezávislé analýze, která má za cíl odhalení příčin a zdrojů problémů a potíží a nabízí

Více

Excel Asistent Magazín 06/2003

Excel Asistent Magazín 06/2003 Excel Asistent Magazín 06/2003 Pojmenované oblasti Jiří Číhař, Dataspectrum http:// // ExcelAsistentMagazín je určen k volnému šíření. Pokud Vás jeho obsah zaujal, zašlete jej prosím svým kolegům a přátelům.

Více

INSIGHTS, AUDIENCES, ZAUJETÍ UDĚLEJTE SI S NÁMI POŘÁDEK V POJMECH, KTERÉ NA FACEBOOKU VÍDÁTE

INSIGHTS, AUDIENCES, ZAUJETÍ UDĚLEJTE SI S NÁMI POŘÁDEK V POJMECH, KTERÉ NA FACEBOOKU VÍDÁTE INSIGHTS, AUDIENCES, ZAUJETÍ UDĚLEJTE SI S NÁMI POŘÁDEK V POJMECH, KTERÉ NA FACEBOOKU VÍDÁTE Každý se na Facebooku stále učí něco nového a ledacos ho znovu a znovu překvapuje. Kdo se však chce věnovat

Více

1 Úvod 1.1 Vlastnosti programového vybavení (SW)

1 Úvod 1.1 Vlastnosti programového vybavení (SW) 1 Úvod 1.1 Vlastnosti programového vybavení (SW) - dávkové zpracování - omezená distribuce - zakázkový SW - distribuované systémy - vestavěná inteligence - laciný HW - vliv zákazníka 1950 1960 1970 1980

Více

Photoshop pro blbce 2 Rozostřování fotografií

Photoshop pro blbce 2 Rozostřování fotografií Copyright 2013 by Vladimír Klaus Cover design 2013 by Vladimír Klaus Veškerá práva vyhrazena. Žádná část tohoto díla nesmí být reprodukována ani elektronicky přenášena či šířena bez předchozího písemného

Více

Podpora sady Nero 7 pro Windows Vista TM

Podpora sady Nero 7 pro Windows Vista TM Podpora sady Nero 7 pro Windows Vista TM Nero AG Informace o autorských právech a ochranných známkách Tato stručná příručka i celý její obsah jsou chráněny autorským právem a jsou majetkem společnosti

Více

ŠVP Gymnázium Ostrava-Zábřeh. 4.8.16. Úvod do programování

ŠVP Gymnázium Ostrava-Zábřeh. 4.8.16. Úvod do programování 4.8.16. Úvod do programování Vyučovací předmět Úvod do programování je na naší škole nabízen v rámci volitelných předmětů v sextě, septimě nebo v oktávě jako jednoletý dvouhodinový kurz. V případě hlubšího

Více

ZÁKLADY PROGRAMOVÁNÍ. Mgr. Vladislav BEDNÁŘ 2014 5.3-5.8 9/14

ZÁKLADY PROGRAMOVÁNÍ. Mgr. Vladislav BEDNÁŘ 2014 5.3-5.8 9/14 ZÁKLADY PROGRAMOVÁNÍ Mgr. Vladislav BEDNÁŘ 2014 5.3-5.8 9/14 Co je vhodné vědět, než si vybereme programovací jazyk a začneme programovat roboty. 1 / 12 0:40 UML unifikovaný modelovací jazyk Zkratka tohoto

Více

Plánování ve stavební firmě

Plánování ve stavební firmě Co je to podnikatelský plán? Podnikatelský plán je dokument, který popisuje podnik (ideu pro stávající nebo začínající) a způsob, jak dosáhne ziskovosti Plán by měl zahrnovat: všechny náklady a marketingový

Více

Microsoft Visio 2013 vypadá jinak než ve starších verzích, proto jsme vytvořili tuto příručku, která vám pomůže se s ním rychle seznámit.

Microsoft Visio 2013 vypadá jinak než ve starších verzích, proto jsme vytvořili tuto příručku, která vám pomůže se s ním rychle seznámit. Úvodní příručka Microsoft Visio 2013 vypadá jinak než ve starších verzích, proto jsme vytvořili tuto příručku, která vám pomůže se s ním rychle seznámit. Aktualizované šablony Šablony vám pomáhají při

Více

DOTAZNÍK PRO URČENÍ UČEBNÍHO STYLU

DOTAZNÍK PRO URČENÍ UČEBNÍHO STYLU DOTAZNÍK PRO URČENÍ UČEBNÍHO STYLU Projekt MOTIVALUE Jméno: Třida: Pokyny Prosím vyplňte vaše celé jméno. Vaše jméno bude vytištěno na informačním listu s výsledky. U každé ze 44 otázek vyberte a nebo

Více

Jméno a Příjmení. Třída. Škola

Jméno a Příjmení. Třída. Škola Studentský dotazník Vážení studenti, cílem tohoto průzkumu je zjistit váš postoj k matematice a k výukovému nástroji Khan Academy. Vaše názory a odpovědi pomohou dalším studentům a učitelům při zapojování

Více

Dobré UX jako nejlepší marketingový nástroj mobilních aplikací. Vladimír Korbel

Dobré UX jako nejlepší marketingový nástroj mobilních aplikací. Vladimír Korbel Dobré UX jako nejlepší marketingový nástroj mobilních aplikací Vladimír Korbel Osnova Co je to User Experience (UX)? Proč je UX důležitá UX přínosy pro business Dobrý design v kontextu mobilních aplikací

Více

Obsah. Ohlasy na Vývojářův kód 9 Poděkování 11 Zpětná vazba od čtenářů 13 Errata 13

Obsah. Ohlasy na Vývojářův kód 9 Poděkování 11 Zpětná vazba od čtenářů 13 Errata 13 Obsah Ohlasy na Vývojářův kód 9 Poděkování 11 Zpětná vazba od čtenářů 13 Errata 13 Kapitola 1: Úvodem 15 Jaký je programátor 21. století? 16 Poznatky z první ruky 17 Tato kniha je o nás 19 Kapitola 2:

Více

Objektově orientované programování v jazyce Python

Objektově orientované programování v jazyce Python Objektově orientované programování v jazyce Python Základní pojmy objektově orientovaného programování Objekt vychází z reálného světa. Má dva charakteristické rysy. Všechny objekty mají stav Všechny objekty

Více

PROBLÉMY A SPECIFIKA VÝVOJE SOFTWARE

PROBLÉMY A SPECIFIKA VÝVOJE SOFTWARE PROBLÉMY A SPECIFIKA VÝVOJE SOFTWARE Vývoj prvních programů byl prováděn nadšenci, programy byly šité na míru. Žádná metodika vývoje SW v té době neexistuje. Vývoj SW byl vnímán jako výzkum. Cíl, co bude

Více

Marketing. Praxe.Workshop. Obchodní rozhovor. Dr. Andrea Grimm Dr. Astin Malschinger

Marketing. Praxe.Workshop. Obchodní rozhovor. Dr. Andrea Grimm Dr. Astin Malschinger Marketing Praxe.Workshop Obchodní rozhovor Dr. Andrea Grimm Dr. Astin Malschinger 2 OBSAH PRAXE.WORKSHOP Obchodní rozhovor Autorky: Dr. Andrea Grimm, Dr. Astin Malschinger IMPRESUM Za obsah odpovídá: Austrian

Více

Úvodem... 4 Co je to vlastně formulář Co je to šablona dokumentu Jak se šablona uloží Jak souvisí formulář se šablonou...

Úvodem... 4 Co je to vlastně formulář Co je to šablona dokumentu Jak se šablona uloží Jak souvisí formulář se šablonou... Obsah Úvodem... 4 Co je to vlastně formulář... 5 Co je to šablona dokumentu... 5 Jak se šablona uloží... 6 Jak souvisí formulář se šablonou... 7 Jak se formulář vytváří... 8 Návrh formuláře... 8 Co jsou

Více

Itálie Dotazník pro učitele VŠ připravující budoucí učitele cizích jazyků Zpracování údajů

Itálie Dotazník pro učitele VŠ připravující budoucí učitele cizích jazyků Zpracování údajů Itálie Dotazník pro učitele VŠ připravující budoucí učitele cizích jazyků Zpracování údajů O Vás 1. Dotazník vyplnilo sedm vysokoškolských pedagogů připravujících budoucí učitele cizích jazyků. 2. Šest

Více

Objektově orientované programování v jazyce Python

Objektově orientované programování v jazyce Python Objektově orientované programování v jazyce Python Co to je objektově orientované programování Python není přímo objektově orientovaný jazyk, ale podporuje nejdůležitější části objektově orientovaného

Více

Profilová část maturitní zkoušky 2013/2014

Profilová část maturitní zkoušky 2013/2014 Střední průmyslová škola, Přerov, Havlíčkova 2 751 52 Přerov Profilová část maturitní zkoušky 2013/2014 TEMATICKÉ OKRUHY A HODNOTÍCÍ KRITÉRIA Studijní obor: 78-42-M/01 Technické lyceum Předmět: TECHNIKA

Více

Příloha 4. Uživatelský manuál k provozování PC modelu EDD Ekonomika druhů dopravy. SBP Consult, s.r.o. MD ČR Výzkumná zpráva harmonizace 2005

Příloha 4. Uživatelský manuál k provozování PC modelu EDD Ekonomika druhů dopravy. SBP Consult, s.r.o. MD ČR Výzkumná zpráva harmonizace 2005 Výzkumná zpráva harmonizace 2005 Příloha 4 Uživatelský manuál k provozování PC modelu EDD Ekonomika druhů dopravy SBP Consult, s.r.o. SBP Consult, s.r.o. Uživatelský manuál k provozování počítačového modelu

Více

JOHN P. KOTTER VĚDOMÍ NALÉHAVOSTI PRVNÍ A NEJDŮLEŽITĚJŠÍ KROK REALIZACE ZMĚNY

JOHN P. KOTTER VĚDOMÍ NALÉHAVOSTI PRVNÍ A NEJDŮLEŽITĚJŠÍ KROK REALIZACE ZMĚNY JOHN P. KOTTER VĚDOMÍ NALÉHAVOSTI PRVNÍ A NEJDŮLEŽITĚJŠÍ KROK REALIZACE ZMĚNY MANAGEMENT PRESS, PRAHA 2009 Z angličtiny přeložila Irena Grusová John P. Kotter: A Sense of Urgency Copyright 2008 John P.

Více

Digitální nabídka veřejných knihoven. Frank Daniel Městská knihovna Kolín Praha, 12.4.2011

Digitální nabídka veřejných knihoven. Frank Daniel Městská knihovna Kolín Praha, 12.4.2011 Digitální nabídka veřejných knihoven Frank Daniel Městská knihovna Kolín Praha, 12.4.2011 Jsou knihovny ještě vůbec potřeba? Každý má přece přístup na internet! Foto: www.flickr.com/photos/poperotico/3921069882/

Více

Úvod. Programovací paradigmata

Úvod. Programovací paradigmata .. Úvod. Programovací paradigmata Programovací techniky doc. Ing. Jiří Rybička, Dr. ústav informatiky PEF MENDELU v Brně rybicka@mendelu.cz Cíl: programování efektivně a bezpečně Programovací techniky

Více

Adobe Illustrator CS5

Adobe Illustrator CS5 Adobe Creative Team Adobe Illustrator CS5 Oficiální výukový kurz Computer Press Brno 2012 Adobe Illustrator CS5 Oficiální výukový kurz Adobe Creative Team Překlad: Marcel Goliaš Obálka: Adobe Creative

Více

Optimalizaci aplikací. Ing. Martin Pavlica

Optimalizaci aplikací. Ing. Martin Pavlica Optimalizaci aplikací Ing. Martin Pavlica Vize: Aplikace v dnešním světě IT Ze všech částí IT jsou aplikace nejblíže businessu V elektronizovaném světě významným způsobem podporují business, ten se na

Více

KOMU JE KNIHA URČENA?

KOMU JE KNIHA URČENA? 7 Kapitola 0. O této knížce KOMU JE KNIHA URČENA? Tuto učebnici jsem vytvářel na základě mých přednášek a úvodních kurzů na vysokých školách i ve firmě moderníprogramování. Většina mých studentů měla malou

Více

Význam měřm. Mgr. Anna Borovcová doc. Ing. Alena Buchalcevová, Ph.D. VŠE Praha

Význam měřm. Mgr. Anna Borovcová doc. Ing. Alena Buchalcevová, Ph.D. VŠE Praha Význam měřm ěření v testování softwaru Mgr. Anna Borovcová doc. Ing. Alena Buchalcevová, Ph.D VŠE Praha Motivace The Standish Group reporty za roky 1994 2009 1994 1996 1998 2000 2002 2004 2006 2009 Úspěšných

Více

MQL4 COURSE. By Coders guru www.forex-tsd.com. -4 Operace & Výrazy

MQL4 COURSE. By Coders guru www.forex-tsd.com. -4 Operace & Výrazy MQL4 COURSE By Coders guru www.forex-tsd.com -4 Operace & Výrazy Vítejte ve čtvrté lekci mého kurzu MQL4. Předchozí lekce Datové Typy prezentovaly mnoho nových konceptů ; Doufám, že jste všemu porozuměli,

Více

Průvodce řešením interních konfliktů

Průvodce řešením interních konfliktů Průvodce řešením interních konfliktů Copyright 2008 Dale Carnegie & Associates, Inc. 290 Motor Parkway, Hauppauge, New York 11788. All rights reserved. 1 ŘEŠNÍ INTERNÍCH KONFLIKTŮ Podle těchto pokynů,

Více

Změna plánu! Vendula Zahumenská

Změna plánu! Vendula Zahumenská Změna plánu! Vendula Zahumenská 2 0 1 7 O co jde? V Praze funguje od roku 2017 nová aplikace Změna plánu. Najdete v ní všechny potřebné informace o platném územním plánu, o jeho změnách, úpravách nebo

Více

Nebojte se přiznat, že potřebujete SQA

Nebojte se přiznat, že potřebujete SQA Nebojte se přiznat, že potřebujete SQA Internet a technologie 16 Václav Klimeš vaclav.klimes@nic.cz 1. 6. 2016 Osnova Kvalita Koncept kvality Co je a není SQA (Software Quality Assurance) Proč se zajímat

Více

2. Modelovací jazyk UML 2.1 Struktura UML 2.1.1 Diagram tříd 2.1.1.1 Asociace 2.1.2 OCL. 3. Smalltalk 3.1 Jazyk 3.1.1 Pojmenování

2. Modelovací jazyk UML 2.1 Struktura UML 2.1.1 Diagram tříd 2.1.1.1 Asociace 2.1.2 OCL. 3. Smalltalk 3.1 Jazyk 3.1.1 Pojmenování 1. Teoretické základy modelování na počítačích 1.1 Lambda-kalkul 1.1.1 Formální zápis, beta-redukce, alfa-konverze 1.1.2 Lambda-výraz jako data 1.1.3 Příklad alfa-konverze 1.1.4 Eta-redukce 1.2 Základy

Více

TROJKAM STUDIO, s. r. o. Uživatelská příručka. E-learningový systém MUZA, příručka pro účastníky kurzů

TROJKAM STUDIO, s. r. o. Uživatelská příručka. E-learningový systém MUZA, příručka pro účastníky kurzů TROJKAM STUDIO, s. r. o. Uživatelská příručka E-learningový systém MUZA, příručka pro účastníky kurzů Artur Filipiak 15.5.2010 Obsah Uživatelský účet... 4 Registrace nového účtu... 4 Přihlášení do systému...

Více

Jak nespadnout do dluhové pasti. Příručka pro žadatele o půjčku

Jak nespadnout do dluhové pasti. Příručka pro žadatele o půjčku Jak nespadnout do dluhové pasti Příručka pro žadatele o půjčku www.homecredit.cz www.navigatoruveru.cz www.clovekvtisni.cz Slovo úvodem Půjčka může být nejen dobrým sluhou, ale i špatným pánem. A to většinou

Více

Proč číst zrovna tenhle e-book?

Proč číst zrovna tenhle e-book? Proč číst zrovna tenhle e-book? Máte zájem se dozvědět, proč námitky ve skutečnosti vznikají? Jak na nich vydělat, zvládnout je a jak co nejvíce omezit ty zbytečné, rýpavé, jedovaté a ponižující. Je to

Více

Seminární práce. Téma. Jméno, Příjmení, rok,

Seminární práce. Téma. Jméno, Příjmení, rok, Seminární práce Téma Jméno, Příjmení, rok, Obsah 1. O projektu... 2 2. Procházení webu... 2 3. Phishing... 3 a. Co dělat, pokud se stanu obětí phishingu?... 3 b. Falešné webové stránky neboli Spoofing...

Více

Musím se zaregistrovat, abych mohl(a) platit pomocí Platební brány?

Musím se zaregistrovat, abych mohl(a) platit pomocí Platební brány? PLATEBNÍ BRÁNA ČASTO KLADENÉ DOTAZY - FAQ Co je to Platební brána? Platební brána je jednoduchá a bezpečná platební metoda. Platební brána umožňuje realizovat on-line platby za zboží a služby pomocí internetového

Více

BÝT PRACOVNÍKEM SPOLEČNOSTI NIKE NA POZICI ATHLETE

BÝT PRACOVNÍKEM SPOLEČNOSTI NIKE NA POZICI ATHLETE BÝT PRACOVNÍKEM SPOLEČNOSTI NIKE NA POZICI ATHLETE PRŮVODCE GO GUIDE ÚVOD BÝT PRACOVNÍKEM SPOLEČNOSTI NIKE NA POZICI ATHLETE CO A PROČ WARM-UP Blahopřejeme! Nyní jste součástí jedné z nejsilnějších sportovních

Více

PŘÍPRAVA NA ÚSTNÍ ZKOUŠKU

PŘÍPRAVA NA ÚSTNÍ ZKOUŠKU PŘÍPRAVA NA ÚSTNÍ ZKOUŠKU Mgr. Michaela Holubová Autorem materiálu a všech jeho částí, není-li uvedeno jinak, je Mgr. Michaela Holubová. Obsah: Jak začít? Jak pracovat s pracovními listy? Jak číst text?

Více

2012 ET NETERA a.s. Wicket přehled technologie Martin Strejc www.etnetera.cz 5.4.2012

2012 ET NETERA a.s. Wicket přehled technologie Martin Strejc www.etnetera.cz 5.4.2012 Wicket přehled technologie Martin Strejc www.etnetera.cz 5.4.2012 Osnova přednášky 1. Vznik Wicketu 2. Co Wicket umí a co neumí? 3. Účely užití výhody a nevýhody 4. Rozšiřitelnost Wicketu 5. Srovnání s

Více

09. Memory management. ZOS 2006, L.Pešička

09. Memory management. ZOS 2006, L.Pešička 09. Memory management ZOS 2006, L.Pešička Správa paměti paměťová pyramida absolutní adresa relativní adresa počet bytů od absolutní adresy fyzický prostor adres fyzicky k dispozici výpočetnímu systému

Více

7 osvědčených tipů jak vybudovat základnu věrných zákazníků

7 osvědčených tipů jak vybudovat základnu věrných zákazníků 7 osvědčených tipů jak vybudovat základnu věrných zákazníků 7. lekce Jak se stát doporučitelným Chcete si udělat z doporučení seriózní nástroj, díky kterému budete stabilně získávat nové zakázky a obchodní

Více

dokumentu, respektive oddílu (více o oddílech v další kapitole). Nemůžeme

dokumentu, respektive oddílu (více o oddílech v další kapitole). Nemůžeme Microsoft Office IV Sloupce Chtěli bychom psát školní noviny a máme pocit, že jsou málo profesionální. Chtěli bychom využít možnost psaní v několika sloupcích. Nastavíme si na stránce místo jednoho sloupce

Více

EVROPSKÁ ŽELEZNIČNÍ AGENTURA. SYSTÉMOVÝ PŘÍSTUP Prováděcí pokyny pro tvorbu a zavádění systému zajišťování bezpečnosti železnic

EVROPSKÁ ŽELEZNIČNÍ AGENTURA. SYSTÉMOVÝ PŘÍSTUP Prováděcí pokyny pro tvorbu a zavádění systému zajišťování bezpečnosti železnic EVROPSKÁ ŽELEZNIČNÍ AGENTURA SYSTÉMOVÝ PŘÍSTUP Prováděcí pokyny pro tvorbu a zavádění systému zajišťování bezpečnosti železnic Verze 1.0 13. 12. 2010 Správa verze Dokument zpracovala: Vydal: Kontrolu provedl:

Více

Jak ZÍSKAT. hodinu. denně. garantováno. Michael Heppell

Jak ZÍSKAT. hodinu. denně. garantováno. Michael Heppell Jak ZÍSKAT hodinu denně garantováno Michael Heppell Jak ZÍSKAT hodinu denně Michael Heppell Jak ZÍSKAT hodinu denně MICHAEL HEPPELL Upozornění pro čtenáře a uživatele této knihy Všechna práva vyhrazena.

Více

Komunitní lokalizace svobodného a otevřeného softwaru. Petr Kovář LinuxAlt 2010, 6. listopadu 2010

Komunitní lokalizace svobodného a otevřeného softwaru. Petr Kovář LinuxAlt 2010, 6. listopadu 2010 Komunitní lokalizace svobodného a otevřeného softwaru Petr Kovář LinuxAlt 2010, 6. listopadu 2010 Abstrakt V úvodu přednášky, určené především začínajícím a mírně pokročilým zájemcům o komunitní lokalizaci,

Více

VYUŽITÍ HELPDESKOVÉHO INFORMAČNÍHO SYSTÉMU PŘI ROZVOJI A ZÁKAZNICKÉ PODPOŘE KNIHOVNÍHO SYSTÉMU

VYUŽITÍ HELPDESKOVÉHO INFORMAČNÍHO SYSTÉMU PŘI ROZVOJI A ZÁKAZNICKÉ PODPOŘE KNIHOVNÍHO SYSTÉMU VYUŽITÍ HELPDESKOVÉHO INFORMAČNÍHO SYSTÉMU PŘI ROZVOJI A ZÁKAZNICKÉ PODPOŘE KNIHOVNÍHO SYSTÉMU Šárka Frantová, SEFIRA spol. s r. o. Úvod Zprovozněním systému a odjezdem dodavatele od zákazníka komunikace

Více

Formulář sebehodnocení

Formulář sebehodnocení Příloha č.2: Roční hodnocení Formulář sebehodnocení Prostor pro Váš růst Informace pro zaměstnance: Roční hodnocení zaměstnanců je velmi důležité. Je to jedinečná příležitost k dialogu o vykonané práci

Více

Úžasný rok 2017 Váš plán pro úspěšný nový rok

Úžasný rok 2017 Váš plán pro úspěšný nový rok Úžasný rok 2017 Váš plán pro úspěšný nový rok JANAPEKNA.CZ 1 Část 1 Než začneme: Jaký byl pro vás rok 2016? Vítejte! Než se pustíme do plánování vysněného roku 2017, musíme se podívat, jaký byl rok 2016.

Více

5.3.1. Informatika pro 2. stupeň

5.3.1. Informatika pro 2. stupeň 5.3.1. Informatika pro 2. stupeň Charakteristika vzdělávací oblasti Vzdělávací oblast Informační a komunikační technologie umožňuje všem žákům dosáhnout základní úrovně informační gramotnosti - získat

Více

CPK a meziknihovní služby

CPK a meziknihovní služby CPK a meziknihovní služby Nové trendy v meziknihovních výpůjčních službách (MVS), nové funkce Virtuální polytechnické knihovny (VPK) a novinky Centrálního portálu knihoven (CPK) II. Seminář VISK 2, 22.11.

Více

3. Je defenzivní programování technikou skrývání implementace? Vyberte jednu z nabízených možností: Pravda Nepravda

3. Je defenzivní programování technikou skrývání implementace? Vyberte jednu z nabízených možností: Pravda Nepravda 1. Lze vždy z tzv. instanční třídy vytvořit objekt? 2. Co je nejčastější příčinou vzniku chyb? A. Specifikace B. Testování C. Návrh D. Analýza E. Kódování 3. Je defenzivní programování technikou skrývání

Více

textová část časopisu I.

textová část časopisu I. Číslo projektu: Název projektu: Subjekt: Označení materiálu (přílohy): CZ.1.07/1.1.24/02.0118 Polygrafie v praxi Albrechtova střední škola, Český Těšín, p.o. Prezentace textová část časopisu I. Autor:

Více

POKYNY PRO VYPRACOVÁNÍ BAKALÁŘSKÉ A DIPLOMOVÉ PRÁCE

POKYNY PRO VYPRACOVÁNÍ BAKALÁŘSKÉ A DIPLOMOVÉ PRÁCE POKYNY PRO VYPRACOVÁNÍ BAKALÁŘSKÉ A DIPLOMOVÉ PRÁCE na Fakultě životního prostředí UJEP v Ústí nad Labem. 1. Bakalářská a diplomová práce se odevzdává ve třech výtiscích v pevné vazbě. Práce musí být svázaná

Více

TEST CTIŽÁDOSTI. Využitelný pro měření kompetence: podnikavost, výkonnost, vedení lidí, flexibilita

TEST CTIŽÁDOSTI. Využitelný pro měření kompetence: podnikavost, výkonnost, vedení lidí, flexibilita TEST CTIŽÁDOSTI Využitelný pro měření kompetence: podnikavost, výkonnost, vedení lidí, flexibilita Forma: papír - tužka Čas na administraci: max. 10 min. Časový limit: ne Vyhodnocení: ručně cca 10 minut

Více

8 Třídy, objekty, metody, předávání argumentů metod

8 Třídy, objekty, metody, předávání argumentů metod 8 Třídy, objekty, metody, předávání argumentů metod Studijní cíl Tento studijní blok má za cíl pokračovat v základních prvcích jazyka Java. Konkrétně bude věnována pozornost třídám a objektům, instančním

Více

John McWade. Jak na působivý grafický design Návrhy brožur, log, webů, newsletterů, vizitek či plakátů

John McWade. Jak na působivý grafický design Návrhy brožur, log, webů, newsletterů, vizitek či plakátů John McWade Jak na působivý grafický design Návrhy brožur, log, webů, newsletterů, vizitek či plakátů Computer Press Brno 2011 Jak na působivý grafický design Návrhy brožur, log, webů, newsletterů, vizitek

Více

Tomáš Činčala. Strategie osobních aktiv jednotlivce, jejich tvorby a struktury

Tomáš Činčala. Strategie osobních aktiv jednotlivce, jejich tvorby a struktury Tomáš Činčala Strategie osobních aktiv jednotlivce, jejich tvorby a struktury Ostrava 2014 1 Copyright Tomáš Činčala, 2009 2014 ISBN 978-80-85624-87-8 2 Většina z nás chce být bohatá a úspěšná. Nestačí

Více

Modulární systém dalšího vzdělávání pedagogických pracovníků JmK v přírodních vědách a informatice CZ.1.07/1.3.10/ Brožura dobré praxe

Modulární systém dalšího vzdělávání pedagogických pracovníků JmK v přírodních vědách a informatice CZ.1.07/1.3.10/ Brožura dobré praxe Modulární systém dalšího vzdělávání pedagogických pracovníků JmK v přírodních vědách a informatice CZ.1.07/1.3.10/02.0024 Brožura dobré praxe Informatika 1 Brožura dobré praxe informatika Materiál shrnuje

Více

Předmluva 11. Poděkování 11 O autorech 12 Úvodem 12 Komu je tato kniha určena 13 Jak byste měli tuto knihu číst 13 Web 14

Předmluva 11. Poděkování 11 O autorech 12 Úvodem 12 Komu je tato kniha určena 13 Jak byste měli tuto knihu číst 13 Web 14 Obsah Předmluva 11 Poděkování 11 O autorech 12 Úvodem 12 Komu je tato kniha určena 13 Jak byste měli tuto knihu číst 13 Web 14 KAPITOLA 1 Úvod do architektury softwaru 15 Použití procesu 16 Stručný popis

Více

Materiál byl vytvořen v rámci projektu Nové výzvy, nové příležitosti, nová škola

Materiál byl vytvořen v rámci projektu Nové výzvy, nové příležitosti, nová škola Materiál byl vytvořen v rámci projektu Nové výzvy, nové příležitosti, nová škola Tento projekt je spolufinancován Evropským sociálním fondem a státním rozpočtem České republiky Co je to prezentace Jak

Více

Čtvrtek 8. prosince. Pascal - opakování základů. Struktura programu:

Čtvrtek 8. prosince. Pascal - opakování základů. Struktura programu: Čtvrtek 8 prosince Pascal - opakování základů Struktura programu: 1 hlavička obsahuje název programu, použité programové jednotky (knihovny), definice konstant, deklarace proměnných, všechny použité procedury

Více

Po ukončení tohoto kurzu budete schopni:

Po ukončení tohoto kurzu budete schopni: POKROČILÁ PREZENTACE Vladimír Bureš Tereza Otčenášková Alena Šandová Cíle kurzu Po ukončení tohoto kurzu budete schopni: efektivně plánovat a připravovat prezentaci, pracovat s předlohami a šablonami snímků,

Více