일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | |||||
3 | 4 | 5 | 6 | 7 | 8 | 9 |
10 | 11 | 12 | 13 | 14 | 15 | 16 |
17 | 18 | 19 | 20 | 21 | 22 | 23 |
24 | 25 | 26 | 27 | 28 | 29 | 30 |
Tags
- Android
- Di
- Room
- Jetpack
- Observable
- dagger2
- mock
- 디자인패턴
- UnitTest
- 코딩테스트
- git
- 공격적 프로그래밍
- Kotlin
- compose
- 제한함수
- 깃
- 유닛테스트
- 자료구조
- 안드로이드
- 단위테스트
- Python
- 안정성
- rxjava
- 컴포즈
- 테스트의 장점
- ViewModel
- MVVM
- 코틀린
- 파이썬
- 안드로이드 디자인패턴
Archives
- Today
- Total
세상을 바꾸는 개발자
[이펙티브 코틀린] 방어적 프로그래밍 vs 공격적 프로그래밍 본문
방어적 프로그래밍
- 모든 가능성을 올바른 방식으로 처리하는 것(예를 들어 null일때는 출력하지 않기 등)
- 방어적 프로그래밍은 코드가 프로덕션 환경으로 들어갔을때 발생할 수 있는 수많은 것들로부터 프로그램을 방어해서 안정성을 높히는 방법을 나타내는 굉장히 포괄적인 용어
- 상황을 처리할 수 있는 올바른 방법이 있을때 굉장히 좋다
공격적 프로그래밍
- 모든 상황을 안전하게 처리하는 것은 불가능하기 때문에 등장
- 예상하지 못한 상황이 발생했을때, 이러한 문제를 개발자에게 알려서 수정하게 만드는 것
- require, check, assert 가 공격적 프로그래밍을 하기 위한 도구
--> 둘은 충돌되는 것처럼 보이지만, 둘다 안전을 위해 모두 필요하기 때문에 적절하게 사용해야한다
참고 : 이펙티브 코틀린
'안드로이드 > Kotlin' 카테고리의 다른 글
[이펙티브 코틀린] 코틀린의 안정성 - use를 사용하여 리소스를 닫아라 (0) | 2023.07.19 |
---|---|
[이펙티브 코틀린] 코틀린의 안정성 - 적절하게 null 을 처리하라 (0) | 2023.07.18 |
[이펙티브 코틀린] 결과 부족이 발생할 경우 null과 failure를 사용하라 (0) | 2023.07.16 |
[이펙티브 코틀린] 코틀린의 안정성 - 사용자 정의 오류보다는 표준 오류를 사용하라 (0) | 2023.07.15 |
[이펙티브 코틀린] 코틀린의 안정성 - 최대한 플랫폼 타입을 사용하지 말라 (0) | 2023.07.12 |
Comments