Toggle menu
Toggle personal menu
Not logged in
Your IP address will be publicly visible if you make any edits.

MFC++: Difference between revisions

From ZeroWiki
No edit summary
(Repair batch-0002 pages from live compare)
 
(77 intermediate revisions by 27 users not shown)
Line 8: Line 8:
* 진행 방식은 과거 [[미시Cpp]]를 벤치마킹(?)해서 진행합니다.
* 진행 방식은 과거 [[미시Cpp]]를 벤치마킹(?)해서 진행합니다.
** 즉, 주마다 특정 주제 내용을 소개하는 방식으로 진행됩니다.
** 즉, 주마다 특정 주제 내용을 소개하는 방식으로 진행됩니다.
* 진행 스타일은 과거 [[CS]] 스터디와 동일합니다.
* --진행 스타일은 과거 [[CS]] 스터디와 동일합니다.--
** --템플릿도 그냥 복사해서...--
** 복사와 이동부터는 완전히 PPT 진행으로 변경되었습니다.


* 2016년 2학기 시작 직후부터 시작할 예정입니다.
* 2016년 2학기 시작 직후부터 시작합니다.
* 항상 2시간 정도로 진행 예정입니다.
* 되도록이면 수요일 정모 직후, 7시에서 9시까지 진행합니다.
* 되도록이면 수요일 정모 직후에 시작하려고 예정중입니다.
** 주마다 진행 요일이 불가피하게 바뀌어야 할 수도 있습니다.
** 주마다 진행 요일이 불가피하게 바뀌어야 할 수도 있습니다.
* 위 세가지는 예정이므로 바뀔 수도 있습니다!


* 진행에 사용된 소스 코드 및 PPT 자료는 해당 레포지토리에 있습니다.
** [https://github.com/nErumin/MFCplusplus]
* '''종료되었습니다!'''
== 참가자 ==
== 참가자 ==
* 기반 C++ 내용에 대해서는 거의 생략할 예정이므로, 대체적으로 이미 C++을 공부해본 경험이 있으신 편이 좋습니다.
* 참가하실 분은 아래 이름을 적어주세요!
* 참가하실 분은 아래 이름을 적어주세요!
* [[신형철]], [[박인서]]
* [[신형철]], ~~프로 도강러~~[[성훈]], [[지무근]], [[이민욱]]
 
* ~~[[박인서]] : 탈주자인데 개근중이다.. 응?~~
* [[권준혁]] : 참가할수있을 때 참가합니다.
== 목표 ==
== 목표 ==
* C++ 돌아보기 --돌아보는 척 하면서 더 낯설게 만들기--
* C++ 돌아보기 --돌아보는 척 하면서 더 낯설게 만들기--
Line 40: Line 42:
* [http://www.kyobobook.co.kr/product/detailViewKor.laf?ejkGb=KOR&mallGb=KOR&barcode=9788956742618&orderClick=LAG&Kc=|Exceptional C++ Style]
* [http://www.kyobobook.co.kr/product/detailViewKor.laf?ejkGb=KOR&mallGb=KOR&barcode=9788956742618&orderClick=LAG&Kc=|Exceptional C++ Style]
* 그 외 위키피디아와 C++ 레퍼런스 사이트 등
* 그 외 위키피디아와 C++ 레퍼런스 사이트 등
== 진행 내용 ==
== 진행 내용 ==
* [[MFC++/9월7일]]
* [[MFC++/10월5일]]
* MFC++/11월2일
* MFC++/11월9일
* MFC++/11월30일
* MFC++/1월4일
* MFC++/1월11일
* MFC++/1월18일
* MFC++/2월1일
* MFC++/2월15일
* MFC++/2월22일
* MFC++/3월7일
** Chapter 11. 복사와 이동에서 복사까지 완료!
* MFC++/3월22일
** Chapter 11. 복사와 이동 완료!
* MFC++/3월29일
** Chapter 12. 연산자 오버로딩 완료!
* MFC++/5월9일
** Chapter 13. 객체 지향 프로그래밍과 C++ 진행중.
* MFC++/5월24일
** Chapter 13. 객체 지향 프로그래밍과 C++ 완료!
** Chapter 14. 템플릿 진행중.
* MFC++/5월31일
** Chapter 14. 템플릿 완료!
** 스레드, 스레드 라이브러리의 역사, 컴퓨터 환경의 변화
* MFC++/7월12일
** thread
* MFC++/7월21일
** 경합 조건, 경합 조건 방지와 인터페이스 설계, mutex, mutex를 제외한 경합 방지 수단
* MFC++/7월26일
** reader-writer mutex(shared_lock), 다중 락에서의 교착 방지하기, recursive_mutex
* MFC++/8월11일
** 이전 진행 내용 회고
** condition_variable
* MFC++/8월17일
** 이전 진행 내용 회고
** future/async/packaged_task/promise
* MFC++/8월30일
** 이전 진행 내용 회고
** shared_future/system_clock/steady_clock/high_resolution_clock/duration/ratio/time_point
** 타임 아웃 대기를 위한 접미사 for/until
* MFC++/17/9월28일
** 메모리 모델, 객체와 메모리 위치, 원자적 연산
** modification order
** typedef atomics
** 복합 대입 연산자/fetch
* MFC++/17/10월25일
** atomic_flag, atomic<bool>
** exchange
** compare_exchange_weak/compare_exchange_strong
** 원자적 연산의 종류와 선택적 메모리 순서 적용
* MFC++/17/11월3일
** 이전 진행 내용 회고
** atomic<T*>, atomic<Integral>, atomic<T>
** atomic free functions
** inter-thread happens-before/synchronize-with relationships
** memory_order
** sequential consistency
* MFC++/17/11월8일
** 이전 진행 내용 회고
** operation visibility
** non-seq_cst world
** relaxed order
* MFC++/17/11월17일
** 이전 진행 내용 회고
** acquire/release order semantics
** mixing memory order with transition
** carries-dependencies-to
** dependency-ordered-before
** release/consume order
* MFC++/17/11월24일
** kill_dependency
** release sequence
** atomic fence
** tuple
* MFC++/17/12월27일
** bitset
** random generator/distribution
** I/O manipulator
** Concurrency Quiz!
* MFC++/18/1월5일
** regex
** non-format I/O operation
* MFC++/18/1월10일
** operator new/delete
** enum/union
** pointer-to-member/pointer-to-mem_fun


* <font color="#287a63"><b>종료!</b></font>
== 진행 예정 내용 ==
== 진행 예정 내용 ==
* 작성 예정입니다.
=== A. C++의 기능과 라이브러리 ===
* Chapter 1 - Chapter 10의 목차는 [[MFC++/이전목차]]를 참조해주세요.
 
* Chapter 1. 변수와 타입
* Chapter 2. 문자열과 배열, 벡터
* Chapter 3. 표현식과 문장, 함수
* Chapter 4. 클래스
* Chapter 5. I/O와 C++
* Chapter 6. 순차 컨테이너
* Chapter 7. 일반화 알고리즘
* Chapter 8. 연관 컨테이너
* Chapter 9. 효율적이고 안전한 STL
* Chapter 10. 동적 메모리 관리
 
* Chapter 11. 복사와 이동
** 이 챕터부터 스터디 진행이 완전히 PPT 진행으로 변경되었고, 따로 만들어진 목차는 없습니다.
* Chapter 12. 연산자 오버로딩
* Chapter 13. 객체 지향 프로그래밍과 C++
* Chapter 14. 템플릿
 
=== B. C++에서의 동시성 활용 ===
* Chapter 1. Hello, Concurrency!
* Chapter 2. 스레드 관리
* Chapter 3. 스레드 간 데이터 공유
* Chapter 4. 동시성 연산 간의 동기화
* Chapter 5. C++ 메모리 모델과 원자적 연산


== 덧글 ==
== 덧글 ==
 
* 얍 - [[성훈]]
** 얍! 얍! 얍! - [[박인서]]
* 2년에 걸친 대서사시가 종료되는군요 - [[박인서]]
-----------
-----------

Latest revision as of 00:16, 27 March 2026

개요

  • Mastering Further C++
    • --Mxxxxx Fxxxxxx C++...--

진행

  • 진행 방식은 과거 미시Cpp를 벤치마킹(?)해서 진행합니다.
    • 즉, 주마다 특정 주제 내용을 소개하는 방식으로 진행됩니다.
  • --진행 스타일은 과거 CS 스터디와 동일합니다.--
    • 복사와 이동부터는 완전히 PPT 진행으로 변경되었습니다.
  • 2016년 2학기 시작 직후부터 시작합니다.
  • 되도록이면 수요일 정모 직후, 7시에서 9시까지 진행합니다.
    • 주마다 진행 요일이 불가피하게 바뀌어야 할 수도 있습니다.
  • 진행에 사용된 소스 코드 및 PPT 자료는 해당 레포지토리에 있습니다.
  • 종료되었습니다!

참가자

목표

  • C++ 돌아보기 --돌아보는 척 하면서 더 낯설게 만들기--
  • C++11과 C++14의 내용 숙지
  • 흔한 C++ 프로그래밍 실수 방지하기
  • C++에서의 동시성 활용하기

참고

진행 내용

  • MFC++/9월7일
  • MFC++/10월5일
  • MFC++/11월2일
  • MFC++/11월9일
  • MFC++/11월30일
  • MFC++/1월4일
  • MFC++/1월11일
  • MFC++/1월18일
  • MFC++/2월1일
  • MFC++/2월15일
  • MFC++/2월22일
  • MFC++/3월7일
    • Chapter 11. 복사와 이동에서 복사까지 완료!
  • MFC++/3월22일
    • Chapter 11. 복사와 이동 완료!
  • MFC++/3월29일
    • Chapter 12. 연산자 오버로딩 완료!
  • MFC++/5월9일
    • Chapter 13. 객체 지향 프로그래밍과 C++ 진행중.
  • MFC++/5월24일
    • Chapter 13. 객체 지향 프로그래밍과 C++ 완료!
    • Chapter 14. 템플릿 진행중.
  • MFC++/5월31일
    • Chapter 14. 템플릿 완료!
    • 스레드, 스레드 라이브러리의 역사, 컴퓨터 환경의 변화
  • MFC++/7월12일
    • thread
  • MFC++/7월21일
    • 경합 조건, 경합 조건 방지와 인터페이스 설계, mutex, mutex를 제외한 경합 방지 수단
  • MFC++/7월26일
    • reader-writer mutex(shared_lock), 다중 락에서의 교착 방지하기, recursive_mutex
  • MFC++/8월11일
    • 이전 진행 내용 회고
    • condition_variable
  • MFC++/8월17일
    • 이전 진행 내용 회고
    • future/async/packaged_task/promise
  • MFC++/8월30일
    • 이전 진행 내용 회고
    • shared_future/system_clock/steady_clock/high_resolution_clock/duration/ratio/time_point
    • 타임 아웃 대기를 위한 접미사 for/until
  • MFC++/17/9월28일
    • 메모리 모델, 객체와 메모리 위치, 원자적 연산
    • modification order
    • typedef atomics
    • 복합 대입 연산자/fetch
  • MFC++/17/10월25일
    • atomic_flag, atomic<bool>
    • exchange
    • compare_exchange_weak/compare_exchange_strong
    • 원자적 연산의 종류와 선택적 메모리 순서 적용
  • MFC++/17/11월3일
    • 이전 진행 내용 회고
    • atomic<T*>, atomic<Integral>, atomic<T>
    • atomic free functions
    • inter-thread happens-before/synchronize-with relationships
    • memory_order
    • sequential consistency
  • MFC++/17/11월8일
    • 이전 진행 내용 회고
    • operation visibility
    • non-seq_cst world
    • relaxed order
  • MFC++/17/11월17일
    • 이전 진행 내용 회고
    • acquire/release order semantics
    • mixing memory order with transition
    • carries-dependencies-to
    • dependency-ordered-before
    • release/consume order
  • MFC++/17/11월24일
    • kill_dependency
    • release sequence
    • atomic fence
    • tuple
  • MFC++/17/12월27일
    • bitset
    • random generator/distribution
    • I/O manipulator
    • Concurrency Quiz!
  • MFC++/18/1월5일
    • regex
    • non-format I/O operation
  • MFC++/18/1월10일
    • operator new/delete
    • enum/union
    • pointer-to-member/pointer-to-mem_fun
  • 종료!

진행 예정 내용

A. C++의 기능과 라이브러리

  • Chapter 1. 변수와 타입
  • Chapter 2. 문자열과 배열, 벡터
  • Chapter 3. 표현식과 문장, 함수
  • Chapter 4. 클래스
  • Chapter 5. I/O와 C++
  • Chapter 6. 순차 컨테이너
  • Chapter 7. 일반화 알고리즘
  • Chapter 8. 연관 컨테이너
  • Chapter 9. 효율적이고 안전한 STL
  • Chapter 10. 동적 메모리 관리
  • Chapter 11. 복사와 이동
    • 이 챕터부터 스터디 진행이 완전히 PPT 진행으로 변경되었고, 따로 만들어진 목차는 없습니다.
  • Chapter 12. 연산자 오버로딩
  • Chapter 13. 객체 지향 프로그래밍과 C++
  • Chapter 14. 템플릿

B. C++에서의 동시성 활용

  • Chapter 1. Hello, Concurrency!
  • Chapter 2. 스레드 관리
  • Chapter 3. 스레드 간 데이터 공유
  • Chapter 4. 동시성 연산 간의 동기화
  • Chapter 5. C++ 메모리 모델과 원자적 연산

덧글