일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- 백준
- js
- API
- 파이썬 알고리즘
- javascript
- CSS
- Baekjoon
- AWS
- java
- 알고리즘 풀이
- MAC
- 알고리즘 문제
- c++
- PYTHON
- django widget
- form
- web
- 알고리즘
- django rest framework
- 파이썬
- Django
- Git
- es6
- HTML
- Algorithm
- react
- 알고리즘 연습
- 장고
- DRF
- django ORM
- Today
- Total
목록웹프로그래밍 (163)
수학과의 좌충우돌 프로그래밍
react 는 대부분이 새로운 개념없이 javascript 코드로 이루어져 있습니다. 하지만 새롭게 알아야하는 개념도 물론 존재하죠. react 를 시작하기 전에 react 에서 새롭게 등장한 개념, JSX 를 살펴봅시다. JSX JSX 에 대해서 알아보도록 하겠습니다. const element = Hello, World!; 주어진 변수는 바로 JSX 입니다. 어떤 것인지 이해가 가시나요? JSX 는 javascript 와 XML 의 합성어로서 자바스크립트 문법의 확장판으로서 UI 가 실제로 어떻게 보일지를 설명해줍니다. 위에서 설명 했듯이 javascript, XML 을 합쳤기 때문에 두 언어의 장점을 모두 취하고 있습니다. XML 과 같이 마크업 되어 있기 때문에 구조를 한 눈에 알아보기 쉽고 jav..
react 를 시작하기에 앞서 준비 작업이 필요합니다. 우선 필요한 것들이 설치가 되었는지 확인을 해보겠습니다. 사전준비 nodeJS node.js 가 필요합니다. 로컬에 설치되어 있는지 확인하는 방법은 아래와 같습니다. > node -v v12.9.1 만약 아무 버전 정보가 뜨지 않으면 아래 링크로 가서 설치하시면 됩니다. https://nodejs.org/en/ npm npm 은 Node Packaged Manager의 줄임말로 Node로 만들어진 pakage 들을 관리해주는 툴입니다. 파이썬으로 생각하면 pip와 유사합니다. 마찬가지로 다음과 같이 버젼 확인이 가능합니다. > npm -v 6.13.6 npm 은 nodejs 를 설치 할 때 함께 설치되기 때문에 따로 설치할 필요 없습니다. npx n..
DRF 에서 지원하는 인증은 다음과 같습니다. rest_framework.authentication.SessionAuthentication rest_framework.authentication.BasicAuthentication rest_framework.authentication.TokenAuthentication 초기에 username/password 으로 Token 발급 이 Token을 매 API 요청에 담아서 보내어 인증을 처리 SessionAuthentication,BasicAuthentication 은 django default 이고 TokenAuthentication 은 따로 설정을 해줘야합니다. 그래서 기본적인 SessionAuthentication,BasicAuthentication 을 ..
rest_framework 의 각종 default 설정에 대해서 알아보겠습니다. https://github.com/encode/django-rest-framework/blob/master/rest_framework/settings.py encode/django-rest-framework Web APIs for Django. 🎸. Contribute to encode/django-rest-framework development by creating an account on GitHub. github.com 장고 공식문서 rest_framework/settings.py 의 DEFAULTS dict 를 통해 확인할 수 있습니다. 현재 블로그는 2020년 1월 8일 3.9 버전에 대한 내용입니다. HTTP 최종..
Throttle 이란 특정 조건 하에 최대 호출 회수를 결정하는 클래스 입니다. 여러 이유로 지정 기간 내에 호출 횟수를 제한하는 것이죠. Rate rate 는 지정 기간 내의 최대 호출 횟수를 말합니다. 표기하는 방법은 {숫자}/{간격} 다음과 같이 표기합니다. 여기서 숫자는 지정 간격 내의 최대 요청 제한 횟수를 말하고, 간격은 횟수를 초기화하는 시간을 말합니다. 이 때 간격은 문자의 맨 앞글자만을 참조합니다. 따라서 d 나 day 는 똑같이 동작합니다. 사용할 수 있는 간격 키워드로는 다음과 같습니다. s : 초 m : 분 h : 시 d : 일 # ex "10/s" # 초당 10회 "100000/day" # 하루당 10만회 Rates 제한 메커니즘 django 에서 제공하는 Throttle 들은 모..
DRF 에서의 접근제한을 알아보도록 하겠습니다. 우선 기본적으로 접근제한을 제외한 기본적인 코드들에 대해서는 설명을 생략하겠습니다. 앞의 포스팅들을 참고해주세요. 현재 까지의 진행 상황은 다음과 같습니다. Post 모델에 author 를 추가하여 글 작성자를 연결하였습니다. # models.py from django.db import models from django.conf import settings class Post(models.Model): author = models.ForeignKey(settings.AUTH_USER_MODEL, on_delete=models.CASCADE) title = models.CharField(max_length=100) created_at = models.Date..
Symbol symbol 은 새로운 데이터 타입입니다. 하지만 실제로 많이 사용되지는 않으니 간단히 알아보도록 하겠습니다. symbol 의 첫번째 특징은 unique 입니다. symbol 객체를 만들면 이는 다른 모든 것과는 다른 유일한 것이 됩니다. const s1 = Symbol(); const s2 = Symbol(); console.log(s1 === s2); // false symbol 객체를 만들 때 description 을 넣을 수 있습니다. 하지만 이는 해당 symbol을 설명하기 위할 뿐 값으로서 사용할 수 없습니다. const s1 = Symbol("first"); const s2 = Symbol("second"); console.log(s1); // Symbol(first) conso..
generator generator 는 중간에 멈출 수 있는 함수입니다. 일반적인 함수를 생각해보면 함수를 실행함과 동시에 함수의 처음부터 끝까지 한 번에 실행합니다. 하지만 generator 함수는 일시적으로 정지할 수 있고, 이를 다시 시작할 수 있습니다. 이를 사용하기 위해서는 function 뒤에 * 를 붙여주면 함수 내부에서는 yield 를 사용할 수 있습니다. 함수가 yield 를 만나게 되면 해당 함수는 일시적으로 정지되고 yield 뒤에 인자를 반환합니다. 일반적인 함수의 return 과 비슷한 역할을 하고 있습니다. function* fruits() { yield "apple"; yield "banana"; yield "melon"; yield "strawberry"; } 해당 함수를 찍..
Proxy Proxy 객체는 기본적인 동작(속성 접근, 할당, 순회, 열거, 함수 호출 등)의 새로운 행동을 정의할 때 사용합니다. proxy 는 target 과 handler 두 개의 인자를 받습니다. target 으로는 새로운 행동을 정의하고 싶은 object 를, handler 에서는 target 의 행동을 정의합니다. const user = { name: "minsung", age: 24, school: "UOS" } const userFilter = {}; const filteredUser = new Proxy(user, userFilter); proxy 객체 filteredUser 는 target 의 필드를 참조가능합니다. 이 뿐만 아니라 target 과 동일하게 사용이 가능합니다. conso..
Class class 의 기본적인 형태를 알아봅시다. class 의 개념적인 부분은 생략하고 javacript 에서 어떻게 사용되는지 위주로 다루도록 하겠습니다. 생성자는 constructor 를 통해 구현가능하고 instance 를 생성할 때는 new 를 사용하여 정의합니다. class User { constructor(username, password){ this.username = username; this.password = password; } introduce(){ console.log(`My name is ${this.username}`); } } user = new User("minsung","1234"); user.introduce(); // My name is minsung 상속 기존에..