본문 바로가기

728x90
반응형
SMALL

분류 전체보기

(195)
객체지향의 역할, 책임 차이 쉬운 예 객체지향의 역할, 책임 차이 쉬운 예 게임의 경우 역할: 플레이어, 적, 맵 등 자신이 맡은 것 책임: 맡은 역할을 잘 수행할 기능 코드 예제 // 역할: Player, 책임: 이동, 점프, 공격 protocol Player { var name: String { get } func move(to position: CGPoint) func jump() func attack() } // 역할: Enemy, 책임: 이동, 점프, 공격 protocol Enemy { var name: String { get } func move(to position: CGPoint) func jump() func attack() } // 역할: GameMap, 책임: 맵 생성, 맵 이동 protocol GameMap { var ..
솔리드(SOLID) 원칙 SOLID 원칙 객체 지향 프로그래밍에서 지켜져야 하는 다섯 가지 원칙을 의미합니다. S - 단일 책임 원칙 (Single Responsibility Principle) O - 개방-폐쇄 원칙 (Open-Closed Principle) L - 리스코프 치환 원칙 (Liskov Substitution Principle) I - 인터페이스 분리 원칙 (Interface Segregation Principle) D - 의존 역전 원칙 (Dependency Inversion Principle) (이 다섯 가지 원칙을 줄여서 SOLID 원칙이라고 합니다. 이를 지키면 객체 지향 프로그래밍에서 유지보수, 확장, 재사용 등을 더 효과적으로 할 수 있습니다.) 단일 책임 원칙 소프트웨어 개발의 SOLID 원칙 중 하나..
무선 랜 이해하기 목표 무선 랜의 연결 및 통신 구조를 이해한다. 무선 액세스 포인트와 무선 클라이언트의 관계를 이해한다. 무선 랜의 연결 형태를 이해한다. 무선 랜의 규격을 이해한다. 채널을 이해한다. 무선 랜(Wireless LAN) 유선 네트워크와 달리 케이블이나 선이 필요 없이 무선으로 데이터를 송수신하는 로컬 영역 네트워크(LAN)입니다. 무선 랜은 *무선 액세스 포인트(Wireless Access Point)와 무선 클라이언트(Wireless Client)로 구성되며, 클라이언트는 액세스 포인트를 통해 네트워크에 접속합니다. 무선 랜은 IEEE 802.11(WiFi) 표준에 따라 작동합니다. ( + 802.15(Bluetooth) ) 무선 랜은 이동성이 뛰어나며, 케이블을 사용하지 않기 때문에 설치와 관리가 용..
네트워크 전체 흐름 살펴보기 목표 OSI 모델의 전체 흐름을 이해한다. 웹에 접속할 때 이루어지는 캡슐화와 역캡슐화를 이해한다. 전체흐름 (응용 계층)URL 입력 후, Enter키를 누르면 캡슐화 시작 -> (전송 계층) TCP 헤더(출발지 포트 번호, 도착지 포트 번호)가 붙음, 이렇게 TCP 헤더가 붙은 데이터를 '세그먼트'라고함 -> (네트워크 계층) '세그먼트'에 IP 헤더(출발지 IP 주소, 도착지 IP 주소)를 붙이며, 이를 'IP 패킷' 이라고 함 -> (데이터 링크 계층) '이더넷 헤더'가 추가되며, 이를 '이더넷 프레임' 이라고 함 -> (물리 계층) '랜카드'를 사용하여 전기신호로 변환 -> (라우터 A) 1. 데이터 링크 계층에서 이더넷 프레임의 목적지 MAC 주소와 자신의 MAC 주소 비교 2. 주소가 같다면..
응용 계층 : 애플리케이션에 데이터 전송하기 목표 응용 계층의 역할을 이해한다 웹 서버의 구조를 이해한다 DNS의 이름 해석 구조를 이해한다 메일의 송수신 구조를 이해한다 응용 계층 사용자와 직접 상호작용하는 인터페이스를 제공하는 계층입니다. 이 계층은 전자메일, 웹 브라우저, 파일 전송 프로토콜 (FTP) 등과 같은 응용 프로그램을 지원합니다. 응용 계층은 사용자 데이터를 전송하기 위해 하위 계층들을 사용하고, 이 데이터를 인코딩하거나 디코딩하고, 전송을 관리하는 등의 역할을 수행합니다. 이 계층은 최종 사용자에게 가장 가까운 계층으로, 사용자가 네트워크에 접속하여 데이터를 전송하고 수신하는 데 필수적인 역할을 합니다. 이름해석(Name Resolution) 컴퓨터 네트워크에서 도메인 이름 등과 같은 이름을 기반으로 해당 이름에 대응하는 IP 주..
iOS UDP 통신 쉬운 예제 코드 예제 코드 *설정 앱 -> Wi-Fi -> IP 주소에서 IP주소를 찾고 밑의 코드에 "기기의 IPAddress"부분을 수정해주세요. import UIKit class ViewController: UIViewController { let ipAddress = "기기의 IPAddress" // 메시지를 전송할 IP 주소를 저장한다. let port: UInt16 = 12345 // 메시지를 전송할 포트 번호를 저장한다. let receivedMessageLabel = UILabel() //수신된 메시지를 출력할 UILabel 객체를 생성한다. var count:Int = 0 // 수신된 메시지의 수를 저장할 변수를 선언한다. //UDP 메시지를 전송하는 함수를 선언한다. func sendUDPMessage..
전송 계층 : 신뢰할 수 있는 데이터 전송하기 - 2 목표 전송 계층의 역할을 이해한다. 연결형 통신과 비연결형 통신을 이해한다. TCP를 이해한다. UDP를 이해한다. UDP란? UDP(Universal Datagram Protocol)는 *인터넷 프로토콜 스택의 하나로, *데이터그램 방식의 데이터 전송을 지원하는 프로토콜입니다. UDP는 TCP와 달리 데이터 전송을 보장하지 않고, 흐름제어, 오류제어, 재전송 등의 기능을 제공하지 않습니다. 이를 통해 UDP는 데이터 전송에 필요한 오버헤드를 최소화하여 빠른 전송 속도를 지원합니다. UDP는 실시간 스트리밍, DNS(Domain Name System) 등 데이터 전송 속도가 중요하고 데이터의 손실이나 재전송이 큰 의미가 없는 경우에 사용됩니다. 인터넷 프로토콜 스택(Internet Protocol Sta..
전송 계층 : 신뢰할 수 있는 데이터 전송하기 - 1 목표 전송 계층의 역할을 이해한다. 연결형 통신과 비연결형 통신을 이해한다. TCP를 이해한다. UDP를 이해한다. 전송 계층 전송 계층(Transport Layer)은 컴퓨터 네트워크에서 데이터를 보낼 때, 송신 측과 수신 측 간의 신뢰성 있는 데이터 전송을 보장하기 위한 계층입니다. - 오류를 점검하는 기능 - 전송된 데이터의 목적지가 어떤 어플리케이션인지 식별하는 기능 데이터를 세그먼트(Segment)라는 단위로 나누고, 수신 측에서 이를 재조립하여 상위 계층에 전달하며, 대표적인 프로토콜로 TCP(Transmission Control Protocol)와 UDP(User Datagram Protocol)가 있습니다 연결형 통신과 비연결형 통신은 네트워크 통신에서 사용되는 두 가지 기본적인 통신 방식..

728x90
반응형
LIST