개체지향 프로그래밍 및 설계 (Java) 강좌 // 개체지향 프로그래밍(OOP)'과 '개체지향 분석 및 설계(OOAD)'를 배우기
이 과목은 '개체지향 프로그래밍(OOP)'과
'개체지향 분석 및 설계(OOAD)'를 한꺼번에 가르치는 과목으로
OO 언어의 사용법을 배우는데 그치지 않고 실세계를 컴퓨터 프로그램의 개체로
모델링할 수 있는 능력까지 배우실 수 있는 인터넷 강좌입니다.
'인간이 생각하는 방식으로 프로그래밍 하자!'라는 야심찬 목표를 가지고 시작한 개체지향 프로그래밍(OOP, Object-Oriented Programming)은 이제 주류 프로그래밍 패러다임이 되었습니다. 허나 기존의 프로그래밍 패러다임(예: 절차적 프로그래밍)에 비해 '인간이 생각하는 방식', 다른 말로 하면 '인간다움'이란 정의는 매우 주관적일 수밖에 없습니다. 각 개인이 속한 환경과 시대에 따라 세상을 보는 눈이 달라지니까요.
이 때문에 특정 OO 언어의 사용법만 익히는 것은 반쪽짜리 OOP 공부입니다. 특정 언어의 사용법은 객관적인 측면일 뿐이니까요. 이 외에 사람의 관점에서 바라본 실세계를 컴퓨터 프로그램의 개체로 모델링할 수 있는 능력(주관적인 측면)을 같이 키워나가야만 제대로 OOP를 배우는 겁니다. 후자는 개체지향 분석 및 설계(OOAD, Object-Oriented Analysis and Design)의 영역으로 본 과목은 OOP와 OOAD(이후 합쳐서 OO라고 표현)를 동시에 가르칩니다.
상술한 주관성 때문에 OO 분야에는 다양한 의견과 주장이 존재해왔습니다. 그리고 어느 시대와 진영의 자료로 공부했느냐에 따라 각 프로그래머가 OO(OOP와 OOAD를 모두 포함)를 이해하는 방식이 많이 다릅니다. 객관성을 추구하는 컴퓨터 과학/공학이라는 학문에 이런 광범위한 주관성은 많은 혼란을 야기합니다. 더 나아가 다른 주장이 나온 이유를 이해하려는 노력 없이 자신이 무비판적으로 수용하며 배운 내용에 기초하여 다른 진영이 무조건 틀렸다고 공격하는 모습들도 OO 분야에서는 종종 발견되는 건설적이지 못한 모습입니다.
이런 문제들을 해결하기 위해 본 과목은 현재 실무에서 다수설로 받아들이는 OO의 정의와 모델링/프로그래밍 기법을 배우는 외에도 이런 다양한 주장들이 나오게 된 배경과 각 주장의 장단점, 그리고 그들 사이에서 어떻게 밸런스를 잡아야 훌륭한 프로그래머가 될 수 있는지에 대한 가이드도 제공합니다.
배울 내용
객체지향 프로그래밍
올바른 객체지향 설계
디자인 패턴
요구 사항
'실무 프로그래밍 입문(C#)' 과목 수료
'컴퓨터 공학용 수학' 과목 수료
설명
이 강좌의 대상:
올바른 OO 프로그래밍과 설계를 배우고 싶으신 분들
컴퓨터 공학의 기본기를 배우고 싶은 분들
프로그래머로서 평생 커리어를 꿈꾸는 분들
개체지향 프로그래밍 및 설계 (Java)
강의 자세히 보기
'배우기 강좌' 카테고리의 다른 글
파이썬 Python 드론 프로그래밍 입문 강좌 미국 실리콘밸리 현역 엔지니어와 함께하는 드론 프로그래밍 강좌 (1) | 2020.10.15 |
---|---|
검색웹만들기 강좌 // 파이썬 웹 Django(장고) 프레임워크로 주식 검색 웹 만들기 (0) | 2020.08.23 |
쇼핑몰강좌 // 국내 쇼핑몰 제작에 많이 쓰이는 '워드프레스 우커머스'라는 기술을 활용해 실제 운영이 가능한 쇼핑몰 웹사이트 만들기 (0) | 2020.08.23 |
캔바(Canva)로 SNS 콘텐츠 만드는 방법 // 인터넷 강좌로 캔바 배우기 소셜미디어에 필요한 이미지를 쉽고 빠르게 만드는 방법 (0) | 2020.08.22 |
김수영스쿨 1강 인터넷 강의 // 진짜 꿈을 찾고 이루는 법 대한민국 대표 꿈쟁이의 전문 강의! (0) | 2020.08.22 |
댓글