• ú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
    ZBYNEK
    ZBYNEK --- ---
    LARS_GUNNER: Podle určení volíme jazyk, něco máme v C#, něco máme v PHP. Oboje má své výhody i nevýhody...
    KEDRIGERN
    KEDRIGERN --- ---
    P19: To sice jsou, ale pokud si je udržuješ v oddělení o 2 stálých lidech, tak nechceš 5 jazyků (a s nimi příslušné ekosystémy). Na druhou stranu některé jazyky asi vhodné nebudou (přilišná bariera ve znalostech, přilišná těžkotonážnost). Čili mně ta otázka smysl dává.
    P19
    P19 --- ---
    LARS_GUNNER: A nejsou microservices právě o tom, že jsou navzájem language agnostic, takže každá může být v úplně jiným jazyce a je to tudíž docela jedno? Nebo co speciálního by měl mít jazyk pro microservice?
    LARS_GUNNER
    LARS_GUNNER --- ---
    Pouzivate nekdo C# pro microservices? Volime jazyk a jsme neustale vepri.
    RORSCHACH
    RORSCHACH --- ---
    INTER_MAN: Jo, díky. To vypadá nadějně. Píše mi to teda během publishe, že to nepodporuje Compute Module 4, ale to snad bude otázka změny pár řádků kódu v tom extension, ten CM4 by měl být identickej jako Pi 4.

    URZA: Problém není udělat jednotlivý ty kroky (build, publish, debug) jednotlivě, ale udělat je najednou a automaticky. Snad to řeší to co posílal INTER_MAN, zkusím si s tím trochu pohrát a dám vědět.
    URZA
    URZA --- ---
    RORSCHACH: případně

    How to remotely debug DotNet Core on Linux with Visual Studio(Windows) | by Zoe YT Chen | Medium
    https://medium.com/@zoegroes/how-to-remotely-debug-dotnet-core-on-linux-with-visual-studio-windows-539080c2483c
    URZA
    URZA --- ---
    RORSCHACH: Toby to nepomohlo?
    Debug .NET apps in Linux using WSL - Visual Studio (Windows) | Microsoft Docs
    https://docs.microsoft.com/en-us/visualstudio/debugger/debug-dotnet-core-in-wsl-2?view=vs-2019
    INTER_MAN
    INTER_MAN --- ---
    RORSCHACH: https://marketplace.visualstudio.com/items?itemName=neonFORGE-LLC.RaspberryDebugger - nezkoušel jsem, ale vypadá to nadějně.
    NOHOUS
    NOHOUS --- ---
    RORSCHACH: tvl to je solidni abuse :-D
    RORSCHACH
    RORSCHACH --- ---
    CERMI_FOX: Asi jsem špatně vysvětlil, co hledám. Já nemám problém to na tom Linuxu buildnout nebo spustit. Problém je to udělat nějak pohodlně přímo z Visual Studia. Prostě chci programovat v pohodlí Windows, ale spouštět to na Linuxu, kde mám na GPIO připojený hardware, který v tom .NETu ovládám. V C++ projektu to Visual Studio udělá všechno za mě. Stačí dát debug a všechno se stane automaticky na Linuxu (nahrajou se tam zdrojáky, buildnou se, spustí se ten projekt a připojí se k němu debugger, viz. obrázek). Pro .NET tuhle možnost nikde nevidím, což mi přijde docela divný. Čekal jsem, že situace bude lepší než u C++, když Microsoft .NET na Linuxu tak tlačí :)

    CERMI_FOX
    CERMI_FOX --- ---
    RORSCHACH: pokud máš .net core, tak nic takového není třeba - při publishi si jde zvolit, jestli appka má být platform independent (tedy poběží na libovolném z podporovaných. raspi není problém, používám) nebo jestli se má publishnout přímo pro danou platformu.
    Debugger jsem nezkoušel, nicméně zjevně to jde přes ssh https://docs.microsoft.com/en-us/visualstudio/debugger/remote-debugging-dotnet-core-linux-with-ssh?view=vs-2019

    Pokud jsi nucen jet na "klasika" .NET Frameworku, tak je to horší, ten ofiko na Linuxu nejede vůbec, existuje port Mono (sežere stejné binárky jako pro Windows, takže není potřeba speciální kompilace), ale bylo to takové smutné.
    RORSCHACH
    RORSCHACH --- ---
    Programujete někdo v C#/.NET pro Linux a zároveň používáte Visual Studio na Windows? V C++ projektu se dá nastavit remote build machine, na kterou Visual Studio nahraje zdrojáky, buildne to tam, spustí a připojí debugger. Jde něco takového nastavit i pro .NET projekt? Zkoušel jsem to hledat a všechny výsledky co jsem dostal, jsou k tomu C++ nebo k Visual Studio Code. Tak nevím jestli špatně hledám nebo jestli to v .NETu prostě nejde.

    (mám Raspberry Pi s Linuxem a k němu mám připojený hardware, který ovládám z .NETu, proto na to jdu takto složitě)
    ALCATOR
    ALCATOR --- ---
    OK, díky.
    OODOOW
    OODOOW --- ---
    ALCATOR: Na tohle používám puppeteer nebo teď novější playwright dá se s tím nasimulovat skoro cokoli.
    SUK
    SUK --- ---
    ALCATOR: Vzhledem k tematu hadam, ze by asi mohl byt OK SimpleBrowser
    SUK
    SUK --- ---
    ALCATOR: Selenium nebo puppeteer?
    ALCATOR
    ALCATOR --- ---
    Trošku mimo téma, ale třeba mě nasměrujete:

    Potřebuju několik tisíckrát zopakovat akci v browseru typu "Jdi na stránku X" (ta je pokaždé stejná), "Najdi první odkaz za textem ABCD", "Klikni na tento odkaz (ať už zní jakkoliv)" atp. Je nějaký vhodný plugin, který by mi umožnil něco takového nahrát/naklikat jako makro a pak to spustit s pár tisíc opakováními (a nezbytnými pár sekundovými pauzami mezi tím)?
    CERMI_FOX
    CERMI_FOX --- ---
    EMBI: koukal, podle toho jsem dottrace nastavil.
    Co mi přinese ruční IAsyncStateMachine? Já vím, o který await (v mém kódu) jde, to jsem si našel stopwatchem, nicméně za tím awaitem je skrývá spousta 3rd party kódu, kde se pracuje se sítí, a vzniká tam spousta tasků; zajímá mě právě pohled dovnitř.
    ANTS jsem zkoušel, ale padá mi na různé velmi deskriptivní chyby jako E_FAIL nebo obecnější "failed".
    EMBI
    EMBI --- ---
    CERMI_FOX: Koukal jsi na https://www.jetbrains.com/help/profiler/Analyzing_Async_Calls.html ? Co prepsat async/await na IAsyncStateMachine (tj. bez klicovych slov) a pak zkusit profiler?

    Redgate profiler ma 14 denni free trial https://www.red-gate.com/products/dotnet-development/ants-performance-profiler/
    Kliknutím sem můžete změnit nastavení reklam