HTTP [정의 및 구성 요소]
·
CS/Network
정의HTTP는 HyperText Transfer Protocol의 약자로 웹에서 이루어지는 모든 데이터 교환의 기초이며, 클라이언트-서버 프로토콜이다.구성  1. 클라이언트  클라이언트는 사용자를 대신하여 동작하는 모든 도구이며 역할은 주로 브라우저에 의해 수행된다.브라우저는 항상 요청을 보내는 개체이다.2. 웹서버웹 서버(하드웨어)웹사이트의 컴포넌트 파일들을 저장하는 컴퓨터컴포넌트 파일에는 HTML, Images, CSS, JavaScript가 존재컴포넌트 파일을 인터넷을 통해 클라이언트에 전달웹 서버(소프트웨어)사용자가 어떻게 호스트 파일들에 접근하는지는 관리웹 서버는 주소 HTTP 프로토콜을 사용하여 클라이언트의 요청을 처리 및 응답3. 프록시웹 브라우저와 서버 사이에서는 수많은 컴퓨터와 머신이 H..
[프로그래머스] 오픈채팅방
·
PS/프로그래머스
문제 프로그래머스코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.programmers.co.kr 입력record:[String] = ["동작 userId 닉네임"] // 공백으로 구분출력userId에 맞는 올바른 유저 닉네임의 동작을 순서대로 나열한다.해석1. 공백을 기준으로 정보를 나눈 후, userId를 key값으로 닉네임을 기억한다.2. 이후 동작과 id를 매칭시킨  Info 구조체  를 만들어 주어진 명령어를 순서대로 기억한다.3. 최종적으로 id를 닉네임으로 변환후 동작을 더해준다.  동작Enter ~ 님이 들어왔습니다. , userId와 닉네임이 주어짐Change , userId와 닉네임이 ..
[프로그래머스] n진수 게임
·
PS/프로그래머스
문제 프로그래머스코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.programmers.co.kr 입력진법 n, 미리 구할 숫자의 갯수 t, 게임에 참가하는 인원 m, 튜브의 순서 p 가 주어진다.2 ≦ n ≦ 160 < t ≦ 10002 ≦ m ≦ 1001 ≦ p ≦ m출력튜브가 말해야 하는 숫자 t개를 공백 없이 차례대로 나타낸 문자열. 단, 10~15는 각각 대문자 A~F로 출력한다. 해석n진법으로 숫자를 변환한 후,  튜브가 말해야하는 마지막 차례까지 모든 숫자를 누적해서 저장한 다음 튜브가 말해야하는 문자들만 골라서 출력한다. n진법으로 변환할 때는 String의 생성자를 이용한다.public ..
[프로그래머스] 파일명 정렬
·
PS/프로그래머스
문제 프로그래머스코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.programmers.co.kr 해석file이름 문자열을 총 3가지 구간으로 나눈다.head숫자가 최초로 나오기 전까지 모든 문자열number숫자로만 이루워져 있는 구간tailnumber에 숫자가 아닌 다른 문자가 나온 이후 모든 문자열 이후 정렬 조건은 다음과 같다.head 기준 오름차순head가 같으면 number 기준 오름 차순number까지 같으면 처음에 주어진 순서 기준 (stable sort)import Foundationstruct File: Comparable { let head: String let number:..
[프로그래머스] 압축
·
PS/프로그래머스
문제 프로그래머스코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.programmers.co.kr  해석처음 A ~ Z 까지는 1 ~ 26까지 색인번호가 명시되어 있고 주어진 문자를 하나씩 순회하며 다음글자와의 조합 (w+c) 가 사전에 존재하는 지 여부에 따라 분기가 나눠진다. 만약 존재한다면별도의 출력 없이 현재 문자열이 w+c로 갱신되고만약 존재하지 않는다면현재 문자열의 색인을 출력w+c를 사전에 추가한다또한 현재문자열(w)는 다음 문자열(c)가 된다.여기서 중요한 점은 나는 w를 문자열의 첫 문자가 아닌 공백("")문자열로 시작했다. 이렇게 해야 인덱스 접근이 보다 편하고 분기가 간편해진다. 코드..
NSKeyedArchiver
·
iOS/UIKit
NSKeyedArchiver 오브젝트의 데이터를 key로 참조해서 기록하는 encoder다.  NSKeyedUnarchiverkey로 참조해서 오브젝트의 데이터를  복원하는 decoder다.UserDefaults와 차이점나는 지금까지 데이터를 저장할 때 UserDefaults를 이용했지만 이 아카이버의 역할은 무엇일까?? NSKeyedArchiverUserDefaults저장 방식Key - Value데이터 타입 매핑 여부O상위 하위 관계 매핑 여부OX 공통점이 많은 인터페이스 가지만 큰 차이점이 존재한다.바로 상속과 같은 복잡한 데이터의 관계를 같이 저장하는데 차이가 있다. 흠.. 상하 관계가 있다는 것은 상속을 쓴다는 것이고 NSKeyedArchiver는 클래스를 저장할 때 많이 쓰이는군.. 으로 예상된..