전체 글 52

가독성 좋은 코드 작성하는 법

1. 개요가독성 좋은 코드란 무엇일까. 단순히 "알고리즘이 정확히 동작하면 무조건 좋은 코드일까?"라고 묻는다면, 대부분의 사람들은 "아니오"라고 답할 것이다. 코드는 마치 소설과 같다. 추리 내용을 잘 구성하는 것이 중요하지만, 문장 구성에 따라 읽기 편한 소설이 될 수도, 읽기 불편한 소설이 될 수도 있다. 프로그래머 입장에서 코드를 작성할 때, 어떻게 하면 읽기 좋은 코드가 될 수 있을까에 대한 나의 견해를 정리하고자 한다. 2. 좋은 코드를 공부하는 팁좋은 소설을 쓰기 위해서는 먼저 좋은 소설을 읽는 것이 도움이 된다. 예를 들어, 단순히 옛날 카카오스토리에 떠도는 주작 이야기를 보는 것보다, 히가시노 게이고의 『나미야 잡화점의 기적』과 같은 작품을 읽는 것이 글쓰기 실력 향상에 더 큰 도움이 된..

롤로 공부하는 디자인 패턴

1. 디자인 패턴이란디자인 패턴은 소프트웨어 설계에서 자주 발생하는 문제에 대한 일반적인 해결책으로 알고리즘과는 차이점이 있다. 알고리즘은 기능 구현을 위해 로직을 구현한다면, 디자인 패턴은 실제 프로그램에 적합한 해결책을 구현할 수 있는 것이다. 디자인 패턴을 아는 것은 객체 지향 설계 원칙을 활용하여 다양한 문제를 해결하는 방법을 알려준다.디자인 패턴은 개발자 사이에 더욱 효율적으로 소통하는 데 사용할 수 있는 공통 용어를 정의하는데, "클래스의 인스턴스를 하나만 만들 수 있도록 하고, 어디서든 해당 인스턴스에 접근할 수 있게 해 주세요." 대신 "싱글톤으로 제작해 주세요"라고 하면 되는 편의가 있다.1.1. 디자인 패턴의 분류생성 패턴 : 기존 코드의 유연성과 재사용성을 높여주는 객체 생성 메커니즘..

기타 2025.07.20

리눅스 빌드 심화(Makefile, Kconfig)

1. 서론리눅스를 빌드하는 명령어 과정을 중심으로 Makefile, Kconfig, cross-compile 원리에 대해 자세히 알아보고자 한다. Makefile과 관련된 명령어는 Makefile을 참고하며 된다.1.1. 환경아키택처 : x64환경 : WSL리눅스 버전 : v6.152. make defconfig`make defconfig`는 make default configuration의 약자로 현재 아키택처의 기본 설정값을 통해 `.config` 파일을 생성하는 명령어이다. `.config`는 커널을 어떤 기능과 드라이버 등으로 구성할지를 결정하는 설정 파일이다. 리눅스 최초 빌드시 `make defconfig`없이 `make`를 한다면 아래와 같은 오류가 나게 된다.2.1. 아키택처(필요시 공부)..

운영체제/Kernel 2025.06.22

리눅스 빌드

1. 서론1.1. 환경아키택처 : x64환경 : WSL리눅스 버전 : v6.151.2. 출처아래 사이트에서 참고하되 초보자도 이해할 수 있게 끔 추가적인 내용을 덧붙여 작성하였다. GDB로 리눅스 커널 디버깅 하기리눅스 커널에 gdb를 붙여서 디버깅을 할 수 있다. gdb를 이용하면 line-by-line 실행 및 stacktrace, 변수값 출력등의 기능들을 사용할 수 있다.gee6809.github.io 2. install리눅스 커널 빌드를 위해서는 apt를 업데이트 한 후 필요한 패키지를 미리 다운로드 받을 수 있도록 하자.sudo apt update # apt 업데이트sudo apt install gcc -y # make 명령어를 위해 설치sudo apt install build-essential..

운영체제/Kernel 2025.04.25