NOVINKA: Získej 40 hodin praktických dovedností s AI – ZDARMA ke každému akreditovanému kurzu!
S účinností od 26. 3. jsme aktualizovali Zásady zpracování osobních údajů – doplnili jsme informace o monitorování telefonických hovorů se zájemci o studium. Ostatní části zůstávají beze změn.

Diskuze: Java rok 2016

V předchozím kvízu, Online test znalostí Java, jsme si ověřili nabyté zkušenosti z kurzu.

Jak se ti líbí článek?
Před uložením hodnocení, popiš prosím autorovi, co je špatněZnaků 0 z 50-500
Jak se ti kurz líbí?
Tvé hodnocení kurzuZnaků 0 z 50-500
Aktivity
Avatar
Jakub Dvorský:5.1.2016 12:33

Vyplatí se učit Javu ? Hodně lidí říká že v dnešní době upadá a už se tolik nevyužívá.
Pokud se Java nevyplatí tak který jazyk ?

 
Odpovědět
5.1.2016 12:33
Avatar
Atrament
Člen
Avatar
Odpovídá na Jakub Dvorský
Atrament:5.1.2016 13:05

Lidi nakecaj hrozný kraviny, vůbec je neposlouchej. Java je skvělá, je progresivní, jednoduchá a docela čistě navržená a má takové neskutečné množství knihoven a frameworků o jakém se jiným jazykům jenom zdá. :)

Nicméně poněkud objektivněji - výběr jazyka a technologií záleží na tom co chceš dělat. Na něco se holt víc hodí ta Java, na něco C/C++ na něco jiného PHP atd. Srovnej si co chceš dělat a co tě zajímá, podívej se na pracovní inzeráty a podle toho se rozhodni. Btw umět více jazyků je stejně dneska víceméně nutnost, takže znalostí Javy vůbec nic nepokazíš.

 
Nahoru Odpovědět
+2
5.1.2016 13:05
Avatar
Jaro
Člen
Avatar
Odpovídá na Jakub Dvorský
Jaro:5.1.2016 13:57

Java sa používa stále, dokonca by som povedal, že jej popularita rastie. Rozhodne sa oplatí učiť. Rozhodne neupadá ani sa neprestáva používať. Podľa mňa je to jeden z "najčistejších" jazykov (môj subjektívny názor), má jednoduchú syntax, dobre sa číta, je vhodná aj na veľmi veľké projekty, má skvelé IDE (IDEA, Netbeans, Eclipse). Jej vývoj je pomerne stabilný, nepúšťa sa do experimentov a beží všade, kde rozbeháš JVM. Samozrejme má aj svoje muchy, ale mne sa v Jave programuje asi najlepšie zo všetkých jazykov čo poznám.

Nahoru Odpovědět
+4
5.1.2016 13:57
“What would you do if you were 100% sure you couldn’t fail?”
Avatar
pocitac770
Tvůrce
Avatar
Odpovídá na Jakub Dvorský
pocitac770:5.1.2016 15:47

Abych taky přispěl trochu do mlýna, tak bych třeba zmínil (podle mého názoru) "chloubu" javy, neboli Minecraft. Hra, která v současné době ovládá široký konzumní průmysl se stala velice slavnou, a ano, celá je naprogramovaná právě v javě. Její vlastnost umožnila rozšířit MC na mnoho platforem. Když Microsoft MC odkoupil, tak se spekulovalo, že se přeprogramuje do C#, ale jak je vidět, dokonce i u nich si výhodu tohoto jazyka uvědomují. Je to pouhý příklad, mnoho již bylo odpovězeno v předchozích příspěvcích. Pro mě je například java taktéž oblíbeným jazykem. Tak se nikdy nevzdávej, že by mělo být zastaralé, nebo snad neužitečné se jí učit :)

 
Nahoru Odpovědět
+2
5.1.2016 15:47
Avatar
Jakub Dvorský:5.1.2016 17:03

Moc vám děkuji :-) Určitě u toho zůstanu je to super jazyk, jen jsem se bál že mi to v budoucnu bude k ničemu :-)

 
Nahoru Odpovědět
5.1.2016 17:03
Avatar
David Klouček:5.1.2016 17:07

Taky se o tohle téma poslední dobou zajímam. Podle mě by bylo hlavně důležitý v diskuzi zmínit, jakou Javu myslíte. A celkově z příspěvků na internetu mi přijde, že Java má už největší boom za sebou. Absolutně se mi nelíbí pro desktop - Swing je zastaralej a JavaFX se asi moc neujala a oproti vývoji aplikací v .NET je podle mě těžkopádná. Navíc v ní nejde udělat nativní vzhled a Oracle přestal vyvíjet Scene Builder? Na serveru bych jí klidně bral, ale jen se Springem a Hibernate, protože další miliarda alternativních knihoven mě dost odrazuje. A teď se prej vyvíjí .NET Core, který by mělo umožnit spouštět C# třeba na Linuxovym serveru bez Mono - má teda vůbec smysl uvažovat o Javě, kdybych chtěl na webovou aplikaci použít kompilovanej jazyk? Já se spíš pro webovej projekt přiklánim pro .NET, když už v něm občas rád píšu desktopový aplikace.

Mobily neřešim, protože na každej OS se používá něco jinýho, existuje Xamarin, hybridní aplikace..

Editováno 5.1.2016 17:08
 
Nahoru Odpovědět
+7
5.1.2016 17:07
Avatar
Atrament
Člen
Avatar
Odpovídá na David Klouček
Atrament:5.1.2016 17:35

Čím je konkrétně Swing zastaralej? Jasně není to žádný nováček, ale je velmi solidně navržen podle MVC, snadno se používá, je už docela dost vychytaný co se týče chyb a co se týče vzhledu tak je plně přizpůsobitelný a na nejrozšířenějších platformách nabízí motivy s takřka nativním vzhledem. Netbeans IDE má pro něj skvělý designer - Matisse a navíc je zde framework Netbeans Platform díky nimž vytvářet i velmi složité desktopové aplikace je "hračka". Já naopak vidím Javu pro desktopovou aplikaci jako jasnou volbu :)

Co se týče webových aplikací i tam má Java hodně co nabídnout -Spring a všechny ty frameworky okolo nabízejí opravdu luxusní možnosti jak pohodlně vyvíjet a když se koukneš na pracovní nabídky tak zjistíš, že je i dost vysoká poptávka po lidech co to umí.

 
Nahoru Odpovědět
5.1.2016 17:35
Avatar
Jaro
Člen
Avatar
Nahoru Odpovědět
5.1.2016 17:36
“What would you do if you were 100% sure you couldn’t fail?”
Avatar

Člen
Avatar
Odpovídá na pocitac770
:5.1.2016 18:15

ale jak je vidět, dokonce i u nich si výhodu tohoto jazyka uvědomují

Neviděl bych za tím kvalitu jazyka. Spíš by bylo strašně pracné a nákladné to přepsat.
Podobně jak se shodli mnozí uživatelé na různých fórech, i já si myslím, že v C# bude napsána nějaká nová MC hra (ať už pokračování či něco jiného)

 
Nahoru Odpovědět
+5
5.1.2016 18:15
Avatar
Richard H.
Tvůrce
Avatar
Odpovídá na Jakub Dvorský
Richard H.:5.1.2016 18:19

Mohu se jenom zeptat kdo kde psal takovou pitomost.

Nahoru Odpovědět
5.1.2016 18:19
Malý užitečný manuál je vždy lepší než bichle k ničemu.
Avatar
Odpovídá na
Neaktivní uživatel:5.1.2016 18:29

Přesně tohle jsem chtěl taky říct. Prostě Microsoft koupil tým vývojářů se znalostí Javy a hotovým produktem v Javě. Bylo by značně nestrategické přepisovat to do C# (vyžádalo by si to například přeučení Mojangu na C#). Pokud ale bude Microsoft pokračovat dalšími hrami (jako že by byla blbost to neudělat), budou napsané zřejmě v C#, ale možná třeba i v C++ (podle mě teoretická, i když krajně nepravděpodobná varianta)

Editováno 5.1.2016 18:30
Nahoru Odpovědět
+1
5.1.2016 18:29
Neaktivní uživatelský účet
Avatar
Odpovídá na Richard H.
Michal Žůrek - misaz:5.1.2016 18:44

kde kdo a úplná blbost to není.

 
Nahoru Odpovědět
+2
5.1.2016 18:44
Avatar
Odpovídá na David Klouček
Michal Žůrek - misaz:5.1.2016 18:45

Však Java už má nejlepší za sebou, ale špatná pořád není.

 
Nahoru Odpovědět
+1
5.1.2016 18:45
Avatar
Odpovídá na David Klouček
Jakub Dvorský:5.1.2016 19:02

A jaký jazyk bys doporučil ?

 
Nahoru Odpovědět
5.1.2016 19:02
Avatar
David Novák
Tvůrce
Avatar
David Novák:5.1.2016 19:10

Taky bych Javu tak nevychvaloval.. Je to velký, pomalý a ty implementace JVM jsou dosti děravé.. :D

Na výuku se hodí nějaký menší, jednodušší jazyk, kde nebudeš zavalen tisícovkami různých funkcí (pardon, metod) a který toho také moc neumí, což tě donutí naučit se přemýšlet jako programátor - například C. A nebo i Pascal, pokud máš rád užvaněné jazyky ;) Moderním trendem je také učit se na Pythonu..

Samozřejmě, že takové jazyky pak asi moc nevyužiješ v práci (pokud nepůjdeš dělat něco nízkoúrovňového v C), ale to nevadí - zkušenosti z nich ti zůstanou a dobře je využiješ ve vyšších jazycích jako je Java nebo C#..

Nahoru Odpovědět
5.1.2016 19:10
Chyba je mezi klávesnicí a židlí.
Avatar
Odpovídá na Jakub Dvorský
Vladislav Domin:5.1.2016 19:14

Jednoducho ti napisem....

Web: HTML, CSS, JS, PHP (C#, Java)
Desktop: C#, Java ...
Samozrejme vediet pracovat s databazou tj. SQL
Este tu su jazyky ako Python, C++ a tak dalej... O kazdom si precitaj a podla toho sa rozhodni. Nic nestratis ak sa naucis hociktory jazyk tj. python, c(#, ++), java... Ak sa naucis jeden, prechod na dalsi uz nebude vobec velky problem. Len budes musiet stravit trochu casu nad tym.

 
Nahoru Odpovědět
5.1.2016 19:14
Avatar
Petr Čech
Tvůrce
Avatar
Petr Čech:5.1.2016 19:24

Pokud ještě v Javě neděláš, tak C# je skoro to samé, ale hodně věcí je tam mnohem pohodlnějších a jednodušších než v Javě. Navíc už není pravda, že by C#.NET bylo jen pro Windows.

Nahoru Odpovědět
5.1.2016 19:24
the cake is a lie
Avatar
Richard H.
Tvůrce
Avatar
Odpovídá na Neaktivní uživatel
Richard H.:5.1.2016 19:24

No vona Minecraft Windows 10 Edition je napsaná v C++

Nahoru Odpovědět
5.1.2016 19:24
Malý užitečný manuál je vždy lepší než bichle k ničemu.
Avatar
Richard H.
Tvůrce
Avatar
Odpovídá na Petr Čech
Richard H.:5.1.2016 19:26

A co OSX proto pokud je mi známo C# jeste není.

Nahoru Odpovědět
5.1.2016 19:26
Malý užitečný manuál je vždy lepší než bichle k ničemu.
Avatar
Odpovídá na David Novák
Michal Žůrek - misaz:5.1.2016 19:38

učit se jazyk, který neumí OOP je fakt výhra. To už je i ta Java lepší.

 
Nahoru Odpovědět
5.1.2016 19:38
Avatar
Odpovídá na Richard H.
Michal Žůrek - misaz:5.1.2016 19:39

Tak selský rozum dá, že na OSX je Java asi lepší než c#, že?

 
Nahoru Odpovědět
5.1.2016 19:39
Avatar
Michal Žůrek - misaz:5.1.2016 19:40

proč tu diskuzi děláte tak subjektivní? Proč zde vychvalujete c#, c, python, ... ?

 
Nahoru Odpovědět
5.1.2016 19:40
Avatar
Richard H.
Tvůrce
Avatar
Odpovídá na Michal Žůrek - misaz
Richard H.:5.1.2016 19:44

Pouze jsme psal že na OSX není implementace C# nic vic

Nahoru Odpovědět
-1
5.1.2016 19:44
Malý užitečný manuál je vždy lepší než bichle k ničemu.
Avatar
Petr Čech
Tvůrce
Avatar
Odpovídá na Michal Žůrek - misaz
Petr Čech:5.1.2016 19:44

Protože C# mi připadá oproti Javě mnohem pohodlnější a celkově lepší a protože nechápu, proč se učit něco zbytečně složitého, když to jde jednoduše.

Nahoru Odpovědět
+3
5.1.2016 19:44
the cake is a lie
Avatar
Richard H.
Tvůrce
Avatar
Odpovídá na Michal Žůrek - misaz
Richard H.:5.1.2016 19:47

To víš umět bejt objektivní je dobrej dar. Ale pochopitelně ho má málokdo. Je prostě faktem že kdo píše v Javě bude vychvalovat Javu kdo píše V C# nebo má rád MS tak vychvaluje C# atd mě to bylo jasné už od začátku diskuze že to tak bude.

Editováno 5.1.2016 19:47
Nahoru Odpovědět
5.1.2016 19:47
Malý užitečný manuál je vždy lepší než bichle k ničemu.
Avatar
David Novák
Tvůrce
Avatar
Odpovídá na Michal Žůrek - misaz
David Novák:5.1.2016 19:49

Proč? Procedurální programování je prostě základ. A kdo se ho řádně nenaučí, tak nebude dobrý programátor. Můžeme si to abstrahovat jak chceme, ale počítače prostě jsou procedurální a takový kód jim, co se výkonu týče, vyhovuje nejvíce..

Zastávám názor, že je nejlepší začít od klasického "hloupého" jazyku,¨který tě naučí myslet. Přejít na OOP pak není nic těžkého.

Nahoru Odpovědět
+2
5.1.2016 19:49
Chyba je mezi klávesnicí a židlí.
Avatar
Odpovídá na Richard H.
Michal Žůrek - misaz:5.1.2016 19:51

tak pak je to jenom hloupá poznámka, protože každý (stejně tu všichni diskutují subjkeitvně) si to domyslí sám. Java na OSX je, tak ta poznámka tu ani nemá co dělat.

 
Nahoru Odpovědět
5.1.2016 19:51
Avatar
Odpovídá na Richard H.
Michal Žůrek - misaz:5.1.2016 19:52

Autor vlákna se neptal na vychvalování Javy ani ničeho jiného, ale jestli se Javu vyplatí učit.

 
Nahoru Odpovědět
5.1.2016 19:52
Avatar
Odpovídá na David Novák
Michal Žůrek - misaz:5.1.2016 19:53

v Javě se dá taky programovat procedurálně a výhoda je že pak k OOP (což je btw považováno za základní znalosti (a schopnosti) programátora) nebude muset se přeučovat nový jazyk.

 
Nahoru Odpovědět
5.1.2016 19:53
Avatar
Dominik Gavrecký:5.1.2016 19:58

Mohol by mi niekto povedať na čo sa Java najmä využíva a čo všetko sa v nej dá naprogramovať ? Mám na mysli skôr k tým základom čo väčšinu času ľudia programuju.

Nahoru Odpovědět
5.1.2016 19:58
Hlupák nie je ten kto niečo nevie, hlupákom sa stávaš v momente keď sa na to bojíš opýtať.
Avatar
Odpovídá na Dominik Gavrecký
Michal Žůrek - misaz:5.1.2016 20:03

třeba aplikace pro Android.

 
Nahoru Odpovědět
5.1.2016 20:03
Avatar
Petr Čech
Tvůrce
Avatar
Odpovídá na David Novák
Petr Čech:5.1.2016 20:08

Ale i ve vysokých jazycích se dají psát procedurální programy, prostě ignoruješ ten "balast" okolo.

Nahoru Odpovědět
+1
5.1.2016 20:08
the cake is a lie
Avatar
Odpovídá na Michal Žůrek - misaz
Dominik Gavrecký:5.1.2016 20:09

A okrem toho ? Videl som tu nejaké jednoduché hry a konzolové srandicky ale to mi príde dosť nuda

Nahoru Odpovědět
5.1.2016 20:09
Hlupák nie je ten kto niečo nevie, hlupákom sa stávaš v momente keď sa na to bojíš opýtať.
Avatar
Odpovídá na Dominik Gavrecký
Michal Žůrek - misaz:5.1.2016 20:12

v Javě se dá dělat spousta věcí, mimo jiné i dost nudné věci.

 
Nahoru Odpovědět
5.1.2016 20:12
Avatar
Odpovídá na Petr Čech
Neaktivní uživatel:5.1.2016 20:13

Promiň, na mobilu jsem kliknul na mínus při scrollování.

Nahoru Odpovědět
5.1.2016 20:13
Neaktivní uživatelský účet
Avatar
Jakub Dvorský:5.1.2016 20:26

Děkuji všem za odpovědi asi si začnu procvičovat programování v C a pak přejdu na Javu nebo C# :-)

 
Nahoru Odpovědět
+1
5.1.2016 20:26
Avatar
Odpovídá na David Novák
Neaktivní uživatel:5.1.2016 20:26

Četl jsem někde názor, se kterým souhlasím - že každý člověk když se jde učit programovat přemýšlí prvně objektově, protože je to prostě mnohem blíž reálnému světu. Musí se přeučit na procedurální programování a pak po mnoha měsících/letech zpět na OOP a je to tak ve výsledku těžší...

Nahoru Odpovědět
+1
5.1.2016 20:26
Neaktivní uživatelský účet
Avatar
Odpovídá na Jakub Dvorský
Neaktivní uživatel:5.1.2016 20:28

Nedoporučuji na začátek C. Ne že by to byl jazyk špatný, je pravda že je to jakýsi základ, ale problém je, že dokáže naprosto demotivovat a odradit od programování, poněvadž je docela složitý a v mnoha věcech neintuitivní

Nahoru Odpovědět
+4
5.1.2016 20:28
Neaktivní uživatelský účet
Avatar
Odpovídá na Neaktivní uživatel
Jakub Dvorský:5.1.2016 20:30

Ok :-) ale pořád nevím jestli Javu nebo C#.

 
Nahoru Odpovědět
5.1.2016 20:30
Avatar
Neaktivní uživatel:5.1.2016 20:33

A k tématu: Já si myslím, že všechny tradiční vysokoúrovňové jazyky jako je C#/Java (bohužel) postupně klesají v používanosti a jsou nahrazovány v různých odvětvích různými jazyky. Samozřejmě však nikdy zcela nevymizí a vždy budou dobrou volbou pro učení/uplatnění.

Z těch moderních jazyků je jich plno, ale žádný podle mě není vhodný pro začátek. Jsou to jazyky jako Ruby (hlavně díky Rails, jinde ale nemá moc zastoupení), Python (na rozdíl od mnoha jiných lidí ho nedoporučuji, jelikož má nedokonalé OOP a syntaxi odlišnou od všech ostatních), JavaScript (kvůli Node.js, které vytlačuje všechny ostatní jazyky/frameworky, i přesto, jaký je ten jazyk hnus), Haskell (funkcionální fakt na začátek ne...) a další.

Akceptované řešení
+20 Zkušeností
+2,50 Kč
Řešení problému
Nahoru Odpovědět
5.1.2016 20:33
Neaktivní uživatelský účet
Avatar
Tomáš Brůna
Tvůrce
Avatar
Odpovídá na Jakub Dvorský
Tomáš Brůna:5.1.2016 20:36

co chceš ;) C# mi příjde o o něco lehčí a pokud chci dělat něco těžšího, tak to dělám v něm. Jedna z jeho výhod je (tedy alespoň pro mě) Visual Studio, umí generovat metody a je v něm celkém lehké stylovat. Začínal jsem na javě a příjde mi zajímavá, ale místy mi příjde opravdu lepší C#.
Volba je jen na tobě, stejně se časem budeš muset naučit alespoň základy obou ;)

Nahoru Odpovědět
5.1.2016 20:36
Vi veri universum vivus vici
Avatar
Jakub Dvorský:5.1.2016 20:38

A co C++ ?

 
Nahoru Odpovědět
5.1.2016 20:38
Avatar
Tomáš Brůna
Tvůrce
Avatar
Odpovídá na Jakub Dvorský
Tomáš Brůna:5.1.2016 20:41

jak říkám je to na tobě, ale osobně se mi zdá do začátků poměrně těžší než Java nebo C#,
je možné že to je jen můj osobní pocit :)

Nahoru Odpovědět
+2
5.1.2016 20:41
Vi veri universum vivus vici
Avatar
Odpovídá na Jakub Dvorský
Neaktivní uživatel:5.1.2016 20:45

To už je na tobě, já dělám hlavně v C# a tak doporučuji ten, ale ti co dělají v Javě doporučí zase tu. Pokud se naučíš jeden, jde přejít na druhej poměrně snadno, ale můžu tady vypsat nějaký "postřehy".

C#

  • Od Microsoftu -> jednoduchý a přirozený na tvorbu Windows (i mobilních) aplikací, ať už normálních desktopových, nebo do Windows store
  • Také obsahuje přímo zabudovaný robustní a známý framework pro tvorbu webových aplikací - ASP.NET; Framework pro práci s databází - Entity Framework; a C# sám má v syntaxi dotazovací jazyk LINQ
  • Je v něm možné tvořit hry pomocí Unity
  • Není tak jednoduché rozběhnout ho pod Linuxem, i když to už dnes rozhodně jde (a v blízké budoucnosti to bude ještě jednodušší kvůli .NET CORE open source)
  • Plnohodnotná tvorba aplikací na Android je možná jen po zakoupení frameworku třetí strany Xamarin
  • Snad nejlepší IDE vůbec Visual Studio zcela zdarma

Java

  • Je jednodušší na rozběhnutí na všech možných platformách
  • Základní jazyk na vývoj aplikací na Android
  • Také obsahuje framework na tvorbu webových aplikací
  • Není v ní možné tvořit hodnotové typy, ale jazyk je má obsažené
  • Není možné přetěžovat operátory

Záleží to tedy taky hodně na tom, co chceš dělat:

  • Windows desktop/mobil­ní/store aplikace - C#
  • Webové aplikace - C# i Java, záleží na tobě
  • Android aplikace - Java (teoreticky i C#)
  • Hry - C# (teoreticky i Java, ale nemá nic co by se vyrovnalo Unity)
Nahoru Odpovědět
+3
5.1.2016 20:45
Neaktivní uživatelský účet
Avatar
Petr Čech
Tvůrce
Avatar
Odpovídá na Jakub Dvorský
Petr Čech:5.1.2016 20:47

C# je prostě lepší, musím to tak napsat :-) .Dříve Javisté argumentovali proti C# hlavně multiplatformností, ale C# už je také (více-méně) multiplatformní. Java oproti C# postrádá spoustu věcí, které značně ulehčují věci. Ze začátku to sice nebude tolik poznat, ale čím hlouběji se budeš do toho jazyka dostávat, tím znatelnější ten rozdíl bude. Uvedu velice klasický příklad:
C#:

public int Age{get;set;}

Java:

private int _age;
public void setAge(int age)
{
    _age=age;
}
public int getAge()
{
    return age;
}

tyto 2 věci dělají naprosto tu samou věc, velmi používanou, navíc u C# je to mnohem intuitivnější, různé fíčury IDE a pod. s tím mohou lépe pracovat etc. A takových rozdílů je spousty, a tady je to ještě docela dobré, třeba takové události jsou v Javě klidně i 10x delší co se týče kódu. V C# je spousty "zkratek" které výrazně zvyšují čitelnost kódu.
To je samotný jazyk. Teď k prostředí.
Java má spousty dobrých, ale nedokonalých IDE, každé si dělá věci trochu jinak, knihovny jsou poházené všude možně po netu.
C# má vlastně 1 IDE, co používá ~90+% lidí (odhad), knihovny jsou na jednom místě, standardy jsou velmi jasně dané přímo od MS. Navíc protože .NET byl původně jen pro Windows, je v IDE velmi pohodlné ladění a další pakárny.

Možná trochu přeháním a není to s Javou tak zlé, ale C# je na tom lépe.

Nahoru Odpovědět
+4
5.1.2016 20:47
the cake is a lie
Avatar
Odpovídá na Jakub Dvorský
Neaktivní uživatel:5.1.2016 20:47

O C++ a podobných jazycích ani nepřemýšlej, dokud nebudeš mít dobré a stabilní základy programování. Platí pro něj to stejné jako pro C, ale ještě mnohem víc - svými zvláštnostmi a složitostmi (např. při správě paměti) dokáže začínající programátory odradit.

Nahoru Odpovědět
+1
5.1.2016 20:47
Neaktivní uživatelský účet
Avatar
David Novák
Tvůrce
Avatar
Odpovídá na Jakub Dvorský
David Novák:5.1.2016 20:48

C++ je v podstatě C s objekty a velkou knihovnou - dost složité pro začátečníky.. To bych určitě nedoporučil..

Jde asi hodně o to, jak se to chceš učit - klasická univerzitní výuka typicky učí C a k tomu rovnou jak funguje procesor (spojeno s výukou asembleru) a operační systémy. Dohromady to dá krásný, ucelený obrázek a hodně to posouvá.. Je to ale také na "plný úvazek" - tj. více než 40hod/týden studia.. (přednášky, projekty, samostudium)..

Pro úplného laika, co se to učí "svátečně", bych se asi taky přiklonil k nějakému vysokému jazyku.. Ale jde mi to tak trochu proti srsti, protože nemám moc "sváteční programátory" a "klikače" v oblibě :D Ale někde je třeba začít.. Můžeš buď "zvrchu" a nebo "zespodu" - tj. buď se učíš OOP a aplikace v grafickém prostředí ve spojení s nějakými algoritmy. A nebo začneš tím, jak vevnitř funguje CPU (že má instrukce a vykonává je postupně a větvení je pomocí skoků, apod.)... Začít zvrchu bude asi podstatně jednodušší.. Ale dlouhodobě můžeš mít problém s tím, že nechápeš vnitřní funkci PC a jsi pak omezen na vyšší aplikace (což ale není nutně negativní - není důvod, aby všichni dělali nízkoúrovňové věci a rozuměli, jak to funguje).. Zespodu je zase o dost náročnější začátek a může to hodně lidí odradit.. Obzvláště, pokud je v tom nevede žádný učitel.

Nahoru Odpovědět
5.1.2016 20:48
Chyba je mezi klávesnicí a židlí.
Avatar
Atrament
Člen
Avatar
Odpovídá na Dominik Gavrecký
Atrament:5.1.2016 20:55

Lepší by bylo spíš ptát se naopak - co v Javě nejde napsat, nebo na co se vůbec nehodí. Pak by byla odpověď celkem jednoduchá - nehodí se na low level věci jako jsou ovladače hardware a podobně. Tady jasně vede C/C++.

Java je populární v enterprise aplikacích, podnikových systémech, bankovních systémech, internetových bankovnictvích, vědeckých aplikacích atd. Docela hojně se používá při vývoji webových aplikací jako backend. No a samozřejmě aplikace pro Android jsou ve velké míře dělané v Javě, ježto je Android SDK primárně javovské.

Jinak se vám všem divím, že vás baví se dohadovat jaký jazyk je lepší a proč :) Něco jako univerzálně nejlepší jazyk neexistuje. Nějaký jazyk se hodí na to, některý zas na ono, někomu vyhovuje tenhle jazyk, jinému zas jiný, to co se někomu na nějakém jazyku líbí, to zas jiný právě nesnáší a podobně. Podobné diskuse jsou jenom ztrátou času. Každý ať si vybere sám podle své chuti a potřeby co jemu vyhovuje. Pokud se někdo dá na dráhu programátora, musí počítat s tím, že se bude po zbytek života stejně pořád jenom učit. Nové jazyky, nové knihovny, nové postupy, nikdy to nekončí... :)

 
Nahoru Odpovědět
+2
5.1.2016 20:55
Avatar
Petr Čech
Tvůrce
Avatar
Odpovídá na Atrament
Petr Čech:5.1.2016 21:05

To, že je něco rozšířenější nemá žádnou vypovídající hodnotu o tom, jestli je "lepší".

Nahoru Odpovědět
+1
5.1.2016 21:05
the cake is a lie
Avatar
Atrament
Člen
Avatar
Odpovídá na Petr Čech
Atrament:5.1.2016 21:06

No nedá mi to abych nereagoval :) Příklad s gettery a settery je přesně to o čem jsem výše psal - ty to vidíš jako výhodu C#, mně to tak teda rozhodně nepřipadá. Jednak mi přijde Javovské řešení přehlednější, čistější a čitelnější a jednak je to daleko pružnější. Můžu si třeba do těch getterů a setterů jednoduše dát nějaké to logování či debugování. Můžu si v setteru provést nějakou kontrolu, předtím než hodnotu fieldu změním. Atd. Argument typu, že je to kratší neberu - každé normální IDE umí standardní gettery a settery vygenerovat aniž bych napsal jediný řádek kódu. Mimochodem podtržítka v názvech proměnných v Javě, to je pěkná zvrhlost :)

 
Nahoru Odpovědět
-5
5.1.2016 21:06
Děláme co je v našich silách, aby byly zdejší diskuze co nejkvalitnější. Proto do nich také mohou přispívat pouze registrovaní členové. Pro zapojení do diskuze se přihlas. Pokud ještě nemáš účet, zaregistruj se, je to zdarma.

Zobrazeno 50 zpráv z 163.