본문 바로가기
  • 시 쓰는 개발자

개발 방법론3

개발 마인드 약간의 뇌피셜과 들은 내용들을 정리해두고 있습니다. 서비스의 확장을(AWS 등) 너무 고려한 나머지... 유저가 무엇을 좋아하는지, 어떻게 해야 유저가 편해지는지를 생각하지 못하는 경우가 많다. 기능을 만들고 유저 생각이 먼저다. 확장은 나중에 행복한 고민으로 남겨둔다. 개발자가 불편해야 사용자가 편리하다. 로직이 복잡하다고 꼼수부리면 서비스가 망한다. 2024. 3. 16.
SOLID 5원칙 좋은 객체 지향 설계의 5가지 원칙 SRP : 단일 책임 원칙(single responsibility principle) OCP : 개방-폐쇄 원칙 (Open/closed principle) LSP : 리스코프 치환 원칙 (Liskov substitution principle) ISP : 인터페이스 분리 원칙 (Interface segregation principle) DIP : 의존관계 역전 원칙 (Dependency inversion principle) SRP 단일 책임 원칙(single responsibility principle) 한 클래스는 하나의 책임만 가져야 한다. 좋은 설계의 기준은 "변경"이다. 변경했을 때 파급이 적으면 SRP를 잘 따른 것. 계층이 잘 나뉘어져 있는 것도 SRP를 잘 .. 2024. 3. 11.
TDD란? TDD (Test Driven Development) TDD란 "테스트 주도 개발"이라는 소프트웨어 개발 방법론 중 하나이다. 스프링을 공부하는 사람이라면 테스트 코드에 대해서 한번쯤 들어봤을 것이다. 개발 후 테스트가 아니라, 테스트코드를 먼저 작성하고 이후에 개발하는 스타일이다. (※ 다만 실제 회사에 적용하는 것은 회사마다 천차만별이며, 주위에 물어보아도 효율적이지 못하다는 이유로 도입하지 않았다는 의견이 많았다.) TDD를 이용한 개발 테스트 케이스 작성 : 기능 구현 없이 테스트 코드를 작성한다. 이때, 최대한 빨리 테스트를 통과하기 위해 실패하는 테스트 코드를 작성할 수 있다. 통과하는 케이스 작성 : 테스트 코드 통과를 위한 실제 기능을 구현한다. 리팩토링 : 리팩토링을 통해 성능이나 재사용.. 2024. 3. 9.