전체 글
-
TIL- 2021년 회고회고 2022. 1. 5. 03:08
벌써 2022년 새해가 되었다. 지난해 이것 저것을 되돌아본다. 개발 입문 - 천국편 2020년 12월, 공식적인 첫 직장을 퇴사했다. 그리고 커리어 전환을 위해서 개발 공부를 시작했다. 스파르타코딩 내일배움캠프를 통해서 개발을 배우고 만족스러운 4개월을 보냈다. 솔직하게 말하면 개발 지식도 배웠지만 큰 틀과 공부하는 방법론, 좋은 개발 문화를 배웠다. 몇 가지 소개하자면, TIL/WIL 작성하기, 회고라는 개념, 구글링을 잘하는 법, 출처 표시하기, 좋은 자료에 접근하는 법 등등. 개인적으로 사람은 환경에 크게 영향을 받는다고 생각한다. 한달 100만원을 내고 영어학원에 가면 핸드폰도 없애고 고시처럼 공부하듯 내가 들이는 돈과 시간, 주변이 주는 영향이 공부에는 중요하다. 이 학원은 환경을 만드는데 최..
-
Spring boot JPA/하이버네이트?Spring Boot/JPA 2022. 1. 4. 10:54
"JPA는 데이터베이스 기술이라기보다 애플리케이션의 데이터를 객체지향으로 볼 수 있게 해주는 객체 지향 기술이다." 전자정부 프레임워크에는 몇 가지 데이터 액세스 기술을 제공하는데. JPA는 데이터에 접근하는 방법 중 하나 1) 아이바티스(or 마이바티스) 2) 하이버네이트 3) JPA 4) 스프링 JPA 5) 스프링 몽고 DB ... 등등 목차 JPA란 하이버네이트란? JPA란? JPA(Java Persistence API)는 자바 진영의 ORM 표준 기술이다. ORM - Oriented Relational Mapping 은 이름 그대로 객체와 RDBMS를 매핑해주는 기술이다. SQL을 작성하는게 아니라, 자바 컬렉션 저장하듯이 객체를 ORM 프레임워크에 저장하고 프레임워크가 데이터베이스에 알아서 저장..
-
TIL - 새해 결심회고 2022. 1. 3. 10:20
새해가 밝았다. 작년에는 좋은 것들을 많이많이 보고 느낀 한해였다. 좋은 것을 내것으로 만들지 못한 아쉬움이 있다. 그중 하나가 TIL 이다. 어쩌다 조원이 AOP에 대해 질문했는데 대답해주지 못 했다. 하루 종일 공부한 개념인 것 같은데 너무 충격이었고 이제서야 TIL의 이유와 위력을 실감했다. 올해는 꾸준히 작성해 보고자 먼저 스스로의 RULE을 정한다. RULE 1. 템플릿을 사용한다. 그 동안 텍스트를 보기 좋게 편집하는 일에 낭비를, 그러자고 그냥 올리자니 보기 괴로움이 있었다. 혹시하고 티스토리 서식을 검색해보니 많이도 나왔다. 게으른 나 반성해... RULE 2. TIL은 회고 용도로만 한정하자 TIL은 하루를 되돌아 보는 용으로만 쓰고, 배운 개념은 해당 개념을 제목으로 작성하자 RULE ..
-
SOLID 객체 지향 설계 5원칙Spring Boot/스프링부트 공부 2022. 1. 3. 09:37
객체 지향 설계 5원칙? 스프링부트를 공부하면서 자주 언급되는 말이 있어 정리해본다. 목차 1) 객체 지향 설계 5원칙이란? 2) SOLID 객체 지향 설계 5원칙이란? 결론 : 객체 지향 프로그램을 올바르게 설계하는 원칙 결합도는 낮추고, 응집도는 높인다" 관점을 재정립 제품이 아닌 개념이다. 속성 메서드, 클래스, 객체, 모듈, 라이브러리 등등 전반에 녹아 있음. 이 원칙이 녹아있으면 유지보수/리펙토링이 수월해짐 디자인패턴의 뼈대, 스프링의 근간이 되는 개념 SOLID 결론 :객체 지향이 처음 등장한 1960년 이래로 시행착오를 통해 탄생한 5개의 설계 원칙이 있다. AKA, SOLID. SRP 단일 책임 원칙 Single Responsibility Principle OCP 개방 폐쇄 원칙 Open ..
-
#2 서버리스 프론트엔드 - 사진 파일 업로드(springboot aws s3 gradle)프론트엔드 2021. 11. 24. 22:28
프로젝트에 사진 업로드 기능을 AWS S3를 spring boot로 구현하며 마주한 Error들을 기록한다. # 검색어 - 시작은 UI를 준비하고, 구글로 springboot aws s3, spring boot gradle aws s3 라는 키워드로 검색했다. - 포스팅을 5개 정도 훑어보고 반가운 향로님 블로그가 가장 친절한 설명이 있어 따라해 보기로했다. # 첫 오류 dependencies 주입 "dependencies 주입은 implementation 명령어로 주입 한다" - 시작부터 오류와 마주했다. 아래와 같이 따라했더니 gradle이 정상적으로 작동하지 않았다. - handlebars가 뭔지 모르겠고, dependencyManagement가 뭔지 모르겠고, 무엇보다 왜 spring-cloud라..
-
동기와 비동기개발공부/CS지식 2021. 11. 15. 08:40
동기? 비동기? 프로세스? 스레드 싱글스레드? Blocking? Non-blocking? 웹브라우저? 자바스크립트 엔진? 동기란? - 작업이 순차적으로 진행되는 것 작업이 끝나는 동시에 진행된다. ex 1) 청소를 할때 : 청소기를 돌린다(5분) -> 세탁기를 돌린다(30분) -> 걸레질을 한다 -> 설거지를 한다. ex 2) 실시간 강의를 듣는다 : 1교시 -> 쉬는시간 -> 2교시 -> 쉬는 시간 -> 3교시 ex 3) 짜장면 배달 -> 짜장면을 먹는다 -> 짜장면 그릇 회수 -> 짜장면 배달 비동기란? - 동기의 반대. 작업이 순차적으로 진행되지 않는 것 ex 1) 세탁기를 돌린다(30분) -> 세탁기가 돌아가는 동안 설거지, 청소기, 걸레질 ex 2) 온라인 강의를 듣는다: 필요한 것만 내 시간에..
-
쿠키와 세션의 차이개발공부/CS지식 2021. 11. 9. 16:22
00. 근본적인 의문 왜 쿠키랑 세션을 알아야할까? 여러 기능 중, 금번은 로그인 기능을 구현하기 위해 알아야한다. Web의 HTTP 통신은, stateless라는 특징이 있다. 한번 통신을 완료하면 과거 통신 상태를 남기지 않는다는 말이다. (이게 무슨 소리?) ex) 로그인해서 마이페이지에 들어갔다.(통신: id/pw로 요청해서, 응답 값으로 마이페이지를 띄웠다. == 통신을 완료) 마이페이지를 수정하고 홈("/")으로 이동했더니 로그아웃이 되었다. (새로운 통신이라 이전의 로그인 상태를 가져오지 못 한다. == 새로 로그인 해야한다.) 모든 페이지 및 기능을 이용할때 로그인을 다시 해야한다고 하면, 너무 불편하지 않을 수 없다. 이때, 쿠키와 세션을 이용하면 HTTP 통신에 로그인 상태를 유지할 수..