Code Smell 161 - 추상/최종/정의되지 않은 클래스
9118 단어 beginnersjavaprogrammingwebdev
TL;DR: If your language has the right tool, your classes should be either abstract or final.
문제
솔루션
문맥
계층 구조 및 구성 관리는 훌륭한 소프트웨어 디자이너의 주요 작업입니다.
계층 구조를 건강하게 유지하는 것은 응집력을 선호하고 피하는 데 중요합니다.
샘플 코드
잘못된
public class Vehicle
{
// class is not a leaf. Therefore it should be abstract
//an abstract method that only declares, but does not define the start
//functionality because each vehicle uses a different starting mechanism
abstract void start();
}
public class Car extends Vehicle
{
// class is leaf. Therefore it should be final
}
public class Motorcycle extends Vehicle
{
// class is leaf. Therefore it should be final
}
오른쪽
abstract public class Vehicle
{
// class is not a leaf. Therefore it is be abstract
//an abstract method that only declares, but does not define the start
//functionality because each vehicle uses a different starting mechanism
abstract void start();
}
final public class Car extends Vehicle
{
// class is leaf. Therefore it is final
}
final public class Motorcycle extends Vehicle
{
// class is leaf. Therefore it is final
}
발각
[X] 자동
이는 정적 분석에 의해 시행되기 때문에 대부분의 사용 가능한 도구로는 수행할 수 없습니다.
태그
잘못된
public class Vehicle
{
// class is not a leaf. Therefore it should be abstract
//an abstract method that only declares, but does not define the start
//functionality because each vehicle uses a different starting mechanism
abstract void start();
}
public class Car extends Vehicle
{
// class is leaf. Therefore it should be final
}
public class Motorcycle extends Vehicle
{
// class is leaf. Therefore it should be final
}
오른쪽
abstract public class Vehicle
{
// class is not a leaf. Therefore it is be abstract
//an abstract method that only declares, but does not define the start
//functionality because each vehicle uses a different starting mechanism
abstract void start();
}
final public class Car extends Vehicle
{
// class is leaf. Therefore it is final
}
final public class Motorcycle extends Vehicle
{
// class is leaf. Therefore it is final
}
발각
[X] 자동
이는 정적 분석에 의해 시행되기 때문에 대부분의 사용 가능한 도구로는 수행할 수 없습니다.
태그
결론
우리는 수업을 되돌아보고 추상 또는 최종으로 자격을 부여하기 시작해야 합니다.
하나가 다른 하나를 하위 분류하는 두 개의 구체적인 클래스에 대한 유효한 사례가 없습니다.
처지
코드 냄새 11 - 코드 재사용을 위한 하위 분류
Maxi Contieri ・ 2020년 10월 30일 ・ 2분 읽기
#oop
#codenewbie
#tutorial
코드 냄새 136 - 하위 클래스가 하나뿐인 클래스
Maxi Contieri ・ 5월 28일 ・ 2분 읽기
코드 냄새 37 - 보호된 속성
Maxi Contieri ・ 2020년 11월 29일 ・ 2분 읽기
#oop
#webdev
#tutorial
#codenewbie
코드 냄새 58 - 요요 문제
Maxi Contieri ・ 2021년 1월 24일 ・ 2분 읽기
#codenewbie
#codesmell
#tutorial
#webdev
더 많은 정보
결합: 유일한 소프트웨어 설계 문제
Maxi Contieri ・ 2021년 2월 6일 ・ 5분 읽기
#webdev
#programming
#oop
#tutorial
Deep Subclasses
부인 성명
코드 냄새는 그냥 내 .
학점
사진 제공: William Bossen on Unsplash
When the final design seems too simple for the amount of work you've put in, then you know you're done.
브래디 클라크
소프트웨어 엔지니어링 좋은 인용구
Maxi Contieri ・ 12월 28일 '20 ・ 13분 읽기
#codenewbie
#programming
#quotes
#software
이 기사는 CodeSmell 시리즈의 일부입니다.
코드에서 냄새 나는 부분을 찾는 방법
Maxi Contieri ・ 2021년 5월 21일 ・ 7분 읽기
#codenewbie
#tutorial
#codequality
#beginners
Reference
이 문제에 관하여(Code Smell 161 - 추상/최종/정의되지 않은 클래스), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다
https://dev.to/mcsee/code-smell-161-abstractfinalundefined-classes-70c
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념
(Collection and Share based on the CC Protocol.)
코드 냄새 11 - 코드 재사용을 위한 하위 분류
Maxi Contieri ・ 2020년 10월 30일 ・ 2분 읽기
#oop
#codenewbie
#tutorial
코드 냄새 136 - 하위 클래스가 하나뿐인 클래스
Maxi Contieri ・ 5월 28일 ・ 2분 읽기
코드 냄새 37 - 보호된 속성
Maxi Contieri ・ 2020년 11월 29일 ・ 2분 읽기
#oop
#webdev
#tutorial
#codenewbie
코드 냄새 58 - 요요 문제
Maxi Contieri ・ 2021년 1월 24일 ・ 2분 읽기
#codenewbie
#codesmell
#tutorial
#webdev
더 많은 정보
결합: 유일한 소프트웨어 설계 문제
Maxi Contieri ・ 2021년 2월 6일 ・ 5분 읽기
#webdev
#programming
#oop
#tutorial
Deep Subclasses
부인 성명
코드 냄새는 그냥 내 .
학점
사진 제공: William Bossen on Unsplash
When the final design seems too simple for the amount of work you've put in, then you know you're done.
브래디 클라크
소프트웨어 엔지니어링 좋은 인용구
Maxi Contieri ・ 12월 28일 '20 ・ 13분 읽기
#codenewbie
#programming
#quotes
#software
이 기사는 CodeSmell 시리즈의 일부입니다.
코드에서 냄새 나는 부분을 찾는 방법
Maxi Contieri ・ 2021년 5월 21일 ・ 7분 읽기
#codenewbie
#tutorial
#codequality
#beginners
Reference
이 문제에 관하여(Code Smell 161 - 추상/최종/정의되지 않은 클래스), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다
https://dev.to/mcsee/code-smell-161-abstractfinalundefined-classes-70c
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념
(Collection and Share based on the CC Protocol.)
결합: 유일한 소프트웨어 설계 문제
Maxi Contieri ・ 2021년 2월 6일 ・ 5분 읽기
#webdev
#programming
#oop
#tutorial
코드 냄새는 그냥 내 .
학점
사진 제공: William Bossen on Unsplash
When the final design seems too simple for the amount of work you've put in, then you know you're done.
브래디 클라크
소프트웨어 엔지니어링 좋은 인용구
Maxi Contieri ・ 12월 28일 '20 ・ 13분 읽기
#codenewbie
#programming
#quotes
#software
이 기사는 CodeSmell 시리즈의 일부입니다.
코드에서 냄새 나는 부분을 찾는 방법
Maxi Contieri ・ 2021년 5월 21일 ・ 7분 읽기
#codenewbie
#tutorial
#codequality
#beginners
Reference
이 문제에 관하여(Code Smell 161 - 추상/최종/정의되지 않은 클래스), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다
https://dev.to/mcsee/code-smell-161-abstractfinalundefined-classes-70c
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념
(Collection and Share based on the CC Protocol.)
When the final design seems too simple for the amount of work you've put in, then you know you're done.
소프트웨어 엔지니어링 좋은 인용구
Maxi Contieri ・ 12월 28일 '20 ・ 13분 읽기
#codenewbie
#programming
#quotes
#software
코드에서 냄새 나는 부분을 찾는 방법
Maxi Contieri ・ 2021년 5월 21일 ・ 7분 읽기
#codenewbie
#tutorial
#codequality
#beginners
Reference
이 문제에 관하여(Code Smell 161 - 추상/최종/정의되지 않은 클래스), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://dev.to/mcsee/code-smell-161-abstractfinalundefined-classes-70c텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)