본문 바로가기
♞ | 공부일지/♝ | TIL

[Kotlin, 내일배움캠프] 공부일지(2024-08-20)

by immgga 2024. 8. 20.
오늘 공부한 내용 정리(2024년 8월 20일)

 

출처: unsplash.com

 

코드카타 문제풀이

터렛(Silver 3, 1002번)

https://rkdrkd-history.tistory.com/207

 

[Kotlin, S3] 백준 1002번 터렛

터렛(1002번)Silver 3#수학 #기하학 #많은 조건 분기https://www.acmicpc.net/problem/1002 문제 내용  문제 접근입력 형식을 보면 터렛의 좌표와 마린과의 거리가 나온다. 이를 이용해 원을 이용하는 문제임

rkdrkd-history.tistory.com

 

 

01타일(Silver 3, 1904번)

https://rkdrkd-history.tistory.com/208

 

[Kotlin, S3] 백준 1904번 01타일

01타일(1904번)Silver 3#다이나믹 프로그래밍https://www.acmicpc.net/problem/1904 문제 내용  문제 접근타일의 구성이 00, 1로 총 2가지가 존재한다. 타일들로 구성해야 하는 자릿수가 N일 때 타일 2종류를 무

rkdrkd-history.tistory.com

 

 

면접 이론 학습

면접 이론 학습 6일 차

프로세스와 스레드에 대해 설명하고, 사용 영역의 관점에서의 차이 설명.

프로세스: 운영체제로부터 자원을 할당받은 작업의 단위

스레드: 프로세스가 할당받은 자원을 이용하는 실행 흐름의 단위

 

컴퓨터에서 실행할 수 있는 파일을 프로그램이라고 하는데, 아직 실행하지 않은 상태이기 때문에 static program(정적 프로그램)이라고 불리는데 이를 줄여서 프로그램이라고 불린다. 프로그램은 프로그래밍 언어로 작성된다. 실행되지 않은 프로그램은 그냥 코드 덩어리이다.

프로세스는 프로그램이 실행되고 있는 상태를 뜻한다. 운영 체제로부터 시스템 자원(CPU)을 할당받아 프로그램 코드를 실행하는 원리.

 

스레드는 하나의 프로세스에서 여러 작업을 동시에 수행하기 위해 생겨난 개념이다.

크롬을 예로 들면 파일 다운로드, 게임, 쇼핑 등등과 같은 작업들을 동시에 실행할 수 있는 이유가 스레드를 이용해 여러 작업을 동시에 처리하기 때문이다.

 

 

Kotlin에서 Null을 어떻게 처리하나요?

Kotlin에서 null은 java보다 더 명확하기 처리된다.

 

kotlin에서는 null이 될 가능성이 있는 데이터에 명시적으로 타입을 지정할 수 있다.

val a: String? = null

타입에 ?를 붙이면서 null이 가능한 타입임을 명시적으로 표시한다.

 

s가 null이 가능한 타입일 때, null을 안전하게 처리하기 위해 kotlin은 ?. 연산자를 사용한다.

val allCaps: String? = s?.toUpperCase()

null이 아닐 때만 toUpperCase가 작동하고 null이면 null을 반환한다.

 

값이 null인 경우 default 값을 주는 방법은 elvis operator를 쓰면 된다.

val name: String? = str ?: “Unknown”

str가 null이면 unknown이 대신 들어간다. return이나 throw를 사용할 수도 있다.

 

 

개인 공부

팀 프로젝트 발표 자료 구성

공부 내용 간단 정리

팀 프로젝트가 마무리 단계에 접어들어서 어제 merge 한 내용들을 바탕으로 각자 맡은 화면을 발표 자료에다가 서술했다.

어떤 기능을 가지고 있는지 적어 두었다. 내가 맡은 기능을 정리한 후 일부 화면에 추가적인 텍스트 배치를 균형 있게 바꿔 주었다.

 


 

오늘 공부 내용 정리 및 회고

팀 프로젝트를 마무리하고 알고리즘 문제를 몇 개 해결한 날이다.
현재 한 명의 팀원의 개발이 끝나지 않은 상황이라 제출 기한을 맞출 수 있을지 모르겠다.

일단 마감일을 최대한 맞춰야겠다.

728x90