일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- 제로베이스
- BFS
- npm
- 개발자
- 자료구조
- Spring
- maven
- 자바스크립트
- 백엔드공부
- OAuth
- 탐색알고리즘
- 시급합니다
- Node.js
- webServlet
- 교육철학과 교육사
- JavaScript
- 내돈내산
- OpenAPI프로젝트
- 백엔드스쿨
- 백엔드
- 전화영어
- 최단경로문제
- 프로젝트진행
- 탄력근무
- 그래프탐색
- Queue
- java
- array
- 원격근무
- YBM전화영어
- Today
- Total
목록개발 (58)
개발자취
1. 프로젝트 설계 협업을 통한 프로젝트가 진행됨에 따라 프로젝트 내에 크고 작은 버그가 발생될 수 있다. 이때 발생된 버그 이슈는 프로젝트 리포지토리 ISSUE 탭에 남겨 이를 협업하는 개발자들과 공유하곤 한다. 그런데 이와 관련하여 로컬에서 원격 리포지토리에 접근하여 버그 및 기타 논의거리에 접근할 수 있게 된다면 보다 편리하게 개발할 수 있을 것이라 생각한다. 따라서 본 토이 프로젝트를 통해 로컬에서 접근 가능한 GITHUB 관리 CLI를 만들 것이다. 1.1 프로젝트 개요 본 프로젝트에서는 다음과 같은 메커니즘으로 프로젝트를 진행할 것이다. 원격 리포지토리에 직접 접근을 할 수 있도록 github token을 발급 받아 'octokit'을 통해 'commander'로 접근할 수 있는 환경을 만든다..
1. 프로젝트 설계 본 프로젝트는 키워드로 검색하여 나온 이미지를 원하는 사이즈로 리사이징해서 돌려주는 서버를 구현하는 것이다. 1.1 프로젝트 개요 본 프로젝트 구현에 앞서, /*개발을 수월하게 하기 위해*/ 이미지를 자유롭게 불러오는 웹 서비스가 필요하다. 따라서 본 프로젝트는 unsplash.com의 api를 통해 이미지 소스를 불러올 수 있도록 세팅하였다. 그리고 이미지 리사이징을 구현하기 위해 node의 sharp 패키지를 사용하였다. 본 패키지를 선택한 이유는 /*강의 영상에서 선택한 탓이 가장 크지만, */ 코어 부분이 c++로 짜여있어 이미지 리사이징, 포맷 컨버팅과 같은 동작을 훨씬 빠르게 하기 때문이다. 1.2 Frontend UI 디자인 서버만 구현하므로 frontend ui 디자인은..
1. 프로젝트 설계 1.1 요구사항 설정 - 실시간 채팅 서비스를 간단한 형태로 제작 - 인증처리는 없음 - 채팅 내역은 데이터베이스에 저장하고, 이를 활용할 수 있도록 함. 1.2 Frontend UI 디자인 채팅 내역은 polling(폴링) 형태로 처리하지 않고, 실시간으로 채팅내역을 저장할 수 있는 구조로 한다. *폴링 : 실시간으로 장치 또는 프로그램의 처리상태를 주기적으로 체크하는 자료처리방식 Pug : Template engine TailwindCss : css framework 1.3 Backend Web Socket : 서버-클라이언트가 실시간으로 정보를 주고받을 수 있는 통신 프로토콜(웹 표준에 의하면 2015년부터 완벽하게 사용하게 되었음, 모든 브라우저에서 지원하지 않았을 때는 soc..
1. 자동화 테스트 모듈 사용의 목적 프로젝트에 다양한 기능이 추가되고 복잡해지면서 매번 작성하는 코드 시나리오를 하나씩 테스트 하는 것은 비용면에서 굉장히 비효율적이라 할 수 있다. 이러한 상황에서 리팩토링까지 하게 된다면, 아마도 작성해놓은 코드를 하나씩 검증하며 짜야하는 수고가 필요할 것이다. 이러한 이유로 테스트를 자동화하는 도구가 필요하고, 이때 사용하는 테스트 기법으로는 유닛 테스트(unit test), 통합 테스트(integration test)가 있다. 1.1 유닛 테스트(unit test) 유닛 테스트(unit test)는 소스 코드의 특정 모듈이 의도된 대로 정확히 작동하는지 검증하는 절차로 모든 함수와 메소드에 대한 테스트 케이스(test case)를 작성하는 과정을 말한다. http..
1. REST(Representational State Transfer) 1.1 REST 정의 REST는 효율적, 안정적이며 확장가능한 분산시스템을 가져올 수 있는 소프트웨어 아키텍처 디자인 제약의 모음이다. dev-린이인 내가 이해하기에는 위 정의가 조금 버거워서, 쉽게 풀어보고자 한다. REST한 방식으로 분산 시스템을 가져오면 좀 더 효율적이고 안정적이다. 그러한 방식으로 만들기 위해서는 소프트웨어 아키텍처 디자인 제약이 필요하다. 고로 REST는 좀 더 안정적인 시스템을 구축하기 위해 만들어놓은 Rule을 잘 지켰는지를 판단하는 아키텍처 스타일이다. REST한 형태로 만들어진 시스템은 좀 더 강조한 표현으로 RESTful하다고 할 수 있다. REST Web 1.2 REST를 구성하는 것 자원(RE..
Express Node.js를 위한 web framework의 일종, Express 미들웨어를 기반으로 한 웹 애플리케이션 구축, 에러 핸들링, static file serving 등을 처리함. 웹 애플리케이션을 유연하게 만들 수 있다. Express - Node.js 웹 애플리케이션 프레임워크 Node.js를 위한 빠르고 개방적인 간결한 웹 프레임워크 $ npm install express --save expressjs.com 미들웨어 미들웨어는 express가 실행되면서 하나의 request가 실행될 때 거치는 모든 함수를 의미한다. 다시 말해, 요청 오브젝트(req), 응답 오브젝트 (res), 그리고 애플리케이션의 요청-응답 주기 중 그 다음의 미들웨어 함수 대한 액세스 권한을 갖는 함수를 의미한..
보호되어 있는 글입니다.
보호되어 있는 글입니다.
보호되어 있는 글입니다.
1. 모듈(Module) 1.1 모듈 사용의 목적 다목적으로 js 파일의 코드를 작성하면 유지보수 측면에서 좋을 수 없다. 따라서 하나의 js 파일이 하나의 목적을 갖도록 소스코드를 작성한다. (컨벤션) 그러므로 소스코드의 분리를 모듈로 정의하여 사용하는 것이다. 1.2 모듈 (module) 노드에서는 각 파일 하나하나가 모듈이다. 모듈을 가져올 때, commonJS 방식으로는 require 메서드로 가져오고, ECMAScript 방식으로는 export, import로 가져온다. .mjs의 확장자를 사용하여 모듈로 만들 수 있다. *이때 .mjs 파일 내에서는 모듈로 불러오는 파일의 확장자를 필히 써줄것. 1.3 모듈 해석 (module resolution) 예) CommonJS : require 절대경..