#build
글
-
Gradle 소스 파헤치기 1: AI와 함께 소스를 읽는 방법과 분석 지도
Gradle이 무엇이고 어떻게 동작하며 어디에 쓰는지를 그림과 3분 실습으로 먼저 보고 시작하는, Gradle 소스 읽기 연재의 첫 글입니다. 어떤 판(master, 9.10.0 개발판)을 읽는지, 같은 커밋을 받아 도커에서 Gradle을 Gradle로 빌드하는 법, 100만 줄짜리 소스를 나눈 플랫폼 지도, gradle 명령 한 번이 클라이언트와 데몬을 지나 태스크 액션에 닿는 큰 길, 그리고 AI가 쓴 노트를 소스로 다시 확인하며 읽는 방법을 정리합니다.
-
Gradle 소스 파헤치기 5: 빌드 생명주기 — 초기화, 설정, 실행은 어디서 갈리나
데몬이 받은 빌드 요청이 실행기 사슬을 지나 빌드 생명주기에 닿는 길, 상태 전이를 지키는 StateTransitionController, init 스크립트와 settings를 읽는 초기화, 프로젝트를 설정하는 설정 단계, 설정 시간 장벽과 작업 그래프, 그리고 buildFinished와 Flow API로 끝나는 마무리까지 기준 커밋의 소스로 따라갑니다. 생명주기 훅을 모두 걸어 순서를 찍고, 빌드 오퍼레이션 나무와 세 단계에서 일부러 낸 실패로 확인합니다.
-
Gradle 소스 파헤치기 10: 실행 엔진과 증분 빌드 — UP-TO-DATE는 어떻게 정해지나
콘솔의 UP-TO-DATE 한 단어는 소스에서 어떻게 정해질까요. 태스크를 엔진에 넘기기 전에 거르는 DefaultTaskNodeExecutor, 태스크를 작업 단위로 감싸는 TaskExecution, 스물다섯 개 스텝이 겹겹이 감싼 실행 엔진, 지난 실행 기록과 지금 상태를 비교하는 ResolveChangesStep과 SkipUpToDateStep, @PathSensitive가 바꾸는 파일 지문, 빌드 사이에 파일 상태를 기억하는 VFS, 바뀐 파일만 넘겨주는 InputChanges까지, 직접 돌린 예제와 함께 소스로 확인합니다.
-
Kafka 소스 파헤치기 1: AI와 함께 소스를 읽는 방법과 분석 지도
Kafka가 무엇이고 어떻게 동작하며 어디에 쓰는지를 그림과 3분 실습으로 먼저 보고 시작하는, Kafka 소스 읽기 연재의 첫 글입니다. 어떤 판(trunk, 4.5.0-SNAPSHOT)을 읽는지와 안정판 4.4.0과의 관계, 같은 소스를 받아 도커에서 Gradle로 빌드하는 법과 JSON 스키마에서 코드를 만드는 processMessages 단계, 72만 줄짜리 본체의 모듈 지도, 레코드 하나가 send()에서 디스크와 복제를 거쳐 poll()까지 지나는 큰 길, 그리고 AI가 쓴 노트를 소스로 다시 확인하며 읽는 방법을 정리합니다.
-
MariaDB 소스 파헤치기 1: AI와 함께 소스를 읽는 방법과 분석 지도
MariaDB가 무엇이고 어떻게 동작하며 어디에 쓰는지를 그림과 3분 실습으로 먼저 보고 시작하는, MariaDB 서버 소스 읽기 연재의 첫 글입니다. 어떤 판(main 브랜치, 13.2.0 alpha)을 읽는지와 LTS 판과의 차이, 서브모듈까지 같은 소스를 받아 도커에서 Debug 빌드하는 법(Windows에서 CRLF 때문에 빌드가 깨진 이유 포함), 259만 줄짜리 소스의 폴더 지도, 쿼리 하나가 연결 스레드에서 InnoDB까지 지나는 큰 길을 gdb 백트레이스로 확인한 결과, 그리고 AI가 쓴 노트를 소스로 다시 확인하며 읽는 방법을 정리합니다.
-
nginx 소스 파헤치기 1: AI와 함께 소스를 읽는 방법과 분석 지도
nginx가 무엇이고 어떻게 동작하며 어디에 쓰는지를 그림과 3분 실습으로 먼저 보고 시작하는, nginx 소스 읽기 연재의 첫 글입니다. 어떤 판(mainline 1.31.9 개발판)을 읽는지와 stable 1.30.x와의 차이, 같은 소스를 받아 도커에서 auto/configure와 make로 빌드하는 법, 26만 줄짜리 소스의 폴더 지도, 요청 하나가 accept에서 sendfile까지 지나는 큰 길을 gdb와 strace로 확인한 결과, 그리고 AI가 쓴 노트를 소스로 다시 확인하며 읽는 방법을 정리합니다.
-
Apache httpd 소스 파헤치기 1: AI와 함께 소스를 읽는 방법과 분석 지도
Apache httpd가 무엇이고 어떻게 동작하며 어디에 쓰는지를 그림과 3분 실습으로 먼저 보고 시작하는, httpd 소스 읽기 연재의 첫 글입니다. 어떤 판(trunk 2.5.1-dev)을 읽는지, 같은 소스를 받아 도커에서 빌드하는 법과 실제로 막혔던 곳, 35만 줄짜리 소스의 폴더 지도, 요청 하나가 지나는 큰 길, 그리고 AI가 쓴 노트를 소스로 다시 확인하며 읽는 방법을 정리합니다.
-
Tomcat 소스 파헤치기 1: AI와 함께 소스를 읽는 방법과 분석 지도
Tomcat이 무엇이고 어떻게 동작하며 어디에 쓰는지를 그림과 3분 실습으로 먼저 보고 시작하는, Tomcat 소스 읽기 연재의 첫 글입니다. 어떤 판(main 브랜치, 12.0.0-M1)을 읽는지와 안정판 11.0.x와의 차이, 서블릿 스펙 버전, 같은 소스를 받아 도커에서 Ant로 빌드하는 법, 74만 줄짜리 소스의 폴더 지도, 요청 하나가 Acceptor에서 서블릿까지 지나는 큰 길, 그리고 AI가 쓴 노트를 소스로 다시 확인하며 읽는 방법을 정리합니다.
-
Unity Practice 1: GameObject와 Controller 사용법 알아보기
Unity를 처음 켜 본 사람이 처음 켜 보는 사람에게 쓰는 실습 기록입니다. 설치부터 에디터 화면 읽는 법, 상자에 물리를 붙이고 마우스로 배트를 휘둘러 날리기, Windows 빌드까지 화면 캡처와 전체 스크립트로 따라갑니다.