목록코틀린 공부정리 (42)
개발여행일지~
코틀린의 장점 java와 상호 운용 가능, 간결함, null 안전, 향상된 유형 추론, 기능적 프로그래밍, 향상된 성능, 성장하는 커뮤니티가 코틀린의 장점입니다. Intent가 무엇인가요? Intent는 다른 앱 구성요소(Activity, Service, Broadcast Receiver) 로 부터 작업을 요청하는 메세지 객체입니다. 두가지 종류가 있는데, 명시적 인텐트는 수신하는 컴포넌트가 명시적으로 지정된 인텐트이며, 암시적 인텐트는 해당 작업을 수행 할 수 있는 컴포넌트를 찾아서 수행을 요청하는 인텐트입니다. 주로 액티비티, 서비스를 시작하거나 브로드 캐스트를 전달할 때 사용됩니다.
지금까지 완성한 코드의 개선을 위한 트러블 슈팅에 대해 고민하신 후, 가장 적합하다고 생각하는 트러블 슈팅을 팀원 별로 한 가지 작성해 주세요! 트러블 슈팅은 코드는 구현된 상태에서 ‘느린 것을 빠르게’ 와 같은 개선 시킨 경험을 말합니다. 아직 잘 모르겠다면, 고민 중인 내용을 작성하거나 고민이 필요한 키워드를 튜터님과 논의합니다. 팀원 개인별로 작성해주세요. 강아지 : 문제 - 모든 걸 처리하고 담당하는 액티비티 / 해결, 시도 - MVVM으로 코드 리팩토링(아직 못함) 토끼 : 문제 - 프로필 사진 변경 시 바로 적용이 안 되는 것 / 해결, 시도 - 앱이 실행될 때 불러오는 부분의 코드를 다르게 변경해보았지만 아직 고쳐지지 못함 (해결 안됨) 양 소 : 문제 - 좋아요를 할시에 파이어베이스와 앱과..
배열이 무엇일까요? 배열은 연관된 데이터를 모아서 관리하기 위해서 사용되는 데이터 타입입니다. 변수가 하나의 데이터를 저장하기 위한 것이라면 배열은 여러 개의 데이터를 저장하기 위한 것이라고 할 수 있습니다 dp와 sp, px 단위의 차이점은 무엇일까요? px: 픽셀은 화면을 구성하는 가장 작은 단위로, 디스플레이의 물리적인 한 점을 의미합니다. px를 사용하면 디바이스마다 화면 크기와 해상도가 다르기 때문에 동일한 px 값이더라도 실제로 보이는 크기가 다를 수 있습니다. dp: 픽셀 독립적인 단위로, 160dpi(dots per inch)의 화면에서 1dp는 1px와 동일합니다. 이것은 중간 밀도 화면(즉, mdpi)을 기준으로 합니다. 이 단위를 사용하면 다양한 화면 밀도에서도 동일한 크기로 보여질 ..
형 변환 (Type Casting) 이 뭔가요? 모든 변수와 리터럴에는 타입이 있다. 프로그램을 작성하다 보면 같은 타입뿐만 아니라 서로 다른 타입간의 연산을 수행해야 하는 경우도 있다. 이럴 때는 연산을 수행하기 전에 타입을 일치시켜야 하는데, 변수나 리터럴의 타입을 다른 타입으로 변환하는 것을 ‘형변환(Casting)’ 이라고 한다. constraint layout을 설명해주세요, 다른 레이아웃과 비교해서 장점은 무엇이 있을까요? Android에서 제공하는 레이아웃 중 하나로, 복잡한 뷰 계층 구조를 단순화하고 성능을 향상시키기 위해 사용됩니다. 각 뷰를 화면에 배치하기 위해 상대적인 위치 관계를 정의하는 제약 조건을 기반으로 하며, 이 제약 조건은 부모 레이아웃 또는 다른 뷰에 대한 위치 정보를 제..
연산자란 무엇일까요? 일정한 규칙을 가지고 계산하는 것으로서, 우리가 일상생활에서 사용하고 있는 덧셈, 뺄샘, 곱셈, 나눗셈을 비롯하여 프로그램에서는 자동 증감, 동등 비교, 비교 연산 등 많은 연산자가 있다. 특정 컴포넌트나 액티비티가 명확하게 실행되어야할 경우에 사용됩니다. 암시적 인텐트와 명시적 인텐트를 설명해주세요. 명시적 인텐트는 인텐트에 클래스 객체나 컴포넌트 이름을 지정하여 호출할 대상을 확실히 알 수 있는 경우에 사용합니다. 주로 애플리케이션 내부에서 사용합니다. 암시적 인텐트는 인텐트의액션과 데이터를 지정하긴 했지만, 호출할 대상이 달라질 수 있는 경우에 사용합니다. 이미 기존에 지원하는 앱들이 있는 경우 암시적 인텐트를 사용해서 그 앱들을 사용하면 되는 것입니다.
객체와 클래스의 차이 클래스는 현실 세계의 객체의 속성과 동작을 필드와 메서드로 정의한 것으로 아직 메모리가 할당되지 않은 상태 객체는 클래스의 인스턴스이고 클래스를 기반으로 실제 메모리가 잡힌 것을 의미하며 이런 객체를 조합해 전체 프로그램을 완성해 나가는 것이 객체 지향 프로그래밍이다. 안드로이드 context는 무엇인가요? 컨텍스트는 안드로이드의 컴포넌트들이 동작하기 위해 필요한 정보를 담고 있는 객체를 말합니다. 각각의 컴포넌트들(액티비티, 서비스, 브로드캐스트 리시버 등)은 자신만의 컨텍스트를 가지고 있습니다. 컨텍스트 내에는 어플리케이션의 정보(패키지명 등), 컨텍스트가 실행되는데 필요한 정보(테마 등)를 얻거나 시스템 서비스(윈도우 매니저, 레이아웃 인플레이터 등)를 구동하는데 사용됩니다.
클래스의 요건은 무엇일까요? 상속 가능한 클래스: Activity, Fragment 등 특정한 클래스를 상속하여 사용해야 합니다. 생명주기 관리: 생명주기 메서드를 오버라이딩하여 액티비티나 프래그먼트의 생명주기를 관리해야 합니다. 컨텍스트 접근: 컨텍스트에 접근할 수 있어야 합니다. UI 스레드에서 실행: UI 구성 요소를 조작하거나 생성하는 경우 UI 스레드에서 실행되어야 합니다. 필요한 기능 구현: 특정 기능을 수행하기 위해 필요한 메서드나 변수 등을 포함하여 해당 기능을 구현해야 합니다. 안드로이드 service는 무엇인가요? 안드로이드에서의 서비스(Service)는 유저와 상호작용하지 않으면서 시간이 상대적으로 오래 걸리는 작업을 수행하거나, 다른 애플리케이션에서 사용할 기능을 제공하는 역할을 수..
객체(object)란 무엇일까요? 객체는 속성과 메서드를 가지고 있는 데이터의 집합이고 객체는 클래스의 인스턴스입니다. 안드로이드 activity와 fragment의 차이점을 설명하세요 Activity는 사용자 인터페이스(UI)를 가진 하나의 화면입니다. Fragment는 하나의 Activity 내에서 재사용 가능한 UI 조각입니다. 여러 개의 Fragment를 하나의 Activity에 추가하여 모바일 앱의 멀티탭, 뷰페이저 등을 구현할 수 있습니다.