• úvod
  • témata
  • události
  • tržiště
  • diskuze
  • nástěnka
  • přihlásit
    registrace
    ztracené heslo?
    TENCOKACISTROMYProgramovani v C#, F# a dalsich jazycich pro .NET, Mono a ostatni CLI implementace
    SAJAGI
    SAJAGI --- ---
    UETOYO: Dá se s Fable rozumně napsat SPA bez javascript knihoven? Mám dost averzi k JS ekosystému plným breaking changes a bez type safety (používám TypeScript, ale type files jsou dost často out of sync :/)
    SAJAGI
    SAJAGI --- ---
    Po jakém stacku (platforma - jazyk - knihovna) byste šáhli pro vývoj webovky s velmi interaktivní klientskou částí (vesměs normální HTML, ne canvas) a možnosti fungování offline? Důraz především na rychlost renderu a odezvě (velké tabulky). A ideálně, abych nemusel datový model používaný pro client-server komunikaci nemusel mít napsaný dvakrát a abych neměl komplikovaný build chain. Napadl mě Bolero / Blazor, ale nemám s nimi žádnou zkušenost a odrazuje mě velikost. Další možnost je třeba Rust (rocket + yew).
    NECROMAN
    NECROMAN --- ---
    Po skoro 6 letech budu teď v prosinci končit v aktuální práci a budu hledat nějaké nové místo.
    Pokud někdo víte o zajímavé pocici pro C#/.NET vývojáře v Praze, dejte mi vědět do pošty, dík :)
    MAIMONIDES
    MAIMONIDES --- ---
    LARS_GUNNER: Tyhle představy, že se někdo naučí pořádně psát bez základů matematiky z několika okruhů jsou samozřejmě častý, ale výslední programátoři podle toho vypadají.
    PJOTRIK
    PJOTRIK --- ---
    Za me na to aby clovek byl remeslne slusny (a tim padem slusne vydelavajici) programator, neni potreba az tak hluboke znalosti. Klidne staci zacit Javascriptem nebo Pythonem, naucit se nejake zaklady algoritmizace, navrhu a knihoven/prostredi ktere pouziva a muze fungovat.
    Mne osobne by to nestacilo, jsem rad ze mam nejake formalni zaklady i znalosti vnitrnosti, ale za nutnost to nepovazuju.
    VITI
    VITI --- ---
    LARS_GUNNER: BTW k tem prvnim dvema bodum - na minulym projektu jsem delal s par mladejma klukama, ted cca 30, hierarchicky vlastne vejs nez ja, prisel jsem do teamu jako posledni ... no a tihle fakt sikovni kluci co umeli spoustu novech hi-end technologii, tak kdyz sme resili import z nejaky banky, tak se zjistilo, ze nikdo nevi co je to to ASCII ;-)
    JANFROG
    JANFROG --- ---
    ICARUS: Jsou dva (dobre) duvody proc je (zejmena dnes) uzitecne vedet, jak pracuje pamet:
    1) vykon
    2) bezpecnost
    Ale mozna jsem jen zatizen svoji profesi...
    LARS_GUNNER
    LARS_GUNNER --- ---
    ICARUS: Asi jsem staromódní. :-)
    ICARUS
    ICARUS --- ---
    LARS_GUNNER: K cemu ti je detailni znalost prace s pameti, kdyz drtiva vetsina programatoru stejne skonci u javascritptu nebo jinyho pythonu, kde o pointer ani nezavadis (a je to jedine dobre). A kdyz uz neco nizkourovnoveho, tak treba rust.
    FONTAN
    FONTAN --- ---
    LARS_GUNNER: jde o vkus, ale body 1 a 2 mi teda rozhodne neprijdou jako obecne dobrej start, pokud explicitne nevis, ze te zajimaji HW veci. (netvrdim, ze treba me by to v takovemhle poradi pred lety nebavilo)
    LARS_GUNNER
    LARS_GUNNER --- ---
    Ikdyž je to debata OT, tak za mě dobrý postup učení programování:
    1.) základní assembler na 8051 nebo jiném starém MCU, jen několik hodin - rozblikat diodu, zapsat paměť, udělat blikající pásek ledek.
    2.) C na nějaké platformě, která je blízko hardware a dokáže spolupracovat např. s USB. Základy práce s fyzickou pamětí.
    3.) Python - algoritmizace ala úlohy v LeetCode.
    4.) OOP a jiná pokročilá metodika.
    5.) Podle zaměření programátora si zvolit sadu knihoven a psát a psát.
    ICARUS
    ICARUS --- ---
    MORIARTY: Uplny zacatecnik potrebuje co nejmene barier a prekazek mezi prazdnym souborem a programem, co vypisuje na konzoli "hello, world". Z tohoto hlediska je python zcela idealni. C++, C# a dalsi jazyky, kde musis nejdriv napsat deset "magickych" radek, kterym vubec nerozumis, jen aby to nejak fungovalo, jsou na nejake uceni naprosty opak, protoze to cloveka akorat odradi. Tim spise, kdyz se do toho tahaji takovy zverstva jako pointery. Za me na zacatek Python.

    Nebo na to jit z druhe strany, nezkusenosti s programovanim naopak vyuzit a naucit se Haskell, ale to je druhy extrem.
    MORIARTY
    MORIARTY --- ---
    Já si tedy nedovedu představit, že bych se znovu učil programovat, ale asi bych začal přímo c++. Ono se to dá naučit a pochopit za pár dní. A to i s pointerama, polema a mallocem. Sice to pak ve vyšších programovacích jazycích člověk nepotřebuje, ale aspoň zjistí, jak to funguje. (a třeba pochopí, jakej je v C# rozdíl mezi List a Array a proč se do Array nedají přidávat pole, jak se mi tu včera vztekal jeden kolega).
    JAACOB
    JAACOB --- ---
    Ja jsem teda taky zastancem toho, aby se clovek naucil psat nejdriv v nejakem strongly typed jazyce, takze bych taky doporucil C# pred Pythonem - aspon v pripade, ze je clovek uplnej novacek. Jop - sice udelas prvni C# hello world zhruba stejne rychle jako si nasadis localhost server v Pythonu, ale furt beru treba C# jako lekce v tanecnich, kde jsi pod dohledem a ma to nejakej system a python spis jako plamenomet - kterej sice dokaze poresit veci rychle, ale moc te nenauci zadne velke kazni (snad krome formatovani kodu) a hlavne muzes hrozne rychle nasekat chyby na mistech, kde o nich poradne ani nevis a muzes se daleko rychleji ztratit... #justmyopinion
    TOOMIX
    TOOMIX --- ---
    OODOOW: python jde psát i ve standardním Visual Studiu (Community, Professional atd.)
    SAJAGI
    SAJAGI --- ---
    OODOOW: Python umí typové anotace a rozumné IDE mají nápovědu i statickou kontrolu (kde to jde); btw. odsazení vs {} je asi otázka vkusu - od doby, co píšu v F#, mě naopak závorky v C# dost ruší (zvlášť na projektech, kde se { dává na samostatnou řádku)
    OODOOW
    OODOOW --- ---
    LARS_GUNNER: Nevím no, psal jsem hodně dlouho v C# a v poslední době jsem zkusil Python, malý projekt stránek ve Flasku a jako jo, vplul jsem do toho rychle, ale nějaký větší věci bych stejně mnohem radši dělal v C#.
    Může to být samozřejmě praxí, ale některý ty věci na Pythonu jako třeba odsazení místo závorek, na který si musíš dávat dost bacha když kopíruješ kód, mě celkem iritovaly. Pak taky teda nevím jestli je na to nějaký lepší IDE než mám já VSCode, ale oproti Visal Studiu od MS je to fakt slabý, co se týče podpory pro psaní kódu.
    Další věc, že se ten program většinou v pohodě pustí s chybou a spadne až když jede, to mi nepřijde pro začátečníka moc user friendly.
    Neskutečný bordel je obávám se právě to, co tam začátečník bude mít, než získá nějaký ty návyky a disciplínu.
    Prostě pro začátečníka mi přijde C# jasnější, proměnné tam mají svůj typ, když strkáš do funkce něco, co tam nepatří, tak tě to hned upozorní. Použití základních knihoven mi taky přijde víc user friendly v C# a Visual Studiu, kde ti to hned nabízí možnosti. Prostě komfort, kterej teda u Pythonu rozhodně nezažívám. Ale jak jsem psal, může to být všecko jenom tím, že jsem na něco prostě zvyklý a z Pythonu mám kulturní šok. :)
    SAJAGI
    SAJAGI --- ---
    SINTAKRA: Jinak ještě re Python vs C# - musíš znát jak jazyk, tak standardní knihovny (Python Standard Library, .NET Framework), build proces, apod. Ne samozřejmě všechno, ale tolik, abys bych schopný v tom reálně něco psát. A v tomhle ohledu mi Python přijde lepší volba - Pythoní knihovna je relativně malá, nemusíš nic kompilovat, můžeš to psát v čemkoliv se ti líbí, má https://jupyter.org/, je to dnes jeden z hlavních jazyků pro ML a práci s daty, apod.

    V .NETu (C# a F#) dělám na fulltime skoro 16 let, v Pythonu 5 let, a přestože jsem k Pythonu osobně nepřilnul, tak ho začátečníkovi můžu vřele doporučit.
    LARS_GUNNER
    LARS_GUNNER --- ---
    OODOOW: Python bys vynechal kvůli čemu? Řeším přesně to samé a do Pythonu jsem se pustil kvůli rychlosti, s jakou jsem do toho po C a C++ vplul. Samozřejmě, povaha toho jazyka dovoluje udělat v kódu neskutečný bordel, ale to už po těch letech považuji za problém disciplíny programátora, ne jazyka. :)
    SAJAGI
    SAJAGI --- ---
    SINTAKRA: Python není vůbec špatná volba co se týká jednoduchosti a pracovního uplatnění.
    Kliknutím sem můžete změnit nastavení reklam