RSS
 

Archive for Květen, 2010

Jak začít programovat (1. díl)

22 Kvě

Články ze seriálu ' Úvod do programování ' :

Pár slov úvodem

V tomto seriálu bych rád pomohl těm z vás, kteří se chcete věnovat programování ať už profesionálně, či jen jako koníček ale nevíte kde začít. V prvé řadě musím uvést, že postupů jak se úspěšně naučit programovat je celá řada a tento seriál je založen na mých zkušenostech se začátky v programování. Programování je obecně dost volné a proto neberte zde uvedené informace jako zeď, kterou není možno překročit ale spíše jako takové mantinely, kterých se můžete ale nemusíte pevně držet. Články se budu snažit psát tak, aby ke zvládnutí základů programování stačilo pouze trochu logického uvažování, základní znalosti s užíváním PC (stažení programu, instalace programu, jednoduché nastavení programu) a základní znalost anglického jazyka (bez které se bohužel v programování asi neobejdeme).

Co vůbec znamená programování

Programování je soubor lidské činnosti vytvářející algoritmy a programy. Algoritmus je vlastně přesný návod jak vyřešit daný problém. Z reálného světa je příkladem algoritmu recept v kuchařce. Programem rozumíme zapsání algoritmu do daného programovacího jazyka tak, aby počítač přesně věděl jak má vyřešit daný problém. Pro jednoduchost si uvedeme příklad opět z kuchařky. Pokud bude recept algoritmem a kuchař počítačem, tak musí být vždy recept napsán v jazyce, kterému kuchař rozumí, aby mohl podle receptu vytvořit správný pokrm. Recept zapsaný v nějakém přesně specifickém jazyce se stává programem pro našeho kuchaře.

Postup tvorby aplikace

Ať plánujeme vytvářet jednoduché aplikace či naopak aplikace velice složité, vždy je nutné si nejprve vývoj důkladně připravit. Obecně se proces tvorby aplikace (programu) skládá z několika celků:

  • Rozvržení - v prvé řadě si musíme specifikovat co vše je cílem dané aplikace, jaké bude mít funkce, jakým způsobem bude komunikovat s uživatelem atd.. Vždy před tvorbou jakékoliv aplikace si musíme vše pečlivě připravit a naplánovat. V programování platí (více než kde jinde) pravidlo „Dvakrát měř, jednou řež“. Není nic horšího než předělávat program kvůli chybě při rozvrhování. Velice vhodné (alespoň ze začátku) je si sednout s papírem a tužkou ke stolu sepsat si co vše naše aplikace má umět a nakreslit si předpokládanou strukturu celé aplikace. Později při vývoji se můžeme podle těchto obrázků a popisů orientovat, takže se v kódu neztratíme.
  • Vývoj - v tomto kroku již vytváříme program v námi zvoleném jazyce. Nejlepším postupem, který se mi osvědčil je rozdělit si aplikaci na mnoho menších celků a ty postupně vytvářet. Nejvhodnější je začít tím nejobecnějším celkem a postupně se „zanořovat“ do těch více specifických prvků. Například pokud budeme vytvářet jednoduchou aplikace na správu CD, tak si nejdříve vytvoříme uživatelské prostředí (tj. část programu, která přímo komunikuje s uživatelem) a navrhneme si všechny ovládací prvky celé aplikace a až poté začneme vytvářet samotnou logiku všech ovládacích prvků.
  • Testování - Málokdy se stane, že se nám povede napsat program bez chyb. Vždy něco přehlédneme, něco zapomeneme. Z toho důvodu je nutné důkladně každou část aplikace otestovat a najít případné chyby. Někdy je tento proces zdlouhavější než samotný vývoj aplikace

Jaký programovací jazyk zvolit

Programovacích jazyků je celá řada. Některé jsou rozšířené více a některé zase méně. Když se naučíte obstojně programovat zjistíte, že většina programovacích jazyků je skoro stejná a liší se pouze v pokročilejších programovacích technikách. Je ale dobré si hned ze začátku vybrat takový jazyk, který nám umožní tvorbu jednoduchých ale i složitých aplikací. Bylo by škoda učit se pracovat v jazyce, který by v praxi byl téměř k ničemu.

Spousta lidí doporučuje začít s jazykem C.  S tímto jazykem mám spíše negativní zkušenosti. Začátky v něm jsou docela obtížné na pochopení a celkově mi přijde tento jazyk dost kostrbatý. Nicméně se jedná o velice často používaný jazyk jehož znalost je v dnešní době velkou výhodou.

Osobně si myslím, že nejlepším jazykem pro začátečníka je programovací jazyk Java. A proč zrovna Java? Jedná se o moderní objektově orientovaný programovací jazyk s velkým rozšířením a s dobrou využitelností. Na profesionální úrovni se využívá k tvorbě aplikací všech druhů i velikostí. Od aplikací pro mobilní zařízení, webové aplikace, desktopové aplikace až k počítačovým hrám. Možnosti Javy jsou obrovské. Pokud se naučíte dobře programovat v Javě, tak nejspíše hned tak nebudete potřebovat učit se jiný jazyk. Také většina škol zaměřených na informatiku (alespoň těch co drží krok s dobou) s tímto jazykem začíná.

To je pro dnešek vše. V dalších dílech si řekneme co vše je potřeba k programování v Javě.

Články ze seriálu ' Úvod do programování ' :

 
 

Věděli jste, že …?

21 Kvě

Dnešní svět jde obrovskou rychlostí kupředu. To co naši dědečkové považovali za Sci-fi je dnes prakticky samozřejmostí. V tomto videu se dozvíte celou řadu informací o naší civilizaci, které asi nevíte a nejspíše budete dost překvapeni.

 
 

Proč nepoužívat ICQ

09 Kvě

ICQ je komunikační protokol založený Americkou společností AOL a používaný k zasílání tzv. Instant messaging zpráv (zkratka IM) kde cílem je především komunikace v reálném čase. Jinými slovy tedy zpráva od odesílatele je příjemci doručena prakticky ihned. Je s podivem, že v Česku a dalších státech se tento protokol rozšířil i přes celou řadu neduhů, kterým ICQ oplývá. Pojďme si tedy shrnout nevýhody tohoto protokolu a ukázat si důvody proč používat některý z jiných komunikačních protokolů.

  1. Nízká spolehlivost – Časté výpadky různých služeb. Ač v posledních letech se spolehlivost zlepšuje, tak to stále není. Výpadky jsou u některých uživatelů prakticky na denním pořádku.
  2. Špatné zabezpečení – Leckdy se stane, že vám od vašich kontaktů přijde zpráva obsahující pouze odkaz na některou stránku. Ovšem daný kontakt nemá o odeslání této zprávy vůbec žádné tušení. Takovýto účet byl nabourán. Leckdy je tento problém způsoben nevhodnou volbou hesla uživatelem (krátká a jednoduchá hesla. např „12345″, „heslo“, či hesla stejná jako uživatelské jméno). To je chybou uživatele a ne ICQ. Ovšem někdy k tomuto jevu dojde i tehdy pokud uživatel používá bezpečné heslo. Zde je právě problém ve špatném zabezpečení serverů ICQ a i samotné komunikace mezi klientem a serverem.
  3. Šíření spamů a poplašných zpráv – po síti se nekontrolovaně šíří obrovské množství nevyžádané korespondence. Bohužel jak to tak vypadá, tak společnost AOL proti šíření spamu prakticky nezasahuje.
  4. Nezabezpečená komunikace – toto je velice velký problém. Komunikace mezi klienty sítě není nijak šifrována a komunikaci si může odchytit kdokoliv na cestě mezi dvěma komunikujícími klienty (např. váš šéf v práci, učitel, správce serveru, poskytovatel internetu atd.).
  5. Nedostatek služeb – Zde můžete namítnout, že většinou od tohoto typu komunikace vyžadujete pouze přenést zprávu z bodu A do bodu B.. Ovšem jiné komunikační protokoly dnes nabízejí celou řadu jiných funkcí (automaticky vám připomenou, že máte jít dnes k zubaři, zobrazí vám televizní program, určí předpověď počasí na následující týden..). Ano jsou to pro někoho naprosto zbytečné funkce. Ovšem furt lepší je mít a nepoužít než nemít a potřebovat je.
  6. Licenční omezení -  kapitola sama o sobě. Vzhledem k tomu, že většina lidí vůbec ustanovení při zakládání ICQ účtu nečte, tak si dovolím udělat jen takový drobný výtah zajímavých pasáží z jejich ujednání. Pokud některý z těchto bodů porušíte, tak se vystavujete riziku zrušení vašeho účtu:
    1. „Uživatel mladší 13 let nesmí využít služeb ICQ“ – děti máte hold smůlu. Toto není pro vás.
    2. „Přijetím podmínek této smlouvy souhlasíte s tím, že společnost ICQ má povoleno omezit, odepřít, vytvořit jiné priority pro jiné uživatele, aktualizovat nebo zrušit některé nebo všechny funkčnosti služeb ICQ, a to kdykoli a bez předchozího oznámení.“
    3. Přísný zákaz využívání jiného software pro komunikaci se serverem než tím, který je poskytován společností AOL. To znamená, že musíte využít jen program ICQ v kterém se nachází velice obtěžující reklama. Všechny programy jako QIP, Miranda atp. jsou v rozporu s licensí.
    4. ICQ se nesmí využít pro komerční účely – Ano kdykoliv bude komunikovat firma se zákazníky přes ICQ, tak je to porušení smlouvy. Svého času například elektronický obchod czech computer využíval k rychlé komunikaci se zákazníky služeb ICQ ale vzhledem k licenčním podmínkám spol. AOL byl donucen zrušit tuto službu.
  7. Není multiplatformní – ano v dnešní době je nejrozšířenějším operačním systémem Windows a pro něj komunikační program existuje. Co ale uživatelé linuxu?  Zase tak málo jich není. Na ně AOL patrně nemyslí a pokud chtějí uživatelé linuxu komunikovat přes ICQ, tak musí porušovat licenci a použít jiný software než ten poskytovaný AOLem.

Co jiného použít?

V dnešní době je na výběr celá řada protokolů, které jsou o mnoho lepší než ICQ.. Osobně doporučuji zvolit protokol Jabber .. Jeho registrace je opravdu jednoduchá, netrpí tolika neduhy jako ICQ a navíc je vytvořen jako open source. Postup jak nainstalovat a zprovoznit jabber najdete na stránkách jabber.cz .

Víceprotokolové komunikační programy

V naší zemi nejde bohužel přestat ze dne na den ICQ používat. Většina lidí používá ke komunikaci jen ICQ a žádný další protokol nemají. Celá řada z nich dokonce i přes všechny nevýhody nedá na ICQ dopustit (osobně teda nechápu proč). Bohužel právě kvůli těmto uživatelům se v naší zemi ICQ ještě stále drží. Právě z tohoto důvodu lze využít komunikační programy, které umožňují komunikace pomocí více protokolů současně. Předně ovšem je třeba podotknout, že použitím těchto programů porušujete licenční omezení. Ovšem společnost AOL žádný multiplatformní protokol sama nevytvořila.

Jedním z takových nejrozšířenějších programů je QIP Infium. Po stažení a spuštění programu provedete rychlou registraci a vytvoří se vám tak jeden QIP účet, který obsahuje informace o všech vašich používaných protokolech. Následně jen přidáte přihlašovací údaje do ICQ a ostatních protokolů a můžete začít vesele komunikovat přes jakýkoliv podporovaný protokol. Skvělé ne?

Zkuste přesvědčit své přátele o tom, že je ICQ špatné a přejděte jinam. Jedině tak se ICQ zbavíme. Proč používat něco co je vysloveně špatné? A pokud nevěříte mě, tak zkuste si přečíst články třeba zde nebo zde a nebo zde.

 
No Comments

Posted in Obecně