C 언매니지드 프로그래밍

이 강좌는 선수 과목인 '프로그래밍 입문'에서 배운 절차적 프로그래밍 지식을 기반으로 C언어가 언매니지드 언어로서 가지는 기능들에 대해서 알 아봅니다



수강생 '김승민'

C 언어에 대한 이해 높여줌. 특히 컴파일 단계에 대한 자세한 설명으로 다른 여러 언어들의 뿌리 역할을 하는 C와 C에 영향을 받은 언어에 대한 이해도를 높인다.

수강생 '이은현'

포프 강사님이 정말 깔끔하게 설명해주셔서 이해하기 쉬웠다.
학교에서 보다 더 많은걸 배운것 같다.
포큐아카데미와 함께하면 더 좋을것.

POCU @ teachable은 신용카드체크카드 결제를 지원합니다.

지원하는 카드: Visa, Mastercard, American Express

지원하지 않는 카드: 라쿠텐(楽天カード), UnionPay(中国银联)

배울 내용

  • C 언어 사용법
  • 하드웨어 동작 원리
  • C 언어가 언매니지드 언어로서 가지는 기능들


요구 사항

  • "프로그래밍 입문(C#)" 과목 수료
  • "컴퓨터 공학용 수학" 과목 수료

설명

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


C는 가장 널리 사용되는 언매니지드 언어들 중 하나이며, 2019년 7월 기준 전 세계에서 2번째로 많이 사용되는 언어입니다. (출처: TIOBE)

현존하는 프로그래밍 언어는 크게 매니지드(Managed) 언어와 언매니지드(Unmanaged) 언어로 나눠지며, 이 둘의 차이는 프로그래머가 컴퓨터 하드웨어를 직접 제어할 수 있는지의 여부입니다. (예: 프로그래머가 직접 메모리를 관리하는가?) 대표적인 언매니지드 언어인 C는 하드웨어와 매우 가깝다는장점으로 40년이 넘는 세월 동안 살아남았을 뿐만 아니라 아직도 컴파일러, 운영체제, 임베디드 시스템 등 저수준의 제어 및 메모리 절약이 요구되는 곳에 왕성하게 사용되고 있습니다. 그리고 이런 트렌드는 한 동안 바뀌지 않을 전망입니다.

프로그래머의 지속적인 성장에 반드시 필요한 지식 중 하나는 컴퓨터 하드웨어에 대한 이해입니다. C는 대부분의 매니지드 언어와 달리 언매니지드 언어 특유의 기능 (예: 메모리 관리) 들을 포함하고 있기 때문에, 하드웨어의 동작 원리를 공부하고 싶은 분 들, 혹은 컴퓨터를 더 잘 이해하고 싶은 분들에게 좋은 입문용 언매니지드 언어라고 할 수 있겠습니다.

이 강좌는 선수 과목인 '프로그래밍 입문'에서 배운 절차적 프로그래밍 지식을 기반으로 C언어가 언매니지드 언어로서 가지는 기능들에 대해서 알 아봅니다. 이 코스를 성공적으로 마무리한 분들은 하드웨어에 대한 더 넓은 시야를 갖출 수 있을 것입니다.

본 강좌는 첫 주에 '프로그래밍 입문'과목에서 배운 기초 프로그래밍 개념들이 C에 어떻게 적용되는지 살펴 본 뒤 다음과 같이 크게 세 부분으로 나뉘며, 강의 진행도 이 순서를 따릅니다.

  1. ANSI C/C89: C의 기본이 되는 내용과 C로 구현하는 자료 구조들. (~11주 차)
  2. C99: C99 표준에서 추가된 기능들 (12주 차 ~ 13주 차)
  3. C++1x: C11/18 표준에서 추가된 최신 기능들 (14주 차~)

위와 같이 강의를 세 부분으로 나눈 이유는 아직도 많은 C 프로젝트들이 89년도의 표준을 사용하기 때문이며, 이런 트렌드는 바뀌지 않을 전망이기 때문입니다. 따라서 모든 프로젝트에서 쓸 수 있는 C의 지식을 중심으로 배우되 가능할 경우 새로 추가된 기능을 사용할 수 있는 실력을 갖추게 하는 것이 강좌의 목표입니다.

이 강좌의 대상

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

강좌 콘텐츠

  과목 소개
Available in
일 after you enroll
  수업에 도움되는 자료
Available in
일 after you enroll
  C언어 기본 문법 1
Available in
일 after you enroll
  C언어 기본 문법 2, 빌드 단계
Available in
일 after you enroll
  포인터
Available in
일 after you enroll
  C 스타일 문자열, 출력
Available in
일 after you enroll
  콘솔 입력, 파일 입출력, 커맨드 라인 인자
Available in
일 after you enroll
  구조체, 공용체, 함수 포인터
Available in
일 after you enroll
  가변 인자 함수, 올바른 오류 처리 방법
Available in
일 after you enroll
  레지스터, 스택 & 힙, 동적 메모리. 다중 포인터
Available in
일 after you enroll
  자료구조
Available in
일 after you enroll
  전처리기
Available in
일 after you enroll
  나만의 라이브러리 만들기, C99
Available in
일 after you enroll
  C99, C11
Available in
일 after you enroll
  Type-Generic 함수 만들기, 정적어서트, 메모리 정렬, 멀티스레딩
Available in
일 after you enroll
  강의를 마무리 하며
Available in
일 after you enroll