분류 전체보기 235

[다시 만들어보는 클린아키텍쳐] build-logic 편

build-logic 도 이전 포스팅에 있었던 모듈의 하나다.다만 이 모듈에는 Version Catalog, Convention Plugin 이라는 개념을 추가해서 설명할것이다. Version Catalog는 이름에서 느껴지는것처럼 버전을 관리해준다. 즉 프로젝트 전반에 있는 라이브러리 의존성을 관리하는 방식이다.libs.versions.tomi 라는 파일이 있을텐데 요놈이 그 역할을 한다.알아본김에 좀 더 알아보자.이 파일을 열어보면 크게 네 파트로 나뉘는데 [versions][libraries][plugins][bundles]가 있다. versions : 라이브러리의 버전을 정의한다. ex) glide = 5.0.0libaries : 해당 라이브러리 정보를 적는다. ( group : name : ve..

Android 2024.07.31

[다시 만들어보는 클린아키텍쳐] 모듈분리 편

클린아키텍쳐가 유행한지도 이제 꽤 시간이 지난 것 같다.하지만 여전히 현업에서도 많이 쓰이고 있고 시간이 흐를수록 더 관리하기 편하고깔끔한 구조로 변화해가는듯하다. 최근에 보이는 nowinandroid 나 드로이드나이츠 앱을 참고하며 내가 필요한 부분만 취해서새롭게 샘플앱을 구성해보려한다. 단발성으로 끝나는것이 아닌 지속적으로 몇년이고 업데이트 할 사항이 생긴다면추가하고 리펙토링도 진행하며 관리해나갈 목적으로 레포를 만들었다. 그럼 프로젝트를 구성하는 첫번째 발걸음인 모듈 분리를 해보자.참고로 클린아키텍쳐라고 꼭 모듈을 분리해야하는건 아니다.다만 분리를 하면 좀 더 강력하게 코드 관심사를 분리 시킬 수 있다.초기에 설정해야하는 일들이 꽤나 복잡하지만 해두고나면 코드를 보기에도 훨씬 편하다. 모듈분리 모듈..

Android 2024.07.25

다시 프로젝트를 해보자.

요즘 계속 잡담글만 올라오는 기분이지만..빨리 이직을 해야겠다는 생각에 정신없이 서류, 이력서, 알고리즘 공부에만 신경을 썼던거 같다.물론 다 중요하지만 근본적으론 내가 안드로이드 개발을 잘해야하고이걸 쉬고 있을수는 없다. 요즘은 컴포즈로 앱을 전부 짜고 있는데 기능 개발에는 문제 없지만아직도 리컴포지션 최적화는 알듯하면서도 쉽지않다. 꾸준한 노력만이 답일듯하다.  전에 만들었던 Linkzip 은 앱을 올리고 싶은데개발자 계정을 새로 만들면서 본인인증을 하란다원래 없었던거 같은데 생겼나보다..제출 해야하는 서류가 제약 조건이 좀 귀찮아서 아직 내질 못했다.이것도 얼른 출시해야지 휴휴 아! 그리고 요즘에는 오프라인 기기 제작도 해보려고 하고 있다.나는 연동되는 앱을 담당하겠지만 친하게 지내는 분중에 하드웨..

잡담 2024.07.24

퇴사..

원하던 퇴사는 아니였지만회사가 힘들어지면서 회사 대부분의 인원이 퇴사를 하게 됐다.애정을 가지고 개발하던 서비스여서 마음이 아프다아직도 실감이 잘나지 않는다순식간에 회사 밖으로 내쳐지니 갑작스럽게 취준생이 됐다.여유를 가지고 지금까지 쉬어보지도 못했으니 괜찮다고 생각해도내 성격상 일을 안하면 오히려 찝찝한 기분이 든다.다시 정신차리고 뭐든 해보자 파이팅

잡담 2024.06.25

[Kotlin/Swift 문법 비교] String 출력과 변수와 Optional / Nullable 처리

대부분의 프로그래밍 언어에 통용되는 기본적인 내용까지 적지는 않을것이고안드로이드 개발에 쓰이는 코틀린과 다르게 사용되는 문법들에 대해서 정리를 하려고한다. 첫번째는 String 출력과 변수와 Optional / Nullable 처리대해서 적어보려고 한다. String - String 출력 Swift print("ios도 개발하고싶어요!") Kotlinprintln("Hello, world!") 키워드를 잘보면 눈치를 챌 수 있는데 Swift는 저렇게 적어주면 자동으로 줄바꿈이 포함된다. - String 안에 변수 Swiftlet real = "진짜 슬프다"let realValue = 3000let data = "아이폰이 없네 ㅠ \(real) 얼마나 슬프냐면 \(realValue)만큼 슬퍼" Kotlin..

IOS/Swift 2024.05.11

안드로이드 키보드 높이 구하기

키보드가 올라왔을때 키보드 위로 특정 레이아웃을 올리고 싶을때가 있다.매니페스트 파일이나 코드상으로 넣어도 화면 구조상 어려워서 원하는대로 동작하지 않을때가 있는데  아래와 같은 방법으로 해결 할 수 있다. 화면의 적당한 곳에 아래 코드를 적어준다. 이 코드를 Fragment 에서 사용했을때 기준이다.ViewCompat.setOnApplyWindowInsetsListener(requireActivity().window.decorView.rootView) { _, insets -> val sysBarInsets = insets.getInsets(WindowInsetsCompat.Type.systemBars()) val imeHeight = insets.getInsets(WindowInsetsCo..

Android 2024.04.29