Programozási technológia 2.
|
|
- Adél Tamásné
- 6 évvel ezelőtt
- Látták:
Átírás
1 Programozási technológia 2. Dr. Szendrei Rudolf ELTE Informatikai Kar 2018.
2 PacMan Készítsünk egy szellem mentes két személyes PacMan játékot Ha a játékosok PacMan-jei mindent megettek, a játék újraindul Alkalmazzunk MV architektúrát 2
3 PacMan modell A játék egy személyes implementációját a korábbi félév alapján már el tudjuk készíteni MV architektúrában A két személyes módhoz egy helyett két PacMan-t tárolunk el a modellben. A játékosokhoz a W,A,S,D és a,,, gombokat rendeljük. A modellben két fő osztály jelenik meg Player Tárolja egy PacMan nézési, mozgási, kanyarodási irányát, a pozícióját és a színét GameBoard Tárolja a pálya állapotát, a két PacMan példányt, és megvalósítja a logikát 3
4 PacMan modell GameBoard logika fő részei changeplayerdirection(int player, Direction d){ Eltárolja a megadott játékos PacMan-jéhez a mozgási irány szándékát a saját PacMan példányban moveplayers() { A View időzítője által periodikusan hívott metódus adott egységgel elmozdítja a PacMan-eket, amennyiben nem ütköznek falba mozgatás közben animálja PacMan száját eltávolítja a pályáról a megevett falatokat 4
5 PacMan több személyes mód Alakítsuk úgy át a játékot, hogy a két személy internet hálózaton keresztül tudjon együtt játszani. Mivel a hálózatos programokban a hibákat jóval nehezebb felderíteni, ezért a fejlesztést több lépcsőben hajtjuk végre. 1. Modell állapotonák mentése / visszatöltése 2. Tesztelés 3. Modell származtatása vékony kliens / szerver szerepekhez 4. Tesztelés 5. A modellek hálózatos változatának létrehozása 6. Tesztelés 5
6 PacMan vékony kliens architektúra A vékony kliens lényege, hogy csak megjelenítőként funkcionál, a felhasználói interakciókat a szerverhez továbbítja. A szerver minden információval rendelkezik, megvalósítja a logikát, a klienseknek pedig csak a megjelenítéshez szükséges adatokat küldi át. 6
7 Adatok reprezentációja Vezessük be a Player és GameBoard osztályokban az állapot mentésére / visszatöltésére szolgáló metódusokat. A Serializable interfész használata túlságosan költséges, pl. a Player osztályt 582 bájttal képes csak reprezentálni. A Player osztály kliensben megjelenítendő állapotához 6 bájt is elegendő: 1 Byte - nézés iránya (facedir), 2x2 Byte - pozíció (smoothpos), 1 Byte - száj nyitottsága 7
8 PacMan Player osztály állapot mentés / betöltés public byte[] tobytearray(){ ByteBuffer bb = ByteBuffer.allocate(representationSize); bb.putshort((short)smoothpos.x); bb.putshort((short)smoothpos.y); bb.put((byte)mouth); bb.put((byte)facedir.ordinal()); return bb.array(); // length = 6 bytes public void updatefromstream(inputstream is) throws IOException { DataInputStream dis = new DataInputStream(is); int sx = dis.readshort(); int sy = dis.readshort(); pos.setlocation(sx / scale, sy / scale); scaledpos.setlocation(pos.x * scale, pos.y * scale); smoothpos.setlocation(sx, sy); this.mouth = dis.readbyte(); this.facedir = Direction.values()[dis.readByte()]; 8
9 PacMan GameBoard osztály állapot mentés public byte[] tobytearray() { int numbytes = width * height + players.size() * Player.representationSize; ByteBuffer bb = ByteBuffer.allocate(numBytes); for (int i = 0; i < players.size(); i++){ bb.put(players.get(i).tobytearray()); for (int y = 0; y < height; y++){ for (int x = 0; x < width; x++){ // mark the differences bb.put((byte)((table[y][x]!= origtable[y][x])? 1 : 0)); return bb.array(); 9
10 PacMan GameBoard osztály állapot betöltés public final synchronized void frombytearray(byte[] array){ if (array == null array.length!= representationsize) return; ByteArrayInputStream bais = new ByteArrayInputStream(array); try { for (int i = 0; i < players.size(); i++){ players.get(i).updatefromstream(bais); int byteindex = players.size() * Player.representationSize; for (int y = 0; y < height; y++){ for (int x = 0; x < width; x++){ if (array[byteindex++] > 0){ table[y][x] = Item.EMPTY; catch (IOException e){ 10
11 PacMan Tesztelés Az elkészített mentés / visszatöltés metódus párokhoz készítsünk egységteszteket! 11
12 PacMan Kliens / szerver modellek Az elkészített szerializációs metódusokat a kliens/szerver modell a következőképpen fogja alkalmazni Szerver Kliens Player Player tobytearray() GameBoardServer tobytearray() changeplayerdirection() frombytearray() updatefromstream() GameBoardClient 12
13 PacMan Kliens / szerver modellek Mivel a játék logika a szerverben valósul meg, ezért a kliens képernyőjének frissítése nem egy saját időzítőtől, hanem a szervertől kapott jelzésektől fog függni. A fentiek miatt elengedhetetlen, hogy a kliens egy külön szálat futtasson a beérkező adatokra való várakozáshoz és feldolgozáshoz. A hálózati kommunikáció a szervernél is külön szálat igényel, az ok viszont ebben az esetben a reakció idő minimalizálása. a A kapott utasításokat így nem periodikusan dolgozzuk fel (időzítőre alapulva), hanem egy külön szálon azonnal. A modelleket a GameBoard osztályból fogjuk származtatni, azonban a szálkezeléssel kapcsolatos közös részeket egy köztes GameBoardThreading leszármazottba helyezzük. A klienseket és a szervert először csak csővezetékkel (Pipe) fogjuk összekötni, hogy teszteljük a módszer helyességét... 13
14 PacMan Kliens / szerver modellek GameBoard + void changeplayerdirection(int player, Direction d) + void moveplayers() + byte[] tobytearray() + void frombytearray(byte[] array) ClientDisplay <<interface>> void refresh() void connectionlost() void cannotconnect() GameBoardThreading + void start() + void stop() - void run() # void logic() ServerDisplay <<interface>> void connectionlost(int client) void cannotopenserver() void allclientsareconnected() GameBoardClient # void logic() + void changeplayerdirection(direction d) + void moveplayers() GameBoardServer # void logic() + void setdisplay(serverdisplay display) + void connectionlost(int client) + void cannotopenserver() + void allclientsareconnected() 14
15 Szálkezelés emlékeztető Védeni kell azon erőforrásokat, melyeket legalább egy szál módosítani tudna úgy, hogy közben egy másik hozzáférhet. Ökölszabályok A megoldáshoz kell egy obj objektum, aminek a synchronized(obj){ blokkjában a hozzáférés történik. Ez lehet maga a védendő erőforrás is Durva megoldás: synchronized(this){ a metódusban vagy synchronized metódus, ami állapotot olvas/módosít Az objektum minden írható attribútuma legyen privát. Az objektum típusú attribútumnak a referenciája helyett az objektum másolatát adja vissza a synchronized metódus. 15
16 PacMan GameBoardThreading public abstract class GameBoardThreading extends GameBoard implements Runnable{ private volatile Thread thread; private volatile boolean isrunning = false; private final String name; public GameBoardThreading(String name){ this.name = name; public synchronized void start() {... public synchronized void stop() public void run() {... protected abstract void logic(); 16
17 PacMan GameBoardThreading public abstract class GameBoardThreading extends GameBoard implements Runnable{ public synchronized void start(){ if (!isrunning){ isrunning = true; thread = new Thread(this); thread.start(); public synchronized void stop(){ if (isrunning){ thread.interrupt(); while (isrunning){ try { wait(); catch (InterruptedException ex) { 17
18 PacMan GameBoardThreading public abstract class GameBoardThreading extends GameBoard implements public void run() { logic(); synchronized (GameBoardThreading.this){ isrunning = false; notifyall(); System.out.println(name + ": stopped"); 18
19 Kliens / szerver kapcsolat A kapcsolatot a két oldalon InputStream / Outputstream reprezentálja majd, ezért már most figyeljünk a következőkre! Ha nincs elegendő adat a bemeneten, akkor az olvasás blokkolja a szálat! A blokkolt szál nem szakítható meg, és nem érzékeli az olvasás hiányának okát! Nem blokkoló megoldáshoz bájt tömböket kell használnunk, melyekbe annyit olvasunk, amennyit éppen lehet. Ha rendelkezésre áll a kellő adat, csak akkor dolgozzuk fel. A bájt tömböt a ByteArrayInputStream segítségével InputStream-ként dolgozhatjuk fel. Más adattípusokhoz (int, float, double...) létrehozhatunk a szokásos módon DataInputStream-et is belőle. 19
20 Adatkapcsolat megszűnésének érzékelése OutputStream Az írási kísérlet IOException-t vált ki. InputStream Olvasáskor nem tudhatjuk, hogy a másik fél elveszett, vagy csak nincs közlendője. Egy jó megoldás, ha a másik féltől elvárjuk, hogy adott időközönként üzenjen (Ping), így a kapcsolat tétlensége elárulja a kapcsolat megszűntét. Az InputStream egyedüli nem blokkoló metódusa az available() Visszatérési értéke jelzi, hogy a fogadó buffere üres-e. A blokkoló read(byte[] buf, int pos, int len) metódussal csak ebben az esetben olvasunk, amennyit éppen lehet. Ha összegyűjtöttük a szükséges adatokat, akkor feldolgozzuk. 20
21 PacMan GameBoardServer Konstruktor Input-/OutputStream tömbben kapja meg a klienseihez tartozó kapcsolatokat logic() Ciklusa addig fut, amíg a szál nem kerül megszakított állapotba. A ciklus minden iterációjában Olvas a klienseihez tartozó bemenetekről ha tud, majd ez alapján hívja a changeplayerdirection(...) metódusát Eltávolítja azokat a klienseket, amelyek eltűntek Meghívja a moveplayers() metódust a játék léptetéséhez Előállítja a modell bájt reprezentációját a tobytearray() segítségével, és elküldi azt valamennyi kliensének Várakozik a beállított frissítési gyakoriságnak megfelelően 21
22 PacMan GameBoardClient Konstruktor InputStream / OutputStream paramétere a kapcsolatot reprezentálja. changeplayerdirection(direction d) A felhasználói interakciókat kiküldi az OutputStream-re. moveplayers() logika híján üres. logic() Ciklusa addig fut, amíg a szál nem kerül megszakított állapotba. A ciklus minden iterációjában vár egy újabb csomagot, amivel frissíti a modellt (ilyenkor a kinézetet is frissíti). Adat hiányában számolja a kapcsolat tétlenségének idejét, és jelzi, ha a kapcsolatot megszakadtnak tekinti. 22
23 PacMan A kliens és a szerver tesztelése A klienst és a szervert először hálózati kapcsolat használata nélkül implementáltuk, hogy lássuk működnek-e. Ahhoz, hogy a kapcsolatukat tesztelhessük, minden egyes kliens esetében a következőt kell tennünk Kössük össze a kliens OutputStream-jét a szervernek a klienshez tartozó InputStream-jével. Kössük össze a kliens InputStream-jét a szervernek a klienshez tartozó OutputStream-jével. Két kliens esetén a fentiek alapján 4 db egy irányú kapcsolatot kell kapnunk. Java-ban ehhez a PipedInputStream, PipedOutputStream használható, melyek közvetlenül összeköthetőek, egy csővezetéket létrehozva. 23
24 Pipe Adatfolyamok Dekorátor osztály alaptípusokhoz OutputStream DataOutputStream FileOutputStream ByteArrayOutputStream PipedOutputStream File Byte Array FileInputStream ByteArrayInputStream PipedInputStream Dekorátor osztály alaptípusokhoz DataInputStream InputStream 24
25 PacMan A kliens és a szerver tesztelése PipedInputStream[] client_in = new PipedInputStream[2]; PipedInputStream[] server_in = new PipedInputStream[2]; PipedOutputStream[] client_out = new PipedOutputStream[2]; PipedOutputStream[] server_out = new PipedOutputStream[2]; GameBoardClient[] clients = new GameBoardClient[2]; for (int i = 0; i < 2; i++){ client_in[i] = new PipedInputStream(); client_out[i] = new PipedOutputStream(); server_in[i] = new PipedInputStream(client_out[i]); server_out[i] = new PipedOutputStream(client_in[i]); GameBoardServer server = new GameBoardServer(200, server_in, server_out); server.start(); // Clients has to start AFTER the server is started, otherwise their // constructor will block on their InputStream for (int i = 0; i < 2; i++){ clients[i] = new GameBoardClient(client_in[i], client_out[i], null); clients[i].start(); clients[0].changeplayerdirection(direction.up);... server.stop(); clients[0].stop(); clients[1].stop(); 25
26 PacMan Hálózati kapcsolat megvalósítása Az előző programfázisok sikeres tesztjei után most bővítsük ki a játékot úgy, hogy hálózatban is lehessen vele játszani. Tekintsük át először a hálózati kapcsolat alapfogalmait 26
27 Alapok InternetProtocol A hálózati kommunikációban résztvevő eszközöket az IP címük azonosítja (IPv4 vagy IPv6) Az IP (Internet Protocol) a forgalomirányításért felelős protokoll Egy eszközt több IP cím is azonosíthat Önmagára hivatkozás: (localhost, mindig létezik) Internetes IP cím(ek) Az eszközön futó szolgáltatásokat a port szám azonosítja Például: HTTP: port 80 HTTPS: port 443 SSH: port 22 27
28 Alapok adatátviteli protokollok A kommunikáció módja függ az alkalmazott protokolltól, például TCP Transfer Control Protocol 1-1 kapcsolat, ami a kliens-szerver modellt implementálja Kétirányú Megbízható adatátvitel UDP Unified Datagram Protocol Unicast egy címzett Multicast, Broadcast több címzett Egy irányú Megbízhatatlan adatátvitel Gyors kézbesítés 28
29 Alapok TCP / IP kapcsolat Egy virtuális csővezeték, amit a két végpontja azonosít. A végpontot az (IP cím, port) páros azonosítja. A csomagról mindig ismert a forrás és cél IP címe, port száma. A port tartomány a szabvány szerinti szolgáltatásoknak fenntartott (pl. 53 DNS, 80 HTTP stb.). IP A cím IP B cím Kliens Alkalmazás Socket Port A Operációs rendszer TCP/IP kapcsolat [ IP A : Port A IP B : Port B ] Internet Szerver Alkalmazás Socket Port B Operációs rendszer 29
30 Alapok TCP / IP kapcsolat felépítése Szerver alkalmazás Egy általa választott, rá jellemző számú portot nyit, és ezen várja a kliensek kapcsolódását. Kliens alkalmazás Az operációs rendszer segítségével kapcsolatot kezdeményez a szerverrel, annak IP cím és a port megadásával. A kapcsolathoz az operációs rendszer oszt tetszőleges portot. 30
31 Hálózati kapcsolat Java-ban A socket az adatcsatorna szoftveres végpontja. Amit beleírunk, az megjelenik a másik oldalon. Java-ban a Socket-hez InputStream / OutputStream páros tartozik. Connect Connect Socket Internet Socket Connect InputStream OutputStream InputStream OutputStream Client program ServerSocket Listen & Accept Server program 31
32 Hálózati kapcsolat Java-ban Java-ban két fajta Socket-et használunk Socket Az adatátvitel megvalósítására használható végpont, mind a kliens, mind pedig a szerver oldalon. ServerSocket Figyeli a csatlakozási kéréseket Adatátvitelben nem vesz részt Csatlakozáskor az új kapcsolathoz új Socket-et készít Érdemes beállítani a hálózati műveletekhez lejárati időt a setsotimeout(int ms) metódussal. Így, ha nem történik semmi ezen időn belül, akkor SocketTimeoutException-t kapunk. Szálkezelés esetén a megszakíthatóságot garantálhatjuk vele. 32
33 PacMan Hálózatos kliens / szerver modellek Az előbbi információk birtokában készíthetünk egy a GameBoardClient / GameBoardServer-hez hasonló párost GameBoardNetClient A megadott IP cím (vagy domain név) és port alapján kapcsolódik a szerverhez, majd a GameBoardClient-ben látottaknak megfelelően működik tovább. GameBoardNetServer A megadott számú portot megnyitja, majd megvárja amíg az összes kliens kapcsolódik. Eközben már küld Ping jelzéseket (jelen esetben a modell bájt reprezentációját). A továbbiakban pontosan ugyanazt cselekszi, mint a GameBoardServer. 33
34 PacMan Hálózatos kliens / szerver modellek GameBoard + void changeplayerdirection(int player, Direction d) + void moveplayers() + byte[] tobytearray() + void frombytearray(byte[] array) ClientDisplay <<interface>> void refresh() void connectionlost() void cannotconnect() GameBoardThreading + void start() + void stop() - void run() # void logic() ServerDisplay <<interface>> void connectionlost(int client) void cannotopenserver() void allclientsareconnected() GameBoardNetClient # void logic() + void changeplayerdirection(direction d) + void moveplayers() GameBoardNetServer # void logic() + void setdisplay(serverdisplay display) + void connectionlost(int client) + void cannotopenserver() + void allclientsareconnected() 34
35 Tipp hálózatos alkalmazásokhoz Érdemes a ping -et a valós adattól megkülönböztetni. Ennek legegyszerűbb módja, ha a küldött adat első bájtja (int-je) meghatározza az adat típusát / célját (ping, frissítés ) Ez alapján tudhatjuk, hogy él-e a kapcsolat, és milyen típusú és mennyi adatot kell olvasni és feldolgozni. Példa A kliensek az összes kliens kapcsolódásáig csak ping-eket kapnak, így látják, hogy a kapcsolat él, de a játék nem indult el. Hálózatos tesztelést gyakran végzünk egy gépen több futó alkalmazás példánnyal. Nehézség, hogy a billentyű és egér eseményeket a JRE csak az aktív ablaknak továbbítja. Ennek áthidalására a JNativeHook könyvtár használható. 35
Vé V g é r g e r h e a h j a tá t s á i s s z s ál á ak a Runnable, Thread
Végrehajtási szálak Runnable, Thread Végrehajtási szálak Java-ban A Java program az operációs rendszer egy folyamatán (process) belül fut. A folyamat adat és kód szegmensekből áll, amelyek egy virtuális
Concurrency in Swing
Concurrency in Swing A szálkezelés a swing alkalmazásokban is fontos. Cél egy olyan felhasználói felület készítése, amely soha nem fagy, mindig válaszol a felhasználói interakciókra, bármit is csináljon
Az új be- és kimenet könyvtár
Az új be- és kimenet könyvtár import java.io.ioexception; import java.io.fileinputstream; import java.io.fileoutputstream; import java.nio.channels.filechannel; import java.nio.bytebuffer; class Masol
Java programozási nyelv 10. rész Input/output kezelés
Java programozási nyelv 10. rész Input/output kezelés Nyugat-Magyarországi Egyetem Faipari Mérnöki Kar Informatikai Intézet Soós Sándor 2005. szeptember A Java programozási nyelv Soós Sándor 1/28 Tartalomjegyzék
URL-LEL ADOTT OBJEKTUM LETÖLTÉSE (1) URL-LEL ADOTT OBJEKTUM LETÖLTÉSE
Programozás III HÁLÓZATKEZELÉS A hálózatkezeléshez használatos java csomag: java. net Hol találkoztunk már vele? Pl.: URL cim = this.getclass().getresource("/zene/valami_zene.wav"); De pl. adott URL-ről
Szoftvertechnológia alapjai Java előadások
Szoftvertechnológia alapjai Java előadások Förhécz András, doktorandusz e-mail: fandrew@mit.bme.hu tárgy honlap: http://home.mit.bme.hu/~fandrew/szofttech_hu.html 1 Kivételkezelés I. szokatlan, váratlan
Helyes-e az alábbi kódrészlet? int i = 1; i = i * 3 + 1; int j; j = i + 1; Nem. Igen. Hányféleképpen lehet Javaban megjegyzést írni?
A "java Villa -v" parancs jelentése: A java interpreter elindítja a Villa osztály statikus main metódusát, és átadja neki paraméterként a "-v" stringet. A java interpreter elindítja először a Villa osztály
C# Szálkezelés. Tóth Zsolt. Miskolci Egyetem. Tóth Zsolt (Miskolci Egyetem) C# Szálkezelés 2013 1 / 21
C# Szálkezelés Tóth Zsolt Miskolci Egyetem 2013 Tóth Zsolt (Miskolci Egyetem) C# Szálkezelés 2013 1 / 21 Tartalomjegyzék 1 Bevezetés 2 Szálkezelés 3 Konkurens Programozás Tóth Zsolt (Miskolci Egyetem)
Ja J v a a v a há h l á óz ó a z t a i al a ka k l a maz ma á z s á o s k o Socket, URL
Java hálózati alkalmazások Socket, URL Protokollok java.net: socket, URL (Uniform Resource Locators) Protokoll: számítógépek közötti kommunikáció szabályai Internet TCP/IP (Transport Control Protocol/Internet
Kommunikáció Androidon Mobilinternet Wifi
OE-NIK 2012. március 24. Sicz-Mesziár János sicz-mesziar.janos@ nik.uni-obuda.hu Kommunikáció Androidon Mobilinternet Wifi Kommunikációs eszközök Androidon Wi-Fi Ma már minimum: a / b / g szabványok, újabbakon
Programozási nyelvek és módszerek Java Thread-ek
Programozási nyelvek és módszerek Java Thread-ek Laki Sándor lakis@inf.elte.hu 2006. május 3. 0-0 Szálak (Threads) Ahhoz, hogy egy mai rendszer m ködhessen több 10-100 folyamatnak kell futnia. A folyamatok
Hálózatkezelés. Tóth Zsolt. Miskolci Egyetem. Tóth Zsolt (Miskolci Egyetem) Hálózatkezelés / 20
Hálózatkezelés Tóth Zsolt Miskolci Egyetem 2013 Tóth Zsolt (Miskolci Egyetem) Hálózatkezelés 2013 1 / 20 Tartalomjegyzék 1 Hálózati Alapismeretek 2 System.Net Namespace 3 Socket Kezelés 4 Példa Tóth Zsolt
CREATE TABLE student ( id int NOT NULL GENERATED ALWAYS AS IDENTITY PRIMARY KEY, name varchar(100) NOT NULL, address varchar(100) NOT NULL )
Célok: a Java DB adatbázis-kezelő rendszer használatának ismertetése, adatbázisok használata Java alkalmazásokban - kétrétegű architektúra, egyszerű kliens-szerver architektúra használata hálózati alkalmazásokhoz.
Széchenyi István Egyetem. Programozás III. Varjasi Norbert varjasin@sze.hu
Programozás III. Varjasi Norbert varjasin@sze.hu 1 A java virtuális gép (JVM) Képzeletbei, ideális számítógép. Szoftveresen megvalósított működési környezet. (az op. rendszer egy folyamata). Feladata:
Számítógépes Hálózatok. 5. gyakorlat
Számítógépes Hálózatok 5. gyakorlat PYTHON ALAPOK V. Socket programozás, UDP 2 Óra eleji kiszh Elérés: https://canvas.elte.hu Számítógépes Hálózatok Gyakorlat 1 3 A kommunikációs csatorna kétféle típusa
Segédanyag: Java alkalmazások gyakorlat
Segédanyag: Java alkalmazások gyakorlat Készítette: Szabó Attila 2010/2011-2 félév, 11. gyakorlat (az előző 2 gyak közül az egyiken ZH volt, a másik szünet miatt elmaradt) 1 JAR fájl készítés A JAR (Java
Programozási technológia
Programozási technológia Osztályszintű elérés Kivételkezelés, Fájlkezelés Dr. Szendrei Rudolf ELTE Informatikai Kar 2018. Osztályszintű elérés (statikusság) Az osztályban definiált attribútumok és műveletek
OOP: Java 8.Gy: Abstract osztályok, interfészek
OOP: Java 8.Gy: Abstract osztályok, interfészek 26/1 B ITv: MAN 2019.04.03 Abszrakt metódus és absztrakt osztály. Gyakran előfordul a tervezés során, hogy egy osztály szintjén tudjuk, hogy valamilyen metódus
Szerializáció. Tóth Zsolt. Miskolci Egyetem. Tóth Zsolt (Miskolci Egyetem) Szerializáció / 22
Szerializáció Tóth Zsolt Miskolci Egyetem 2014 Tóth Zsolt (Miskolci Egyetem) Szerializáció 2014 1 / 22 Tartalomjegyzék 1 Szerializációs Alapfogalmak 2 Szerializációs Megoldások Object Szerializáció XML
Segédanyag: Java alkalmazások gyakorlat
Segédanyag: Java alkalmazások gyakorlat Készítette: Szabó Attila 2009/2010-2 félév, 12. gyakorlat 1 Távoli metódushívás Java-ban (RMI) Java-ban a távoli metódushívás ( Remote Method Invocation, RMI) egy
Java bevezet o Kab odi L aszl o Kab odi L aszl o Java bevezet o
Miért Java? széleskörben elterjedt Micro Edition - beágyazott rendszerek, régi telefonok Standard Edition - PC, android ezen alapul Enterprise Edition - vállalati programok, web service-ek multiplatform
Programozási technológia
Programozási technológia Generikus osztályok Gyűjtemények Dr. Szendrei Rudolf ELTE Informatikai Kar 2018. Generikus osztályok Javaban az UML paraméteres osztályainak a generikus (sablon) osztályok felelnek
Java Programozás 4. Gy: Java GUI. Tipper, MVC kalkulátor
Java Programozás 4. Gy: Java GUI Tipper, MVC kalkulátor 15/1 B ITv: MAN 2018.03.10 1. Feladat: Tipper Készítsük el a tippelős programunk grafikus változatát. Az üzleti logika kódja megvan, a felület pedig
Programozási nyelvek Java
Programozási nyelvek Java Kozsik Tamás előadása alapján Készítette: Nagy Krisztián 13. előadás Throwable Error Exception RuntimeException IOException Saját (általában) Nem ellenörzött kivételek (Unchecked
Johanyák Zsolt Csaba: Ugráló gomb oktatási segédlet Copyright 2008 Johanyák Zsolt Csaba
Ugráló gomb Készítsünk egy egyszerű játékprogramot, ami egy mozgó nyomógombot tartalmaz. A nyomógomb beállított ideig marad egy helyben, majd az ablakon számára elhatárolt terület (panel) egy véletlenszerűen
Számítógépes Hálózatok. 7. gyakorlat
Számítógépes Hálózatok 7. gyakorlat Gyakorlat tematika Hibajelző kód: CRC számítás Órai / házi feladat Számítógépes Hálózatok Gyakorlat 7. 2 CRC hibajelző kód emlékeztető Forrás: Dr. Lukovszki Tamás fóliái
és az instanceof operátor
Java VIII. Az interfacei és az instanceof operátor Krizsán Zoltán Miskolci Egyetem Általános Informatikai Tanszék Utolsó módosítás: 2005. 10. 24. Java VIII.: Interface JAVA8 / 1 Az interfészről általában
Java programozási nyelv
Szoftvertechnológia sáv Java programozási nyelv Dirk Louis-Peter Müller: Java (Belépés az internet világába) Panem kiadó, Budapest, 2002. Webvilág sorozat Készítette: Gregorics Tibor Vázlatos áttekintés
Java VIII. Az interfacei. és az instanceof operátor. Az interfészről általában. Interfészek JAVA-ban. Krizsán Zoltán
Java VIII. Az interfacei és az instanceof operátor Krizsán Zoltán Miskolci Egyetem Általános Informatikai Tanszék Utolsó módosítás: 2005. 10. 24. Java VIII.: Interface JAVA8 / 1 Az interfészről általában
Java és web programozás
Budapesti Műszaki Egyetem 2015. 04. 08. 9. Előadás Kivétel kezelés a kivétel (exception) egy esemény, mely futás közben megbontja a program normális futási folyamatát például kivétel dobódik amikor 0-val
Osztályszintű elérés, kivételkezelés, fájlkezelés
Programozási, kivételkezelés, fájlkezelés Informatikai Kar Eötvös Loránd Tudományegyetem 1 Tartalom 1 2 3 4 2 (statikusság) Az osztályban definiált attribútumok és műveletek az osztályból példányosított
Konkurens TCP Szerver
A gyakorlat célja: Konkurens TCP Szerver Megismerkedni a párhuzamos programozás és a konkurens TCP szerver készítésének az elméleti és gyakorlati alapjaival és egy egyidejűleg több klienst is kiszolgáló
Se S r e ial a iza z t a ion o n (in n Ja J v a a v ) a Szerializáció
Serialization (in Java) Szerializáció Java Serialization API Standard eljárás az objektumok állapotának adatfolyamba történő kiírására (elmentésére egy bájtszekvenciába), és visszatöltésére Perzisztencia
Debreceni Egyetem Informatika Kar. Mobiltelefon programozás és mobil adatbázis-kezelés
Debreceni Egyetem Informatika Kar Mobiltelefon programozás és mobil adatbázis-kezelés Témavezető: Dr. Fazekas Gábor egyetemi docens Készítette: Toldi Gábor informatika tanár Debrecen 2008 Tartalomjegyzék
Osztályok. 4. gyakorlat
Osztályok 4. gyakorlat Az osztály fogalma Az objektumok formai leírása, melyek azonos tulajdonsággal és operációkkal rendelkeznek. Osztályból objektum készítését példányosításnak nevezzük. Minden objektum
Kivételek kezelése (exception handling) Hibakezelés old style. Kivételkezelés
Kivételek kezelése (exception handling) Hibakezelés old style class Szamolo { void szamol( String s, int i ) { int d; if (i!= 0) d = (i+1)/i; else if (s!= null) d = s.length(); else if (i > 10) // applikációs
Java programozási nyelv 5. rész Osztályok III.
Java programozási nyelv 5. rész Osztályok III. Nyugat-Magyarországi Egyetem Faipari Mérnöki Kar Informatikai Intézet Soós Sándor 2005. szeptember A Java programozási nyelv Soós Sándor 1/20 Tartalomjegyzék
JAVA ALKALMAZÁSOK 5. ELŐADÁS 1/9/2017 1
JAVA ALKALMAZÁSOK 5. ELŐADÁS 1/9/2017 1 TARTALOM Input/Output oadatfolyamok ofájlkezelés okonzol 1/9/2017 2 Input/Output, adatfolyamok 1/9/2017 3 INPUT/OUTPUT Szinte minden alkalmazás használ valamilyen
Generikus osztályok, gyűjtemények és algoritmusok
Programozási, gyűjtemények és algoritmusok bejárása Informatikai Kar Eötvös Loránd Tudományegyetem 1 Tartalom 1 bejárása 2 bejárása 2 Java-ban és UML-ben bejárása Az UML-beli paraméteres osztályok a Java
Webes alkalmazások fejlesztése 8. előadás. Webszolgáltatások megvalósítása (ASP.NET WebAPI)
Eötvös Loránd Tudományegyetem Informatikai Kar Webes alkalmazások fejlesztése 8. előadás (ASP.NET WebAPI) 2016 Giachetta Roberto groberto@inf.elte.hu http://people.inf.elte.hu/groberto A webszolgáltatás
Web-fejlesztés NGM_IN002_1
Web-fejlesztés NGM_IN002_1 Rich Internet Applications RIA Vékony-kliens generált (statikus) HTML megjelenítése szerver oldali feldolgozással szinkron oldal megjelenítéssel RIA desktop alkalmazások funkcionalitása
Objektum Orientált Programozás. 11. Kivételkezelés 44/1B IT MAN
Objektum Orientált Programozás 11. Kivételkezelés 44/1B IT MAN B IT v: 2016.05.03 MAN Pici elmélet A Java kivételkezelésének célja a programfutás során keletkezett hibák kiszűrése és megfelelő kezelése.
Enterprise JavaBeans. Ficsor Lajos Általános Informatikai Tanszék Miskolci Egyetem. Az Enterprise JavaBeans
Enterprise JavaBeans Ficsor Lajos Általános Informatikai Tanszék Miskolci Egyetem Az Enterprise JavaBeans Az Enterprise Javabeans Az Enterprise JavaBeans (EJB) server oldali komponens, amely Az üzleti
Az osztályok csomagokba vannak rendezve, minden csomag tetszőleges. Könyvtárhierarhiát fed: Pl.: java/util/scanner.java
Függvények, csomagok Csomagok Az osztályok csomagokba vannak rendezve, minden csomag tetszőleges számú osztályt tartalmazhat Pl.: java.util.scanner Könyvtárhierarhiát fed: Pl.: java/util/scanner.java Célja:
Hálózati architektúrák laborgyakorlat
Hálózati architektúrák laborgyakorlat 10. hét Dr. Orosz Péter, Skopkó Tamás 2012. szeptember A Unix (C) socket A kommunikációt lehetővé tevő programozási eszköz UNIX fájlleíró (ld. minden egy fájl filozófia)
3. Osztályok II. Programozás II
3. Osztályok II. Programozás II Bevezető feladat Írj egy Nevsor osztályt, amely legfeljebb adott mennyiségű nevet képes eltárolni. A maximálisan tárolható nevek számát a konstruktorban adjuk meg. Az osztályt
Programozási nyelvek Java
Programozási nyelvek Java Kozsik Tamás előadása alapján Készítette: Nagy Krisztián 9. előadás Interface - típust vezet be, de osztálypéldány nem készíthető belőle (statikus típust ad) - több osztály is
TCP/IP kapcsolat Java nyelven
Java programozási nyelv 2007-2008/ősz 5. óra TCP/IP kapcsolat Java nyelven Java streamek, szűrők, java.io TCP/IP alapú kommunikáció Egyszerű protokoll tervezése legradi.gabor@nik.bmf.hu szenasi.sandor@nik.bmf.hu
Abstract osztályok és interface-ek. 7-dik gyakorlat
Abstract osztályok és interface-ek 7-dik gyakorlat Abstract metódusok és osztályok Az OO fejlesztés során olyan osztályokat is kialakíthatunk, melyeket csak továbbfejlesztésre, származtatásra lehet használni,
Programozási nyelvek Java
Programozási nyelvek Java Kozsik Tamás előadása alapján Készítette: Nagy Krisztián 8. előadás Öröklődés - megnyitunk egy osztályt egy másik előtt zárt egységeket szeretünk készíteni (láthatósági kérdés:
JAVA SE/ME tanfolyam tematika
JAVA SE/ME tanfolyam tematika TANFOLYAM TEMATIKA: A JAVA MEGISMERÉSE Java története, miért készült, miért népszerű NETBEANS környezet telepítése, megismerése Programozási alapok java nyelven Változók,primitív
List<String> l1 = new ArrayList<String>(); List<Object> l2 = l1; // error
Generics Egyszerűbb példák (java.util csomagból): public interface List { void add(e x); Iterator iterator(); public interface Iterator { E next(); boolean hasnext(); E - formális típusparaméter,
Kommunikáció. 3. előadás
Kommunikáció 3. előadás Kommunikáció A és B folyamatnak meg kell egyeznie a bitek jelentésében Szabályok protokollok ISO OSI Többrétegű protokollok előnyei Kapcsolat-orientált / kapcsolat nélküli Protokollrétegek
Java Programozás 11. Ea: MVC modell
Java Programozás 11. Ea: MVC modell 20/1 B ITv: MAN 2018.03.02 MVC Model-View-Controller A modell-nézet-vezérlő a szoftvertervezésben használatos szerkezeti minta. Az MVC célja elválasztani az üzleti logikát
OBJEKTUM ORIENTÁLT PROGRAMOZÁS JAVA NYELVEN. vizsgatételek
OBJEKTUM ORIENTÁLT PROGRAMOZÁS JAVA NYELVEN vizsgatételek 1. Az objektumorientált programozás szemlélete, az objektum fogalma 2. Az objektumorientált programozás alapelvei 3. A Java nyelv története, alapvető
1. Gyakorlat: Telepítés: Windows Server 2008 R2 Enterprise, Core, Windows 7
1. Gyakorlat: Telepítés: Windows Server 2008 R2 Enterprise, Core, Windows 7 1.1. Új virtuális gép és Windows Server 2008 R2 Enterprise alap lemez létrehozása 1.2. A differenciális lemezek és a két új virtuális
PHP II. WEB technológiák. Tóth Zsolt. Miskolci Egyetem. Tóth Zsolt (Miskolci Egyetem) PHP II. 2014 1 / 19
PHP II. WEB technológiák Tóth Zsolt Miskolci Egyetem 2014 Tóth Zsolt (Miskolci Egyetem) PHP II. 2014 1 / 19 Tartalomjegyzék Objektum Orientált Programozás 1 Objektum Orientált Programozás Öröklődés 2 Fájlkezelés
Beállítások 1. Töltse be a Planet_NET.pkt állományt a szimulációs programba! A teszthálózat már tartalmazza a vállalat
Planet-NET Egy terjeszkedés alatt álló vállalat hálózatának tervezésével bízták meg. A vállalat jelenleg három telephellyel rendelkezik. Feladata, hogy a megadott tervek alapján szimulációs programmal
Programozási technológia
Programozási technológia Grafikus felhasználói felület Dr. Szendrei Rudolf ELTE Informatikai Kar 2018. Grafikus felhasználói felület Két csomag elemeiből lehet a felületet elkészíteni awt,,heavy weight"
A Java nyelv IV. rész - appletek, hálózati alkalmazások fejlesztése
A Java nyelv IV. rész - appletek, hálózati alkalmazások fejlesztése A Java magasfokú objektumorientáltsága következtében egy Java program osztályok és objektumok összefüggő halmazát jelenti. A program
A gyakorlat során az alábbi ábrán látható négy entitáshoz kapcsolódó adatbevitelt fogjuk megoldani.
Vizuális programozás 1. A gyakorlat célja A gyakorlat célja a Könyvtár alkalmazás folytatása az előző gyakorlaton elkészített grafikus felület felhasználásával. Elsőként lemásoljuk az előző gyakorlat eredményeként
Enterprise JavaBeans 1.4 platform (EJB 2.0)
Enterprise JavaBeans 1.4 platform (EJB 2.0) Ficsor Lajos Általános Informatikai Tanszék Miskolci Egyetem Utolsó módosítás: 2007. 11.13. Az Enterprise JavaBeans Az Enterprise Javabeans Az Enterprise JavaBeans
Ugráló gomb oktatási segédlet Ugráló gomb
Ugráló gomb Készítsünk egy egyszerű játékprogramot, ami egy mozgó nyomógombot tartalmaz. A nyomógomb beállított ideig marad egy helyben, majd az ablakon számára elhatárolt terület (panel) egy véletlenszerűen
JNDI - alapok. Java Naming and Directory Interface
JNDI - alapok Java Naming and Directory Interface Naming Service Naming service: nevek hozzárendelése objektumokhoz, elérési lehetőség (objektumok/szolgáltatások lokalizálása), információk központosított
Számítógépes Hálózatok GY 4.hét
Számítógépes Hálózatok GY 4.hét Laki Sándor ELTE-Ericsson Kommunikációs Hálózatok Laboratórium ELTE IK - Információs Rendszerek Tanszék lakis@elte.hu http://lakis.web.elte.hu Teszt 10 kérdés 10 perc canvas.elte.hu
4. Hivatkozási modellek
4. Hivatkozási modellek Az előző fejezetben megismerkedtünk a rétegekbe szervezett számítógépes hálózatokkal, s itt az ideje, hogy megemlítsünk néhány példát is. A következő részben két fontos hálózati
Kivételkezelés, beágyazott osztályok. Nyolcadik gyakorlat
Kivételkezelés, beágyazott osztályok Nyolcadik gyakorlat Kivételkezelés Nem minden hibát lehet fordítási időben megtalálni Korábban (pl. C-ben) a hibakezelést úgy oldották meg, hogy a függvény hibakódot
Java Programozás 6. Gy: Java alapok. Adatkezelő 2.rész
Java Programozás 6. Gy: Java alapok Adatkezelő 2.rész 25/1 B ITv: MAN 2018.04.13 A feladat Feladat: folytassuk a panel életre keltését! - Alakítsuk ki a Lista panelt - Betöltéskor olvassuk be az adatokat
OOP #14 (referencia-elv)
OOP #14 (referencia-elv) v1.0 2003.03.19. 21:22:00 Eszterházy Károly Főiskola Információtechnológia tsz. Hernyák Zoltán adj. e-mail: aroan@ektf.hu web: http://aries.ektf.hu/~aroan OOP OOP_14-1 - E jegyzet
Programozási technológia 2.
Programozási technológia 2. Dr. Szendrei Rudolf ELTE Informatikai Kar 2018. Párhuzamosság A számítógépek egy időben több feladatot is el tudnak látni Gyakran még egyszerű alkalmazásoktól is elvárt, hogy
applikációs protokollok
Applikációs protokollok Hálózati szolgáltatások 2. applikációs protokollok: HTTP, HTTPS, FTP, SFTP, POP3, IMAP, SMTP Informatikus (rendszerinformatikus) Az OSI modell viszony-, megjelenítési és alkalmazási
Java II. I A Java programozási nyelv alapelemei
Java II. I A Java programozási nyelv alapelemei Miskolci Egyetem Általános Informatikai Tanszék Utolsó módosítás: 2008. 02. 19. Java II.: Alapelemek JAVA2 / 1 A Java formalizmusa A C, illetve az annak
Számítógépes Hálózatok GY 7.hét
Számítógépes Hálózatok GY 7.hét Laki Sándor ELTE-Ericsson Kommunikációs Hálózatok Laboratórium ELTE IK - Információs Rendszerek Tanszék lakis@elte.hu http://lakis.web.elte.hu Teszt 10 kérdés 10 perc canvas.elte.hu
JavaServer Pages (JSP) (folytatás)
JavaServer Pages (JSP) (folytatás) MVC architektúra a Java kiszolgálón Ügyfél (Böngésző) 5 View elküldi az oldal az ügyfélez View (JSP) Ügyfél üzenet küldése a vezérlőnek 1 3 4 Kérelem továbbítása a megjelenítőnek
Java Programozás 1. Gy: Java alapok. Ismétlés ++
Java Programozás 1. Gy: Java alapok Ismétlés ++ 24/1 B ITv: MAN 2018.02.18 Feladat Készítsünk egy komplett konzolos alkalmazást, mely generál egy számot 0 és 100 között (mindkét határt beleértve), feladatunk
C#, OOP. Osztályok tervezése C#-ban
C#, OOP Osztályok tervezése C#-ban OOP Létrehozás (creating) Megszüntetés (destroying) Túlterhelés (overlading) Felsorolás típus (enumerated types) 2 Hajó osztály Sailboat class using System; class Sailboat
Alap protokollok. NetBT: NetBIOS over TCP/IP: Name, Datagram és Session szolgáltatás.
Alap protokollok NetBT: NetBIOS over TCP/IP: Name, Datagram és Session szolgáltatás. SMB: NetBT fölötti főleg fájl- és nyomtató megosztás, de named pipes, mailslots, egyebek is. CIFS:ugyanaz mint az SMB,
Bevezető. PoC kit felépítése. NX appliance. SPAN-Proxy
Bevezető A dokumentum célja összefoglalni a szükséges technikai előkészületeket a FireEye PoC előtt, hogy az sikeresen végig mehessen. PoC kit felépítése A FireEye PoC kit 3 appliance-t tartalmaz: NX series:
Két típusú összeköttetés PVC Permanent Virtual Circuits Szolgáltató hozza létre Operátor manuálisan hozza létre a végpontok között (PVI,PCI)
lab Adathálózatok ATM-en Távközlési és Médiainformatikai Tanszék Budapesti Műszaki és Gazdaságtudományi Egyetem Megvalósítások Multiprotocol encapsulation (RFC1483) - IETF Classical IP over ATM (RFC1577)
Multiprotocol encapsulation (RFC1483) - IETF Classical IP over ATM (RFC1577) - IETF LAN Emulation (LANE) - ATM Forum Multiprotocol over ATM (MPOA) -
lab Adathálózatok ATM-en Távközlési és Médiainformatikai Tanszék Budapesti Műszaki és Gazdaságtudományi Egyetem Megvalósítások Multiprotocol encapsulation (RFC1483) - IETF Classical IP over ATM (RFC1577)
Számítógépes Hálózatok. 3. gyakorlat
Számítógépes Hálózatok 3. gyakorlat Teszt canvas.elte.hu Számítógépes Hálózatok Gyakorlat 2 NC-NetCat (SoCat), avagy hálózati svájcibicska # szerver imitálása nc -l -p 1234 # kliens imitálása nc destination_host
OOP: Java 8.Gy: Gyakorlás
OOP: Java 8.Gy: Gyakorlás 43/1 B ITv: MAN 2019.04.10 43/2 Egy régebbi beszámoló anyaga 1. Feladat: Készítsen egy Szemely nevű osztályt a szokásos konvenciók betartásával, amely tárolja egy ember nevét
Java programozási nyelv 4. rész Osztályok II.
Java programozási nyelv 4. rész Osztályok II. Nyugat-Magyarországi Egyetem Faipari Mérnöki Kar Informatikai Intézet Soós Sándor 2005. szeptember A Java programozási nyelv Soós Sándor 1/17 Tartalomjegyzék
Alkalmazás rétegbeli protokollok:
Alkalmazás rétegbeli protokollok: Általában az alkalmazásban implementálják, igazodnak az alkalmazás igényeihez és logikájához, ezért többé kevésbé eltérnek egymástól. Bizonyos fokú szabványosítás viszont
Hálózati architektúrák és Protokollok GI Kocsis Gergely
Hálózati architektúrák és Protokollok GI - 10 Kocsis Gergely 2015.11.30. FTP File Transfer Protocol Legegyszerűbb FTP parancsok: USER name PASS jelszo CD, RETRIEVE, STORE, MKDIR, RMDIR, HELP, BYE Feladat:
OOP és UML Áttekintés
OOP és UML Áttekintés Tóth Zsolt Miskolci Egyetem 2013 Tóth Zsolt (Miskolci Egyetem) OOP és UML Áttekintés 2013 1 / 32 Tartalom jegyzék 1 OOP Osztály Öröklődés Interfész, Absztrakt Osztály Kivétel kezelés
Számítástechnika II. BMEKOKAA Előadás. Dr. Bécsi Tamás
Számítástechnika II. BMEKOKAA153 2. Előadás Dr. Bécsi Tamás Tömbök (Arrays) Definíció: típus[] név; (pld. int[] szamok; ) Inicializálás: int[] szamok = new int[4]; int[] szamok = 1,2,4,3,5}; int[] szamok
Fábián Zoltán Hálózatok elmélet
Fábián Zoltán Hálózatok elmélet Network Basic Input/Output System Helyi hálózatokon keresztül számítógépek Név alapján azonosítják egymást Szállítási protokollokra épül NetBeui fölött (pl. Win 9x Netbios
Számítógépes Hálózatok. 4. gyakorlat
Számítógépes Hálózatok 4. gyakorlat Teszt canvas.elte.hu Számítógépes Hálózatok Gyakorlat 2 TCP Számítógépes Hálózatok Gyakorlat 3 TCP socket() bind() listen() accept() sock = socket.socket(socket.af_inet,
WEBFEJLESZTÉS 2. ADATBÁZIS-KEZELÉS, OSZTÁLYOK
WEBFEJLESZTÉS 2. ADATBÁZIS-KEZELÉS, OSZTÁLYOK Horváth Győző Egyetemi adjunktus 1117 Budapest, Pázmány Péter sétány 1/C, 2.420 Tel: (1) 372-2500/1816 2 Ismétlés Ismétlés 3 Fájl/Adatbázis 3 4 Szerver 2 CGI
Szoftvertechnolo gia gyakorlat
Szoftvertechnolo gia gyakorlat Dr. Johanyák Zsolt Csaba http://johanyak.hu 1. Dependency Injection (függőség befecskendezés) tervezési minta A tervezési minta alapgondolata az, hogy egy konkrét feladatot
Számítástechnika II. BMEKOKAA Előadás. Dr. Bécsi Tamás
Számítástechnika II. BMEKOKAA153 5. Előadás Dr. Bécsi Tamás Kivételkezelés try Azon utasítások kerülnek ide, melyek hibát okozhatnak, kivételkezelést igényelnek catch( típus [név]) Adott kivételtípus esetén
Kommunikáció - Wi-Fi, Mobil internet - Bluetooth - GSM / GPRS és SMS - NFC
Sicz-Mesziár János sicz.mj@gmail.com 2011. április 21. OE-NIK Kommunikáció - Wi-Fi, Mobil internet - Bluetooth - GSM / GPRS és SMS - NFC Kommunikációs eszközök Androidon Wi-Fi Ma már minimum: a / b / g
Tartalom DCOM. Történeti áttekintés. Történeti áttekintés. Történeti áttekintés. Történeti áttekintés
Tartalom D Szoftvertechnológia elıadás Architektúra D vs CORBA Példá 2 1987 Dynamic Data Exchange (DDE) Windows 2.0-ban Windows alkalmazások közötti adatcsere Ma is használatos (pl. vágólap) NetDDE NetBIOS
Osztálytervezés és implementációs ajánlások
Osztálytervezés és implementációs ajánlások Miskolci Egyetem Általános Informatikai Tanszék Utolsó módosítás: 2006. 04. 24. Osztálytervezés és implementációs kérdések OTERV / 1 Osztály tervezés Egy nyelv
A Wireshark program használata Capture Analyze Capture Analyze Capture Options Interface
A Wireshark program használata A Wireshark (régi nevén Ethereal) protokoll analizátor program, amelyet a hálózat adminisztrátorok a hálózati hibák behatárolására, a forgalom analizálására használnak. A
Osztálytervezés és implementációs ajánlások
Osztálytervezés és implementációs ajánlások Miskolci Egyetem Általános Informatikai Tanszék Utolsó módosítás: 2006. 04. 24. Osztálytervezés és implementációs kérdések OTERV / 1 Osztály tervezés Egy nyelv
Számítógépes Hálózatok GY 6.hét
Számítógépes Hálózatok GY 6.hét Laki Sándor ELTE-Ericsson Kommunikációs Hálózatok Laboratórium ELTE IK - Információs Rendszerek Tanszék lakis@elte.hu http://lakis.web.elte.hu Teszt 10 kérdés 10 perc canvas.elte.hu
Számítógépes hálózatok
Számítógépes hálózatok HETEDIK ELŐADÁS SOCKET programozás C/C++ nyelven AZ ELŐADÁS DIÁKAT KÉSZÍTETTE: ÁCS ZOLTÁN Hálózati programozás bevezetés Általában egy klasszikus hálózati alkalmazás két fő részre
UNIX: folyamatok kommunikációja
UNIX: folyamatok kommunikációja kiegészítő fóliák az előadásokhoz Mészáros Tamás http://home.mit.bme.hu/~meszaros/ Budapesti Műszaki Egyetem Méréstechnika és Információs Rendszerek Tanszék 1 A kommunikáció