2024/11 15

11/28

오늘 한 일 어느새 한달 가량 지났다...그동안 나는 뭘 했나...  아이템 시뮬레이터 과제를 했다. 그동안 강의를 잘 안들어서 많이 밀려있었다. 급하게 듣고 과제를 따라가느라 중간중간 비는 부분도 있다...  그래도 일단 과제 필수 구현 과제는 모두 완성했다. 내일 여유가 되면 도전 과제도 해보려고 한다... README.md 내용이다.자바스크립트로 웹서버를 만들고 mySql과 통신하는 과정을 연습하는 프로젝트입니다.- express를 사용해 서버 구현- router를 사용해 서버 api 구현- 쿠키 기능 구현- 쿠키를 jwt로 암호화 및 복호화- 민감한 내용을 .env파일에 은닉- 민감한 내용을 bcrypt로 암호화 및 복호화- 쿠키를 통해 로그인 세션 유지- prisma를 사용해 mySql 스키마 ..

일기 2024.11.29

11/22

오늘 한 일1. MongoDB 데이터베이스는 전자적으로 저장되고 체계적인 데이터 모음이다. 여기에는 단어, 숫자, 이미지, 비디오 및 파일을 포함한 모든 유형의 데이터가 포함될 수 있다. DBMS(데이터베이스 관리 시스템)라는 소프트웨어를 사용하여 데이터를 저장, 검색 및 편집할 수 있다. 컴퓨터 시스템에서 데이터베이스라는 단어는 모든 DBMS, 데이터베이스 시스템 또는 데이터베이스와 관련된 응용 프로그램을 나타낼 수 이싿.  고성능 데이터베이스는 모든 조직에 매우 중요하다. 데이터베이스는 회사의 내부 운영을 지원하고 고객 및 공급업체와의 상호작용을 저장한다. 또한 관리 정보와 엔지니어링 또는 경제 모델과 같은 보다 전문화된 데이터를 보유하고 있다. 다음은 데이터베이스가 필수적인 몇 가지 이유이다.효율적..

일기 2024.11.23

11/21

오늘 한 일코딩테스트 연습숫자 문자열과 영단어문자열 내 마음대로 정렬하기1. HTTP 메시지 HTTP 메시지는 서버와 클라이언트 간에 데이터가 교환되는 방식이다. 메시지 타입은 두 가지가 있다. 요청(request)은 클라이언트가 서버로 전달해서 서버의 액션이 일어나게끔 하는 메시지고, 응답(response)은 요청에 대한 서버의 답변이다.  HTTP 메시지는 ascii로 인코딩된 텍스트 정보이며, 여러 줄로 되어있다. HTTP 프로토콜 초기 버전과 HTTP/1.1에서는, 클라이언트와 서버 사이의 연결을 통해 공개적으로 전달되었습니다. 이렇게 한 때 사람이 읽을 수 있었던 메시지는 HTTP/2에서는 최적화와 성능 향상을 위해 HTTP 프레임으로 나누어진다.  웹 개발자 또는 웹 마스터가 손수 HTTP 메..

일기 2024.11.21

11/20

오늘 배운 것코딩테스트 연습삼총사크기가 작은 부분최소직사각형시저 암호 -> 자바스크립트에서 아스키코드로 문자 다루는법 charCodeAt()1. Express.js로 백엔드 서버 구현하기yarn 패키지 매니저를 사용해서 프로젝트 시작yarn init -yES6 모듈을 사용하기 위해 package.json에 "type": "module" 추가하기yarn을 통해 Express.js 설치하기yarn add express파일을 생성하고 예제에 있는 코드 그대로 쓰기// app.jsimport express from 'express';const app = express();const PORT = 3000;app.get('/', (req, res) => { res.send('Hello World!');});app..

일기 2024.11.20

11/19

오늘 한 일코딩테스트 연습최대공약수와 최소공배수3진법 뒤집기이상한 문자 만들기1. Node.js Node.js는 개발자들이 JavaScript로 모든 종류의 서버사이드 툴과 어플리케이션을 만들 수 있도록 하는 오픈소스, 크로스 플랫폼 런타임 환경이다. 이 런타임은 브라우저 컨텍스트 외부에서(컴퓨터 서버 또는 서버 OS에서 직접 실행) 사용하기 위함이다. 따라서 이 환경은 브라우저별 JavaScript API를 생략하고 HTTP 및 파일 시스템 라이브러리를 포함한 기존 OS API에 대한 지원을 추가한다. 웹 서버 개발 관점에서 Node에는 여러가지 이점이 있다.훌륭한 성능 : Node는 웹 어플리케이션의 처리량과 확장성을 최적화하도록 설계되었으며, 많은 일반적인 웹 개발 문제에 적합한 솔루션이다.전통적인..

일기 2024.11.19

11/18

오늘 한 일 코딩 테스트 연습부족한 금액 계산하기문자열 다루기 기본행렬의 덧셈직사각형 별찍기process.stdin.on('data', (data) => {}) // stdio입출력 처리 메서드node.js 배경지식 익히기1. 웹과 HTTP의 동작 방식웹브라우저: HTML, css, JavaScript 파일을 처리해 웹페이지로 보여주는 프로그램주소를 입력하면 서버로부터 웹페이지 표시에 필요한 파일들을 받아 처리한다URL(Unirofm Resource Locator)웹에서 고유 리소스의 주소URL은 스키마, 권한(도메인 이름, 포트), 리소스 경로, 매개변수, 앵커로 구성된다스키마 : URL의 첫 번째 부분은 브라우저가 리소스를 요청하는 데 사용해야 하는 프로토콜을 나타낸다권한 : 권한은 문자 패턴 ://..

일기 2024.11.18

11/14

오늘 한 일 CLI 로그라이크 게임 만들기 1. 플레이어 클래스-플레이어의 스테이터스 정의, 공격 기능 구현-> 체력, 공격력, 방어력, 회심 확률, 이탈 확률-> 일정 확률로 회심의 일격, 최소 피해와 최대 피해 사이에서 무작위 피해 발생 2. 몬스터 클래스-몬스터의 스테이터스 정의, 공격 기능 구현, 레벨업 기능 구현-> 체력, 공격력, 방어력-> 레벨이 오를때마다 무작위 스테이터스 상승 3. 메인 루프-플레이어 강화 -> 전투 -> 결과 확인-플레이어의 레벨이 오르면 강화 포인트를 얻는다-강화 포인트를 사용해서 체력, 공격력, 방어력 중에 하나를 선택해서 강화-전투시 명령은 공격하기와 도망치기가 있다-공격시 플레이어가 몬스터를 공격한다-도망시 50% 확률로 도망친다-전투에서 도망치면 경험치 1을 얻..

일기 2024.11.14

11/13

오늘 한 일 자바스크립트로 CLI 로그라이크 게임만들기를 했다. 스켈레톤 코드는 주어졌기 때문에 세부 기능만 구현하면 된다. 나의 기획은 1. 게임은 플레이어가 죽을때까지 진행한다.2. 게임은 상점 -> 전투를 반복한다.3. 상점에서는 레벨업을 통해 얻은 스탯 포인트를 투자해 플레이어를 강화할 수 있다.4. 몬스터를 처치하면 점수를 얻고, 게임이 끝났을 때 얻은 점수를 기록한다.  현재까지 진행된 사항1. 플레이어와 몬스터의 스탯, 공격 기능 => 전투는 진행된다2. 게임 진행을 위한 UI => UI는 할게 워낙 많고 디테일을 잡으려면 끝도 없어서 좀 오래 했다...내일은 UI디테일은 조금 생략하고 상점 기능부터 손대야겠다

일기 2024.11.13

11/11

오늘 배운 것 1. DOM-Document Object Modeling-HTML파일을 js로 알 수 있게 한 것 2. Class-js에서 객체지향적인 클래스 문법은 es6에서 도입됐다(2015년)-생성자: js에서 생성자는 constructor로 이름이 고정돼있는듯?-따로 멤버 변수를 설정하지 않고, 생성자에서 this.~~으로 정의한다(너무 신기)-Getter와 Setter: C#의 get, set 프로퍼티와 비슷한 것-get ~~ (){}, set ~~ (){}-상속: extends 키워드로 상속한다-super 키워드로 부모 클래스에 접근할 수 있다-static 키워드 3. 클로저-이게 좀 어려웠다- A closure is the combination of a function and the lexic..

일기 2024.11.11