<feed xmlns="http://www.w3.org/2005/Atom"> <id>https://kangsangyeon.github.io/</id><title>kangsangyeon</title><subtitle>kangsangyeon's dev blog</subtitle> <updated>2026-01-29T10:59:17+09:00</updated> <author> <name>kangsangyeon</name> <uri>https://kangsangyeon.github.io/</uri> </author><link rel="self" type="application/atom+xml" href="https://kangsangyeon.github.io/feed.xml"/><link rel="alternate" type="text/html" hreflang="ko" href="https://kangsangyeon.github.io/"/> <generator uri="https://jekyllrb.com/" version="4.4.1">Jekyll</generator> <rights> © 2026 kangsangyeon </rights> <icon>/assets/img/favicons/favicon.ico</icon> <logo>/assets/img/favicons/favicon-96x96.png</logo> <entry><title>HTTP 버전별 발전 과정과 특징 (HTTP/1.0, 1.1, 2, 3)</title><link href="https://kangsangyeon.github.io/posts/http-versions/" rel="alternate" type="text/html" title="HTTP 버전별 발전 과정과 특징 (HTTP/1.0, 1.1, 2, 3)" /><published>2026-01-29T10:58:00+09:00</published> <updated>2026-01-29T10:58:00+09:00</updated> <id>https://kangsangyeon.github.io/posts/http-versions/</id> <content src="https://kangsangyeon.github.io/posts/http-versions/" /> <author> <name>kangsangyeon</name> </author> <category term="Web" /> <category term="HTTP" /> <summary> HTTP(HyperText Transfer Protocol)는 웹 브라우저와 웹 서버 간의 통신 규칙을 정의한 프로토콜입니다. HTTP는 시대의 요구에 따라 기술적인 한계를 극복하며 발전해왔습니다. 본 문서는 HTTP/1.0부터 HTTP/3에 이르기까지 각 버전의 주요 특징과 등장 배경, 그리고 기술적인 발전 과정을 중심으로 설명합니다. HTTP/1.0: 요청 단위의 TCP 연결 HTTP/1.0은 1996년에 등장하여 초기 웹 생태계의 성장을 이끌었습니다. 이 버전의 가장 큰 특징은 요청마다 새로운 TCP 연결을 생성한다는 점입니다. 클라이언트가 특정 리소스를 요청하면, 서버와 TCP 연결을 수립하고 응답을 받은 직후 연결을 해제했습니다. 이로 인해 한 페이지에 포함된 여러 리소스(HTML, CS... </summary> </entry> <entry><title>Python 패키지 관리의 진화: Poetry 도입 배경과 사용법</title><link href="https://kangsangyeon.github.io/posts/python-poetry-introduction/" rel="alternate" type="text/html" title="Python 패키지 관리의 진화: Poetry 도입 배경과 사용법" /><published>2025-05-10T02:00:00+09:00</published> <updated>2025-05-10T02:00:00+09:00</updated> <id>https://kangsangyeon.github.io/posts/python-poetry-introduction/</id> <content src="https://kangsangyeon.github.io/posts/python-poetry-introduction/" /> <author> <name>kangsangyeon</name> </author> <category term="python" /> <summary> Python 생태계에서 패키지 설정 관리란, 프로젝트의 의존성과 배포 관련 정보를 정의하고 유지하는 일련의 작업을 의미합니다. 여기에는 외부 패키지 버전 지정, 가상 환경 관리, 빌드와 배포 설정, 메타데이터 작성 등이 포함됩니다. Poetry가 등장하기 이전에는 pip, virtualenv, requirements.txt, setup.py 등을 함께 사용했습니다. 각각의 도구는 용도가 달라, 패키지 설치, 가상 환경 관리, 의존성 고정, 배포 설정 등 여러 작업을 따로 처리해야 했습니다. 설정 파일은 분산되고, 도구마다 방식이 달라 혼란이 많았습니다. 표준이 없다 보니 각 프로젝트마다 방식이 달랐고, 이를 해결하려는 다양한 서드파티 도구들이 오히려 생태계를 더 복잡하게 만들기도 했습니다. 이러한 ... </summary> </entry> <entry><title>.NET 컴파일 방식 비교: AOT vs JIT</title><link href="https://kangsangyeon.github.io/posts/dotnet-jit-vs-aot/" rel="alternate" type="text/html" title=".NET 컴파일 방식 비교: AOT vs JIT" /><published>2025-05-02T18:28:00+09:00</published> <updated>2025-05-02T18:28:00+09:00</updated> <id>https://kangsangyeon.github.io/posts/dotnet-jit-vs-aot/</id> <content src="https://kangsangyeon.github.io/posts/dotnet-jit-vs-aot/" /> <author> <name>kangsangyeon</name> </author> <category term="dotnet" /> <summary> .NET에서는 애플리케이션을 실행 가능한 코드로 변환하는 방식으로 JIT(Just-In-Time)과 AOT(Ahead-Of-Time) 두 가지를 지원합니다. 이 글에서는 두 방식을 비교하고 각각의 특징과 차이점을 정리합니다. 주요 내용은 다음과 같습니다. JIT(Just-In-Time) 컴파일 방식 JIT 컴파일러의 종류 AOT(Ahead-Of-Time) 컴파일 방식 AOT와 JIT 비교 Native AOT와 ReadyToRun(R2R) 비교 JIT(Just-In-Time) 컴파일 방식 JIT 컴파일은 .NET에서 기본적으로 사용하는 컴파일 방식입니다. 일반적으로 .NET 애플리케이션을 빌드하면 IL(Intermediate Language) 코드가 포함된 .dll 또는 .e... </summary> </entry> <entry><title>.NET 플랫폼 정리: 플랫폼, Standard, 구현체, 그리고 변화</title><link href="https://kangsangyeon.github.io/posts/dotnet-introduction/" rel="alternate" type="text/html" title=".NET 플랫폼 정리: 플랫폼, Standard, 구현체, 그리고 변화" /><published>2025-04-30T03:32:00+09:00</published> <updated>2025-04-30T03:32:00+09:00</updated> <id>https://kangsangyeon.github.io/posts/dotnet-introduction/</id> <content src="https://kangsangyeon.github.io/posts/dotnet-introduction/" /> <author> <name>kangsangyeon</name> </author> <category term="dotnet" /> <summary> .NET은 Microsoft가 개발한 다양한 유형의 애플리케이션을 위한 개발 플랫폼입니다. 이 글에서는 다음 주제를 다룹니다. .NET 플랫폼이란? .NET의 다양한 구현체들 .NET Standard 사양이란? .NET 5 이전과 이후의 변화 .NET 플랫폼이란? .NET은 애플리케이션 개발을 위한 런타임 환경, 언어, 라이브러리를 제공하는 종합적인 개발 플랫폼입니다. 이를 통해 Windows, Linux, macOS, iOS, Android 등 다양한 환경에서 동작하는 프로그램을 만들 수 있습니다. .NET 플랫폼은 크게 두 가지 주요 구성 요소로 이루어져 있습니다. CLR(Common Language Runtime): 메모리 관리, 스레드 관리, 보안 등 런타임 기능... </summary> </entry> <entry><title>gitignore에서 디렉토리 무시와 파일 무시</title><link href="https://kangsangyeon.github.io/posts/gitignore_ignore_directory_or_file_diff/" rel="alternate" type="text/html" title="gitignore에서 디렉토리 무시와 파일 무시" /><published>2025-04-29T04:40:00+09:00</published> <updated>2025-05-02T18:55:17+09:00</updated> <id>https://kangsangyeon.github.io/posts/gitignore_ignore_directory_or_file_diff/</id> <content src="https://kangsangyeon.github.io/posts/gitignore_ignore_directory_or_file_diff/" /> <author> <name>kangsangyeon</name> </author> <category term="git" /> <summary> 이 글에서는 gitignore 파일을 사용할 때 디렉토리 무시와 파일 무시의 차이에 대해 설명합니다. 두 방식 모두 불필요한 파일이나 디렉토리가 Git 저장소에 추가되는 것을 방지하기 위해 사용됩니다. 하지만 설정 방법과 동작 방식에는 중요한 차이가 존재합니다. gitignore에서 디렉토리 무시와 파일 무시의 차이 디렉토리 무시 특정 디렉토리를 무시하려면 디렉토리 이름 뒤에 /를 붙입니다. 디렉토리 전체를 무시하고 싶을 때 사용하는 방식입니다. 작성 방법 예시 logs/ temp/ 특징 해당 디렉토리 및 디렉토리 내부의 모든 파일과 하위 디렉토리가 무시됩니다. 디렉토리 이름이 정확히 일치해야 합니다. 주의... </summary> </entry> </feed>
