본문 바로가기

kotlin4

Kotlin 용어, 키워드 간단정리 (일급함수, Higher-Order Functions, inline) 1. 일급함수 (first-class function) https://en.wikipedia.org/wiki/First-class_function 코틀린 함수는 일급 함수(first-class function) 이다. 코틀린의 함수는 함수의 매개변수가 될 수 있다. 코틀린의 함수는 함수의 return 값이 될 수 있다. 코틀린의 함수는 할당 명령문(=, 대입)의 대상이 될 수 있다. 코틀린의 함수는 동일 비교(==, equal)의 대상이 될 수 있다 : 간단히 함수가 객체화 될수 있다면 일급함수라고 이해했다. 2. Higher-Order Functions (고차 함수) https://kotlinlang.org/docs/lambdas.html 함수를 파라메터로 가지거나, 이를 반환하는 함수이다. fun .. 2022. 3. 6.
코루틴- 동시성 / 병렬 코루틴 동시성/ 병렬 동시성은 애플리케이션이 동시에 한개이상의 스레드에서 실행될때 발생 이 스레드간의 통신과 동기화가 되어야 애플리케이션이 정상동작 가능 동시성에 대해 올바른 동시성 코드 결정론적인 결과를 가짐 실행순서에는 약간의 가변성 허용 : 이를 위해 서로 다른 부분이 독립성이 있어야 하고 조정이 필요함 비동시성 코드 fun getProfile(id : Int) : Profile { val basicUserInfo = getUserInfo(id) val contactInfo = getContactInfo(id) return createProfile(basicUserInfo,contactInfo) } → 사용자정보 return 전까지 연락처정보 요청하지 않음 장점 정확한 실행순서를 알수있음 사이드 이.. 2021. 5. 16.
코루틴이란? - 프로세스/ 스레드/ 코루틴 프로세스, 스레드, 코루틴 애플리케이션 시작 → 운영체제가 프로세스 생성 → 여기에 스레드 연결 → 메인스레드 시작 프로세스 실행중인 애플리케이션의 인스턴스. 리소스를 여는 핸들, 프로세스 ID, 데이터, 네트워크 연결 등 상태를 가짐 위 상태에 내부 스레드가 액세스 가능 스레드 실행스레드 - 프로세스가 실행할 일련의 명령을 포함. 따라서 프로세스는 최소 1이상 스레드 포함 보통 애플리케이션의 main() 이 진입점 → 메인 스레드 메인 스레드 종료시 프로세스 종료 각 스레드는 속한 프로세스의 리소스 액세스 가능. 또한 자체 스레드 로컬 스토리지도 가짐. 스레드 안에서 명령은 하나씩 수행 및 block 됨. 따라서 ux에 부정적인 영향을 미치는 스레드는 block 하지말자. 블로킹작업을 별도의 전용 스레.. 2021. 5. 16.
(Kotlin) 코틀린이란? Kotlin 소개 코틀린이란? Kotlin 소개 열심히 공부해서 이번에 이직을 하게 되었습니다! 짝짝짝 기존에는 Java/Spring 기반으로 웹서버 백엔드 개발만 했었는데 이직 하는 회사에서는 Kotlin을 사용한다고 하더라구요. 따라서, Kotlin이 무엇인지 간단하게 찾아보았습니다. https://kotlinlang.org/ Kotlin Programming Language kotlinlang.org 먼저 Kotlin 공식 사이트의 소개 내용입니다. " 개발자를 더 행복하게 하는 모던한 프로그래밍 언어이다. 평생 오픈소스로 제공된다! " 위 환경들에서 제공될 수 있구요. 왜 코틀린인가? 1. 간결함 boilerplate code(반복적으로 필요한 코드)를 대폭 줄일 수 있다. // getters, setters, `.. 2020. 8. 16.