분류 전체보기
-
[1차_PROJECT] Lineamigos_프로젝트 후기나만의 이야기 2020. 12. 26. 21:44
생애 첫번째 프로젝트를 마무리하였다. Linefriends Store 웹 사이트를 기준으로 Lineamigos 라는 클론 프로젝트를 진행하였다. 라인 프렌즈의 Line 과 스페인어로 친구라는 뜻의 Amigo를 합쳐 만든 팀명이었다. (야무진 팀명을 지어주신 경오님 감사드립니다!) 팀명 LineAmigos 팀원 Frontend : 안미현(PM), 강경오, 이은진, Backend : 문승희, 오승현 개발기간 2020년 12월 14일 ~ 2020년 12월 24일 (10일) 기술 스택 (Frontend) HTML / CSS JavaScript React(CRA 세팅) React DOM React(Router DOM) Sass Slick-slider RESTfulAPI 기술 스택 (Backend) Python D..
-
TIL.78 JWT Token 유효시간 설정TIL 2020. 12. 26. 21:07
이전까지는 로그인시 jwt를 포함한 응답을 함께 전송하였으며 우리 서비스를 사용하는 사용자가 맞는지, 유로서비스를 이용 중인 사용자는 맞는지 등 인가를 이용해 토큰이 우리 서비스에서 발행된 토큰이 맞는지에 따라 접근권한을 부여하였다. 토큰은 만료시간을 설정해줄 수 있다. 보통 로그인후, 토큰을 생성하여 응답으로 전달해준다. 사용자의 토큰 정보는 브라우저 스토리지에 저장해놓은 상태로 로그인한 사용자가 어떠한 기능/페이지에 접근하기 위해 전체 요청이 아닌 세션ID/토큰만으로 요청을 보내 사용된다. 이때 만료시간을 설정하지 않으면 토큰이 계속 만료되어 게시물을 하나 등록하고 또 다른 게시물을 등록하고 싶을때 다시 로그인해야하는 번거로움이 발생한다. 실제로는 이전처럼 만료시간을 설정하지 않는 토큰은 사용되지 않..
-
TIL.77 List Comprehension의 속도가 빠른이유TIL 2020. 12. 24. 23:19
Python에는 Comprehension 이라는 독특한 문법이 있다. 이는 요소를 생성하는데 있어 간력하게 생성할 수 있는 방법을 제공한다. 리스트 안에 for 문, if문 등으로 지정하여 리스트를 생성하는 것을 리스트 컴프리헨션이라 하는데 TIL. 5 list 함수 응용편_3 :: muntari Log (tistory.com) 컴프리헨션(Comprehension)은 원하는 데이터를 파이썬에서 제공하는 자료구조(list, dictionary, set)에 담아 표현하려할 때 사용할 수 있는 문법으로 종류는 4가지이다. 1. List Comprehension 2. Dictionary Comprehension 3. Set Comprehension 4. Generator Comprehension 이번 프로젝트 ..
-
TIL.76 AWSTIL 2020. 12. 23. 16:51
AWS란? AWS는 Amazon Web Service의 줄임말 입니다. AWS는 소위 클라우드 서비스라고도 합니다. 클라우드 서비스는 서버 등의 인프라스트럭쳐를 필요한대로 on demand로 사용할 수 있는 서비스 입니다. 즉, 유저가 직접 서버를 구입하고 설치할 필요 없이 AWS상에서 클릭 몇번으로 서버를 구축하고 사용할 수 있습니다. 웹서비스 배포를 위한 AWS 필수 개념 AWS가 제공하는 기능들은 굉장히 방대하고 다양합니다. 그 중 일반적으로 많이 사용되는 개념과 기능들은 다음과 같습니다. EC2 Security Group RDS Load Balancer (ALB) Route 53 S3 EC2 Elastic Compute Cloud AWS 상에서 사용하는 Server. EC2 서버에 API를 배포하..
-
TIL.75 RSETfulAPITIL 2020. 12. 22. 23:30
이번 라인프렌즈 클론 프로젝트 진행간 적용하였던 RESTfulAPI에 대해 다음주 바로 진행하는 티웨이항공 클론 프로젝트간 다시 한번 사용하게될 RESTfulAPI를 간략히 스터디 용도로 정리하고 추후 세부적으로 다뤄보도록 하자 먼저, RESTful API 란? 백엔드에서 API의 엔드포인트 구조를 표현하는 방식 중 의 하나!이다. (데이터를 어떻게 주고 받을지를 URL로 표현하는것을 레스트풀 api라 이해해도 좋다!!) RESTful API vs GraphQL API GraphOL API란? GraphQL 은 Graph Query Language 의 줄임말이다. Query Language 란 무엇인가? Query Language 는 정보를 얻기 위해 보내는 질의문(Query)을 만들기 위해 사용되는 C..
-
TIL.74 삼항 연산자TIL/Python 2020. 12. 21. 22:24
프로젝트 진행 간 if문으로 가지치는 방법이 싫어 찾아봤던 삼항 연사자를 간략히 정리해보자 1. 삼항 연산자(Ternary operators) # 참인경우 값 if 조건 else 거짓인경우 값 연산 대상의 개수에 따라 연산자를 분리하면 단항 연산자, 이항 연산자, 삼항 연산자로 분리 합니다. 단항 연산자는 부호(+, -), not 등이 있으며 +, -, *, / .... 등 대부분의 연산자가 이항 연산자 입니다. 삼항 연산자는 1개가 존재 합니다. 아래와 같이 QueryString 요청에 "P"가 포함될 경우에 따라 앞의 식을 실행하지 뒤의 식을 실행할지 정하는 식으로 사용할 수 있다. # A = apple / B = banana a_name = request.GET.get('P', None) produ..
-
TIL.73 Github / Git 충돌(Conflict) 발생 해결TIL 2020. 12. 20. 23:29
Git에서 master(main)의 brach를 만들고 작업을 하다보면 pull request 시 Confilct(충돌)이 나는 경우가 있다. (또는 Github에서도 확인이 가능하다) Conflict 발생이유 내가 pull origin main을 한 후 다른 작업자가 나와 같은 라인을 수정하고, 수정한 내역을 main과 Merge할 경우 발생한다. 이때 Git 충동을 해결하는 2가지 방법이 있다고 한다. 1. Merge --> Merge로 해결을 하였다. 2. Stash --> '책갈피' 개념으로 생각, 지금의 코드를 만들어내긴 했는데 뭔가 오류가 생기게 됩니다. 하지만 그렇다고 코드를 날려버리기엔 아까울 때, 백업 및 책갈피 개념으로서 이 명령어를 쓴다고 한다. Merge 나의 로컬 master(ma..
-
TIL.72 select_related 와 prefetch_relatedTIL 2020. 12. 19. 23:37
이전 JsonResponse를 활용하여 모든 데이터를 응답으로 보내보았다. codermun-log.tistory.com/category/TIL 'TIL' 카테고리의 글 목록 성실과 기본기를 중요시하는 백엔드 개발자입니다. codermun-log.tistory.com 하지만 언급하였듯 위와 같은 코드는 전혀 개발자스럽지 못한 코드이다. Django 의 ORM을 이용하여 DB에 접근하며 내가 원하는 정보를 가져와야한다. 이때 로직을 어떻게 구성하느냐에 따라 DB에 몇 번 접근해야하는지에 대한 효율을 따져볼 수 있게 된다. 당연히, DB에 자주 접근하게 될 수록 속도는 느려지며 비효율적인 코드라 할 수 있다. 또한, Django ORM을 이용해 DB에 접근하여 Queryset objecst를 가져올때 얼마나 ..