본문 바로가기
반응형

Dev DBAN/개발 이야기34

주니어 개발자는 TDD로 개발해야된다 생각합니다. 최근에 TDD를 이용해 간단한 CRUD API를 만들 기회가 생겨 만들어보면서 깨달은 것들을 한 번 공유하기 위해 이렇게 글 을 적습니다. 먼저 어떤 라이브러리던 공식문서를 참고하는것이 가장 중요하기에 아래에 링크 남겨 놓겠습니다. Testing - FastAPI Testing Thanks to Starlette, testing FastAPI applications is easy and enjoyable. It is based on Requests, so it's very familiar and intuitive. With it, you can use pytest directly with FastAPI. Using TestClient Import TestClient. Create a TestClient .. 2022. 2. 14. 12:46
FAST API로 REST API만들기 - APIRouter FastAPI로 REST API 만들기 3. APIRouter 하나의 파일에 모든 기능들을 만들어서 집어 넣는다면 나중에는 결국 내가 짠 코드가 어디에 어떻게 작동하는지 헤매는 경우가 발생해 오류가 나도 오류를 어디서 어떻게 고쳐야 될지 모르는 상황이 발생하게 됩니다. 그래서 오늘은 그러한 것들을 최대한 방지하기 위해 캡슐화를 FastAPI에서 제공하는 APIRouter를 이용해 한 번 나눠 보려고 합니다. 일단 먼저 프로젝트를 아래와 같이 폴더와 파일을 생성해 나눠 줍니다. 분명 기존에는 D:\python\Testapi 경로 아래에 main, db_class, db_connection 3가지의 파일만 존재했었는데 이 파일들을 api라는 폴더안에 api_get,api_post라는 파일과 conn 폴더 안.. 2022. 1. 18. 20:13
FAST API로 REST API만들기 - SQLAlchemy FastAPI로 REST API 만들기 2. SQLAlchemy 저번 포스팅에 이어서 오늘은 SQLAlchemy를 이용해 DB와 연동해 데이터 저장, 조회를 해보려고 합니다. 프로젝트 폴더를 클릭해 New -> Python file -> db_conn 으로 파이썬 파일을 생성 시켜 줍니다. 그 다음 SQLAlchemy 라이브러리를 다운로드 받아서 가져와야되겠죠? # SQLAlchemy 라이브러리 설치 pip install sqlalchemy 이제 우리는 SQLAlchemy로 데이터 베이스에 접속 할 예정입니다. 하지만 아직 어떤 데이터 베이스도 만들어 두지 않았기에 우리는 mysql을 접속해 데이터 베이스를 하나 생성하도록 하겠습니다. 저는 데이터 그립을 이용해서 DB를 생성하지만 여러분들은 없을 수도 .. 2021. 12. 13. 12:52
FAST API로 REST API만들기 - 초기 세팅 FastAPI로 REST API 만들기 1. 초기 세팅 유튜브 영상이 보기 힘든 분은 글을 읽어주세요 :) 저는 pycham 2021.2.3을 사용해 FastAPI로 RESTAPI를 만들어 볼 예정입니다. 참고로 파이썬은 3.9버전을 사용하고 있습니다 :) 최근 업데이트 이후 파이참에서도 손 쉽게 FastAPI 프로젝트를 실행할 수 있지만 저는 알려드리기 위해 빈 프로젝트에서 한 번 실행 하도록 하겠습니다. 위와 같은 main.py가 생성이 되고 hi라는 말과 함께 이상한 코드들이 보일 겁니다. 이걸 먼저 지워주겠습니다. 그 다음으로 현재 어떤 라이브러리가 가상환경에 구성이 되어 있는지 확인해보고 필요한 것들을 하나씩 추가 해보도록 하겠습니다. # 설치된 라이브러리 목록 확인 법 pip list 그 다음.. 2021. 12. 12. 15:37
FastAPI로 REST API 만들기 - 도입부 최근에 여러 회사 과제들을 진행하면서 FastAPI에 대한 이해도가 높아져 이러한 이해도를 기록하기 위해 주니어 개발자인 제가 한 번 감히! FastAPI를 가지고 이야기를 해보려고 합니다. 글 연재는 이렇게 진행 될 예정입니다. 1. 초기 세팅 (서버 열기, GET과 POST 사용) 2. SQLAlchemy를 이용해보자 (ORM의 이해) 3. 데이터 베이스 MySQL과 연동 시켜보자(DB와 연동) 4. FastAPI의 블루프린트 APIRouter (encapsulation 캡슐화) 5. 에러가 발생했습니다. 어떡하죠? (에러) 위와 같이 5개의 파트로 나누어서 한 번 진행할 것입니다. 우리 한 번 FastAPI를 알아봅시다 :) 2021. 11. 23. 23:16
스타트업 코딩테스트 후기 원티드로 지원한 5개의 기업 중 한 곳에 서류가 통과 되어서 코딩 테스트를 어제 보고 난 후 느낀점과 개인적인 이야기를 해보려고 합니다. 어제 코딩테스트를 본 기업 간략 소개 - 월 매출 10억 버는 스타트업 - 해당 분야에서 혁신을 꿈꾸고 이루어 내고 있는 기업 이 정도만 간단하게 소개하고 바로 코딩 테스트가 어땠는지 이야기를 한 번 해보겠습니다. 코딩 테스트 난이도는 어땠나요? 난이도는 막 엄청 hard한 정도는 아니었습니다. 그냥 이 사람이 알고리즘을 아는가? 정도의 수준으로 나왔고 아마 알고리즘을 어떻게 이쁘고 효율적으로 짜는지가 중점적으로 보는 것 같았습니다. 코딩 테스트는 어디서 진행 했나요? Hacker rank에서 진행 해 영어지문의 문제가 나왔습니다. 처음에는 좀 이해가 안가서 헤맸고 나.. 2021. 11. 3. 11:32
REST API? REST API! 완성된 REST API 프로젝트를 직접 만지고 수정하면서 조금 더 짜임새 있고 효율적으로 활용 및 수정하고 싶다는 마음에 이렇게 한 번 제대로 REST API를 파헤쳐보려고 한다. REST REST는 Representational State Transfer의 약어로서 웹의 장점과 HTTP의 우수성을 제대로 활용할 수 있는 아키텍처이다. HTTP URI를 통해서 자원을 명시하고 HTTP Method(POST, GET, PUT, DELETE)를 통해서 명시된 자원의 CURD 연산을 적용하는 것을 의미한다. 자원을 이름으로 구분해 자원의 상태(정보)를 주고 받는 모든 것을 의미한다. ** REST가 필요한 이유? ** 다양한 클라이언트를 이용해서 사용할 수 있고 통신 할 수 있기 때문에 (멀티 플랫폼) 분산 .. 2021. 10. 29. 16:26
누구나 설치하는 Mysql 우분투편 어제 AWS EC2 서버를 다시 만들면서 mySQL를 다시 설치하는 경우가 생겨 이렇게 기록합니다. apt-get install mysql-server # Y/n 이라는 문장이 보이면 Y를 넣고 엔터 mysql -u root -p # 패스워드 입력하는 창이 뜨면 그냥 빈 칸에 엔터를 눌러주세요 # SQL문으로 mysql초기 비밀번호 설정하기 select Host, User, authentication_string from user; # 비밀번호 1234로 변경 alter user 'root'@'localhost' identified with mysql_native_password by '1234'; FLUSH PRIVILEGES; exit # 그 후 다시 접속하기 mysql -u root -p 1234 .. 2021. 10. 25. 19:03
나의 첫 리눅스 - Gitlab으로 CI/CD 파이프라인 구축하기 - 1편 오늘 드디어 제 리눅스가 한 건 해냈습니다. 저는 현재 우분투 20.04환경에서 깃랩 서버를 돌리면서 깃랩 러너를 이용해 CI/CD환경을 구축해 이제 배포되는 파일을 AWS서버로 넘기려고 하는 과정에 있습니다. 문제는 지금 CI/CD파이프라인을 어떻게 활용해야되는지 모르는게 문제... 그럼 오늘은 깃랩을 이렇게 깃랩 러너라는 친구를 사용해서 CI/CD 파이프라인을 만들어 봅시다. 저는 현재 우분투 환경에서 깃랩러너를 이용해 CI/CD파이프라인을 만들었습니다. 1. 우분투 환경에서 깃랩 러너를 설치해보자! repository를 추가해줍니다! curl -L https://packages.gitlab.com/install/repositories/runner/gitlab-runner/script.deb.sh |.. 2021. 10. 16. 00:04
나의 첫 리눅스 - Try Except Else Finally 어제 생긴 오류를 오늘 Try Except Else Finally라는 파이썬 예외처리 함수를 호출해 해결했다. DB에 데이터를 집어 넣는 과정에서 DB는 Unique값을 가진 Column이 존재해 중복되는 값이 들어오면 바로 코드가 중지되는 오류가 발생해 그 오류를 Try Except 예외처리 과정을 통해 중지가 되는 것이 아닌 중복 된 값이 아닌 값만 저장 할 수 있도록 코드를 작성했습니다. 그래서 이 Try Except Else Finally 예외처리가 어떻게 작동하는지 짧게 작성 해보려고 한다. try: 예외(오류)가 날 수 있는 코드 except: 예외(오류) 발생 시 실행되는 코드 else: 예외(오류)가 없을 때 실행되는 코드 finally: 예외(오류) 상관없이 무조건 실행 되는 코드 제 코.. 2021. 10. 14. 00:07
반응형

"); wcs_do();