abclinuxu.cz AbcLinuxu.cz itbiz.cz ITBiz.cz HDmag.cz HDmag.cz abcprace.cz AbcPráce.cz
AbcLinuxu hledá autory!
Inzerujte na AbcPráce.cz od 950 Kč
Rozšířené hledání
×
    dnes 02:33 | Komunita

    V Amsterdamu probíhá Blender Conference 2025. Videozáznamy přednášek lze zhlédnout na YouTube. V úvodní keynote Ton Roosendaal oznámil, že k 1. lednu 2026 skončí jako chairman a CEO Blender Foundation. Tyto role převezme současný COO Blender Foundation Francesco Siddi.

    Ladislav Hagara | Komentářů: 0
    dnes 02:22 | Zajímavý článek

    The Document Foundation, organizace zastřešující projekt LibreOffice a další aktivity, zveřejnila výroční zprávu za rok 2024.

    ZCR | Komentářů: 0
    včera 17:33 | Nová verze

    Byla vydána nová stabilní verze 7.6 webového prohlížeče Vivaldi (Wikipedie). Postavena je na Chromiu 140. Přehled novinek i s náhledy v příspěvku na blogu.

    Ladislav Hagara | Komentářů: 0
    včera 16:22 | Nová verze

    Byla vydána verze 1.90.0 programovacího jazyka Rust (Wikipedie). Podrobnosti v poznámkách k vydání. Vyzkoušet Rust lze například na stránce Rust by Example.

    Ladislav Hagara | Komentářů: 0
    včera 16:11 | Nová verze

    GNUnet (Wikipedie) byl vydán v nové major verzi 0.25.0. Jedná se o framework pro decentralizované peer-to-peer síťování, na kterém je postavena řada aplikací.

    Ladislav Hagara | Komentářů: 0
    včera 12:11 | Nová verze

    Byla vydána nová major verze 7.0 živé linuxové distribuce Tails (The Amnesic Incognito Live System), jež klade důraz na ochranu soukromí uživatelů a anonymitu. Nově je postavena je na Debianu 13 (Trixie) a GNOME 48 (Bengaluru). Další novinky v příslušném seznamu.

    Ladislav Hagara | Komentářů: 0
    včera 04:44 | IT novinky

    Společnost Meta na dvoudenní konferenci Meta Connect 2025 představuje své novinky. První den byly představeny nové AI brýle: Ray-Ban Meta (Gen 2), sportovní Oakley Meta Vanguard a především Meta Ray-Ban Display s integrovaným displejem a EMG náramkem pro ovládání.

    Ladislav Hagara | Komentářů: 0
    včera 01:11 | Nová verze

    Po půl roce vývoje od vydání verze 48 bylo vydáno GNOME 49 s kódovým názvem Brescia (Mastodon). S přehrávačem videí Showtime místo Totemu a prohlížečem dokumentů Papers místo Evince. Podrobný přehled novinek i s náhledy v poznámkách k vydání a v novinkách pro vývojáře.

    Ladislav Hagara | Komentářů: 11
    17.9. 16:22 | Nová verze

    Open source softwarový stack ROCm (Wikipedie) pro vývoj AI a HPC na GPU od AMD byl vydán ve verzi 7.0.0. Přidána byla podpora AMD Instinct MI355X a MI350X.

    Ladislav Hagara | Komentářů: 0
    17.9. 15:22 | Nová verze

    Byla vydána nová verze 258 správce systému a služeb systemd (GitHub).

    Ladislav Hagara | Komentářů: 6
    Jaké řešení používáte k vývoji / práci?
     (39%)
     (55%)
     (6%)
     (9%)
     (12%)
     (9%)
     (12%)
     (9%)
     (15%)
    Celkem 33 hlasů
     Komentářů: 5, poslední včera 22:30
    Rozcestník

    Administrace komentářů

    Jste na stránce určené pro řešení chyb a problémů týkajících se diskusí a komentářů. Můžete zde našim administrátorům reportovat špatně zařazenou či duplicitní diskusi, vulgární či osočující příspěvek a podobně. Děkujeme vám za vaši pomoc, více očí více vidí, společně můžeme udržet vysokou kvalitu AbcLinuxu.cz.

    Příspěvek
    31.10.2012 14:51 tomes.io | skóre: 12 | blog: tomesh
    Rozbalit Rozbalit vše Shell interface pro komunikaci client-server v Pythonu
    Ahoj,

    dostali jsme ve skole ukol napsat interface pro komunikaci client -server. Tento interface je volan z jine ho souboru. ma z ukol (aspon jak jsem to pochopil) nacist vstup od uzivatele jako klient, ten poslat serveru, ktery vraci zpravu.

    Dostali jsme na to nasledujici sablonu:
    #!/usr/bin/python
    
    #http://www.networksorcery.com/enp/protocol/irc.htm
    import re
    import socket
    import getpass
    
    class IRCBotInterface(object):
        """Generic interface for working with IRC messages."""
    
        def read(self):
            raise NotImplemented
    
        def write(self, msg):
            raise NotImplemented
    
        def open(self):
            raise NotImplemented
    
        def close(self):
            raise NotImplemented
    
    
    class IRCBotShellInterface(IRCBotInterface):
    
        def __init__(self):
            pass
    
        def read(self):
            return raw_input("> ")
    
        def write(self, msg):
            print msg
    
        def open(self):
            pass
    
        def close(self):
            pass
    
    
    class IRCBotTelnetInterface(IRCBotInterface):
        def __init__(self, address = None, port = 8080):
            self._timeout = 60 * 10
            self._listen = None
            self._sfile = None
            self._socket = None
    
            self._addr = address
            self._port = port
    
        def client(self):
            return self._sfile
    
        def disconnected(self):
            self._socket = None
            self._sfile = None
    
        def read(self):
            pass
    
        def write(self, msg):
            pass
    
        def open(self):
            pass
    
            if self._listen == None:
                raise Exception("No valid address found")
    
        def close(self):
            pass
     
    if __name__ == "__main__":
        x = IRCBotTelnetInterface("::1", 8082)
        x.open()
    
        while True:
            data = x.read()
            if data == "":
                break
    
            print "Received:", data
            x.write(data)
    Se samotnym sitovym programovanim az takovy problem nemam, ale moc nechapu jak naimplementovat to rozhrani pro komunikaci (shell).

    Nevim, k cemu jsou zapotrebi dve tridy IRCBotInterface(object) a IRCBotShellInterface(IRCBotInterface). Je mi jasny, ze IRCBotShellInterface(IRCBotInterface) dedi predchozi tridu IRCBotInterface, jennevim proc.Premyslim, v cem se maji jejich metody lisit. Nejsem zbehly v OOP, vlastne zacinam, takze mi asi neco podstatnyho nedochazi. Ma snad prvni trida byt I/O rozhrani a druha trida rozhrani pro komunikaci se servrem? Ale co potom fce open a close?

    As jsem spravne pochopil, ze perace otevreni socketu ma delat fce open. V cem se maji v jednotlivych tridach ale lisit?

    Mohl bych pozadat o nejake nakopnuti? Vubec nevim, od ceho se mam odpichnout.

    Moc instrukci jsme k ukolu nedostali a me moc nedochazi, jakym zpusobem to rozhrani ma fungovat.

    V tomto formuláři můžete formulovat svou stížnost ohledně příspěvku. Nejprve vyberte typ akce, kterou navrhujete provést s diskusí či příspěvkem. Potom do textového pole napište důvody, proč by měli admini provést vaši žádost, problém nemusí být patrný na první pohled. Odkaz na příspěvek bude přidán automaticky.

    Vaše jméno
    Váš email
    Typ požadavku
    Slovní popis
    ISSN 1214-1267   www.czech-server.cz
    © 1999-2015 Nitemedia s. r. o. Všechna práva vyhrazena.