본문 바로가기

분류 전체보기

(79)
[내용정리] 모바일 개발자에서 프론트엔드로 전향한 이유 - 드림코딩 엘리 평소에 좋아하는 개발자님인 '엘리'님의 직무전환 스토리를 듣고 태도에서 배울점이 많아 영상 내용을 정리하였습니다. 🙏🏻  www.youtube.com/watch?v=wD8GnE_AJQQ # 결국은 시장성 - 대학생 때부터 시스템 프로그래밍에 대한 관심이 많았음 - 삼성전자에서 근무 시, C와 C++ 임베디드 업무를 하다가 안드로이드가 나오면서 안드로이드 팀으로 반강제적으로 이동하게 됐음 - 미국으로 취업을 준비할 때도, 임베디드 및 스프링 백엔드에 관심이 있었으나 안드로이드에 대한 수요가 높아서 기둥을 세웠던 안드로이드 개발자로 취업함  # 주니어 시절- 삼성전자에서 근무 시 애플리케이션을 만든 것이 아니어서 실무경력이 부족한 편이었음 - 이를 보충하기 위해 공식사이트에서 다양한 것을 배우고, 운영체..
[회고록] Spring 프로젝트 : 시티 캣 타로 / 4주차 드디어 프로젝트 마지막 4주차가 끝났다. 1. 한 것 github.com/CodeSoom/city-cat-tarot-developerOlive CodeSoom/city-cat-tarot-developerOlive Contribute to CodeSoom/city-cat-tarot-developerOlive development by creating an account on GitHub. github.com 2. 느낀 것 - 이번주는 프로젝트를 마무리 지어야 하는 주간이었다. 개인적으로 주중 중반부터 컨디션이 좋지 않아서, 다른 주간보다는 많은 것을 하지 못했었다. 하지만 나 자신을 몰아세우기 보다는 마음을 편하게 가지고 싶었다. - 보관함 기능을 완성해야 했다. 로그인 한 아이디로 저장한 카드 목록을 제..
[회고록] Spring 프로젝트 : 시티 캣 타로 / 3주차 프로젝트 3주차 기간 내 완료한 내용은 다음과 같다. 1. 한 것 [ 메인화면 ] 2. 느낀 것 이번주에 구현한 것은 "JWT를 이용한 로그인 기능, Spring security 인증 필터 기능, 패스워드 암호화, 보관함 기능"이다. 코드숨 6,7주차에서 JWT와 Spring security를 배웠을 때 어려워서 힘들었던 기억이 난다. 그래도 꼭 필요한 내용이기에 개인 프로젝트를 하면서 복습하고 싶었다. 기능을 구현하려고 하니 기억이 나지 않는 부분이 있어서 다시 코드숨 강의를 보면서 진행했던 과제들을 살펴보는 시간을 가졌다. 포스트맨으로 accessToken이 생성된 것도 확인하고, 클라이언트에서 localStorage를 이용해서 accessToken을 저장하는 것을 보면서 '아 이렇게 돌아가는 거구나..
[회고록] Spring 프로젝트 : 시티 캣 타로 / 2주차 github.com/CodeSoom/city-cat-tarot-developerOlive CodeSoom/city-cat-tarot-developerOlive Contribute to CodeSoom/city-cat-tarot-developerOlive development by creating an account on GitHub. github.com 프로젝트 2주차 기간 내 완료한 내용은 다음과 같다. 1. 한 것 [ '오늘의 운세 타로' 채팅창 구현 + 선택한 카드 결과 보기 ] 2. 느낀 것 이번주에 구현한 기능의 핵심은 '오늘의 운세 타로 채팅창 구현 + 사용자가 선택한 카드 결과물 보여주기'였다. 먼저 로컬에서 스프링 코드 작성 + mariadDB 연결까지 테스트해본 후 테스트가 통과되면 AW..
[회고록] Spring 프로젝트 : 시티 캣 타로 / 1주차 코드숨 8주 학습을 마치고 나면, 9주차부터는 개인 프로젝트를 진행한다. 이번 회고록에서는 내가 처음에 프로젝트를 어떻게 구상했는지 그 흐름을 적어보고자 한다. 🤔 나는 어떤 프로젝트를 만들고 싶은가? 보통 포트폴리오용 개발자 프로젝트를 보면, 쇼핑몰이나 커뮤니티 형식이 많은 편이다. 나 또한 그 형식이 배운 내용을 적절하게 구현해보기 좋다고 생각한다. 하지만 예전에 종립 트레이너님께서 너무 입사지원용 티가 나는 포트폴리오보다는 내가 실제로 사용하기 위해 만든 포트폴리오면 더 좋다는 말씀을 해주신 것이 기억났다. 그렇다면 나도 재미있게 쓸 수 있고, 친구에게도 써보라고 할 수 있는 그런 프로젝트가 뭐가 있을까.... 최근에 관심을 가진 타로카드가 생각났다. 재미로만 보는 거긴 한데..... 호기심에 한 ..
[회고록] 코드숨 Spring - 8주차 코드리뷰(REST Docs, Docker) [ 8주차 회고록 📚] 📌 커리큘럼 📌 코드리뷰 with 깃허브 github.com/CodeSoom/spring-week8-assignment-1/pull/8 [Spring 8주차 과제] API 문서 만들기, Docker image 만들기 by developerOlive · Pull Request #8 · CodeSoom/spring-wee 📍 과제 javaDoc 작성 API 문서 만들기 Docker image 만들기 github.com 1. 한 것 - 코드숨 스프링 8회 강의 3개 듣기 - 과제 1 : Spring REST Doc을 이용한 API 문서 작성 - 과제 2 : Docker Image 배포 2. 배운 것 📌 도커란? 컨테이너 기반의 오픈소스 가상화 플랫폼 다양한 프로그램, 실행환경을 컨테이너..
[회고록] 코드숨 Spring - 7주차 코드리뷰 (Spring Security, 암호화) [ 7주차 회고록 📚] 📌 커리큘럼 📌 코드리뷰 with 깃허브 github.com/CodeSoom/spring-week7-assignment-1/pull/7 [Spring 7주차 과제] 인가(Authorization) 구현하기 by developerOlive · Pull Request #7 · CodeSoom/spring-week7-assignm 과제 목표 지금은 로그인을 했다고 하더라도, 다른 사람의 정보를 내 마음대로 수정할 수 있습니다. 내 정보는 오직 나만 수정할 수 있어야 합니다. 오직 나만이 내 정보를 수정할 수 있도록 Sprin github.com 1. 한 것 - 코드숨 스프링 7회 강의 3개 듣기 - 과제 1 : 자신의 정보를 타인이 수정할 수 없도록 Spring Security를 이용하..
[회고록] 코드숨 Spring - 6주차 코드리뷰 (JWT) [ 6주차 회고록 📚] 📌 커리큘럼 📌 코드리뷰 with 깃허브 github.com/CodeSoom/spring-week6-assignment-1/pull/14 [Spring 6주차 과제] 로그인 만들기 by developerOlive · Pull Request #14 · CodeSoom/spring-week6-assignment-1 📍 과제 목표 지금은 모든 기능을 로그인을 하지 않고 사용할 수 있습니다. 고양이 장난감을 새로 등록하거나 수정, 삭제하는 기능은 인증된 사용자만이 사용할 수 있어야 합니다. JWT를 이용해 github.com 1. 한 것 - 코드숨 스프링 6회 강의 2개 듣기 - 과제 1 : JWT를 이용해 인증을 구현하여 로그인을 만들고, 인증된 사람만 등록/수정/삭제하도록 만들기 - ..
[회고록] 코드숨 Spring - 5주차 코드리뷰 (Validation, DTO, Dozer Mapper) [ 5주차 회고록 📚] 📌 커리큘럼 📌 코드리뷰 with 깃허브 github.com/CodeSoom/spring-week5-assignment-1/pull/11 [Spring 5주차 과제] 고양이 장난감가게 유효성 추가하기, 회원 관리 만들기 by developerOlive · Pull Requ 📍 1. 고양이 장난감가게 유효성 검사 추가하기 고양이 장난감은 이름, 메이커 그리고 가격은 필수 입력 항목입니다. 이 중에서 하나라도 빠트린 경우에는 처리를 거부하고 웹에게 에러 응답을 github.com 1. 한 것 - 코드숨 스프링 5회 강의 2개 듣기 - 과제 1 : 고양이 장난감 목록 얻기, 상세 조회하기, 등록하기, 수정하기, 삭제하기 -> 유효성 검사 코드 작성 - 과제 2 : 회원 생성, 수정, 삭..
[회고록] 코드숨 Spring - 4주차 코드리뷰 (클린 아키텍처, Spring Data JPA, Repository) [ 4주차 회고록 📚] 📌 커리큘럼 📌 코드리뷰 with 깃허브 github.com/CodeSoom/spring-week4-assignment-1/pull/10 [Spring 4주차 과제] 고양이 장난감가게 만들기 by developerOlive · Pull Request #10 · CodeSoom/spring-week4-assig 📍 과제 목록 고양이 장난감 목록 얻기 - GET /products 고양이 장난감 상세 조회하기 - GET /products/{id} 고양이 장난감 등록하기 - POST /products 고양이 장난감 수정하기 - PATCH /products/{id} 고양이 장난감 github.com 1. 한 것 - 코드숨 스프링 4회 강의 3개 듣기 - 고양이 장난감을 등록/조회/수정/삭제..
REST API가 뭔가요? 📍 REST : Representational State Transfer 직역하자면 대표적인 상태 전달 애플리케이션 개발의 *아키텍처 중 하나 (*아키텍처 : 애플리케이션을 설계, 제작하는데 사용하는 패턴과 기술의 총칭) 웹 애플리케이션 상에 존재하는 모든 리소스에 대해 고유의 URI를 부여한 후 HTTP Method(GET, POST, PUT, DELETE)를 이용해 리소스에 대해 *CRUD 명령을 적용 (*CRUD : Create, Read, Update, Delete의 줄임말 ) 📍 REST의 구성요소 3가지 자원 (Resource) - URI : 서버에 존재하는 데이터의 총칭. 모든 자원은 고유의 URI를 가짐 행위 (Verb) - HTTP Method : 클라이언트가 HTTP Method를 이용..
[JAVA] GC, stop-the-world, G1GC에 대해서 설명해 주세요. 📍Garbage Collector 동적으로 할당한 메모리 영역 중 사용하지 않는 영역을 탐지하여 해제하는 기능 📍 Stop-the-world 가비지 컬렉터를 실행하기 위해 JVM이 애플리케이션 실행을 멈추는 것 Stop-the-world가 발생하면 가비지 컬렉터를 실행하는 쓰레드를 제외한 나머지 쓰레드는 모두 작업을 멈춘다. 가비지 컬렉터 작업을 완료한 이후에 중단했던 애플리케이션 실행을 다시 시작한다. 어떤 가비지 컬렉터 알고리즘을 사용하더라도 stop-the-world는 발생한다. 대개의 경우 가비지 컬렉터 튜닝이란 stop-the-world 시간을 줄이는 것이다. 📍Young 영역(Yong Generation 영역) 새롭게 생성한 객체의 대부분이 여기에 위치한다. 대부분의 객체가 금방 접근 불가능 ..
[JAVA] ArrayList가 뭔가요? [ ArrayList ] - 배열을 좀 더 편리하게 사용할 수 있도록 java에서 제공하는 class이다. - 크기를 조정할 수 있는 배열이다. - 배열 크기를 지정하지 않으면, 초기 배열의 크기는 10이다. - 인덱스로 요소를 검색할 수 있다. - 제네릭을 지원한다. - 크기가 고정된 배열과 달리, ArrayList는 새 요소가 추가될 때 자동으로 크기를 늘린다. 그럼 ArrayList는 어떻게 배열의 크기를 조정하는 것일까? add()로 인해 사이즈가 꽉 찼을 시 현재의 1.5배를 증가시켜 새로운 배열을 생성한다. 1.5배 증가시킨 새로운 배열에 현재의 배열을 copy한다. int newCapacity = oldCapacity + (oldCapacity >> 1); is equivalent of mu..
[회고록] 코드숨 Spring - 3주차 코드리뷰 (JUnit5, AssertJ, MockMvc, Mockito) [ 3주차 회고록 📚] 📌 커리큘럼 📌 코드리뷰 with 깃허브 github.com/CodeSoom/spring-week3-assignment-1/pull/8 [Spring 3주차 과제] Spring Web으로 ToDo REST API 만들기 by developerOlive · Pull Request #8 · CodeSoom/spring-week3-a 📍 과제 목록 HelloController 유닛 테스트 HelloController MockMVC 테스트 Task 모델 테스트 TaskService 테스트 TaskController 유닛 테스트 TaskController MockMVC 테스트 github.com 1. 한 것 - 코드숨 스프링 2회 과제풀이 강의 보기 - 코드숨 스프링 3회 강의 2개 듣기 ..
[회고록] 코드숨 Spring - 2주차 코드리뷰 (Spring Web MVC, ControllerAdvice, Marko.js) [ 2주차 회고록 📚] 📌 커리큘럼 📌 코드리뷰 with 깃허브 github.com/CodeSoom/spring-week2-assignment-1/pull/2 [Spring 2주차 과제] Spring Web으로 ToDo REST API 만들기 by developerOlive · Pull Request #2 · CodeSoom/spring-week2-a 📍Backend ToDo 목록 얻기 - GET /tasks ToDo 상세 조회하기 - GET /tasks/{id} ToDo 생성하기 - POST /tasks ToDo 제목 수정하기 - PUT/PATCH /tasks/{id} ToDo 삭제하기 - DELETE /tasks/{id} npm 테스트 통과 확인 테스트 코드 작 github.com 1. 한 것 - 코..
[회고록] 코드숨 Spring - 1주차 코드리뷰 (REST API, Jackson) [ 1주차 회고록 📚] 📌 커리큘럼 📌 코드리뷰 with 깃허브 github.com/CodeSoom/spring-week1-assignment-1/pull/9 [Spring 1주차 과제] ToDo REST API 만들기 by developerOlive · Pull Request #9 · CodeSoom/spring-week1-assignment-1 **🔖 구현해야 할 기능 ✅ ToDo 목록 얻기 - GET /tasks ✅ToDo 상세 조회하기 - GET /tasks/{id} ✅ ToDo 생성하기 - POST /tasks ✅ TToDo 제목 수정하기 - PUT/PATCH /tasks/{id} ✅ ToDo 삭제하기 - DELETE /tasks/{id} github.com 1. 한 것 - Git : Pull ..
[java] 단계8컬렉션_1to50 게임 12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091929394959697989910010110210310410510610710810911011111211311411511611711811912012112212312412512612712812913013113213313413513613713813914014114214314414514614714814915015115215315415515615715815916016116216316416516616716816..
[스크랩] "개발자 채용시 기술검증 어떻게 할 것인가" 워크샵 참석 후기 jojoldu.tistory.com/285?category=717426 "개발자 채용시 기술검증 어떻게 할 것인가" 워크샵 참석 후기 며칠전에 페이스북에 아주 핫한 포스팅이 올라왔습니다! OKKY의 공동대표이신 노상범님께서 개발자의 실력검증에 대한 글을 남기셨는데요. 여기서 애자일 컨설팅의 김창준님께서 이 주제에 대 jojoldu.tistory.com
[java] 단계4_석차출력 문제 [ 문제 풀이 날짜 / 암기 후 문제 풀이 시간 ] 1차 : 2020-10-14 (수) / 8분 30초 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 package 셀프테스트; /* * # 석차 출력 * 문제) 성적 순으로 이름 출력 */ public class 단계4_석차출력 { public static void main(String[] args) { String[] name = { "홍길동", "김영", "자바킹", "민병철", "메가맨" }; int[] score = { 87, 42, 100, 11, 98 }; // ..