목록분류 전체보기 (108)
헬창 개발자
미들웨어란? 미들웨어는 주춧돌처럼 중간 작업을 해주는 역할이다. 즉, 요청과 응답 사이에 express 자체에 있는 기능 외에 추가적인 기능을 넣어줄 수 있다. express 자체 미들웨어를 사용해도 되고 다른 사람이 만들어 놓은 미들웨어 npm을 통해 다운받아 사용해도 된다. 미들웨어 사용 메서드는 app.use(), app.set()이 있다. 둘의 차이점은 전자는 지역 후자는 전역으로 사용된다는 점이다. 코드를 보면서 이해해 보자 app.use() 미들웨어 메소드 const express = require('express'); const app = express(); app.get('/', function (req, res) { res.send('Hello World!'); }); const myLo..
1.1 express 설치와 사용 터미널을 열어 $ npm install express를 입력해주면 해당 프로젝트 폴더에 ‘node_modules’ 폴더가 생긴것을 확인 할 수 있다. 그리고 파일 수정할 때마다 서버를 종료하고 재실행해야만 변경사항이 반영되지만 nodemom을 사용하면 파일들을 감시하고 있다가 node.js 수정 시 자동으로 서버를 재시작해준다 $ npm install -D nodemon 이제 $ node 파일명 대신 $ npx nodemon 파일명을 입력해주면 중간에 파일을 수정하더라도 변경사항이 반영된다. express 사용법1 const express = require('express'); const app = express() app.get('/', (req, res) => { r..
1.1 npm 명령어 Node.js를 시작하기 위해서는 config(설정 파일)를 설정해줘야한다. npm 명령어를 이용하면 된다, npm 명령어는 Node.js를 시작하기 위한 초기화(init) 작업이자 package.josn을 만드는 명령어이다. 내가 만들 하나의 프로젝트에 들어 있는 여러 패키지 정보를 이 package.josn이라는 파일이 관리해주므로 반드시 처음 생성해줘야한다. npm init 명령어를 입력하면 pakage name을 입력하라는 표시가 보이게 된다. 원하는 이름을 입력하자 package name만 입력해주고 나머지는 enter로 넘어가고 마지작에 It this ok? 질문에 yes라고 입력해주자 다음은 초기화 작업에 필요한 설명이다. package name : 패키지 명입니다. v..
평소 Python, Java만 쓰다가 프로토타입 기반 언어인 자바스크립트를 사용하려고 하니 분명히 함수를 호출하고 나면 결과를 받아오고 나서 다음 줄의 코드를 순차적으로 실행해야하는데 순차적으로 동작하지 않는 것이다. 이 과정에서 벽을 느꼈다.... 그래서 먼저 동기/비동기 방식이 어떠한 메커니즘으로 웹 브라우저에서 작동하는지 살펴보겠다. 먼저 자바스크립트가 어떻게 동작하는지 큰 그림부터 알아보자 왼쪽은 크롬 브라우저에서 오른쪽은 Node.js 에서 자바스크립트가 작동하는 방식이다. 크롬 브라우저에서는 Web API를 통해 작동하고 Node.js에서는 libuv라는 C기반 라이브러리를 통해 동작을 한다. 이 부분부터가 어려운데 쉽게 생각하면 Node.js 이벤트 주도, 논 블로킹 방식을 지원하고 싱글 스..
학습 목표 서버 통신을 위한 자바스크립트 밑바닥을 숙지해보자!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! 1. 자바스크립트 기본 문법 변수 자바스크립트는 동적언어이기 때문에, 변수 타입을 미리 선언할 필요가 없다. 타입은 프로그램이 처리되는 과정에서 자동으로 파악한다. 프로그램이 파악한 데이터 타입을 확인 하려면 typeof를 통해 확인해야한다. ES6 이후로 var대신 const, let을 사용하는것을 추천한다. → 변수 호이스팅, function-level-scope문제 호이스팅 아직 값이 없음에도 오류가 나지 않는 현상을 말한다. 자바스크립트의 데이터 타입에는 숫자, 문자, boolen, undefin..
1. 웹 서버와 Node.js의 관계 1.1 클라이언트와 서버 클라이언트 : 사용자가 보는 컴퓨터 서버 : 웹 서비스 할 리소스가 저장되어 있는 컴퓨터 웹 서버 : 클라이언트에서 보내는 요청을 처리하고 적절한 결과를 보여주는 프로그램 1.2 웹 서버의 종류 Django : 기본적으로 제공하는 기능이 있어 편리하고 데이터 조작을 많이하는 서비스(*CRUD)를 만들 경우 좋은 선택지일 수 있다. *CRUD : 데이터의 처리의 기본 기능인 생성, 조회 수정, 삭제(Create, Read, Update, Delete) Spring : 안정적이고 정형화된 패턴이 있지만 자유도가 낮아 내가 특정한 어떤 기능을 만들고 싶은데 스프링으로만으로 만들지 못하는 상황이 있을 수도 있다. Node.js : 자유도가 높은 웹 ..
개요공모분야: 제품 및 서비스 개발서비스명: 장애인을 위한 관광지 및 체육시설 안내 서비스활용데이터: 문화 빅데이터 포털 장애인(복지관광) 관광객들을 위한 숙박/관광 정보(CSV) 장애인을 위한 체육시설 데이터(CSV) 추진 배경 및 필요성 구현 서비스 node.js, express를 이용하여 개발하였다. 후기평소 플라스크웹서버를 사용하다가 처음으로 express를 사용했는데 너무 어렵지만 백엔드가 내 취향인것 같다.그리고 이번에는 2인 개발로 참여했는데 2인 개발은 절대 하지마라 최소 3인 이상으로 협업하는게 좋다..
기존 프로젝트 : https://health-coding.tistory.com/19?category=984389 자바프로그래밍 텀 프로젝트 주제 설계 시연 https://www.youtube.com/watch?app=desktop&v=aT1hfK1rxiI 깃허브: https://github.com/gilgagun/Hello-World- health-coding.tistory.com 최종 산출물 https://www.youtube.com/watch?v=4ouI3VAkFVk&t=12s
EM 클러스터링: 이론과 실습1. EM 클러스터링이란?EM 클러스터링은 통계적 기법 중 하나로, 데이터의 숨겨진 구조를 찾기 위해 사용하는 알고리즘입니다. EM(Expectation-Maximization) 알고리즘은 데이터가 숨겨진 잠재 변수를 가지고 있을 때 그 변수들을 추정하고, 이를 통해 데이터의 클러스터를 식별합니다.2. 기본 개념Expectation (E-단계): 현재의 파라미터를 기반으로 데이터의 잠재 변수(또는 클러스터의 분포)를 추정합니다. 이 단계에서는 현재의 파라미터 추정을 사용하여 각 데이터 포인트가 각 클러스터에 속할 확률을 계산합니다.Maximization (M-단계): E-단계에서 계산된 확률을 사용하여 모델의 파라미터를 업데이트합니다. 즉, 데이터 포인트가 각 클러스터에 속할..