전체 글
-
(1분 읽기) XML이란? 📚Android 개발/개념 & 기초 2025. 2. 26. 22:22
📌 XML이 뭐야?XML (eXtensible Markup Language)데이터를 저장하고 전송할 때 사용하는 마크업 언어야.HTML처럼 태그를 사용하지만, 데이터 구조화와 정보 전달에 중점을 둔 언어지.주로 문서 저장, 설정 파일, 데이터 교환에 사용돼.💡 왜 XML을 쓸까?데이터 구조화: 태그로 데이터 계층 구조를 표현할 수 있어.확장성: 사용자가 원하는 태그를 자유롭게 정의할 수 있어.호환성 최고: 다양한 시스템과 언어에서 쉽게 파싱할 수 있어.문서형 데이터: HTML처럼 문서 저장에 강력해.웹 서비스 표준: SOAP, RSS, SVG 등 다양한 웹 표준에서 사용돼.🔧 XML 문법이 궁금해? 이것이 안드로이드다 남궁성 30000 자바의 정석 남궁성 ..
-
(1분 읽기) JSON이란? 📚Android 개발/개념 & 기초 2025. 2. 23. 20:03
📌 JSON이 뭐야?JSON (JavaScript Object Notation)데이터를 주고받을 때 사용하는 가볍고 간단한 데이터 형식이야.사람도 읽기 쉽고, 컴퓨터도 이해하기 쉬운 텍스트 포맷이지. 😎XML 대체제로 가독성과 처리 속도가 뛰어나서 요즘 대세야! 🚀💡 왜 JSON을 쓸까?가볍고 빠름: XML보다 데이터 크기가 작아서 네트워크 전송이 빨라.가독성 최고: 중괄호 {}와 배열 []로 구조화해서 읽기 쉬워.호환성 최고: 거의 모든 프로그래밍 언어에서 쉽게 쓸 수 있어.API 표준: RESTful API에서 기본 포맷으로 자리잡았어.🔧 JSON 문법이 궁금해?{ "이름": "홍길동", "나이": 25, "취미": ["독서", "운동", "게임"], "주소": { "도시": "..
-
(1분 읽기) 안드로이드에서 도메인 모델과 데이터베이스 Entity 🤔Android 개발/개념 & 기초 2025. 2. 18. 07:54
개발하다 보면 "이건 Entity야? 도메인 모델이야?" 헷갈릴 때가 많아!특히 MVVM + Clean Architecture를 적용할 때 데이터 계층과 비즈니스 로직을 어떻게 분리할지 고민되기도 하고.오늘은 도메인 모델과 Entity의 차이점, 그리고 어떤 폴더 구조가 좋은지 쉽게 정리해볼게! 🚀✅ 도메인 모델 vs 데이터베이스(Entity), 뭐가 다를까?항목도메인 모델 (Domain Model)데이터베이스 엔터티 (Entity)목적비즈니스 로직을 표현하는 객체데이터베이스 저장을 위한 객체역할애플리케이션의 핵심 데이터를 관리하고 가공데이터베이스의 테이블과 1:1 매핑구조UI 및 비즈니스 로직에 맞춘 클래스Room, Realm 등 DB 라이브러리와 함께 사용예제User(name: String, age..
-
(30초 읽기) 안드로이드에서 텍스트 자간(글자 간격) 조정 방법! 🎨✨Android 개발/XML & UI 2025. 2. 17. 19:04
안드로이드에서 텍스트를 보다 깔끔하고 가독성 좋게 만들고 싶다면 자간(letterSpacing) 을 조절하면 됩니다.방법은 아주 간단합니다. XML, 코드, 스타일(styles.xml) 세 가지 방법 중 원하는 방식으로 적용하면 돼요!✅ 1. XML에서 letterSpacing 적용하기XML에서 바로 적용하려면 아래처럼 설정하면 됩니다.📌 letterSpacing="0.06" → 기본보다 살짝 넓어져 가독성이 좋아집니다.📌 0.05~0.1 정도가 자연스러워요!✅ 2. 코드에서 letterSpacing 적용하기만약 동적으로 조절해야 한다면, Kotlin 코드에서 이렇게 설정하면 됩니다.val textView: TextView = findViewById(R.id.text_category)textView...
-
(1분 읽기) 폰트 다운로드 & 프로젝트에 추가하기 🎨Android 개발/XML & UI 2025. 2. 17. 18:02
🎨 1. 폰트 다운로드 & 프로젝트에 추가하기1️⃣ 아래 링크에서 원하는 폰트를 찾아서 "다운로드" 버튼을 눌러 .ttf 파일을 저장https://noonnu.cc/ 눈누프리텐다드 - 길형진 (orioncactus)noonnu.cc2️⃣ 안드로이드 프로젝트에서 res 폴더 안에 font 폴더 생성 (res/font/ 경로)3️⃣ 다운로드한 .ttf 파일을 res/font/ 폴더에 추가📌 파일명 예시: res/font/my_custom_font.ttf📝 2. XML에서 폰트 적용하기👉 TextView에 직접 폰트를 적용하려면 XML에서 설정 가능!✅ 폰트 적용 완료! 🚀🔧 3. 코드에서 폰트 적용하기 (Kotlin)👉 Activity, Fragment, RecyclerView 등에서 직접 설정..
-
(1분 읽기) Parcelable이 뭐야? 🤔Android 개발/개념 & 기초 2025. 2. 17. 16:52
안드로이드에서 객체를 빠르게 전달할 수 있도록 최적화된 직렬화 방식!Serializable보다 속도가 최대 10배 이상 빠름! 🚀 ✨ 예제:import android.os.Parcelimport android.os.Parcelabledata class User( val id: Int, val name: String) : Parcelable { constructor(parcel: Parcel) : this( parcel.readInt(), parcel.readString().orEmpty() ) override fun writeToParcel(parcel: Parcel, flags: Int) { parcel.writeInt(id) ..
-
(1분 읽기) Serializable이 뭐야? 🤔Android 개발/개념 & 기초 2025. 2. 17. 16:12
안드로이드에서 Activity → Activity, Fragment → Fragment로 객체를 전달하려면 **Serializable**을 써야 해! 😎그럼, 쉽게 설명해볼게! 👇📌 Serializable이 뭐야?객체를 저장하거나 주고받을 때 바이트 스트림(0과 1)으로 변환해주는 기능이야.쉽게 말해, 데이터를 "파일처럼" 만들어서 전달할 수 있게 해주는 것!import java.io.Serializabledata class User( val id: Int, val name: String) : Serializable이렇게 하면 User 객체를 쉽게 저장하거나 전송할 수 있어!💡 어디에 사용할까?① Intent로 객체 전달 🏃♂️📦val user = User(1, "Steve Job..
-
(30초 읽기) Room 빌드 오류! annotations 충돌 해결법 🚨Android 개발/오류 해결 2025. 2. 14. 16:28
Room DB 설정 중 "Duplicate class org.intellij.lang.annotations. found in modules annotations-12.0.jar …" 에러 발생? 🤯이건 IntelliJ vs JetBrains annotations 버전 충돌 때문! ⚔️ ✅ 해결 방법 (build.gradle 수정)dependencies { implementation(libs.androidx.room.runtime) implementation(libs.androidx.room.ktx) // 기존 room.compiler 의존성이 있다면 제거하고, 아래 kapt 의존성으로 대체합니다. kapt("androidx.room:room-compiler:2.6.1") { ..