본문 바로가기

728x90
반응형
Develop/백엔드 & 서버
728x90
반응형
11

클로저- 콜백을 구현하는 이상적인 구조 자바스크립트를 공부하다 보면 흔히 접할 수 있는 단어 중 하나인 클로저! 콜백을 공부하다보면 접할 수도 있고, 전반적인 프로그래밍 언어를 공부할 때 등장하는 개념이기도 하다. 이 글은 mdn 클로저 문서를 보고 공부하며 적은 글입니다 ㅎㅎ.. 클로저 클로저란 함수와 함수가 선언된 어휘적 환경(Lexical scoping)의 조합이다. MDN 에서는 이렇게 클로저를 정의하고 있다. 그렇다면 어휘적 환경, Lexical scoping 은 뭘까? 쉽게 말하면 변수들의 범위를 어휘적으로 지정하겠다는 말이다. 즉 지역변수의 스코프(범위)를 어디에 선언했는지에 따라 결정하는 것. 예제를 보자. function init() { var name = "구운밤"; function displayName() { console.. 2021. 1. 27.
Javascript는 비동기를 어떻게 처리해 - async await 시리즈 목차 이 글은 시리즈 글입니다. 이번 글에서는 자바스크립트에서 비동기 작업을 더 쉽게 다룰 수 있는 방식인 async await 에 대해 알아볼 것입니다. 기본적으로 자바스크립트가 비동기로 동작하지 않는다는 사실과 비동기룰 다루던 첫 형태인 콜백함수, 그 콜백 함수를 더 쉽게 다루기 위해 등장한 프로미스는 저번 글에서 다루었습니다! 자바스크립트가 비동기함수를 어떻게 처리하는지 동작 원리를 모르시는 분과 콜백함수, 프로미스가 뭔지 잘 모르겠다 하시는 분들은 이전 글을 참고해보세요! Javascript는 비동기를 어떻게 처리해 - 동작 원리 Javascript는 비동기를 어떻게 처리해 - 콜백 함수 Javascript는 비동기를 어떻게 처리해 - 프로미스 Javascript는 비동기를 어떻게 처리해 .. 2021. 1. 22.
Javascript는 비동기 함수를 어떻게 처리해 - 프로미스 시리즈 목차 이 글은 시리즈 글입니다. 이번 글에서는 자바스크립트에서 비동기 작업을 더 쉽게 다룰 수 있는 방식인 Promise에 대해 알아볼 것입니다. 기본적으로 자바스크립트가 비동기로 동작하지 않는다는 사실과 비동기룰 다루던 첫 형태인 콜백함수는 저번 글에서 다루었습니다! 자바스크립트가 비동기함수를 어떻게 처리하는지 동작 원리를 모르시는 분과 콜백함수가 뭔지 잘 모르겠다 하시는 분들은 이전 글을 참고해보세요! Javascript는 비동기를 어떻게 처리해 - 동작 원리 Javascript는 비동기를 어떻게 처리해 - 콜백 함수 Javascript는 비동기를 어떻게 처리해 - 프로미스 Javascript는 비동기를 어떻게 처리해 - async await Promise 프로미스가 뭘까요? 프로미스는 약속을.. 2021. 1. 20.
Javascript는 비동기를 어떻게 처리해 - 콜백함수 시리즈 목차 이 글은 시리즈 글입니다. 이번 글에서는 자바스크립트에서 처음으로 비동기 작업을 다뤘던 방식인 콜백함수에 대해 알아볼 것입니다. 기본적으로 자바스크립트가 비동기로 동작하지 않는다는 사실은 저번 글에서 다루었죠! 자바스크립트가 비동기함수를 어떻게 처리하는지 동작 원리를 모르시는 분들은 이전 글을 참고해보세요! Javascript는 비동기를 어떻게 처리해 - 동작 원리 Javascript는 비동기를 어떻게 처리해 - 콜백 함수 Javascript는 비동기를 어떻게 처리해 - 프로미스 Javascript는 비동기를 어떻게 처리해 - async await 콜백함수 예제 자바스크립트를 비동기 처리하기 위해 제일 처음으로 등장했던 방식은 콜백함수를 이용해 처리하는 것이었습니다. 요즘은 이 방식을 잘 사.. 2021. 1. 20.
Javascript는 비동기를 어떻게 처리해 - 동작 원리 시리즈 목차 자바스크립트는 비동기 작업을 할 수 있다! 정도로 보통 알고 있죠. 이러면 안됩니다. 저 또한 이 과정을 모른 채 그냥 코딩만 해왔었는데 이젠 하나하나 공부해보려 합니다. 프로미스가 뭔지, async await가 뭔지 궁금해하고, 위의 내부과정을 알고싶어해야 했죠. 이를 알고 싶다면 먼저 자바스크립트에 대해 알아야 합니다. 이번 글에서는 자바스크립트가 비동기를 어떻게 처리하는지 그 원리에 대해 알아보고, 이후 글에서 프로미스, async await, fetch에 대해 비교하고 글을 수정해볼게요. Javascript는 비동기를 어떻게 처리해 - 동작 원리 Javascript는 비동기를 어떻게 처리해 - 콜백 함수 Javascript는 비동기를 어떻게 처리해 - 프로미스 Javascript는 비.. 2021. 1. 19.
CORS 이슈 해결하기 cors는 cross origin resource sharing의 약자로 개발할 때 많이 발생하는 이슈 중 하나입니다. 특히 최근에는 서버와 프론트의 ip 주소가 달라 이런 경우가 더 많이 발생하고 있는데, 이 이슈는 브라우저에서 요청 못하게 막는 거여서 제대로 해결하려면 어려운 부분이죠. cors가 뭔지 먼저 알아봅시다. CORS의 의미 cors에서 말하는 origin은 url에서 프로토콜(https) + 호스트(www.naver.com) + path(/users) + 쿼리(?sort=asc&page=1) + fragment(#foo)로 이루어진 부분을 말한다. 여기에 포트번호가 있다면 포트번호까지 합친 것이 origin 이고 포트번호가 없다면 기본포트인 80을 사용한다는 의미입니다. 여기서 포트번호까.. 2021. 1. 18.
GET, POST 메소드 차이점 개발을 하다보면 API를 많이 접할 수 밖에 없다. FE든, BE든.. 그냥 Restful API 대충 안다고 생각하고 개발만 했었는데 백엔드 인턴 면접 때 실제로 이렇게 물어보니까 답을 할 수가 없었다😂. 이런 공부는 어떻게 해야할까. 일단 이 질문에 답해보자. GET은 가져오는 것이고 POST는 수행하는 것이다. 즉 get은 select문과 비슷하고, post 는 데이터베이스에 뭔가 값을 저장하던가 확인할 때 사용한다. 자세한 차이는 아래 표에 비교해두었다. GET POST 히스토리 parameter가 URL 일부 => 브라우저 기록에 남음 parameter 브라우저에 저장 x 북마크 URL로 인코딩되므로 북마크 가능 요청 parameter가 req body 에 포함. 북마크 x parmeter 전송.. 2021. 1. 11.
3. Heroku 에 MySQL 생성 & async await [개발/백엔드 & 서버] - 2. Express, Heroku 라우팅 빌드해서 배포 2. Express, Heroku 라우팅 빌드해서 배포 [개발/백엔드 & 서버] - 1. Heroku 에 Node Express 올리기 Heroku 에 Node Express 올리기 간단하게 Express 프레임 워크를 사용한 Node 백엔드 서버를 Heroku 서비스에 올려보도록 하겠습니다. Heroku는 aws처럼.. donologue.tistory.com 연재물입니다. 이전 부분이 궁금하시다면 위 게시물을 읽고 와주세요! 저번 시간에는 간단한 라우팅으로 api 작성 후 빌드해서 배포하는 아주 간단한 예제를 해보았습니다. 이번에도 백엔드 구조 잡기라고 할 수 있는데요. DB 연결을 해서 Heroku 서버에서도 잘 연결.. 2020. 3. 1.
2. Express, Heroku 라우팅 빌드해서 배포 [개발/백엔드 & 서버] - 1. Heroku 에 Node Express 올리기 Heroku 에 Node Express 올리기 간단하게 Express 프레임 워크를 사용한 Node 백엔드 서버를 Heroku 서비스에 올려보도록 하겠습니다. Heroku는 aws처럼 물리서버 없이도 서버를 구동시켜주는 좋은 서비스에요! 무료로 사용할 수 있는 서버의 범.. donologue.tistory.com Heroku 설정을 안 보신 분들은 먼저 위의 이전 연재물을 보고 와주세요. Heroku를 사용하면 더 간단하고 무료로 서버를 배포할 수 있게 도와줍니다. 라우팅 이번 편에서는 간단히 api 라우팅을 하는 것만 알아보도록 하겠습니다. MySQL 연동하는 것까지 이번 화에서 올리려고 했더니 너무 길어질 것 같아서 다음.. 2020. 2. 27.
1. Heroku 에 Node Express 올리기 간단하게 Express 프레임 워크를 사용한 Node 백엔드 서버를 Heroku 서비스에 올려보도록 하겠습니다. Heroku는 aws처럼 물리서버 없이도 서버를 구동시켜주는 좋은 서비스에요! 무료로 사용할 수 있는 서버의 범위도 훨씬 넓구요. 하지만 url이 뒤에 herokuapp이 붙는다는 걸 생각해두셔야합니다. 간단한 서버 만들기 $ mkdir name $ cd name $ yarn init 먼저 폴더를 만든 후 yarn init 으로 package.json을 만듭니다. yarn init 필요한 필드만 입력하시고 엔터쳐서 넘어가셔도 됩니다. 이후 이이름 폴더 내에 .gitignore 파일을 만들어 node_modules를 미리 추가해두면 git에 업로드할 때 node_modules 내의 라이브러리들이.. 2020. 2. 26.