Anglicky psané články najdete na adrese http://edu.pecinovsky.cz/papers
Články uvedené v následujícím přehledu jsou seřazeny podle data jejich zveřejnění od nejmladšího k nejstaršímu.
Metodika Architecture First
DidactIG 2013 —
Liberec —
PDF verze ke stažení.
Abstract:
Množina úloh, které již není třeba programovat,
protože je umí naprogramovat nějaký generátor kódu, se stále rozšiřuje.
Oblastí, která automatizaci stále vzdoruje
a ještě nějakou dobu jí vzdorovat bude, je návrh architektury programu.
Většina používaných metodik výuky však stále klade důraz především
na výuku kódování.
Příspěvek seznamuje se základními principy metodiky výuky Architecture First,
která ukazuje, jak vychovávat programátory,
které automaty ještě dlouho nenahradí.
Kopenogramy a jejich implementace v NetBeans
Software Development 2012 —
Ostrava —
PDF verze ke stažení.
Abstract:
V současné éře OOP občas zapomínáme na to,
že na konci objektové analýzy nás občas čeká návrh složitějších algoritmů.
Pro jejich znázornění existuje několik grafických jazyků.
Jedním nejnázornějších způsobů zobrazení strukturovaných algoritmů
jsou kopenogramy.
Příspěvek v první části podrobně probere způsob zápisu kopenogramů
a ve druhé části pak seznámí s editorem,
který je vyvíjen jako plug-in do vývojového prostředí NetBeans.
Cumulant – program usnadňující tvorbu série výukových projektů
postupně kumulujících funkcionalitu vyvíjeného programu
Objekty 2011 —
Žilina —
PDF verze ke stažení.
Abstract:
Článek seznamuje s programem, který usnadní přípravu sérií výukových projektů,
v nichž se vyvíjený program postupně zdokonaluje,
přičemž každá z etap je prezentována jako samostatný projekt
přiřazený k příslušné lekci učebnice nebo výukového kurzu.
Vysvětluje, jak lze specifikovat sestavení jednotlivých projektů
ze tříd definovaných v souhrnném, učitelském projektu a ukazuje,
jaké prostředky program nabízí k tomu,
aby mohl učitel definovat několik verzí postupně vyvíjené třídy
v jednom zdrojovém souboru a jak specifikovat,
která část zdrojového kódu se zanese do výsledného programu jednotlivých lekcí.
Tvorba učebnic a kurzů programování
Objekty 2011 —
Žilina —
PDF verze ke stažení.
Abstract:
Článek rozebírá různé přístupy k tvorbě učebnic a kurzů programování
a programovacích jazyků. Seznamuje se jejich výhodami a nevýhodami a ukazuje,
čím se liší skutečné učebnice a kurzy programování od učebnic a kurzů,
které pouze seznamují s nějakým programovacím jazykem a jeho knihovnami.
Specifikuje některé zásady, které vhodné respektovat při návrhu obsahu učebnic
a kurzů učících programování. Připomíná pedagogickou zásadu ranního ptáčete,
podle níž se má výklad uspořádat tak, aby se nejdůležitější věci učily opravdu
co nejdříve. Současně doporučuje nesoustředit se zbytečně na prvky,
jejichž tvorbu postupně přebírají různé automatizované systémy,
a naopak učit od samého začátku také zásady architektury.
V závěru seznamuje s různými přístupy k tvorbě doprovodných programů
a rozebírá jejich výhody a nevýhody. Současně upozorňuje na program,
který může výrazně pomoci při tvorbě programů, které studenti v průběhu kurzu
postupně vyvíjejí a zdokonalují.
Programování je také ladění
Tvorba Softwaru 2011 —
Ostrava —
PDF verze ke stažení.
Abstract:
Hovoříme-li někdy o výuce programování, rozebíráme většinou výuku kódování,
doplněnou v lepším případě o výuku zásad analýzy a návrhu programů.
Zapomínáme přitom na to, že většinu času netráví studenti
(a stejně tak i profesionální programátoři) navrhováním programu a psaním kódu,
ale laděním. Ladění programu se však ve výuce nevěnuje žádná,
anebo v lepším případě jen minimální pozornost.
Příspěvek se zabývá možnostmi začlenění výuky zásad správného ladění a testování
do celkové koncepce výuky programování.
Metodika Design Patterns First v roce 2010
Objekty 2010 —
Ostrava —
PDF verze ke stažení.
Abstract:
Metodika Design Patterns First se narodila v roce 2004
a od té doby se neustále vyvíjí a (doufejme) vylepšuje.
Tato metodika vychází z metodiky Object First,
kterou doplňuje o důslednou aplikaci zásady,
že nejdůležitější témata se mají přednášet co nejdříve.
Od začátku proto studenty seznamuje s koncepcí rozhraní a návrhových vzorů.
Článek shrnuje stav této metodiky v roce 2010.
Podrobně popisuje aktuálně používaný postup výuky.
Ukazuje, co vše tato metodika doporučuje probrat v konverzačním režimu
použitého vývojového prostředí BlueJ
a znovu zopakovat v následujícím textovém režimu.
Podrobně také vysvětluje novou koncepci výkladu dědičnosti
postavenou na analogii s návrhovým vzorem Dekorátor.
Knihovna Duckapter
Tvorba Softwaru 2010 —
Ostrava —
PDF verze ke stažení.
Abstract:
Tento příspěvek není k dispozici ve formě článku, ale pouze ve formě
prezentace. Seznamuje s knihovnou, která umožňuje výrazné zefektivnění
automatického vyhodnocování studentských úloh.
Quo vadis programování?
Tvorba Softwaru 2010 —
Ostrava —
PDF verze ke stažení.
Abstract:
Příspěvek shrnuje vývoj programovacích paradigmat v posledních desetiletích
a na ně navazující vývoj vyučovaných paradigmat a metodik jejich výuky.
Poté rozebírá některé současné trendy v programování a těžkopádnou reakci
výukových programů na tyto trendy. Poukazuje na stále sílící pozici
nejrůznějších frameworků a na přetrvávající ignoraci tohoto trendu v
učebních plánech škol všech stupňů.Příspěvek shrnuje vývoj programovacích
paradigmat v posledních desetiletích a na ně nava-zující vývoj vyučovaných
paradigmat a metodik jejich výuky. Poté rozebírá některé současné trendy
v programování a těžkopádnou reakci výukových programů na tyto trendy.
Poukazuje na stále sílící pozici nejrůznějších frameworků a na přetrvávající
ignoraci tohoto trendu v učebních plánech škol všech stupňů.
Metodika Design patterns first – jak lze drobnou změnou výkladu
zlepšit pochopení některých objektových konstrukcí
DidInfo 2010 —
Banská Bystrice —
PDF verze ke stažení.
Abstract:
Většina učebnic a kurzů programování vysvětluje základní konstrukce OOP
velmi podobným způsobem. Zkušenosti s výukou v nejrůznějších kurzech od
základních škol přes střední školy a univerzity až po přeškolovací kurzy pro
profesionální programátory však ukazuje, že značná část studentů má s takto
koncipovaným výkladem problémy. Příspěvek vysvětluje některé základní
principy metodiky Design Patterns First, která se snaží vypěstovat ve
studentech hlubší pochopení OO paradigmatu. Příspěvek současně ukazuje, jak
je možno výklad upravit, aby se pochopení látky výrazně zvýšilo. Jak můžeme
změnou pojetí některých základních principů OOP zlepšit pochopení těchto
principů. V závěru pak odkazuje na učebnici, v níž jsou doporučené postupy
aplikovány.
Metodika Design Patterns First
Počítač ve škole 2010 —
Nové město na Moravě —
PDF verze ke stažení.
Abstract:
Naprostá většina učebnic a kurů objektově orientovaných jazyků zařazuje
výklad dědičnosti vzápětí po seznámení s objekty. Studenti jsou pak jejími
možnostmi opojeni a použijí ji i tam, kde je to nevhodné. Přednáška naznačí
některé takové situace, ukáže, jak výklad dědičnosti nahradit výkladem vzoru
Dekorátor, jehož použití bývá v takových situacích výhodnější. Poté
vysvětlí, jak na základě znalostí vzoru dekorátor vyložit dědičnost a její
vlastnosti tak, aby je studenti co nejlépe pochopili a správně si osvojili
její používání.
Podpůrný program pro přípravu výukových aplikací
Informatika XXIII 2010 —
Luhačovice
(K tomuto příspěvku je k dipozici pouze abstrakt,
příspěvek byl koncipován jako demo, které nebylo zaznamenáváno.)
Abstract:
Při přípravě učebnic a kurzů programování potřebujeme nejenom vyložit
probírané programové konstrukce, ale také připravit doprovodné projekty dvou
druhů: na prvních demonstrujeme funkci probíraných konstrukcí, druhé slouží
jako zadání, resp. vzorová řešení úloh, které studenti řeší samostatně. Tyto
doprovodné projekty se mezi jednotlivými lekcemi liší často jen nepatrně –
většinou přidáním částí, v nichž použijeme nově vysvětlovanou konstrukci.
Problémem klasického přístupu je, že jakákoliv dodatečná úprava výchozího
zadání nebo oprava objevené chyby vede k nutnosti úprav poměrně rozsáhlé
sady jednotlivých verzí programů. Diskutovaný program umožňuje generovat
všechny postupně zdokonalované projekty z jedné výchozí sady zdrojových
textů. Pomocí jednoduchého textového souboru programu zadáme, z kterých
zdrojových souborů má zkonstruovat každý jednotlivý projekt a jak mají být
soubory v tomto projektu organizovány. Ve zdrojových souborech pak zadáme,
ve kterých projektech se má vyskytovat ta která část zdrojového kódu. Tyto
informace jsou zadávány jako speciální druhy řádkových komentářů. Umožňují
zadat, zda zadanou část do programu zařadit, nebo ji z něj naopak vypustit,
anebo zda je ve zdrojovém textu přítomná ve formě komentářů a je ji třeba
„odkomentovat“. Na příkladu nové učebnice s přibližně 50 doprovodnými
projekty článek ukazuje, jak tento program dramaticky snižuje pracnost
přípravy doprovodných projektů.
Zbytečně časná výuka dědičnosti je škodlivá
Objekty 2009 —
Hradec Králové —
PDF verze ke stažení.
(V češtině je k dipozici pouze prototyp příspěvku. Jeho výsledná podoba
je k dipsozici pouze anglicky v článku
Early Introduction of Inheritance Considered Harmful.
Abstract:
Většina učebnic objektově orientovaného programování začíná vyklád
triumvirátu dědičnost – abstraktní třídy – rozhraní
výkladem dědičnosti a překrývání metod, pokračuje výkladem abstraktních tříd
a končí rozhraním a jeho implementací. Článek vysvětluje jak metodika
Design Patterns First mění toto pořadí výkladu. Navrhuje vysvětlit
rozhraní na počátku kurzu a nepokračovat dědičností tříd dokud se studenti
nenaučí aktivně zahrnovat rozhraní do svých návrhů. Příspěvek uvádí důvody
pro tuto změnu a seznamuje s jeho výhodami. Je doplněn ukázkami některých
studentských úloh demonstrující popsané principy.
Softwarová architektura respektující mentální modely uživatele
Tvorba Softwaru 2009 —
Ostrava —
PDF verze ke stažení.
Abstract:
O objektově orientovaném programování se předpokládalo, že v kódu sjednotí
úhel pohledu programátora a koncového uživatele a poskytne tak oběma vyšší
míru pochopení problémy a vyšší užitnou hodnotu. Objekty dokáží dobře, tj.
tak, aby se na správnosti shodl programátor i uživatel, zachytit strukturu
objektů. Při zachytávání jejich funkcionality však již často tak úspěšné
nejsou. Jeden z přístupů, které se snaží zachytit uživatelovy kognitivní
modely jed-notlivých účastníků a interakcí mezi nimi, je architektura DCI,
jejíž název vznikl jako zkratka z termínů Data – Context – Interaction.
Příspěvek si klade za cíl seznámit s hlavními myšlenkami této architektury.
Historie mimoškolní výuky programování u nás
Tvorba Softwaru 2009 —
Ostrava —
PDF verze ke stažení.
Abstract:
Příspěvek se ohlíží za téměř 30 lety výuky programování mimo univerzitní
půdu. Popisuje za-čátky na počátku 80. let, boj za výuku strukturovaného
programování v jejich průběhu a na-konec současný boj za změnu metodiky a
přechod k výuce programování objektově oriento-vaného.
Objektově orientované programování? Co to je?
Počítač ve škole 2009 —
Nové město na Moravě —
PDF verze ke stažení.
Abstract:
Příspěvek nejprve stručně probere historii OOP a uká-že, jak se postupně v
programátorském světě prosazovalo. Poté vysvětlí základní principy moderního
objektově orientovaného programování, a v závěru předvede aplikaci těchto
principů při návrhu programu.
Automatizace vyhodnocování studentských úloh
Informatika XXII 2009 —
Luhačovice —
PDF verze ke stažení.
Abstract:
Vyhodnocování studentských úloh je činnost nepříjemná a nudná. Její větší
automatizaci brání mimo jiné i používané metodiky výuky programování. Pokud
se proto na školách automatizuje vyhodnocení úloh, omezují se tyto snahy
většinou na ověření správnosti výsledku. Vyhodnocení správnosti struktury
programu a činnosti jeho jednotlivých částí se automatizuje jen výjimečně.
Příspěvek připomíná, že aplikace metodiky Design Patterns First
automatizaci vyhodnocování výrazně usnadňuje. Včasné zařazení výkladu
konstrukce interface umožňuje definovat zadání úlohy takovým způsobem,
abychom pak mohli velice snadno vyhodnotit funkčnost jednotlivých částí
programu. Příspěvek dále připomíná některé základní skutečnosti ovlivňující
přístup studentů k vypracovávání zadaných úloh. Ukazuje některé přístupy,
které zvyšují ochotu studentů vytvářet domácí úkoly, zlepšují kvalitu
odevzdaných prací a usnadňují automatizaci vyhodnocování odevzdaných řešení.
V další části se pak zabývá řešením problému plagiátorství kupování
vyhotovení prací. V závěru pak seznamuje s knihovnou, která výrazně
usnadňuje tvorbu programů, jež automaticky vyhodnotí odevzdaná studentská
řešení. Přednesené postupy výrazně zvýšily kvalitu výukového procesu.
Automatizace vyhodnocení úloh šetří neproduktivně strávený čas učitele a
současně motivuje studenty. Programy, které studenti odevzdávají, obsahují
méně chyb a případy, kdy student není schopen dále vylepšit odevzdaný
program se již vyskytují spíš výjimečně.
Mýty ve výuce programování a metodika Design Patterns First
Objekty 2008 —
Praha —
PDF verze ke stažení.
Abstract:
Příspěvek shrnuje dosavadní stav metodiky Design Patterns First.
Nejprve připomíná (a současně vyvrací) některé oblíbené mýty rozhlašované
pedagogy, kteří jimi zdůvodňují svoji neochotu učit objektově orientované
programování. Poté představuje metodiku. Seznamuje s myšlenkami, na jejichž
základě vznikla a popisuje postup výuky a výhody jejího používání. Ukazuje,
jaké spektrum příkladů umožňuje včasné zavedení metodiky použít a jak včasné
zavedení roz-hraní umožňuje zefektivnit vyhodnocování studentských úloh.
Moderní programovací techniky
Tvorba Softwaru 2008 —
Ostrava —
PDF verze ke stažení.
Abstract:
Umění programovat zahrnuje celou řadu znalostí a dovedností. Vedle všeobecně
uznávané nutné znalosti syntaxe použitého programovacího jazyka musí
programátor zvládnout ještě celou řadu dalších. Spektrum těchto
nadstavbových znalostí a dovedností se však v průběhu doby mění. Příspěvek
se zamýšlí na znalostmi a dovednostmi, které vyžaduje současné mo-derní
programování. Probírá požadovanou úroveň znalostí návrhových vzorů,
refaktorace, jednotkových testů, vývojových prostředí, systémů pro správu
verzí, optimalizačních nástrojů a dalších programů a technik.
Výuka programování pro praxi
Informatika XXI 2008 —
Luhačovice —
PDF verze ke stažení.
Abstract:
Již delší dobu softwarové firmy prohlašují, že jim současný typický
profil absolventa programátora nevyhovuje a potřebovali by absolventy s
poněkud jiným profilem, než jaký jim školy nabízejí. Příspěvek se zabývá
základními disproporcemi mezi tím, co školy nabízejí a co praxe vyžaduje.
Většina školních a soukromých úvodních kurzů programování se soustředí
především na výklad základních vlastností jazyka a nejdůležitějších knihoven
doplněný případně výkladem základů algoritmizace.
V kurzech však často chybějí pasáže, které studentům ukazují, jak je
třeba programovat, aby vytvářené programy co nejlépe odpovídaly
potřebám praxe. Příspěvek se zabývá některými z těchto aspektů a ukazuje,
na které součásti programování by se nemělo zapomínat.
Skvělý program nemusí být skvěle prodejný
Objekty 2007 —
Ostrava —
PDF verze ke stažení.
Abstrakt:
Naprostá většina školních i placených kurzů programování se soustředí na to,
jak studenty naučit vymýšlet co nejlepší algoritmus, ty pokročilejší pak učí,
jak vymyslet co nejchytřejší architekturu. Při tomto výkladu vyučující
často zapomínají na to, že většina jejich studentů se chce programováním
živit. V jejich kurzech proto chybí pasáže, které studentům ukazují, jak je
třeba programovat, aby vytvářené programy byly co nejlépe prodejné.
Příspěvek se zabývá některými z těchto aspektů, ukazuje, na které součásti
programování by se nemělo zapomínat.
Metodika design patterns first a vyhodnocování studentských úloh
Tvorba Softwaru 2007 —
Ostrava —
PDF verze ke stažení.
Abstrakt:
Jednou z poměrně neoblíbených činností při výuce programování je
vyhodnocování domácích úkolů a samostatně řešených úloh. Jedná se totiž o
činnost časově náročnou a přitom většinou nepříliš zajímavou. Příspěvek
ukazuje, jak je možno při výuce podle metodiky Design Patterns First
vyhodnocování odevzdaných úloh do značné míry automatizovat. Nejprve shrnuje
základní charakteristiku metodiky Design Patterns First a ukazuje,
proč použití této metodiky zadávání a zejména pak vyhodnocování studentských
úloh usnadňuje. Současně seznamuje s „mikroknihovnou“, kterou autor pro
automatizované vyhodnocování odevzdaných programů používá. V další části pak
na příkladu tří úloh ze vstupního kurzu programování v jazyku Java ukazuje,
jak je možno vyhodnocování úloh výrazně zefektivnit.
Metodika výuky programování na rozcestí
PoŠkole 2007 —
Lázně Sedmihorky —
PDF verze ke stažení.
Abstrakt:
Příspěvek se zaměřuje na rozdíly mezi tím, jaké programování se učí a tím,
jak se v současné praxi doopravdy programuje. V první části shrnuje
nejdůležitější změny, jimiž programování prošlo za posledních 30 let.
V druhé části probírá některé rozdíly mezi současným programováním
a programováním v 80. letech minulého století. Třetí část pak ukazuje,
že tyto změny se v řadě škol prakticky nijak nepromítly do stylu výuky.
Tyto školy stále učí své studenty styl programování používaný v 80. letech.
V poslední části jsou navrhovány nejdůležitější změny, kterými by měla
projít používaná metodika výuky, a seznamuje s metodikou Design
patterns fist, která se snaží všechny požadavky moderního programování
respektovat.
Aplikace metodiky Design Patterns Fist
Objekty 2006 —
Praha —
PDF verze ke stažení.
Abstrakt:
Efektivita výuky programování je závislá nejenom na zvolené metodice, jež má
optimalizovat předávání informací a získávání dovedností, které bude student
potřebovat v praxi, ale i na kvalitě příkladů, na nichž jsou studentům
vysvětlované konstrukce a postupy demonstrovány, a na výběru úloh, jež mají
studenti samostatně řešit. Příspěvek shrnuje důvody, které vedly k zavedení
metodiky Design Patterns First a následně se zabývá zásadami, na něž je třeba
pamatovat při návrhu doprovodných příkladu a samostatně řešených úloh.
Předvádí několik úloh, které autor při aplikaci této metodiky používá, a
předkládá další náměty na příklady.
Výuka programování podle metodiky Design Patterns First
Tvorba Sotfwaru 2006 —
Ostrava —
PDF verze ke stažení.
Abstrakt:
V současné době převládá ve světě ve výuce programování na vysokých školách
metodika Objects First. Řada autorů však poukazuje na to,
že při tomto přístupu se řada vyučujících příliš dlouho soustřeďuje
na návrh jednoduchých aplikací, v nichž navíc neuplatňují
řadu klíčových principů moderního programování,
mezi nimi především návrhové vzory. Příspěvek seznamuje s upravenou verzí
metodiky Objects First nazvanou Design Patterns First.
Ukazuje, že při vhodně zvolených příkladech je možné seznamovat žáky
s návrhovými vzory a řadou dalších principů moderního programování
od samého počátku výuky.
Vývoj distribuovaných aplikací v systému Plaant
Tvorba Sotfwaru 2006 —
Ostrava —
PDF verze ke stažení.
Abstract:
Systém Plaant je nástrojem pro vývoj a následnou údržbu distribuovaných
databázových aplikací. Nástrojem, který umožňuje, aby vývojář definovat
pouze strukturu aplikace, a Plaant následně sám naprogramuje její kostru.
Na vývojáře již zbývá pouze doplnit kód řešící některé specifické detaily
konkrétní aplikace. Článek seznamuje s hlavními rysa nástroje Plaant Tools,
který slouží k definici struktury podpůrné databáze a návrhu požadovaného
uživatelského rozhraní.
Let’s Modify the Objects-First Approach into Design-Patterns-First
(Přejděme od přístupu Nejdříve objekty k přístupu
Nejdříve Návrhové vzory)
ITiCSE 2006 —
Bologna —
PDF verze ke stažení.
Abstract:
Design patterns have made a strong impact on how object-oriented software is
designed, implemented, and communicated in industrial projects. Teaching
patterns is therefore of great importance. To become them rooted, it is
imperative to teach them from the very beginning of the course. This paper
suggests modifying present Objects First approach into the Design Patterns
First one and shows how to do it. It presents the brief content of the first
five lessons of the course in which this approach is applied, together with
some examples which demonstrate the usage of design patterns and which are on
the other hand sufficiently simple for the first lesson of introductory course.
Překlad:
Používání návrhových vzorů výrazně ovlivnilo současné objektově orientované
programování. Jejich výuka má proto velký význam. Chceme-li, aby jejich
používání u našich studentů zakořenilo, musíme je učit od samého počátku
výuky. Článek navrhuje nahradit stávající metodiku označovanou "Object
First" metodikou, kterou bychom mohli označit termínem "
Design Patterns First". Příspěvek převádí prvních pět lekcí kurzu,
v němž je tato metodika aplikována, spolu s příklady, které jsou dostatečně
jednoduché, aby mohly být použity v úvodních lekcích kurzů programování.
Současné trendy v metodice výuky programování
Počítač ve škole 2006 —
Nové město na Moravě —
PDF verze ke stažení.
Abstract:
Příspěvek se zabývá současnými trendy v metodice výuky programování.
Nejprve seznamuje se základními šesti směry přístupu k této výukce a
stručně vysvětluje základní rozdíly mezi klasickým strukturovaným programováním
a v současné době převažujícím programováním objektově orientovaným.
V následující části vyvrací oblíbené námitky proti OOP a shrnuje základní
zkušenosti s výukou objektově orientovaného programování různých typů studentů.
V závěrečné části pak stručně seznamuje s možnými tématy prvních hodin výuky
při používání metodiky Design Patterns First (nejdříve návrhové vzory).
Systém pro vývoj distribuovaných aplikací Plaant
Objekty 2005 —
Ostrava —
PDF verze ke stažení.
Abstract:
Při vývoji distribuovaných podnikových aplikací na zakázku se setkáváme s
poměrně typickou sadou požadavků, které se neustále opakují. Systém Plaant
byl vyvinut jako nástroj pro vývoj a následnou údržbu distribuovaných
databázových aplikací. Nástroj, který výrazně snižuje jejich pořizovací i
provozní náklady. Současně snižuje požadavky na kvalifikaci a zkušenosti
vývojářů, kteří v něm tyto aplikace vyvíjejí. Celý systém je postaven na
platformě J2EE a nabízí řadu jedinečných sofistikovaných vlastností a
funkcí. Vedle možnosti snadné definice základních formulářů, které systém
automaticky upraví pro různé druhy klientů (tlustý klient, webové rozhraní,
mobilní telefon, …), nabízí i propracované možnosti řízení koloběhu
dokumentů (workflow) a tvorby komplexních sestav určených pro různé cíle
(tiskárna, komfortní grafic-ký výstup, webová služba, …).
Začlenění návrhových vzorů do výuky programování
Objekty 2005 —
Ostrava —
PDF verze ke stažení.
Abstract:
Příspěvek nejprve stručně seznamuje se šesti hlavními současnými přístupy k
výuce základů programování. Poté se soustředí na přístup, při němž celá výuka
začíná prací s objekty a důslednou aplikací zásad objektově orientovaného
programování. Kritizuje polovičatost doposud publikovaných učebních textů a
naznačuje, jak je možno deklarované zásady aplikovat důsledněji. V druhé,
klíčové části příspěvku ukazuje na konkrétních příkladech, jak lze postupovat
při výuce, při které se od počátku učí doopravdy objektově orientované
programování a předvádí, jak je možno prakticky od prvních hodin začlenit do
výuky programování seznámení s návrhovými vzory a možnostmi jejich použití. V
třetí části srovnává dva přístupy k zadání zkušebního příkladu: klasický a
skutečně objektově orientovaný. Ukazuje, že opravdu objektový přístup je
výhodnější jak pro studenty, tak pro vyučujícího. V poslední, čtvrté části pak
zmiňuje návrhové vzory, které by si také zasloužily zařazení do vstupních
kurzů, avšak v předchozím textu na ně nedošlo.
Jak efektivně učit OOP
Tvorba Softwaru 2005 —
Ostrava —
PDF verze ke stažení.
Abstract:
Objektově orientované programování vyžaduje diametrálně odlišný přístup
k analýze a syntéze programu, než před ním převažující programování
strukturované. Většina učebních textů a kurzů programování však tuto
skutečnost nebere v úvahu a je nadále koncipována především jako kurzy, ve
kterých se jejich čtenáři, resp. frekventanti učí především syntaxi použitého
jazyka. Opravdu objektový přístup k vývoji programu se proto studenti učí až
v nadstavbových kurzech, kdy ale již mají zažitu řadu zlozvyků, které se musejí
postupně odnaučovat. Příspěvek shrnuje zkušenosti s výukou snažící se vštípit
žákům co nejdříve zásady OOP a ukazuje, jak je třeba změnit přístup k výuce,
aby absolventi kurzů byli schopni programovat doopravdy objektově. Postupně
popisuje praktickou aplikaci jednotlivých zásad, které je vhodné při výuce
programování dodržet, a shrnuje zkušenosti s takto pojatou výukou.
Jak při výuce Javy opravdu začít s objekty
Objekty 2004 —
Praha —
PDF verze ke stažení.
Abstract:
Příspěvek seznamuje s metodikou výuky programování, při které studenti pracují
s objekty od samého počátku kurzu a ne až po předehře zabývající se klasickými
strukturovanými konstrukcemi. Ty se podle této metodiky probírají až
v závěrečných etapách výuky. Příspěvek vysvětluje nevýhody dosavadního
standardního přístupu a ukazuje, jak jej lze s využitím současných vývojových
nástrojů změnit. Předvádí, jak je třeba volit příklady, a uvádí i zkušenosti
z dvouletého používání předvedené metodiky v kurzech profesionálních
programátorů i kroužcích dětí základních a středních škol.
BlueJ – vývojové prostředí pro výuku jazyka Java
Objekty 2004 —
Praha —
PDF verze ke stažení.
Abstract:
Příspěvek seznamuje s vývojovým prostředím BlueJ, které bylo vyvinuto
speciálně pro počáteční fáze výuky objektově orientovaného programování
v jazyku Java. BlueJ studentům umožňuje navrhovat diagram tříd vyvíjené
aplikace v zjednodušené verzi jazyka UML. Z tohoto diagramu pak automaticky
vytváří kostry tříd a naopak všechny změny v těchto třídách následně
promí-tá do diagramu. Hlavní výhodou prostředí BlueJ je však jeho
interaktivnost. BlueJ umožňuje uživateli přímo posílat zprávy jednotlivým
třídám a jejich in-stancím. Kromě toho přidává i řadu dalších funkcí
využitelných zejména při výuce základů objektově orientovaného programování
- např. interaktivní ge-nerování testů. Článek seznamuje se základními
vlastnostmi tohoto vývojového prostředí a ukazuje, jaké výhody může přinést
jeho nasazení ve výuce.
Novinky, s nimiž přichází Java 5.0
Objekty 2004 —
Praha —
PDF verze ke stažení.
Abstract:
Poslední verze jazyka Java přinesla nejpřevratnější změny v jeho historii.
Tentokrát se nejenom rozšířila standardní knihovna, ale změny se výrazně
dotkly i syntaxe jazyka, která doznala několika zásadních rozšíření.
Příspěvek probírá syntaktické novinky, s nimiž přichází Java v edici J2SE
5.0. Jsou v něm postupně rozebrány statický import, automatické převádění
primitivních hodnot na instance obalových typů a zpět, objektové výčtové
typy, generické, resp. parametrizované datové typy, rozšíření příkazu for,
zavedení metod s proměnným počtem parametrů a metadata.
Proč a jak učit OOP žáky základních a středních škol
Žilinská didaktická konferencia 2004 —
Žilina —
PDF verze ke stažení.
Abstract:
Příspěvek se komplexně zabývá výukou programování na základních a středních
školách a vysvětluje, proč je třeba přejít od klasických paradigmat k
objektově orientovanému programování a jak to učinit. Je rozdělen do tří
částí. První část zdůvodňuje nutnost výuky OOP již na základních a středních
školách a nevhodnost počáteční výuky programování podle klasických
paradigmat, která v žácích zbytečně vychovává návyky, kterých se pak musejí
zbavovat. Druhá část vysvětluje jak vybrat optimální programovací jazyk a
vývojové prostředí. Třetí, nejrozsáhlejší část je věnována podrobnému popisu
metodiky výuky. Názorně ukazuje, jak při výuce začít výkladem objektů a tříd,
pokračovat zapouzdřením, polymorfismem a dědičností a skončit výkladem
klasických programových konstrukcí.
Výuka objektově orientovaného programování žáků základních a středních škol
Objekty 2003 —
Ostrava —
PDF verze ke stažení.
Abstract:
Příspěvek se zabývá hlavními zásadami správné výuky programování a předvádí
možnosti jejich implementace při výuce OOP ve školách a zájmových zařízeních
navštěvovaných žáky základních a středních škol. Demonstruje, jak lze
přirozeně začít výklad přímo prací s třídami a objekty a od ní pak postupně
a plynule přejít k dalším konstrukcím. Ukazuje na důležitost správné volby
použitého vývojového prostředí a předvádí, jak lze vytčených cílů dosáhnout
při výuce jazyka Java využitím vývojového prostředí BlueJ.