전체 글
42
[Android] Data Binding
2023.04.15
면접기록용 Data Binding 정리 Data Binding은 xml 파일에 data를 연결해서 사용할 수 있도록 도와주는 것으로 MVVM 패턴을 구현할 때 LiveData와 함께 거의 필수적으로 사용됨. 데이터 바인딩의 장점은 글루 코드를 줄일 수 있음. 레이아웃과 데이터를 연결하기 위한 코드들을 줄일 수 있음. 내가 사용했던 부분 // ... // ... 전체를 태그로 감싸주고 태그 사이에 태그로 데이터 바인딩에 필요한 변수를 선언해줌. 나는 viewmodel을 데이터 바인딩에 필요한 변수로 사용할 예정이어서 다음과 같이 해줌. class MainActivity : BaseActivity(R.layout.activity_main) { override val viewModel by viewModels..

[Android] MVVM
2023.04.13
면접준비용 MVVM - Android 정리 (맨 아래의 레퍼런스들을 꼭 확인해주세요.) MVC 구성 : Model, View(유저가 보고있는 화면), Controller 흐름 : Controller에서 이벤트 발생 → 이벤트에 따라 Model 업데이트를 요청 → View에 전달 → View는 Model의 업데이트를 받아서 갱신 View, Controller에 로직이 총합되어 있어 테스트 코드 작성이 쉽지 않음. 또한 이렇게 구현한 코드에 특정 기능을 추가하려고 해도 어려움이 있음. MVP 구성 : Model, View, Presenter(View에서 요청한 정보를 Model로부터 가공하여 뷰로 전달) 흐름 : 사용자의 액션을 View로부터 받음 → View는 받은 이벤트를 Presenter로 넘김 → P..

[Android] 안드로이드 리소스
2023.04.07
bitmap 방식 종류 mdpi : 초창기로 1px = 1dp임 hdpi : 1.5px = 1dp xhdpi : 2px = 1dp xxhdpi : 3px = 1dp xxxhdpi : 4px = 1dp 해상도의 크기에 따라 cpu의 노동 강도가 달라짐 만약 xxxhdpi의 해상도를 사용할 수 있는데 xxxhdpi의 리소스가 없으면 xxhdpi, xhdpi, hdpi, mdpi 순으로 리소스를 찾아가면서 사용하게 됨 비트맵은 용량이 큰 대신 품질이 좋음, 그러나 xxxhdpi의 해상도를 사용해야 되는데 없어서 mdpi를 사용하는 경우 pixel이 찌그러드는 단점이 존재 vector svg 확장자를 가진 파일로 xml code로 이루어짐 대체로 용량이 작음 어떤 크기에도 상관 없음 (크기에 구애받지 않음) →..

[Android] AOS ART, Garbage Collector 방식
2023.04.07
Android Linux 기반 ART(Android Runtime)이 java로 돌아가므로 메모리 감독도 Java 방식을 사용 ART? ART는 Android 5.0 (API 레벨 21) 이상이 실행되는 기기의 기본 런타임. 이 런타임은 Android 플랫폼과 앱의 성능, 유연성을 개선하는 수많은 기능을 제공. 안드로이드에서 사용되던 Dalvik VM의 한계점을 극복하기 위해 새로 개발된 런타임 ART의 기능 중 하나인 가비지 컬렉션(GC) 개선 GC는 리소스 집약적이므로 앱 성능을 저하시켜 화면 끊김, UI 응답성 부족 등의 문제가 일어남. ART에서는 백그라운드 메모리 사용량 및 조각화를 줄이기 위한 동시 복사, 단일 GC 일시중지가 있는 동시 실행 설계… 등의 방법으로 GC를 개선 ART 방식? m..

[etc] vi editor 간단한 명령어
2023.04.07
vi editor 파일 열기 vi example.txt //일반 열기 open -a Sublime\ Text example.txt //GUI 기반 에디터로 열기 //팁! 아래와 같이 alias를 만들어두고 사용하기도 함 alias sublime='open -a Sublime\ Text' vi 파일 저장 및 종료 편집 모드 > ESC > :wq (저장 후 종료) :w 저장 :q 아무 수정 작업 하지 않았거나 이전에 :w로 저장한 후 종료하고 싶은 경우 :wq 저장 후 종료 :q! 저장하지 않고 종료 line number :set number :set nonumber //number 다시 감추고 싶은 경우 편집 모드 (Insert Mode, Edit Mode) 편집 모드의 최하단부에는 “파일 이름” 라인수,..
[iOS] xcode에서 하위 폴더 보이지 않는 문제
2023.04.07
A. 문제 상황 xcode에서 git으로 다른 branch의 작업사항 pull한 후 workspace를 여니 project navigator에 폴더 내 다른 사람이 작업한 파일이 보이지 않았음. 파인더에서 폴더 확인한 결과 제대로 pull도 됐고 파일도 존재했음. B. 해결 방법 project navigator에 누락된 하위 폴더들을 드래그해서 넣고 added folders를 create groups로 설정해서 넣어주면 됨. 아니면 project navigator 우클릭 → add files to “…” 선택 → 추가하려는 폴더 넣고 옵션을 똑같이 create groups로 설정. 그리고 add 해주면 잘 들어가 있음.