스터디 소개
자바 객체지향 프로그래밍 (Java OOP)
: 어디서도 들어볼 수 없는 객체지향의 본질을 꿰는 이야기
단순히 클래스를 만들고 문법을 외운다고 객체지향이 완성되지 않습니다.
절차적·구조적 프로그래밍의 한계에서 출발하여, 왜 코드를 캡슐로 묶어야 했고 왜 인터페이스와 의존성 주입(DI)이 필연적으로 등장했는지 프로그래밍 패러다임의 진화 흐름을 통해 객체지향의 본질을 명확히 정리합니다.
수강 대상 (Prerequisites)
- 자바의 기초 문법(변수, 조건문, 반복문 등)을 한 번이라도 접해본 입문·초급 학습자
- 코드는 작성할 수 있지만 클래스, 상속, 인터페이스를 언제 왜 써야 하는지 개념이 모호한 분
- 스프링(Spring) 프레임워크로 넘어가기 전, 객체지향과 아키텍처의 필연성을 체계적으로 납득하고 싶은 분
교육 방식 및 일정 (3주 완성)
- 온라인 실시간 직강: 일 2시간 / 주 5일 (월~금) × 3주 집중 과정
- 오후 7시~9시
- 뉴렉처 스터디룸 AI 튜터 시스템 연계:
- 정규 수업 외 시간에도 스터디룸에 상주하는 AI 튜터를 통한 24시간 자율 학습
- 실습 중 발생하는 코드 에러 디버깅 및 개념 질문 즉시 피드백 지원
상세 커리큘럼
Part 1. 구조적 프로그래밍의 한계와 객체지향의 탄생
- 자바 기본 문법 핵심 요약
- 핵심 데이터 타입, 제어문, 메모리 구조의 빠른 정리
- 구조적 프로그래밍(Structured Programming)의 본질
- 흐름 제어와 기능 분할 중심의 코드 구조
- 고립화가 보장되지 않는 함수의 문제
- 전역 상태 오염과 데이터 변경에 취약한 절차적 코드의 한계
- 데이터 기반 함수의 코로케이션(Colocation)
- 연관된 데이터와 함수를 한곳에 배치하여 문제를 해결하는 방식
- 객체지향 프로그래밍(OOP)의 탄생 배경
- 패러다임의 전환: "무엇을 할 것인가"에서 "누가 책임질 것인가"로
Part 2. 캡슐화와 객체 간의 관계 설계
- 캡슐화(Encapsulation)
- 단순 은닉을 넘어선 '역할 기반 서비스 주체'의 정의
- Has-A 관계 (포함 관계)
- 캡슐의 책임 분리와 객체 간 협력 관계 형성
- 일체형(Composition) vs 종속성 주입(Dependency Injection)
- 내부 생성 방식의 결합도 문제와 외부 주입 방식의 장점
- Is-A 상속 (기존 캡슐의 확장)
- 재사용 틀로서의 상속과 올바른 확장 기준
- 결합도(Coupling) 제어
- 강한 결합(Tight Coupling)의 위험성과 느슨한 결합(Loose Coupling) 설계
Part 3. 추상화와 다형성의 완성
- 추상화(Abstraction)와 Object 클래스
- 공통 규격의 일반화와 모든 객체의 근원인
java.lang.Object의 역할
- 공통 규격의 일반화와 모든 객체의 근원인
- 인터페이스(Interface)의 필연성
- 구현과 역할의 완전한 분리, 다형성(Polymorphism) 구현
Part 4. 실무 아키텍처로의 확장과 스프링 프레임워크
- 서블릿(Servlet) 기초 실습
- 자바 웹 컴포넌트의 동작 메커니즘 확인
- 서블릿 기반 3계층 아키텍처 (3-Tier)
- Presentation - Business - Data Access 계층의 책임 분리
- 서블릿 기반 MVC 아키텍처
- Model, View, Controller 분리와 요청 흐름 제어
- 역제어(IoC)와 의존성 주입(DI)의 필요성 체감
- 팩토리 패턴을 넘어 컨테이너가 제어권을 가져야 하는 이유
- 트랜잭션(Transaction)의 의미와 격리
- 비즈니스 무결성을 위한 원자성 보장과 예외 처리 전략
- 기업용 엔터프라이즈 프로젝트와 스프링 프레임워크
- 순수 객체지향 설계의 불편함을 해결하는 프레임워크의 존재 이유 및 로드맵
스터디 정보
모임 방식온라인
기간2026-12-14 ~ 2026-12-25 (2주)
모집 마감2026-12-11 (D-41)
참가비200,000원
모집 인원20명 (초과 3명 추가 모집)
선발 방식모집인터뷰 진행 후 선발
스터디장
n
newlecLv.1
