스파르타내일배움캠프
-
[TIL] 프로그래머스) 138476 - 귤 고르기 (Java)TIL-sparta 2024. 5. 18. 15:57
> 휴일 동안 프로그래머스의 '귤 고르기' 문제를 풀고 그 풀이를 적어 보았다. 학습 키워드: Java, HashMap, Collections, ArrayList 138476 - 귤 고르기1) 문제 설명 요약 (원문은 하단 링크 참고): - 요약. 과수원에서 귤 상자를 포장하는데, k 개의 귤을 포장하는 동안 귤의 크기의 다양성을 최소화했을 때 몇 가지 크기의 귤을 담게 되는지를 찾는 문제입니다. 각각의 귤의 크기는 tangerine 배열(TYPE: int[])에 무작위로 담겨 있습니다. - 조건: 1 1 2-1) 작성한 코드 및 풀이:더보기import java.util.HashMap;import java.util.Collections;import java.util.ArrayList;class..
-
[TIL] 스파르타) Ch.3 개인 과제 리뷰, Node 강의 수강TIL-sparta 2024. 5. 17. 19:29
> 과제 피드백 이후 버그 수정 및 강의 수강으로 새롭게 알게된 PM2 패키지를 설치하여 서버에 적용해보았다. 강사님 피드백 내용에서 Error 클래스에 대한 언급이 있었는데, 여러개의 클래스를 생성하는 대신 하나의 클래스에서 관리하는 방법을 강구해보라고 하셨다. DI를 적용하라는 말씀이신 것 같은데 당장은 어떤식으로 구현해야 깔끔하게 만들 수 있을지 구체적인 형태가 떠오르지 않아서 이 부분은 차근차근 고민해보도록 해야겠다. 학습 키워드: validation, pm2, sudo, npm, yarn 1. Validation / ReferenceError1) What is it?: 이번 과제에서 가장 부족했던 부분은 validation이었다고 생각하는데, 걸러주지 못 한 케이스들과 Joi schema 설정 ..
-
[TIL] 스파르타) Ch.3 개인 과제 배포 (AWS EC2)TIL-sparta 2024. 5. 16. 21:32
> AWS EC2 서버에 Node.js 프로젝트 서버를 배포하는 과정에서 배운 것들을 정리해보았다. 학습 키워드: aws ec2, node js, git, deploy, ssh, scp 1. AWS EC2 서버 세팅하기1) What is it?: 프로젝트의 필수 작업들을 마치고 요구 사항에 맞춰 AWS EC2 서버에 node 앱을 배포하는 과정을 거쳤다. 예전 프로젝트는 배포를 직접 하지는 않았고, 작은 건은 어지간하면 Github Pages를 이용했기 때문에 간단하게 해결했었다. 그러나 이번에는 처음으로 혼자 외부 linux 서버에 bash를 통해서 배포 해봤는데 생각보다 복잡해서 시간이 오래걸렸다. 2) Basic settings: AWS 회원 가입을 마치고 환경 설정에서 서버 지역을 알맞게 수정해준..
-
[TIL] 스파르타) Ch.3 개인 과제 - 3일 차 (Joi, git commit --amend)TIL-sparta 2024. 5. 15. 22:01
> 휴일이지만 할 일이 없어서 만들어둔 프로젝트 스크립트들을 손보고 기능을 추가해봤다. 발생했던 문제와 새롭게 배운 것들을 정리해보았다. 학습 키워드: javascript, Node.js, Joi, express, MongoDB, mongoose, pre, git, amend 1. Joi1) What is it?: JS에서 여러가지 데이터 validation을 자체 schema를 통해 직관적으로 수행할 수 있도록 도와주는 라이브러리다. 2) Before applying (regex): 앞서 언급했듯이 직관적인 validation을 수행할 수 있도록 하는게 목적이라서 방식이 상당히 간단하다. 프로젝트에 적용하기 전과 후의 스크립트를 비교하며 알아보자.// items-validator.middleware.j..
-
[TIL] 스파르타) Chapter 3 개인 과제 진행 - 2 일차, git rebaseTIL-sparta 2024. 5. 14. 21:15
> 스파르타 Chapter 3 아이템 시뮬레이터 서버 개발 과제를 진행하면서 발생한 문제 및 git rebase에 대해 새롭게 알게된 사실 등을 정리해보았다. 학습 키워드: Node.js, express, javascript, regex, MongoDB, mongoose, populate, git, rebase 1. Mongoose populate, ref, $in1) What is it?: MongoDB의 ODM(Object-Document Mapper)인 mongoose에서 지원하는 기능으로, document의 field 중 ref 값에 적힌 collection 이름을 통해 해당 document를 불러와 채우는 기능이다. 이 기능을 모른 채로 스크립트를 우선 작성했는데, 적용 전 후로 어떻게 달라지는..
-
강의 과제) 서버와 클라이언트, 웹 앱 서버와 게임 서버의 차이Random Notes 2024. 5. 14. 10:24
> 240513 일자 게임 서버 강의 과제입니다. 클라이언트서버 - 서비스의 요청자 - 서비스를 이용하는 유저의 단말기를 의미한다. - 서버 간의 통신에서 요청자에 해당하는 서버 또한 클라이언트가 될 수 있다. - 서비스의 제공자 - 서비스를 제공하는 프로그램 혹은 장치를 의미한다. - 서버 전용 OS가 있기도 하지만, 서버 프로그램을 실행하는 개인 PC 또한 서버가 될 수 있다. 웹 서버게임 서버 - 요청(Request)발생에 따라 응답(Response)하는 방식 - 요청 시에 연결하고 응답을 완료하면 연결 종료 - HTTP/HTTPS 프로토콜 사용 - 클라이언트의 요청이 없으면 서버는 정보를 전달할 수 없는 단방향 통신 구조 - 대체로 실시간 통신이 요구됨 (연결 지속) - 요청에 대한 응답을 ..