본문 바로가기

전체 글21

프로그래머스 백엔드 데브코스 4기 PRE팀 회고록 최고의 PRE 네이비팀 기간 : 23/06/01 ~ 23/06/15 🆕 백엔드 데브코스 시작 그렇게 기다리고 기다렸던 데브코스가 시작되었습니다. 교육 받기를 기다리며 가장 걱정했었던 것은 데브코스에 온 친구들이 너무 잘하지 않을까? 라는 걱정이었습니다. 근데 정말 잘하더라구요. 이 내용에 대해서는 뒷쪽에서 얘기하도록 하겠습니다. 1️⃣ Week OT를 진행하고 6명이 한 팀이되어 아이스브레이킹을 진행했습니다! 아무래도 처음이라서 그런지 모두 어색어색했던 것 같아요. 그렇게 아이스브레이킹이 끝나고 공부할 수 있는 시간을 갖게됩니다. 제가 말씀드리는 이 공부할 수 있는 시간은 코어타임이라고 부르며 13시 ~ 19시동안 동료들이 같이 공부한다는 느낌을 받을 수 있도록 게더타운을 활용해 캠을 키고 공부하는 시간.. 2023. 6. 26.
프로그래머스 백엔드 데브코스 4기 합격 후기 🏫 학부 생활 합격 후기를 작성하기 전 곰곰히 생각해보니 학부 얘기를 해야할 것 같아서 꺼내보려고 합니다. 저는 1학년부터 학부 근로장학생으로 일하며 3학년까지 쉴틈없이 학업과 일을 병행하며 지내왔습니다! 주 5일중 3일 정도는 오전 9시부터 오후 10시까지 학교에 있을정도로요! 그렇게 4학년이 되서는 야간으로 학사과정을 했었고 주간에는 컴퓨터공학부 교직원으로 근무했었습니다. 4학년 때는 일찍가서 늦게 집에가는 날이 주 3일이 5일이 되었고 졸업할 때 쯤 많이 지쳐있었던 것 같아요. 위에서 이야기 한 것 처럼 학업과 일을 병행한다는게 쉽지 않았던 것 같아요. 집안 형편상 용돈을 받으며 다닐 수 없었고 그만큼 공부에 집중하지 못하고 일을 많이 했었던 것 같아요. 물론 이것도 핑계라고 하면 핑계라고 할 수 .. 2023. 6. 24.
[프로그래머스] Lv1. 두개 뽑아서 더하기 (Java풀이) 문제 설명 정수 배열 numbers가 주어집니다. numbers에서 서로 다른 인덱스에 있는 두 개의 수를 뽑아 더해서 만들 수 있는 모든 수를 배열에 오름차순으로 담아 return 하도록 solution 함수를 완성해주세요. 제한사항 numbers의 길이는 2 이상 100 이하입니다. numbers의 모든 수는 0 이상 100 이하입니다. 입출력 예 numbers result [2,1,3,4,1] [2,3,4,5,6,7] 문제 접근 서로 다른 2개의 인덱스를 골라야하므로 이중 반복문을 이용한다. 이때 두번째 반복문은 이전 반복문 값에 +1하여 불필요한 반복문을 줄인다. 두 개의 수를 뽑아 더해서 만들 수 있는 수 이기 때문에 반복적으로 배열에 넣을 필요가 없어서 Set 객체를 이용해야된다고 생각했고 마.. 2023. 4. 20.
[Java] 람다식(Lambda Expression) 배워보기 Spring Boot를 공부하던 중 강의에서 람다식이 나왔는데 뭔지 정확히 모르겠지만 자바스크립트의 익명함수와 비슷해서 한 번 찾아보았다. 람다식 람다식은 메소드를 하나의 식으로 표현한 것이며 익명 함수라고 볼 수 있다. 익명 함수란? 익명 함수는 함수의 이름이 없는 함수로 일급객체라는 특징을 가지고 있다. 일급객체는 다른 객체들에 일반적으로 적용 가능한 연산을 모두 지원하는 객체로 예를 들어, 변수에 함수를 넣을 수 있다. 함수를 문자열, 숫자, 배열 등 처럼 사용할 수 있다는 것이다. 자바스크립트를 배워본 사람들의 경우 무슨 말인지 쉽게 이해할 수 있을 것이다. 람다의 표현 // 람다 적용 전 int sum(int a, int b) { return a + b; } // 람다 적용 후 (int a, i.. 2023. 4. 16.
[프로그래머스] Lv2. 이진 변환 반복하기 (Javascript 풀이) 문제 설명 0과 1로 이루어진 어떤 문자열 x에 대한 이진 변환을 다음과 같이 정의합니다. x의 모든 0을 제거합니다. x의 길이를 c라고 하면, x를 "c를 2진법으로 표현한 문자열"로 바꿉니다. 예를 들어, x = "0111010"이라면, x에 이진 변환을 가하면 x = "0111010" -> "1111" -> "100" 이 됩니다. 0과 1로 이루어진 문자열 s가 매개변수로 주어집니다. s가 "1"이 될 때까지 계속해서 s에 이진 변환을 가했을 때, 이진 변환의 횟수와 변환 과정에서 제거된 모든 0의 개수를 각각 배열에 담아 return 하도록 solution 함수를 완성해 주세요. 제한사항 s의 길이는 1 이상 150,000 이하입니다. s에는 '1'이 최소 하나 이상 포함되어 있습니다. 입출력 .. 2023. 4. 10.
[JOBDA] 디챔스 개발자 역량검사와 개발자 구현 능력 검사 후기 취업 공고를 이것저것 보다가 JOBDA라는 채용 플랫폼에서 스펙과 전공 무관하게 개발자 역량검사와 개발자 구현 능력 검사를 통해 회사를 매칭해 준다는 글을 보고 취업준비를 하는 나에게 어느 정도 도움이 될 것 같아서 진행해 보았다. 여기에서 얘기하는 것을 간단하게 설명하자면 스펙과 전공을 보지 않고 해당 플랫폼에서 제공하는 개발자 역량검사와 개발자 구현 능력 검사 이 2가지 만을 보고 점수가 높을수록 더 많은 기업 추천을 해주는 시스템 같았다. 기간은 4/16(일) 23:30분까지이니 관심 있으신 분들은 해보는 것도 좋은 경험이 될 것 같다. [관련 사이트] JOBDA 디챔스 [잡다] 포지션(공고)을 확인해보세요! 잡다에서 포지션 확인하고 지원까지 해보세요! www.jobda.im 개발자 AI 역량검사 .. 2023. 4. 9.
[프로그래머스] Lv1. 문자열 내 마음대로 정렬하기 (Javascript 풀이) 문제 설명 문자열로 구성된 리스트 strings와, 정수 n이 주어졌을 때, 각 문자열의 인덱스 n번째 글자를 기준으로 오름차순 정렬하려 합니다. 예를 들어 strings가 ["sun", "bed", "car"]이고 n이 1이면 각 단어의 인덱스 1의 문자 "u", "e", "a"로 strings를 정렬합니다. 제한 조건 strings는 길이 1 이상, 50이하인 배열입니다. strings의 원소는 소문자 알파벳으로 이루어져 있습니다. strings의 원소는 길이 1 이상, 100이하인 문자열입니다. 모든 strings의 원소의 길이는 n보다 큽니다. 인덱스 1의 문자가 같은 문자열이 여럿 일 경우, 사전순으로 앞선 문자열이 앞쪽에 위치합니다. 입출력 예 strings n return ["sun", "b.. 2023. 4. 9.
[TypeOrm] 일 대 다 관계 설정 객체지향에 대한 공부를 제대로 해보고 싶어서 요즘 계속 관심있게 지켜본 Nest.js로 프로젝트를 해보기로 했다. 근데 프로젝트를 하다보니 생각보다 TypeORM에 대한 지식이 부족하여 DB 설계를 하는데 애를 먹었다. 아래는 내가 만드려고 하는 유저 테이블과 설문조사 테이블에 대한 ERD로 한명의 유저가 여러개의 설문조사를 가질 수 있는 형태로 되어있는 1:N의 성질을 띄고 있다. 그냥 데이터베이스로 설계하게되면 Surveys에서 FK를 직접 추가하여 테이블을 만들면 되지만 TypeORM으로 설정하려니 막막했다. 찾아보니 @ManyToOne, @OneToMany 등 다양한 데코레이터를 지원했었다. 예를 들어 설문조사를 작성시 설문조사는 유저가 작성하는 것으로 설문조사 테이블안에 User의 고유 식별번호.. 2023. 4. 7.
[프로그래머스] Lv1. 최소직사각형 (Javascript 풀이) 문제 설명 명함 지갑을 만드는 회사에서 지갑의 크기를 정하려고 합니다. 다양한 모양과 크기의 명함들을 모두 수납할 수 있으면서, 작아서 들고 다니기 편한 지갑을 만들어야 합니다. 이러한 요건을 만족하는 지갑을 만들기 위해 디자인팀은 모든 명함의 가로 길이와 세로 길이를 조사했습니다. 아래 표는 4가지 명함의 가로 길이와 세로 길이를 나타냅니다. 명함 번호 가로 길이 세로 길이 1 60 50 2 30 70 3 60 30 4 80 40 가장 긴 가로 길이와 세로 길이가 각각 80, 70이기 때문에 80(가로) x 70(세로) 크기의 지갑을 만들면 모든 명함들을 수납할 수 있습니다. 하지만 2번 명함을 가로로 눕혀 수납한다면 80(가로) x 50(세로) 크기의 지갑으로 모든 명함들을 수납할 수 있습니다. 이때.. 2023. 4. 7.