C++ : OOP 아닌 다른 대안은 없을까? / if(kakaoAI)2024
if kakao 카카오 · YouTube
AI 핵심 요약
C++ OOP는 GUI나 라이브러리 개발에 유용하지만, 규모가 커지면 깊은 상속과 객체 간 참조가 결합을 키워 사이드 이펙트와 비로컬 추론을 낳을 수 있다. 발표자는 이를 보완할 대안으로 불변 값과 순수 함수 중심의 value-oriented programming을 소개하고, 상태와 동작을 분리하며 상속 대신 컴포지션과 std::optional·std::variant를 활용하는 방식을 설명했다. 또한 Redux와 유사하게 액션과 리듀서로 모델을 갱신하고 변경 콜백으로 화면을 업데이트하는 단방향 데이터 흐름을 제공하는 라이브러리와, 큰 컨테이너의 복사 비용을 줄이는 persistent data structure를 함께 살펴봤다. 값 중심 설계는 테스트·디버깅과 로컬 추론, 동시성 관리에 도움을 주지만, 큰 데이터의 복사 비용을 고려해 적절한 자료구조를 선택해야 한다.
- 상속은 강한 결합을 만들 수 있으므로, 서브타입 관계가 분명한 경우에만 사용하고 그 외에는 컴포지션을 고려하세요.
- 값 중심 설계에서는 상태와 동작을 분리하고, 입력만으로 결과가 정해지는 순수 함수를 활용합니다.
- C++의 std::optional과 std::variant는 값으로 상태와 여러 타입의 경우를 표현하는 데 쓸 수 있습니다.
- 큰 불변 컨테이너를 자주 갱신할 때는 구조적 공유와 copy-on-write를 지원하는 persistent data structure를 고려하세요.
- Redux와 유사한 단방향 데이터 흐름은 액션, 리듀서, 모델 변경 알림을 분리해 상태 변화를 추적하기 쉽게 합니다.
소개
C++ 언어 사용자로서 수십년간 당연시하게 여겨온 OOP 방법론에 대해서 현실을 돌아보고, OOP 고통을 벗어나게 해 줄 방법들, 특히 최근 여러 컨퍼런스에서 주목받았던 value oriented programming에 대해서 살펴보고, 현실적으로 이를 적용할 immutable data structure에 대해서 살펴본 내용을 소개합니다. #C++ #OOP #개발방법론 C++로 카카오톡을 개발하고 있는 Heath입니다. 발표자료 보기 👉 https://speakerdeck.com/kakao/ifkakao24-46 if(kakaoAI)2024에 대한 자세한 정보는 👉 https://if.kakao.com #카카오 #이프카카오 #개발자컨퍼런스 #AI #기술 #개발 #ifkakaoAI2024
비슷한 학습 자료
컨퍼런스 if kakao
Swift Concurrency Essentials / if(kakaoAI)2024
컨퍼런스 if kakao
Swift 6부터 본격적으로 지원되는 Swift Concurrency에 대한 전반적인 개념을 소개합니다. 동시성 환경에서 안전한 코드를 만들기 위한 Concurrency의 주요 개념들에 대해 다루며, 이들을 다룰 때 주의할 점과 카카오톡에서는 어떻게 이용하고 있는지를 알아봅니다. #Swift #Concurrency #iOS #KakaoTalk 톡iOS에서 톡캘린더 개발을 담당하여, 더 나은 서비스를 만들기 위해 노력하는 Hayden입니다. 발표자료 보기 👉 https://speakerdeck.com/kakao/ifkakao24-48 if(kakaoAI)2024에 대한 자세한 정보는 👉 https://if.kakao.com #카카오 #이프카카오 #개발자컨퍼런스 #AI #기술 #개발 #ifkakaoAI2024
프로그래밍 언어
컨퍼런스 if kakao
1년간 진행된 카카오맵 매장관리 프로젝트에서 TDD를 활용하여, 디자인, 마크업, API 없이도 프론트엔드 개발을 사전에 진행했던 경험을 바탕으로 새로운 프로세스를 제안합니다. 이를 통해 프론트엔드 개발을 보다 효율적으로 진행할 수 있는 방법론을 소개하고자 합니다. #front-end #TDD #Vue.js 카카오의 지도서비스 및 매장관리 서비스 프론트엔드 업무를 담당하고 있는 Cayde입니다. 발표자료 보기 👉 https://speakerdeck.com/kakao/ifkakao24-34 if(kakaoAI)2024에 대한 자세한 정보는 👉 https://if.kakao.com #카카오 #이프카카오 #개발자컨퍼런스 #AI #기술 #개발 #ifkakaoAI2024
프론트엔드 TDD
컨퍼런스 if kakao
업무 효율화를 위한 카카오 사내봇 개발기 / if(kakaoAI)2024
컨퍼런스 if kakao
카카오 내에 수많은 데이터에서 원하는 데이터를 빠르게 찾아주는 '0depth 사내봇 개발기'를 공유합니다. #Data #AI #LLM #RAG 카카오 데이터 조직의 Tory입니다. 실용적이고 사용자 친화적인 AI Application을 만드는 것에 관심이 많습니다. 카카오 내에 다양한 AI 프로덕트를 생산하는 Jennie입니다. 발표자료 보기 👉 https://speakerdeck.com/kakao/ifkakao24-27 if(kakaoAI)2024에 대한 자세한 정보는 👉 https://if.kakao.com #카카오 #이프카카오 #개발자컨퍼런스 #AI #기술 #개발 #ifkakaoAI2024
AI에이전트 개발
컨퍼런스 if kakao
카카오클라우드 MLOps 활용 방안 소개 / if(kakaoAI)2024
컨퍼런스 if kakao
카카오클라우드 위에서 AI를 위한 데이터 수집부터 모델 개발, 학습, 튜닝, 서빙까지의 파이프라인 구성과 활용 방안에 대해 소개합니다. #빅데이터 #MLops #AI #Cloud 카카오클라우드에서 Data 및 Machine Learning 플랫폼 PM을 담당하고 있는 Evan입니다. 발표자료 보기 👉 https://speakerdeck.com/kakao/ifkakao24-22 if(kakaoAI)2024에 대한 자세한 정보는 👉 https://if.kakao.com #카카오 #이프카카오 #개발자컨퍼런스 #AI #기술 #개발 #ifkakaoAI2024
데브옵스 · 인프라 딥러닝 · 머신러닝 클라우드
컨퍼런스 if kakao
카카오i를 통한 AIOT 서비스의 사례와 미래 / if(kakaoAI)2024
컨퍼런스 if kakao
모든 요소기술들을 아우를 수 있는 미래 먹거리로써 사물인터넷에 연결되는 스마트 디바이스와 클라우드 플랫폼, 그리고 서비스에 인공지능이 접목된 지능화된 사물인터넷(Artificial Intelligence of Things, AIoT)이 부각되는 시대. 사람과 사물이 경계없이 연결하기 위한 카카오i의 AIOT플랫폼의 구조와 현재, 방향, 고민에 대해 공유합니다. #AIoT 디케이테크인의 AI공통플랫폼팀에서 kakaoi 대화형플랫폼 개발을 하고 있는 Ramsy와 Tristan입니다. 발표자료 보기 👉 https://speakerdeck.com/kakao/ifkakao24-2 if(kakaoAI)2024에 대한 자세한 정보는 👉 https://if.kakao.com #카카오 #이프카카오 #개발자컨퍼런스 #AI #기술 #개발 #ifkakaoAI2024
인공지능 기타 네트워크
컨퍼런스 if kakao
[2023.05.11. 제1회 kakao tech meet 발표] 카카오에서 클라우드를 만들고 있습니다. 뇌과학(neuroscience)을 전공하고 있어서 클라우드와 알고리즘을 통해서 AI 문제를 푸는 것에 관심이 많습니다. 취미는 논문 읽기, 특기는 책 만들기인 엔지니어입니다. 카카오의 Nocode 플랫폼 monokode와 서버리스 서비스 functions를 통해서 간단하지만 강력한 generative AI 서비스를 쉽게 개발하는 방법에 대해서 설명합니다. 노코드가 궁금한 분들, 노코드로 AI 서비스를 만드는 방법에 대해서 궁금한 분들, 오픈소스에 관심 있는 분들이 듣길 추천합니다. #kakaotech #generativeai , #nocode, #serverless, #eventualcomputing, #cloud --- 💬 발표자 인터뷰: https://tech.kakao.com/2023/05/31/monokode-stein/ ✨ 카카오 테크 페이스북: https://...
인공지능 기타 클라우드