핌이의 일상

Programming/Python 3

좋은 모듈, 나쁜 모듈 (결합도와 응집도 / 시간적, 우연적 응집도의 차이)

나쁜 모듈 : 결합도가 강함. 내부에 직접 영향 1. 내용 결합도 class PaymentProcessor: def process_payment(self, amount): #여기서는 결제 처리에 관련된 코드가 포함되어 있음 pass class Order: def __init__(self, payment_processor def checkout(slef, amount): #결제 프로세서의 메서드로 직접 호출하여 결합도가 높음 self.payment_processor.process_payment(amount) ==> 만약 Payment Processor의 구현이 변경되면 Order 클래스도 변경해야 할 가능성이 높다. ==> 해결 : 의존성 주입(Dependency Injection)과 같은 설계패턴을 사용..

Programming/Python 2024.04.08

Python | 1. 번호 입력받고 인덱싱 값 출력하기

def osi(user): osi7 = ['Physical(물리)', 'Datalink(데이터링크)', 'Network(네트워크)', 'Transport(전송)', 'Session(세션)', 'Presentation(표현)', 'Application(응용)'] if 1 > user > 7: print("The OSI Model has only 7 layers.") else: print(osi7[user-1]) def execute(): osi(int(input("Enter a number between 1 and 7: "))) print("The program has ended.") exit() try: execute() except ValueError: print("Please enter a valid..

Programming/Python 2024.02.26
반응형