만쥬의 개발일기
article thumbnail
[TDD] 18장 ~ 21장
📖BOOK/📙TDD 2023. 9. 4. 16:15

2부 xUnit이란? 이 책의 저자 켄트 백이 고안한 프레임워크인 Sunit으로부터 기능과 구조를 착안한, unit testing framework를 통틀어 칭하는 명칭이다. 파생상품으로는 Junit, Nnuit, xUnit.net 등이 있다. 18장 xUnit으로 가는 첫걸음 2부의 주제 TDD를 통해 실제 소프트웨어를 만드는 발전된 예제 자기 참조 프로그래밍에 대한 전산학 실습 이번 장에서 할 일 테스트 프레임워크를 테스트 주도 개발로 만들기. 테스트 메서드 호출하기 먼저 setUp 호출하기 나중에 tearDown 호출하기 테스트 메서드가 실패하더라도 tearDown 호출하기 여러 개의 테스트 실행하기 수집된 결과를 출력하기 테스트 메서드가 호출되면 true를 반환하는 원시테스트 작성 책에서는 tes..

[MySql]Error occurred while executing SQL: (1366, "Incorrect string value: ...)
🛠️TOOL/🐬Mysql 2023. 9. 1. 16:28

mysql 관련 쿼리 작성 중 아무리 봐도 오류가 없는데 , 테이블에 데이터가 들어가지 않는 문제가 생겼었다. 이유는 테이블 설정을 utf8로 해주지 않아서였는데, 데이터 베이스를 여는 과정에서 return pymysql.connect( host='localhost', user='root', password=password, charset='utf8mb4') 다음과 같이 utf8mb4로 설정해주었기에 괜찮을 줄 알았다. 하지만 데이터베이스 뿐만 아니라 테이블의 charset 또한 utf8로 설정해주어야 한다는 것..! ALTER TABLE (테이블명) convert to charset utf8; mysql 콘솔에서 다음 명령어를 통해 변경을 해주자, 정상적으로 쿼리가 실행되고 데이터가 삽입되었다.

article thumbnail
[Vscode/PYTHON] - 파이썬 프로젝트 디버깅 시에 모듈을 참조하지 못하는 문제
🛠️TOOL/🆚VSCODE 2023. 9. 1. 16:19

프로젝트 진행 중 분명히 라이브러리를 설치하고 , vscode에서 디버깅을 시도했는데 모듈을 참조하지 못하는 문제가 발생했다. 분명히 잘 됐었는데 싶은 마음에 열심히 원인을 분석하다가 , 이유를 보아하니 이전에 dataclasses 모듈에 대한 오류가 생겨 파이썬 버전을 기존 3.8를 사용하던 가상환경에서, 3.6으로 낮춘 가상환경을 새로 만들어 사용중이었다. 따라서 vscode 내에서 인터프리터 또한 해당 가상환경에 설치된 인터프리터를 사용해야 했던 것이다. vscode에서 ctrl+shift+p 이후 다음 명령을 검색한다. 이후 인터프리터로 내가 사용중인 가상환경을 선택해주자. 나는 현재 기본, python ps용 , 그리고 프로젝트용 가상환경 3가지를 돌려가며 사용중이다.

article thumbnail
[Python / Trouble Shooting] - pymysql 등 파이썬 모듈이 import 안되는 문제

프로젝트를 진행하던 중 pymysql 모듈이 분명히 설치되어 있음에도 불구하고, import하지 못하는 이슈가 있었다. pip list 명령어를 통해 설치 되어있음을 확인할 수 있었다. 해결법 1 검색 결과, pip가 아닌 apt-get을 통해 설치하여 해결할 수 있었다. pip는 파이썬 패키지 관리 도구이고, apt-get은 Debian 계열의 Linux(Ubuntu등) 에서 사용하는 시스템 패키지 관리 도구이다. pip로 설치했을때 pymysql이 작동 안하는 이유는 잘 모르겠지만, 더 상위 계층 패키지 관리 도구를 사용해야 정상 작동하는 것이 아닌가 싶다. 모듈은 다음 명령어를 통해 설치 가능하다. sudo apt-get install python3-pymysql 해결법 2 또 다시 이 에러가 발생..

article thumbnail
Vscode python 실행 및 디버깅 안될 때
🛠️TOOL/🆚VSCODE 2023. 8. 29. 16:16

Vscode에서 python 파일을 실행하거나 디버깅 모드를 실행할 때 디버거 창이 잠깐 뜨고 아무 일도 일어나지 않는 버그를 겪었다. 이는 vscode python extension의 최신버전 문제라고 한다. Python Extension ➡️ Install Another Version으로 2022.8.1 버전으로 다운그레이드 해준다. 정상 작동! 출처: https://jlog1016.tistory.com/106

article thumbnail
Intellij 와 VsCode 단축키 비교 표
🛠️TOOL/🆚VSCODE 2023. 8. 13. 22:08

ide를 vscode와 Intellij를 혼용해서 쓰다보니 단축키가 헷갈리는 경우가 종종 있다. 그때 보기 좋은 표. intellij vscode .. alt + j ctrl + d 같은 코드 중복 선택 및 수정 shift + f10 이전 실행 재실행

article thumbnail
[클린 아키텍쳐] - 5장 ~ 11장 정리

클린 아키텍쳐 5장 ****객체 지향(Objected - Oriented)의 본질은 무엇인가?**** 캡슐화? 객체 지향 언어는 데이터와 함수를 쉽고 효과적으로 캡슐화하는 방법을 제공한다. 이를 통해 데이터와 함수가 응집력 있게 구성된 집단을 서로 구분 짓는 선을 그을 수 있다. 구분선 바깐에서 데이터는 은닉되고, 일부 함수만이 노출된다. c언어에서도 데이터 구조와 함수를 헤더파일(노출부)에 선언하고, 구현 파일(은닉부)에서 구현하는 방식으로 캡슐화를 지킬 수 있다. 상속화? 객체 지향 언어는 캡슐화를 강제하지 않지만, 상속은 확실히 제공한다. C언어에서는 상속을 흉내낼 수 있을 뿐, 상속의 기능을 제공하진 않았따. 다형성? 다형성은 기존에 존재하던 함수 포인터를 응용한 것이다. 다형성의 매력은 , 의존..

article thumbnail
[TDD] - 1장 ~ 3장
📖BOOK/📙TDD 2023. 8. 3. 13:03

들어가는 장 권장하는 TDD 훈련 방법 간단하고 쉬운 문제들을 TDD로 시도한다. 가능하면 전에 접하고, 프로그래밍해본 문제가 좋다. 초록 막대 주기(이전 초록 막대와 다음 초록 막대 사이의 간격)는 가능하면 짧도록 한다. 초록 막대 주기의 최대 시간을 정하고, 이를 초과하면 이전 초록 막대 상태로 돌리고 새로 시작한다. '진짜로 만들기 전까지만 가짜로 구현하기' 를 적극적으로 사용하려고 노력한다. 같은 문제를 여러번풀어본다. 초기에는 리팩토링 툴을 사용하지 않는 것이 좋다. 개발을 할 때 하항상 다음 두가지 법칙을 따른다. 어떤 코드건 작성하기 전에 실패하는자동화된 테스트를 작성할 것 중복을 제거할 것 뱅크 샐러드 개발자님과의 만남 최근 실제로 사내 대부분의 IOS 사업부에서 사용할 스위..