OCP(개방-폐쇄 원칙)란 무엇인가?개방-폐쇄 원칙은 "소프트웨어 개체(클래스, 모듈, 함수 등)는 확장에 대해서는 개방되어야 하지만, 수정에 대해서는 폐쇄되어야 한다"는 원칙이다. 쉽게 말해, 새로운 기능을 추가할 때는 기존 코드를 변경하지 않고 확장할 수 있어야 한다는 의미를 갖고 있다. OCP를 지키면 얻는 이점:유지보수성 향상: 기능 추가 시 기존 코드에 대한 변경이 적어 버그 발생 가능성이 줄어든다.재사용성 증가: 잘 정의된 추상화를 통해 여러 곳에서 재사용 가능한 모듈을 만들 수 있다.유연성 증대: 시스템의 변경에 유연하게 대응할 수 있다.그런데 이 앞서 설명한 OCP 원칙을 지키는 건 DI 없이 불가능하다. OCP 원칙을 지키기 위해서는 왜 DI가 필수적인지 Dart 코드를 통해 알아본다.D..
개요본격적으로 플러터를 학습하기 전에, 이번 포스팅에서 기본적인 플러터의 예제 어플리케이션의 코드를 살펴본다.Symbols다음은 flutter run 명령어로 실행되는 기본 엔트리포인트 lib/main.dart의 심볼 목록이다.dart의 엔트리포인트 main 함수, 그리고 다음의 3가지 클래스로 이루어져있다.MyAppMyHomePage_MyHomePageStatemainvoid main() { runApp(const MyApp());}runApp() 함수의 인자로 MyApp()을 실행한다.Dart의 상수 생성자 기능을 이용한다.상수 생성자를 이용하려면 조건이 필요한데, 모든 필드가 final로 초기화 되어야한다.해당 내용은 여기를 참고했다.객체가 한번 빌드되면 어플리케이션 생명주기동안 동일하게 유지되므..