본문 바로가기

분류 전체보기

(139)
iOS Study : 2주차 내용정리 - SwiftUI Button 사용해보기 command + shift + L 단축키를 이용하여 컴포넌트를 가져온다 버튼을 클릭해서 아래 코드를 쓰면 Gang이라는 버튼이 보이고 클릭시 Hit가 출력된다. Button { print("Hit") } label: { Text("Gang") //텍스트 꾸미는 속성들 .padding() //여백 .frame(width: 100) //여백 설정 .background(.purple) //배경색 .cornerRadius(13) //모서리 둥글게 Text 사용해보기 Text는 다양한 기능들이 있는데 그 중 기본적인 것들만 사용한 예시이다. 이미지 다루기 Assets에 사진을 등록하고 사진의 이름을 가져와서 사용을 한다 등록한 사진 이외에도 애플에서 기본적으로 제공하는 sf symbol에..
iOS Study : 2주차 내용정리 - 기초 개념, 데이터 타입 iOS 기초개념 이름짓기 swift는 기본적으로 Camel Case를 사용한다. Lower Camel Case : function, method, variable, constant ex) someVariableName Upper Camel Case : typeclass, struct, enum, extension...) ex) Person, Point, Week 대소문자를 구분한다. 콘솔로그 print : 단순 문자열 출력하는 함수 dump : 인스턴스의 자세한 설명(description 프로퍼티)까지 출력하는 함수 문자열 보간법 String Interplation 프로그램 실행 중 문자열 내에 변수 또는 실질적인 값을 표현하기 위해 사용 \() 상수 차후에 변경이 불가능하다, 상수 선언 키워드 : le..
CS Study 2주차 : HTTPS method GET vs POST GET 데이터를 읽거나(Read) 검색(Retrieve) 할 때 사용되는 메소드 요청 성공시 200(OK) HTTP 응답 코드를 리턴한다. 요청 실패시 404(Not Fount), 400(Bad Request)에러가 발생한다. 오로지 데이터를 읽을 때만 사용되고 수정할 때는 사용하지 않는다. 데이터의 변형의 위험 없이 사용이 가능하다. 항상 같은 응답을 받을 수 있다. 데이터를 변경하는 연산에 사용해서는 안된다. POST 새로운 리소스를 생성(Create)할 때 사용된다. 성공적으로 요청이 실행되면 201(Created) HTTP 응답 코드를 반환한다. 같은 요청을 반복해도 항상 같은 결과물이 나오는 것을 보장하지 않는다 즉, 같은 요청을 보내면 같은 정보를 담은 두 개의 리소스를 반환할 가능성이 높다.
CS Study 2주차 : HTTP vs HTTPS / SSL(Secure Sockets Layer) HTTP란? HyperText Transfer Protocol 서버/클라이언트 모델을 따라 데이터를 주고받기 위한 프로토콜 인터넷에서 하이퍼텍스트를 교환하기 위한 통신 규약 TCP/IP 80번 포트를 사용한다. 보안에 대한 조치가 따로 없기 때문에 보안에 취약하다. 상태 정보를 저장하지 않는 Stateless의 특징을 가지고 있다. 클라이언트의 요청에 맞는 응답을 보낸 후 연결을 끊는 Connectionless의 특징을 가지고 있다. HTTPS란? HyperText Transfer Protocol Secure HTTP의 보안이 강화된 버전이다. 기존 HTTP 레이어에서 SSL(TLS) 프로토콜을 얹어 평문 데이터를 암호화 한다. TCP/IP 443번 포트를 사용한다. 인증기관(CA)로부터 SSL 인증서를..
CS Study 2주차 : 대칭키와 공개키 대칭키 대칭키 암호화 방식 : 암복호화에 사용하는 키가 동일함 장점 : 암호화 방식에 속도가 빠르기 때문에 대용량 데이터 암호화에 적합하다. 단점 키를 교환해야 하는 문제가 있다. 탈취의 관리를 걱정해야 한다. 사람이 증가할수록 키 관리가 어려워진다. 정확성이 떨어진다. Session Key, Secret Key, Shared Key, 대칭키, 단용키 라고도 한다. 기밀성을 제공하나, 무결성 / 인증 / 부인방지를 보장하지 않는다. 대표적인 알고리즘 : SEED, DES, 3DES, AES, ARIA, ChaCha20 공개키 공개키 암호화 방식 : 암복호화에 사용하는 키가 서로 다르며, 비대칭키 암호화 라고도 한다. 장점 키 분배가 필요 없다. 기밀성 / 인증 / 부인방지 기능을 제공한다. 단점 : 속도..
Java Study : 2주차 정리 변수 변수 : 컴퓨터에 값을 저장할 공간의 이름 자료형 : 변수에 저장할 값의 형태 변수 선언 : 변수의 자료형을 선택하고 이름을 정하는 것 예시 : 자료형 변수 이름; -> 자료형 변수 이름; //정수형 변수 level을 선언 level = 10; //값 10을 level 변수에 대입 초기화 : 변수에 처음 값을 대입하는 것 예시 : int level = 10; //level변수 선언과 동시에 값을 초기화 변수 선언 시 변수 이름은 영문자나 숫자를 사용할 수 있고, 특수 문자 중에는 $, _만 사용 가능하다. 변수 이름은 숫자로 시작할 수 없다. 자바에서 이미 사용중인 예약어는 사용할 수 없다. 자료형 자바에서 제공하는 자료형은 기본 자료형과 참조 자료형이 있다. 정수 자료형 정수 자료형은 양수, 음수..
Java Study : 1주차 정리 Compile 프로그래밍 언어로 만든 소스파일을 컴퓨터에서 실행 할 수 있는 기계어로 변환하는 일련의 과정 Compiler 특정 프로그래밍 언어로 쓰여 있는 문서를 다른 프로그래밍 언어로 혹은 컴퓨터 언어로 옮기는 일종의 번역 프로그램 즉, 컴파일을 하는 프로그램 JDK(Java Development Kit) Java로 소프트웨어를 개발할 수 있도록 여러 기능들을 제공하는 패키지 JVM(Java Virtual Machine) 자바를 실행하기 위한 가상 기계로 바이너리 코드를 읽고, 검증하고 실행한다. 원래 OS마다 다른 컴파일러가 필요하지만 Java는 OS 위에 JVM이 존재하기 때문에 운영체제 상관 없이 컴파일이 가능하다. JDK(Java Runtime Environment) 자바 실행 환경의 약자로 ..
CS Study 1주차 : TCP vs UDP TCP vs UDP TCP는 Transmission Control Protocol의 약자이고, UDP는 User Datagram Protocol의 약자이다. 두 프로토콜은 모두 패킷을 한 컴퓨터에서 다른 컴퓨터로 전달해주는 IP프로토콜을 기반으로 구현되어 있지만, 서로 다른 특징을 가지고 있다. 신뢰성이 요구되는 애플리케이션 : TCP 사용 간단한 데이터를 빠른 속도로 전송하고자 하는 애플리케이션 : UDP 사용 TCP와 UDP의 차이는 위 표와 같다. 이제 각 방식을 자세히 알아보자 TCP(Transmission Control Protocol) 전송을 제어하는 프로토콜로 인터넷상에서 데이터를 메세지의 형태로 보내기 위해 IP와 함께 사용하는 프로토콜이라 생각하면 된다. TCP 특징 연결형 서비스 : 연..