IT rekvalifikace s garancí práce. Seniorní programátoři vydělávají až 160 000 Kč/měsíc a rekvalifikace je prvním krokem. Zjisti, jak na to!
Hledáme nové posily do ITnetwork týmu. Podívej se na volné pozice a přidej se do nejagilnější firmy na trhu - Více informací.

Tetris v C# .NET WPF

Protože je o prázdninách dost času a člověk se nějakým způsobem snaží neustále zdokonalovat a protože shodou náhod jsem tady četl článek, že když člověk dokáže naprogramovat Tetris, tak je to nadějný programátor, tak jsem si říkal, že bych to mohl zkusit! :D

Vývoj

Když jsme si to nějak srovnal v hlavě a trošku o tom popřemýšlel, jak bych to naprogramoval, tak jsem se pustil do vývoje. Rozhodl jsem se, že aplikace bude typu WPF, protože s WPF už nějaké zkušenosti mám, ale také proto, že jsem se díky kamarádovi d4rkw34v3r naučil používat framework Caliburn.Micro. Díky moc! :) Je to velmi intuitivní a velice ulehčující framework, kterým se velice jednoduše vytváří aplikace v návrhovém vzoru MVVM. Nejdříve jsem tedy navrhnul design aplikace, a pak už jsem se pustil do aplikační logiky. Hrací pole představuje Grid, který obsahuje políčka typu Field. Pak je zde třída BaseShape, která reprezentuje jednotlivé obrazce ve hře. Protože jsem chtěl, aby to bylo přehledné a u obrazce I a O je trošku jiná rotace objektu, tak jsem každému obrazci vytvořil třídu. Já vím, možná je to zbytečné, ale pro mě to je tak přehledné. Pak je zde hlavní třída Game, která zajišťuje chod hry. Snad to funguje dobře! :) Budu rád za komentáře a případné návrhy na zlepšení!


Galerie

Hra byla vytvořena v roce 2018.

 

Stáhnout

Stažením následujícího souboru souhlasíš s licenčními podmínkami

Staženo 89x (15.59 MB)
Aplikace je včetně zdrojových kódů v jazyce C#

 

Všechny články v sekci
Zdrojákoviště C# .NET - Okenní aplikace WPF
Článek pro vás napsal Radek Němec
Avatar
Uživatelské hodnocení:
3 hlasů
Autor začínal programovat v jazyce C# a během vysoké školy se naučil další programovací jazyky. Pracoval jsem jako programátor mobilních aplikací na platformě iOS a nyní jsem se opět vrátil k C# a zajímám se o webové technologie v ASP.NET Core.
Aktivity