C++ Korea에서 8번째로 주최하는 세미나는 C++을 사용하는 다양한 분야에 관해 여러 지식들을 공유합니다.
- 02:21~ : 세션 1 (POCO 라이브러리를 사용한 채팅 서버 개발)
- 1:13:25~ : 세션 2 (C++로 구현하는 ML Framework)
- 2:05:41~ : 세션 3 (C++ Modules 실무활용 언리쉬드)
- 3:03:01~ : 세션 4 (쉽게 따라하는 V8 임베딩)
오픈 소스 라이브러리 POCO를 사용하여 크로스 플랫폼을 지원하는 채팅 서버를 개발하는 방법을 설명합니다. POCO의 네트워크, Redis 등 다양한 라이브러리를 잘 활용하면 C++가 타 언어에 비해서 생산성이 떨어지는 단점을 보완하면서 고성능 서버를 쉽게 만들 수 있습니다.
- 최적화에 관심이 있다
- 코드 품질을 높이고 싶다
- 나도 게임 엔진을 만들어보고 싶다
- 성능과 최적화
- 타입 시스템 활용
- 게임엔진 아키텍처
- 최흥배.
C++ 로 딥러닝 프레임워크를 구현하며 겪은 시행착오와 과정을 소개합니다. 유저 인터페이스 디자인부터 그래프 구현, 하드웨어를 고려한 연산 최적화까지 다양한 부분에 대해 전반적인 내용을 다룹니다. C++ 에서 파이썬처럼 편리하게 딥러닝 프로젝트를 할 수 있도록 편리한 사용성과 확장성, 뛰어난 성능을 위해 필요했던 고민들, 구현하면서 배우게 된 점과 경험들을 세미나를 통해 모두와 공유하고 싶습니다. 또한 앞으로 C++ 기반 딥러닝 프레임워크의 발전 방향에 대한 생각을 공유하고 의견을 나누어보려 합니다.
- 참고자료 소개
- CLI, 함수 사용법
- 모듈을 만들기(build) 위한 최소사항들
- 프로젝트 생성
- 설치(install)
- 빌드 절차 설계
- CMake가 도와줄 수 있는 부분은 어디일까?
- 외부(external) 모듈/패키지 가져오기
- Conan
- find_package + VcPkg
- add_subdirectory
- 패키징
- find_package 지원
- CMake가 복잡해지는 이유들
- 소스 코드와 빌드 설정의 상관관계
- 플랫폼 대응
- 컴파일러 대응
- (주관적) 가이드라인
- 김재우.
Modules는 C++20의 4대 대박 업데이트 중에서도 편의성에 있어 개발자들의 체감도가 가장 높을 만한 단연코 가장 주목받고 있는 개념입니다. 그동안 최신 컴파일러를 통해 코스상에서만 모듈을 사용할 수 있었지만, VS2019 16.8 버전부터 개발 툴의 전폭적인 지원을 받게 됨에 따라 본격적으로 실무에서 활용할 수 있는 환경이 만들어졌습니다. Modules에 대한 기본적인 내용부터 IDE를 활용해 개발하는 실무까지 실습과 함께 익혀보는 시간을 갖도록 하겠습니다.
- 제이슨 김. [email protected]
V8은 구글이 Chromium을 개발하면서 함께 개발한 자바스크립트 엔진입니다. Node.js 및 Deno와 같은 런타임을 개발하는데도 사용되었고, 크로스플렛폼을 지원합니다. 이 발표에선 V8을 다운받아 빌드한 후, C++ 프로그램에 임베딩하는 방법을 소개합니다.
- V8 소개
- V8 소스코드 다운로드 및 빌드하는 법
- V8 링크하기
- 자바스크립트 소개
- V8으로 자바스크립트 코드 실행하기
- C++ 함수를 자바스크립트에 노출하기
- ES6 모듈 코드 실행하기
- C++ 함수로 이루어진 ES6 모듈 만들기
- setTimeout 구현하기
- 자바스크립트 Promise 활용하기
- C++ 클래스를 자바스크립트에 노출하기
- v8pp로 C++ 클래스를 자바스크립트에 노출하기
- 김찬중. [email protected]
- DGIST 기초학부 재학중
- https://github.com/paxbun
- 본 행사는 온라인으로 개최하며 비용은 무료입니다.
- 행사 이후 발표 자료 및 영상은 발표자의 의사에 따라 공개되지 않을 수 있습니다.
행사 관련 문의는 [email protected] 으로 해주시기 바랍니다.