Udemy
  •  
  •  
  •  
  •  
  •  
  •  
  •  
  •  
  •  
  •  
  •  
  •  
  •  
Development
Web Development Data Science Mobile Development Programming Languages Game Development Database Design & Development Software Testing Software Engineering Development Tools No-Code Development
Business
Entrepreneurship Communications Management Sales Business Strategy Operations Project Management Business Law Business Analytics & Intelligence Human Resources Industry E-Commerce Media Real Estate Other Business
Finance & Accounting
Accounting & Bookkeeping Compliance Cryptocurrency & Blockchain Economics Finance Finance Cert & Exam Prep Financial Modeling & Analysis Investing & Trading Money Management Tools Taxes Other Finance & Accounting
IT & Software
IT Certification Network & Security Hardware Operating Systems Other IT & Software
Office Productivity
Microsoft Apple Google SAP Oracle Other Office Productivity
Personal Development
Personal Transformation Personal Productivity Leadership Career Development Parenting & Relationships Happiness Esoteric Practices Religion & Spirituality Personal Brand Building Creativity Influence Self Esteem & Confidence Stress Management Memory & Study Skills Motivation Other Personal Development
Design
Web Design Graphic Design & Illustration Design Tools User Experience Design Game Design Design Thinking 3D & Animation Fashion Design Architectural Design Interior Design Other Design
Marketing
Digital Marketing Search Engine Optimization Social Media Marketing Branding Marketing Fundamentals Marketing Analytics & Automation Public Relations Advertising Video & Mobile Marketing Content Marketing Growth Hacking Affiliate Marketing Product Marketing Other Marketing
Lifestyle
Arts & Crafts Beauty & Makeup Esoteric Practices Food & Beverage Gaming Home Improvement Pet Care & Training Travel Other Lifestyle
Photography & Video
Digital Photography Photography Portrait Photography Photography Tools Commercial Photography Video Design Other Photography & Video
Health & Fitness
Fitness General Health Sports Nutrition Yoga Mental Health Dieting Self Defense Safety & First Aid Dance Meditation Other Health & Fitness
Music
Instruments Music Production Music Fundamentals Vocal Music Techniques Music Software Other Music
Teaching & Academics
Engineering Humanities Math Science Online Education Social Science Language Teacher Training Test Prep Other Teaching & Academics
AWS Certification Microsoft Certification AWS Certified Solutions Architect - Associate AWS Certified Cloud Practitioner CompTIA A+ Cisco CCNA Amazon AWS CompTIA Security+ AWS Certified Developer - Associate
Photoshop Graphic Design Adobe Illustrator Drawing Digital Painting InDesign Character Design Canva Figure Drawing
Life Coach Training Neuro-Linguistic Programming Personal Development Mindfulness Personal Transformation Life Purpose Meditation Emotional Intelligence Neuroscience
Web Development JavaScript React CSS Angular PHP WordPress Node.Js Python
Google Flutter Android Development iOS Development Swift React Native Dart Programming Language Mobile Development Kotlin SwiftUI
Digital Marketing Google Ads (Adwords) Social Media Marketing Google Ads (AdWords) Certification Marketing Strategy Internet Marketing YouTube Marketing Email Marketing Retargeting
SQL Microsoft Power BI Tableau Business Analysis Business Intelligence MySQL Data Analysis Data Modeling Big Data
Business Fundamentals Entrepreneurship Fundamentals Business Strategy Online Business Business Plan Startup Freelancing Blogging Home Business
Unity Game Development Fundamentals Unreal Engine C# 3D Game Development C++ 2D Game Development Unreal Engine Blueprints Blender
30-Day Money-Back Guarantee
Development Programming Languages C++

C++ 언매니지드 프로그래밍

실제 업계에서 쓰이는 C++ 프로그래밍의 기본기
Rating: 4.5 out of 54.5 (524 ratings)
925 students
Created by Pope Kim
Last updated 1/2020
Korean
30-Day Money-Back Guarantee

What you'll learn

  • C++ 언어 사용법
  • 올바른 프로그래밍 습관
  • C++ 언어가 내부적으로 어떻게 도는지에 대한 이해

Course content

29 sections • 235 lectures • 25h 28m total length

  • Preview05:21
  • Preview17:51
  • Preview04:10
  • Preview02:59
  • Preview11:13
  • Preview07:12

  • Hello World 출력하기, 네임스페이스(namespace)
    10:31
  • 코드보기: using / namespace
    04:07
  • 복습 퀴즈
    1 question
  • << 연산자(operator)
    02:16
  • 코드보기: 모든걸 출력해 보자!
    02:07
  • 복습 퀴즈
    1 question
  • 출력형식 지정(Output Formatting) 1
    13:18
  • 코드보기: 조정자
    04:52
  • 복습 퀴즈
    2 questions
  • 출력형식 지정(Output Formatting) 2
    02:10
  • 정리
    01:31

  • Preview10:05
  • 복습 퀴즈
    1 question
  • 스트림 상태(Stream States)
    07:09
  • 입력 버리기(Discarding Input): clear(), ignore()
    04:47
  • 복습 퀴즈
    1 question
  • 입력 버리기: get(), getline()
    02:23
  • 코드보기: 정수의 합 구하기, getline()
    06:50
  • 복습 퀴즈
    1 question
  • 정리
    01:55

  • Bool 데이터형
    08:47
  • 참조(Reference) 1
    13:53
  • 복습 퀴즈
    2 questions
  • 참조 2
    12:26
  • Preview04:25
  • 코드보기: 참조
    02:54
  • 복습 퀴즈
    1 question
  • 코딩표준 쪼오금~
    10:00
  • 정리
    02:03

  • std::string 클래스
    14:36
  • 복습 퀴즈
    1 question
  • std::string이 좋은가요?
    14:46
  • 코드보기: 문자열 뒤집어 덧붙이기
    02:38
  • 복습 퀴즈
    1 question

  • 파일 열기와 닫기
    09:47
  • Preview10:35
  • 잘못된 입력이 있는 경우
    04:59
  • 잘못된 입력을 어떻게 처리하지?
    06:28
  • 또 다른 문제...
    02:59
  • 파일 읽기의 베스트 프랙티스(Best Practice)
    03:42
  • 복습 퀴즈
    1 question
  • 파일 쓰기, 바이너리 파일 읽기/쓰기, 파일 안에서의 탐색(seek)
    13:48
  • 코드보기: 파일 입출력
    08:12
  • 복습 퀴즈
    1 question
  • 정리
    02:39

  • OOP란?
    15:19
  • OOP가 복잡해졌다!
    09:07
  • 접근 제어자(Access Modifier)
    06:00
  • 복습 퀴즈
    1 question
  • Preview17:11
  • 개체 배열 생성, 개체 소멸
    08:39
  • 멤버 변수 초기화
    05:59
  • 복습 퀴즈
    1 question
  • 생각할 거리: new/delete와 malloc()/free()의 차이
    01:07
  • 생성자(Constructor), 초기화 리스트(Initializer List)
    08:34
  • 코드보기: Vector 클래스의 헤더 및 cpp 파일
    03:06
  • 기본 생성자, 컴파일러가 하는 일
    03:01
  • 영상 퀴즈: 둘 중 컴파일 안 되는 코드는?
    1 question
  • 둘 중 컴파일 안 되는 코드는?
    01:27
  • 영상 퀴즈: 둘 중 컴파일 안 되는 코드는?
    1 question
  • 생성자 오버로딩(Overloading), 소멸자(Destructor)
    09:40
  • 복습 퀴즈
    1 question
  • const 멤버 함수
    06:02
  • 코드보기: Vector 클래스
    02:14
  • 구조체(Struct) vs 클래스(Class)
    10:46

  • 복사(Copy) 생성자
    15:26
  • 코드보기: char 배열과 복사 생성자
    02:23
  • 함수 오버로딩(overloading)
    02:07
  • 영상 퀴즈
    1 question
  • 함수 오버로딩 매칭하기
    02:58
  • 영상 퀴즈
    4 questions
  • 함수 매칭 순서
    04:12
  • 코드보기: 함수 오버로딩과 Vector 클래스
    04:13
  • Preview13:18
  • friend 키워드
    13:55
  • 연산자 오버로딩과 const
    14:20
  • 코드보기: Vector 클래스에서 연산자 오버로딩하기
    03:19
  • 복습 퀴즈
    1 question
  • 연산자 오버로딩을 남용하지 말 것
    06:45
  • 암시적 함수들을 제거하는 법
    05:17
  • 복습 퀴즈
    1 question
  • 정리
    02:04

  • 상속
    18:32
  • 생성자 호출 순서, 소멸자 호출 순서
    05:22
  • 코드보기: Animal, Cat, Dog 클래스
    02:54
  • 복습 퀴즈
    1 question
  • 정리
    01:29
  • Preview14:45
  • 정적 바인딩
    02:52
  • 동적 바인딩
    12:00
  • 복습 퀴즈
    1 question
  • 가상 소멸자
    07:21
  • 코드보기: Animal, Cat, Dog의 가상함수
    04:47
  • 복습 퀴즈
    1 question
  • 정리
    05:55
  • 다중(multiple) 상속
    10:16
  • 추상(abstract) 클래스
    05:38
  • 영상 퀴즈
    4 questions
  • "인터페이스"
    06:18
  • 코드보기: IFlyable, IWalkable, Bat, Cat 클래스
    01:45
  • 정리
    01:41

  • Preview11:46
  • static_cast
    07:35
  • 코드보기: static_cast으로 값 변환하기
    01:54
  • 코드보기: static_cast으로 개체 포인터 변환하기
    05:17
  • reinterpret_cast
    08:15
  • 코드보기: Tiger 개체의 주소 저장하기
    03:58
  • 복습 퀴즈
    4 questions
  • const_cast
    07:26
  • dynamic_cast
    12:01
  • 복습 퀴즈
    1 question
  • 정리
    01:59

Requirements

  • "C 언매니지드 프로그래밍" 수료
  • "개체지향 프로그래밍 및 설계" 수료

Description

본 비디오 강좌는 포큐아카데미에서 진행하는 COMP3200 수업의 비디오 강좌입니다.

C++은 C와 더불어 가장 널리 사용되는 언매니지드 언어일 뿐만 아니라 2018년 7월 기준 전세계에서 3번째로 많이 쓰이는 언어입니다. (출처: TIOBE) 그리고 언매니지드 언어라는 특수성 때문에 한동안 사용률이 떨어지지 않을 전망입니다.

현존하는 프로그래밍 언어를 크게 둘로 나누면 매니지드(Managed) 언어와 언매니지드(Unmanaged) 언어가 있습니다. 이 둘의 차이는 프로그래머가 컴퓨터 하드웨어를 직접 제어할 수 있는지 여부입니다. (예: 프로그래머가 직접 메모리를 관리하는가?)

프로그램의 성능보다 제품을 빨리 개발하는 것이 중요한 분야에서는 C#, Java와 같은 매니지드 언어를 널리 사용합니다. 하지만 운영체제, 비디오 게임, 가상현실, 주식거래소, 머신 러닝 코어, 블록체인 등 성능이 더 중요한 분야에서는 여전히 언매니지드 언어를 사용할 수밖에 없습니다. 따라서 본 강좌는 실제 업계에서 쓰이는 C++ 프로그래밍 기법에 중점을 맞춰 진행합니다.

언매니지드 언어의 장점은 여기서 그치지 않습니다. 프로그래머의 지속적인 성장에 반드시 필요한 지식 중 하나가 컴퓨터 하드웨어에 대한 이해입니다. 탑 레이서라면 자동차의 동작 원리를 잘 알아야 하듯이 탑 프로그래머는 하드웨어의 동작 원리를 잘 이해해야 합니다. 이걸 돕는 언어가 바로 언매니지드 언어입니다.

'COMP2500: Java 개체지향 프로그래밍 및 설계'와 마찬가지로 이 강좌에서도 개체지향 프로그래밍(OOP)에 대해 배웁니다. 하지만 이 코스를 성공적으로 마무리한 분들은 하드웨어 수준에서 개체지향 프로그래밍이 어떻게 작동하는지까지 자세히 이해하실 수 있을 겁니다.

본 강좌는 다음과 같이 크게 세 부분으로 나뉘며, 강의 진행도 이 순서를 따릅니다.

  1. 코어 C++: 참조, 클래스, 상속 등 C++의 기본이 되는 내용. C++98 표준 ( ~ 5주 차)

  2. 모던 C++: STL 등 C++03 표준에서 추가된 기능 중 업계에서 쓰이는 내용들 (6주 차 ~ 9주 차)

  3. C++1x: C++11/14/17 표준에서 추가된 최신 기능 중 업계에서 쓰이는 내용들 (10주 차 ~ )

위와 같이 강의를 세 부분으로 나눈 이유는 회사에 따라 사용하는 C++ 표준이 다르고, 성능 상의 이유로 일부러 과거의 표준을 여전히 사용하는 곳도 많기 때문입니다. 따라서 최신의 C++ 표준만을 사용하는 프로그래머는 업계에서 원하는 프로그래머가 아닌 경우가 많습니다.

Who this course is for:

  • 컴퓨터 공학의 기본기를 배우고 싶은 분들
  • 프로그래머로서 평생 커리어를 꿈꾸는 분들

Instructor

Pope Kim
CTO, Software Architect & Educator
Pope Kim
  • 4.6 Instructor Rating
  • 1,091 Reviews
  • 1,519 Students
  • 5 Courses

Pope Kim is an experienced software engineer, architect, and educator.

After shipping numerous AAA game titles, including FIFA and Halo as a 3D rendering engineer, he moved to the web industry to lead multi-million dollar projects at Staples. Then he accepted a CTO position at a Silicon Valley startup company where he built and managed engineering teams across three different countries. With his strong leadership, the company's valuation had increased over 25,000 times during his stay.

Outside engineering career, he also taught at multiple universities. His most recent position in education was Faculty at BCIT, which he resigned from to make his own computer science education service, https://pocu.academy

  • Udemy for Business
  • Teach on Udemy
  • Get the app
  • About us
  • Contact us
  • Careers
  • Blog
  • Help and Support
  • Affiliate
  • Terms
  • Privacy policy
  • Cookie settings
  • Sitemap
  • Featured courses
Udemy
© 2021 Udemy, Inc.