일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 | 31 |
- rxswift
- swift documentation
- map
- combine
- 클린 코드
- RxCocoa
- Clean Code
- tableView
- uitableview
- 리팩토링
- ribs
- 리펙터링
- Human interface guide
- uiscrollview
- ios
- UITextView
- Observable
- MVVM
- SWIFT
- 리펙토링
- UICollectionView
- Xcode
- HIG
- Refactoring
- 스위프트
- Protocol
- clean architecture
- 애니메이션
- collectionview
- swiftUI
- Today
- Total
목록클린코드 (3)
김종권의 iOS 앱 개발 알아가기
* 냄새와 휴리스틱: 파틴 파울러의 "Refactoring"에서 "코드 냄새"를 표현하여 주의해야하는 코드 사항들에 대해 나열한 것에 더하여 저자 로버트 C.마틴의 생각을 더한 것 이름 서술적인 이름을 사용할 것 소프트웨어가 진화할 경우 의미도 변하므로 선택한 이름이 적합한지, 성급하지 않고 신중하게 고를 것 로버트 C마틴에 의하면, 소프트웨어 가독성의 90%는 이름이 결정 주석을 통해 추가 설명을 하려고 하기전에, 먼저 서술적인 이름으로 코드를 구성하는 방향으로 구현하면 다 읽지 않아도 유추하기가 쉬워져서, 코드 생산성에도 긍정적인 영향을 부여 RIGHT - 서술적인 이름으로 인해 함수의 이름만 보고도 내용을 예측할수 있는 형태 private let ballCountToStrike = 10 privat..
* 냄새와 휴리스틱: 파틴 파울러의 "Refactoring"에서 "코드 냄새"를 표현하여 주의해야하는 코드 사항들에 대해 나열한 것에 더하여 저자 로버트 C.마틴의 생각을 더한 것 일반 이름과 기능이 일치하는 함수 이름만으로 분명하지 않은 함수를 사용하면 매번 문서를 뒤적여야 하므로 처음부터 함수 이름과 기능을 확인할 것 WRONG - 5초인지, 5주인지, 5일인지 알 수 없는 상태이므로 더욱 애매한 함수 let newDate = date.add(5) RIGHT - 함수의 이름이 명확한 경우 let newDate1 = date.addDaysTo(5) 역할 분담에 대한 의존성을 제대로 할 것 ex) 임직원들의 report를 만드는데, page가 지정된 크기 pageSize만큼 커지면 페이지를 초기화 시키는..
함수 가능한 하나의 함수는 20줄도 길다고 생각하여, 짧게 만드는것이 가독성에 중요한 요소 하나의 함수가 길어진다면, 그 길어지는 것들을 또다른 함수로 정의하여 그것을 호출하도록 설계 함수 안의 if, guard문의 블록은 여러줄이 아닌 한줄로 구현 하나의 함수는 한가지의 일만 하도록 구현 ex) 페이지를 입력받아서 HTML로 변환하는 함수 정의 - 입력받은 페이지가 테스트 페이지인 경우, 설정페이지(setup)와 해제페이지(teardown)에 페이지를 넣고 해당 테스트 페이지를 HTML로 렌더링하는 기능 WRONG - if문 블록이 한줄을 넘어가므로 잘못된 코드 - 하나의 함수에서 다양한 일 처리 (페이지를 가져오고, 설정페이지와 해제페이지를 추가하는 작업) func renderPageWithSetup..