본문 바로가기
728x90
반응형

io3

CODE [20.08.06/Day_21] Java SE / Chatting 서버, 클라이언트 구현 (IO, Thread, GUI, synchronized list) step5 채팅 서버 클라이언트 구현 (GUI 활용 + synchronized) Chatting Program의 UML 다수에 클라이언트에게 동시에 서비스(통신)를 제공해야 하기 때문에, 한 서버에서 Thread를 여러 개 생성해준다. → multi-Threading step4와 다른 점은 client에도 multi-Threading을 해준다는 점이다. 그 이유는, client끼리도 '서로 메세지를 주고 받고'기능 통신 서비스를 동시에 실행되어야 하기 때문이다. (다른 사람의 메세지도 보고, 나의 메세지도 뿌려주고 → broadcast() 함수로 구현) [ ChattingServer ] list → Client와 통신하는 객체를 리스트에 저장 다수의 스레드(serv.. 2020. 8. 5.
[20.07.31/Day_17] Java SE / IO(Object Serialization 객체 직렬화), serialVersionUID, transient [ Review 복습 ] Stream java.io의 대표 abstract class Byte Stream 1 byte (음원, 이미지 등) Character Stream 2 byte (텍스트 등) 입력 InputStream Reader 출력 OutputStream Write Node Stream : 연결되는 스트림(없으면 생성), socat Processing Stream : 기능 동작하는 스트림(보조, 부가기능) [코딩 패턴] Node Stream Processing Stream Output new FileWriter new PrintWriter | .println() 출력 | .close() Input new FileReader new BufferedReader | .readLine() 읽기(입력).. 2020. 7. 31.
[20.07.30/Day_16] Java SE / String, StringBuilder, StringBuffer | I/O (입력과 출력) Stream 스트림 [ Review 복습 ] interface의 특징 1. 구현측과 사용자간의 약속 2. 다중 상속의 장점 -> 다양한 계층구조 형성을 통한 다형성 환경 제공 부모타입 Animal a = new Person(); 상위 인터페이스 타입 Flyer f = new Bird(); Collection set : 중복 X list : 순서(index)가 있음 Map : key-value ArrayList : 빠른 검색 용이 LinkedList : 삽입/삭제 용이 Stack / Queue Stack : 후입선출 Last in, First out (LIFO) Queue : 선입선출 First in, First out (FIFO) - message처리할 때 많이 쓰임 Iterator : 반복자 : 어떤 캔이든 따볼 수 있듯.. 2020. 7. 30.
728x90
반응형