전체 글 208

yahtzee 점수판 만들기

주사위는 있는데 점수판 만들기가 귀찮을 때 사용할 야찌 점수판을 만들어보려고 한다. 실제 야찌 점수판 야찌 규칙과 점수판 기록법 https://namu.wiki/w/%EC%95%BC%EC%B0%8C 야찌 - 나무위키 주사위 5개를 던진다.이 중 원하는 주사위들은 남겨두고 나머지 주사위들을 다시 던진다. 다시 던지기는 한 라운드에 두 번까지[3] 가능하며, 앞에서 던지지 않았던 주사위도 원한다면 다시 던질 namu.wiki 규칙과 구현해야 할 기능 5개의 주사위 눈을 입력한다 5개의 주사위의 눈을 입력받는다(모두 입력해야 한다) 1~6 사이의 숫자가 아니면 입력받지 않는다. 원하는 주사위를 남겨두고 나머지 주사위들을 다시 던진다. 한 라운드에 두 번 까지 가능하며, 던지지 않았던 주사위들도 원한다면 다시 ..

Javascript 2021.05.28

생활코딩 - DATABASE 관계형 데이터 모델링 - 물리적 데이터 모델링

물리적 데이터 모델링 논리적 데이터 모델링에서 만든 이상적인 표를 구체적인 제품에 맞는 현실적인 표로 만드는 과정 성능이 중요하다! 일단 운영해보고 데이터가 쌓인 후 부하가 큰 부분이 병목현상이 생기는지 확인 find slow query 성능을 향상시키는 방법 -인덱스 : 읽기성능 향상, 쓰기성능 저하, 저장공간 많이 차지함 -애플리케이션 : 캐시(cache) 사용해 데이터베이스 부하 줄임 (cache: 입력에 따른 실행결과 저장해두고 이후 동일한 입력에 대해 저장해둔 결과 출력하는 것) -역정규화(다른 수단들을 시도해도 개선되지 않을 때 사용함. 단점이 많음) 역정규화(반정규화, denormalization) 정규화를 통해 만든 이상적인 표를 성능이나 개발의 편의성을 위해 표를 조작하는 것. 정규화 :..

DATABASE 2021.05.27

생활코딩 - DATABASE 관계형 데이터 모델링 - 논리적 데이터 모델링

논리적 데이터 모델링 개념적 데이터 모델링에서 정의한 개념을 관계형 데이터 베이스에 맞게 데이터 형직을 잘 정리정돈 하는 것. Mapping Rule ERD -> 관계형 데이터 베이스에 맞는 형식으로 전환할 때 사용하는 방법론. ① Entity → Table ② Attribute → Column ③ Relation → PK, FK 위의 ERD로 관계형 데이터베이스 형식에 맞게 전환해본다. ① Entity → Table 저자, 글, 댓글 테이블을 만든다. ② Attribute → Column attribute들의 도메인에 맞게 Column을 만든다. 속성의 제약조건들(Primary key여부, unique, auto_increasement, type)에 맞게 만든다. 이 과정을 column에 대한 도메인을..

DATABASE 2021.05.19

생활코딩 - DATABASE 관계형 데이터 모델링 - 개념적 데이터 모델링

개념적 데이터 모델링 논리적, 물리적 모델링에 대한 지식을 가지고 개념적 모델링을 해야한다. 개념적 데이터 모델링의 효용 1. 현실에서 개념을 추출하는 필터역할을 한다. 2. 개념에 대해 다른 사람들과 대화할 수 있는 언어로 작용한다. 개념적 데이터 모델링의 도구 : ERD(Entitiy Relationship Diagram) 왼쪽의 프로토타입을 오른쪽의 ERD로 나타낼 수 있다. ERD의 구성 ○ 정보 ▭ 그룹 - 연관된 정보들 ◇ 관계 - 정보 그룹 사이의 관계 ERD는 쉽게 표로 전환할 수 있다. 왼쪽의 시안의 구성을 보고 자료들을 어떤 표로 나타낼지 정해야 한다. 윗쪽 표 한 표 안에 모든 정보를 담는다. 한 눈에 보기 좋지만 중복되는 자료가 있을 수 있다. 표가 표 안에 있는 구조이다. 관계형 ..

DATABASE 2021.05.19

Javascript30 - day30 Whack A Mole Game

목표 두더지 잡기 게임 구현하기 -시작 버튼을 누르면 게임을 시작하고, 10초 후에 게임을 종료한다. -두더지가 무작위로 올라오고, 올라갔다 내려오는 시간도 무작위로 설정한다. -두더지를 클릭하면 title옆에 숫자가 바뀌고, 총 몇 마리를 잡았는지 알려준다. 어떻게 해야 할지 감이 안잡혀서 영상을 보며 같이 코드를 작성했다. 영상의 코드 만들어야 할 함수 -무작위 시간을 출력하는 함수 -두더지가 나올 구멍을 정하는 함수 (같은 곳을 연속으로 두번 선택하지 않도록 한다. 설정하지 않으면 클릭해도 새로운 두더지가 나와있어서 들어가지 않게된다.) -두더지가 나오게 하는 함수 -게임을 시작하는 함수 -클릭했을 때 두더지가 다시 들어가고, 점수를 올려주는 함수 - addEventListener로 연결 1 2 3..

Javascript 2021.05.11

Javascript30 - day29 Countdown Clock

목표 카운트다운 기능 구현하기 버튼 사용해 정해진 시간을 설정하거나, 맨 오른쪽의 input을 통해 내가 원하는 시간을 입력할 수도 있다. 내가 작성한 코드 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 const timeLeft = document.querySelector('.display__time-left'); const endTime = document.querySelector('.display__end-time'); const buttons = docume..

Javascript 2021.05.08

Javascript30 - day28 Video Speed Controller UI

목표 비디오 옆의 bar를 움직여 재생 속도 조절하기 내가 작성한 코드 1 2 3 4 5 6 7 8 9 10 11 const speed = document.querySelector('.speed'); const bar = speed.querySelector('.speed-bar'); const video = document.querySelector('.flex'); speed.addEventListener('mousemove', (e) => { e.preventDefault(); const height = e.offsetY bar.style.height = `${(e.offsetY / 400) * 100}%`; bar.innerHTML = `${(e.offsetY / 100).toFixed(1)}x`; ..

Javascript 2021.05.06

Javascript30 - day27 Click and Drag to Scroll

목표 마우스 클릭/드래그로 화면 내의 요소 움직이기 내가 작성한 코드 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 const items = document.querySelector('.items'); let coords = { left: 0, x: 0 } function clickItems() { items.classList.add('active'); coords = { left: items.scrollLeft, x: event.clientX } items.addEventListener('mousemove', dragItems); items.addEventListener('mouseup', leave..

Javascript 2021.05.04

2021.05 TIL

05.15 정보처리기사 필기시험 준비하면서 공부함 05.03 javascript30 - day 27 Click and Drag Scroll 공부 05.04 Javascript30 - day 27 Click and Drag Scroll 정리 joylee-developer.tistory.com/40 Javascript30 - day27 Click and Drag to Scroll 목표 마우스 클릭/드래그로 화면 내의 요소 움직이기 내가 작성한 코드 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 const items = document.querySelector('.item.. joylee-developer...

TIL 2021.05.03