본문 바로가기

전체 글

(71)
TIL#30(두 개 뽑아서 더하기, 가장 가까운 같은 글자, 회원가입 로그인 API) 오늘 한일두 개 뽑아서 더하기이 중 for문을 이용하여 numbers의 숫자 두 개를 선택해 더해주었고 중복 된 값은 추가를 하지 않았고 sort를 통해 오름차순으로 정렬 후 출력하였다.가장 가까운 같은 글자이 중 for문을 이용해 뒤 글자를 기준으로 앞 글자와 비교하였고 같을 때 떨어진 칸 수 만큼을 answer에 넣어주고 같은 글자가 없으면 -1을 넣어주었다.회원가입 로그인 API 어려웠던 점이 중 for문을 쓸 때 조건을 어떻게 지정해야 모든 경우의 수를 적용할 수 있는지 생각하는게 어려웠다. (순서를 종이에 표 형식으로 표현하여 보니 쉽게 조건을 설정할 수 있었다.)JWT인증으로 토큰을 사용하는 방법을 잘 모르겠다. (isomnia로 jwt토큰을 쿠키에 저장해보고 가져와보면서 사용법을 생각해볼 수..
TIL#29(게임 아이템 시뮬레이터 DB) 오늘 한일게임 아이템 시뮬레이터 DBprisma를 이용해 데이터베이스 관계 설계를 하였다.유저의 정보와 아이템의 정보를 두 개의 데이터베이스로 각각 관리하기 위해 따로 만들어 주었다.어려웠던 점관계형 데이터베이스 설계가 아직 어렵다. (데이터베이스 설계를 많이 해보면서 익혀야 할 것 같다.)데이터 베이스 두 개를 사용하는 방법이 처음이였고 찾아봐도 정보가 부족하여 구현하기 어려웠다. (schema에 클라이언트 정보를 변경하여 각각 다른 클라이언트로 사용하는 방법을 알게되어 해결하였다.)오늘의 TIPnpx prisma db pushschema.prisma 파일에 설정된 모델을 바탕으로 MySQL(DB)에 정보를 업로드 한다.prisma db pushschema.prisma 파일에 정의된 설정값을 실제 db..
TIL#28(K번째수, 네트워크 계층) 오늘 한일K번째수배열을 잘라내 새로운 배열을 만들 수 있는 slice를 이용해 간단하게 풀 수 있었다.네트워크 계층네트워크 계층 (Network Layer)은 상위 계층에 연결하는 데 필요한 데이터 전송과 경로 선택 기능을 제공하고, 라우팅 프로토콜을 사용하여 최적의 경로를 선택한다. 데이터를 전송할 수신 측의 주소를 찾고 수신 된 데이터의 주소를 확인하여 내 것이면 전송 계층으로 전송한다. 네트워크 계층은 데이터를 패킷 단위로 분할하여 전송한 후 재결합한다.OSI 참조 모델 7계층 중 네트워크 계층은 세 번째 계층으로, 패킷을 송신 측에서 수신 측으로 전송한다. 즉, 전송 개체 사이에 안정적으로 전송할 수 잇도록 서비스를 제공한다. 네트워크 계층은 IP(Internet Protocol) 처럼 실제 네트..
TIL#27(시저 암호, 게시판 프로젝트) 오늘 한일시저 암호받아 온 문자열 s를 Array.from()을 통해 배열로 바꾼 후 forEach문으로 각 배열의 값을 아스키 코드로 변경 후 n칸 만큼 이동하였다. 이동 하였을 때 대문자와 소문자를 각각의 범위에서 벗어났을 때 26을 빼준 후 범위안에 들어오도록 한 후 String.fromCharCode()로 문자로 바꾼 후 answer에 넣어주었다.게시판 프로젝트Amazon RDS를 통해 SQL Prisma DB로 게시판 기능을 구현하였다. (Insomnia로 기능 테스트) 어려웠던 점관계형 데이터베이스를 이용한 게시판 프로젝트 기능을 전부 구현하기는 하였지만 Prisma의 연관 관계를 설계하고 연결된 모델들을 사용하는 방법이 아직 익숙하지 않다. (여러 Prisma의 연관 관계를 설계해보고 연결된..
TIL#26(크기가 작은 부분문자열, JWT, 물리계층, 데이터 링크 계층) 오늘 한일크기가 작은 부분문자열slice를 통해 t를 p와 같은 길이의 문자열로 나타낼 수 있는 모든 경우를 for문을 돌려 a에 넣어준 후 p와 a를 비교하여 작거나 같을 때마다 answer를 1씩 증가시켜주었다.JWTJWT(Json Web Token)은 웹 표준으로써, 서버와 클라이언트 사이에서 정보를 안전하게 전송하기 위해 도움을 주는 웹 토큰(Web Token)이다.데이터를 교환하고 관리하는 방식인 쿠키/세션과 달리, JWT는 단순히 데이터를 표현하는 형식이다.물리계층물리 계층(physical Layer)은 두 시스템 간에 데이터를 전송하려고 링크를 활성화하고 관리하는 전기적, 기계적, 절차적, 기능적 특성 등을 정의한다. 또한 물리 계층은 허브, 라우터, 네트워크 카드, 케이블 등 전송매체를 통..
TIL#25(삼총사, SQL, Prisma) 오늘 한일삼총사3중 for문을 이용해 3개를 더하는 모든 경우의 수를 만든 후 합이 0이면 answer를 1 추가 하였다.SQL데이터베이스에서 사용되는 생성, 삽입, 조회 명령문을 SQL(Structured Query Language)이라고 한다.     SQL 종류 DDL (데이터 정의 언어, Data Definition Language)DML (데이터 조작 언어, Data Manipulation Language)DCL (데이터 제어 언어, Data Control Language)DQL (Data Query Language)TCL (Transaction Control Language) PrismaPrisma는 ORM(Object Relational Mapping)으로써 Javascript 객체(Obje..
TIL#24(이상한 문자 만들기, OSI 계층, LAN& WAN) 오늘 한일이상한 문자 만들기빈칸을 기준으로 문자를 나눈 후에 각 문자의 짝수번째를 대문자로 바꾸고 홀수번째를 소문자로 바꾼다음 마지막이 아닐때만 빈칸을 추가해 결과에 넣어준후 출력하였다. OSI 7계층통신 기술의 도입과 통신 기능의 확장을 쉽게 하려고 프로토콜을 몇 개의 계층으로 나누는 것을 계층화라 하고, 통신 기능을 7계층으로 분류하여 각 계층마다 프로토콜을 규정한 규격을 OSI(Open System Interconnection) 모델이라고 한다.OSI 참조 모델은 각각 특정 기능을 수행하는 서로 다른 계층 7개를 말한다. 물리 계층(1계층), 데이터 링크 계층(2계층), 네트워크 계층(3계층), 전송 계층(4계층), 세션 계층(5계층), 표현 계층(6계층), 응용 계층(7계층)으로 구성된다.LAN&..
TIL#23(최대공약수와 최소공배수, 3진법 뒤집기, MySQL) 오늘 한일최대공약수와 최소공배수n과 m 중 큰 값을 a, 작은 값을 b에 넣은 후 재귀함수를 이용해 유클리드 호제법으로 최대공약수를 구한후 최소공배수를 구하고 answer 배열에 push 해주었다.  유클리드 호제법 (최대공약수를 구하는 알고리즘)을 알고 있어서 쉽게 해결하였다. 3진법 뒤집기toString으로 10진법을 3진법으로 만들고 split으로 나눈 후 reverse로 뒤집고 join으로 합친 후 parseInt로 다시 3진법으로 변환하였다.MySQLMySQL은 가장 널리 사용되는 오픈소스 관계형 데이터베이스(RDB) 이다. 어려웠던 점toString()이나 split(), reverse(), join() 등 자바스크립트 내장함수에 대한 지식이 부족하여 활용하는데 미숙하였다.(내장 함수를 많이 ..