본문으로 건너뛰기

버그 제보

이상한 점을 알려 주시면 고칠게요. 지금 보고 있는 페이지와 브라우저 정보가 함께 담겨요.

페이지:

Computer Science

OSSU 핵심 프로그래밍

추가
목차4개 항목
출처와 참고

OSSU의 공개 컴퓨터과학 커리큘럼과 관련 자료를 주제별로 재구성한 노트다.

무엇을 배우는가

같은 문제를 여러 언어와 설계 방식으로 풀어 보면서 문제 명세에서 테스트 가능한 프로그램으로 만드는 과정을 익힌다. 함수형·객체지향 설계는 서로 배척하는 구호가 아니라 상태와 의존성을 다루는 다른 도구다.

개념확인할 질문
프로그램 명세입력·출력·예외 조건이 충분히 정의됐는가
함수형 설계부작용을 분리하고 데이터를 변환할 수 있는가
객체지향 설계책임과 협력을 어떤 객체에 둘 것인가
타입 시스템오류를 실행 전에 얼마나 드러낼 수 있는가
테스트예제뿐 아니라 경계 조건을 검증하는가
소프트웨어 아키텍처변경이 다른 부분에 퍼지는 범위를 줄였는가

강좌 목록과 선수 관계

Core programming

강좌기간주당 학습량선수 지식·참고
Systematic Program Design13 weeks8-10 hours/weeknone
Class-based Program Design13 weeks5-10 hours/weekSystematic Program Design, High School Math
Programming Languages11 weeks4-8 hours/weekSystematic Program Design
Object-Oriented Design13 weeks5-10 hours/weekClass-based Program Design
Software Architecture4 weeks2-5 hours/weekObject Oriented Design

실습에서 남길 결과물

  • 명세와 예제가 연결된 함수 및 자동 테스트
  • 변경에 대응할 수 있는 객체 설계와 모듈 경계
  • 정적·동적 타입, 함수형·객체지향 선택의 이유를 정리한 작은 비교

관련 노트: 프로그래밍 패러다임, 타입 시스템, 책임 주도 설계

원본 기록2

댓글

GitHub 계정으로 댓글을 남길 수 있어요.