분류 전체보기 144

Android / 작업 및 백 스택 이해

작업은 사용자가 특정 작업을 할 때 상호작용하는 활동의 컬렉션이고, 활동은 스택(백 스택)에 각 활동이 열린 순서대로 정렬된다. 예를 들어 이메일 앱에는 새 메시지 목록을 표시하는 활동이 하나 있을 수 있다. 사용자가 메시지를 선택하면 메시지를 볼 수 있도록 새 활동이 열린다. 새로운 활동은 백 스택에 추가되며, 사용자가 뒤로 버튼을 누르면 새로운 활동이 완료되고 스택에서 팝된다. 사용자가 앱 런처의 아이콘(또는 홈 화면의 바로가기)을 터치하면 앱의 작업이 포그라운드로 나온다. 앱의 작업이 없으면(앱이 최근에 사용된 적이 없으면) 새 작업이 생성되고 이 앱의 '기본'활동이 스택의 루트 활동으로 열린다. 멀티태스킹 현재 활동이 또 다른 활동을 시작하면 새 활동이 스택의 맨 위에 푸시되고 포커스를 갖게 된다..

Android 스튜디오 소개 - 1

Android Studio는 통합개발환경(IDE,Integrated Development Environment)이다. IDE는 도구가 가득 들어있는 작업장이라고 해보자. 이 도구들을 사용해 코드를 작성하고 앱이 화면에 어떻게 표시될지 그려볼 수 있다. IDE는 각 화면을 만들 때마다 디자인이 어떻게 표시될지 실시간으로 미리 보여준다. 프로젝트 템플릿 Android 스튜디오에서 프로젝트 템플릿이란 필요한 모든 부분을 가지고 있지만 실행하는 작업이 많지 않은 Android앱이다. Name은 앱의 이름이다. Package name은 Android 시스템에서 앱을 고유하게 식별하기 위해 사용하는 이름이다. Save location은 프로젝트와 관련된 모든 파일이 저장되는 위치이다. Minimum SDK는 앱을 ..

2.Intent

아래 모든 내용은 https://developer.android.com/guide/components/intents-filters?hl=ko에서 가져왔으며, 이해를 하기위해 적어놓은 것이다. Intent는 메시징 객체로, 다른 앱 구성 요소로부터 작업을 요청하는 데 사용할 수 있다. 인텐트가 구성 요소 사이의 통신을 촉진하는 데는 여러 가지 방식이 있지만 기본적인 사용 사례는 크게 세 가지로 나눌 수 있다. 액티비티 시작 Activity는 앱 안의 단일 화면을 나타낸다. Activity의 새 인스턴스를 시작하려면 Intent를 startActivity()로 전달하면 된다. Intent는 시작할 액티비티를 설명하고 모든 필수 데이터를 담는다. 액티비티가 완료되었을 때 결과를 수신하려면, startActiv..

kotlin / kotlin 기본 언어

기본 변수선언 kotlin은 두 키워드(val 및 var)를 사용하여 변수를 선언한다. 값이 변경되지 않는 변수에 val, 값이 변경될 수 있는 변수에 var을 사용한다. 유형 추론 Kotlin 컴파일러는 변수의 유형이 Int인지 String인지 할당된 값의 유형을 기반으로 유형을 추론할 수 있어 유형을 적지 않아도 문제가 없다. 물론 유형을 써주면 확인이나 수정할 때 실수를 줄여주니 적어두면 좋긴하다. Null 안전 일부 언어에서는 초기 값을 명시적으로 제공하지 않고 참조 유형 변수를 선언할 수 있다. 이러한 경우 변수에는 일반적으로 null값이 포함된다. kotlin 변수는 기본적으로 null 값을 보유할 수 없다. null 값을 포함하는 변수는 nullable 유형이어야한다. 아래 예와 같이 ?를 ..

kotlin 2021.08.06

안드로이드 컴포넌트

모든 정보는 https://mommoo.tistory.com/55에서 가져왔으며, 이해를 돕기위해 적었다. 컴포넌트의 유래 컴퓨터와 같은 하드웨어 제품들은 각각의 독립된 기능을 가진 부품으로 만들어진다. 이 제품들은 회사와 상관없이 서로 조합하여 하나의 제품을 만들고, 만약 부품에 문제가 있을 시 다른 부품으로 바꾸어 사용해도 문제가 없다.이렇게 하드웨어 제품들은 각 부품들의 호환을 생각하며 만든다. 반면에 소프트웨어에서는 모듈(부품)들이 독립적으로 개발되지 않은 경우가 많을 뿐더러, 독립적으로 개발되어도 다른 모듈과의 호환을 생각하지 않고 개발한다. 이는 결국 소프트웨어의 재사용을 어렵게 하고 유지보수 비용이 크게 증가하는 원인이 되어 이러한 문제점을 해결하기 위해 나온 기술이 컴포넌트 기술이다. 컴포..

git과 github의 차이

출처 https://hamsworth.tistory.com/entry/Git%EA%B3%BC-GitHub-%EC%B0%A8%EC%9D%B4%EB%A5%BC-%EC%95%8C%EC%95%84%EB%B3%B4%EC%9E%90 [Git] Git과 GitHub 차이를 알아보자. Git : 버전 관리 시스템. (= 프로그램) GitHub : 원격 저장소, 서버 (≒ 클라우드) Git을 구글에 검색하면 꼬리표처럼 따라붙는 GitHub라는 것이 있다. 필자는 처음 Git을 사용할 당시 다짜고짜 GitHub를 가 hamsworth.tistory.com

오픈소스SW 2021.08.04

1.안드로이드 컴포넌트 4가지

1. Activity 안드로이드 프로그래밍을 하면 만나는 가장 기초적인 컴포넌트로서, 사용자 인터페이스의 기본 단위. 앱의 한 화면을 자체를 Activity 라 하고, 일반적으로 앱은 여러개의 Activity로 이뤄지며, 또 하나의 Activity는 여러개의 Activity 또는 View(ex: textview, imageview ...) 로 이뤄져 있다. 2. Service Activity가 화면에 보이고 사용자에게 입출력을 제공한다면, Service의 경우 그와 반대로 화면에 출력되는 UI가 없으며, 백그라운드에서 길고 반복적인 작업을 하는데 사용된다. 예를 들자면, 일반적인 음악재생 앱의 경우, 노래 재생은 계속하되 다른 앱을 실행한다던가 다른 작업을 할수 있다. 즉, 여기서는 노래가 Service..

코루틴 개념

코루틴은 코틀린만의 것이 아니다. 이름이 비슷해서 코틀린의 것이라고 생각할 수 있지만 파이썬, C#, Go, Javascript 등 여러 언어에서 지원하고 있는 개념이다. Javascript를 사용하고 있으면서 async await를 사용하고 있다면 이미 코루틴을 사용해본 경험이 있는것이다. 아무튼 코루틴은 새로운 개념, 새로운 기술이 아니라 프로그래밍이 세상에 나온 초창기 부터 존재하던 개념이다. 앱이든 웹이든 비동기 처리가 핵심인 클라이언트 프로그래밍에서 지금까지 가장 핫한 키워드는 rx programming일 것이다. 그러나 구글이 안드로이드 공식 언어를 자바에서 코틀린으로 변경한 이후, 최근 들어 대표적인 샘플 예제들인 bluprint와 sunflower 앱의 비동기처리(Asynchronous)를..