일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- scope
- graphql
- 변수
- 면접
- github
- Push
- Background
- NATIVE
- AWS
- EC2
- navigation
- 리액트
- 스코프
- 자바스크립트
- ubuntu
- Notification
- 후기
- 네비게이션
- 알림
- 디자인
- 네이티브
- 배포
- Express
- MongoDB
- JavaScript
- React
- JS
- 레이아웃
- Python
- 카카오
- Today
- Total
목록분류 전체보기 (69)
어서와, 개발은 처음이지?
지난 글에 이어 django 어플리케이션을 nginx, uwsgi를 사용하여 서비스 할 수 있도록 하겠습니다. 환경 구성에 대한 내용은 위키독스를 참고하였습니다. 0. uwsgi 테스트 가상환경에서 uwsgi를 설치하고 실행해보겠습니다. 우선 프로젝트 경로로 이동하여 가상환경을 활성화합니다. 가상환경에서 uwsgi를 설치합니다. (myvenv) > pip install uwsgi설치가 완료되면 uwsgi 명령어를 사용하여 프로젝트를 실행합니다. (myvenv) > uwsgi --http :8000 --home ~/app/django/firstproject/myvenv/ --chdir ~/app/django/firstproject/ --wsgi-file ~/app/django/firstproject/yud..
지난 글에 이어서 django 프로젝트를 생성하고 외부에서 접속하는 과정을 포스팅 하겠습니다. django 환경 구성에 관한 내용은 django girls의 튜토리얼을 참고합니다. 1. django 설치 pip로 django를 설치하기에 앞서 pip를 최신버전으로 업그레이드 해줍니다. > python3 -m pip install --upgrade pip다음은 프로젝트 경로를 생성하고 가상환경(virtual environments)을 만들어 줍니다. 나중에 node 프로젝트도 만들 예정이므로 경로를 나누어 줍니다. > mkdir -p ~/app/django/firstproject > cd ~/app/django/firstproject > python3 -m venv myvenv이어서 가상환경을 사용하여 d..
지난 글에 이어서 파이썬을 설치해보겠습니다. nginx와 uwsgi를 사용하여 django 서버에 접속할 수 있도록 하는 것이 목표입니다. 1. root 비밀번호 설정 우선 sudo 권한 작업을 위해 root 계정에 password를 부여하도록 합니다. 비밀번호를 설정하지 않으면 sudo 권한으로 명령을 입력했을 때 계속 비밀번호가 틀렸다고 나오게 됩니다. > sudo passwd root 2. python 버전 확인 이전까지의 리눅스 계열의 운영체제에는 python 2.7이 기본으로 구성되어있습니다. 파이썬을 설치하기 전에 현재 EC2에 파이썬이 설치 되어있는지 확인해봅니다. ubuntu에서는 /usr/bin에서 ls | grep python으로 확인할 수 있지만 간단하게 터미널에서 python --v..
EC2는 aws에서 1년간 무료로 이용할 수 있는 서버 환경으로 여러가지 장난을 치기 좋은 서비스입니다.트래픽, 자원 사용량이 일정량을 초과하면 추가 요금이 발생하지만, 상용 서비스를 EC2에 올리거나 공격을 받지 않는 이상 많아야 5천원 이하일 것 입니다. 써야할 글이 산더미지만 당분간은 이 aws을 웹 서버로 세팅하는 작업을 포스팅 해보겠습니다.(다시 게을러지지 말고 정신 차리자!) EC2를 생성하는 부분은 크게 어려운 부분이 없으므로 접속 방법부터 알아보겠습니다. - ssh로 EC2 접속하기 기본적으로 EC2 생성 시 아래와 같은 화면을 보게됩니다. 이 파일은 EC2에 접속할 때 사용되는 개인 키가 기록된 파일로, 안전한 저장소에 보관해두시고 모르는 사람에게 함부로 공유하여선 안됩니다. ssh에서 ..
이번 시간에는 GraphQL Schema의 기본적인 문법에 대해서 알아보겠습니다. 만약 GraphQL을 처음 접하신다면 먼저 이전 글(expressgraphql-시작하기)을 따라해보시고 읽어보시기 바랍니다. 1. 스칼라 타입(Scalar Types) 스키마에 사용할 수 있는 기본 자료형은 다음과 같습니다. 1. Int : 32비트 정수 2. Float : 실수 3. String : UTF-8 문자열 4. Boolean : true / false 5. ID : id 값임을 명시적으로 표현하기 위해 사용. 내부적으로는 String 형태와 동일 2. 객체 타입과 필드(Object types and Fields) 여러가지 스칼라 타입을 갖는 Field들을 하나 객체 형태로 묶을 수 있는데, 이를 객체 타입이라고..
이번 시간에는 GraphQL(express-graphql)과 MongoDB(mongoose)를 연결하여 graphiql로 쿼리를 날려보겠습니다. 이 글에 작성된 내용은 Github에서 확인할 수 있습니다. 1. 프로젝트 구조 . ├── app.js ├── business │ ├── dao.js │ ├── join.js │ └── test.js ├── graphql │ └── schema.js ├── mongoose │ ├── model.js │ └── schema │ ├── post.js │ └── user.js ├── package-lock.json └── package.json프로젝트 구조는 위와 같은 형태로 잡아봤습니다. 정형화 된 구조가 따로 없으므로 편하신대로 구현하셔도 좋습니다. 2. Mong..
몇년전 등장한 GraphQL은 RESTful API의 여러 단점들을 커버할 수 있는 것으로 잘 알려져있습니다. 하지만 불행히도 개념적인 내용은 검색만으로 쉽게 접할 수 있지만 사용법에 대한 내용은 찾아보기 쉽지 않습니다.(심지어 GraphQL의 공식 사이트에서도 구조와 스키마같은 기본 설명만 있을 뿐 명확한 사용법은 쉽게 찾아볼 수 없습니다.) 그래서 저도 GraphQL을 많이 다뤄보지 않았지만, GraphQL을 처음 시작하시는 분들에게 조금이나마 가이드가 되기를 바라며 기본적인 사용법에 대해 작성하겠습니다. 이 글에 작성된 내용은 Github에서 확인할 수 있습니다. 1. 설치 GraphQL을 독립적으로 사용할 수도 있지만 express-graphql이라는 미들웨어를 사용하면 Express.js에 쉽게..
자바스크립트의 문법에 대한 글을 검색하면 대부분 let, const 혹은 화살 함수(arrow function)에 대한 이야기가 주를 이룹니다. 이번 시간에는 흔히 알려지지 않았지만 유용한 비구조화 할당 문법을 소개하고자 합니다. 정의 모질라 형님들의 문서에 의하면 '비구조화 할당(destructuring assignment) 구문은 배열이나 객체의 속성을 해체하여 그 값을 개별 변수에 담을 수 있게 하는 자바스크립트 표현식(expression)'입니다. 간단하게 정리하면 배열 [], 혹은 객체 {} 안의 값을 편하게 꺼내 쓸 수 있는 문법입니다. 기본 문법(배열) 배열에서의 적용은 아래와 같습니다. [a1, a2, ...rest_a] = [1, 2, 3, 4, 5, 6, 7, 8, 9]; console..
(2020.01.29) 스코프 관점에서 볼 수 있도록 새로 작성했습니다. 자바스크립트에는 클로저(Closure)라는 개념이 존재합니다. 프로토타입 기반의 언어인 자바스크립트는 클로저를 통해서 클래스 기반 언어처럼 캡슐화, 모듈화 작업을 수행할 수 있습니다. 또한, let과 const가 없던 시절부터 변수의 제어를 도왔습니다. (var 변수는 함수 범위에서 전역적이기 때문에 종종 문제가 발생합니다.) 클로저 모질라 형님들의 도큐먼트에 의하면 '클로저는 함수와 함수가 선언된 어휘적 환경의 조합이다.' 라고 나와있습니다. 그냥 봤을땐 이게 뭔 개소리야? 싶습니다. 간단하게 정리하면 함수 밖에서 선언된 변수를 함수 내부에서 사용할 때 클로저가 생겨난다고 할 수 있습니다. function outer(){ var ..
메모리는 변수나 값이 저장되는 공간입니다. 메모리에 대한 이야기가 낯설다면, 내 코드가 실행될 때 내가 선언한 변수, 함수, 실행문들이 어딘가에 담겨지고, 그곳이 메모리구나 정도로 생각하시면 되겠습니다. 클로저(Closure)에 대한 이해를 돕기위해, 메모리 측면에서 변수나 함수의 파라미터가 함수 안에서 어떻게 동작하는지 알아보는 시간을 갖겠습니다. mutable 객체와 immutable 객체 자바스크립트 자료형 중 String(문자열), Number(숫자), Boolean(참/거짓), undefined, null은 immutable(변경불가능한) 객체 입니다. 반대로 Function(함수), Array(배열), Object(객체)은 mutable(변경가능한) 객체 입니다.(immutable하지 않은 모..