분류 전체보기(97)
-
웹 풀 사이클 데브코스 1개월차 회고
웹 풀 사이클 데브코스 링크 프로그래머스의 부트캠프 웹 풀 사이클 데브코스 1기(이하 데브코스)에 참여한지 1개월차가 되었다. 이 데브코스에 참여하면서 느낀점을 지금까지 했던 것들을 기반으로 적어보았다. 강의 수강 지금까지 수강한 강의 내용은 다음과 같다. Git 기본 이론과 사용법, Github를 활용한 코드 관리 웹 기초, 데이터베이스 개념 Node.js 맛보기 1번과 2번은 강의를 듣기 전에도 어느정도 알고 있는 내용이라 잘따라갈 수 있었는데, 문제는 3번 Node.js였다. 기존에 Javascript에 대해 잘몰랐던 나는 JS가 함수를 비동기로 실행한다는 사실을 모르고 계속 Java를 기준으로 생각하고 코딩을 해, 트러블 슈팅을 하느라 애먹은 경험이 있다. 데브코스에서 책을 두 권 지원해주는데, ..
2023.11.30 -
git rebase
💻 git rebase git에는 한 브랜치를 다른 브랜치와 합치는 방법이 merge명령어 이외에도 하나 더 있는데 그것이 rebase명령어이다. git rebase는 git merge와 같이 브랜치를 병합할때 사용한다. 그렇다면 rebase는 언제 사용하는 것일까? ➡️ commit history를 commit이 적용된 순서대로 남기고 싶을때 예를 들어 아래 그림과 같은 commit history가 있다고 가정해보자. develop 브랜치는 c2 commit에서 분기되어 변경사항을 c4 commit에 저장하였다. main 브랜치는 c2 commit 이후에 c3 commit의 변경사항이 이미 적용되어있다. 만일 내가 이 프로젝트를 관리하는 PM이라면 아래 그림과 같이, 나중에 적용되는 c4 commit이..
2023.11.29 -
Node.js란?
현재 참여 중인 프로그래머스 데브코스 수업에서 Node.js를 사용하여 간단한 서버를 구동시켜보았다. //index.js let server = require('./server'); let router = require('./router'); let requestHandler = require('./requestHandler'); const mariadb = require('./database/connect/mariadb') mariadb.connect(); server.start(router.route, requestHandler.handle); //server.js let http = require('http'); let url = require('url'); function start(route, ..
2023.11.27 -
백기선 자바 스터디 1기 9주차
목표 자바의 예외 처리에 대해 학습하세요. 학습할 것 프로그램 오류란? Exception과 Error의 차이는? 자바가 제공하는 예외 계층 구조 RuntimeException과 RE가 아닌 것의 차이는? 자바에서 예외 처리 방법 (try, catch, throw, thorws, finally) 커스텀한 예외 만드는 방법 프로그램 오류란? 프로그램이 실행 중 어떠한 원인에 의해 오작동 하거나 비정상적으로 종료되는 경우를 프로그램 에러 또는 오류라고 한다. 이것을 발생시점에 따라 '컴파일 에러'와 '런타임 에러'로 나눌 수 있다. 컴파일 에러란 소스코드 컴파일 시점에 컴파일러가 문법 오류가 있다면 발생 시키는 오류이다. 런타임 에러란 프로그램 실행 도중 발생하는 에러로 자바에서는 런타임 에러를 '에러(err..
2023.10.22 -
백기선 자바 스터디 1기 8주차
목표 자바의 인터페이스에 대해 학습하세요. 학습할 것 인터페이스 정의하는 방법 인터페이스 구현하는 방법 인터페이스 레퍼런스를 통해 구현체를 사용하는 방법 인터페이스 상속 인터페이스의 기본 메소드 (Default Method), 자바 8 인터페이스의 static 메소드, 자바 8 인터페이스의 private 메소드, 자바 9 인터페이스 정의하는 방법 인터페이스는 일종의 추상 클래스이다. 단, 추상 클래스보다 추상화 정도가 높아서 추상 클래스와 달리 일반 메소드 또는 멤버변수 멤버로 가질 수 없다. 오직 추상 메소드(abstract)와 상수(final)만을 멤버로 가질 수 있다. ※ 자바 8버전부터 default 예약어를 통해 일반 메소드 구현이 가능하다. 인터페이스는 다음과 같이 정의가 가능하다. inter..
2023.10.19 -
[Spring boot] Spring batch 개념정리
Spring batch 개념 Spring batch는 스프링에서의 배치 프로세싱을 지원한다. 배치 프로세싱이란 일괄처리하고 하는데 일련의 작업을 정해진 로직으로 수행하는 것이다. 그렇다면 배치 프로세싱은 어떤 경우에 필요할까 대용량의 데이터를 복잡한 작업으로 처리하는 경우 특정한 시점에 스케줄러를 통해 자동화된 작업이 필요한 경우 대용량 데이터의 포맷 변경, 유효성 검사 등의 작업을 트랜잭션 안에서 처리해야하는 경우 배치 시나리오 Dependency Gradle 의존성 추가 implementation 'org.springframework.boot:spring-boot-starter-batch' testImplementation 'org.springframework.batch:spring-batch-t..
2022.05.27