코드 냄새 136 - 하위 클래스가 하나뿐인 클래스
TL;DR: Don't over-generalize
문제
솔루션
문맥
과거에 프로그래머들은 우리에게 변화를 위한 설계를 하라고 말했습니다.
요즘 우리는 과학적인 방법을 계속 따르고 있습니다.
중복을 발견할 때마다 제거합니다.
전에는 아닙니다.
인터페이스가 아니라 클래스가 아닙니다.
샘플 코드
잘못된
class Boss(object):
def __init__(self, name):
self.name = name
class GoodBoss(Boss):
def __init__(self, name):
super().__init__(name)
# This is actually a very classification example
# Bosses should be immutable but can change their mood
# with constructive feedback
오른쪽
class Boss(object):
def __init__(self, name):
self.name = name
# Bosses are concrete and can change mood
발각
[X] 자동
컴파일 시간에 이 오류를 추적할 수 있기 때문에 린터에서는 매우 쉽습니다.
예외
일부 프레임워크는 추상 클래스를 자리 표시자로 만들어 모델을 구축합니다.
하위 분류는 우리의 첫 번째 옵션이 되어서는 안 됩니다.
더 우아한 해결책은 덜 결합되어 있기 때문에 선언하는 것입니다.
태그
잘못된
class Boss(object):
def __init__(self, name):
self.name = name
class GoodBoss(Boss):
def __init__(self, name):
super().__init__(name)
# This is actually a very classification example
# Bosses should be immutable but can change their mood
# with constructive feedback
오른쪽
class Boss(object):
def __init__(self, name):
self.name = name
# Bosses are concrete and can change mood
발각
[X] 자동
컴파일 시간에 이 오류를 추적할 수 있기 때문에 린터에서는 매우 쉽습니다.
예외
일부 프레임워크는 추상 클래스를 자리 표시자로 만들어 모델을 구축합니다.
하위 분류는 우리의 첫 번째 옵션이 되어서는 안 됩니다.
더 우아한 해결책은 덜 결합되어 있기 때문에 선언하는 것입니다.
태그
일부 프레임워크는 추상 클래스를 자리 표시자로 만들어 모델을 구축합니다.
하위 분류는 우리의 첫 번째 옵션이 되어서는 안 됩니다.
더 우아한 해결책은 덜 결합되어 있기 때문에 선언하는 것입니다.
태그
처지
코드 냄새 114 - 빈 클래스
Maxi Contieri ・ 2월 12일 ・ 2분 읽기
#oop
#tutorial
#cleancode
#webdev
코드 냄새 11 - 코드 재사용을 위한 하위 분류
Maxi Contieri ・ 2020년 10월 30일 ・ 2분 읽기
#oop
#codenewbie
#tutorial
Code Smell 43 - 하위 분류된 구체적인 클래스
Maxi Contieri ・ 12월 5일 '20 ・ 1분 읽기
#oop
#codenewbie
#tutorial
#webdev
코드 냄새 92 - 격리된 하위 클래스 이름
Maxi Contieri ・ 2021년 10월 11일 ・ 2분 읽기
#poo
#webdev
#python
#javascript
Code Smell 135 - 단 한 번의 구현으로 인터페이스
Maxi Contieri ・ 5월 26일 ・ 2분 읽기
#java
#programming
#webdev
#tutorial
결론
우리는 추상화를 기다려야 하며 창의적이거나 사변적이지 않아야 합니다.
학점
Unsplash의 Benjamin Davies 님의 사진
Writing a class without its contract would be similar to producing an engineering component (electrical circuit, VLSI (Very Large Scale Integration) chip, bridge, engine...) without a spec. No professional engineer would even consider the idea.
버트런드 메이어
소프트웨어 엔지니어링 좋은 인용구
Maxi Contieri ・ 12월 28일 '20 ・ 13분 읽기
#codenewbie
#programming
#quotes
#software
이 기사는 CodeSmell 시리즈의 일부입니다.
코드에서 냄새 나는 부분을 찾는 방법
Maxi Contieri ・ 2021년 5월 21일 ・ 7분 읽기
#codenewbie
#tutorial
#codequality
#beginners
Reference
이 문제에 관하여(코드 냄새 136 - 하위 클래스가 하나뿐인 클래스), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다
https://dev.to/mcsee/code-smell-136-classes-with-just-one-subclass-1h18
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념
(Collection and Share based on the CC Protocol.)
코드 냄새 114 - 빈 클래스
Maxi Contieri ・ 2월 12일 ・ 2분 읽기
코드 냄새 11 - 코드 재사용을 위한 하위 분류
Maxi Contieri ・ 2020년 10월 30일 ・ 2분 읽기
Code Smell 43 - 하위 분류된 구체적인 클래스
Maxi Contieri ・ 12월 5일 '20 ・ 1분 읽기
코드 냄새 92 - 격리된 하위 클래스 이름
Maxi Contieri ・ 2021년 10월 11일 ・ 2분 읽기
Code Smell 135 - 단 한 번의 구현으로 인터페이스
Maxi Contieri ・ 5월 26일 ・ 2분 읽기
우리는 추상화를 기다려야 하며 창의적이거나 사변적이지 않아야 합니다.
학점
Unsplash의 Benjamin Davies 님의 사진
Writing a class without its contract would be similar to producing an engineering component (electrical circuit, VLSI (Very Large Scale Integration) chip, bridge, engine...) without a spec. No professional engineer would even consider the idea.
버트런드 메이어
소프트웨어 엔지니어링 좋은 인용구
Maxi Contieri ・ 12월 28일 '20 ・ 13분 읽기
#codenewbie
#programming
#quotes
#software
이 기사는 CodeSmell 시리즈의 일부입니다.
코드에서 냄새 나는 부분을 찾는 방법
Maxi Contieri ・ 2021년 5월 21일 ・ 7분 읽기
#codenewbie
#tutorial
#codequality
#beginners
Reference
이 문제에 관하여(코드 냄새 136 - 하위 클래스가 하나뿐인 클래스), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다
https://dev.to/mcsee/code-smell-136-classes-with-just-one-subclass-1h18
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념
(Collection and Share based on the CC Protocol.)
Writing a class without its contract would be similar to producing an engineering component (electrical circuit, VLSI (Very Large Scale Integration) chip, bridge, engine...) without a spec. No professional engineer would even consider the idea.
소프트웨어 엔지니어링 좋은 인용구
Maxi Contieri ・ 12월 28일 '20 ・ 13분 읽기
코드에서 냄새 나는 부분을 찾는 방법
Maxi Contieri ・ 2021년 5월 21일 ・ 7분 읽기
Reference
이 문제에 관하여(코드 냄새 136 - 하위 클래스가 하나뿐인 클래스), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://dev.to/mcsee/code-smell-136-classes-with-just-one-subclass-1h18텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)