전체 글

기록하자, 머리는 생각하는 곳이지 저장장치가 아니다.
· Django/DRF
프로젝트 소개DRF를 독창적이고 개인화된 설정으로, 처음 Django를 접할 때 사용하는 기본적인 설정에 관한 내용은 공식 문서에 많지만 막상 프로젝트를 진행하기 전에는 파일 구조부터 공식 문서의 내용과는 많이 달라졌고, 이후 프로젝트에서 initialize_django를 복사해서 편리하기 진행할 수 있도록 하는 것을 목표로 했다. 기술 스택Python 3.11Django 5.0.4Django REST Framework 3.15.1CommunicationGithbNoctionDiscord 구현 기능AUTH: JWT를 이용하여 인증 및 권한 관리BOARD: 기본적인 CRUD환경 변수 관리: Django-environ 사용보안적인 요소를 고려하여 환경 변수를 효율적으로 관리민감한 정보(예: 데이터베이스 비밀..
· Theory
개발을 하면서 Print를 찍으면서 디버깅하고 제대로 된 배포도 해본 적이 없어서 로그가 중요하단걸 알지만 로그를 재대로 다루어 본 적이 없었고 필요성도 잘 느끼지 못했다. 프로젝트를 하면서 로그 기능을 사용해보기로 했고, 공부를 했는데 공부를 하면 할수록 시스템에서 로그는 굉장히 중요하고 제대로 관리해야 한다는 것을 느끼게 되었다.  로그가 중요하다고 이것저것 막 로그를 남기는 것은 별로 좋아보이지 않았다. 실제로 console에 debug 레벨의 알람을 설정해 두었는데 실행 경로를 탐색하고 코드가 어떻게 돌아가는지 확인하는 데는 좋았지만, 불필요하게 많은 debug 알람으로 정작 중요한 에러들에 관련된 알람들을 잘 볼 수 없었다.  반대로 예외 상황에 대해서 모두 ERROR레벨로 처리하게 되니깐, 치..
· Django/DRF
과거 프로젝트에서 클래스별 공통되는 부분을 따로 BaseClass로 만들어서 상속받아서 사용했던 기억이 있는데, BaseClass를 만들어 관리하니 고정된 계층, 즉 상속으로 인해 유연성이 떨어지는 단점이 있었고 조금만 복잡해지면 스파게티 코드가 될것같다는 생각이 들었었는데 이번에 Mixin이라는 개념에 대해서 자세히 공부하면서 얼마나 멍청하게 구현했었는지 생각하게 되었다. Mixin은 클래스 기반 뷰에서 자주 사용되는 개념으로, 다중 상속을 통해 재사용 가능한 코드를 작성하고 클래스 간에 공통 기능을 공유할 수 있도록 한다. Mixin은 단독으로 사용되기보단 다른 뷰 클래스와 결합하여 사용된다. 이글에서는 Logging Mixin을 이용해서 CRUD Mixin에 믹스인을 적용시키고 View가 처리될때마..
· Django/DRF
웹 애플리케이션 개발에서 인증은 매우 중요한 부분이고, JWT는 웹과 API에서 인증 및 권한 부여를 효율적이고 안전하게 관리해주는 매우 유용한 인증 기법이다. 처음 JWT에 대해서 공부하고 적용시키는데 많은 검색과 고민을 했고 여러가지 레퍼런스들을 참고하면서 진행하였는데, 좋은 레퍼런스를 찾았으나 재대로 이해하기 어려워서 정리하면서 이해하고자 작성하게 되었다. 기본적인 설정은 아래의 블로그 글을 참고하여 적용시켰다. Django-Rest-Framework(DRF)로 JWT 기반 Authentication 세팅하기(with simplejwt) — 초기 환경 세팅(1)앞서 포스팅했던 소셜 로그인 구현에서 생각보다 많은 개발자 분들이 봐주신 덕분에 상위노출도 되어 기뻤지만, 이전 코드를 다시 보니 많이 부족..
· GIT
장고 프로젝트에서 코드의 품질을 유지하고 코드 검사를 자동화하여 실수를 줄 일 수 있는 방법 중 하나인 Pre-commit에  PEP8 스타일 가이드를 검사하는 pre-commit의 설정과 pre-commit의 사용법에 대해서 작성해 보려고 한다. Pre-commit 이란?pre-commit는 Git에서 훅을 관리하고 실행하기 위한 프레임 워크이다. 코드가 커밋되기 전에 자동으로 다양한 검사를 수행하여 코드 품질을 유지하고, 실수를 줄일 수 있도록 도와준다. 예를 들어, 코드 스타일 검사, 정적 분석, 테스트 실행 등을 자동으로 수행할 수 있게 도와준다.  왜 필요할까?프로젝트의 코드 품질을 유지하는 것은 매우 중요하다. 하지만 스타일 가이드만 예로 들어도 적절한 컨벤션과 스타일 가이드를 매번 확인하기..
Jong_seoung
Today_developStory