Java nebo .NET pro budoucí freelancing?

_______

Re:Java nebo .NET pro budoucí freelancing?
« Odpověď #45 kdy: 18. 07. 2015, 15:46:36 »
Tak když už máte dobré vývojáře, proč jimi plýtvat na JS? Zrovna web by měl jít napsat tak, že na memory management budou stačit chytré ukazatele, máte tam silnější typovou kontrolu, je to rychlejší (i když ne zas o tolik, když to srovnám s node.js) a má to výrazně nižší paměťové nároky. Problém je, že se v tom pak nemůže hrabat někdo kdo tomu pořádně nerozumí, takže se nakonec radši použije JS nebo PHP a podle toho to často dopadne.

Abych parafrázoval Linuse: "JS is a horrible language. It's made more horrible by the fact that a lot
of substandard programmers use it, to the point where it's much much
easier to generate total and utter crap with it. Quite frankly, even if
the choice of C++ were to do *nothing* but keep the JS programmers out,
that in itself would be a huge reason to use C++." (ten mluvil o C++ vs C... JS vs C++ je další úroveň) ... ale samozřejmě záleží na účelu, stejně tak jako C++ má mimo kernel developement svoje místo, má svoje místo i JS.


javista

Re:Java nebo .NET pro budoucí freelancing?
« Odpověď #46 kdy: 18. 07. 2015, 16:22:49 »
Já myslím, že většina hejtu na JS pramení právě z toho, že si pustí pusu na špacír nějaký dobře známý vývojář a ostatní to pak dál šíří jako svoje zkušenosti.
Mně se naopak JS líbí. Líbí se mi volnost i vlastnosti jazyka. A že vzniká milión nástrojů? To je důkaz, že se ekosystém vyvíjí, protože JS už není pouze záležitost prohlížečů, ale i serverů.

perceptron

Re:Java nebo .NET pro budoucí freelancing?
« Odpověď #47 kdy: 18. 07. 2015, 16:31:56 »
Citace
Tak když už máte dobré vývojáře, proč jimi plýtvat na JS?
lebo aj ked mate java server faces / asp.net / gwt so zabudovanou podporou ajaxu, nevyhnete sa javascriptu

cool projekty deploynu rest api a user interface zhodia na browser

Citace
Zrovna web by měl jít napsat tak, že na memory management budou stačit chytré ukazatele, máte tam silnější typovou kontrolu, je to rychlejší (i když ne zas o tolik, když to srovnám s node.js) a má to výrazně nižší paměťové nároky.
dafuq i just read? vy robite weby v c++?



lok

Re:Java nebo .NET pro budoucí freelancing?
« Odpověď #48 kdy: 18. 07. 2015, 16:42:37 »
Tvoje názory jsou asi stejně tak validní, jako kdybych tady napsal, že jsi blbec...

Stejně tak nejsou validní názory tvůrců pětistránkových webů.

Re:Java nebo .NET pro budoucí freelancing?
« Odpověď #49 kdy: 18. 07. 2015, 17:13:09 »
A že vzniká milión nástrojů? To je důkaz, že se ekosystém vyvíjí, protože JS už není pouze záležitost prohlížečů, ale i serverů.
Problém je v tom, že vznikne jeden nástroj, pak se zjistí, že je naprd, tak vznikne jiný nástroj s úplně jinou filosofií atd. pořád dokolečka a s neuvěřitelně rychlou obrátkou. Dobrý ekosystém, který přitahuje dobré programátory, se pozná mj. podle toho, že když se něco navrhne, tak se to pak používá dlouho, protože to je prostě udělané dobře.

Nejsem do JS nijak zanořenej, snažím se mu vyhýbat seč to jde, ale třeba když vidím deset vnořených callbacků v kódu pro node a lidi, kteří to adorují, jak je to bezva věc, tak nevím, jestli brečet nebo se jít živit opravovávním ledniček. Teď teda s velkou pompou přišli s async/await a co jsem tak koutkem oka zahlídl, už jsou diskuse o tom, jestli je to udělaný dobře.

JS je prostě jedna velká marnost. Vezme se jabloň, na ni se naroubuje švestka, ale protože je momentálně v módě meruňkovej džem, narve se tam syntetický meruňkový aroma, který se musí vyrobit v obrovitánské továrně, o které nikdo neví, jak funguje.


anonym

Re:Java nebo .NET pro budoucí freelancing?
« Odpověď #50 kdy: 13. 02. 2017, 00:14:41 »
Java vs .NET, s obojim ma zkusenost od desktopu po webove aplikace:

  • Eclipse, IntelliJ, NetBeans, JDeveloper atd. CONTRA VisualStudio:
    Javista se bude snažit vyhnout zabugovanému Eclipsu a použít velice kvalitní, komerční IDE, Ideu. Ne všechny firmy ji používají a navíc, kromě NetBeans existují ještě exotická IDE typu JDeveloper. V .NETu je vždy jen  jedno IDE, VisualStudio - a to je velice kvalitní.

    Shrnutí: Javista musí znát přinejmenším 2 IDE, Eclipse a Ideu, což je otrava.

  • Spring, Java EE vs ASP.NET:
    Javista musí znát jak Javu EE, tak framework Spring. Nikdy neví, na co z toho narazí. Jedná se o věc, která dělá jedno a totéž. Zastoupení ve firmách je cca 50:50. Programátorovi .NET stačí, když umí ASP.NET.

  • JSF, JSP, Struts, Spring MVC, ThymeLeaf, Angular.js, JakekoliJine.js, Bootstrap vs ASP.NET:
    Javista se jistojistě setká se všemi výše uvedenými technologiemi a dřív či později se je bude muset učit, pokud se je někdo rozhodl dát do projektu. V .NETu mu stačí znát ASP.NET, dokonce nemusí umět ani HTML nebo Angular, protože bude prostě používat .NETí komponenty, které si bude na stránku přetahovat myší ve VisualStudiu. Výsledný HTML s Javascriptem se vygeneruje sám. Ačkoliv obdoba tohoto přístupu je právě JSF, který implementuje řada knihoven (Ano, opět je zde úžasný výběr komponent: PrimeFaces, MyFaces, RuzneJineFaces) nemá zrovna velkou šanci, že tohle na projektu bude mít - záleží, na co měl architekt zrovna chuť a jakou měl náladu, třeba použil nějakou jinou úžasnou technologii.

    Shrnutí: Javista není odstíněn od neustálých změn frontendových technologií, musí jich umět řadu. Ve VisualStudiu  stačí umět klikat myší a přetahovat komponenty na stránku. Pokud si programátor .NET hledá novou práci, s velkou pravděpodobností tam narazí na tu samou architekturu. U Javisty toto nehrozí.

  • Tomcat, Jetty, Glassfish, Wildfly, WebLogic, JBoss atd. vs KurvaProsteToDeploynu
    Javista ktery dela ve Springu bude s nejvetsi pravdepodonosti pouzivat Tomcat nebo Jetty, kdezto Javista EE vyuzije nektery z aplikacnich serveru, existuji ale i pripady deploye Springu na aplikacni server - to kdyz frajeri z projektu odvedle nepouzili na projekt Spring, ale EE, a komunikaci s modulem je treba provest pres aplikacni server. Tezko rict, jak pouzitelen jsou aplkaci servery, ktere jsou zadarmo. Kazdy server se konfiguruje odlisne a ma sva specifika a mouchy. V jedne firme budou mit oblibeny ten, v druhe onen. .NET programator aplikacni server neresi a v podstate ani nemusi vedet, co to je. Jen klikne ve VisualStudiu na run.

  • SVN, GIT, Mercurial vs TeamViewer
    Javista realne musi umet prinejmensim GIT a SVN, nekde ale frajeri pouzivaji Mercurial. Pry je jednodussi. Takze musi Javista umet ovladat GIT, SVN, a ten jednodussi Mercurial. .NETak samozrejme vyuziva VisualStudio vzdy a vsude, proto jako VCS pouzije TeamViewer. Tecka.

  • Desktopové aplikace v Javě a v .NET
    Javista ví, že na desktopové aplikace se hodí Swing, jehož výhoda mimo jiné je multiplatformní nasazení. Java se ale na desktopu nepoužívá a tam, kde se dříve využíval Swing, tj. jako tlustý/tenký klient, už se dnes používá webové rozhraní. Navíc 95% uživatelů počítače používá Windows.
    Programátor .NET tedy, narozdíl od Javisty, může v praxi vyvíjet rovněž desktopové aplikace.

  • Hibernate, EclipseLink, MyBatis, JDBC, Spring JDBC, dalsi co cihaji za rohem VS Entity Framework
    Toto e vycet technologií pro práci s databází, se kterými by měl umět Javista pracovat. Oproti .NETakovi, ktermu staci EF a klasicke sql v .NETu.

  • Srážka se zarputilým Javistou
    Zarputilý Javista bude tvrdit, že tato diverzifikace je vlastne super a ze je strasne fajn a ohromna svoboda, delat jednu a tutez vec X ruznymi zpusoby, zatimco normalni clovek se na nej bude divat s otevrenou pusou.

  • Java pro Android vs Xamarin
    Javista může vyvíjet aplikace pro Android. .NETak muze vyvijet pro vsechny mobilni platformy. Firmy, ktere hledaji Javisty pro vyvoj aplikaci pro Android, jsou dost podezrele. Kazdy alespon trochu znaly vyvojar totiz vi, ze kdyz uz multiplatformni aplikace, tak ne v Jave, ale v Qt.

  • Nabidky prace Java vs .NET
    Pri prohlizeni nabidek prace by se mohlo zdat, ze je to priblizne 50:50. V realu ovsem, pokud nema clovek hlavu jako fotbalovy mic plnou redundantních znalostí technologií, je pro nej na Java platformne pouzitelnych nabidek mene.

  • Oracle vs Microsoft
    Microsoft je zlaticko oproti Oraclu. Ackoliv Oracle ma pod svou spravou vice standardizovanou Javu EE, ktera by se mohla zdat jako kontinent mezi zmeti ruznych malych ostruvku, kvuli hloupe politice Oraclu se Javisti drzi od Javy EE dal - nemaji v Oracle duveru.

  • Civilizovany svet vs Indie
    Java neni jen nejpouzivanejsi platforma na svete, ale zejmena pak v Indii. Pokud chcete byt Javista, budete pracovat nejspise na korporatnich projektech. Korporace maji Indy rady, protoze jsou levni a zajistuji programatorum ze zapadu vzdy dostatek prace. To aby se nedejboze nenudili, protoze udelali nejaky system poradne a on pak nepotrebuje tolik udrzby.

    Je vyhodne, ze kdo chce vyvijet komercne v .NETu, musi za to vzdy platit. Odstini se tim pracovnici z rozvojovych zemi.

  • Java a kroporace
    Obzvlaste korporace maji velice rady Javu. Nemaji ani jinou moznost. Banka na .NETu nepojede. Kdo jeste nevidel, jaky fajnovy vyvoj probiha v korporacich s prumerne placenymi vyvojari, at se da na Javu.


    • Java a typ lidi
      Jen malokdo z tech, kteri se vydaji na drahu programatora, nezkusi behem studii .NET. Mezi Javisty kondenzuji zvlastni lide:
      - Ti, kteri v prubehu studii .NET nezkusili, protoze se moc nezajimaji
      - Ti, kteri v prubehu .NET nezkusili, protoze jsou tak mladi nebo nezkuseni, ze na to jeste nenadesel ani cas
      - Ti, kteri z nejakeho zvlastniho duvodu preferuji korporace a velke korporatni projekty
      - Ti, kteri zkusili .NET, ale zajimaji se o Linux a Open Source a nedelali by v .NETu z presvedceni (napr. ja). Tech je malo.
      - Ti, kteri zkusili .NET, ale kvuli vysokemu stupni IT autismus nerozpoznali rozdil a tak sli delat Javu.


    Zaverem
    Na Javovskou platformu jsem se dal z presvedceni. Mam Javu rad. Bohuzel realita Javy v malych firmach a korporacich mi ukazala svou stinnou stranku. Svet neni idealni a s nim ani vyvojari. Ve svete, kde se lidi nerodi jako programatori ani manazeri, vznika pri vyvoji na teto platforme zbytecna entropie. Neni mozne tvrdit, ze za to tato platforma nemuze. Neni mozne oddelovat to, jak to na svete chodi, od platformy. Jsem presvedcen, ze opravdu dobra firma (vyskrtnete korporace), ktera ma kvalitni vyvojare, dela na Javovske platforme lepsi veci, nez ty v .NETu. Bohuzel pokud jde o mainstream, Java ztraci na tom, kolika ruznymi zpusoby je v ni mozne neco udelat, a nechyta se na .NET, ktery prinasi unifikovane zpusoby navrhu architektury. Je jedno, jestli je programator prumerny nebo nadprumerny, pokud dela v .NETu, pouzije to, co pro nej uz tato platforma nachystala a nema moc zpusobu se odklonit. Ma mensi moc a tudiz toho muze mene zkazit. Zaroven naroky na jeho mozkovou kapacitu jsou mensi, takze se muze soustredit vice na cistejsi kod.

    Pokracovani priste, jdu spat.

Polymath

Re:Java nebo .NET pro budoucí freelancing?
« Odpověď #51 kdy: 13. 02. 2017, 00:49:38 »
za svojim tvrdenim si stojim a plati pre pracu na vacsich projektoch pri viacerych ludoch. mozte hodnotit ci je jazyk dobry pre jednotlivca alebo pre pracu v time na projektoch

javascript napises skoro vsetko a neobedzuje ta... nema pointre ale s tym sa a ni nepocitalo (Ale da sa to obist tak ako to robi asmjs). javascript ale nie je dobry jazyk lebo je prilis volny a clovek s a v nom strati kym nie je ozaj dobry.


tieto jazyky som skusal:
  • java  ma svoje muchy, ide vyvoj pomaly ale rozumne. ma to svoje chyby ale je ich menej ako pri c#. java ma takmer vsetko napisane v jave a nema skryte vlastne veci
  • C# podla mna doplaca na svoj rychly vyvoj, extension metody su zlo, aj ked sa mozu zdat prijemne, linq ma 2 rozne zapisy a tie jeho automaticke ast, var setri cast a znizuje citatelnost, dynamic je sice pekny ale bezny programator len chyby narobi kvoli tomu.
  • visual basic je viac menej mrtvy
  • pascal (delphi) je mrtvy
  • scala sa mi na zaciatku pacila ale teraz je to monstrum s milion roznymi konstruktami (dlhie sa to clovek uci) a riesi rovnaky problem viacerymi pristupmi, ludi v tom robi este pomerne malo a az tolko casu to nesetri.
  • groovy je fajn ale stale dynamicky typovany jazyk  (co ma skor nevyhody pri vacsich projektoch), ale ostal som pri nom pri pomocnom skriptovani kvoli jvm.
  • kotlin, ceylon a xtend su stale velmi okrajove a nezozeniete na to ludi.
  • php ma otrasnu zakladnu kniznicu a jazyk sa pomaly zlepsuje (zacal som s php3 a skoncil niekde pri php 5.1) ale ludia sa v tom snazia riesit vsetko co je chyba
  • ruby je odlisny rovnako silny ako python ale horsie citatelny ale runtime a jeho sprava je des a mam pocit ze konecne ustupuje
  • python je skvely len keby sa vacsina ludi nedrzala na verzii 2.7. skvely a pomalsi a ma nevyhody dynamicky typovanych jazykov (straca sa mi kontext pri citani kodu - o ake objekty ide)
  • clojure som zacal len tearz ale zatial sa mi celkom pozdava aj ked neviem ci sa ludia nepostracaju v tych zatvorkach
  • go chyba mi generics alebo sablony a je tam vela ducktypingu
  • c a c++ prilis vela rezie okolo spravy pamate - vsetko sa dlhsie implementuje
  • erlang a haskell su specificke a nehodia sa na tvorbu velkych biznis aplikacii s velkymi tranzakciami (su navrhnute na ine veci)

vo vysledku bezni programatori robi najlahsie citatelny s dobrym pomerom chyb najlepsie v jave, preto vravim ze je dobry jazyk.
c# je prakticky jediny pouzitelny jazyk v ms svete pre webove. je dobry ale horsi ako java - co sa tyka prace v time na vacsich projektoch (uz tak od 100kloc)
Go nemá ducktyping.

Jinak v seznamu chybí Swift, u toho se na první pohled těžko hledají nevýhody (než člověk odhalí bugy v překladači a knihovně).

n

Re:Java nebo .NET pro budoucí freelancing?
« Odpověď #52 kdy: 13. 02. 2017, 07:07:48 »
go ma jednu obrovskou vadu. bude zabito jako ostatni produkty googlu, az uznaji ze prisel cas.

jpu

Re:Java nebo .NET pro budoucí freelancing?
« Odpověď #53 kdy: 13. 02. 2017, 08:11:13 »
ja osobne odporucam .NET/C#. vsetko je to jeden velky uzavrety ekosystem, kde vsetko krasne do seba zapada. C# a Entity Framework? Nie je problem. C# a ASP.NET bez znalosti dalsich X veci a frameworkov, aby to islo? Opat, nie je problem. Dnes Microsoft razi technologiu Universal Windows Platform. Je to mlada technologia, ale bude ju presadzovat. WPF nema konkurenciu. V podstate WPF je technologia, kde si ako pri jedinej viem predstavit robit aplikacie typu LOB (line-of-business). Casom ho mozno nahradi UWP, aj ked...
Ako spominal anonym. Ste zamestnany v firme, vyuzivate Javu a s nou spojenych X frameworkov. Pridete do inej prace, a tam uz sa fici na niecom inom. Kdezto u C# to je +/- to iste.
Co sa tyka javascriptu, tak podla mna uz vzniklo tolko roznych frameworkov, ktore z tohto nechutneho jazyka vychadzaju. Nehovoriac o nejakej spatnej kompatibilite (Angular1 vs. Angular2). Udrziavat to o par rokov bude sranda a mozno sa zvysi pocet srdcovo-cievnych ochoreni u mladych ludi. Javascript zaziva v dnesnej dobe obrovske booom, pretoze sa vela veci tlaci do webu. Ale drtiva vacsina uzivatelov pouziva windows, cize desktop. Ak potrebuje nejaky soft na svoju pracu, preco mu ho naimplementovat ako webovu aplikaciu, ked sa mi na windowse ponukaju ovela lepsie a jednoduchsie sposoby?

abc

Re:Java nebo .NET pro budoucí freelancing?
« Odpověď #54 kdy: 13. 02. 2017, 08:48:18 »
Pokud uvazujes byt kontraktorem (svarc system) tak stejne musis uvazovat o nejake juniorni pozici a kdyz te nahodou nekde veznou na projekt tak zacnes s Javou nebo  .net, tak v cem je Problem?

Re:Java nebo .NET pro budoucí freelancing?
« Odpověď #55 kdy: 13. 02. 2017, 09:12:44 »
Já myslím, že většina hejtu na JS pramení právě z toho, že si pustí pusu na špacír nějaký dobře známý vývojář a ostatní to pak dál šíří jako svoje zkušenosti.
Mně se naopak JS líbí. Líbí se mi volnost i vlastnosti jazyka. A že vzniká milión nástrojů? To je důkaz, že se ekosystém vyvíjí, protože JS už není pouze záležitost prohlížečů, ale i serverů.

No to musi byt uplne uzasne az clovek dostane 10let starou aplikaci a ma neco predelat nebo ze neco prestalo fungovat s prechodem na novejsi verzi runtime. Ted jsem delal par tydnu na necem takovem v jave. Vetsina knihoven stale existuje a ma nove verze. Staci upgrade. Na nekterych dokonce stejne API.
Napriklad jasper reports 3.5 nefungoval s javou 8. Tak jsem tam dal o 5 let novejsi JDT  compiler (verzi 4.4.2) a ono to fungovalo bez zmeny jedineho radku kodu! Netvrdim, ze by to tak bylo vzdy, ale u js mas jedinou jistotu ze z tech 1m uzasnych veci nebude za deset let pravdepodobne skoro nic udrzovane.

Takze je fajn, ze se JS ekosystem na serveru zlepsuje, ale ja si pockam az bude i trochu ustaleny, do te doby k nam na server js nemuze.

Polymath

Re:Java nebo .NET pro budoucí freelancing?
« Odpověď #56 kdy: 13. 02. 2017, 09:23:10 »
go ma jednu obrovskou vadu. bude zabito jako ostatni produkty googlu, az uznaji ze prisel cas.
To je jedno, když je open source.

Polymath

Re:Java nebo .NET pro budoucí freelancing?
« Odpověď #57 kdy: 13. 02. 2017, 09:25:28 »
ja osobne odporucam .NET/C#. vsetko je to jeden velky uzavrety ekosystem, kde vsetko krasne do seba zapada. C# a Entity Framework? Nie je problem. C# a ASP.NET bez znalosti dalsich X veci a frameworkov, aby to islo? Opat, nie je problem. Dnes Microsoft razi technologiu Universal Windows Platform. Je to mlada technologia, ale bude ju presadzovat. WPF nema konkurenciu. V podstate WPF je technologia, kde si ako pri jedinej viem predstavit robit aplikacie typu LOB (line-of-business). Casom ho mozno nahradi UWP, aj ked...
Ako spominal anonym. Ste zamestnany v firme, vyuzivate Javu a s nou spojenych X frameworkov. Pridete do inej prace, a tam uz sa fici na niecom inom. Kdezto u C# to je +/- to iste.
Co sa tyka javascriptu, tak podla mna uz vzniklo tolko roznych frameworkov, ktore z tohto nechutneho jazyka vychadzaju. Nehovoriac o nejakej spatnej kompatibilite (Angular1 vs. Angular2). Udrziavat to o par rokov bude sranda a mozno sa zvysi pocet srdcovo-cievnych ochoreni u mladych ludi. Javascript zaziva v dnesnej dobe obrovske booom, pretoze sa vela veci tlaci do webu. Ale drtiva vacsina uzivatelov pouziva windows, cize desktop. Ak potrebuje nejaky soft na svoju pracu, preco mu ho naimplementovat ako webovu aplikaciu, ked sa mi na windowse ponukaju ovela lepsie a jednoduchsie sposoby?
Jenže normální lidi mají na serveru Linux.

jpu

Re:Java nebo .NET pro budoucí freelancing?
« Odpověď #58 kdy: 13. 02. 2017, 09:31:19 »
Citace
Jenže normální lidi mají na serveru Linux.
kto je podla vas normalny? a vase tvrdenie nie je cisto pravdive. vela systemov a podnikovych systemov bezi na windows server ;).

Polymath

Re:Java nebo .NET pro budoucí freelancing?
« Odpověď #59 kdy: 13. 02. 2017, 09:55:43 »
Citace
Jenže normální lidi mají na serveru Linux.
kto je podla vas normalny? a vase tvrdenie nie je cisto pravdive. vela systemov a podnikovych systemov bezi na windows server ;).
A jaké to má výhody? Na Linuxu to je levnější a flexibilnější.