Jak začít s vývojem pro Windows bez koruny v kapse

Před lety jsem se rozhodl zůstat na volné noze a začít s vývojem aplikací pro Windows na zakázku. Možností bylo mnohem méně, než dnes, přesto jsem našel dost kvalitních nástrojů pro vývoj, abych se mohl stát programátorem bez koruny v kapse. Zde je jejich přehled.

Svému poslednímu zaměstnavateli jsem dal sbohem někdy v polovině roku 2004. Měl jsem zkušenosti s programováním v Delphi, chtěl jsem začít s C++ a především jsem potřeboval nějaké vývojové prostředí pro tvorbu aplikací pro Windows. Delphi i Visual Studio byly v té době placené produkty, na které jsem ani v nejmenším finančně nedosáhl, hledal jsem tedy pokud možno bezplatnou alternativu.

Vývoj pro Linux nebo pro web je z tohoto pohledu jednodušší v tom, že v něm byly odedávna dostupné poměrně kvalitní nástroje pro vývoj. Ve Windows samozřejmě bylo a je také dostatek kvalitních nástrojů pro vývoj desktopových aplikací, jen mi přijdou méně známé. Pokusím se zde, snad trochu souvisle, popsat, které vývojové nástroje jsem za uplynulých šest let objevil a považuji za dobré o nich vědět.

Jak jsem potkal Python

Když jsem před šesti lety začínal se „sólovou kariérou", nějak se mi do cesty připletla kniha o programování v Pythonu. Uchvátilo mě tehdy, že k různým skriptům je možné doplnit i grafické uživatelské prostředí fungující jak ve Windows, tak v Linuxu, že je programování v Pythonu poměrně jednoduché a že dokonce v něm lze automatizovat úpravu dokumentů z Wordu.

Chvíli jsem si tedy hrál se základními skripty, na které vám stačí jednoduchý editor nebo prostředí přímo v Pythonu, později jsem vyzkoušel The Eric Python IDE, více času jsem však strávil se Stani's Python Editorem a nervy s tehdy hodně nedodělaným a nestabilním Boa Constructorem. Musím říci, že nejvíce se mi asi líbil Stani's Python Editor.

Eric Python IDE pro vývoj v Pythonu

Eric Python IDE pro vývoj v Pythonu

Co se týče tvorby GUI v Pythonu, používal jsem na to tehdy sadu XML souborů, pro které existoval nějaký vizuální návrhář. Bylo to strašně neproduktivní a nakonec mě to od Pythonu odradilo skoro úplně. Bohužel si nevzpomínám na přesný název, pokud to někomu něco připomíná, sem s ním.

Ke konci mého laborování s Pythonem jsem narazil na wxPython, se kterým již byla tvorba uživatelského prostředí aplikací poněkud jednodušší, a hlavně výsledné aplikace přejímaly vzhled ovládacích prvků Windows.

Krátká vsuvka - Pascal a Lazarus, GUI v PHP

Po nějakou dobu jsem také zvažoval, jak ještě využít svých zkušeností s Pascalem a s Delphi. Myslím, že open source vývojové prostředí Lazarus určené pro FreePascal je docela známé. Programuje se v něm velmi podobně, jako v Delphi, nechybí vizuální návrhář vzhledu aplikace a spousta věcí v něm jde jednoduše naklikat.  Lazarus se stále vyvíjí a pokud je Pascal váš oblíbený jazyk, doporučuji na Lazarus alespoň kouknout.

Vývojové prostředí pro FreePascal, projekt Lazarus ve Windows 7

Vývojové prostředí pro FreePascal, projekt Lazarus ve Windows 7

Výhodou aplikací vytvořených pomocí nástroje Lazarus je skutečnost, že bez problémů fungují jak ve Windows, tak v Linuxu. Navíc nepotřebují žádné podpůrné knihovny pro svůj běh.

Dovolím si ještě malé zpestření, kterému jsem se ve své praxi věnoval jen velmi okrajově, ale vypadá docela zajímavě. Projekt PHP-GTK si nevypadá, že by byl v současné době ještě vyvíjen, ale svého času zaujal tím, že umožnil tvorbu desktopových aplikací nejen pro Windows pomocí PHP.

C++ přichází

Vraťme se k Pythonu a mým pokusům s wxPythonem. Jedná se o pythonovské rozhraní k C++ knihovnám wxWidgets. Jelikož jsem se k C++ přál dostat už v dobách mé práce s Delphi, bylo celkem logické, že jsem od wxPythonu přešel přímo k wxWidgets. Netroufám si odhadnout, kolik z vás už někdy tento název slyšelo, každopádně jde o docela povedenou sadu knihoven v C++, na kterých je postaven třeba open source zvukový editor Audacity nebo svého času i antivir AVG (jak je na tom nyní, nevím).

Já osobně jsem jako úplný C++ začátečník pochopil práci s wxWidgets poměrně rychle. Nastudoval jsem nějaké základy C++ z knih a pak se hned pustil do tvorby jednoduchých aplikací s uživatelským prostředím postaveným právě pomocí komponent wxWidgets (tehdy ještě známých pod názvem wxWindows).

Samozřejmě, wxWidgets jsou pouze knihovny, k jejich použití a vytvoření nějaké aplikace potřebujete překladač a kompilátor. První, po kterém jsem sáhl, byl Dev-C++ nabízející pro mě v tu dobu docela komfortní prostředí s editorem, kompilátorem a debuggerem. Bohužel se zdá, že tento projekt je již mrtvý.

Grafické IDE pro vývoj s wxWidgets a C++

Knihovny wxWidgets šly poměrně snadno zakomponovat do Dev-C++ pomocí balíčkovacího systému, pokud si dobře pamatuji. Chybělo mi jediné - prostředí, ve kterém bych si naklikal vzhled aplikace, vizuální návrhář totiž v Dev-C++ chyběl. Protože jsem po nějaké době už vydělal pár drobných, investoval jsem do nákupu programu wxDesigner. Je to prostředek od tvůrců wxWidgets, ve kterém si nadefinujete vzhled aplikace. Ve vývojovém prostředí už mu pak doplníte funkcionalitu.

Návrhář prostředí aplikací, wxDesigner

Návrhář prostředí aplikací, wxDesigner

Použití dvou různých nástrojů (wxDesigner a Dev-C++) bylo poněkud komplikované a proto jsem časem uvítal, že se objevila vylepšená podoba Dev-C++, která obsahovala grafického vývojáře vzhledu aplikací již přímo v sobě. Novinka byla opět zcela zdarma a poskytovala mi z tehdejšího pohledu stejný komfort pro vývoj aplikací, jako třeba Delphi. Na formulář jsem natahal komponenty, doplnil kód, zkompiloval a hotový program jsem mohl pustit ven.

Tento vylepšený návrhář je stále vyvíjen, poslední download verze wxDev-C++ 7 .3.1 byl uvolněn letos v únoru. Tento nástroj vřele doporučuji každému, kdo chce programovat Win32 aplikace pro Windows v bezplatném nástroji pro C++.

wxDev-C++ je výborný nástroj pro tvorbu Win32 aplikací v C++

wxDev-C++ je výborný nástroj pro tvorbu Win32 aplikací v C++

Microsoft a jeho bezplatné Visual Studio Express

Nevím už přesně, který rok se tak stalo, ale Microsoft uvolnil plně funkční bezplatnou verzi svého skvělého Visual Studia pod označením Express. Souviselo to s podporou jeho platformy .NET Framework a nástroje Visual Studio Express byly rozděleny podle jazyka, který jste si vybrali. Čili dodnes tu máme Visual Basic Express, Visual C# Express. Visual C++ Express a řadu dalších. Chcete-li vytvářet aplikace pro .NET Framework, asi nenajdete lepší nástroje. Poskytují plný komfort Visual Studia pro práci samostatného vývojáře, jsou použitelné pro komerční vývoj, rozhraní aplikace si snadno naklikáte...

Vývojové prostředí Visual Studio Express

Vývojové prostředí Visual Studio Express

Další zajímavé nástroje

Až vytvoříte nějakou aplikaci a budete ji chtít distribuovat, začnete hledat nějaký nástroj na vytváření instalačních programů. V prostředí Visual Studia Express lze sáhnout po zabudovaných nástrojích pro instalaci .Net Framework aplikací, v případě programů vytvořených v Pythonu, v IDE Lazarus nebo pomocí wxDev-C++ se vám hodí bezplatný a široce používaný nástroj pro tvorbu instalátorů, Inno Setup. Pomocí textového souboru zakomponujete soubory, ikonky, nastavíte automatické spouštění a celé to zkompilujete do jediného souboru EXE.

Nástroj pro tvorbu instalátorů, Inno Setup

Nástroj pro tvorbu instalátorů, Inno Setup

Budete-li mít s přípravou podkladů pro Inno Setup problémy, použijte grafickou pomůcku s názvem ISTool.

Pomůcka pro tvorbu pokladů pro Inno Setup, ISTool

Pomůcka pro tvorbu pokladů pro Inno Setup, ISTool

Shrnuto a podtrženo

Můj současný pohled na bezplatné vývojové nástroje pro Windows? Stále jsem jejich příznivcem. Svou práci bezpochyby odvedou, můžete na nich „zarobit" a vytvořit celou řadu zajímavých aplikací s minimálním úsilím. Projít si prací s výše uvedenými programy, hodiny hledání překlepů v kódu C++ a podobné strasti mi dali mnohem víc, než kdybych hned začal v plně vybaveném komfortním prostředí psát aplikace ve Visual Basicu (nic proti němu). Dnešní začínající vývojáři pro Windows to mají poněkud lehčí, komfort i bezplatného Visual Studia Express je zkrátka návykový.

Máte-li pocit, že jsem vynechal nějaké zásadní a nepostradatelné prostředí pro vývoj desktopových aplikací pro Windows, napište do komentářů. Uveďte si své zkušenosti.

Buďme ve spojení, přihlaste se k newsletteru

Odesláním formuláře souhlasíte s podmínkami zpracováním osobních údajů. 
Více informací v Ochrana osobních údajů.

Autor článku: Jan Polzer

Tvůrce webů z Brna se specializací na Drupal, WordPress a Symfony. Acquia Certified Developer & Site Builder. Autor několika knih o Drupalu.
Marketing Director v Lesensky.cz. Ve volných chvílích podnikám výlety na souši i po vodě. Více se dozvíte na polzer.cz a mém LinkedIn profilu.

Komentáře k článku

návštěvník

Jeste bych zminil Code::Blocks, ma v sobe zabudovany plugin wxSmith (vizualni programovani).

návštěvník

Jinak, stále více do popředí se dostává Qt knihovna pro C++, která je zdarma, má designera na naklikání vzhledu a je multiplatformní (dokonce je i pro mobilní zařízení).

návštěvník

QtCreator není špatný. A taky Java - ta má velké množství kvalitních nástrojů.

návštěvník

ahoj sem uplny zacatecnik a chtel bych se zeptat kde ve visual studio hodim hotovy project do exe nebo tak neco??:) diky..

 

Profile picture for user Jan Polzer

Viz funkce Build|Build jméno projektu. Po jeho sestavení vznikne ve složce s projektem složka build a v ní spustitený soubor projektu.

návštěvník

ahaaaa:D dekuji moc:)

Přidat komentář

Odesláním komentáře souhlasíte s podmínkami Ochrany osobních údajů

reklama
Moje kniha o CMS Drupal

 

Kniha 333 tipů a triků pro Drupal 9


Více na KnihyPolzer.cz

Sledujte Maxiorla na Facebooku

Maxiorel na Facebooku

Poslední komentáře
Hosting pro Drupal a WordPress

Hledáte český webhosting vhodný nejenom pro redakční systém Drupal? Tak vyzkoušejte Webhosting C4 za 1200 Kč na rok s doménou v ceně, 20 GB prostoru a automatické navyšováním o 2 GB každý rok. Podrobnosti zde.

@maxiorel na Twitteru

Maxiorel na Twitteru