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

Člen

Zobrazeno 50 zpráv z 163.
V předchozím kvízu, Online test znalostí Java, jsme si ověřili nabyté zkušenosti z kurzu.
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íš.
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.
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
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
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..
Čí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í.
http://javarevisited.blogspot.sk/…l-world.html ono tých
využití je dosť veľa
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)
Mohu se jenom zeptat kdo kde psal takovou pitomost.
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)
Však Java už má nejlepší za sebou, ale špatná pořád není.
Taky bych Javu tak nevychvaloval.. Je to velký, pomalý a ty implementace
JVM jsou dosti děravé..
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#..
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.
No vona Minecraft Windows 10 Edition je napsaná v C++
učit se jazyk, který neumí OOP je fakt výhra. To už je i ta Java lepší.
Tak selský rozum dá, že na OSX je Java asi lepší než c#, že?
proč tu diskuzi děláte tak subjektivní? Proč zde vychvalujete c#, c, python, ... ?
Pouze jsme psal že na OSX není implementace C# nic vic
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.
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.
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.
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.
Autor vlákna se neptal na vychvalování Javy ani ničeho jiného, ale jestli se Javu vyplatí učit.
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.
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.
Ale i ve vysokých jazycích se dají psát procedurální programy, prostě ignoruješ ten "balast" okolo.
A okrem toho ? Videl som tu nejaké jednoduché hry a konzolové srandicky ale to mi príde dosť nuda
v Javě se dá dělat spousta věcí, mimo jiné i dost nudné věci.
Promiň, na mobilu jsem kliknul na mínus při scrollování.
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#
Č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ěžší...
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í
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ší.
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
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
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#
Java
Záleží to tedy taky hodně na tom, co chceš dělat:
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.
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.
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ě 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.
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čí...
To, že je něco rozšířenější nemá žádnou vypovídající hodnotu o tom, jestli je "lepší".
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
Zobrazeno 50 zpráv z 163.