SDK:Software Development Kit(소프트웨어 개발도구 모음)
맥에서 setting 들어가는 법
:맥에는 setting 버튼이 없다.
왼쪽상단의 android studio-Preferences에 들어가서 폰트 등의 설정을 변경할 수 있다.
02-1 안드로이드 소개
스택:처리해야할 요청을 저장하는 데이터 저장소 또는 버퍼
안드로이드 런타임(Android runtime:ART):앱을 실행함
자바는 개발자가 소스코드 작성하고 컴파일하면 클래스파일이 바로 만들어지고, 그 클래스 파일을 자바가상머신(JVM:java virtual machine)에서 실행함
안드로이드는 자바 클래스를 런타임때 '그대로 실행하지 않고' DEX파일로 컴파일함!
그리고 DEX 파일을 해석하는 'ART(Android runtime)'dptj tlfgodgka
02-2 안드로이드 앱 개발의 특징
컴포넌트:애플리케이션의 구성요소
컴포넌트 클래스와 일반 클래스의 차이점:둘다 만드는건 개발자가 만들지만 생명주기관리를 누가 하느냐에 따라. 전자는 '안드로이드 시스템'이 관리하고 후자는 '코드'가 관리함.
컴포넌트의 생명주기를 안드로이드에서 관리하면 코드에서 직접 객체를 생성해 실행할 수 없다
안드로이드 컴포넌트 4종류
-액티비티:화면 구성
-서비스:백그라운드 작업, 출력x
-콘텐츠 프로바이더:앱 간의 데이터 공유
-브로드캐스트 리시버:'시스템' 이벤트가 발생할 때 실행되게 하는 컴포넌트. ex. 부팅완료, 배터리방전
컴포넌트는 앱 안에서 독립된 실행단위이다.
따라서 한 액티비티에서 다른 액티비티 실행할 때 두 액티비티를 코드로 직접 결합하는 게 아니라 안드로이드 시스템에 의뢰함으로써 두 클래스가 '서로 종속되지 않고 독립해서'실행되게 해야한다.
앱 실행 시점이 다양하다.
컴포넌트가 앱 내에서 독립해서 실행되기 때문
예를들면 홈에서 카톡을 여는 게 아니라 알림창에서 알람 클릭하면 바로 채팅방으로 들어가짐.
"안드로이드 앱은 메인함수가 없다."
메인함수: 앱의 단일 시작점
->실행 시점 다양해서 메인함수개념이 없다.
02-3 앱 구성 파일 분석
프로젝트를 만들면 app이라는 '모듈'이 자동 생성된다.
모듈 하나가 앱 하나이며 프로젝트는 여러 모듈을 묶어서 관리하는 개념이다.
그래들(gradle):안드로이드 앱의 빌드 도구
플러그인이란?
일반적인 소프트웨어의 일부
웹 브라우저의 일부 기능들을 쉽게 설치하여 사용하게 할 수 있는 프로그램
쉽게 말해, 내가필요한걸 남이 만든 것을 갖다붙여쓴다.
네임스페이스: 내부 식별자(형식, 함수, 변수 등의 이름)에 범위를 제공하는 선언적 영역
일반적으로 하나의 이름 공간에서는 하나의 이름이 단 하나의 개체만을 가리키게 된다.
// 네임스페이스 선언(개정 2판)
<application
android:allowBackup="true"
android:dataExtractionRules="@xml/data_extraction_rules"
android:fullBackupContent="@xml/backup_rules"
android:icon="@mipmap/backup_rules"
android:label="@string/app_name"
android:roundIcon="@mipmap/ic_launcher-round"
android:supportsRtl="true"
android:theme="@style/Theme.Android:Lab"
tools:targetApi="31">
(... 생략 ...)
</application>
AndroidManifest.xml(매니페스트파일):앱의 메인 환경 파일. 안드로이드 시스템은 이 파일에 설정한 대로 앱을 실행함.
컴포넌트는 시스템에서 생명주기를 관리함.그리고 시스템은 매니페스트 파일에 있는 대로 앱을 실행함.따라서 컴포넌트는 매니페스트 파일에 등록해야 시스템이 '인지'할 수 있음
// 액티비티 선언
<activity
android:name=".MainActivity"
android:exported="true"
<intent-filter>
<action android:name="android.intent.action.MAIN">
<cateory android:name="android.intent.category.LAUNCHER">
</intent-filter>
<meta-data>
android:name="android.app.lib_name"
android:value="" />
</activity>
TMI겸 일기
아악
3월에 중순에 책 처음 펴고 다시 6월에 시작하게되다니
정말 레전드다
나랑 같이 시작한 사람이 벌써 대충 앱을 만들수 있댄다
클남;
벌써 올해의 반이 끝났네
2월만 지나면 3월만 지나면~ 축제만 끝나면~~~~ 이러다가 벌써 이렇게 됨
너 여태문법만 함
정신차리고 공부만 하자
대충 700쪽이고 14주에 끝내고 강의로 넘어가기
700/14=50쪽
초반에 쉬울때 최대한 스피드 내둬야 뒤쪽에 어려울때 감당가능할듯!
대충 20일까지(마지노 25일) 책 끝내고
6월 마지막주에는 인프런 코틀린 강의 들어가기

'깡샘 코틀린' 카테고리의 다른 글
05-1 람다 함수와 고차 함수 (0) | 2023.06.15 |
---|---|
04-3 코틀린의 클래스 종류 (0) | 2023.06.14 |
04-2 클래스를 재사용하는 상속 (0) | 2023.06.14 |
04-1 클래스와 생성자 (0) | 2023.06.13 |
03 코틀린 시작하기 (0) | 2023.06.06 |