일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- onLayout
- Android
- recyclerview
- View
- onMeasure
- notification
- 안드로이드
- 코틀린
- BOJ
- ViewModel
- 알림
- kotlin
- 알고리즘
- AppBarLayout
- CoordinatorLayout
- activity
- hilt
- sqlite
- Algorithm
- HTTP
- LiveData
- lifecycle
- CollapsingToolbarLayout
- room
- Coroutine
- Behavior
- DataBinding
- Navigation
- 백준
- CustomView
- Today
- Total
목록고차 함수 (2)
개발일지
함수형 프로그래밍 (Functional Programming) 함수형 프로그래밍이란 순수함수를 사용하여 공유 상태(Shared State), 변경 가능한 데이터(Mutable Data) 및 부작용(Side Effect)를 줄이는 방식입니다. 함수형 프로그래밍을 사용하면 함수가 예측 가능하기 때문에 테스트에 용이하고 예측 가능한 코드가 되기 때문에 유지 보수에 좋습니다. 특징 불변성 어떤 값의 상태를 변경하지 않습니다. 함수 내부에서 참조하는 객체를 변경하면 예측하기 힘들어집니다. 매개 변수를 복사해서 사용하거나 값을 변경하면 안됩니다. 아래와 같은 코드는 person의 age를 변경하기 때문에 불변성에 어긋납니다. fun add(person: Person) { person.age++ } 고차 함수 함수를..
- 순수 함수의 정의 같은 인자에 대하여 항상 같은 결과를 '반환하면 부작용이 없는 함수'라고 부른다. 부작용이 없는 함수가 함수 외부의 어떤 상태도 변화시키지 않으면 '순수 함수'라고 부른다. - 일급 객체의 특징 일급 객체는 함수의 인자로 전달할 수 있다. 일급 객체는 함수의 반환값에 사용할 수 있다. 일급 객체는 변수에 담을 수 있다. - 고차 함수의 정의 다른 함수를 인자로 받을수 있는 함수 다른 함수를 리턴값으로 사용할 수 있는 함수 - 함수를 쓰는 이유 재사용성을 높여 코드의 중복을 없애기 위해 함수를 이용하여 코드의 가독성을 높일 수 있다. 모듈성을 높여 유지보수를 쉽게 할 수 있다. - 함수 정의하기 fun Name(Parm1, Parm2): ReturnType { Body } fun키워드..