본문 바로가기

전체 글192

[우아한테크코스] Lv. 2 - 1주차 회고: 새로운 시작 10일간의 방학이 순식간에 지나가고 레벨 2가 시작되었다. 우테코 선발 과정에서는 '최소한의 프로그래밍 역량'을 가지고 있는지 본다.프리코스, 최종 코딩테스트에서 순수 자바를 활용한 콘솔 애플리케이션을 만들도록 했었다. 그러나 레벨 2부터는 순수한 자바가 아니라 '스프링 프레임워크'를 다루게 된다.나는 이전에 다른 부트캠프를 들으면서 스프링이 어떤 것인지 어느 정도 학습을 하고 온 상태였는데,우테코에는 스프링을 한번도 접해보지 않은 크루들도 있다.그렇다면 과연 과정이 어떤식으로 진행될까? 이전과 같이 바로 미션을 주고 직접 부딪혀보면서 진행하는 건가?아니면 초반에는 스프링에 대한 수업 같은 걸 하고 나중에 미션을 하게 되는 걸까? 궁금증이 많았다. 개강 첫날 오티가 진행되었다. "네?.. 2024. 4. 23.
[Spring] @Controller와 @RestController 차이, 그리고 ResponseEntity 드디어 스프링 관련된 미션이 시작되었다. 예전에 공부를 할 때에는 주어진 자료를 따라 치기에 집중했던 것 같아서, 이번에는 구체적인 원리나 차이점 등을 좀 더 살펴보면서 학습하고자 한다. 그 중 이번에 가장 먼저 다룰 내용은 @Controller와 @RestController이다. 컨트롤러란, 클라이언트의 요청을 직접적으로 전달받는 엔드포인트(Endpoint)이다. 공식 문서에서 Spring MVC 컨트롤러에 대한 내용은 아래와 같이 설명하고 있다. Spring MVC provides an annotation-based programming model where @Controller and @RestController components use annotations to express request ma.. 2024. 4. 17.
[Soft Skills] 레벨 1 글쓰기 - 유연성 강화 우테코에서는 매 레벨마다 한 편의 글을 쓰도록 하고 있다.이전 기수 주제는 "우테코 한달 생활기" 였다고 한다. 이번 기수의 주제는 다음과 같다.유연성 강화 스터디의 경험을 시리즈로 작성한다.유연성 강화 스터디를 통해 발견한 나, 그리고 변화할 나우테코에서 개발자에게 필요한 자세 중 하나로 '유연성'을 강조하고 있다.우리는 일반적으로 성과 증명 마인드셋으로 살아왔다. 그래서 성과를 내지 못하거나 실패하면 좌절을 마주하기도 하고 극도한 스트레스를 받기도 한다.(하지만 이것이 무조건적으로 나쁘다는 것은 아니다. 적절한 성과 증명 마인드셋은 좋은 성과를 내는 원동력이 되기도 한다.)반면 학습 마인드셋을 가지게 되면 실패나 어려움을 겪더라도 그 과정에서 내가 무엇을 배울 수 있을지, 앞으로 어.. 2024. 4. 13.
[우아한테크코스] Lv. 1 - 7, 8주차 회고: 레벨 종료 이번주는  방학이 있어 7, 8주 차를 묶어서 한 번에 돌아보려고 한다. 체스 미션 마무리먼저, 3/26 ~ 4/1은 체스 미션을 마무리하는 기간이었다.워낙 악명 높았던 미션이라 걱정을 많이 했었는데 걱정했던 것보다는 잘 마무리할 수 있었던 것 같다. 6주 차에 체스말 이동과 같은 기본적인 기능에 대한 구현을 했다면, 이번 기간에는 ① 점수와 승패를 계산하는 기능, ② DB를 연결해 게임을 종료했다가 다시 시작하더라도 이전 데이터를 불러올 수 있는 기능을 구현해야 했다. 이번 미션을 하면서 가장 많은 시간을 투자한 부분은 DB 연결과 테스트였다.이전에 다른 부트캠프에서 DB 사용을 해본 적은 있었으나, 스프링과 함께 사용했었기에 구현 방식이 완전히 달랐다.순수 자바를 사용해 DB 연결을.. 2024. 4. 5.
[JAVA] JDBC 연결 Java에서 JDBC 드라이버를 사용해 DB와 연결하는 작업을 수행했다. 그 과정을 순서대로 정리해보았다.JDBC란 JavaDatabase Connectivity로, 자바에서 데이터베이스에 접속할 수 있도록 하는 자바 API이다.이번 프로젝트에서는 MySql 서버를 사용하는 프로그램을 만들기로 했다. 1. Gradle 의존성 추가build.gradle에 mysql-connector-java 를 추가해준다.runtimeOnly("com.mysql:mysql-connector-j:8.3.0") 2. 설정파일 추가데이터베이스에 접근하기 위한 정보를 yml파일을 이용해 설정한다.application.yml파일server: localhost:13306 // MySQL 서버 주소database: chess // M.. 2024. 4. 4.
[GitHub] 코드리뷰가 익숙하지 않은 분들을 위한 GitHub에서 코드리뷰 하는법 코드리뷰가 익숙하지 않은 분들을 위한 코드리뷰 하는 법을 정리해보고자 한다. (사실 그게 바로 나...🥲) 이번에 네 번째 우테코 미션을 하면서 리뷰어에게 코드 리뷰를 요청했다. 여러 코멘트가 달렸고 각 코멘트마다 열심히 답변을 작성해서 다시 리뷰 요청을 보냈다. 그런데 돌아온 리뷰에는 뭐지? 내 의견과 질문에 대한 아무런 답변도 돌아오지 않았다. 뭐지.. 뭔가 이상한데... 하고 다시 내 답변들을 보니 평소와 달리 "Pending"이라는 문구가 붙어있었다. 그렇다. 리뷰어에게 내 답변이 전송되지 않은 것...! 얼마나 이상하게 생각했을까🤔 그렇다면 뭐가 문제였는지, 어떻게 하면 되는지 한번 알아보자. 직접 테스트해보기 위해 계정 2개를 사용했다. 1. PR 보내기 PR(Pull requests)는 re.. 2024. 3. 30.