Výuka probíhá v počítačové učebně PUČ v Troji, studentům jsou volně přístupné instalace v trojských počítačových laboratořích (LabTF).
1. Přehled syntaxe Datové typy proměnných a jejich deklarace, základní programové konstrukce, funkce a procedury. Odlišnosti proti jiným programovacím jazykům.
2. Práce ve vývojovém prostředí IDL skripty, programové moduly a jejich ladění. Vytváření programů pro IDL Virtual Machine.
3. Práce s datovými soubory Čtení a ukládání binárních a textových souborů. Přehled podporovaných souborových datových formátů. Vědecké datové formáty (CDF, NetCDF ad.).
4. Grafický výstup 2D a 3D grafika v publikační kvalitě, práce s barvou a fonty, volba výstupního formátu.
5. Zpracování dat v IDL Interpolace dat, fitování křivek a ploch. Digitální filtrace a spektrální analýza. Příklady zpracování signálu a obrazu. Řešení různých typů rovnic a jejich soustav. Statistické metody. Dynamické datové struktury s ukazateli.
6. Pokročilé grafické techniky Animace, zobrazení objemu, užití map a zeměpisných projekcí.
7. Vytváření aplikací s grafickým uživatelským rozhraním Návrh GUI, widgety, obsluha událostí.
8. Přenositelnost na jiné platformy, integrace s dalšími programovacími jazyky Přenos dat a programů v IDL mezi různými OS (Windows, Unix). Dynamické knihovny. Volání funkcí IDL z vnějšího prostředí. Dynamické webové stránky a IDL skripty.
9. Objektově orientované programování Úvod do objektově orientovaného programování. Zavedení objektu, jeho vlastností a metod. Dědičnost. Příklady využití.
Kurz práce v IDL (Interactive Data Language) hojně využívaném v meteorologii, geofyzice, kosmické fyzice, astronomii a astrofyzice pro zpracování, analýzu a vizualizaci komplexních numerických dat. Přehled syntaxe, odlišnosti proti jiným programovacím jazykům.
Práce ve vývojovém prostředí. Práce s datovými soubory.
Tvorba grafů. Vybrané numerické metody.
Pokročilé grafické techniky. Tvorba aplikací s grafickým uživatelským rozhraním.
Přenositelnost na jiné platformy, integrace s dalšími programovacími jazyky. Úvod do objektově orientovaného programování.