일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- dry-yasg
- CD
- F객체
- apitestcase
- CI
- Continuous Delivery
- DRF
- testcase
- django
- docker
- aws
- EC2
- QuerySet
- racecondition
- annotate
- Git
- 도커
- DjangoRestFramework
- DjangoCache
- to_attr
- Prefetch_related
- 코루틴
- 백준
- database
- Coroutine
- aggregate
- nestedfunction
- Python
- Transaction
- Continuous Deployment
- Today
- Total
목록전체 글 (68)
BackEnd King KY

alias를 zshrc에 등록해보자 카테고리를 뭘로 설정해야 할 지 몰라 CS로 했습니다.. 긱설하고 매번 터미널을 켜면 개발 폴더에 들어간뒤, 가상환경을 켜는 게 귀찮아서 alias에 등록을 했는데 다른 분들도 알고 게시면 좋을 것 같아서 작성하게 되었습니다. alias 등록하러 바로 슈웃 순서 일단 아래 명령어를 입력을 해야겠죠? vi ~/.zshrc 접속 후 쭉 내려보면 ohmyzsh, zshconfig의 alias 예시가 보일겁니다. 없어도 당황하지 마시고, 그냥 없는갑다 하시면 됩니다. 그리고 아래에 제가 사용 할 alias들을 추가했습니다. dockers라고 입력하면 Desktop -> Development -> dockers 라는 폴더로 이동한 뒤, dockers라는 가상환경을 켜고 dapi..

drf-yasg 저는 이전까지 API문서화의 경우, Postman을 주로 사용했었습니다. 혼자 틈틈히 FastAPI를 할 때 Swagger라는 것에 대해 알게 되었고, 지금 회사에 들어가고 나서는 swagger를 사용해서 본격적으로 사용하게 되었는데요. yasg는 Yet Another Swagger Generator의 약자로 또 다른 Swagger 생성기 라는 의미를 가지고 있습니다. 다만, drf-yasg를 사용하지 않고 직접 yaml 파일을 만들어 사용하고 있지만 drf-yasg도 알아두면 좋을 것 같아서 해보게 되었습니다. 현재 개인적으로 진행하고 있는 해당 프로젝트에서 사용하고 있으니, 더 자세한 내용이나 코드는 해당 프로젝트를 클릭하여 들어가시면 됩니다. 출처는 drf-yasg Git Repos..

DRF APITestCase Django에서 기본적으로 TestCase를 이용해 테스트를 할 수 있도록 제공하는 Unit Test가 있지만, DRF에서는 그에 상응하는(?) 기능으로 APITestCase가 있습니다. 사용해보니, Django에서 제공하는 기본적인 단위테스트와는 동일합니다. View 우선, 테스트를 하기 위해 View로직을 알아야 합니다. API는 영화리스트 조회(MovieListView), 특정 영화조회(MovieDetailView) 두 개가 있습니다. 여기선 MovieListView의 테스트 경우만 보겠습니다. MovieListView Test 영화 리스트의 경우, 위의 이미지같은 형태로 나오게 됩니다. 그러면 테스트 코드 역시, 값을 비교할 때 위와 같은 형태가 나와야 한다는 의미입니..

✔️ Docker 구조 도커는 크게 4가지로 분류되어 있습니다. Docker client와 server (server는 docker engine으로 불리기도 합니다.) Docker 이미지 Docker registries Docker containers ✔️ 1. Docker client와 server 도커는 기본적으로 서버와 클라이언트 구조로 이루어져 있습니다. 클라이언트가 서버에 명령을 전달하고 서버가 실행시키는 구조입니다. 우리가 일반적으로 개발할 때 요청-응답과 같은 개념으로 이해하시면 됩니다. Docker Binary 커맨드가 도커 클라이언트고 dockerd가 Docker Daemon 혹은 Docker engine입니다. Docker engine과 상호작용 하기 위해 Restful API도 제공됩..

Docker 도커를 하기 전에 컨테이너에 대한 이해가 선행되어야 합니다. 컨테이너에 대해 설명 후 Docker를 직접 사용해보겠습니다. 출처는 구글 클라우드 입니다. ✔️ Container의 의미 컨테이너는 소프트웨어 서비스를 실행하는 데 필요한 특정 버전의 프로그래밍 언어 런타임 및 라이브러리와 같은 종속 항목과 애플리케이션 코드를 포함하는 경량 패키지입니다. 컨테이너는 운영체제 수준에서 CPU, 메모리, 스토리지, 네트워크 리소스를 쉽게 공유할 수 있게 해주며 컨테이너가 실제로 실행되는 환경에서 애플리케이션을 추상화할 수 있는 논리 패키징 매커니즘을 제공합니다. 런타임 : CS에서 컴퓨터 프로그램이 실행되고 있는 동안의 동작 이렇게 운영체제 가상화를 통한 컨테이너 방식을 이용하게 되면, 프라이빗 데이..

오늘 포스팅 주제는 파이썬의 heapq 알고리즘입니다. 백준을 풀다가 알게 된 개념인데, 익숙치 않아 정리하려고 합니다. 출처는 파이썬 공식문서입니다. ✔️ What is heapq? heapq는 우선순위 큐 알고리즘 구현을 제공합니다. 힙이란 부모노드가 자식노드보다 작거나 같은 값을 갖는 이진 트리를 뜻하며, heap[k]

✔️문제 https://www.acmicpc.net/problem/13305 13305번: 주유소 표준 입력으로 다음 정보가 주어진다. 첫 번째 줄에는 도시의 개수를 나타내는 정수 N(2 ≤ N ≤ 100,000)이 주어진다. 다음 줄에는 인접한 두 도시를 연결하는 도로의 길이가 제일 왼쪽 도로부터 N-1 www.acmicpc.net ✔️풀이 n = int(input()) l = list(map(int, input().split())) p = list(map(int, input().split())) a=0 cost = p[0] for i in range(n-1): if cost > p[i]: cost = p[i] a += cost * l[i] print(a) l은 거리의 값을 저장하는 리스트, p는 가격..

✔️문제 https://www.acmicpc.net/problem/1789 1789번: 수들의 합 첫째 줄에 자연수 S(1 ≤ S ≤ 4,294,967,295)가 주어진다. www.acmicpc.net ✔️풀이 n = int(input()) i=1 while True: if (i*(i+1))/2 == n: print(i) break if (i*(i+1))/2 > n: print(i-1) break i+=1 1부터 차례 대로 더해서 n이 되나 체크합니다. 만약 n=210이라면 (x * (x+1))/2=210이 되어야 하며, x=20입니다. 이럴 경우 가능한 자연수 개수의 최대값은 20이 됩니다. 만약 n=211이라면 x=20일 떄는 210이고 x=21이라면 231이 돼서 값을 넘깁니다 그러면 211은 어떻..