이전 블로그에 작성해두었던 2018년 계획 글을 수정해서 올리고자 한다.. 일주일 전에 나름 포부있게 작성하였지만, 일주일이 지난 지금 좀 진행은 되었을까.. 다시 시작한다 생각하고 좀 더 체계적이고 명확한 목표제시가 필요할 것 같다.
프로그래밍을 하면서 비판적인 사고를 가지자. 항상 프로그래밍의 과정과 도출된 결과에 "왜?" 라는 의문을 가지려고 노력하자. 무의식적인 반복 타이핑을 하는 것이 아닌 탐구하고 의식적으로 타이핑하는 자세를 가지도록 연습하자.
Java
Spring Framework
로그인과 게시판 구현 (게시판만 작업중)
이클립스 환경 설정 (Maven, STS, pom.xml ...)
Annotation
JSTL
Java Bean
MVC (Model View Controller)
DAO(Data Access Object),
DTO(Data Transform Object)
Oracle 11g (Sql Developer)
sqlplus
Jdbc Template
Scope
mybtis
POJO
EJB, Java 엔터프라이즈 시스템
Business Logic, Service
게시판 Paging
RDBMS : PK, FK
객체지향적으로 리팩토링 작업 실시
final & static 관계(인스턴스 접근에 대한)
OOP
IS-A 관계
HAS-A 관계
Coupling & Cohesion
TDD
TDD 무엇이고, 왜 사용하고, 어떤 이점이 있는지 ?
Mock, Stub 관련 내용
Java 8 공부
Lamda
Function Interface
StreamAPI
ETC
Java Servlet, Java Server Pages, MVC
Middleware
Tomcat 개념 및 역할
Apache 개념 및 역할
Tomcat & Apache : WAS 와 HTTP Server 연동 이점 및 이유?
GeeksforGeeks Top10 Algorithms in Interview
Graph
Union Find
UnionFindSet1 : Basic
UnionFindSet2 : Union By Rank & Path Compression
Prim (Greedy Algorithm)
Kruskal (Greedy Algorithm)
LinkedList
Compare two strings represented as linked lists
Add Two Numbers Represented By Linked Lists
Dynamic Programming
Edit Distance
Minimum Partition
Sorting & Searching
BubbleSort & Improve BubbleSort
Merge Sort
Heap Sort (Binary Heap)
Quick Sort
Tree / Binary Search Tree
Find Minimum Depth of a Binary Tree
Maximum Path Sum in a Binary Tree
Number Theory
Basic and Extended Euclidean algorithms
Chinese remainder theorem
BIT Manipulation
Binary representation of a given number
Count number of bits to be flipped to convert A to B
String / Array
Length of the largest subarray with contiguous elements
Smallest subarray with sum greater than a given value
GrepCode : Java API
ArrayList
LinkedList
Vecter
Map
HashMap
XOR 연산 과정 이유 및 이점
bit 연산
OS & Computer Architecture
기억장치
CPU
시스템 버스(데이터 버스, 제어 버스, 주소 버스)
레지스터 세트
CPU 내부 버스
ALU (산술 논리 연산 장치), Control Unit, IR, MBR(Memory Buffer Register), MAR(Memory Address Register)
기능(명령어 인출, 명령어 해독, 데이터 인출, 데이터 처리, 데이터 저장)
운영체제 구성 (슈퍼바이저 프로그램, 언어번역 프로그램 : 링커의 기능 등)
프로세스 01 (프로세스 정의, 프로세스 상태)
프로세스 02 (Context Switching & idle statement & Overhead)
프로세스 03 (Process Scheduling)
Network & Security
Database
독립성 관련
트랜잭션
English Book Reading : Charlotte's Web
Chapter 1 ~ Chapter 22
Mathmatics
선형대수학(한양대 이상화 교수님)
확률과통계(한양대 이상화 교수님)
Software Engineering
Low Coupling & High Cohesion
Refactoring - Martin Fowler
TDD (Test Development Driven)
Spring
토비의 스프링
Java
[ https://www.journaldev.com/ ]
[ http://tutorials.jenkov.com/ ]
자바 8
리플렉션
예외처리
enum 클래스
JVM
대용량 배치 처리
Data Structure
Hash
Network
HTTP
Database
구루비
오라클 인덱스
오라클 인덱스 유무에 따른 성능 비교
오라클 with
오라클 데이터 타입
OS
Mathmatics
상관분석, 상관계수