분류 전체보기

    🚀 iOS 네트워킹 정복하기 (1) Kick Off

    🚀 iOS 네트워킹 정복하기 (1) Kick Off

    원문 시리즈 (블로그 이전) 시리즈 | 🚀 iOS 네트워킹 정복하기 - averycode.log 요즘은 블로그대신 github 에 학습내용을 정리를 하게 되었는데,오랜만에 velog로 돌아와 iOS 네트워킹을 정복 시리즈를 작성해봅니다.iOS를 공부한지 몇개월이 지났는데 바쁘다는 핑계(?)로 네트워 velog.io 요즘은 블로그대신 github 에 학습내용을 정리를 하게 되었는데, 오랜만에 블로그로 돌아와 iOS 네트워킹을 정복 시리즈를 작성해봅니다. iOS를 공부한지 몇개월이 지났는데 바쁘다는 핑계(?)로 네트워크 통신을 완벽하게 이해하고 쓰는 느낌이 아니라 원리부터 차근차근 다시 공부해보려고 한다. Contents 공부순서는 아마 요렇게 되지 않을까 싶다 네트워크 기초 URLSession Alamof..

    [네트워크] HTTP 요청/응답 헤더

    [네트워크] HTTP 요청/응답 헤더

    원문(블로그이전) [네트워크] HTTP 요청/응답 헤더 HTTP 요청/응답 헤더 velog.io 🐙 HTTP 공통 헤더 요청 및 응답 메시지 모두에서 사용 가능한 일반 목적의(기본적인) 헤더 항목 주요 항목들 Date: HTTP 메시지를 생성한 일시 (RFC 1123에서 규정) Date: Sat, 2 Oct 2018 02:00:12 GMT Connection: 클라이언트와 서버 간 연결에 대한 옵션 설정(다소 모호한 복잡성 있음) Connection: close => 현재 HTTP 메시지 직후에 TCP 접속을 끊는다는 것을 알림 Connection: Keep-Alive => 현재 TCP 커넥션을 유지 Cache-Control Pragma Trailer 🐙 HTTP 헤더 내 엔터티/개체 헤더 (Entity..

    [네트워크] HTTP와 HTTPS 동작 과정

    [네트워크] HTTP와 HTTPS 동작 과정

    원문은 하기 링크에서 확인가능합니다 (블로그이전) [네트워크] HTTP와 HTTPS 동작 과정 HTTP와 HTTPS 동작 과정 velog.io https://github.com/WeareSoft/tech-interview/blob/master/contents/network.md 의 내용을 다룸 🧚‍♀️ HTTP의 동작과정 이전 포스트에서 HTTP는 Stateless한 프로토콜인 것을 확인했다. 즉, 각 요청은 독집적인 트랜잭셔으로 클라이언트가 서버에게 요청하기 전에 연결(connect)하는 과정이 필요하고, 서버의 응답을 받으면 종료(close)한다. 서버 접속 -> 클라이언트 -> 요청 -> 서버 -> 응답 -> 클라이언트 -> 연결 종료 사용자가 웹 브라우저에 URL 주소를 입력한다. DNS 서버에 ..

    [네트워크] HTTPS 그리고 보안 (암호화/인증서/전자서명)

    [네트워크] HTTPS 그리고 보안 (암호화/인증서/전자서명)

    원문은 하기 링크에서 확인가능합니다 (블로그이전) [네트워크] HTTPS 그리고 보안 (암호화/인증서/전자서명) HTTPS 그리고 보안 (공개키알고리즘/인증서/ssl/tls/전자서명) velog.io https://github.com/WeareSoft/tech-interview/blob/master/contents/network.md 의 내용을 다룸 HTTPS 그리고 보안 HTTP와 HTTPS의 가장 큰 차이점은 SSL 인증서이다. SSL인증서는 클라이언트와 서버간의 통신을 공인된 제 3차 업체(CA)가 보증해주는 전자화된 문서이다. SSL 인증서는 사용자가 사이트에서 제공하는 정보를 암호화한다. 암호화되어 전송되는 데이터는 중간에 누가 훔치거나 조작하려해도 암호화 되어있어서 해독할 수 없다. 🐬 SSL..

    [네트워크] HTTP와 HTTPS

    [네트워크] HTTP와 HTTPS

    원문은 하기 링크에서 확인가능합니다 (블로그이전) [네트워크] HTTP와 HTTPS HTTP와 HTTPS velog.io 🐬 HTTP HTTP HTTP : Hypertext 인 HTML을 전송하기 위한 통신규약 서버/클라이언트 모델을 따라 인터넷 상에서 정보를 주고 받기 위한 규칙이다. 애플리케이션 레벨의 프로토콜로 TCP/IP 위에서 작동한다. 하지만 HTTP은 암호화되지 않은 방법으로 데이터를 전송하여 악의적인 감청과 데이터 변조가 가능하다. 이를 해결하기 위해 등장한 것이 HTTPS 개념 HyperText Transfer Protocol 웹 상에서 클라이언트와 서버 간에 요청/응답(request/response)으로 정보를 주고 받을 수 있는 프로토콜 특징 주로 HTML 문서를 주고받는 데에 쓰인다..

    [네트워크] TCP/UDP와 3 -Way Handshake & 4 -Way Handshake

    [네트워크] TCP/UDP와 3 -Way Handshake & 4 -Way Handshake

    원문은 하기링크에서 확인 가능합니다 (블로그 이전) [네트워크] TCP/UDP와 3 -Way Handshake & 4 -Way Handshake TCP / UDP / 3-Way Handshake / 4-Way Handshake velog.io https://github.com/WeareSoft/tech-interview 의 내용을 기반으로 작성하였습니다. 🐥 Prerequisite (TCP/UDP) TCP의 3-Way Handshake 와 4-Way Handshake에 대해 알아보기 전에, 우선 아래의 내용에 대해 알아보겠다. 🥚 Transport Layer OSI 7 레이어에서 Transport Layer에는 양 끝단(End to end)의 사용자들이 신뢰성있는 데이터를 주고 받을 수 있도록 해 주어,..

    [Swift] Struct와 Class (feat. 값타입과 참조타입)

    [Swift] Struct와 Class (feat. 값타입과 참조타입)

    원문 (블로그 이전) [Swift] Struct와 Class (feat. 값타입과 참조타입) Struct와 Class 알아보기 (값타입과 참조타입을 중심으로) velog.io ☃️ Previously 지난포스팅을 보고 오시면 훨씬 좋아요 [iOS] 메모리 구조 (Stack, Heap, Data, Code) 원문 [iOS] 메모리 구조 (Stack, Heap, Data, Code) iOS에서의 메모리 구조에 대해 알아보기 (Stack Heap을 위주로) velog.io Memory in iOS 사용자가 프로그램 실행을 요청하게 되며, OS는 이 프로그램 정보를 읽어 chanhee-jeong.tistory.com ☃️ Struct 정의 Struct (구조체)는 struct 키워드로 다음과 같이 정의한다. s..

    [SwiftUI] SwiftUI의 Data Flow

    [SwiftUI] SwiftUI의 Data Flow

    원문은 하기 링크에서 확인가능합니다 (블로그 이전) SwiftUI의 Data Flow SwiftUI 에서의 Data Flow 정리 velog.io SwiftUI Data Flow의 2가지 원칙 SwiftUI 에서의 데이터 흐름은 아래 2가지 원칙을 기반으로 설계 되었다. 1.데이터 의존성(Data Dependency) 2.단일원천자료(Singe Source of Truth) 1. 데이터 의존성 (Data Dependency) ✅ Every time you read a piece of data in your view, you are creating a dependency for that view. Data access = dependency : view 에서 데이터를 읽는 것은 view 안에 있는 데이터의..

    [SwiftUI] Modifier와 적용순서

    [SwiftUI] Modifier와 적용순서

    원문은 하기 링크에서 확인가능합니다 (블로그 이전) [SwiftUI] Modifier와 적용순서 modifier(\_:) : Applies a modifier to a view and returns a new view.Apple 공식문서에서는 위와 같이 modifer() (인스턴트메소드)는 view에 modifer를 적용해 새로운 view를 만들고 이 리턴한다고 velog.io Modifier 란 modifier(_:) : Applies a modifier to a view and returns a new view. Apple 공식문서에서는 위와 같이 modifer() (인스턴트메소드)는 view에 modifer를 적용해 새로운 view를 만들고 이 리턴한다고 정의한다. .padding() 을 예로 봤을..

    [iOS] 메모리 구조 (Stack, Heap, Data, Code)

    [iOS] 메모리 구조 (Stack, Heap, Data, Code)

    원문은 하기 링크에서 확인가능합니다 (블로그 이전) [iOS] 메모리 구조 (Stack, Heap, Data, Code) iOS에서의 메모리 구조에 대해 알아보기 (Stack Heap을 위주로) velog.io Memory in iOS 사용자가 프로그램 실행을 요청하게 되며, OS는 이 프로그램 정보를 읽어 메모리에 Load 하게 된다. 이렇게 HDD에 로드된 프로그램 코드는 CPU에 의해서 실행되고 메모리를 관리하게 된다. 메모리는 크게 4가지의 영역으로 나뉘게 된다. code 영역 소스코드가 기계어 형태로 저장된다. CPU가 여기에 저장된 명령어를 하나씩 가져가 처리하게 된다. 프로그램 시작~종료까지 메모리에 있게 된다. data 영역 global변수, static변수가 저장된다. 프로그램 시작과 동..