Day 24 - TIL
심화주차 과제 구현하기! + 초기화 Error
Day 24 - TIL
📘 Day 24 - Today I Learned
🔍 Today’s Error or Issue
Error : 클래스 내부에 상수 배열을 선언하고 새로운 변수배열을 만들어서 상수배열을 참조해서 초기화를 하려고하니까 아래처럼 에러가 떴다.
1 Cannot use instance member 'numbers' within property initializer; property initializers run before 'self' is available
위 코드는 Swift에서 인스턴스 멤버를 사용하기 전에 초기화 순서를 어긴 경우에 뜨게 된다.
🛠️ Troubleshooting
2가지 해결 방법이 있었는데, init()에서 초기화를 하거나 lazy를 사용하여 초기화가 가능한데 lazy를 사용하여 초기화를 해주었다.
결론: 클래스 안에서는 다른 인스턴스 프로퍼티를 참조하려면 init 안에서 하거나 lazy를 써야 한다!
📝 Learning Summary
오늘은 강의를 다 듣고 심화주차의 개인과제에서 필수문제 1번을 진행 하였다. 그리고 나만의 구조를 위래 아키텍처 패턴을 짜줬다.
📘 Lesson Learned
클래스 내부에서 프로퍼티 간 의존 관계가 있을 때는 초기화 시점을 반드시 고려해야 한다는 걸 다시 한 번 느꼈다.
init
이나 lazy
를 활용한 초기화 방식은 코드의 안정성을 높이고, 예상치 못한 런타임 오류를 방지하는 데 중요하다.
또한, 단순히 작동하는 코드를 짜는 것이 아니라, 구조적으로 확장 가능하고 명확한 책임 분리를 가진 아키텍처를 고민하는 것이 얼마나 중요한지 실감했다.
This post is licensed under CC BY 4.0 by the author.