반응형 전체 글666 ADR (아키텍처 결정 기록) — 테크니컬 라이팅 IT 특수분야 · 테크니컬 라이팅 ADR: "왜 이렇게 결정했더라?"를 영원히 기록하는 법 코드는 "무엇을" 했는지 보여주지만, "왜" 그렇게 했는지는 사라진다. 아키텍처 결정 기록(ADR)으로 결정의 맥락과 트레이드오프를 미래의 팀에게 남기는 방법을 정리한다. ADR Architecture Decision Records Documentation 테크니컬 라이팅 시리즈·2 / 66개월 뒤 누군가 코드를 보며 "왜 여기서 Kafka를 안 쓰고 RabbitMQ를 썼지?"라고 묻는다. 당시 회의에 있던 사람은 퇴사했고, 슬랙 스레드는 검색되지 않는다. ADR(Architecture Decision Record)은 바로 이 "잃어버린 맥락" 문제를 해결하기 위한 가볍고 강력한 .. 2026. 9. 25. API 문서 작성 — 테크니컬 라이팅 IT 특수분야 · 테크니컬 라이팅 API 문서 작성: 개발자가 5분 안에 첫 호출에 성공하게 만들기 좋은 API 문서는 마케팅 자료가 아니라 사용 설명서다. 레퍼런스, 가이드, 튜토리얼의 역할을 구분하고 OpenAPI를 중심으로 유지보수 가능한 문서 체계를 설계하는 방법을 정리한다. OpenAPI REST Developer Experience Docs-as-Code 테크니컬 라이팅 시리즈·1 / 6API 문서의 품질은 채택률(adoption)에 직접적인 영향을 미친다. 개발자는 평균 몇 분 안에 첫 성공적인 호출(time-to-first-call)을 경험하지 못하면 다른 대안을 찾기 시작한다. 문서가 곧 제품의 첫인상이라는 전제에서 시작해야 한다.01레퍼런스 · 가이드 .. 2026. 9. 25. Kotlin Multiplatform — 로직은 공유, UI는 네이티브 모바일 개발 · 크로스 플랫폼 Kotlin Multiplatform — 로직은 공유, UI는 네이티브 UI까지 통일하려는 다른 프레임워크와 정반대 철학. 비즈니스 로직만 공유하고 화면은 각 플랫폼의 네이티브로 두는 KMP의 접근과, UI까지 공유하는 Compose Multiplatform을 함께 살펴봅니다. Kotlinexpect/actualCompose MPJetBrains다른 철학의 출발점지금까지 본 프레임워크 대부분은 UI까지 한 번에 공유하는 것을 목표로 했습니다. Kotlin Multiplatform(KMP)은 정반대 지점에서 출발합니다. 비즈니스 로직만 공유하고 UI는 각 플랫폼의 네이티브로 남겨두는 점진적 접근입니다.JetBrains가 만든 KMP는 네트워크 통신, 데이터 저장, 유효성.. 2026. 9. 24. .NET MAUI — C# 하나로 데스크톱까지 모바일 개발 · 크로스 플랫폼 .NET MAUI — C# 하나로 데스크톱까지 Xamarin.Forms의 진화형. 단일 C# 코드베이스로 iOS, Android, macOS, Windows를 모두 타깃하는 Microsoft의 공식 크로스 플랫폼 프레임워크를 깊이 들여다봅니다. C#XAML.NETMicrosoft.NET MAUI란 무엇인가.NET MAUI(Multi-platform App UI)는 Xamarin.Forms를 계승해 .NET 생태계로 완전히 통합한 크로스 플랫폼 프레임워크입니다. 하나의 C# 프로젝트로 모바일(iOS, Android)뿐 아니라 데스크톱(macOS, Windows)까지 동시에 빌드한다는 점이 가장 큰 특징입니다.기존에 모바일과 데스크톱이 별도 프로젝트로 나뉘었던 Xamari.. 2026. 9. 23. Ionic & Capacitor — 웹 기술로 만드는 네이티브 앱 모바일 개발 · 크로스 플랫폼 Ionic & Capacitor — 웹 기술로 만드는 네이티브 앱 HTML, CSS, JavaScript만으로 앱스토어에 올라가는 앱을 만든다. 웹 개발자가 가장 빠르게 모바일로 진입하는 길, Ionic의 UI와 Capacitor의 네이티브 브리지를 함께 풀어봅니다. WebViewCapacitorPWAAny FrameworkIonic과 Capacitor의 관계둘은 자주 묶여 불리지만 역할이 다릅니다. Ionic은 모바일에 최적화된 UI 컴포넌트 라이브러리이고, Capacitor는 웹 앱을 네이티브 앱으로 감싸고 네이티브 기능에 접근하게 하는 런타임/브리지입니다.핵심 발상은 명료합니다. 앱의 UI를 웹 기술(HTML/CSS/JS)로 작성하고, 이를 네이티브 컨테이너의 W.. 2026. 9. 22. Dart — Flutter를 떠받치는 언어 모바일 개발 · 크로스 플랫폼 Dart — Flutter를 떠받치는 언어 개발 중엔 JIT로 빠르게, 출시할 땐 AOT로 네이티브 속도로. 두 컴파일 모드와 사운드 널 안정성을 갖춘 Dart가 어떻게 Flutter의 Hot Reload와 성능을 동시에 가능하게 하는지 살펴봅니다. JIT + AOTNull Safetyasync/awaitGoogleDart란 무엇인가Dart는 Google이 2011년 발표한 객체 지향 언어로, 처음엔 JavaScript를 대체할 웹 언어를 목표로 했습니다. 큰 주목을 받지 못하다가 Flutter의 공식 언어로 채택되면서 부활했습니다. C 계열 문법을 따라 Java, JavaScript, Swift 경험자라면 빠르게 적응할 수 있습니다.Dart가 Flutter에 선택된 .. 2026. 9. 21. Flutter — 픽셀 단위로 그리는 크로스 플랫폼 모바일 개발 · 크로스 플랫폼 Flutter — 픽셀 단위로 그리는 크로스 플랫폼 네이티브 위젯을 빌리지 않고 자체 렌더링 엔진으로 모든 픽셀을 직접 그리는 Google의 UI 툴킷. 일관된 디자인과 60fps 성능을 한 코드베이스로 달성하는 Flutter의 핵심 원리를 분석합니다. DartImpellerWidgetGoogleFlutter란 무엇인가Flutter는 Google이 만든 UI 툴킷으로, 하나의 코드베이스로 모바일·웹·데스크톱·임베디드까지 커버합니다. React Native가 OS의 네이티브 위젯을 호출하는 것과 달리, Flutter는 자체 렌더링 엔진으로 모든 UI를 직접 그립니다. 화면의 모든 버튼, 텍스트, 애니메이션이 Flutter가 캔버스에 칠한 결과물입니다.이 접근의 핵심 이점.. 2026. 9. 20. Expo — React Native 개발의 가속 페달 모바일 개발 · 크로스 플랫폼 Expo — React Native 개발의 가속 페달 Xcode와 Android Studio 없이도 앱을 만들고 배포하는 플랫폼. 단순한 SDK를 넘어 빌드, 업데이트, 라우팅까지 통합한 현대 React Native의 사실상 표준 진입점을 살펴봅니다. Expo SDKEASExpo RouterOTAExpo란 무엇인가Expo는 React Native 위에 구축된 도구와 서비스의 통합 플랫폼입니다. 과거에는 "기능 제한이 있는 간편 도구" 정도로 여겨졌지만, 현재는 React Native 공식 문서가 새 프로젝트의 권장 시작점으로 안내할 만큼 위상이 달라졌습니다.핵심 가치는 설정의 제거입니다. 네이티브 빌드 환경 구성, 인증서 관리, 라이브러리 링크 같은 반복적이고 까다로운.. 2026. 9. 20. React Native — 검증된 크로스 플랫폼의 표준 모바일 개발 · 크로스 플랫폼 React Native — 검증된 크로스 플랫폼의 표준 하나의 JavaScript 코드베이스로 진짜 네이티브 UI를 그리는 프레임워크. Instagram, Discord, Shopify가 선택한 React Native의 작동 원리와 신아키텍처(New Architecture)까지 깊이 있게 다룹니다. JavaScriptReactNative UIMetaReact Native란 무엇인가React Native는 Meta가 2015년 공개한 크로스 플랫폼 프레임워크로, React의 컴포넌트 모델을 그대로 사용해 iOS와 Android 양쪽에서 동작하는 앱을 만듭니다. 핵심은 "한 번 작성하면 어디서나 실행"이 아니라 "한 번 배우면 어디서나 작성"이라는 철학입니다.웹 React.. 2026. 9. 20. Apple Vision Pro — 공간 컴퓨팅과 visionOS IT 특수분야 · AR/VR PLATFORM 06 / 06 Apple · Spatial Computing Apple Vision Pro — 공간 컴퓨팅과 visionOS Apple은 이 기기를 "VR 헤드셋"이라 부르지 않는다. 눈과 손과 목소리로 조작하는 공간 컴퓨터다. 디지털 콘텐츠를 현실 공간에 배치하고, 듀얼 마이크로 OLED로 그려내는 visionOS의 개념과 개발 모델을 정리한다. visionOS 26 M2 / M5 + R1 SwiftUI · RealityKit · ARKit "공간 컴퓨팅"이라는 프레이밍Apple Vision Pro는 2024년 2월 출시된 Apple의 독립형 혼합현실 헤드셋이다. 2025년 10월에는 M5 칩과 더 편안한 듀얼 니트 밴드를 적용한.. 2026. 9. 19. Meta Quest SDK — Horizon OS 헤드셋 개발 IT 특수분야 · AR/VR PLATFORM 05 / 06 Meta · Mixed Reality Headset Meta Quest SDK — Horizon OS 헤드셋 개발 가장 많이 팔린 독립형 VR/MR 헤드셋을 위한 개발 도구. 패스스루 혼합현실, 핸드 트래킹, 공간 앵커, 그리고 현실 공간을 이해하는 Scene API까지 — Meta Quest SDK가 제공하는 몰입형 개발의 전체 그림을 정리한다. Meta XR SDK Meta Horizon OS Unity 6 · Unreal · Native OpenXR Quest 생태계와 Horizon OSMeta Quest는 Reality Labs가 만든 독립형(standalone) 헤드셋 라인이다. PC 연결 없이 단독으로 동작.. 2026. 9. 19. Unity AR Foundation — 크로스플랫폼 AR 추상화 IT 특수분야 · AR/VR PLATFORM 03 / 06 Unity · Cross-Platform AR Unity AR Foundation — 한 번 만들어 모두에 배포 ARKit과 ARCore는 API도, 언어도, 철학도 다르다. AR Foundation은 이 둘(그리고 그 이상)을 단일 C# 인터페이스로 감싸, 같은 코드와 씬으로 iOS·Android·헤드셋까지 배포하게 해주는 Unity의 추상화 계층이다. AR Foundation 6.x Unity 6 C# 왜 추상화 계층이 필요한가앞선 두 글에서 본 것처럼 ARKit은 Swift와 RealityKit, ARCore는 Kotlin과 SceneView를 쓴다. iOS와 Android를 모두 지원하려면 같은 AR 로직을 두.. 2026. 9. 19. ARCore — Android AR의 표준 엔진 IT 특수분야 · AR/VR PLATFORM 02 / 06 Google · Augmented Reality ARCore — Android AR의 표준 엔진 수십 종의 제조사와 칩셋으로 파편화된 안드로이드 생태계 위에서, 단일 SDK로 일관된 AR 경험을 제공하는 Google의 프레임워크. 모션 추적·환경 이해·조명 추정의 세 기둥과 클라우드 앵커, Geospatial API까지 ARCore의 전모를 살펴본다. ARCore (Google Play Services for AR) Android Kotlin · Java ARCore란 무엇인가ARCore는 2018년 정식 출시된 Google의 증강현실 플랫폼이다. ARKit이 iOS의 제한된 기기군을 대상으로 하는 것과 달리, ARC.. 2026. 9. 18. ARKit — iOS 네이티브 AR의 모든 것 IT 특수분야 · AR/VR PLATFORM 01 / 06 Apple · Augmented Reality ARKit — iOS 네이티브 AR의 모든 것 아이폰과 아이패드를 세계에서 가장 널리 보급된 AR 디바이스로 만든 프레임워크. LiDAR·신경망·모션 센서를 하나로 묶어 "코드 몇 줄로 현실 위에 가상을 얹는" 경험을 가능케 하는 ARKit의 구조와 실전 활용을 정리한다. ARKit 6+ iOS 26 / iPadOS 26 Swift · RealityKit ARKit이란 무엇인가ARKit은 2017년 WWDC에서 iOS 11과 함께 공개된 Apple의 증강현실(AR) 프레임워크다. 별도의 하드웨어 없이 아이폰·아이패드의 카메라와 모션 센서만으로 현실 공간을 인식하고, 그 위.. 2026. 9. 17. 메인테이너 가이드 — 프로젝트를 지속 가능하게 운영하는 법 오픈소스 메인테이너 가이드, 코드보다 사람과 지속 가능성을 다루는 일 메인테이너가 되는 순간, 일의 성격이 바뀐다. 코드를 짜는 시간보다 리뷰하고, 이슈에 답하고, 방향을 정하고, 무엇보다 번아웃을 관리하는 시간이 늘어난다. 메인테이닝은 기술이 아니라 운영의 영역이다. Maintainer Sustainability Community 난이도 · 중급~고급 읽는 시간 · 약 10분 인기 있는 오픈소스 메인테이너의 가장 큰 적은 기술적 난제가 아니라 번아웃이다. 끝없이 밀려드는 이슈와 PR, 그리고 무료 노동에 대한 당연한 듯한 요구 속에서, 프로젝트와 자신을 함께 지키는 법이 핵심 역량이 된다. 01메인테이너의 역할 .. 2026. 9. 16. 이슈 트래킹 — 좋은 이슈가 좋은 협업을 만든다 오픈소스 이슈 트래킹, 잘 쓴 이슈 하나가 프로젝트를 살린다 이슈는 프로젝트의 할 일·버그·논의가 모이는 중심 공간이다. "안 돼요"라는 한 줄짜리 버그 리포트와, 재현 단계까지 정리된 리포트는 해결 속도가 하늘과 땅 차이다. 이슈를 잘 다루는 것은 그 자체로 협업 역량이다. Issue Bug Report Triage 난이도 · 입문 읽는 시간 · 약 8분 메인테이너가 가장 시간을 빼앗기는 일은 코딩이 아니라 "무슨 문제인지 알 수 없는 이슈를 해독하는 일"이다. 명확한 이슈는 그 자체로 프로젝트에 대한 기여다. 01이슈가 담는 것 이슈 트래커는 단순한 버그 게시판이 아니다. 프로젝트의 흐름이 기록되는 공간이다... 2026. 9. 15. PR 작성 & 리뷰 — 머지되는 PR과 좋은 리뷰의 기술 오픈소스 PR 작성과 리뷰, 코드보다 커뮤니케이션이 먼저다 Pull Request는 단순히 코드를 제출하는 행위가 아니라, "이 변경을 받아달라"고 설득하는 커뮤니케이션이다. 리뷰 역시 코드를 평가하는 일을 넘어, 동료와 함께 코드를 더 낫게 만드는 협업이다. Pull Request Code Review Collaboration 난이도 · 입문~중급 읽는 시간 · 약 9분 리뷰어는 당신의 머릿속을 모른다. 그가 아는 것은 화면에 보이는 diff와 설명뿐이다. 그래서 좋은 PR은 "리뷰하기 쉬운 PR"이고, 좋은 리뷰는 "받는 사람이 성장하는 리뷰"다. 01좋은 PR의 3원칙 작게 (Small) — 변경 줄.. 2026. 9. 14. 오픈소스 라이센스 이해 — 자유에도 규칙이 있다 오픈소스 오픈소스 라이센스, "무료"와 "마음대로"는 다르다 오픈소스는 공짜로 쓸 수 있지만, 아무렇게나 써도 되는 것은 아니다. 라이센스는 코드를 어떻게 쓰고, 수정하고, 배포할 수 있는지를 정한 약속이다. 이를 모르고 쓰면 회사 차원의 법적 문제로 번질 수 있다. License MIT · GPL Compliance 난이도 · 입문~중급 읽는 시간 · 약 9분 먼저 짚을 점 이 글은 라이센스의 일반적 개념을 설명하기 위한 것이며 법률 자문이 아니다. 실제 상업적 이용·배포·라이센스 충돌 판단은 사안에 따라 복잡하므로, 중요한 결정은 반드시 법률 전문가나 회사의 법무 검토를 거쳐야 한다. "GitH.. 2026. 9. 14. 이전 1 2 3 4 ··· 37 다음 반응형