분류 전체보기

·MAC
mac에서 외장 디스크 포맷하기이전에 mac에서 사용할 수 없는 파일 시스템 포맷으로 설정되어 있는 카메라에 넣고 사용하다가, 사진 데이터를 가져오는데 애를 먹었던 기억이 있습니다. 그래서 이번에는 외장 저장 장치를 새로 구매하여 카메라에 넣어 사용하기 전에 먼저 포맷을 진행했습니다. mac에서 외장 디스크 포맷하는 방법에 대해 알아보도록 하겠습니다.먼저, finder를 열어 응용 프로그램 > 유틸리티 폴더의 디스크 유틸리티를 더블클릭합니다.디스크 유틸리티에서는 현재 PC에 마운트되어 있는 디스크들을 확인할 수 있습니다. 왼쪽 탭의 디스크 목록에서 제거하고자 하는 디스크를 선택하고 오른쪽 상단의 지우기 버튼을 클릭합니다.지우기 버튼을 클릭하면, 위와 같은 팝업창이 뜹니다. 이는 디스크 내 파일 시스템 제..
목표멀티스레드 환경에서 코루틴을 활용한 성능 최적화 방법고성능 비동기 프로그래밍을 위한 코루틴 조정 전략성능 측정 및 분석을 통한 최적화 실습일시 중단 함수일시 중단 함수는 코루틴이 아니다일시 중단 함수는 코루틴이 아닌, 일시 중단 지점을 포함할 수 있는 코드의 집합이다.일시 중단 함수는, suspend fun 키워드로 선언된 함수로 함수 내에 일시 중단 지점을 포함할 수 있는 함수입니다. 일시 중단 함수는 일반 함수와 마찬가지로 복잡한 코드들을 구조화하고 재사용할 수 있는 코드의 집합으로 만드는 데 사용됩니다. 일시 중단 함수는 코루틴 내부에서 실행되는 코드의 집합일 뿐, 코루틴이 아닙니다.위 코드를 수행하면, 일시 중단 함수가 순차적으로 호출하여 2초 이상 걸린 것을 확인할 수 있습니다.위 코드에서 ..
System.out.print를 매 프로젝트마다 각각 구현해야 한다면 피곤한 일이 될 것이다.누군가가 한 번 만들어 놓고, 필요할 때 이를 활용할 수 있게 만든 것이 프로그래밍 언어의 핵심 특징 중 하나인 재사용성이다.재사용성은 큰 힘이 있는 만큼 잘 생각하고 사용해야 한다.아이템 19 - knowldeg를 반복하여 사용하지 말라여러 요소에 비슷한 부분이 있는 경우, 변경이 필요할 때 실수가 발생할 수 있습니다. 이런 부분은 추출하는 것이 좋습니다.다만, Don't Repeat Yourself라는 문장을 엄격하게 지키려고 해서, 비슷해보이는 코드를 모두 추출하려고 해서는 안됩니다.극단적인 것은 언제나 좋지 않으며, 항상 균형이 중요합니다.실용주의 프로그래머 책에서는 Don't Repeat Yourself..
들어가기 전에coroutine 스터디를 진행하면서, 매 실습마다 main()에서 돌게 하기 위해 변경해야 하는 점이 불편했습니다.이에 coroutine용 테스트에 대해 알아보게 되었고, kotlinx-coroutines-test라는 jetbrains에서 제공해주는 테스트 모듈이 있다는 것을 알게되어 해당 내용을 정리해보고자 합니다.kotlinx-coroutines-test프로젝트에 kotlinx-coroutins-test 추가하기dependencies { testImplementation 'org.jetbrains.kotlinx:kotlinx-coroutines-test:[자신의 kotlinx-coroutines 버전]'}이 모듈은 테스트를 위한 유틸리티만을 제공하기 때문에, test에서만 사용되도..
목표코루틴 스코프(GlobalScope, coroutineScope, supervisorScope)의 사용법 및 차이점 파악구조화된 동시성에 대한 심도 깊은 이해와 예제 실습코루틴을 활용한 패턴과 모범 사례 공유구조화된 동시성구조화된 동시성(Structured Concurrency)의 원칙이란, 비동기 작업을 구조화함으로써 비동기 프로그래밍을 보다 안정적이고 예측할 수 있게 만드는 원칙입니다.코루틴에서는 구조화된 동시성의 원칙을 사용해 비동기 작업인 코루틴을 부모-자식 관계로 구조화하여 보다 안전하게 관리될 수 있도록 합니다.코루틴을 부모-자식 관계로 만드는 방법은 아래 예시처럼, 부모 코루틴을 만드는 코루틴 빌더의 람다식 내에 새로운 코루틴 빌더를 호출하면 됩니다. 구조화된 코루틴 특징구조화된 코루틴의..
컴퓨터가 인식할 수 있는 코드는 바보라도 작성할 수 있지만, 인간이 이해할 수 있는 코드는 실력 있는 프로그래머만 작성할 수 있다.- 마틴 파울러(Martin Fowler), 코틀린은 간결성을 목표로 설계된 프로그래밍 언어가 아니라, 가독성(readability)을 좋게 하는 데 목표를 두고 설계된 프로그래밍 언어입니다.아이템 11 - 가독성을 목표로 설계하라개발자는 어떤 코드를 작성하는 것보다 읽는 데 많은 시간을 소모한다. 예를 들어, 오류가 발생했을 때 오류를 찾기 위해 코드를 작성할 때보다 오랜 시간 코드를 읽는 자신을 발견할 수 있다.가독성이란, 코드를 읽고 얼마나 빠르게 이해할 수 있는지를 의미합니다. 이는 우리의 뇌가 얼마나 많은 관용구(구조, 함수, 패턴)에 익숙해져 있는지에 따라 다릅니다..
아이템 1 - 가변성을 제한하라- var보다는 val을 사용하고, mutable 프로퍼티보다는 immutable 프로퍼티를 사용하는 것이 좋습니다.- 변경이 필요할 경우에는, 처음부터 읽고 쓸 수 있는 요소를 사용하기 보단 data class의 copy를 활용하는 것이 좋습니다.- 변경 가능 지점은 최소화하여 불필요한 곳에서 변경이 일어나는 것을 막는 것이 좋습니다.코틀린에서 읽고 쓸 수 있는 프로퍼티(read-write property) var을 사용하거나, mutable 객체를 사용하면 상태를 가질 수 있습니다.요소가 상태를 갖게 되면, 해당 요소의 동작은 사용 방법 뿐 아니라 그 이력에도 의존하게 됩니다.상태를 갖는 요소는 시간의 변화에 따라 바뀌는 요소를 표현할 수는 있지만, 관리하기 어렵습니다...
·IT Knowledge
들어가기 전에저는 보통 제목1은 사용하지 않고, 제목2부터 사용하고 있어 제목3에 대한 목차가 필요했습니다. 구글링해보니, 기본적으로 제가 사용하는 hELLO 티스토리 스킨은 자동목차에 제목3을 포함하지 않는다고 적혀있었습니다. 다행히도, hELLO 제작자가 git 레포지토리에 자동목차에 제목3을 직접 추가할 수 있는 방법을 가이드 주신 부분이 있어 해당 내용을 적용해본 내용을 담아보고자 글을 작성하였습니다.  사용하고 계시는 hELLO 버전에 따라 아래 내용을 적용하지 못할 수 있는 점 참고 부탁드립니다.적용 시 사용한 hELLO 버전: 4.5.3자동목차에 제목3 포함하기위 사진에서 볼 수 있듯이 script.js와 skin.html을 수정하면 손쉽게 자동목차에 제목3을 포함할 수 있습니다. 제가 기존..
EARTH_ROOPRETELCHAM
'분류 전체보기' 카테고리의 글 목록 (3 Page)