Odpoved je jednoduchá: Libovolnou obecnou distribuci. Pro programátory jsou vhodné vsechny bezne pouzívané distribuce. Distribucí linuxu existuje velké mnozství. Kazdá se snazí zístat uzivatele necím jiným. Nekteré nabízí uzivatelsky prívetivý systém pro správu systému, jiné spolehlivost potrebnou pro provozování sítových serveru a nekteré jsou treba specializované na práci s multimédii. Distribuce specializované pro nejakou konkrétní úlohu, jako jsou treba multimédia nebo herní konzole se vsak pro bezné programování prílis nehodí.
Pokud s Linuxem teprve zacínáte, doporucuji nejprve vyzkouset tzv. live-distribuce. To jsou distribuce Linuxu, které se vejdou na jedno bootovatelné CD nebo DVD, nic neinstalují a vsechny programy bezí prímo z média. Start programu je samozrejme pomalejsí (zálezí na rychlosti CD/DVD mechaniky), ale na prohlédnutí a vyzkousení to stací. Vetsina rozsírených distribucí takové médium nabízí. Zejména je dobré si takto pred vlastní instalací overit, zda vás pocítac neobsahuje nejaký exotický hardware, pro nejz nejsou dostupné Linuxové ovladace.
Ackoli na Linuxu existuje nespocet pokusu o vývojová prostredí, která jsou více ci méne propracovaná, zádné z nich se nikdy nijak masove neuchytilo. Duvodem muze být unixová filozofie - v jednoduchosti je síla, nebo také - delat veci jednoduché, ale maximálne kvalitní. Linux obsahuje mnozství jednoduchých a mocných nástroju, jejichz kombinováním je mozné dosáhnout takové efektivity práce, jakou zádné slozité prostredí poskytnout nemuze. Dalo by se ríct, ze v Linuxu programátor zádné rozsáhlé vývojové prostredí nepotrebuje (ne, ze by zde taková neexistovala). Vsechny potrebné nástroje jsou (po instalaci potrebných balícku) integrovány prímo do prostrední operacního systému.
Pokud chcete pracovat v prostredí Linuxu, vystacíte s textovým editorem podle vlastního vkusu, textovou konzolí (také podle vlastního vkusu) ze které budete spoustet prekladac a s debuggerem (podle vlastního vkusu, jak jinak). Pro inspiraci nabízím návod pro psaní projektu v Linuxu, který obsahuje ukázky práce s nekolika vybranými programy, se kterými byste mohli zacít.
Dobrý editor je pro programátora tím nejdulezitejsím nástrojem. Mel by umet zvýraznovat syntaxi a hlavne spoustet dalsí nástroje. Je dobré, pokud je mozné jeho chování rozsírit pomocí vlastních skriptu.
Kate - Jeden z nejlepsích editoru pro prostredí KDE (viz ukázky). Dobre se ovládá, je konfigurovatelný a je mozné jej rozsírit pomocí pluginu. Samozrejmostí je podpora zvýraznování syntaxe, práce s více soubory i kontrola pravopisu. Obsahuje zabudovaný terminál, takze se v nem dobre spoustejí dalsí unixové nástroje. Je to docela dobrý kompromis mezi sílou Linuxu a okenním ovládáním. Je to vhodný editor pro zacátecníky i pokrocilé, pomerne bezbolestný, pokud jste zvyklí na editory z prostredí Windows. Je rozsiritelný pomocí prídavných modulu, vyuzívá propracované nástroje KDE pro vyhledávání a textové náhrady, který umoznuje pouzití regulárních výrazu, zvládá sablony dokumentu i doplnování kódu, dokonce umoznuje prepínat mezi bezným editacním módem a módem Vimu.
Editor Kate má pro zacátecníky jednoduché intuitivní ovládání vycházející z prostredí KDE. S tím jak budete postupne pronikat do mozností Linuxu a KDE, budete stále více ocenovat symbiotickou provázanost editoru s prostredím KDE.
Gedit - je výchozím textovým editorem v prostredí GNOME. Zastává zde podobnou úlohu jako Kate v KDE a má podobné schopnosti.
Vim, GVim - jeho historie, respektive historie jeho predka Vi, sahá az nekde do roku 1976. Presto má dodnes velmi mnoho príznivcu. Pro zacátecníky je mozná zpocátku trochu nestravitelný, ale kdo se jej rozhodne pouzívat, casem ocení jeho sílu (na ukázkách to bohuzel není prílis videt, protoze teziste jeho predností lezí v konfiguracním souboru a v ovládání). Cistý Vim funguje prímo v terminálu, jeho verze GVim funguje v grafickém prostredí. Je urcen pro ovládání vsemi deseti prsty, pri psaní není potreba sundat ruce z klávesnice. Ovládání tohoto programu je na první pohled slozité, ale má hlubokou vnitrní strukturu. Je velmi konfigurovatelný a rozsiritelný. Na domovské stránce jsou odkazy na mnozství hotových utilit. Pro naucení základního ovládání si rezervujte tak jeden den. Rozhodne to nebude ztracený cas.
Vim je dalsím ukázkovým príkladem symbiózy editoru a okolního prostredí -- v tomto prípade príkazového unixového terminálu.
Návod k ovládání Vimu od Pavla Satrapy.
Jak si prizpusobit Vim - clánek na Root.cz (+ odkazy na dalsí clánky)
Editor Vim prakticky - clánek na AbcLinuxu
vimrc.tar.gz - zde nabízím svoje konfiguracní soubory (obsahují sablony souboru a sablony kódu)
Nedit - Dobre konfigurovatelný editor (lépe nez kate - viz ukázky). Je velmi rychlý a nenárocný na zdroje. Obsahuje vlastní jazyk pro psaní maker, coz mu dává velkou sílu. Umoznuje také spoustet jiné programy (napr. make). Psaní v nem je velice intuitivní (v podstate jako v editorech, na které jste zvyklí z Windows). Na jeho domovské stránce najdete nepreberné mnozství hotových maker.
Emacs - Je zhruba stejne rozsírený jako Vim. Je velmi mocný, ale na muj vkus prílis slozitý (takový OS sám pro sebe). Ovsem uznávám, ze pokud nekdo prekoná pocátecní odpor, získá pravdepodobne nejmocnejsí unixový nástroj vubec.
Kvalitní debugger je pro programátora velice dulezitým nástrojem. Nemeli byste se na nej ovsem vzdy spoléhat. Existují programátorské problémy, které sebelepsím debuggerem neodhalíte. Lepsí je programovat s rozmyslem.
Papír a tuzka, nebo tabule a fix - Nestydte se je pouzívat! Zvláste kdyz pracujete se slozitejsími datovými strukturami a s ukazateli, jsou papír a tuzka temi nejlepsími pomuckami. (To platí pro vsechny programovací jazyky bez výjimky.)
DDD - Data Display Debugger - Asi nejlepsí debugger v Linuxu (viz ukázky a návod). Je to vlastne grafická nadstavba nad GDB (a jiné debuggery). Krome bezných funkcí, jako je krokování, zastavení na zarázce, sledování hodnot promenných aj., dokáze názorne graficky zobrazit datové struktury a provádet nad kódem statistické analýzy. Ostatní debuggery, které znám, mu nesahají ani po kotníky.
GDB - The GNU Project Debugger - Na Linuxu naprostá klasika, základ. Jde o debugger ovládaný z príkazové rádky, takze není nejvhodnejsí pro zacátecníky. O jeho síle svedcí to, ze vetsina grafických debuggeru je postavena jako nadstavba nad tímto programem.
Na Linuxu existuje bezpocet nástroju, které ulehcují programátorovi zivot. Není v mých silách je zde vsechny vyjmenovat. Následující nástroje jsou podle mého názoru v pocátcích nejuzitecnejsí:
GNU Indent - Tento program slouzí pro prehledné formátování zdrojového kódu. Funguje jednoduse z príkazového rádku - zdrojový soubor se mu predává jako parametr príkazového rádku a program jej vypíse na výstup zformátovaný podle zásad nastavených v konfiguracním souboru. Velmi uzitecné!
.indent.pro - Zde nabízím svuj konfiguracní soubor. Zkopírujte si jej do svého domovského adresáre.
Doxygen - Program pro generování programátorské dokumentace z komentáru ve vasich zdrojových souborech. Funguje podobne jako program Javadoc v Jave (dokonce je s ním kompatibilní). Umí vygenerovat dokumentaci ve formátech HTML, LaTeX, RTF, PS, PDF, ale také jako manuálové stránky. Pokud to myslíte vázne s vytvárením vetsích projektu, meli byste se s tímto programem seznámit. Pokud se chcete podívat, jak vypadá projekt pouzívající doxygen, podívejte se na projekt C-Quest.
man, info - Programy pro ctení manuálových a info stránek. Základní zdroj dulezitých informací v systému Linux.
CVS - Concurrent Version System - Systém pro správu verzí. Bez podobného systému se neobejde správa zádného vetsího projektu. Je uzitecné jej pouzívat i na mensí projekty - uchovává totiz vsechny zmeny v souboru a umoznuje se vrátit zpet. Kdyz zjistíte, ze vinou posledních úprav vás projekt prestal fungovat, není problém se vrátit k funkcní verzi, kterou jste vytvorili pred týdnem.
Správa projektu pomocí CVS - návod k CVS od M. Ponkráce.
CVS pro kazdého - seriál na Root.cz
Cervisia - pokud pouzíváte KDE, zkuste tento program. Umoznuje ovládat CVS pomocí grafického rozhraní, takze si nemusíte pamatovat presnou syntaxi príkazu (ale musíte chápat principy systému CVS).
FSF/UNESCO Free Software Directory - kolekce programu z projektu GNU, urcená pro vývoj softwaru.
Jak bylo receno výse, na Linuxu existuje mnozství vývojových prostredí, ale nijak masove se nepouzívají. Uplatnení nacházejí vetsinou pri tvorbe okenních aplikací pro nekteré z okenních prostredí (KDE, Gnome, ...). Dejte na mou radu a nepouzívejte je, dokud nebudete umet dobre programovat! Programování v takových prostredích muze nezkuseného "zavést na scestí" a vytvorit nezádoucí programátorské zlozvyky.
Code::Blocks je rozumne jednoduché IDE pro vývoj v jazycích C a C++. Lze jej rozsírit pomocí pluginu (a rozumí i pluginum z Dev-C++). Jeho výhodou je, ze je multiplatformní a funguje a vypadá prakticky stejne v Linuxu i ve Windows. Obsahuje plnohodnotný debugger, zvýraznování syntaxe, sablony pro generování elementárních kousku kódu a mnoho dalsího. Pro toto prostredí nabízím strucný návod k pouzívání. Presto radím, abyste se nejprve naucili ovládat prekladac z príkazové rádky.
Prostredí ponechává programátorovi velkou volnost pri nastavení prekladace - budto si muzete sami napsat svuj Makefile nebo muzete nechat vse na samotném prostredí. V obou prípadech ovsem musíte mít urcité základní znalosti o programu make a o nastavování prekladace.
Eclipse je prostredí napsané v Jave a je primárne urceno pro vývoj v Jave. Je velmi dobre rozsiritelné, takze byl vytvoren plugin CDT, tedy C, C++ Development Tools. V soucasné dobe je to pro vývoj programu v jazyce C pomerne dobre pouzitelné. Nevýhodou tohoto prostredí mohou být nároky na pamet pocítace, které jsou srovnatelné s Delphi. Na vetsine dnesních pocítacu (od 256MB RAM) ovsem bezí zcela bez problému.
Nejvetsí výhodou Eclipse je to, ze je díky Jave multiplatformní - tedy funguje stejne dobre na Linuxu i ve Windows. Stejné je to i s pluginem CDT. Mezi dalsí prednosti patrí skvelý debugger a podpora CVS. Pokud programujete zároven v Jave a v C nebo C++, urcite toto prostredí oceníte.
Prostredí ponechává programátorovi velkou volnost pri nastavení prekladace - budto si muzete sami napsat svuj Makefile nebo si jej muzete nechat poloautomaticky vygenerovat. V obou prípadech ovsem musíte mít urcité základní znalosti o programu make a o nastavování prekladace.
KDevelop - Vývojové prostredí pro KDE. Umí toho hodne, ale je potreba programování dobre rozumet, jinak vám bude delat problémy pouhé ovládání.
Anjuta - Totéz co KDevelop, ale pro prostredí Gnome.
Autor: David Martinek. Poslední modifikace: 30. September 2012. Pokud znáte nejaký volne siritelný software, o kterém si myslíte, ze sem patrí nebo pokud v tomto dokumentu narazíte na chybu, dejte mi prosím vedet.
Od 15. cervence 2004 sem bylo kliknuto uz krát.