Zobrazit příspěvky

Tato sekce Vám umožňuje zobrazit všechny příspěvky tohoto uživatele. Prosím uvědomte si, že můžete vidět příspěvky pouze z oblastí Vám přístupných.


Příspěvky - eMko

Stran: [1] 2 3 ... 31
1
Vývoj / Re:Aký je váš Java Spring ekosystém?
« kdy: 24. 11. 2018, 18:50:23 »
Znám člověka, co na to píše disertačku...

2
Vývoj / Re:Java 11 změna licence
« kdy: 19. 11. 2018, 14:39:39 »
U nás se u Windows i linux strojů se přejde na OpenJDK (resp. u těch linuxových mašin, kde bylo Oracle JDK).

3
Odkladiště / Re:IBM kupuje RedHat?
« kdy: 29. 10. 2018, 12:57:36 »
Musim skusit, ci ide IDEA na FreeBSD.

IDEA a NetBeans fungují, jen je potřeba zapnout vyhlazování písma.
-Dawt.useSystemAAFontSettings=on -Dswing.aatext=true

Eclipse ... no ... ehm ... pokud to nainstaluješ z portů, tak ano. Ale je tam starší verze a spoustu pluginů nefunguje. S Eclipse RCP aplikacemi je lepší u FBSD nepočítat, je to víc problémů jak užitku.

4
Studium a uplatnění / Re:C# pro linuxového uživatele
« kdy: 10. 10. 2018, 09:08:11 »
Xamarin je rovnak na ohejbak, vysledne aplikacie su pomale a maju obmedzene moznosti. Da sa to pouzit tam, kde to staci.

Podobně jako většina mobilních multiplatformních frameworků.

5
Studium a uplatnění / Re:C# pro linuxového uživatele
« kdy: 10. 10. 2018, 09:03:34 »
Samozrejme chapem ze sa to da ked to microsoft tak prezentuje

Ty tomu Microsoftu hodně věříš :-D . Nebýt Miguela de Icazy (autora Gnome a Mona) a toho, že ho Microsoft nedávno koupil i s jeho firmou, nic by nebylo :-D . Ano, Xamarin podporuje Android, iOS a UWP (který běží i na desktopu, viz např. kalkulačka ve Windows 10 je UWP aplikace). Pro kompilaci aplikace na iOS bohužel potřebuješ Mac desktop/laptop a nainstalované jejich vývojové nástroje. My tu máme build server udělaný tady z té malé vtipné kostky: https://www.apple.com/cz/mac-mini/ . O Linuxu se mluvilo na Microsoft Build konferenci 2017, ale od té doby jsem nezaznamenal posun.

6
Studium a uplatnění / Re:C# pro linuxového uživatele
« kdy: 08. 10. 2018, 17:59:20 »
Po deseti letech v JS mě jen tak něco nerozhodí ;-)

Takže jsi zažil dobu, kdy Mootools, Protoype a jQuery byly super cool nové věci. To potom chápu, že s Tvými zkušenostmi Tě jen tak něco nerozhodí :) .

7
Studium a uplatnění / Re:C# pro linuxového uživatele
« kdy: 08. 10. 2018, 17:13:54 »
Můj názor na 1.5k řádků v C# třídě bych nechal stranou, slušné by to nebylo. Já jsem to nepsal a mám bohužel jiné věci na práci, než to refaktorovat. Za ty roky jsem byl i na projektu, kde si týpek všiml, že Visual Studio (tehdy super nová cool and sexy verze 2010 - první verze postavená na WPF) moc nedává třídy, které mají více, než 50k řádků. Proto vzal třídu a rozdělil ji jako partial class na 3 části po cca 45k řádcích, aby se tam dalo přidávat. :D

Jo, bylo by fajn žít ve světě, kde je čistý kód, vše je zadokumentované, kde Daily Scrum Stand Up Meetings™ netrvají hodinu a půl... bohužel realita dnešních dní není vždy růžová. Prostě do práce se chodí pro prachy a pokud někdo "nemá v pyči", špatně skončí.

Jinak 40k LOC u JavaScriptu? Wow... To bych šel raději zpět do ostravského Tieta nebo jiné korporace, kde dávají pozice architekta za rektální alpinismus spíše než za znalosti a zkušenosti. Fakt, že jeden plugin dokáže zabít VS Code není nic překvapivého stejně jako to, že pro JS projekty se chová jinak než pro C#. Původní otázka byla na .Net pod linuxem, proto jsem napsal zkušenost s těžkopádností a utahaností VS Code pro větší .Net projekty na linuxu.

8
Studium a uplatnění / Re:C# pro linuxového uživatele
« kdy: 08. 10. 2018, 16:25:59 »
........
Zmíněný VS Code je postavený na frameworku Electron, jedná se tedy o embedovaný webový prohlížeč + hromada JavaScriptu (TypeScriptu). Výsledkem je IDE, které je pomalé a těžkopádné na cokoliv většího než školní/domácí projektíky. A ano, je to horší jak Java aplikace jak rychlostí, tak spotřebou paměti :) . Tak a teď se do mě pusťte :-D
.......

je vidět, že jsi nikdy VS Code nikdy nevyzkoušel. Takový dlouhý příspěvek o věcech, které znáš jen z doslechu ....

Můj "doslech" ohledně Javy a C# trvá již 11 let (počítám zaměstnání na plný úvazek, do toho po večerech škola). Sorry, ale osobní útoky od lidí, kteří mají jiný názor, rozhodně neberu.

Na jak velké projekty VS Code používáš? Teď jsem otevřel pracovní projekt, který má (dle statistik ve VS) 35882 řádků (IL) kódu, mix C# a F#. Tedy nic šíleně velkého. Nicméně reakce na otevření souboru, vyhledávání, intellisense, dokonce trvá o 0,5s déle, než se obarví syntaxe nově otevřeného (většího - 1.5k řádků) souboru.

9
Studium a uplatnění / Re:C# pro linuxového uživatele
« kdy: 08. 10. 2018, 16:11:58 »
No rozhodně se s ním nemůže srovnávat v zabraném prostoru na disku. ;)

Jo taky mne to stvalo, ale nesrovnaval jsem to. Vyresil jsem to. Rano jsem objednal vetsi disk a ted uz je mi to jedno :-).

Co mne prudilo pod Windows u VS Code v kontextu C#:

Nase reseni obsahuje moznost dynamicky za behu spoustet a uzivatelsky 'programovat/skriptovat' jednoduche C# skripty. Uzivatel dostal editor, kde si mohl sam 'kodit' pouzitim naseho API. Hledali jsme editor s doplnovanim a prestoze VSCode to pomerne hezky umi, musi se tezkopadne instalovat (a vyzaduje specificke verze .net, registrace, atp.). Nakonec zvitezil Notepad++.

VS Code nevyzaduje .Net, ved je napsany v elektrone.

VS Code samotný ne, některé pluginy pro podporu jazyků ano.

10
Studium a uplatnění / Re:C# pro linuxového uživatele
« kdy: 07. 10. 2018, 10:30:44 »
Java i C# mě už delší dobu živí, tak přidám své €0.02.

Zmíněný VS Code je postavený na frameworku Electron, jedná se tedy o embedovaný webový prohlížeč + hromada JavaScriptu (TypeScriptu). Výsledkem je IDE, které je pomalé a těžkopádné na cokoliv většího než školní/domácí projektíky. A ano, je to horší jak Java aplikace jak rychlostí, tak spotřebou paměti :) . Tak a teď se do mě pusťte :-D . .Net Core je v současnosti zaměřený spíše na tvorbu serverových aplikací - web a REST webové služby. Loni, když jsem se na to díval víc, SOAP to umělo volat, ale ne vytvářet, což je v enterprise sféře problém. Na desktop nebo SOAP je potřeba Mono.

Java má mezi linuxovou komunitou dost špatnou pověst hlavně díky tomu, že desktop aplikace napsaná ve Swingu vypadá ve vyšperkovaném Gnome nebo KDE jako pěst na oko, zpravidla dlouho startuje a působí dost "utahaně" (např. response na stisk tlačítka je delší než u C++ aplikace). Tohle je dáno především tím, že uživatelské rozhraní je nejméně přenositelná část aplikace a linuxových desktop uživatelů je poskrovnu, především v businessu. Pokud někdo píše desktop aplikaci v Javě, obvykle se zaměří na Windows a Mac, Linux nechá stranou - když to běží, tak to běží, OK, kašlat. To samé platí o základní knihovně a celém OpenJDK. V Java světě je běžné mít vývoj na Windows/Mac a aplikační server na linuxu. Tomu odpovídá i to, na co se zaměřují vývojáři OpenJDK. Starty Javy na linuxu taky bude řešit málokdo z vývojářů JDK, narozdíl od Windows nebo Macu.

V linux desktopu dominuje C a C++. Naučit se dobře C++ je mnohem těžší než naučit se dobře Javu či C# a to je zase těžší, než naučit se dobře Python. Skriptovací jazyky jako Python mají výhodu v tom, že se v něm dá kód napsat mnohem rychleji než v ostatních zmíněných. Problém nastává při údržbě a rozvoji něčeho většího. Pokročilé nástroje pro refaktoring kódu, profiling, orientaci ve velkých projektech či dokumentaci/změny základní architektury a testování nejsou ani v PyCharmu, natožpak lightweight IDE či editorech. Budeš mít na svých projektech 20+ lidí a stráví ty projekty 5+ let ve fázi "rozvoj a údržba", jak je běžné v Java/C#/mnohých C++ projektech? Pokud ne, rozhodně bych neměl strach z Pythonu. Python má sice Global Interpreter Lock (běží vždy jen jedno vlákno z procesu; musí se obcházet buď přes multiprocessing knihovnu, která forkne celý interpret nebo přes vlastní C kód), není z nejrychlejších a garbage collector oproti tomu, co je v Javě nebo C#, je výsměch ... ale ... většina Python kódu jenom "lepí" dohromady C/C++ knihovny. Podívej se třeba na NumPy - velmi rychlá numerická knihovna, při jejímž použití máš výpočty podobně rychlé, jak kdybys to napsal všechno v C++. Od GUI frameworků pro Python nelze čekat zázraky, ale vybrat se dá - hlavně pokud Tě nezajímá, jestli Tvoje aplikace potom poběží na Win nebo Mac. Nejoblíbenější webový framework pro Python je Django. Má LTS 2 roky, security 3 - pro enterprise nepoužitelné, pro vlastní projekty by to mohlo stačit. Křivka učení Djanga je úplně někde jinde než Springu nebo MS MVC. A number crunching je v Pythonu také v pohodě díky NumPy. V práci mám kolegy, datové analytiky, kteří používají právě Python a NumPy. Na napsání algoritmů, které vevnitř volají C++ knihovnu a toho kódu navíc není extra moc (ta jejich práce je napsat to správně, ne napsat velké množství kódu), je perfektní.

Pro Python je k dispozici i slušné IDE (PyCharm), byť nedosahuje kvalit IntelliJ nebo Visual Studia. Pro .Net Core je k dispozici Rider, též od JetBrains - sice není zadarmo, ale mnohem lepší volba, než VS Code.

Jinak přechod z C# na Javu (a zpět) není nic hrozného a virtuální mašina Javy na linuxu běží lépe než Mono, které bylo tlačené na Mac a mobily, ostatní platformy přišly trochu zkrátka. .Net Core hodně těží z Mona. Umělé benchmarky sice říkají, že jsou srovnatelné, ale já jako Javista umím napsat benchmark, který dokáže, že Java je 2x rychlejší než C :-P .

Důležité je, co chceš programovat. Jestli jenom malé svoje/školní projekty, které nebudou zahrnovat desktop aplikace (případně uděláš GUI v Electron Frameworku jak VS Code - např. F# plugin je napsaný v F# a běží na pozadí jako REST služba, GUI je TypeScript a embedovaný Chrome) a chceš jít cestou C#, pak .Net Core není špatná volba. Ale jestli nemáš rád MS a Windows, poohlédl bych se po něčem jiném - Java nebo Python. Java je general purpose a hodně oblíbená v enterprise sféře - naučit se používat velká IDE jako Eclipse nebo IDEA případně profilery je běh na dlouhou trať, jsou to profesionální nástroje. Není to záležitost několika dnů. Pokud Tě láká mít vidinu stálého jobu někde v korporaci, Java je cesta. Chceš-li vytvářet menší aplikace s malým počtem kolegů či sám a s krátkým životním cyklem, nechceš spíš zkusit právě Python?

11
Odkladiště / Re:IT firmy v Ostravě - weby
« kdy: 14. 08. 2015, 22:52:15 »
Zkus NetDirect. Není to tak dávno, co tam sháněli programátory tím způsobem, že si pronajali bilboard před Tietem a lákali na plat 50k.

Jinak samozřejmě jobs.cz, google, nebo si zajdi na FEI VŠB a prohlídni si nástěnky.

12
Čtyřvrstvá architektura, rozšiřování jazyka UML pomocí profilů (stereotypy a značené hodnoty).
OCL – vlastnosti, použití – invarianty, pre/postcondition, derivované atributy, dotazovací funkce, iniciální hodnoty.

Jestli jsi z VŠB, tak tyhle matroše asi budeš znát, koluje to tu "po celé generace". Ale něco se z nich vyčíst dá.

http://ulozto.cz/xQXjDPiW/uml-ocl-zip

Ostatní: pokud jsou v těch materiálech chyby, tak mi to prosím sdělte, rád to opravím a předám zpět do oběhu. Ale komentářů na téma jaké to jsou kokotiny nebo pyčoviny se prosím zdržte, udělal jsem si na to názor sám hned 2x - poprvé, když jsem se to učil zkoušku a podruhé když jsem se to učil na státnice. Můj názor se možná nebude shodovat s vaším a nepřesvědčíte mě o opaku.

13
Vývoj / Re:Rychly vyvoj GUI app
« kdy: 06. 08. 2015, 20:51:45 »
Jak se ve Swingu (WPF, Qt, čemkoliv jiným) rychle zobrazuje 10 000 řádků uživateli? Jednoduše - nezobrazují se! (A to ani ve FoxPro.)

Je potřeba vykreslit na obrazovku akorát to, co je vidět, což může být 50 až 100 řádků max, což je většinou velmi rychle. Při posunutí scrollbaru se prvky překreslí a opět se vykresluje pouze to, co je zrovna vidět. Data jsou většinou načtena v paměti, pokud je jí dost. Stejný trik "co není vidět, tím se nezabývám" se používá všude, včetně 3D stříleček.

Jak konkrétně to udělat záleží na mnoha faktorech a sorry, nelze to jednoduše a krátce napsat do fóra. Zapátrej v dokumentaci. Obecně existují buď virtualizované panely (virtualized panes nebo virtualized panels) kde se o vykreslení budeš starat sám nebo kontejnery, které znovupoužívají již vytvořené/vykreslené komponenty - ty již pro Swing nějaké existují. Pokud nenajdeš nic vhodného ve Swingu jako takovém, zkus zapátrat v NetBeans Platform.

Rozdíl také může udělat hardware akcelerace - u některých virtuálních mašin je ve výchozím nastavení pro Swing vyplá.

Pokud výše napsané je neprůchozí (moc práce/málo znalostí), tak co takhle udělat UIčko jinak? 10 000 řádků uživatel stejně ručně procházet nikdy nebude a když zákazník zatvrzele bude tvrdit že jo, tak co takhle udělat stránkování podobně jak na webu? Swing umí pracovat s vrstvami/překryvy, takže při načítání se dá udělat i takové to hnusné poloprůhledné nasrávací AJAX kolečko.

Nativní kód se mi vždy volal líp z .Netu přes P/INVOKE než z Javy přes JNA (JNI jsem nikdy nezkusil ;-) ), ale dá se to. Otázka, je to fakt nutné? Kompilovat a distribuovat binárky pro všechny platformy + zvlášť 32/64bit verze je trochu opruz, většinou je lepší se tomu vyhnout.

14
Odkladiště / Re:Je Windows phone mrtvý?
« kdy: 16. 07. 2015, 09:10:54 »
Hlavne to smeruje k tomu, ze vse bude synchronizovano s pc. Na mobilu rozepises mail a na pc ho dopises (priklad).

[...]

Se mi libi, ze ten system pomlouvaj lide, kteri to nemeli ani v ruce a nebo nejakou historockou verzi :-)

Já si například velmi cením toho, že zmíněná fíčůra je horkou novinkou ve Win 10 - ostatní systémy takto fungují již nějakou dobu a bez ní by byl systém hůře prodejný. Naopak nemohu ocenit lidi, kteří opakují větu z kampaně Microsoftu o nějaké nové vlastnosti, kterou konkurence má již dlouho a považuje ji za samozřejmou.

15
Odkladiště / Re:Je Windows phone mrtvý?
« kdy: 15. 07. 2015, 16:15:29 »
A cenu za trolla roku vyhrává

...

chvilka napětí

...

pupi1!

Neříkám, že android není shit. Jako vlastník telefonu s Androidem si myslím, že v některých ohledech ano. Narážím na informativní hodnotu příspěvku, která mi připomíná pětileté děti na pískovišti, jak se každé snaží to druhé umlátit argumenty. Malé argumenty jsou lopatičky a velké argumenty jsou v takových hádkách kyblíčky naplněné pískem. Pokud tady Tvůj příspěvek rozpoutá flame (na což je toto fórum extrémně háklivé díky nezájmu a nepráci moderátorů), výsledek bude naprosto stejný jako výsledek takových hádek.

Stran: [1] 2 3 ... 31