모바일(3)
-
Delegate Pattern
Delegate Pattern 어떤 객체가 기능을 수행할 때, 해당 기능을 다른 객체에게 위임하는 패턴 상속과의 차이 객체 안에 새로운 기능 / 객체를 구성하는 composition을 사용 프로세스 1과 2는 dependency 관계 , 2와 3은 implement관계. 2에는 1이 필요한 부분을 정의함. 3은 2를 구현함 kotlin에서 by를 사용하면 쉽게 가능 // 부동산과 관련된 권한들 interface Authority { fun stampSeal() // 도장 찍기 ... // 기타 등등 } // 부동산에 대해서 내가 행사할 수 있는 권리가 있어! class Customer(private val name: String) : Authority { // Authority 인터페이스 구현 overr..
2023.05.03 -
안드로이드 아키텍쳐
패스트캠퍼스의 강의를 요약한 버전...올린다 아키텍쳐가 왜~~~중요하게 한 번만 말한다 안드로이드는 웹처럼 이슈에 대해 바로바로 대응이 안됨..큰 일 터지면 좃대는것..! 성공한 앱을 더 빨리 확장시키기위해서(모듈화, 실험 기반 시스템 필요) 더 깊은 사용자화 필요..!(유연한 구조가 필요) 나중에 바꾸려면 아주아주 많은 시행착오가 필요 → 엄청난 cost 모듈화는 가능한 빨리 해야됨…(ㅎㅎ….ㅅ ㅂ) 복잡성 제거 ; 좋은 설계를 위한 첫걸음 복잡성 → 시스템을 이해 및 수정하기 어렵게하는, 소프트웨어 구조에 관련된 모든것. (단순히 코드 줄 수를 말하는것은 아님). 변경증폭 (작은 변경인데, 다른 많은 부분을 편집해야됨) 인지적 부하 (작은 변경인데 많은 선수지식을 알아야함) 알 수 없는 무지 (작은 ..
2023.05.03 -
Retrofit to Ktor
ktor을 써야하는 이유 💡 KMM을 사용해서 앱을 만든다고 생각해보자. ios에서는 java/android 기반인 Retrofit을 사용할 수 없다 .근데 ktor은 되는 모양…? 아래와 같이 종속성을 추가해줍시다 plugins { ... kotlin("plugin.serialization") version "1.7.10" ... } dependencies { implementation("org.jetbrains.kotlinx:kotlinx-serialization-json:1.3.2") implementation("io.ktor:ktor-client-core:$ktorVersion") // CIO - for JVM and Android implementation("io.ktor:ktor-client-..
2023.05.03