Jsme tu pro vás PO - PÁ 9:00 - 17:00 info@systeum.cz +420 608 408 716

Jsme tu pro vás PO - PÁ 9:00 - 17:00 obchod@systeum.cz +420 608 408 716

Java nebo C#? Který jazyk si vybrat a jak v nich začít programovat?

Obecné tipy, co si promyslet, když se chcete dát na dráhu Junior SW developera, jsme vám popsali tady. Nyní je  tedy namístě se společně se Standou Keppertem podívat na praktické otázky typu: Jaký si vybrat jazyk a proč, jaké tooly potřebujete, co si jako první naprogramovat atd

Jak mnozí z vás určitě ví, na serverech se používá nespočet jazkyů, mezi nimi především Java, C#, Python, Ruby, PHP, JavaScript a Golang. Každý má něco do sebe, ale nenechme si tím teď motat hlavu. Ať si to na začátek zjednodušíme, zatím se zaměříme na backend. Podíváme se trochu na zoubek jazykům Java a C#, abyste si mohli udělat obrázek, který z nich se případně chcete začít učit a proč. 

Zajímá vás oblast IT a hledáte pracovní pozice a pracovní příležitosti v IT oboru? Ať už jste programátor, developer, tester, analytik nebo software architekt, ozvěte se nám a my vám z naší nabídky IT práce najdeme IT projekt na míru. Podívejte se, jaká volná pracovní místa v IT oblasti momentálně nabízímePomůžeme vám najít nové pracovní výzvy a příležitosti. Těšíme se na spolupráci s vámi!

Java vs C#

Když začneme hodně obecně, oba jazyky jsou si principiálně velmi podobné a pokud dostaneme zadaný nějaký program, až na výjimky ho můžeme naprogramovat pomocí obou. Java i C# jsou objektově orientované jazyky, které mají každý vlastní prostředí. Zároveň ale můžeme rozlišovat výrazné rozdíly.

 

Java

C#

Vytvořeno

Spol. Sun Microsystems

Jako součást Microsoft .NET iniciativy

Ekosystém

Má rozsáhlý open source ekosystém

Používá se k vývoji SW pro platformy Microsoft

Podpora pro generika

Je implementována pomocí mazání a přetypování přidaných při kompilaci do bytekodu

Integrováno do CLI a umožňuje, aby byly informace o typu dostupné za běhu

Podpora pro delegáty

K dosažení podobné funkce vyžaduje použití rozhraní.

Má delegáty, které slouží jako metody, které lze volat bez znalosti cílového objektu.

Polymorfismus

Vyvolá klíčové slovo „virtuální“ v základní třídě a klíčové slovo „přepis“ v odvozené třídě.

Ve výchozím nastavení povoluje polymorfismus.

Bezpečnost

Zabezpečení typu Java je bezpečné

Zabezpečení typu C# není bezpečné

Vytvořený hl. pro

Souběžné a komplexní projekty

Především pro projekty na vývoj herních aplikací

Formát proměnných

Spojení slov velkými písmeny na začátku (camel case)
MyNewClassForMyNewCalc

Spojení slov podtržítky (snake case)
my_new_class_for_my_new_calc

 

Základní obrázek máme, tak se pojďme podívat na konkrétní kroky, jak začít v Java nebo C# programovat.

Jak začít programovat v Java

Na úplný začátek budete potřebovat vývojové prostředí (IDE - Integrated Development Environment), ve kterém budete svůj kód vyvíjet. Mezi nejznámější patří NetBeans, Eclipse a IntelliJ Idea. Ze své zkušenosti doporučuji právě IntelliJ Idea, a to hlavně proto, že je kolem něho obrovská komunita lidí, přidávají pluginy, které nám všem zjednodušují a zlepšují práci. 

Proč používat IDE a nesáhnout po poznámkovém bloku, PsPAD nebo Notepad++ (které jsou mimochodem mezi developery taky hojně využívány)? IDE, které je vytvořené přímo pro psaní v Java přinese hned několik výhod: upozorňuje na chyby, na to, že něco nebude fungovat nebo že máte někde konflikt. Ide jako je například ItelliJ Idea vám také jednodušeji umožní používat nástroje pro automatizaci buildů v podobě Maven nebo Gradle projektu, což více než doporučuji. Jsou to externí repozitáře, které vám umožní implementovat již vytvořené funkcionality a další věci do vašeho projektu. Je přece zbytečné, abyste zdlouhavě vymýšleli kolo, když už ho někdo vymyslel. :)

Dále potřebujeme místo, kam budeme ukládat verze našeho programu. Doporučím systém správy verzí Git, který se používá také velkém počtu firem (a proto ho upřednostním před SVN). Můžete ho využívat lokálně nebo se připojit k jeho cloudové verzi github.com. To je výhodné ve chvíli, kdy potřebujete svůj kód sdílet s ostatními. V rámci komunity na githubu můžete zveřejnit svůj kód a požádat seniorní vývojáře, aby se na něj podívali a okomentovali ho. Perfektní způsob, jak se učit a zdokonalovat.

Extra tip: Platí pro programování v jakémkoliv jazyku: Pište si komentáře! Na projektu můžete pracovat i několik měsíců nebo let, vše se vám bude rozrůstat a není ve vašich silách si vše pamatovat. Proto jsou komentáře záchrana, hlavně u tříd a u testů. Pomohou také vašim kolegům, se kterými můžete na projektu pracovat.

Jak začít programovat v C#

Prvním krokem je opět výběr vývojového prostředí. Jako úplně nejlepší volbu doporučuji Visual Studio. Toto IDE je přímo od MS a pokud budete používat verzi Community, můžete se obratit na opravdu širokou základnu lidí na různých fórech, kteří vám pomohou s jakýmkoliv problémem. Visual Studio navíc nabízí velkou spoustu věcí, které se dají doinstalovat, od podpory speciálních rozlišení jako je xamarin až po testovací utility. 

Dále budete potřebova repozitář pro ukládání verzí, opět doporučuji Git. Co se týká nástroje na automatizaci buildů (jako byl u Java Maven nebo Gradle), tak pro C# můžete využít MSBuild nebo NuGET. Patří mezi nejrozšířenější a nejlépe podporované. Samozřejmě opět platí, že se můžete obejít i bez nich, ale ve chvíli, kdy nastane například chyba při kompilaci, budete rádi, že automation management tool máte. 

Jak se odrazit a udělat ty první kroky?

Existují skvělé weby, které vás kapitolu po kapitole provedou a vysvětlí, co jsou operátory, třídy (class), metody (method), výjimky, cykly atd...Mrknout můžete například sem, tipy, kde hledat najdete také v našem již zmiňovaném článku

Připravte se určitě na to, že se budete učit ze svých vlastních chyb, jinak to ani nejde. Začněte nějakým malým projektem a vyzkoušejte si na něm všechny výše uvedené kroky: založení prostředí, jak se to bude chovat, když použijete Maven atd…

Začněte klidně projektem „Helloworld” nebo „Kalkulačkou”. Jak se říká, nikdo učený z nebe nespadl a i ti seniorní developeři okolo vás museli někde začít, pravděpodobně na začátku psali toto:

class Simple{  

    public static void main(String args[]){  

     System.out.println("Hello Java");  

    }  

}

Když to shrneme, oba jazyky jsou silné a dokážete s nimi naprogramovat neuvěřitelné věci. Stačí jen dobrý mindset, že to zvládnete! Držíme palce!

 

🟡 Hledáte zajímavý projekt? Mrkněte, jak to u nás chodí a jaké kolegy aktuálně hledáme.

🟡 Máte kolegu nebo kamaráda, který se poohlíží po novém projektu? Zapojte se do našeho referral programu Doporuč a získejte finanční odměnu za doporučení.

🟡 Chtěli byste začít pracovat v IT? Stáhněte si náš ebook ZAČNĚTE PRACOVAT V IT: aneb od prvních krůčků po vysněnou práci, ve kterém vás provedeme krůček po krůčku informacemi, kurzy i praxí, které jsou tolik potřebné nejen pro ty, kteří chtějí změnit obor, ale i pro ty, kteří se chtějí pracovně posunout a dále se vzdělávat.

Nebo sdílejte tento článek, který třeba poslouží i vašim známým.

Chcete dostávat naše články pravidelně do schránky? Nechte nám tady svůj email a my si rádi zahrajeme na poštovní sovy.

Mohlo by vás také zajímat

Jakou cestu urazil vývoj her 2: her...

čtení na 4 minuty 7.10.2021

Jak dobře znáte Jenkins? Díl I.

čtení na 4 minuty 29.7.2022

Přehled pozic v IT a životní cyklus...

čtení na 5 minut 3.2.2022

Agile, Waterfall, DevOps: základní ...

čtení na 8 minut 16.2.2022

TOP 12 TED Talks o nových technolog...

čtení na 5 minut 11.5.2022

Jak se o nás mluví?
Zeptejte se našich klientů…

Systeum
Systeum

„Systeum je jedním z největších dodavatelů našich testerských kapacit. Můžu říct, že kvalita uchazečů je vysoko nad průměrem. Také oceňuji velkou ochotu vyjít vstříc všem našim požadavkům.“

Head of test execution

„Systeum je dlouhodobý partner, u kterého máme jistotu, že kandidáti jsou kvalitní a prověření. Od roku 2015 máme díky nim fungující kvalitní seniorní týmy C++ embedded vývojářů a auto testerů.“

Head of Payment Application

„Systeum, thank you for your help to find the right fit to my team! I can recommend cooperation with you to everybody. Very professional, smooth and friendly.“

IT CIM Inventory Management Development

Příklady dlouhodobé spolupráce

Porsche Moneta Raiffeisenbank Generali Komerční banka Monster