바삭바삭 IT(16)
-
[디자인패턴] Observer? Observable?
안드로이드의 라이브데이터가 구현한 패턴, Observer에 대해 알아봅시다. 우선, 디자인패턴이란 소프트웨어에서 반복되는 문제상황에 대한 해결책입니다. 개발자가 앱이나 시스템을 디자인할때 사용하기 좋은 템플릿이라고 보면 되겠습니다. 디자인패턴 중 행동패턴에 속해있는 옵저버 패턴은 '발행-구독 패턴'이라고도 불립니다. observer는 객체의 상태변화를 관찰하는 관찰자들이고 이 관찰자들을 객체에 등록해서 상태가 변할때마다 메서드를 통해 관찰자들에게 알려주는 패턴입니다. 구현 이 패턴을 구현한다고 생각해봅시다. 1. 먼저 관찰자가 필요합니다. 관찰자를 Observer라는 이름의 객체로 만들어 줍니다. 2. 이제 이 Observer가 관찰할 대상을 Subject라고 하겠습니다. Subject에 observer..
2021.01.31 -
[Android Jetpack] LiveData 사용방법
observable을 모르신다면 이 글을 먼저 추천드려요! 2021/01/31 - [바삭바삭 IT/디자인패턴] - [디자인패턴] Observer? Observable? [디자인패턴] Observer? Observable? 안드로이드의 라이브데이터가 구현한 패턴, Observer에 대해 알아봅시다. 우선, 디자인패턴이란 소프트웨어에서 반복되는 문제상황에 대한 해결책입니다. 개발자가 앱이나 시스템을 디자인할때 kimdabang.tistory.com LiveData는 observable data holder class, 관찰가능한 데이터들을 담는 클래스라는 뜻 입니다. LiveData는 일반적인 observable과는 달리 생명주기를 인식합니다. 즉 앱의 컴포넌트들(액티비티, 프래그먼트, 서비스 등)의 생명주..
2021.01.24 -
[코틀린] 함수 호출시, 인자에 함수 대입하기
자바8에서도 지원하는 람다 표현식! 코틀린에서는 더 직관적인 문법을 갖고있는데요. 그 중에서 함수를 호출할 때 인자로 함수를 넘기는 방법을 람다식으로 표현해보려 합니다. 예를들어, WordListAdapter라는 클래스에 클릭함수 onClickListener(item: Word)를 MainActivity에서 재정의하고, WordListAdapter를 생성할때 인자로 넘기고 싶습니다. ▶ WrdListAdapter.kt WordListAdapter클래스는 생성자에 context와 onClickListner함수를 인자로 넘겨받습니다. Class WordListAdapter( private val context: Context, val onClickListener: (Word)->Unit ) : Recycle..
2020.12.09 -
Recycler View 제대로 이해하기 - RecyclerView lifecycle
안드로이드에서 리스트뷰는 많은 데이터들을 일렬로 나열해주는 우리가 자주 볼수있는 화면입니다. 그러나, 매번 스크롤할때마다 새 항목을 만들고 뷰를 생성하는게 비용이 커서 리소스 소비에 그다지 좋지 않다고 할 수 있습니다. 목록의 양이 많으면 그만큼 리소스를 많이 사용하게 되고, 앱의 성능을 저하시키게 되죠. RecyclerView가 나오기 전까지 오랫동안 고민되어 왔던 문제들이였습니다. Google은 2014년 롤리팝 출시와 함께 RecyclerView를 공개했습니다. RecyclerView의 아이디어는 간단했습니다. 사용자가 스크롤할때마다 뷰가 생성되는게 아니라 뷰는 처음 한번만 생성되고 필요할때마다 재사용하는 방법입니다. 뿐만 아니라 전에 ListView에 없던 LayoutManager, ItemDec..
2020.11.24 -
킴다방로고
hatchful.shopify.com/ 로고를 무료로 제작해주는 사이트! 취향과 목적에 맞게 디자인을 추천해주고 커스텀 할 수도 있다. 로고 저장하려면 로그인을 해야한다. 그래도 간편로그인이라 금방한다. 로그인했던 아이디로 로고파일을 메일로 보내준다. 메일에서 첨부파일을 다운받으면 끝! Hatchful | Your digital logo designer Create stunning logos in seconds - no design skills required! hatchful.shopify.com
2020.11.09 -
Intellij 단축키 모음 (MAC)
사용할때 마다 적어놓는 Intellij 단축키 에디터 command + shift + [ 왼쪽 탭으로 이동 command + shift + ] 오른쪽 탭으로 이동 coomand + W 탭 닫기 command + E 최근 열었던 파일 찾기 command + F12 현재 파일 구조 control + h 클래스 계층 구조 control + option + h 호출 순서 보기 command + F3 북마크 보기 검색 및 코드쓰기 command + option + b 상속한 클래스 찾기 command + b 해당 클래스 코드로 이동 command + [ 코드 이동하기(command + b) 전으로 돌아가기 command + p 파라미더 조건 command + n getter, setter, override함수 추..
2020.10.29