본문 바로가기
반응형

전체 글89

SwiftUI vs UIKit IOS에 대해서 공부를 하려고 보니 어느새 UI도 다양한 방식으로 분화되고 있다는 사실을 깨닫게 되었습니다. 안드로이드에서 선언형 UI 개발에 대해서 안 지 얼마 되지 않았는데, 그 때 자주 접했던 키워드인 SwiftUI에 대해서 찾아보다 보니, UIKit라는 이름의 기존 UI 개발 방식과 애플에서 새로 발표한(WWDC 19에서 발표되어 지금은 꽤 오래된) SwiftUI라는 개발 방식이 존재한다는 사실을 알 수 있었습니다. SwiftUI라는 친구가 어느덧 3년이 넘었고 만으로도 2년이 넘었으니 꽤나 많은 자료들이 나오고 있습니다. 이러한 개발 방식의 분화는 기존 개발자들에게 새로운 기술 스택을 요구하기는 하지만, 기존 코드를 효율적으로 변경시킬 수 있다는 기대감을 주곤 하죠!(하지만 실무에서 개발하고 있.. 2022. 2. 13.
jetpack compose - 코드 기반 UI 작성 안드로이드로 열심히 작업을 하는 중에 jetpack compose라는 친구를 발견하게 되었습니다. 사실 이전에도 다른 아티클들 사이에서 여러번 봤었던 키워드이긴 한데, 그냥 jetpack의 구성요소겠거니 싶어 아는 내용(필요할 때 그때 찾아봐도 충분할 거라는 오만?)이라고 생각하고 덮어뒀던게 화근이 된 것 같습니다. 그래서 이번에 제대로 발견한 김에 이 jetpack compose가 무엇인지 알아보려고 합니다.(근데 사실 이게 안드로이드 UI 제작 기법이긴 한데 코틀린으로 작성해둬서 안드로이드 태그에 넣을지 코틀린 태그에 넣을지 한참 고민했습니다.) jetpack compose가 무엇인지? jetpack compose는 코틀린 안드로이드에서 사용되는 코드 기반 UI로, 선언형 UI입니다. 안드로이드를 위.. 2022. 2. 11.
swift를 공부하기 전에(2) 이전 글에서는 왜 스위프트를 공부해야 하는지에 대한 푸념글(?)이 었다면, 이번에는 아직 스위프트를 배우지 않은 제가 봤을 때 코틀린과 비슷한 점과 달라보이는 점들을 먼저 학습하고 들어가겠습니다. 정적 타입 검사 스위프트는 코틀린과 동일하게 언어에서 사용되는 변수들의 타입이 올바른지 런타임 이전에 검사하는 정적 타입 언어입니다. 프로그래밍에서 타입이란 int, string, double과 같은 자료형을 의미하는데 이러한 정적 타입 검사 프로그래밍 언어는 컴파일 시에 각 변수의 타입이 고정되는 것을 의미합니다. var a : Int = 3 a = "5" //type mismatching 위 코드와 같이 이미 Int형으로 타입이 고정된 a라는 변수는 더 이상 Int 이외의 값을 저장하지 못하게 됩니다. 이러.. 2022. 1. 19.
swift를 공부하기 전에(1) 이제 어느덧 안드로이드를 이용해 돈을 벌게 된 지도 1년 반이 되었습니다. 만 2년을 채우기 전에 슬슬 모바일 개발자라는 직함이 탐이 나기 시작해 swift를 시작해보려고 합니다. 이 글을 작성하는 지금에서는 어떻게 될 지 모르겠지만, 예전에 코프링을 회사에서 사용하게 되어 코프링을 공부한 적이 있는데, 그때처럼 깔짝대는 수준이 아니라 스위프트로 벌어먹고 살 수 있는 수준이 됐으면 좋겠네요. Swift를 공부하는 이유 역시 공부를 하기에 앞서 가장 중요한 것은 왜 그것을 공부해야 하는가가 아닌가 싶습니다. 저의 경우에야 안드로이드 뿐 만 아니라 ios 코드를 작성하겠다는 의지로 시작했습니다. 아마 대부분이 스위프트를 공부하는 이유가 ios에 있을 거라고 생각 합니다. (크게 보면 애플사에서 만든 OS에 .. 2022. 1. 16.
안드로이드 리사이클러뷰 데코 이번 게시글은 지극히 주관적인 사유로 쓰는 글입니다. (물론 이전 게시글도 전부 지극히 개인적인 목적이긴 하지만...) 회사에서 작업을 하다보니 조금씩 다른 margin을 이용한 gridLayout 리사이클러뷰를 사용하게 되었습니다. 그래서 그냥 xml에서 마진과 패딩을 먹여 작업을 할까 했었는데 그렇게 되면 기존에 리사이클러뷰를 감싸고 있는 Layout에 먹인 패딩이나 마진과 중복되어 원하는 값을 찾는 것이 매우 번거로워졌습니다. 그래서 그런 부분을 신경쓰지 않고 리사이클러뷰 내부에서만 돌리는 방법을 위해 ItemDeco라는 친구를 결국 사용하게 되었네요.(이때까지 작업하기 귀찮아서 어떻게든 안쓰던 건 비밀...) 하여튼! 안만들게 되었으면 모를까, 만들게 되었으니 한 번 만들어놓고 계속해서 쓰려면 되.. 2022. 1. 7.
recyclerView 스크롤 이벤트 작성 jetpack이 나오고 난 후로 페이징 관련해서 paging이라는 친절한 친구를 제공하고 있습니다. 하지만 아직까지도 여러가지 이유로 인해 리사이클러뷰의 스크롤링을 조절해야줘야 하는 상황이 생기죠. 이를 사용하기 위해 간단하게 작성한 코드를 까먹을 때 마다 보러 오기 위해 남겨둡니다. 사실 리사이클러뷰 자체에 대해서 잘 모르는 경우에는 이 코드를 보고 단번에 이해하지 못하실 가능성이 높을지도...? /** * 스크롤 아래로 퍼센트 계산 * @return % */ fun scrollPercent(recyclerView: RecyclerView): Double { return (recyclerView.computeVerticalScrollOffset() * 1.0 / (recyclerView.computeV.. 2021. 12. 29.
728x90