전체 글

Books/IT 5분 잡학사전

TIL - Day3

TIL(Today I Learned) 2024.01.07 오늘 읽은 범위 ep. 6~10 책에서 기억하고 싶은 내용 ep.6 오류가 발생했을 때? 코드가 작동하지 않는 이유는 코드를 입력한 나 자신 때문이다. 반드시 오류 메시지를 읽어라. 그리고 오류가 왜 발생했는지 원인을 찾고 이해해야한다. ep.7 파이썬 - 영어의 문법을 많이 따른다. - 다양한 곳에서 활용된다.(인공지능, 데이터, 웹 개발, 업무자동화, 게임 등) - 커뮤니티가 크다. ep.8 프로그래밍 언어는 크게 2가지 방법으로 번역되는데, 번역하는 방법에 따라 인터프리트 언어와 컴파일 언어로 나눠진다. ep.10 코틀린 - null에서 안전한 언어다. - 코루틴을 지원하는 언어다. - 안드로이드 앱 개발, React & Node.js(자바스..

Books/IT 5분 잡학사전

TIL - Day2

TIL(Today I Learned) 2024.01.06 오늘 읽은 범위 ep. 1 ~ 5 책에서 기억하고 싶은 내용 ep.1 개발자? - 논리적으로 생각하기를 좋아하고 문제 해결을 즐기는 사람 - 만들어 낸 결과물에서 청취감을 느끼는 사람 - 과정을 잘 이해할 수 있어야 한다. - 끈기와 성실해야 한다. - 포기하지 않고 끝까지 할 수 있어야 한다. ep.2 어떤 언어를 선택해야 하는가? 정답은 없다. 내가 어떤 목적으로 프로그래밍을 하고 싶은지를 먼저 생각해보고 목적에 맞게 선택하면 된다. ep.3 새로운 언어를 배울 때? 먼저 공식문서를 살펴봐야 한다. 그리고 언어의 문법에 대해 보면서 직접 입력하고 이해해야 한다. 암기하고 이해하는 것에서 끝내는 것이 아니라 직접 코딩해보고 프로젝트를 만들어 봐야..

CSS

[CSS] 미디어쿼리

미디어 쿼리는 CSS에서 스타일을 선택적(단말기의 유형, 화면 해상도, 뷰포트 너비 등)으로 적용하고 싶을 때 사용합니다. 미디어 쿼리 사용방법은 아래와 같이 사용할 수 있습니다. - HTML link 태그 사용 - CSS @media 키워드로 사용 @media all and (조건) and (조건) {} 일반적으로는 CSS @media 키워드를 사용해서 스타일을 적용합니다. 미디어 쿼리 @media only all and (조건) and (조건) {} 미디어 유형 미디어 유형은 장치의 일반적인 범주를 나타냅니다. all : 모든 장치에 적합합니다.(기본값) print : 인쇄 결과물 및 출력 미리보기 화면에 적용할 때사용합니다. screen : 화면에 표시되는 부분에 적용할 때 사용합니다. 논리 연산자..

CSS

[CSS] DPR(Device Pixel Ratio)

해상도 해상도는 보통 1인치 안에 표현되는 화소(Pixel) 수를 의미합니다. 해상도가 높아지면 디스플레이의 화면은 선명해지는데, 이는 1인치 안에 픽셀의 수가 많아지기 때문입니다. 해당도의 밀도 단위, 즉 1인치당 가로, 세로를 이루는 픽셀의 수를 PPI(Pixel Per Inch)라고 합니다. PPI가 높아질 수록(밀도가 높아질 수록) 디스플레이의 화면은 선명해집니다. 예를 들어 10 PPI는 정사각형 한 면(1inch)에 10개의 픽셀로, 총 100개의 픽셀로 이루어져있습니다. (10 X 10) 즉 10 PPI는 100개의 픽셀로, 20 PPI는 400개의 픽셀로 이루어져 있기 때문에 10 PPI 보다 20 PPI의 밀도가 더 높으며 높은 해상도를 보여준다는 것을 알 수 있습니다. 그리고 동일한 해..

알고리즘/프로그래머스

[프로그래머스] 콜라 문제 - Javascript

문제 출처 Lv.1 콜라 문제 문제 설명 오래전 유행했던 콜라 문제가 있습니다. 콜라 문제의 지문은 다음과 같습니다. 정답은 아무에게도 말하지 마세요. 콜라 빈 병 2개를 가져다주면 콜라 1병을 주는 마트가 있다. 빈 병 20개를 가져다주면 몇 병을 받을 수 있는가? 단, 보유 중인 빈 병이 2개 미만이면, 콜라를 받을 수 없다. 문제를 풀던 상빈이는 콜라 문제의 완벽한 해답을 찾았습니다. 상빈이가 푼 방법은 아래 그림과 같습니다. 우선 콜라 빈 병 20병을 가져가서 10병을 받습니다. 받은 10병을 모두 마신 뒤, 가져가서 5병을 받습니다. 5병 중 4병을 모두 마신 뒤 가져가서 2병을 받고, 또 2병을 모두 마신 뒤 가져가서 1병을 받습니다. 받은 1병과 5병을 받았을 때 남은 1병을 모두 마신 뒤 ..

개발이야기

Refresh token을 활용하여 Access token 갱신하기

프로젝트를 진행하면서 access token이 만료되었을 때 refresh token을 사용하여 access token을 재발급 받아야 하는 상황이 생겼습니다. 그래서 token 재발급에 대해 생각해보고 방법에 대해 알아보겠습니다. refresh token을 사용하여 만료된 access token을 갱신하는 방법 클라이언트에서 API 요청을 보낸 후에 서버가 access 만료 여부를 확인합니다. 만약 access token이 만료되었다면 401 response를 보내고, 응답받은 클라이언트는 이전에 발급받은 refresh token을 헤더에 담아 api 요청을 합니다. 서버에서는 이전과 동일하게 refresh token 만료 여부를 확인합니다. 만료가 되지 않은 경우에 access token을 재발급해서..

알고리즘/프로그래머스

[프로그래머스] 개인정보 수집 유효기간 - Javascript

문제 출처 Lv.1 개인정보 수집 유효기간 문제 설명 고객의 약관 동의를 얻어서 수집된 1~n번으로 분류되는 개인정보 n개가 있습니다. 약관 종류는 여러 가지 있으며 각 약관마다 개인정보 보관 유효기간이 정해져 있습니다. 당신은 각 개인정보가 어떤 약관으로 수집됐는지 알고 있습니다. 수집된 개인정보는 유효기간 전까지만 보관 가능하며, 유효기간이 지났다면 반드시 파기해야 합니다. 예를 들어, A라는 약관의 유효기간이 12 달이고, 2021년 1월 5일에 수집된 개인정보가 A약관으로 수집되었다면 해당 개인정보는 2022년 1월 4일까지 보관 가능하며 2022년 1월 5일부터 파기해야 할 개인정보입니다. 당신은 오늘 날짜로 파기해야 할 개인정보 번호들을 구하려 합니다. 모든 달은 28일까지 있다고 가정합니다...

알고리즘/프로그래머스

[프로그래머스] 크기가 작은 부분문자열 - Javascript

문제 출처 Lv.1 크기가 작은 부분문자열 문제 설명 숫자로 이루어진 문자열 t와 p가 주어질 때, t에서 p와 길이가 같은 부분문자열 중에서, 이 부분문자열이 나타내는 수가 p가 나타내는 수보다 작거나 같은 것이 나오는 횟수를 return하는 함수 solution을 완성하세요. 예를 들어, t="3141592"이고 p="271" 인 경우, t의 길이가 3인 부분 문자열은 314, 141, 415, 159, 592입니다. 이 문자열이 나타내는 수 중 271보다 작거나 같은 수는 141, 159 2개 입니다. 제한 사항 1 ≤ p의 길이 ≤ 18 p의 길이 ≤ t의 길이 ≤ 10,000 t와 p는 숫자로만 이루어진 문자열이며, 0으로 시작하지 않습니다. 입출력 예 t p result "3141592" "2..

알고리즘/프로그래머스

[프로그래머스] 카드 뭉치 - Javascript

문제 출처 Lv.1 카드 뭉치 문제 설명 코니는 영어 단어가 적힌 카드 뭉치 두 개를 선물로 받았습니다. 코니는 다음과 같은 규칙으로 카드에 적힌 단어들을 사용해 원하는 순서의 단어 배열을 만들 수 있는지 알고 싶습니다. 원하는 카드 뭉치에서 카드를 순서대로 한 장씩 사용합니다. 한 번 사용한 카드는 다시 사용할 수 없습니다. 카드를 사용하지 않고 다음 카드로 넘어갈 수 없습니다. 기존에 주어진 카드 뭉치의 단어 순서는 바꿀 수 없습니다. 예를 들어 첫 번째 카드 뭉치에 순서대로 ["i", "drink", "water"], 두 번째 카드 뭉치에 순서대로 ["want", "to"]가 적혀있을 때 ["i", "want", "to", "drink", "water"] 순서의 단어 배열을 만들려고 한다면 첫 번째..

알고리즘/프로그래머스

[프로그래머스] 대충 만든 자판 - Javascript

문제 출처 Lv.1 대충 만든 자판 문제 설명 휴대폰의 자판은 컴퓨터 키보드 자판과는 다르게 하나의 키에 여러 개의 문자가 할당될 수 있습니다. 키 하나에 여러 문자가 할당된 경우, 동일한 키를 연속해서 빠르게 누르면 할당된 순서대로 문자가 바뀝니다. 예를 들어, 1번 키에 "A", "B", "C" 순서대로 문자가 할당되어 있다면 1번 키를 한 번 누르면 "A", 두 번 누르면 "B", 세 번 누르면 "C"가 되는 식입니다. 같은 규칙을 적용해 아무렇게나 만든 휴대폰 자판이 있습니다. 이 휴대폰 자판은 키의 개수가 1개부터 최대 100개까지 있을 수 있으며, 특정 키를 눌렀을 때 입력되는 문자들도 무작위로 배열되어 있습니다. 또, 같은 문자가 자판 전체에 여러 번 할당된 경우도 있고, 키 하나에 같은 문..

후끈후끈
즐거운 하루 되시렵니까