Apple is Apple
내일배움캠프 7기 Android TIL 14일차 (2023.08.02)
내일배움캠프 7기/TIL 2023. 8. 2. 20:57

일일 회고 Lifecycle 관련 글을 써보며 다시 한번 더 생명주기에 중요성에 대해 알 수 있었다. 그리고 과제를 시작하였다. 선택과제 1까지 구현하였다. 이제 선택과제2도 구현해봐야겠다. 이건 쓸만한 이미지를 구해봐야겠다. 그리고 과제 내용을 다하면, 디자인도 조금 신경써보자....미적감각이 구려서 힘들겠지만.. 오늘의 키워드 액티비티 생명주기 (Acitivity lifecycle) 액티비티 생명주기(Activity Lifecycle) 포스트로 대체 https://aaapple.tistory.com/31 https://aaapple.tistory.com/32

article thumbnail
[Android] Activity Lifecycle - 2
Android 2023. 8. 2. 15:57

지난 글에 이어서 이번에는 직접 생명주기 메소드를 사용하여 안드로이드 스튜디오에서 실행해보며 어떤 순서로 동작하는 지 알아보자 먼저 생명주기 호출 함수를 override하여 내부에서 로그를 찍어보며 확인하도록 로그를 찍어보았다. MainActivity.kt 더보기 package com.example.myapplication import android.content.Intent import androidx.appcompat.app.AppCompatActivity import android.os.Bundle import android.util.Log import android.widget.Button class MainActivity : AppCompatActivity() { override fun onCr..

article thumbnail
[Android] Activity Lifecycle
Android 2023. 8. 2. 12:20

개요 안드로이드 개발에서 액티비티 생명주기는 앱의 실행과 종료 과정을 이해하는 데 핵심적인 개념이다. 액티비티는 4대 컴포넌트 중 하나이며 사용자와의 상호작용(UI, UX)에 밀접한 관련이 되어있다. 따라서 사용자 경험에 직접적인 영향을 미치는 중요한 역할을 수행한다. Youtube앱을 봐보자. 앱을 들어가면 처음 로고가 보이는 화면도 액티비티이고 로고가 내려가고 영상 목록이 보이는 화면도 액티비티이다. (하단 탭에서 메뉴를 클릭하면 화면이 바뀌는데 이것은 프래그먼트로 구성된 것 일 수도 있다.) 이렇게 안드로이드 앱은 많은 액티비티로 구성되어 있다. 이런 액티비티의 생명주기를 갖고 이는 다섯 가지의 주요 상태로 구성된다. 처음 앱이 실행되면 액티비티가 생성되고 시작된다. 이후 액티비티는 사용자와 상호작..

article thumbnail
내일배움캠프 7기 Android TIL 13일차 (2023.08.01)
내일배움캠프 7기/TIL 2023. 8. 1. 20:18

일일 회고 안드로이드 UI 및 4대 컴포넌트 중 하나인 액티비티에 대하여 학습하였다. 아직까진 큰 어려움은 없는 것 같다. 과제를 시작하고, 시행착오가 생기면 글로 남겨보자.. 오늘의 키워드 안드로이드 UI 액티비티 & 인텐트 뷰(view) 안드로이드 앱의 UI를 구성하는 기본 단위 - 위젯, 레이아웃이 있다. 안드로이드 UI를 구성할 때 중요한 것이 있는데, 다양한 기기 해상도에 맞게끔 UI을 만들어야 한다는 것이다. 이에 관해서는 추가 글을 써보려고 한다. https://aaapple.tistory.com/29 위젯(widget) View의 서브 클래스로서, 앱 화면을 구성하는 시각적인 모양을 지닌 UI요소이다. 안드로이드 스튜디오를 살펴보면 굉장히 다양한 위젯이 있는 것을 볼 수 있다. 앱을 만들 ..

article thumbnail
[Android UI] PX, DPI, DP (feat. 다양한 기기와 해상도)
Android 2023. 8. 1. 15:20

안드로이드 기기의 다양성은 우리에게 다양한 기능과 편의성을 제공해준다, 동시에 개발자들에게는 고민을 안겨주기도 한다. 그 중 하나가 바로 '해상도'이다. 안드로이드 기기들은 Android moblie, Android TV, Android Auto 등 다양한 플랫폼에 사용되고 그 안에서도 기기에 따라 굉장히 다양한 해상도를 갖고 있으며, 이는 개발자들이 앱을 디자인하고 개발하는데 영향을 미치고 있다. 이 글에서는 안드로이드 기기별 해상도 차이에 발생할 수 있는 문제와 이를 해결하는 방법에 대해 살펴보고자 한다. 먼저, 해상도를 알아보기전에 알아야 하는 개념이 있다 바로 px, dpi, dp이다. 이들은 해상도를 표현하기 위한 단위로 안드로이드에서는 다양한 단위를 지원하기 때문에 알아 둘 필요가 있다. PX..

article thumbnail
내일배움캠프 7기 Android TIL 12일차 (2023.07.31)
내일배움캠프 7기/TIL 2023. 7. 31. 21:00

일일 회고 주특기 입문 주차가 시작되었다. 처음은 가볍게 안드로이드 입문강의를 들었다. 다 듣고 과제를 시작해봐야겠다. 월요일이니 한 주를 즐겁게 시작해보자. 오늘의 키워드 안드로이드 안드로이드 스튜디오 안드로이드 개요 - 휴대전화를 비롯한 휴대용 장치를 위한 운영체제와 미들웨어, 사용자 인터페이스, 표준 응용 프로그램을 포함하고 있는 모바일 운영체제이자 모바일 플랫폼 버전 - 안드로이드는 2008년 1.0버전 출시 이후 지금까지도 꾸준히 버전업데이트가 되고있음. 안드로이드 앱개발을 할 때는 구동할 수 있는 최소 버전과 타겟 버전이 있어 버전을 지정해주는게 중요함 안드로이드 스튜디오 구조 - 빌드 설정 폴더(Gradle), 앱 매니페스트, Kotlin(java) 코드 폴더 Gradle - 안드로이드 앱의..

[Kotlin] Scope function
Language/Kotlin 2023. 7. 31. 17:12

Scope function Kotlin에서 제공하는 Scope function이다. 주로 객체와 함께 사용되며 편리하고 간결한 코드 작성을 도와준다. 간결한 코드 작성을 위해 필수적으로 알아두면 좋은 챕터라고 생각한다. 이름에서 알 수 있듯이 이 함수를 호출하면 Scope가 생기게 되고 이 Scope안에서는 전달된 객체가 "it" 또는 "this"라는 이름의 Context Object로 사용할 수 있게 된다. Scope function은 총 5가지가 있는데 함수마다 Context Object(전달된 객체)를 참조하는 방법과 리턴 값(Context Object or lambda)이 상이하다. 1. let let은 null이 아닌 값만 실행시키고 싶을 때 주로 사용된다. 그래서 let은?. 연산자와 같이 사..

WIL 3주차
내일배움캠프 7기/WIL 2023. 7. 30. 20:57

DOING IN THIS WEEK : 첫 팀 과제와 알고리즘 문제해결시간이 추가된 주차였다. 팀과제를 통해 팀원들과 소통하며 프로그램을 설계해 보고 구현을 해보았다. 또, 협업에 있어서 깃, 깃허브를 사용하며 협업에 사용되는 방법을 익혔다. 서로 어려운 부분이 있으면 도와가며 진행을 하였다. 알고리즘 문제도 문제를 풀다가 어려운 부분이 있으면 서로 이야기해보는 시간을 가지며 실력을 늘릴 수 있는 시간이 있었다. 이번주의 키워드 소프트웨어 설계 클래스 설계 클래스 재설계 Git & Github Github pull request 정보 알고리즘 풀어보기 FEELING : 확실히 혼자 공부하는 것과 같이 공부하는 것은 다르다고 느꼈다. 혼자 공부할 때는 그냥 맘대로 했었는데, 같이하게 되니 서로 규칙이나 협업..

내일배움캠프 7기 Android TIL 11일차 (2023.07.28)
내일배움캠프 7기/TIL 2023. 7. 29. 23:03

일일 회고 첫 팀과제를 마무리하였다. 같이 알고리즘 문제도 풀어보고 팀 과제도 해결해나가고... 이렇게 같이 공부한다는 것 자체가 값진 경험인 것 같다. 앞으로도 진행하면서 서로가 서로에게 도움을 주면서 성장할 수 있을 것 같다. 오늘의 키워드 알고리즘 풀어보기 일일 알고리즘 (프로그래머스 - 최빈값 구하기) 입력 값으로 배열이 주어지고 출력값으로 배열의 최빈값을 구하거나 최빈값의 개수가 같을 때 -1을 출력하면 되는 문제이다. 입력예시 array result [1,1,2,2,3,3,3] 3 [1] 1 [1,1,2,2] -1 반복문을 돌려가며, 숫자 종류의 갯수를 세며 찾을 수 있긴 하지만, kotlin collection funtion을 활용하면 조금더 간결하게 코드를 만들어 볼 수 있다. // arr..

article thumbnail
내일배움캠프 7기 Android TIL 10일차 (2023.07.27)
내일배움캠프 7기/TIL 2023. 7. 27. 21:05

일일 회고 팀과제도 어느덧 막바지에 들어간다. 계속 혼자 공부하다가 같이 공부하니 어색한 기분도 있고, 함께해서 더 재미있는 기분도 있고... 해서 다채로운 느낌인 것 같다. 이제 수료할 때까지 근 몇 달은 같이 공부하고 프로젝트를 하는 방식이니까 잘 적응해 봐야겠다. 오늘의 키워드 클래스 재설계 Github pull request 정보 클래스 재설계 기존에 설계했던 클래스는 Item 내부에서 각 음식에 대한 리스트를 관리하려고 했었다. 이렇게 되면 상속받은 음식에서 각자의 리스트를 갖고 주문을 하는 UI(order)에서 각 리스트를 합친 통합 클래스를 만들어 관리해야 하는데 이 구조가 비효율적이라 생각이 들어 UI(order)에서 List 형식으로 하여 한 번에 모든 음식을 관리할 수 있는 리스트를 만..