Java nebo .NET pro budoucí freelancing?

mon

Re:Java nebo .NET pro budoucí freelancing?
« Odpověď #90 kdy: 15. 02. 2017, 11:09:06 »

To je přesně ten problém. Programátor nikdy nemá psát kód bez přemýšlení. Takže jsem rád, že nejsem senior podle vaší definice, ale přesně sedí s tím, co se považuje za seniora normálně. Se pak nedivte, že jim stačí tak málo, když vlastně jen chrlí starý kód.

uz som sa zlakol, ze si zabudol na tuto komunikaciu a nesklamal si, krasne si to vytrhol z kontextu :) hned je den krajsi


noef

  • *****
  • 897
    • Zobrazit profil
    • E-mail
Re:Java nebo .NET pro budoucí freelancing?
« Odpověď #91 kdy: 15. 02. 2017, 11:10:59 »
Go me prisel jako jazyk dost na nic. Neuveritelne ukecany, chybejici zcela zakladni veci (treba generika, lidi to ochcavaji jakousi formou dynamickeho typovani nebo jak), podle tvurcu doslova vytvoreny pro zacatecniky a jako hlavni vyhody uvadeji, ze se cely jazyk clovek rychle nauci. Nechapu, proc to uvadeji jako kladnou vlastnost. Naucit se jazyk klidne at trva par mesicu (Haskell?), ale at ten jazyk za neco stoji - ma dobrou syntaxi, umoznuje psat/pouzivat opravdu vysoke abstrakce atp. To, ze se brainfuck naucim za minutu z neho nedela genialni jazyk, ktery muzu zacit vsude pouzivat...

http://nomad.so/2015/03/why-gos-design-is-a-disservice-to-intelligent-programmers/

Nevim, treba mi neco unika - spise jsem o nem cetl, nez ze bych v nem neco psal, ale nevidim zadne vlastnosti, kvuli kterym bych se ho mel ucit, nevidim nic, cim by me cokoliv ulehcil (napr. oproti mym go-to jazykum - Haskell, Scala).

Polymath

Re:Java nebo .NET pro budoucí freelancing?
« Odpověď #92 kdy: 15. 02. 2017, 11:49:14 »
Go me prisel jako jazyk dost na nic. Neuveritelne ukecany, chybejici zcela zakladni veci (treba generika, lidi to ochcavaji jakousi formou dynamickeho typovani nebo jak), podle tvurcu doslova vytvoreny pro zacatecniky a jako hlavni vyhody uvadeji, ze se cely jazyk clovek rychle nauci. Nechapu, proc to uvadeji jako kladnou vlastnost. Naucit se jazyk klidne at trva par mesicu (Haskell?), ale at ten jazyk za neco stoji - ma dobrou syntaxi, umoznuje psat/pouzivat opravdu vysoke abstrakce atp. To, ze se brainfuck naucim za minutu z neho nedela genialni jazyk, ktery muzu zacit vsude pouzivat...

http://nomad.so/2015/03/why-gos-design-is-a-disservice-to-intelligent-programmers/

Nevim, treba mi neco unika - spise jsem o nem cetl, nez ze bych v nem neco psal, ale nevidim zadne vlastnosti, kvuli kterym bych se ho mel ucit, nevidim nic, cim by me cokoliv ulehcil (napr. oproti mym go-to jazykum - Haskell, Scala).
Go se zaměřuje převážně na jednu oblast - systems programming, a podle toho taky vypadá. Je nativně komplikované, rychlé (hodně), má pekelně efektivní GC, jednoduchou kroskompilaci, zabudovaný asembler atd. Generika má u kolekcí. Nijak zvlášť ukecaný není, aspoň oproti Javě. Nehodí se ovšem na GUI nebo mobilní aplikace. Pro backendy je ovšem ideální. FP (Haskell) je samozřejmě co do abstrakce na úplně jiné úrovni, haskellistovi se Go určitě líbit nebude, protože klade důraz na pragmatičnost, ne akademickou čistotu. Osobně tíhnu obecně k matematicky "čistým" jazykům, čili FP jako paradigma používám všude, kde to má smysl, nicméně i Go má svou oblast, kde je nejvhodnější. V ideálním světě bychom ve všech případech používali Swift (téměř dokonalé FP, vysoká efektivnost, bezpečnost), třeba se jednou dočkáme kvalitní podpory i na Linuxu a Windows, ten čas ale ještě nenastal...

anonym

Re:Java nebo .NET pro budoucí freelancing?
« Odpověď #93 kdy: 15. 02. 2017, 12:06:27 »
Nevim proc se porad kazdy tak moc zameruje na jazyk samotny. Dulezitejsi nez jazyk je ekosystém kolem toho. Vytvořit Go proto, že C++ a Java jsou moc složité, to je opravdu inteligence... V Javovském a v C++ světě chybí především unifikace, to je, proč jsou ty platformy složité. A proto se někdo rozhodne vytvořit další věc, další z 100000, kolem které by se měl utvořit znovu nějaký ekosystém. Koho až tak zajímá jazyk. Můžu psát jednoduše i v C++, nemusím používat jeho výdobytky, budu se držet jen několika zásad a jedu. Místo Go měli poskládat nějaký pořádný framework nad C++, který by použival GC a uměl by checkovat dodržování pravidel jako Sonar v Javě.

Jasně, do korporace je C++ nepoužitelné, protože by tam v tom místní prasili ještě víc než v Javě. A kdyby to dali na starost Indům, tak by vznikl gordonský uzel 21. století, o kterém by se za 100 let psalo v dejepisnych knizkach a kod by byl vystaven v muzeu.

Polymath

Re:Java nebo .NET pro budoucí freelancing?
« Odpověď #94 kdy: 15. 02. 2017, 12:15:01 »
Nevim proc se porad kazdy tak moc zameruje na jazyk samotny. Dulezitejsi nez jazyk je ekosystém kolem toho. Vytvořit Go proto, že C++ a Java jsou moc složité, to je opravdu inteligence... V Javovském a v C++ světě chybí především unifikace, to je, proč jsou ty platformy složité. A proto se někdo rozhodne vytvořit další věc, další z 100000, kolem které by se měl utvořit znovu nějaký ekosystém. Koho až tak zajímá jazyk. Můžu psát jednoduše i v C++, nemusím používat jeho výdobytky, budu se držet jen několika zásad a jedu. Místo Go měli poskládat nějaký pořádný framework nad C++, který by použival GC a uměl by checkovat dodržování pravidel jako Sonar v Javě.

Jasně, do korporace je C++ nepoužitelné, protože by tam v tom místní prasili ještě víc než v Javě. A kdyby to dali na starost Indům, tak by vznikl gordonský uzel 21. století, o kterém by se za 100 let psalo v dejepisnych knizkach a kod by byl vystaven v muzeu.
Go je v podstatě něco jako C(++) spojené s GCD. Nakonec ovšem stejně převáží Swift, tomu z pohledu použitelnosti nic nechybí, jen prozatím přebývá (bugy ve standardní knihovně).


lopata

Re:Java nebo .NET pro budoucí freelancing?
« Odpověď #95 kdy: 15. 02. 2017, 12:41:37 »
Nakonec ovšem stejně převáží Swift, tomu z pohledu použitelnosti nic nechybí

Swiftu trochu chybí použitelný compiler: https://www.cocoawithlove.com/blog/2016/07/12/type-checker-issues.html

Polymath

Re:Java nebo .NET pro budoucí freelancing?
« Odpověď #96 kdy: 15. 02. 2017, 12:57:07 »
Nakonec ovšem stejně převáží Swift, tomu z pohledu použitelnosti nic nechybí

Swiftu trochu chybí použitelný compiler: https://www.cocoawithlove.com/blog/2016/07/12/type-checker-issues.html
Na to jsem taky párkrát narazil, ale pokud se nepletu, je to už opraveno. Navíc to byl problém špatně napsaného kódu ze strany vývojáře, překladač akorát generoval debilní chybovou hlášku. Nicméně už to je věc minulosti.

Když už jsme u toho, generika by mohla být expresivnější, ale zas na druhou stranu už i tak jsou nejlepší mezi mainstreamovými jazyky, takže to není tak horké.

lopata

Re:Java nebo .NET pro budoucí freelancing?
« Odpověď #97 kdy: 15. 02. 2017, 13:11:18 »
Na to jsem taky párkrát narazil, ale pokud se nepletu, je to už opraveno. Navíc to byl problém špatně napsaného kódu ze strany vývojáře, překladač akorát generoval debilní chybovou hlášku. Nicméně už to je věc minulosti.

To není problém špatně napsaného kódu, ale exponenciální časové složitosti type checkeru Swiftu. Vyzkoušej:
Kód: [Vybrat]
let a = String(1) + String(2) + String(3) + String(4)
print(a)
Ve Swiftu 3 se to nezkompiluje, nebo to trvá ukrutně dlouho. Nemám po ruce Swift compiler, ale tady jim to timeoutne: https://iswift.org/playground

Polymath

Re:Java nebo .NET pro budoucí freelancing?
« Odpověď #98 kdy: 15. 02. 2017, 13:18:21 »
Na to jsem taky párkrát narazil, ale pokud se nepletu, je to už opraveno. Navíc to byl problém špatně napsaného kódu ze strany vývojáře, překladač akorát generoval debilní chybovou hlášku. Nicméně už to je věc minulosti.

To není problém špatně napsaného kódu, ale exponenciální časové složitosti type checkeru Swiftu. Vyzkoušej:
Kód: [Vybrat]
let a = String(1) + String(2) + String(3) + String(4)
print(a)
Ve Swiftu 3 se to nezkompiluje, nebo to trvá ukrutně dlouho. Nemám po ruce Swift compiler, ale tady jim to timeoutne: https://iswift.org/playground
V Xcode v pohodě, jak píšu, dávno opraveno. Nějaké jiné výtky ke Swiftu?

lopata

Re:Java nebo .NET pro budoucí freelancing?
« Odpověď #99 kdy: 15. 02. 2017, 13:19:40 »
V Xcode v pohodě, jak píšu, dávno opraveno. Nějaké jiné výtky ke Swiftu?

Jaká verze Swiftu a jak dlouho se to kompiluje?

Polymath

Re:Java nebo .NET pro budoucí freelancing?
« Odpověď #100 kdy: 15. 02. 2017, 13:21:24 »
V Xcode v pohodě, jak píšu, dávno opraveno. Nějaké jiné výtky ke Swiftu?

Jaká verze Swiftu a jak dlouho se to kompiluje?
Nejnovější. Kompiluje okamžitě.

lopata

Re:Java nebo .NET pro budoucí freelancing?
« Odpověď #101 kdy: 15. 02. 2017, 13:22:47 »
Nejnovější. Kompiluje okamžitě.

Nejnovější je co, nějaká beta? Okamžitě je kolik? Promiň, ale nedáváš dost informací...

Polymath

Re:Java nebo .NET pro budoucí freelancing?
« Odpověď #102 kdy: 15. 02. 2017, 13:30:05 »
Nejnovější. Kompiluje okamžitě.

Nejnovější je co, nějaká beta? Okamžitě je kolik? Promiň, ale nedáváš dost informací...
Ne beta, Xcode 3.2.1, což má myslím Swift 3.0.2. Okamžitě znamená nepostřehnutelně, hned linkuje, takže řekněme pod 0,1 s. Ten popsaný problém prostě (už?) neexistuje.

Polymath

Re:Java nebo .NET pro budoucí freelancing?
« Odpověď #103 kdy: 15. 02. 2017, 13:34:54 »
Nejnovější. Kompiluje okamžitě.

Nejnovější je co, nějaká beta? Okamžitě je kolik? Promiň, ale nedáváš dost informací...
Ne beta, Xcode 3.2.1, což má myslím Swift 3.0.2. Okamžitě znamená nepostřehnutelně, hned linkuje, takže řekněme pod 0,1 s. Ten popsaný problém prostě (už?) neexistuje.
8.2.1

Polymath

Re:Java nebo .NET pro budoucí freelancing?
« Odpověď #104 kdy: 15. 02. 2017, 13:54:55 »
Na to jsem taky párkrát narazil, ale pokud se nepletu, je to už opraveno. Navíc to byl problém špatně napsaného kódu ze strany vývojáře, překladač akorát generoval debilní chybovou hlášku. Nicméně už to je věc minulosti.

To není problém špatně napsaného kódu, ale exponenciální časové složitosti type checkeru Swiftu. Vyzkoušej:
Kód: [Vybrat]
let a = String(1) + String(2) + String(3) + String(4)
print(a)
Ve Swiftu 3 se to nezkompiluje, nebo to trvá ukrutně dlouho. Nemám po ruce Swift compiler, ale tady jim to timeoutne: https://iswift.org/playground
Tyhle fámy jsou už unavující, nedávno tu nějaký pako psalo, že Swift nemá výjimky. Swift 1 je před lety neměl, nicméně už pár let tam jsou. Tak nevím, jsou lidi idioti, nebo jen provokují (řečnická otázka)?