Skip to content

[테크니컬 라이팅] 지오(김준서) 미션 제출합니다.#1051

Open
giovannijunseokim wants to merge 6 commits intowoowacourse:giovannijunseokimfrom
giovannijunseokim:technical-writing
Open

[테크니컬 라이팅] 지오(김준서) 미션 제출합니다.#1051
giovannijunseokim wants to merge 6 commits intowoowacourse:giovannijunseokimfrom
giovannijunseokim:technical-writing

Conversation

@giovannijunseokim
Copy link

@giovannijunseokim giovannijunseokim commented Oct 14, 2025

마크다운 뷰어 를 통해 쉽게 확인하실 수 있습니다. 🙂

Comment on lines +3 to +7
## 1. 들어가며: 초기화, 미룰수록 이득이다?

소프트웨어 개발에서 [**초기화(Initialization)**](https://ko.wikipedia.org/wiki/%EC%B4%88%EA%B8%B0%ED%99%94_(%ED%94%84%EB%A1%9C%EA%B7%B8%EB%9E%98%EB%B0%8D))는 변수나 객체에 초기값을 할당해 사용할 준비를 마치는 필수 과정입니다.

하지만 모든 리소스를 애플리케이션 시작과 동시에 준비하는 것이 항상 최선은 아닙니다. 당장 필요하지 않은 리소스가 메모리를 차지하는 것은 비효율적입니다.

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

저는 들어가기를 읽으면서 코틀린 지연 초기화가 궁금한 개발자가 들어올 것으로 예상되는데, 예상 독자가 맞을까요?

Copy link
Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

예상 독자가 있으면 더욱 명확할 것 같네요. 추가했습니다! 👍

docs: 예상 독자 추가


### 2.3. 코드 가독성 관점

Kotlin의 가장 큰 장점 중 하나는 **Null 안전성(Null Safety)** 입니다. 하지만 모든 프로퍼티를 `Nullable`로 선언하고 매번 `?.`(Safe Call)이나 `!!`(Non-null asserted call)을 쓰면 코드 가독성이 떨어집니다.

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

가장 큰 장점 중 하나 보다는 가장 큰 장점은 혹은 장점 중 하나는은 어떨까요?

Copy link
Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

불필요한 설명을 제거해 간단히 해보았습니다. 👍

docs: 불필요한 부가 설명 제거

Comment on lines +145 to +146
- **메모리 효율성:** 스마트폰처럼 메모리가 제한적인 환경에서 쓰지도 않을 객체가 메모리를 점유하는 것은 큰 부담입니다. 지연 초기화는 필요한 객체만 메모리에 로드해 **가비지 컬렉터(GC, Garbage Collector: 더 이상 사용하지 않는 메모리를 자동으로 정리하는 기능)** 의 부담을 줄이고, `OutOfMemoryError` 발생 가능성을 낮춥니다.
- **초기 로딩 속도 개선:** 긴 로딩 시간은 사용자 이탈의 직접적인 원인입니다. 앱 아이콘을 탭하고 첫 화면과 상호작용하기까지 걸리는 시간(**TTI, Time To Interactive**)은 사용자 경험을 결정하는 핵심 지표입니다. 지연 초기화는 시작 단계에서 필수 작업에만 집중하게 해 TTI를 단축합니다.

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

위에서 언급된 "핵심 이점은 명확합니다..." 부분과 다소 중복되는 것 같아요!

Copy link
Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

중복 제거했습니다! 👍

docs: 불필요한 중복 제거


프로그래밍에서 '비싸다'는 것은 시간과 시스템 리소스(CPU, 메모리, 네트워크 등) 소모가 큰 작업을 의미합니다.

- **무거운 라이브러리 로딩:** 앱 실행 시 특정 기능에만 사용하는 수십 메가바이트(MB) 크기의 라이브러리를 미리 로딩하는 경우.

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

괄호 안에 영문 표기를 써주신 부분에 대한 기준이 궁금합니다! 메가바이트(MB), 밀리초(ms), 생성자(Constructor)같은 부분들은 생략해도 될 것 같아서요 👀

또한 다음 문장처럼 같은 단어에 대해 영문 표기를 여러 번 적어주신 부분들이 있는데, 단어별로 최초 한 번만 표기해주시면 더 깔끔할 것 같아요!

순환 참조(Circular Dependency) 문제 회피: 객체 A가 B를, 동시에 B가 A를 필요로 하는 순환 참조(Circular Dependency) 상황이 발생할 수 있습니다.

Copy link
Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

불필요한 영문 표기들을 제거했습니다. 👍

docs: 불필요한 영문 표기 제거

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants