반응형 개발44 [Android] 스마트폰 내장 DB를 사용하기 위한 Room 2탄 🔶 Repository와 MVVM에서 사용 이제 우리가 만든 Room DB를 실제적으로 사용할 수 있게 Repository를 만들어 봅시다. 이때 주의할 점은 Room DB가 메인 스레드에서 접근하려면 하면 에러가 납니다. 그래서 별도의 스레드를 사용해야 합니다. 그래서 비동기 처리를 위해 코루틴을 적용했습니다. class UserRepository(application: Application) { private val userDatabase = UserDatabase.getInstance(application)!! private val userDao: UserDao = contactDatabase.userDao() private val users: LiveData = userDao.getAll() fu.. 2021. 8. 13. [Spring] 프로젝트 생성 ✅ Spring 프로젝트 생성 처음 스프링을 접하는 나와 같은 사람들은 프로젝트를 생성하는 것이 까다로울 수 있습니다. 그래서 이미 Spring Initializr라는 웹사이트를 통해 간단하게 프로젝트를 생성할 수 있게 제공을 해줍니다. https://start.spring.io/ 페이지에 들어가면 아래와 같이 되어 있습니다. 간단하게 위에서부터 차례대로 보면 Project : 대부분의 프로젝트들이 Gradle로 되어있어 Gradle로 만드는 것을 추천합니다. Language : 나는 Java로 할 예정이니 Java를 선택합니다. Spring Boot : (SNAPSHOT), (M1)은 아직 정식 버전이 아니어서 이들에 해당하지 않는 것 중 최신 버전으로 선택하고 Project Metadata : Gro.. 2021. 8. 12. [Android] 스마트폰 내장 DB를 사용하기 위한 Room 1탄 🔶 Room 이란? Android App에서 SQLite 데이터베이스를 쉽고 편리하고 쉽게 사용할 수 있게 해주는 라이브러리입니다. 보통 스마트폰 내장 DB에 데이터를 저장하고 싶을 때 많이 사용합니다. DAO, Entity, RoomDatabase로 구성되어 있다. 구조는 아래와 같습니다. Dependency는 아래의 페이지로 들어가 확인할 수 있습니다. https://developer.android.com/jetpack/androidx/releases/room Room | Android 개발자 | Android Developers Room Room 지속성 라이브러리는 SQLite에 추상화 레이어를 제공하여 SQLite를 완벽히 활용하면서 더 견고한 데이터베이스 액세스를 가능하게 합니다. 최근 업데이트.. 2021. 8. 8. [Android] View Binding(뷰 바인딩) 기존에는 findViewById를 사용하다가 안드로이드 View Binding에 대하여 알게 되었습니다. 생각보다 사용하다 보니 훨씬 편리하고 코드의 생산성도 좋아졌습니다. 기본적으로 사용하는 방법은 build.gradle 파일에 해당 코드를 복사합니다. ( View Binding은 Android studio 3.6 Canary 11 이상에서부터 사용 가능합니다.) android { ... viewBinding { enabled = true } } 예를 들어 activity_new.xml의 파일이 아래와 같다면 이제 Activity에 오면 결합 클래스가 생성되는 것을 확인할 수 있습니다. 여기서 결합 클래스의 이름은 ActivityNewBinding입니다. class NewActivity : AppCom.. 2021. 8. 5. [Android] 디자인 패턴 (MVC, MVP, MVVM) 처음 안드로이드 개발을 시작할 때는 단순히 기능 구현에 집중을 했었지만 어느 순간부터 만드는 앱의 규모가 커지고 다양한 데이터를 다루다 보니 architecture에 대한 관심을 가지게 되었습니다. 그래서 찾아본 결과 Android에서 유명한 architecture에는 MVC, MVP, MVVM 이렇게 3가지가 있었습니다. 오늘은 이를 공부하고 정리해보려고 합니다. 아래의 글을 공부하며 내 나름대로 정리를 해보았습니다. academy.realm.io/posts/eric-maxwell-mvc-mvp-and-mvvm-on-android/ MVC vs. MVP vs. MVVM on Android A guide to using the MVC, MVP & MVVM patterns in your Android Ap.. 2021. 8. 3. [Web] LifeCycle of an Html Page (Html의 생명주기) 🔶 Intro html 페이지의 lifecycle은 3개의 중요한 event를 가지고 있습니다. DOMContentLoaded : Browser에서 HTML이 완전히 로드되고 DOM tree가 만들어 질 때 발생하는 이벤트 load : 문서의 모든 콘텐츠(images,script,css, etc)가 로드된 후 발생하는 이벤트 beforeunload / unload : 사용자가 페이지를 벗어날 때 일어나는 이벤트 🔶 DOMContentLoaded 위 이벤트는 onload 이벤트보다 먼저 발생합니다. 즉, DOM tree가 완성되면 바로 발생하므로 빠른 실행 속도가 필요할 때 적합합니다. 다음은 DOMContentLoaded를 이벤트를 다루는 방법들입니다. //vanilla js window.addEvent.. 2021. 7. 24. 이전 1 ··· 4 5 6 7 8 다음 반응형