스파르타내일배움캠프TIL
-
[TIL] 프로그래머스) 42583 - 다리를 지나는 트럭 풀이 (Java), 개인 과제 제출TIL-sparta 2024. 5. 28. 21:39
> 개인 과제 제출 전 마지막 테스팅 및 스크립트 점검을 진행하고, EC2 서버 세팅 후 프로젝트를 업로드한 뒤 README 작성 및 API 명세서 작성에 집중했다. 강의를 따로 듣지는 않아서 오전 중에 풀었던 코드 카타 문제 풀이를 작성해보았다. 학습 키워드: Java, Queue, LinkedList 42583 - 다리를 지나는 트럭1) 문제 설명 요약 (원문은 하단 링크 참고): 요약: 다리의 길이 bridge_length, 다리의 하중 weight, 그리고 배열 truck_weights 안에 다리를 지나게 될 트럭들의 무게가 주어진다. 트럭 하나가 다리를 건너는데 걸리는 시간은 다리의 길이와 같다. 다리의 하중이 허용하는 한 여러 대의 트럭이 순차적으로 다리에 진입하여 통과할 수 있다. 이 때, ..
-
[TIL] 스파르타) Node.js 숙련주차 강의 수강 (Transaction, Prisma), 개인 과제 진행 조금 (D-2)TIL-sparta 2024. 5. 27. 21:00
> Node 숙련주차 강의를 수강한 뒤 개인 과제의 도전 요구 사항을 완성하고, 새롭게 배운 내용을 정리해보았다. 학습 키워드: JavaScript, Node.js, express, database, MySQL, transaction, ACID Transaction1) What is it?: 데이터베이스에서 transaction이란 여러 개의 작업을 그룹화하여 한 그룹의 작업이 온전하게 성공하지 못하면 일부분만 수정되는 일 없이 해당 그룹의 모든 쿼리가 전부 실패하도록 하여 데이터의 일관성을 보장해주는 기능을 가리킨다. Transaction의 특징인 ACID에 대해서는 이전 TIL(링크, 1-6 Transaction)을 참고하자. 2) How does it work (MySQL)?:-- 트랜잭션을 시작합..
-
[TIL] IP, ARP, RoutingTIL-sparta 2024. 5. 26. 18:40
> IP, ARP, Routing에 대해 간략하게 알아보고 이해한 내용을 정리해보았다.학습 키워드: IP, ARP, Routing 1. IP와 IP 주소 체계란?1) IP: IP (Internet Protocol)란, 네트워크 내에서 송신 호스트와 수신 호스트 간 정보 교환을 위한 정보 위주의 규약으로, OSI 모델의 L3인 네트워크 계층에서 장치를 식별하기위해 고유한 주소를 할당하거나 데이터를 패킷화, 하는 작업 등을 담당한다. - 비 신뢰성 (unreliability): 흐름에 관여하지 않아서 송신한 정보가 수신측에 제대로 전달되는지를 보장하지 않는다. 예를 들면, 패킷이 손상 혹은 실종되거나 순서가 바뀌어 전달되기도 하며, 중복으로 전달되는 경우도 있을 수 있다. - 비 연결성 (connectio..
-
[TIL] 프로그래머스 - 피로도 문제 풀이 (Java, DFS)TIL-sparta 2024. 5. 25. 21:59
> 지난 주에 배운 내용을 토대로 주말 동안 아이템 시뮬레이터 과제 작업을 진행하고, 작업 전 후로 코딩 테스트 문제를 조금 풀었다. 그 중 마지막으로 푼 '피로도' 문제의 풀이를 적어보았다. 학습 키워드: Java, DFS 87946 - 피로도1) 문제 설명 (원문은 링크 참고): 프로그래머스코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.programmers.co.kr 문제 요약: 게임 속 피로도 시스템을 모방한 문제로, dungeons 2차원 배열의 각 항목에 담긴 1차원 배열이 던전의 정보이며, 각 던전 정보는 [최소 필요 피로도, 소모 피로도] 의 두 가지 element로 구성되어 있다. 최소..
-
[TIL] 스파르타) 아이템 시뮬레이터 2 과제 진행 - 3일 차 (bcrypt)TIL-sparta 2024. 5. 24. 20:26
> 지난번 아이템 시뮬레이터 과제에서는 캐릭터의 코드만 알면 누구나 캐릭터를 삭제할 수 있도록 구현했었는데, 이번 과제에서는 로그인된 사용자 계정에게 속한 캐릭터만 삭제가 가능하고, 캐릭터의 생성 또한 로그인 상태에서만 진행하여 생성된 캐릭터가 계정에 귀속되도록 바꾸는 요구 사항이 추가됐다. 그에 따라 DB에 저장될 계정 비밀번호를 보호하기 위한 bcrypt, 인증 토큰의 생성을 담당할 jsonwebtoken 라이브러리 들을 추가하여 사용해보면서 bcrypt 라이브러리의 사용법 및 hash와 encryption의 차이에 대해 알게된 내용을 정리해보았다. 학습 키워드: Node.js, express, jwt, jsonwebtoken, bcrypt, hash, encryption bcrypt, hash, a..
-
[TIL] 아이템 시뮬레이터 2 과제 시작 - 1일 차 (관계형 DB로 전환하기)TIL-sparta 2024. 5. 23. 21:17
> 작성 개요나 특이사항 등 알아야 할 정보가 있으면 간단하게 작성, 없을 시 스킵 학습 키워드: ERD, Prisma, multiSchema, SQL, RDBMS 관계형 DB로 전환하기1) 과제 요구사항: 이번에 발제된 과제는 지난번 아이템 시뮬레이터 과제를 기반으로 MongoDB를 빼고 RDBMS로 전환하는 과정 및 여러가지 주요 기능들의 구현이 요구사항에 추가되었다. 기능의 추가에 따라 테이블 또한 세분화되어 나뉘게 되었는데, 그 중에서 Item 테이블만 다른 DB에서 관리하도록 하라는 조건이 추가되었다. DB 구조 ER 다이어그램은 검색을 통해 구조를 익힌 뒤 아래와 같이 작성했다. 2) 발생한 문제 (Prisma와 multiSchema):// schema.prismagenerator clien..