Android 개발/개념 & 기초
-
(1분 읽기) Kotlin Class vs Data Class의 생성자 완벽 비교 🚀Android 개발/개념 & 기초 2025. 3. 2. 00:19
Kotlin에서 Class와 Data Class는 생성자(Constructor)를 사용하지만 의미와 역할이 미묘하게 달라!이 차이를 정확히 이해하면 면접 질문에서도 당황하지 않고 답변할 수 있어! 😎🔥 Class에서 생성자란?객체가 생성될 때 호출되는 초기화 함수초기 값을 설정하고 프로퍼티를 초기화해기본 생성자(Primary Constructor)와 보조 생성자(Secondary Constructor)로 나뉨class Person(val name: String, var age: Int) { // 초기화 블록 init { println("초기화: 이름은 $name, 나이는 $age") } // 보조 생성자 constructor(name: String) : this..
-
(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..
-
(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초 읽기) Mac과 Android Studio에서 Java & Gradle 버전 확인하는 방법 🍏Android 개발/개념 & 기초 2025. 2. 6. 18:12
✅ 1. Mac에서 Java & Gradle 버전 확인하는 방법 🔹 Java 버전 확인java -version 💡 출력 예시:openjdk version "21.0.3" 2024-02-15 🔹 Gradle 버전 확인gradle -v 💡 출력 예시:------------------------------------------------------------Gradle 8.5------------------------------------------------------------✅ 2. Android Studio에서 Gradle & Java 버전 확인🎯 Gradle JVM 버전 확인 및 변경📌 경로:🔹 Settings > Build, Execution, Deployment > Build Too..
-
(30초 읽기) ConcatAdapter 🧩Android 개발/개념 & 기초 2025. 2. 1. 20:50
"📢 여러 개의 리스트를 하나의 RecyclerView에 넣고 싶다고? ConcatAdapter 가야지! 💡"📌 ConcatAdapter란?👉 여러 개의 RecyclerView.Adapter를 하나의 RecyclerView에서 사용할 수 있는 기능💡 왜 써야 할까?✅ 여러 개의 리스트를 한 화면에서 관리 가능✅ 서로 다른 ViewType을 쉽게 조합 가능✅ 코드 중복 없이 리스트 통합🛠 예제 코드 (ConcatAdapter 사용)val adapter1 = MyAdapter(list1)val adapter2 = MyAdapter(list2)val concatAdapter = ConcatAdapter(adapter1, adapter2)recyclerView.layoutManager = Linear..