Skip to content

08_SOLID_OCP(OpenClose_Principle) indentation 수정 필요 #1

Description

@yobi213

범우님 오랜만입니다. ㅋㅋ
블로그 잘 정리해주셔서 참고 많이하고 있어요!! 감사합니다.
책이랑 다른 코드도 작성해주셔서 따라 쳐보다가 잘못된 부분 있어서 이슈남겨요.

class GradeMessageClassification():
    """Grade에 따른 메세지 분류 클래스"""
    def __init__(self, data):
        self.data = data
        
    def classification(self):
        for grade_message_cls in Message.__subclasses__():
            print(grade_message_cls)
            try:
                if grade_message_cls.is_collect_grade_message(self.data):
                    return grade_message_cls(self.data)
            except KeyError:
                continue
                
        return DefaultGradeMessage(self.data)

return DefaultGradeMessage(self.data) 부분이 for문 안에 들어가있는데 위 코드 처럼 나와 있어야 할 것 같아요.
상속 받은 클래스들을 True가 나올 때 까지 다 체크하고 없으면 DefaultGradeMessage로 가야 해서요~~

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions