기초 SW 프로그래밍
HTML
|
- 1. 웹(Web) 기본 개념 및 전체 구조 이해
- 웹(Web)의 정의와 특징, HTTP 기반의 요청/응답 구조
- URL, 웹 브라우저, 웹 서버의 역할
- 2. 웹 서비스 동작 원리
- 웹 요청/응답이 처리되는 과정 (브라우저 → 서버 → 브라우저)
- DNS, 포트, 프로토콜 기초 개념
- 3. HTML 문서의 구조 이해
- 문서 구조와 DOM 처리
- HTML과 CSS, JavaScript의 역할
- 기본 태그 이해 및 활용
- 입력(Form) 요소와 폼 처리, 표(Table) 생성 및 구조화
- 4. 시맨틱(Semantic) 태그의 이해와 사용
- 레이아웃 구성 기초
- [실습 1] HTML 태그 기본기 실습 (태그 익히기 예제)
- [실습 2] HTML 기반 홈 페이지 제작 (구조 잡기 중심)
- [실습 3] 입력 폼 작성 (실전 UI 만들기 - 회원가입/로그인/설문 폼)
|
H |
| CSS |
- 1. CSS 기본 개념 및 전체 구조 이해
- CSS의 역할과 필요성 (HTML → 구조 / CSS → 표현)
- CSS 문법 기본 구조, 선택자(Selector)의 종류와 특징
- 2. CSS 동작 원리 및 스타일 규칙 처리 방식
- HTML 문서에 스타일이 적용되는 흐름
- Cascading(우선순위) 개념, 사용자 스타일 < 외부 CSS
- 개발자 도구를 활용한 CSS 디버깅
- 3. 반응형(Responsive) 웹 디자인 및 시맨틱 구조 연계
- 반응형 웹 디자인 개념
- Media Query 사용법 (화면 크기별 레이아웃 조정)
- 웹 표준 및 웹 접근성을 고려한 스타일 작성 원칙
- [실습 1] HTML + CSS 적용 기본 컨텐츠 제작 (선택자/스타일 속성을 활용)
- [실습 2] CSS 적용 방식 비교 실습 (Inline / Internal / External)
- [실습 3] 웹 표준을 준수한 CSS 문서 운영 (반응형 포함)
|
H |
| JavaScript
|
- 1. JavaScript 기본 개념 및 전체 구조 이해
- JavaScript의 특성과 역할(웹 브라우저 상의 동적 처리 언어)
- BOM, DOM : HTML 문서를 객체로 다루는 구조
- 기본 문법 구조 : 변수, 자료형, 연산자
- 2. JavaScript 동작 원리
- 제어문(조건문/반복문), 배열 처리 흐름
- 코드 블록에 따른 변수, 함수의 스코프(scope)
- JS의 실행 컨텍스트, 콜 스택(Call Stack), 이벤트 루프(Event Loop)
- 3. 이벤트 조작 및 실전 기능 구현
- 이벤트 처리, 이벤트 객체 및 기본 동작 제어
- 폼(Form) 처리 & 유효성 검증, 입력 값, 에러 체크
- 4. 비동기 처리(AJAX)와 모듈 활용
- AJAX 개념: 서버와 비동기 통신
- JSON 데이터 처리
- 비동기 코드 패턴, Fetch API, 콜백 함수
- 모듈 시스템 기초
- [실습 1] 이벤트 처리 예제 작성 (DOM 이벤트 처리 능력 강화)
- [실습 2] AJAX 기반 비동기 처리 프로그래밍 (비동기 콜백 구조)
- [실습 3] 원격 REST API(백엔드)와 통신 (GET / POST / PUT / DELETE)
|
H |
| ECMAScript |
- 1. ECMAScript 기본 개념 및 전체 구조 이해
- ES의 역할: JavaScript의 표준 사양과 모던 스펙
- 변수 선언 방식, 재할당, 스코프, 호이스팅 차이
- 데이터 타입 체계(Primitive, Reference)
- Reference 타입(Object, Array, Function 등)
- 2. ECMAScript 주요 문법과 동작 원리
- Arrow Function, Template Literals, ${변수} 표현식 삽입
- 배열/객체/기본값 할당, 중첩 구조 분해
- export / import 문법
- 클래스 선언(생성자와 메서드, 인스턴스/정적 메서드)
- 3. 비동기 처리 및 고급 자료구조 활용
- 비동기 코드의 가독성 향상
- 에러 핸들링 구조
- 4. 구조적 활용 및 프로젝트 설계
- ES 기반의 모듈형 프로젝트 구조 설계
- Class + Module + Fetch API 조합 실전
- [실습 1] ES6 기본 문법을 활용한 “미니 프로그램” 작성
- [실습 2] 비동기 처리(AJAX) 이해를 위한 기본 예제
- [실습 3] ES Module 기반 프로젝트(모듈 시스템 적용 + ES6 문법 종합 활용)
|
H |
| React.js |
- 1. React 기본 개념과 개발 환경 설정
- SPA 개념 및 전통적 웹과의 차이
- Node.js + npm 환경 구성
- Create React App / Vite 프로젝트 생성
- 2. JSX 문법 & 렌더링 & 컴포넌트
- JSX 문법 개념
- 조건부 렌더링, 리스트 렌더링(map), key의 의미와 사용 이유
- 컴포넌트 구조 이해, Props로 데이터 전달, 부모 → 자식 컴포넌트 구조
- 이벤트 핸들링(onClick, onChange)
- 3. State 관리와 UI 업데이트
- useState로 값 관리, 입력 폼 상태 제어, 상태 변경에 따른 리렌더링
- 배열/객체 상태 업데이트 패턴(불변성 유지)
- 라이프사이클 이해 (마운트/업데이트/언마운트)
- 4. React Router로 페이지 라우팅
- SPA 라우팅 개념, useNavigate로 페이지 이동
- URL 파라미터 처리
- 5. REST API 연동 및 CRUD
- Axios / Fetch API 활용, 비동기 + 상태 관리 패턴
- useMemo / useCallback 이해
- 배포 및 빌드
- [실습 1] 컴포넌트 기반 Todo List
- [실습 2] API 연결한 CRUD 게시판
- [실습 3] REST API 적용 컴포넌트 설계
|
H |
| Node.js 백엔드 |
- Node.js의 특징, 장점 및 사용 사례
- 실습 환경 설정: Node.js 설치, npm (Node Package Manager) 사용법
- fs (파일 시스템), http, path 등의 내장 모듈 사용법
- NPM과 패키지 관리: 패키지 설치, 업데이트, 삭제 및 package.json 관리
- Express 프레임워크를 사용한 웹 서버 개발
- 라우팅: GET, POST 요청 처리, 미들웨어 사용법
- 템플릿 엔진: EJS, Pug 등의 템플릿 엔진을 이용한 동적 콘텐츠 렌더링
- RESTful API 개발: REST 원칙에 따른 API 설계 및 구현
- 데이터베이스 연동 : MariaDB 또는 H2 DB와의 연동
- Node.js 성능 최적화 구현 방안
- [실습1] 비동기 프로그래밍 기초 - fs 모듈로 파일 여러 개 읽기/쓰기
- [실습2] DB 연동 웹 서버 구축 - Express 기반 REST API 만들기
- [실습3] Socket을 이용한 실시간 데이터 송수신 - Socket.io 서버 이용
|
H |
DataBase
(MariaDB,MySQL) |
- 1. 데이터베이스 기본 개념
- DB / SQL의 필요성 및 역할, 실습 환경 설정
- RDBMS 구조 이해(테이블, 컬럼, 행)
- SQL 종류(DDL / DML / DCL)
- 2. 테이블 설계 & 정규화
- 정규화, 기본키 / 외래키 제약조건, 데이터 무결성 개념
- SQL 기본기 — DDL / DML
- 인덱스 / 최적화
- 3. JOIN & Subquery
- INNER / LEFT / RIGHT JOIN, 1:N 관계와 JOIN 매핑
- Subquery(단일행 / 다중행 / IN / EXISTS)
- 4. 트랜잭션 & 동시성 제어
- COMMIT / ROLLBACK, ACID 속성
- 5. View & 계정 관리
- View 생성 / 조회 / 삭제
- 민감 정보 접근 제어에 View 활용
- 계정 생성, 권한 관리, 사용자 보안 설정
- [실습1] SQL 조각 문제 풀기 - 실전 테이블을 활용
- [실습2] JOIN 기반 SQL 실습 - 1:N 관계 테이블
- [실습3] GROUP BY 통계 쿼리 작성 - 인사관리(HR) 등
|
H |
| Java Core
|
- 1. 자바 개발 환경 및 기초 문법
- JDK 설치 및 개발환경 설정 / JVM 구조, 컴파일·실행 과정 이해
- 변수, 자료형, 연산자, 제어문(if, switch, for, while)
- 메서드 정의 및 호출
- 2. 객체지향 프로그래밍(OOP)의 기초
- 클래스(Class), 객체(Object) 구조, 생성자, 메서드, 접근 제어자
- 상속(Inheritance), 인터페이스와 다형성(Polymorphism)
- 캡슐화(Encapsulation), 재사용·확장성 개념
- 3. 예외 처리 & 파일 입출력
- try / catch / finally
- 사용자 정의 예외, 파일 읽기/쓰기, 자원 반납 및 예외 안전
- 4. 컬렉션 프레임워크
- List / Set / Map 구조 및 활용
- 제네릭(Generics), Collections 유틸리티의 이해
- 5. 데이터베이스 연동(JDBC)
- DB 연결 구조, Statement / PreparedStatement, CRUD 처리
- DAO 패턴 구현
- 6. 멀티스레드 & 동시성
- Thread 생성·실행, Runnable 인터페이스, 동기화(synchronized)
- 7. 람다식 & 스트림 API
- 람다(Lambda)의 기본 문법, Stream API 기본 필터링/매핑/정렬
- 컬렉션 + 스트림 조합 실습
- 8. 네트워크 프로그래밍 기초
- TCP 소켓 통신(Client/Server), UDP 통신 개념
- 스레드를 이용한 다중 클라이언트 처리
- 9. Git을 이용한 버전 관리
- Git 기본 흐름(add → commit → push), Branch / Merge
- GitHub 원격 저장소 사용
- [실습1] 객체지향 최적화 실습 — 클래스·상속·포함관계 활용
- [실습2] 파일 & 컬렉션 — 상품 처리(정렬, 검색, 필터 기능 구현)
- [실습3] JDBC 연동 — DAO 구조 설계에 준한 원격 DB CRUD 프로그램
|
H |
| Spring Boot |
- 1. Spring & Spring Boot 기본 이해
- Spring Framework 개념, 특징, 왜 필요한가
- IoC(제어의 역전) / DI(의존성 주입) 기본 개념
- 핵심 어노테이션: @Component, @Service, @Autowired, @Controller …
- 2. Spring Boot 개발 환경 구성
- Spring Initializr로 프로젝트 생성
- Maven/Gradle 의존성 관리
- 프로젝트 구조 이해 및 실행 방법
- 3. Spring MVC 기반 웹 개발
- MVC(Model–View–Controller) 구조 이해
- GET/POST/PUT/DELETE 매핑, Request/Response DTO 사용
- 4. 데이터베이스 연동 & CRUD
- RDBMS 연동 - Spring Data JPA 이해
- 엔티티(Entity), Repository, JPQL 기본
- CRUD 실습(등록/조회/수정/삭제)
- 5. Spring Boot AOP 기초
- AOP 개념(관심사 분리), @Aspect, @Around로 간단한 로깅 구현
- 6. REST API 서버 개발
- REST API 설계 기본, JSON 응답 처리
- 예외 처리(@ExceptionHandler), 유효성 검증(Validation)
- 7. Spring Security 기본
- 로그인/로그아웃 처리, 패스워드 암호화
- 권한(Role) 기반 접근 제어, 인증/인가 구조 실습
- 8. 배포 & 운영 실습
- Docker로 컨테이너 생성
- 클라우드 배포(AWS EC2 혹은 로컬 서버)
- [실습1] JPA를 이용한 관리 CRUD 프로그램 (Entity + Repository + Controller)
- [실습2] 웹소켓(WebSocket) 기반 실시간 메시지 프로그램 (STOMP 기반)
- [실습3] Spring Security 적용 - REST API 인증 구조 실습
|
H |
| Python/Web
프로그램 |
- 1. 파이썬 기본 이해
- 파이썬의 특징, 개발 환경 구축(IDE, 가상환경 venv)
- 2. 자료형과 기본 문법
- 숫자, 문자열, 자료형, 연산자, 문자열 처리, 예외 처리
- 3. 제어문
- 조건문(if/elif/else), 반복문(for/while), 리스트 컴프리헨션 활용
- 4. 함수와 모듈
- 함수 정의/매개변수/반환, 람다, map/filter, 모듈, 패키지, import 구조
- 5. 클래스와 객체지향 프로그래밍
- 클래스 구조, 생성자, 인스턴스/클래스 변수, 메서드 정의
- 상속과 오버라이딩, 객체 설계 활용
- 6. 파일 입출력
- 텍스트 파일 읽기/쓰기 - CSV, JSON 파일 다루기, 로그 파일 분석
- 7. 데이터베이스 연동 프로그래밍
- DB 연결 / 커서(cursor) 사용, DAO 구조 만들기(모듈화)
- 8. 네트워크 프로그래밍 기초
- 소켓(socket) / TCP/UDP 통신 이해, 메시지 전송, Echo 서버 구현
- 9. 웹의 기본 이해
- 웹 동작 원리, REST API 기본 개념, JSON 데이터 전송 흐름
- Django 프로그래밍 - MTV(Model-Template-View) 구조
- URL 라우팅, 템플릿 렌더링, ORM을 이용한 모델/DB 연동
- [실습1] 파일·함수·클래스를 활용한 상품 관리 프로그램
- [실습2] DB + REST 개념을 연결한 프로그램 (DB 연동)
- [실습3] Django를 활용한 웹 기반 게시판 CRUD
|
H |
| 데이터 처리 및 시각화 |
- 1. NumPy 기초
- ndarray 생성, 배열 인덱싱/슬라이싱
- 차원 변환(reshape), 브로드캐스팅
- 수학/통계 함수(mean, sum, max 등) 이해 및 활용
- 2. Pandas 기초
- Series, DataFrame 구조 이해
- 결측치 처리(dropna, fillna), 데이터 정렬, 필터링
- 그룹별 통계(groupby), 주요 집계 함수(sum, count, mean 등) 처리
- DataFrame 병합(merge, concat) 처리
- 3. Matplotlib 데이터 시각화
- figure, subplot 개념, 주요 그래프 특성 이해, 축, 제목, 범례 설정
- [실습1] NumPy 배열 기반 데이터 처리 실습 - 데이터 가공과 연산
- [실습2] Pandas를 이용한 CSV 데이터 분석 - 실전 분석 패턴
- [실습3] Matplotlib을 이용한 데이터 시각화 프로젝트 - 데이터 전처리,분석,표현
|
H |
| 머신러닝·딥러닝 |
- 1. 머신러닝 기본 개념
- 지도학습 / 비지도학습 이해
- dataset: train / test / validation, 과적합(Overfitting), 정규화, 스케일링
- 모델 평가 지표 : RMSE, MAE, Accuracy, Precision, Recall, F1
- 2. 회귀 분석 (Regression)
- Scikit-Learn을 이용한 선형회귀(Linear Regression) 기본, 다중회귀
- 실제 데이터 기반 예측 실습 - 가격 예측, 광고비 → 매출 예측
- 3. 분류 분석 (Classification)
- Logistic Regression, Decision Tree, Random Forest, SVM, KNN 등
- 전처리(StandardScaler), 데이터 분리, 교차검증
- 4. 군집화 (Clustering)
- K-means Clustering, 거리 기반 군집화 개념
- 시각화를 통한 군집 결과 해석, 고객 세그먼트 예제(고객군 묶기)
- 5. 인공신경망 기초
- 퍼셉트론(Perceptron), 다층 퍼셉트론(MLP) 구조 이해
- 활성화 함수(ReLU, Sigmoid), Forward / Backpropagation 이해
- 6. TensorFlow · Keras 기초
- Keras Sequential API 사용, Dense Layer 구성
- 모델 컴파일 / 학습 / 평가 / 예측
- [실습1] 회귀/분류 기본 모델 구현 실습 - 모델 평가 및 시각화
- [실습2] K-means 군집화 분석 프로젝트 - 군집 결과 해석
- [실습3] 딥러닝 분류 모델 구현 - 예측 테스트
|
H |
| 생성형 AI |
- 1. 자연어를 위한 딥러닝
- 텍스트 토큰화 개념, TextVectorization 처리
- RNN, LSTM 기본 동작
- 시퀀스 투 시퀀스(seq2seq), Attention, Transformer 개념 및 구조 이해
- 텍스트 생성 모델의 원리 (GPT류 소개)
- 2. CNN 기반 이미지 처리
- 이미지 인식 이해, OpenCV로 이미지 불러오기/전처리
- CNN 기반 이미지 분류 기본 - 컴퓨터 비전 딥러닝(특징맵, 필터, 합성곱)
- 전이학습(Transfer Learning), Fine-tuning 처리
- 3. 생성형 모델 및 최신 AI 적용
- 벡터 데이터베이스 개념 이해와 활용
- 임베딩(Embedding)과 의미공간
- LangChain 기본 구조, RAG(검색 증강 생성) 원리와 활용
- MCP, AI Agent 동작 개념
- [실습1] LSTM 기반 텍스트 생성 모델 작성 - AI의 근본을 직접 구현
- [실습2] CNN 전이학습 기반 이미지 분류기 작성 - 사전학습 모델 이용
- [실습3] RAG + 벡터 DB를 이용한 간단 QA 챗봇 시스템 구축
|
H |
| Public Cloud |
- 1. 클라우드 컴퓨팅 개념
- 클라우드의 정의, 장점(확장성, 비용 효율성, 가용성)
- 서비스 모델 비교: IaaS / PaaS / SaaS
- 2. 퍼블릭 클라우드 개요
- AWS / Azure / GCP 비교, 글로벌 인프라 개념(Region, AZ)
- 주요 서비스(EC2, S3, RDS, Lambda) 소개
- 3. 클라우드 기본 아키텍처
- 가상 서버(EC2), 스토리지(S3), 데이터베이스(RDS)
- 과금 구조와 비용 절감 전략
- 4. 개발 및 배포 도구
- Git 기반 소스 관리, CI/CD 파이프라인 개념
- Docker 컨테이너 활용
- [실습1] 리눅스 + Docker 기본 실습 - docker run / docker build
- [실습2] AWS EC2 기반 웹 서버 배포 실습 - Nginx Reverse Proxy 설정
- [실습3] RDS 연동 웹 프로젝트 작성 - EC2 + RDS 조합으로 서비스 경험
|
H |
| [ 최종 프로젝트 ] |
- 1. 기획서 작성 : 요구사항 분석과 서비스 설계
- 2. 기술서 작성
- 3. 구현
- : 프로젝트 기획 및 UI 설계
- : 요구사항을 통한 상세분석
- 4. 발표 및 시연
|
H |
| [ 최종 프로젝트 ] |
- <최종 프로젝트> - K디지털 선정 주제
- 웹서버 구축(프레임워크) 융합프로젝트
- ■ 업무 도구 WBS서비스 개발
- ■ 리뷰기반 커뮤니티 웹서비스 개발
- ■ 웹기반 소상공인 ERP시스템 개발
- ■ 패션포털웹서비스시스템 개발
|
H |