목록코틀린 공부정리 (42)
개발여행일지~
패키지는 무엇일까요? 코틀린 프로그래밍 언어에서 코드를 체계적으로 관리하기 위한 방법입니다. 패키지는 연관된 클래스, 함수, 객체 등을 그룹화해서 구조화하는데 사용됩니다 ContentProvider는 무엇인가요? 안드로이드에서 데이터를 관리하고 다른 앱과 공유하는 컴포넌트입니다 데이터의 읽기, 쓰기, 수정, 삭제 등의 CRUD 연산을 처리하며, 이 데이터는 파일 시스템, SQLite 데이터베이스, 웹, 또는 앱이 제공하는 모든 영구 저장소에 저장될 수 있습니다.
접근제어자는 어떤게 있을까요? private, protected, internal, public foreground service와 background service의 차이점이 무엇인가요? 1. foreground service는 사용자에게 알림을 통해 직접적으로 보이는 반면에 background service는 보통 사용자의 인지 없이 작동합니다. 2. foreground service는 시스템이 메모리 부족 시에도 종료하지 않으려고 노력하는 반면에 background service는 자원이 부족할 경우 종료될수있습니다. 3. Android 8.0 이상에서는 백그라운드 작업에 대한 제한이 강화되어서, 긴 시간 동안 실행되어야 하는 작업은 주로 포그라운드 서비스로 구현하게 됩니다.
디폴트 파라미터에 대해서 설명해주세요(장/단점) 장점 함수를 호출할 때 인수를 생략하면 기본값으로 설정된 값을 사용하는 기능입니다. 이는 함수를 더 유연하게 사용할 수 있게 해주며, 함수 오버로딩을 줄일 수 있습니다. 코드의 가독성을 높여줍니다. 단점 함수의 시그니처를 복잡하게 만들 수 있습니다 디폴트 파라미터가 많아지면 함수 사용자가 파라미터의 순서를 정확히 기억해야 하는 문제가 발생할 수 있습니다. 안드로이드 앱에서 데이터 저장 방법에 대해 설명하세요 1. Shared Preferences 키-값 쌍(key-value pair)으로 사적이고 기초적인 데이터를 저장한다 2. Internal Storage 사정인 데이터를 장치 메모리에 저장한다 3. External Storage 공유 데이터를 공유 외부..
지금까지 완성한 코드의 개선을 위한 트러블 슈팅에 대해 고민 후, 가장 적합하다고 생각하는 트러블 슈팅을 팀원 별로 한 가지 작성해 주세요! 트러블 슈팅은 코드는 구현된 상태에서 ‘느린 것을 빠르게’ 와 같은 개선 시킨 경험을 말합니다. 아직 잘 모르겠다면, 고민 중인 내용을 작성하거나 고민이 필요한 키워드를 튜터님과 논의합니다. 팀원 개인 별 작성 강아지 : 좀 더 효율적으로 코드를 구성할 수 있는 방법이 무엇인지 모르겠음 토끼 : 어떤 코드를 써야 좀 더 좋은 코드가 완성되고, 문제가 발생했을 때 해결이 되는지 모르겠음 양 : 버그나 기술적인 의사결정 때 관련 지식이 부족해서 빠른해결을 하지 못함 소 : 코드가 좀 더 최적화된 효율적으로? 짜고싶은데 어떻게해야할지 잘 모르겠습니다. 이번 주 한 일 팀..
in 키워드에 대해서 설명해주세요 코틀린의 in 키워드는 코드를 더 간결하고 직관적으로 작성할 수 있게 도와줍니다. 복잡한 반복문 혹은 조건문을 간단하게 표현하는 도구이고 in 키워드는 !을 앞에 붙여 not in 형태로 사용할 수도 있습니다. 이 경우 해당 요소가 범위나 컬렉션에 포함되어 있지 않음을 검사하게 됩니다. 리사이클러뷰 어댑터에서 반드시 구현해야하는 세가지 메소드가 무엇인가요? onCreateViewHolder onBindViewHolder getItemCount()
when 은 어떨때 사용하나요? when 구문은 자바의 switch 구문에 해당하는 조건문입니다. when 구문은 표현식이나 값을 다양한 경우에 대해 비교하고 싶을 때 사용됩니다. 안드로이드에서 사이즈가 큰 이미지를 불러오려고 합니다. 어떤 방법을 사용할 수 있을까요? Glide나 Picasso와 같은 이미지 로딩 라이브러리는 이미지 로딩, 캐싱, 메모리 관리 등을 자동으로 처리해줍니다. 이 라이브러리들은 자동으로 이미지의 크기를 조절하고 메모리를 효율적으로 관리해줍니다.
enum 은 무엇인가요? enumerated type의 줄임말로 열거형이라고 부르기도 하는데 컴퓨터 프로그래밍에서 열거형(enumerated type, enumeration)은 요소, 멤버라 불리는 명명된 값의 집합을 이루는 자료형이다. 열거자 이름들은 일반적으로 해당 언어의 상수 역할을 하는 식별자이다. Retrofit이란 무엇인가요? 안드로이드 애플리케이션에서 통신 기능에 사용하는 코드를 사용하기 쉽게 만들어놓은 라이브러리이다. REST 기반의 웹 서비스를 통해 JSON 구조의 데이터를 쉽게 가져오고 업로드할 수 있다.
코틀린의 프로퍼티와 변수의 차이 프로퍼티(val)는 읽기전용이고, 한 번 값이 할당되면 이후에 변경할수없는 특성을 가지고있습니다. 변수(var)는 선언된 변수를 변경 가능한 값이고, 변수값은 선언 후에도 변경할 수 있습니다. 위와 같은 특성이 있기때문에 코틀린에서는 var와 val을 구분해서 사용합니다. AndroidManifest에 대해 설명해주세요 앱의 필수 구성 요소이며 정의되지 않은 권한이나 구성요소를 앱 구동 시 사용할 수는 없습니다. 쉽게 말해 안드로이드 프로젝트에서는 반드시 필요한 파일들이 있습니다. AndroidManifest.xml이란 파일이며 Manifest 파일은 앱에 대한 필수 적인 정보를 안드로이드 툴과, OS, Google Play 스토어에 제공됩니다. 해당 파일에는 여러 정보들..