본문 바로가기

반응형

전체 글

(188)
네트워크층: 데이터 전송 - 패킷 교환 라우터는 마치 전기 스위치가 입력단의 전기를 출력단으로 연결하는 것과 같이, 입력 포트와 출력포트 사이의 연결을 만드는 교환기이다. 네트워크층에서는 상위 계층에서 온 메시지는 처리할 수 있는 크기의 패킷들로 단편화되고 각 단편은 네트워크를 통해 전송된다. 오늘날 패킷 교환망에서 패킷의 경로를 찾기 위해 데이터그램 방식(datagram approach)과 가상-회선 방식(virtual-circuit approach)을 사용한다. 데이터그램 방식(datagram approach): 비연결형 서비스 (User Datagram Protocol) 네트워크에서 비연결형 서비스를 제공할 때 인터넷상의 모든 패킷은 각각 독립적인 개체였다. 같은 메시지에 속한 패킷이라도 서로 연관성이 없었다. 각 패킷은 패킷의 헤더에 ..
네트워크층: 데이터 전송 - 서비스 TCP/IP 프로토콜 그룹에서 네트워크층은 호스트-호스트 메시지 전달을 책임진다. 네트워크층은 전송층에 서비스를 제공하고 데이터 링크로부터 서비스를 받는다. 즉, 데이터링크 -> 네트워크 -> 전송층 으로 서비스가 이동한다. 오른쪽 그림은 네트워크층에서 앨르스와 밥 사이의 통신을 보여준다. ⁉️ 엘리스와 밥(Alice and Bob)은 암호학이나 물리학 등의 분야에서 자주 사용하는 가상 이름(placeholder names)이다. 예를 들어 "사용자 A가 사용자 B에게 안전하게 메시지를 전송하려 한다면.." 이라는 식으로 이야기를 풀어나가면 헷갈리기 쉽고 이해가 어려우므로, 사람 이름을 이용하여 "앨리스가 밥에게 안전하게 메시지를 전송하려 한다면..." 이라는 식으로 설명하는 것이다. 네트워크층에서 제공..
SwiftUI-100Days - WeSplit 전체 코드 import SwiftUI struct ContentView: View { @State private var checkAmount = 0.0 @State private var numberOfPeople: Int = 2 @State private var tipPercentage = 20 @FocusState private var amountIsFocused: Bool let tipPercentages = [10, 15, 20, 25, 0] var totalPerPerson: Double{ let peopleCount = Double(numberOfPeople + 2) let tipSelection = Double(tipPercentage) let tipValue = checkAmount / 10..
SwiftUI Document 따라쓰며 공부하기 - Maintaining the adaptable sizes of built-in views https://developer.apple.com/tutorials/swiftui-concepts/maintaining-the-adaptable-sizes-of-built-in-views Apple Developer Documentation developer.apple.com 공식 링크 Text and symbols When defining the layout for your app, text and symbols play a central role in conveying information to people - in navigation links, button labels, and more. Text and symbols that information or label other elements nee..
iOS Beginner Challenge Lesson4 by CodewithChris // // ContentView.swift // uiTest // // Created by JEONGGEUN LIM on 2023/01/15. // import SwiftUI struct ContentView: View { var body: some View { // 이미지 두개가 세로방향으로 정렬될 수 있도록 VStack 안에 넣어준다. VStack{ // 이미지 위에 워드가 정렬될 수 있도록 ZStack 안에 넣어준다. ZStack{ Image("toronto") // Asset에 저장된 이미지를 불러온다. .resizable() // 이미지 크기를 변경할 수 있도록 설정해준다. .aspectRatio(contentMode: .fit) // 이미지 크기가 기존 사이즈 비율을 벗어나지 않도록 설정한다...
Swift - 클로저 {} by yagom 코드의 블럭 일급 시민(first-citizen), (그럼 이급 시민은 뭐야?) 변수, 상수 등으로 저장, 전달인자로 전달이 가능 함수 == 이름이 있는 클로저 이름이 없는 클로저를 주의 깊게 봐야함 정의 {(매개변수 목록) -> 반환타입 in 실행 코드 } 다음과 같이 매개변수 목록과 반환타입이 없다면 생략할 수 있다. {() -> in 실행 코드 } // 함수를 사용한다면 func sumFuntion(a: Int, b: Int) -> { return a + b } // 함수를 사용한다면 var sumResult: Int = sumFunction(a: 1, b: 2) print(sumResult) // 3 // 클로저의 사용 var sum: (Int, Int) -> Int = {(a:Int, b:Int..
IOS, Swift, Xcode - Basic App - ToDoList 단계별 뽀개기[2] -UIViewController // // ViewController.swift // OurToDoList // // Created by JEONGGEUN LIM on 2023/01/10. // import UIKit class ViewController: UIViewController, UITableViewDataSource { // 테이블뷰 기본 UI 설정 private let table: UITableView = { let table = UITableView() table.register(UITableViewCell.self, forCellReuseIdentifier: "cell") return table }() var items = [String]() // 목록을 저장할 리스트 override func viewDidLoad() ..
IOS, Swift, Xcode - Basic App - ToDoList 단계별 뽀개기[1] - UIKit https://youtu.be/Vqo36o9fSMM // // ViewController.swift // OurToDoList // // Created by JEONGGEUN LIM on 2023/01/10. // import UIKit class ViewController: UIViewController, UITableViewDataSource { // 테이블뷰 기본 UI 설정 private let table: UITableView = { let table = UITableView() table.register(UITableViewCell.self, forCellReuseIdentifier: "cell") return table }() var items = [String]() // 목록을 저장할 리스트..

반응형