전체 글
-
TCP / 3,4-Way Hand Shake / 흐름제어 / 혼잡제어 / UDPCS/네트워크 2024. 8. 14. 08:59
참고도서: 그림으로 쉽게 이해하는 웹/HTTP/네트워크,임지영(2023), 위키북스TCP(Transmission Control Protocol)🩵신뢰성 있는 데이터 통신을 위한 프로토콜 패킷으로 데이터를 전달하다보면 유실, 오류 등의 문제가 생겨 신뢰할 수 있는 데이터를 전달받을 수 없음. TCP는 이를 해결함. 어떤 패킷이 사라졌는지 파악하기 위해 패킷마다 번호를 붙임데이터를 주고받을 때 확인 절차를 추가해 데이터가 정확히 목적지에 도착했는지 클라이언트가 서버에게 확인 어떻게 이런 의사소통이 가능할까? -헤더! 헤더(Header)모든 프로토콜은 데이터의 앞에 헤더(header)라는 정보를 추가해 전송한다. 헤더 안에는 해당 데이터에 대한 정보가 담겨있다. TCP의 헤더TCP의 헤더 플래그플래그(Fl..
-
Web application Architecture / URL / DNS / IP / Class / CIDR / 서브넷마스크CS/네트워크 2024. 8. 14. 00:55
참고도서: 그림으로 쉽게 이해하는 웹/HTTP/네트워크,임지영(2023), 위키북스Web Server, Client Web Client: 사용자가 웹에 접근할 때 사용하는 프로그램(브라우저) ex) chrome, 사파리, 엣지 등Web Server: 웹 클라이언트로부터 HTTP 요청을 받아들이고, HTML 문서와 같은 웹 페이지를 반환하는 컴퓨터 프로그램 ex) Apache, IIS, NGINXwww.naver.com을 입력하고 엔터키를 누르면 웹 클라이언트는 이 URL에 대한 정보를 찾아 HTTP 메시지 형태로 서버에게 Request하고, 웹 서버는 HTTP 메시지를 확인한 후 이에 맞는 데이터를 처리한 뒤 클라이언트에게 Response한다. WAS(Web Application Server)정적 콘텐..
-
기본형과 참조형JAVA/개념 - 김영한 강의 2024. 8. 13. 23:22
자바는 항상 변수의 값을 복사해서 대입한다. 기본형변수에 들어 있는 실제 사용하는 값을 복사해서 대입건물을 복제 참조형(Reference Type)Student student1, int[] students와 같이 데이터에 접근하기 위한 참조(위치, 주)를 저장하는 데이터.기본형이 실제 사용하는 객체를 이용한다면, 참조형은 객체의 위치를 가리키는 참조값만 복사한다.객체는 .(dot)으로, 배열은 []을 통해 메모리 상에 생성된 것을 사용할 수 있다.건물로 가는 길을 복제기본값 null인스턴스를 복사하는 것이 아니라, 인스턴스를 가리키는 참조값을 복사해서 전달하는 것이다. 따라서 하나의 인스턴스를 여러곳에서 참조할 수 있다. Studnet s1 = new Studne();Student s2 = s1..
-
왜 개체지향을 할까? - 예제JAVA/개념 - 김영한 강의 2024. 8. 11. 09:16
절차지향 직사각형 프로그램 만들기 이걸 객체지향으로 바꾸면, 일단 먼저, 인스턴스와 기본 메서드를 분리해줬다 rectangle 객체 생성calculateArea, calculatePerimeter, square의 자세한 로직을 알지 않아도 됨(추상화) 객체 지향 은행 계좌 만들기Account 클래스 만들기int balance 잔액deposit(int amount): 입금 메서드입금시 잔액이 증가한다withdraw(int amount) : 출금 메서드출금시 잔액이 감소한다만약 잔액이 부족하면 잔액 부족을 출력해야 한다AccountMain 클래스를 만들고 main() 메서드를 통해 프로그램 시작하기계좌에 만원입금 -> 9천원 출금 -> 2천원 출금 -> 잔액 부족 출력 -> 잔고 출력 1) ..
-
왜 객체지향을 할까?JAVA/개념 - 김영한 강의 2024. 8. 11. 08:02
객체지향에 앞서 3가지의 절차지향 프로그램을 차례대로 보자면, 절차지향 (왼) 절차지향 1 / (오) 절차지향2 1->2 비교음악 플레이어와 관련된 데이터는 MusicPlayerData 클래스에 존재이후에 다양한 변수들이 추가되더라고 음악 플레이어와 관련된 변수들은 MusicPlayerData data 객체에 속해있으므로 쉽게 구분할 수 있다 절차지향3 중복 로직 제거: 같은 로직이 필요하면 해당 메서드를 여러번 호출하면 된다기능을 수정할 때 해당 메서드 내부만 변경하면 된다메서드 이름 추가 삭제 등을 통해 코드를 더욱 쉽게 이해할 수 있다. But, 한계데이터와 기능이 분리되어 있다음악 플레이어의 데이터..