profile
주니어 개발쟈🤦‍♂️
post-thumbnail

Redis

Redis란? > REDIS(REmote DIctionary Server)의 약자로 인 메모리 기반의 key-value 구조 데이터 관리 시스템이다. 모든 데이터를 메모리에 저장하므로 빠른 Read & Write 속도를 보장하는 NoSQL 데이터베이스이다. 요즘 회사들은 자체 RBDMS의 부하를 줄이기 위해 redis 클러스터를 주로 사용해 운영한다. ...

2020년 8월 30일
·
0개의 댓글
post-thumbnail

Custom Exception & raise

파이썬에서 try catch문을 이용해 예외를 발생시킬 수 있다. 지금까지 파이썬에서 정해진 예외만 처리했다면 이제는 개발자가 원하는 Custom Exception(user-defined exception)을 설계할 수 있고 원하는 지점에서 예외를 발생시켜보자우선 Cu

2020년 8월 18일
·
0개의 댓글
post-thumbnail

logger

현재 우리 프로그램이 어떤 상태를 가지고 있는지 외부출력을 하게 만들어 개발자들이 직접확인하게 하는 것. 물론 이런 방식으로 콘솔에 출력이 가능하지만, 기존에 구축되어진 logging 라이브러리를 사용해 좀 더 로그로써의 다양한 기능을 사용할 수 있다. ex) 로깅 파일 출력, 로깅 레벨에 따른 콘솔 출력 제한 등 예제 로깅 모듈은 파이썬에 내장되어...

2020년 8월 18일
·
0개의 댓글

Django Rest Framework - 1

DRF(Django Rest Framework)란? DRF는 장고안에서 RESTful API 서버를 쉽게 구축할 수 있도록 도와주는 오픈소스 라이브러리이다. 공식문서에서 설명하는 DRF는 다음과 같다 > DRF는 Web API를 만들기 위한 강력하고 유연한 툴이다. 당신이 DRF를 사용해야 하는 이유가 몇가지 있다 Web browsable API는 ...

2020년 8월 16일
·
0개의 댓글

DB 인덱싱

Index란? >데이터베이스 분야에 있어서 테이블에 대한 검색의 속도를 높여주는 자료 구조이다. Index는 색인이고 메모리 영역의 일종의 목차를 생성하는 개념이다. 책에서 원하는 항목을 찾기 위해서는 첫 페이지에서부터 찾는 것보다 색인(목차)를 통해 검색 범위를 줄이는 것이 훨씬 효과적이다. DB 인덱싱은 데이터의 양이 많고 컬럼의 값이 다양할 경우 더...

2020년 8월 2일
·
0개의 댓글
post-thumbnail

비동기 & asyncio

비동기적(Asynchronous) 처리 방식이란? 일반적인 프로그램의 코드는 특정 작업이 끝나면 다음 작업을 진행하는 순차처리 방식으로 실행된다. 이를 동기적(Synchronous) 처리 방식이라고 한다. 반대로 비동기적(Asynchronous) 처리 방식이란 특정 작업의 종료 일시와 상관 없이 다음 작업을 진행할 수 있다. 즉 A작업이 시작하면 동시에...

2020년 7월 18일
·
0개의 댓글
post-thumbnail

Python - Iterables, Generator & yield

Iterables iterable에 대한 python 공식문서의 정의는 다음과 같다 > An iterable is any Python object capable of returning its members one at a time permitting it to be iterated over in a for-loop 해석을 해보면 for loop을 통해...

2020년 7월 14일
·
0개의 댓글

bcrypt

bcrypt란 > 1999년에 Niels Provos와 David Mazieres가 발표한 가장 강력한 단방향 비밀번호 해시 매커니즘 중 하나이다. C, C++, C#, Go, Java, PHP, Perl, Python, Ruby등의 언어를 지원한다. 단방향 해시 함수 > 단방향 해시 함수는 수학적인 연산을 통해 원본 메세지를 변환하여 암호화된 메세지인...

2020년 7월 13일
·
0개의 댓글
post-thumbnail

합병정렬 & 삽입정렬

합병 정렬 (Merge Sort) >합병 정렬은 분할정복(Divide and Conquer) 알고리즘의 일종이다. 분할정복 알고리즘이란 문제를 나눌 수 없을 때까지 나눈 다음, 나누어진 각각의 문제들을 풀면서 다시 합병을 하여 문제의 답을 얻는 알고리즘이다. 합병

2020년 7월 10일
·
0개의 댓글

정규화

정규화란 > 관계형 데이터베이스의 설계에서 레코드의 중복을 최소화하여 데이터를 구조화하는 프로세스 이상 (Anomaly) 이상이란 테이블내의 데이터 중복성에 의해서 발생하는 데이터 불일치 현상이다. 주로 여러 종류의 레코드들을 하나의 테이블에 표현하려고 하면 이상현

2020년 7월 8일
·
0개의 댓글
post-thumbnail

완전탐색

'모든 경우의 수를 전부 찾아서 답을 찾는 알고리즘' 을 뜻한다. 영어로는 Exhaustive Search 라고 한다. 가능한 모든 경우의 수를 다 해보는 것이다. 알고리즘을 풀때 가장 강력하고 확실한 방법이지만 그만큼 시간이 가장 오래 걸리는 탐색 기법이다다른 말로는

2020년 7월 6일
·
0개의 댓글
post-thumbnail

상속 - Inheritance

상속이란? 객체지향 프로그래밍 기법에서 사용되는 기법이다. 최대한 간단하게 정리하자면 > 상위 클래스가 하위 클래스에게 가지고 있는 기능을 공유하여 물려받아 확장(extend)하는 개념. 기능을 물려주는 상위 클래스는 기반 클래스(base class) 혹은 부모 클래스(parent class), 슈퍼 클래스(super class)라고 한다 기능을 물려...

2020년 7월 3일
·
0개의 댓글

Brandi Review - 06.17

상품 리스트 json schema 할인 여부, 진열 여부와 같은 boolean 값의 파라미터를 가지는 부분에서 parameter의 최대길이 (max_length = 1) 조건을 추가해 boolean 값을 가져야 하는 parameter에서 1111을 눌렀을 때 통과가 되는 오류 수정 USER SERVICE pagination에 필요한 페이지를 가져오는...

2020년 6월 17일
·
0개의 댓글
post-thumbnail

TIL - 06/07 JSON Schema

API를 설계하면서 JSON 형식의request로 들어오는 parameter들의 유효성 검사를 체크하기 위해 jsonschema를 프로젝트에 적용해보기로 했다. JSON Schema란? JSON의 유효성을 검사하고 주석을 추가하고 조작할 수 있는 라이브러리이다. JSON 스키마를 활용하면 API의 parameter에 들어갈 데이터의 형식을 지정하고 AP...

2020년 6월 7일
·
0개의 댓글
post-thumbnail

TIL - 06/06 INNER JOIN

JOIN 이란 > 2개 이상의 테이블이나 데이터베이스를 연결하여 데이터를 검색하는 방법이다. 자신이 검색하고 싶은 컬럼이 다른 테이블에 있을경우 주로 사용하며, 여러개의 테이블을 마치 하나의 테이블인 것처럼 활용하는 방법이다. > JOIN을 하기 위해서는 각 테이블의 PK(Primary Key)와 FK(Foreign Key)를 이용해 정보를 조합한다. I...

2020년 6월 6일
·
0개의 댓글

Brandi Review - 06.04

Review 셀러 권한에서의 셀러 상세보기 (GET) API 구현 DAO Seller 테이블과 일대일 관계(권한, 셀러 정보, 셀러 상태, 셀러 고유 아이디)인 셀러 정보 테이블과는 INNER JOIN을 활용 가장 최신의 셀러 정보를 가져오기 위해 셀러 고유 ID

2020년 6월 4일
·
0개의 댓글
post-thumbnail

TIL - 05/30 이력관리

이력관리란? 데이터는 현재의 프로세스만 처리하고 버리는 것이 아니라 생성, 수정 삭제이력 등의 오랜 기간의 과거의 이력을 가지고 있는 데이터를 유지보수할 수 있어야 한다. 예를 들자면 이사를 가서 주소지를 옮길 때마다 주민등록증 뒷면의 주소 변경란의 주소가 추가되는 것이 있다. 데이터의 종류에 따라 이력을 관리할 적절한 방법을 선택해줘야 한다. 이력 관리...

2020년 5월 30일
·
0개의 댓글

Brandi Review - 05.28

Review Modeling 삭제가 가능한 모든 테이블에 is_deleted 필드 추가함으로써 소프트 딜리트 세팅 담당자 정보 테이블에 순서 필드 추가, 프론트엔드에서 순서번호를 request에 넘겨주는 식으로 합의 상품 이미지 테이블에 순서 필드 추가, 첫번째 순서 이미지가 대표 이미지로 선정 셀러 상태에 따라서 관리자가 셀러에 취할 수 있는 여러가...

2020년 5월 28일
·
0개의 댓글
post-thumbnail

TIL - 05/28 레이어드 패턴

출처 : 깔끔한 파이썬 탄탄한 백엔드 (송은우 저) 레이어드 패턴 백엔드 API 코드에 가장 널리 적용되는 패턴 중 하나는 레이어드 아키텍처(Multi-tier) 패턴이다. 레이어드 아키텍처는 코드를 논리적인 부분 혹은 역할에 따라 독립된 모듈로 나누어서 구성하는 패턴이다. 각 모듈은 서로의 레이어에 의존성을 가지고 전체의 시스템을 구성한다. 이렇게 ...

2020년 5월 28일
·
0개의 댓글

TIL - 05/24 Flask mysql 연동하기

앞서 만들었던 sign-up 엔드포인트에 mysql을 연동해보자 1. 데이터베이스 생성 성공적으로 데이터베이스가 생성되었다. 2. SQLAlchemy, MySQL-Connector 설치 SQLAlchemy는 파이썬 코드에서 DB와 연결하기 위해 사용되는 라이브러리이다. MySQL-Connector는 파이썬에서 DB를 사용하기 위한 공식 API이다. ...

2020년 5월 24일
·
1개의 댓글