• ú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
    LOOCAS
    LOOCAS --- ---
    KEDRIGERN: Díky. Jinak já vim, že je to celkem jednoduchý, jen jsem to zatim nikdy nepsal. Jen opačnej případ - posílání dat přes TCP protokol. :)
    KEDRIGERN
    KEDRIGERN --- ---
    LOOCAS: Jde to nejméně udělat úplně stejně jako když sdílíš data mezi více thready - statické proměnné.

    Přímo event uděláš na konci procedury příjímající data. Vyzkoušej si minimal working example. Metoda listen (pokud si pamatuji, možná je to jiná z těch tří) čeká než jí něco přijde. Pak se teprve začne provádět další běh. V tom dalším běhu bude obslužná rutina a bude to obalené cyklem, abys stále naslouchal.

    Napsat v tom chat je asi na 10 řádek :).
    LOOCAS
    LOOCAS --- ---
    Tak budu muset otravovat ještě jednou. :D

    Jestli jsem to pochopil správně, tak si zinstancuju tu TcpClinet třídu, aby poslouchala na TCP protokolu, na nějakym portu, na localhostu, např.

    Ale obalim jí v, např., BackgroundWorker třídě, aby mi to běželo v separátním threadu.

    Nicméně, jakym způsobem spustim nějakej event, v případě, že ten TcpClient obdrží nějaký data?

    Chci v hostující aplikaci naslouchat na nějakym portu a spouštět příkazy, který přijdou z jiný aplikace externě (v rámci tý samý mašiny).
    LOOCAS
    LOOCAS --- ---
    Mnohokrát díky za nasměrování, pánové.

    Jdu to zkoušet. :)
    TENCOKACISTROMY
    TENCOKACISTROMY --- ---
    LOOCAS: Ty command-line prikazy muzes poustet klidne z IronPythonu.
    U TcPServeru to je jednoduchy - koukni na tridu TcpClient.
    GARFIELD
    GARFIELD --- ---
    LOOCAS:
    TENCOKACISTROMY: gitsharp je mrtvy, lepsi je ngit https://github.com/mono/ngit
    VIRTUALVOID
    VIRTUALVOID --- ---
    tzv. blocking
    VIRTUALVOID
    VIRTUALVOID --- ---
    LOOCAS: tcp server 'posloucha', a caka na connection .. nemusis pollovat kazdych 100ms.
    utfg tcp
    LOOCAS
    LOOCAS --- ---
    Mimochodem, měl bych další dotaz ohledně .NETu.

    V rámci hostující aplikace bych potřeboval vytvořit TCP server, kterej poslouchá na nějakym portu příkazy.

    Jaká je nejlepší cesta tohodle docílit pomocí .NETu?

    Moje naivní představa je ta, že v nějakym separátnim threadu vytvořim server, kterej, řekněme každejch 100ms, bude přijímat data na portu XY, který, když přijme, spustí.

    Je to mylná představa? Existuje něco jednoduchýho, pokud možno light-weight, co by běželo hezky v pozadí a čekalo by na příkazy od jinud?

    Předem díky.
    LOOCAS
    LOOCAS --- ---
    TENCOKACISTROMY: Asi máš recht. Já jsem chtěl jen jednoduchý check-iny a check-outy zautomatizovat ve scriptech, abych právě nemusel volat cmd.

    Ale i tak to neni žádnej zásadní problém. :)
    TENCOKACISTROMY
    TENCOKACISTROMY --- ---
    LOOCAS: GitSharp by mel normalne fungovat s GitHubem. V zasade neni rozdil mezi GitHubem a jinou Git repository.

    Nevim ale v jakym stavu ten GitSharp je. Ja bych se mozna na nejaky API vyprd a sel bych na to pres command-line prikazy.
    LOOCAS
    LOOCAS --- ---
    Ahoj všem. Chci se jen zeptat, existuje nějaká knihovna/assembly, která by zpřístupnila GitHub API C#, resp. IronPythonu?

    Objevil jsem GitSharp, ale nejsem si jistej, jestli to bude umět komunikovat i s GitHubem.

    Předem díky.
    EDISN
    EDISN --- ---
    Díky všem za tipy a názory, je mi jasný že to není na jeden večer, jde mi o základní znalost fukngování, tohoto konkrétního jazyka, jako jsem zatím zvládl v html, nebo basicu ...

    ESY: viz pošta, abych to tu nezatěžoval svou mizernou znalosti :-)
    NECROMAN
    NECROMAN --- ---
    Dotaz, programuje tu uz nekdo pro Windows 8? Je mozne nejak prenest moji zkompilovanou Metro aplikaci na druhy PC a tam ji spustit?
    KEDRIGERN
    KEDRIGERN --- ---
    EDISN: C++ není na večer. Už jen hromada nutných věcí okolo kompilátorů a běhu programu je dost opruz. Také jeho standarty se houpou (C++11 nepodporuje plně snad nikdo). Což jde překousnout. Nejhorší je, že 3th part lib jsou absolutně ošklivé (efektivní, ale ošklivé) - chybí jim objektový návrh či API apod. Což je z historických důvodů.

    Je pravda, že bastlit v C# jde lehko, ale něco v něm umět je ještě těžší než v C++, protože dobrý programátor to ladí i na stejné úrovni (to znamená, že musí znát celou nádstavbu)...
    SHIGORBIRDMAN
    SHIGORBIRDMAN --- ---
    oboji pristup ma neco do sebe... jestli zacit jednodussim a na praci vetsinou efektivnejsim c#, nebo vic low level c++... kde se ale zase naucis (protoze musis), jak to funguje dole...

    javisti obzvlast, ale c# casto taky, nekdy vubec nemaji paru, jak to vlastne ten pocitac pak pocita a pak z toho vznikaji zajimave kody :)
    NECROMAN
    NECROMAN --- ---
    EDISN: zrovna v C++ se jen tak rychle nenaucis - v pointrech a referecich se lehce ztrati kde kdo. Pokud nejsi omezeny platformou, tak bych spise doporucil C# nebo Javu.
    MICTECH
    MICTECH --- ---
    EDISN: Napis neco o tom, co uz umis, co jsi naprogramoval, apod.
    EDISN
    EDISN --- ---
    ESY: Díky za tip, už jsem něco málo četl, ale zatím bez výsledků, tak jsem to chtěl s někým probrat, je to opravdu spíš na to si s někým sednout ukázat atd....
    Kliknutím sem můžete změnit nastavení reklam