C++만큼 개발환경 설정하기 까다로운 언어가 또 있을까요? 돌아다니는 정보를 따라 개발 환경을 설정해보지만 빌드 한 번 하기가 왜 이렇게 어렵고 복잡한지… 이 강의를 통해 OS, 플랫폼 상관 없이 언제 어디서나 간편하게 C++ 개발환경을 설정하는 방법을 배워보세요!
OS에 상관 없는 C++ 개발환경 설정
Version Control System(VSC, Github) 설정 방법
C++ 개발 효율을 높이기 위한 코딩폰트 설정 방법
C++ 개발을 위한 Integrated Development Environment(IDE, Visual Studio Code) 설정 방법
스크립트를 통한 개발환경 설정 자동화
학습 대상은
누구일까요?
개발환경이 무엇인지 알지 못하는 분
C++ 개발을 처음 시작하는 분
PC를 포맷할 때마다 개발환경을 다시 설정하는 것이 너무 힘들었던 분
보다 효율적으로 개발환경을 관리하기를 원하시는 분
여러 플랫폼에서 일관적인 개발환경을 구성하기를 원하시는 분
C++ 개발 프로세스를 최적화하고 싶은 분
521
명
수강생
12
개
수강평
4
개
답변
4.7
점
강의 평점
2
개
강의
안녕하세요. 개발 대장 양은성입니다.
저는 한때 배송 로봇과 자율주행 소프트웨어를 열정적으로 개발하던 사람이었습니다. 설계하고 개발하는 일을 누구보다 사랑했지만, 결국 업계를 떠난 지 벌써 1년이 지났습니다. 제가 그토록 좋아하던 일을 뒤로하고 떠날 수밖에 없었던 이유는 단 하나였습니다.
“더 많은 사람을 도와주고 싶다.”
로봇과 함께한 어린 시절
어릴 적, 부모님이 사주신 프로그래머블 레고로 처음 자동차를 만들어 보며 프로그래밍에 입문했습니다. 중학생 시절에는 마인드스톰으로 국내 로봇 대회에서 입상하며 국가대표로 선발되어 세계 대회에도 출전했습니다.
그리고 대학원에서 로봇공학을 전공하면서 다시 로봇을 접하게 되었는데, 제가 예상했던 로봇과는 많이 달랐습니다. 단순한 알고리즘을 구현하는 수준이 아니라, C++ 프로그래밍과 수많은 수식을 이해해야 했습니다. 특히 변수가 무엇이고 함수가 무엇인지조차 모르는 상태에서 복잡한 로봇 소스 코드를 읽고 수정하며 연구와 논문 작성까지 해야 한다는 점이 큰 도전이었습니다.
다행스럽게도 ROS(로보틱스 오퍼레이팅 시스템) 덕분에 소스 코드를 크게 수정하지 않고 로봇 파라미터만 조정하는 방식으로 연구를 이어갈 수 있었습니다. (이 경험이 훗날 또 다른 시련이 될 줄은 몰랐습니다.) 좋은 연구실과 환경 덕분에 여러 로봇·자율주행 과제를 진행할 수 있었고, 이를 계기로 좋은 회사에 입사할 기회도 얻게 되었습니다.
현업에서의 시행착오와 성장
현업은 대학원 연구와 매우 달랐습니다. 개발 로직뿐 아니라 소프트웨어 라이선스, 개발 프로세스, 협업 방식 등 모든 것이 처음 접하는 환경이었습니다. 같은 분야의 선배조차 없던 상황에서 스스로 수많은 시행착오를 거치며 프로그래밍을 익혀야 했고, 한 달~두 달에 한 번씩은 코드 리팩토링을 해야 했습니다. 또한 상용화를 목표로 하는 프로젝트에서는 오픈소스를 마음대로 사용할 수 없다는 현실도 마주해야 했습니다.
이후 자율주행 회사로 이직하며 자율주행 소프트웨어 설계와 개발을 총괄하는 소프트웨어 아키텍트가 되었습니다. 팀의 규모가 커지면서 알고리즘 엔지니어 가이드, 소프트웨어 설계, 유지 보수, 협업 프로세스 개선 등을 총체적으로 담당했습니다. 그 결과 팀의 생산성이 크게 향상되었고, 기존 프로그램을 개선해 1달 걸리던 작업을 1주일로 단축시키는 큰 성과를 거두었습니다. 바닥부터 소프트웨어를 직접 설계하고 구현해본 경험은 저에게 또 다른 세계를 열어주었고, 문제 해결 능력과 개발 효율성이 비약적으로 상승했습니다.
더 많은 사람을 돕고 싶은 마음
저는 이러한 지식과 노하우를 더 많은 사람들에게 나누고 싶었습니다. 이미 많은 개발 강의와 서적이 있지만, 실제 프로젝트에서 얻을 수 있는 ‘경험과 실전 적용’이라는 측면은 부족하다고 느꼈습니다. 물론 제 경험이 정답은 아닙니다. 하지만 비슷한 분야에서 개발하고자 하는 분들에게는 크게 도움이 될 것이라 확신합니다.
오픈소스를 사용하는 것과 제로베이스부터 처음부터 모든 것을 직접 개발해보는 것은 전혀 다른 경험입니다. 특히 실무를 목표로 하는 엔지니어라면, 처음부터 개발해보는 경험이 성장과 능력 향상에 얼마나 큰 영향을 미치는지 체감할 것입니다. 저 역시 회사에서 일하던 중 “회사 안에서의 개발 설계·가이드만으로는 100명도 채 도울 수 없겠구나. 교육을 통해 훨씬 더 많은 사람에게 개발 생산성을 높이고 잘못된 방향으로 시간 낭비하는 것을 줄여줄 수 있지 않을까?”라는 생각을 하게 되었습니다.
그렇게 회사를 떠나 1년간 여러 시행착오를 거친 끝에, 이제 여러분 앞에 서게 되었습니다.
함께 만들어가는 좋은 개발 환경
좋은 개발 환경을 만들기 위해서는, 좋은 것을 이미 갖고 있는 사람이 그것을 널리 공유하고 전수해야 합니다. 저는 현업에서 실무 개발과 개발 가이드를 직접 경험하면서 노하우를 쌓았습니다. 이제 이 모든 것을 공개하여, 여러분이 원하는 프로그램을 개발할 수 있도록 도와드리고 싶습니다. 저는 더 이상 경쟁자가 아닌, 여러분을 응원하는 사람입니다. 숨길 노하우도 저만의 킥도 없습니다. 제가 아는 모든 것을 알려드릴 테니, 개발 과정에서 어려운 점이 있다면 언제든 ‘개발 대장’에게 물어봐 주세요.
앞으로 여러분이 좋은 프로그램을 개발하는 방법을 알려드릴 수 있길 바랍니다. 함께 즐거운 개발 생활을 이어가길 기대하며, 이만 인사를 마칩니다.
감사합니다.
개발 대장 양은성 드림
2023.06 - Present
Chief Executive Officer | HolyGround
2021.12 - 2023.05
Visual SLAM Software Architect | Visual Positioning Team | StradVision
자동 주차 위치 인식을 위한 Visual SLAM(vSLAM) 소프트웨어 개발/소프트웨어 아키텍트
산업 표준(MISRA C++ 2008) 준수하는 C++ 프레임워크를 제로 베이스에서 설계 및 개발
팀 내 생산성 4배 이상 향상 (기능 개발 기간: 2개월 → 2주 이하)
개발 스타일, 설계, 협업 가이드 문서 작성 및 팀 내 적용
2019.01 - 2021.12
Perception Part Tech-Lead | LMDR Algorithm Team | Robotis
배송 로봇을 위한 인지 소프트웨어 개발/Tech-lead
Embedded Platform(Nvidia Jetson)에서 CUDA를 사용하여 병렬 가속화 개발
ROS를 사용하지 않고, C++ 멀티 스레드 시스템 프레임워크를 설계 및 개발
높은 수준의 자동화 스크립트를 통한 개발환경 셋업 자동화 적용
2023 - Present
readable_code::cpp::코어_개발환경_설정 - 따라하면 끝나있는 C++ 개발환경 설정의 A to Z
2023 - Present
2023.08 - 2023.09
Python Basic Grammar 교육
서울ICT이노베이션 특성화고등학교 AI교육 | 한국디지털융합진흥원
2023.12
프로처럼 개발하기 - C++ 개발 process
[2기] K-Digital Training: 프로그래머스 자율주행 데브코스 (Planning&Control) | Programmers
2023.01 - 2023.09
C++ Coding Guideline 특강
[3기] K-Digital Training: 프로그래머스 자율주행 데브코스 (Perception) | Programmers
[5기] K-Digital Training: 프로그래머스 자율주행 데브코스 (Perception) | Programmers
[1기] K-Digital Training: 프로그래머스 자율주행 데브코스 (Planning&Control) | Programmers
2023.09
개발환경 설정/Build System/Code Quality Improvement 특강
[1기] K-Digital Training: 프로그래머스 자율주행 데브코스 (Planning&Control) | Programmers
2023.09
Development environment setting for C++ 특강
[6기] K-Digital Training: 프로그래머스 자율주행 데브코스 (Perception) | Programmers
2023.09
Build System for C++ Modular Project 특강
[6기] K-Digital Training: 프로그래머스 자율주행 데브코스 (Perception) | Programmers
2024.03
포트폴리오 작성 특강
SSAFY(Samsung Software Academy For Youth) | Samsung
2017.03 – 2019.02
Ph.D. candidate in Engineering | Control and robot engineering | Chungbuk National University
2014.03 – 2017.02
Master of Engineering | Control and robot engineering | Chungbuk National University
2009.03 – 2014.02
Bachelor of Engineering | Information and Communication Engineering | Chungbuk National University
Readable Code | 방장 | 카카오톡 오픈채팅
전체
28개 ∙ (3시간 33분)
해당 강의에서 제공:
readable_code 개요
11:58
강사 소개
06:30
강의 설명
06:32
C++ compiler 개요
13:24
Build system 개요
12:07
필수 프로그램 설치 on MacOS
05:37
필수 프로그램 설치 on Ubuntu
06:13
예제 코드 빌드 on terminal
05:52
무료