# Keep- 모각코 코어타임 지켰습니다.- 정말 포기하고 싶었지만 포기하지 않고 어찌저찌 했습니다. # Problem1. 모닝루틴이 깨졌습니다.해결하겠다고 새벽 3시에 잤는데 그이후로 루틴을 복구하는게 힘들었습니다. 다행히 20일날 되찾았네요.다시 새벽5-6시 기상으로 퇴근후 과제를 진행할 수 있는 시간을 확보하여 개발루틴과 모닝루틴이 병행하도록 하겠습니다. 2. 문제해결에 대한 방향이 잡히지 않아서 급하게 과제를 해결한 경우가 있었습니다. 3. PR커밋로그가 너무 많았고 가독성이 좋지 않은편입니다. 4. 리드미문서- 쓰는사람인 '나'를 목적으로 했습니다. 읽는사람을 신경쓰지 않고 리드미를 작성했습니다. 과제 제출을 목적으로 했습니다.- 변명이지만, 정말 시간이 야속하게 흘러가고 생각만하다가 멈춘경우가..

웹소켓(web socket) 이 무엇일까?웹 소켓 프로토콜은 HTTP 와 다른 방식의 통신 프로토콜로 웹서버와 웹브라우저가 서로 실시간 메시지를 교환하는데 사용된다.웹소켓 연결을 맺기위해서 첫번째 handshake 를 주고받은 이후 지속적으로 연결이 유지되는 것이 특징이다.매번 메시지 전송시에 새롭게 연결을 맺을 필요가 없어서 빠르고 효율적이다.handshake 를 위해서 HTTP 프로토콜에 의존하는 애플리케이션 계층의 프로토콜에 불과하며, 자체적인 암호화나 보안장치를 지원하지 않는다.웹소켓과 HTTP 의 차이점은? 1) HTTP모든 HTTP를 사용한 통신은 클라이언트가 먼저 요청을 보내고, 그 요청에 따라서 웹서버가 응답하는 형태이며, 웹서버는 응답을 보낸 후 웹 브라우저와의 연결을 끊는다.양쪽이 데이..

현재파일이 있는 디렉토리의 절대경로를 반환한다. __dirname : Node.js에서 현재 실행중인 파일의 디렉토리의 절대경로를 나타내는 환경변수. path.join() : 주어진 경로를 하나의 경로로 연결하는 함수 예를 들면, 현재 파일이 /home/user/myapp/src/index.js 에 있는 경우 path.join(__dirname) 은 /home/user/myapp/src 을 반환한다. path.join(__dirname) 언제 사용하나요? 현재파일이 있는 디렉토리에 있는 파일이나 디렉토리에 액세스를 해야하는 경우 현재 파일이 있는 디렉토리의 절대경로를 얻어야하는 경우

학습차원으로 "클린아키텍쳐" 도서를 읽고 정리한 글입니다. ISP: 인터페이스 분리법칙 (문제사항) 다수의 사용자가 OPS클래스의 오퍼레이션을 사용한다. User1은 오직 op1을, User2는 op2만을, User3는 op3만을 사용한다고 가정한다. OPS 가 정적타입언어로 작성된 클래스라고 해보자 이경우 User1에서는 op2와 op3를 전혀 사용하지 않음에도 User1의 소스코드는 이 두 메소드에 의존하게된다. 이러한 의존성에 의해 OPS클래스에서 op2의 소스코드가 변경되면 User1도 다시 컴파일한 후 새로 배포해야한다. 사실 User1과 관련된 코드는 전혀 변경되지 않았음에도 말이다. 이러한 문제는 오퍼레이션을 인터페이스 단위로 분리하여 해결할 수 있다. User1의 소스코드는 U1Ops와 o..

학습차원으로 "클린아키텍쳐" 도서를 읽고 정리한 글입니다. SRP: 단일 책임 원칙 단일 모듈은 변경의 이유가 하나, 오직 하나뿐이어야한다. 하나의 모듈은 하나의, 오직 하나의 액터(actor)에 대해서만 책임져야한다. SRP가 말하는 “변경의 이유”란 바로 이들 사용자와 이해관계자를 가리킨다. 소프트웨어 시스템은 사용자와 이해관계자를 만족시키기 위해 변경된다. actor은 사용자/이해관계자 집단을 의미한다. 클래스는 하나의 유효범위가 되며, 유효범위 바깥에서는 private 멤버가 있는지를 전혀 알 수 없다. 단일 책임원칙은 메소드와 클래스 수준의 원칙이다. OCP: 개방-폐쇄 원칙 소프트웨어 개체(artifact)는 확장에는 열려있어야하고, 변경에는 닫혀있어야한다. 소프트웨어 개체의 행위는 확장할 수..

학습차원으로 "클린아키텍쳐" 도서를 읽고 정리한 글입니다. 좋은 소프트웨어 시스템은 깔끔한 코드로부터 시작한다. 좋은 벽돌을 사용하더라도 빌딩의 아키텍쳐를 엉망으로 만들 수 있다. 좋은 벽돌로 좋은 아키텍쳐를 정의하는 원칙이 필요한데, 그게 바로 SOLID다. SOLID S - SRP(Single Responsibility Principle): 단일책임법칙 소프트웨어 시스템이 가질 수 있는 최적의 구조는 시스템을 만드는 조직의 사회적 구조에 커다란 영향을 받는다. 각 소프트웨어 모듈은 변경의 이유가 하나, 단 하나여야만 한다. O - OCP(Open-Closed Principle): 개방-폐쇄 원칙 기존코드를 수정하기 보다는 반드시 새로운 코드를 추가하는 방식 시스템의 행위를 변경할 수 있도록 설계해야만..

구현 목표 (구현완료) PR 리뷰요청 이벤트가 발생하면, 슬랙채널에 알림을 보낸다. (아직 진행중) PR 완료후 develop 브랜치에 merge가 완료되면 슬랙채널에 알림을 보낸다. [방법1] 깃헙봇으로 Repository 에서 이벤트 발생할때 알림 메시지 보내기 1. Slack 워크스페이스와 깃헙봇 연동하기 앱 > Github > 관리 > 앱 찾아보기 앱 홈페이지 버튼 클릭 2. 내가 소식받고 싶은 채널에 깃헙봇을 구독하기 앱 > Github 클릭 > 좌측상단 Github 클릭 깃헙 이벤트가 발생하면, 알림을 받는 채널 선택하기 원하는 래포지토리 구독하기 [구독래포지토리명] 팀 내의 래포지토리를 구독할때: [팀명]/[래포지토리명] 개인 래포지토리를 구독할때: [개인깃헙닉네임]/[래포지토리명] 필자의 ..

Javascript Array 내장함수 활용하기 Array.prototype.find() ⇒ 조건에맞는 원소중 맨첫번째거를 리턴함 const array = [ 5, 12, 8, 130, 44, 11 ]; const found = array.find( e => e > 10 ); // 12 console.log(found); // 12 Array.prototype.find() - JavaScript | MDN Array.prototype.find() - JavaScript | MDN find() 메서드는 주어진 판별 함수를 만족하는 첫 번째 요소의 값을 반환합니다. 그런 요소가 없다면 undefined를 반환합니다. developer.mozilla.org Array.prototype.includes() 배열..
- Total
- Today
- Yesterday
- jest
- RDBMS
- 스마트폰중독
- gem
- 습관개선
- git
- IT용어
- nestjs jest
- TDD
- 디지털디톡스
- Jekyll
- 한달어스
- node.js
- MySQL
- nestjs
- TypeScript
- vscode
- 나도 할 수 있다
- 미완
- OS
- 개발용어
- 바이트디그리
- MongoDB
- Nest.js
- 한달독서
- 클린아키텍쳐
- Mongoose
- typeORM
- 참고
- 갓생살자
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |