본문 바로가기

개발24

Flask 블로그 제작기 (0) - 왜 Flask인가? 플라스크로 서비스되던 구버전 블로그에서 옮겨왔습니다. 개발자라면 모름지기 개발 블로그, devlog 하나 정도는 운영해야 제맛. 원래 panda5176.github.io 라는 GitHub pages에서 제공하는 정적인, 상호작용없는 블로그를 운영하다가, 회사에서 웹개발을 조금 하게 되기도 했고, 원래 블로그 디자인에 한계를 느껴서 이 참에 아예 동적인 블로그를 운영해보기로 했습니다. C++를 조금 할 줄 알고 js를 배우긴 했지만, 그래도 근본적으로 python 개발자인 나는 역시 python으로 블로그를 개발해야겠다고 생각했습니다. 그 이유로는 몇 가지가 있는데, 회사에서 python으로 웹개발을 하기 시작했기 때문에 공부에 시너지가 난다. 예전에 취미로 django와 flask 등 python web.. 2022. 9. 13.
Python logging & logger 모듈 회사에서 일하다가 logging이 부족한 것 같아서 공부했습니다. logging을 그냥 사용하면 logging.debug, logging.info, logging.warning, logging.error, logging.critical만 반복적으로 사용하게 됩니다. 하지만 logging.StreamHandler, logging.FileHandler, logging.getLogger, logging.Formatter를 잘 쓰면 전혀 다른 편-안함을 느낄 수 있었습니다. 예시는 아래와 같습니다. class BlahBlah: def __init__(self, logger): self.logger = logger def say_blah(self, something: str): logger.debug(f"say .. 2022. 9. 13.
Pyreverse, Python 다이어그램 diagram 패키지 소프트웨어공학에서 UML (Unified Modeling Language) 파트를 보면, 제일 핵심 파트는 역시 클래스 다이어그램 (class diagram) 파트입니다. 하지만 PPT로 다이어그램 하나하나 짜다보면 현타가 오기 마련ㅠㅠ 그럴 때 사용할만한 패키지가 Pyreverse입니다. 얘는 Pylint, code 맞춤법 프로그램에 내장되어 있어서 독립된 document도 없는데, 한국어로 써져있는 블로그도 하나? 인가 있었던 것 같습니다. (물론 내가 깔끔하게 사용법 정리를 할 마음은 없지만.) 그래도 간단하게 사용법을 정리하자면, 우선 저는 pylint를 vscode에서 extension으로 설치하거나, $ pip install pyreverse 로 설치했습니다. 간단한 사용법은 $ pyrever.. 2022. 9. 13.
Radon, Python code metrics 평가 도구 https://radon.readthedocs.io/en/latest/ 파이썬 코드를 짜고 프로그램을 만들다 보면, 과연 내가 프로그램을 잘 만들었나, 고민이 되는 순간이 많습니다. PEP8에 따라서 열심히 만들었다지만, 그래도 이쁜 코드랑 튼튼한 코드는 다르니까 정량적으로 내 프로그램의 잘 만든 정도를 평가하고 싶어집니다. 보통 시간복잡도 등을 이용해서 열심히 코드 하나하나 분석을 해서 코드 복잡도를 평가하는데, 이럴 때 사용하는 평가 방법을 code metrics 라고 합니다. 암튼 이 code metrics를 python code 대상으로 평가해주는 package가 바로 제일 위 링크의 Radon. Radon에서는 아래 4가지 방법으로 코드를 평가하는데요, Raw Metics: LOC, 주석 등 고.. 2022. 9. 13.