일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- ActivityResult-API
- Kotlin
- hung-up
- firebase-storage
- mosquitto
- gradle
- cloud-firestore
- Firebase
- OZViewer
- 워치
- Android
- git-push
- mqtt
- socket-server
- git
- socket-client
- AWS
- google-login
- ozd
- Flavors
- TIZEN
- Dva
- 오즈뷰어
- Galaxy Watch
- BottomSheetDialog
- NoSuchMethodError
- Java8
- socket.io
- firebase-database
- JNI
- Today
- Total
목록전체 글 (109)
Hyeyeon blog
5장 객체 생성 33. 생성자 대신 팩토리 함수를 사용하라 34. 기본 생성자에 이름있는 옵션 아규먼트를 사용하라 35. 복잡한 객체를 생성하기 위한 DSL을 정의하라 6장 클래스 설계 36. 상속보다는 컴포지션을 사용하라 37. 데이터 집합 표현에 data 한정자를 사용하라 38. 연산 또는 액션을 전달할 때는 인터페이스 대신 함수 타입을 사용하라 39. 태그 클래스보다는 클래스 계층을 사용하라 40. equals의 규약을 지켜라 41. haseCode의 규약을 지켜라 42. compareTo의 규약을 지켜라 43. API의 필수적이지 않은 부분을 확장함수로 추출하라 44. 멤버 확장 함수의 사용을 피하라 33. 생성자 대신 팩토리 함수를 사용하라 * 팩토리 함수: 생성자 역할을 대신 해주는 함수 * ..
🤓 AGP 7.4.0 이상에서 발생하는 문제로, 아래와같이 build.grale(app)에 JVM 대상의 JDK 버전을 명시하여 해결할 수 있다. kotlin { jvmToolchain(17) } android { kotlinOptions { jvmTarget = JavaVersion.VERSION_17.toString() } compileOptions { sourceCompatibility = JavaVersion.VERSION_17 targetCompatibility = JavaVersion.VERSION_17 } }
3장 재사용성 19. knowledge를 반복하여 사용하지 않기 20. 일반적인 알고리즘을 반복해서 구현하지 않기 21. 일반적인 프로퍼티 패턴은 프로터피 위임으로 생성하기 22. 일반적인 알고리즘은 제네릭 함수로 구현하기 23. 타입 파라미터의 섀도잉을 피하기 24. 제네릭 타입과 variance 한정자(out, in) 활용하기 25. 공통 모듈로 추출해서 여러 플랫폼에서 재사용하기 4장 추상화 설계 26. 함수 내부의 추상화 레벨을 통일하라 27. 변화로부터 코드를 보호하려면 추상화를 사용하라 28. API 안정성을 확인하라 29. 외부 API를 랩(wrap)해서 사용하라 30. 요소의 가시성을 최소화하라 31. 문서로 규약을 정의하라 32. 추상화 규약을 지켜라 19. knowledge를 반복하여 ..
2장 가독성 11. 가독성을 목표로 설계하기 12. 연산자 오버로드를 이름의 의미에 맞게 사용하기 13. Unit?을 리턴하지 않기 14. 변수 타입을 명확하게 지정하기 15. 리시버를 명시적으로 참조하기 16. 프로퍼티는 동작이 아닌 상태를 나타해야함 17. 이름있는 아큐먼트를 사용하기 18. 코딩 컨벤션 지키기 코틀린은 간결성이 아닌 가독성을 개선하는 데 목표를 두고 설계된 언어임. 간결성은 가독성을 목표로 두고 반복되는 코드를 짧게 쓸 수 있기 때문에 발생한 부가적인 효과임. 11. 가독성을 목표로 설계하기 인지 부하 감소, 즉 코드를 읽고 이해하는 속도를 줄이도록 작성해야함. 인지 부하가 있더라도, 가치가 있는 경우라면 사용해도 괜찮음. 이를 위해 어떤 구조들이 어떤 복잡성을 가져오는지 파악이 필..
이펙티브 코를린을 읽고 내용을 정리해봅니다. 나도모르게 사용하고있는 안티패턴을 경계하려는 마음을 한가득 담아... 🥹 1장 안정성 가변성 제어하기 변수의 스코프 최소화 플랫폼 타입 사용 지양하기 inferred 타입으로 리턴하지 않기 예외를 활용하여 코드에 제한걸기 사용자 정의 오류보다 표준 오류 사용하기 결과 부족이 발생한 경우, null과 Failure 사용하기 적절하게 null 처리하기 use를 사용하여 리소스 닫기 1. 가변성 제한하기 (가변지점 제한): val, immutable 클래스/프로퍼티 사용 변경이 필요한 대상은 immutable data class로 만들고 copy() 활용 컬렉션의 상태 저장할 시에는 읽기전용 컬렉션 사용 mutable 객체는 private으로 사용 (외부노출X) m..
요즘 전세사기가 너무 많아서 보증금 걱정이 많으실 텐데요 😭 보증금을 지키기 위해서 전세금 보증보험 혹은 소액임차인의 최우선 변제권을 준비하셔야 합니다. 전세금 보증보험과 소액임차인의 최우선 변제권, 그리고 이를 위한 전입신고와 확정일자 신청방법을 알아보도록 하겠습니다.🔎 전세금 보증보험 1. HUG 전세보증금반환보증HUG 주택도시보증공사에서 보증하는 상품입니다. 전세보증금이 수도권 기준 7억원, 비수도권기준 5억원 이하일 때 가입할 수 있습니다. > HUG 주택도시보증공사 전세금보증반환보증 상세 2. SGI 서울보증, 전세금반환보증보험아파트는 보증금 제한이 없으며 아파트 이외의 주택은 전세금 10억원 이내일 때 가입할 수 있습니다. > SGI 서울보증 전세금반환보증보험 상세 3. HF 일반전세지킴보증 ..
노션으로 가계부를 작성할 수 있는 가계부 템플릿을 소개합니다 🤓 아래의 링크를 통해 바로 노션 가계부 템플릿을 사용하실 수 있어요! 🔎 https://www.notion.so/ko-kr/templates/budget-planning Notion (노션) 템플릿 갤러리: 가계부 지출 내역을 기록하고 예산 대비 얼마나 사용했는지 확인해 보세요. | 업무와 일상에서 Notion (노션)을 사용하는 새로운 방법을 알아보세요. www.notion.so 0. 노션 가계부 템플릿 추가 이 템플릿으로 시작 버튼을 클릭하여 템플릿을 추가하면 아래와 같은 첫 화면을 만날 수 있습니다. 한 달 예산을 설정하고 입력된 지출 내역의 총 합계가 표의 하단에 표시됩니다. 1. 지출 내역 추가 하기 표 하단의 + New 를 클릭하면..
1. 다중공선성 이란 회귀분석에서 발생하는 문제로, 독립변수들 간의 상관관계가 있는 경우에 발생합니다. 다중공선성은 과적합 문제가 발생하여 모델의 예측 성능을 해치고 회귀분석의 해석을 어렵게하기 때문에 회귀분석 전에 반드시 확인하여 없애주어야 합니다. 2. VIF(Variance Inflation Factor) VIF는 다중공선성을 측정하는 지표입니다. 일반적으로 VIF가 1보다 작거나 가까울 경우, 다중공선성은 거의 없다고 판단합니다. VIF가 1 이상일 경우, 다중공선성이 존재할 가능성이 있다고 보며 VIF가 5 이상일 경우엔 독립변수들 간의 높은 상관관계를 가진다고 판단하여 독립변수를 제거하는 등의 방법을 통해 다중공선성을 해결합니다. 3. 다중공선성 구하기 (1) VIF를 구하기위해 car lib..