반응형

전체 글 56

[삽질] Recycler View 값이 없을 때 안보이게 하기

?? 바텀 네비게이션 왜저래 고치고 왔다 ㅎㅎ 우리 프로젝트는 링크 저장을 편하게 해주는 어플이다.  링크를 저장할때 저장했던 맥락을 기록할 수 있고 관련해서 태그도 달 수 있다. 그리고 태그 별로 링크(훅)을 모아서 볼 수도 있따. 홈뷰 형식은 리사이클러 뷰 안에 리사이클러 뷰를 삽입하였다.. 매일 매일 직접 앱을 써보며 테스트를 하던 중   태그가 없을때 잘 나오던 훅이   이런식으로 빈값이 태그로 인식되어 리사이클러 뷰에 보이고 있었다. 기존 코드는 태그리스트에 아무런 값이 없을때 GONE을 사용해서 화면에 안보이게 하고 있었다. 그런데 API가 바뀌면서 뭐가 잘못되었는지 저렇게 ""값이 전달되어 태그에 나오고 있었따. 1. 태그리스트 값이 비어 있으면 null값 전달하기 APIServiceMaga..

Android 2024.06.08

AWS SAA-C03(AWS Certified Solutions Architect - Associate) 합격 후기, 공부법

#AWS #SAAC03 #SAA #AWS바우처 #AWS시험장  드뎌 끝냈다잇~ 2024년 2월 1일에 시험봤고 2월2일에 올리는 후기 ㅋㅋ   720점 커트라인에 769점!! ㅋㅋㅋㅋㅋ 공부방법 ELLT에 융소 이중이지만 aws에 완전 무지했던 나는 되게 막막했었다..아마 비전공자랑 똑같은 수준이었을듯.. 그래서 처음 3주를 잡고 공부했었는데 미루고 미루고 하다가 한달만에 시험을 보게 되었따..(응시료가 17만원이라 무서웠음..)+하루에 3-5시간 사이로 공부한듯.. 집중력이 안좋은편 너무 기초적인 개념이 없어서 유데미에서 강의를 보았다 https://www.udemy.com/course/best-aws-certified-solutions-architect-associate/이게 1등 강의인데 솔직히 보..

기타 2024.06.05

Room

Room 을 사용하면 SQLite를 활용하면서 원활한 데이터베이스 액세스가 가능하도록 SQLite의 추상화 계층을 제공한다. 추상화 ? 복잡한 시스템을 단순화하고 중요한 정보만을 노출하여 불필요한 세부 사항을 감추는 방법데이터 추상화: 데이터 구조와 관련된 복잡성을 숨기고 데이터를 처리하는 방법을 정의합니다. 예를 들어, 객체 지향 프로그래밍에서 클래스는 데이터 추상화의 한 형태입니다. 클래스는 데이터(속성)와 데이터를 처리하는 메서드(함수)를 포함하며, 외부에서는 이 클래스의 내부 구현 세부 사항을 알 필요 없이 클래스의 인터페이스(메서드)를 통해 상호작용할 수 있습니다.제어 추상화: 특정 작업을 수행하는데 필요한 제어 흐름을 단순화합니다. 예를 들어, 함수를 사용하여 특정 작업을 수행하는 코드를 함수..

Android 2024.06.04

진로에 대한 진지한 생각

이번 학기를 다니며 새삼 내가 참 무능력하다는 생각을 많이했다. 진로를 찾기 위해 노력을 안한 것은 아니지만 조금 더 일찍 정했다면 어땠을까앱개발을 참 마이너한 분야인것 같다. 앱개발 중에서도 native 안드로이드 개발자는 더더욱 그렇다. 그래도 다시 돌아간다면 안드로이드를 선택할거 같긴하다. ㅋㅋㅋ머신러닝, 웹개발, 클라우드 등 여러가지 해봤는데 이걸로 9시부터 6시까지 일하라하면 못할거 같다.막학기를 다니며 면접만 봐도 좋은 경험이라는 생각에 팀프로젝트를 진행하며 만든 포폴과 간단한 이력서를 여러 곳에 넣어봤다. 새삼 지원하며 느낀 것은 신입을 정말 안뽑는다는ㅡ.ㅡ 앱개발 다디졌네.. 15군데 정도 지원했고 그중 한곳에서 연락이 왔다. 반년 일하는 계약직이었는데 실무경험 쌓기 나쁘지 않다고 생각해 ..

기타 2024.06.04

유클리드 호제법(ft. 최대공약수)

호제법이란 말은 두 수가 서로(互) 상대방 수를 나누어(除)서 결국 원하는 수를 얻는 알고리즘을 나타낸다. 2개의 자연수(또는 정식) a, b에 대해서 a를 b로 나눈 나머지를 r이라 하면(단, a>b), a와 b의 최대공약수는 b와 r의 최대공약수와 같다. 이 성질에 따라, b를 r로 나눈 나머지 r'를 구하고, 다시 r을 r'로 나눈 나머지를 구하는 과정을 반복하여 나머지가 0이 되었을 때 나누는 수가 a와 b의 최대공약수이다. ㅊㅊ : 위키피디아 예시1071과 1029의 최대공약수를 구하면,1071은 1029로 나누어 떨어지지 않기 때문에, 1071을 1029로 나눈 나머지를 구한다. ≫ 421029는 42로 나누어 떨어지지 않기 때문에, 1029를 42로 나눈 나머지를 구한다. ≫ 2142는 21..

알고리즘 2024.06.03

코루틴

스레드 (Thread) 스레드는 프로그램 범위 내에서 예약하고 실행할 수 있는 코드의 최소 단위.. 멀티스레딩을 지원함으로써 사용자에게 원활한 실행을 제공한다. 하지만 한정된 시간안에 UI를 준비하고 그려야하는데 이것이 복잡해지면 앱이 멈춰버린다. 또한 여러 스레드가 동시에 메모리의 동일한 값에 액세스하려고 할 때 경합 상태가 발생할 수 있다. 그래서 스레드를 직접 사용하는 것을 권장하지 않는다. 코틀린 코루틴(Kotlin Coroutine)  백그라운드 작업을 위한 스레드를 만들고 사용하는 것은 android에서 이루어지지만 코틀린은 동시 실행을 더 유연하고 쉽게 관리할 수 있는 코루틴도 제공한다.  코루틴 기능1. 상태를 저장하여 중단했다가 재개할 수 있음2. 코루틴은 실행되거나 실행되지 않을 수 있..

Android 2024.05.24

동기 / 비동기

동기(synchronous)동기 작업은 연산이 완료될 때까지 해당 작업을 호출한 스레드가 기다리는 방식이다. 즉, 작업이 완료될 때까지 다음 작업이 시작되지 않는다. 안드로이드에서는 주로 UI 스레드(Main Thread)에서 실행된다. 동기 작업의 예로는 파일 읽기/쓰기, 네트워크 요청 등을 들 수 있다.특징:블로킹(Blocking): 작업이 완료될 때까지 다른 작업을 차단한다.직관적: 코드가 순차적으로 실행되므로 이해하기 쉽다.잠재적 성능 문제: 긴 시간이 걸리는 작업(예: 네트워크 요청)을 UI 스레드에서 동기적으로 실행하면 애플리케이션이 응답하지 않을 수 있다. 비동기(asynchronous)비동기 작업은 작업을 요청한 후 그 결과를 기다리지 않고, 다른 작업을 계속해서 수행하는 방식이다. 작업이..

Android 2024.05.20

Json / 직렬화 / 역직렬화

serialization : 직렬화 객체를 json 포맷으로 바꾼다 => 직렬 json 데이터를 받아올 때, 객체로 변환해야 한다. => 역직렬화 Gson -> Java 100%https://github.com/google/gson GitHub - google/gson: A Java serialization/deserialization library to convert Java Objects into JSON and backA Java serialization/deserialization library to convert Java Objects into JSON and back - google/gsongithub.com dependencies { implementation 'com.google.code..

Android 2024.05.16

Android 리사이클러뷰

https://developer.android.com/develop/ui/views/layout/recyclerview?hl=ko RecyclerView로 동적 목록 만들기  |  Views  |  Android Developers이 페이지는 Cloud Translation API를 통해 번역되었습니다. 컬렉션을 사용해 정리하기 내 환경설정을 기준으로 콘텐츠를 저장하고 분류하세요. RecyclerView로 동적 목록 만들기   Android Jetpack의 구성요developer.android.com https://gift123.tistory.com/67 안드로이드 개발 (34) RecyclerView 성능 향상Android 개발을 하다보면 불가피 하게 RecyclerView를 사용해야 하는 순간이 대부..

Android 2024.05.06