본문 바로가기

개발26

토이프로젝트 1-4 모듈 만들기 원래는 room 부터 할려고 했는데, 이왕 하는거 제대로 해볼려고함. mvvm도 할꺼고 하니깐 그래서 모듈부터 하나 추가할려고. 앱 개발할 때 모듈로 나눈 이유는? 먼저 File - New - New Module을 선택하고, 거기서 나오는 것 중에서 안드로이드 라이브러리를 선택해. 나중에 여기다 room을 넣을꺼라서 안드로이드로 선택하는거야. 그리고 gradle sync가 되면 아래처럼 모듈이 추가되지. 잘 되었는지 확인해볼까? 프로젝트의 root의 settings.gradle을 보면, data라고 추가된 것을 볼 수 있을꺼야 근데 이것만 하면 app 빌드 할 때 data 모듈이 포함되서 빌드되지는 않아. 그래서, app에서는 data 모듈을 쓸꺼에요 라고 알려줘야해. app의 build.gradle 파.. 2023. 3. 9.
앱 개발할 때 모듈로 나눈 이유는? 안드로이드 앱을 개발할 때 모듈로 나누는 이유는 크게 두가지가 있을 것 같아. 첫째, 모듈로 나눠서 개발하고 인터페이스로 잘 정리만 하면, 다른 모듈에 영향을 주지 않고 각각의 모듈을 병렬적으로 개발할 수 있지. 둘째로, 각 모듈이 독립적으로 개발되므로, 모듈 간의 의존성을 최소화되어서 쉽게 유지보수하고 확장할 수 있도록 하는 데 도움이 됨. 모듈로 나눠서 개발하면 코드를 더욱 쉽게 분리할 수 있으며, 새로운 기능을 추가할 때도 더욱 쉽게 대응할 수 있어. 근데 내가 생각하는 더 중요한거가 하나 더 있어. 어느정도 규모가 있는 프로젝트라서 여러 사람이 함께 개발할 때, 업무를 어떻게 나눌지도 매우 중요한 아키텍쳐적인 요소야. 그럴때 그 기준으로 삼을 수 있는거지. 예를 들어 모듈을 뷰, 데이터, 뭐 네트.. 2023. 3. 9.
Room이 뭐야? 간단히 설명 Room은 안드로이드에서 SQLite 데이터베이스를 쉽게 사용할 수 있도록 도와주는 라이브러리야. Room은 Android Architecture Components 라이브러리 중 하나로, 안드로이드 앱의 데이터베이스를 관리하고 제어하는 데 사용됨. 뭐 간단한 설명은 이거고. 중요한거는!!! Room은 SQLite의 높은 성능과 안정성을 유지하면서, 객체 지향에 맞춰 쓸 수 있게 도와줘. 쿼리문을 작성하거나 데이터베이스 스키마를 직접 작성하지 않아도 되됨 즉 안드로이드에서 db읽을려면 contract뭐 그런거 해 놓고, 커서에서 하나씩 일거엇 객체를 만들자나. db생성도 직접하고. 근데 뭐 하나 바꿀려면 코드도 많이 바꿔야 허고 귀찬자나. 그런 보일러 뭐시기 코드를 알아서 작성해줘. 이를 통해 개발자는 .. 2023. 2. 22.
maven이란? 개념 Maven은 자바 기반 프로젝트의 빌드, 관리, 배포를 자동화하기 위한 도구야. Maven은 Apache Software Foundation라는 곳에서 개발하였으며, 프로젝트의 라이프사이클 관리와 의존성 관리를 중심으로 제공하지. 배포하는 입장이 아니라 받아 쓰는 입장에서 젤 중요한거가 의존성! Maven은 미리 정의된 라이브러리 의존성 관리를 통해 필요한 라이브러리를 자동으로 다운로드하고 관리할 수 있어. 또한, Maven은 다양한 프로젝트 정보(이름, 버전 등)를 XML 파일 형태로 관리하며, 이를 통해 프로젝트 설정 및 배포를 관리할를 해. 쓰는 입장에서 정리해보면, 어떤 오픈소스 라이브러리를 받는데, 그 프로젝트 들도 다른 러이브버리를 참조하고 있을 수 있자나. 예를 들어, A라는 라이브러리를 내.. 2023. 2. 20.
반응형