본문 바로가기
SMALL

분류 전체보기62

[Kotlin] Synchronized와 ReentrantLock이란? 1. Synchronized란? Synchronized는 어노테이션을 사용하는 method와 synchronized block을 사용하는 statements 두 가지로 구분할 수 있습니다. 먼저 method는 아래와 같이 '@Synchronized'를 선언합니다. @Synchronized fun syncMethod() = run { } @Synchronized fun syncMethod2() = run { } @Synchronized로 메소드 전체에 lock걸어 해당 method는 한 번에 하나의 스레드에서만 실행됩니다. 주의해야 할 점은 Synchronized를 method에 걸면 같은 클래스의 다른 Synchronized method와 같은 진입조건을 갖게 됩니다. 즉, syncMethod2()라는 .. 2023. 3. 1.
2023년 2월 28일 인터넷 강의를 하나 샀다. Flutter로 클론 코딩을 하는 강의인데 Flutter로 한 번도 개발을 해보지 않아서 어떤 방식으로 개발을 하게 될지 궁금하기도 하고 어떻게든 뽕을 뽑으려고 노력하려 한다. 추후에 kotlin이 아닌 Flutter로 앱을 개발하게 될 수도 있으니 강의를 들으면서 블로그나 Github에 관련 포스트를 기록해서 정리를 잘해야겠다. 2023. 3. 1.
2023년 2월 27일 주말 동안 대학교 친구들과 용인 펜션으로 놀러가니 주말이 엄청 빠르게 지나간 것 같다. 오늘도 혼자 집에서 유튜브를 보면서 쉬고 있었는데 '마이루틴'이라는 루틴 관련 앱에 대한 영상을 봤다. 스타트업 회사에서 만든 앱인데 간단하면서 생활에 직접적으로 연관된 서비스라는 점에서 매력적인 것 같다. 서비스를 만들기 전 설문조사와 실험을 통해 결과를 내어 어떤 기능을 넣어야 사용자에게 더 도움이 될지 체계적으로 접근했다고 한다. 개인적으로 앱을 출시해서 서비스를 해보고 싶다는 생각을 했었는데 나도 이렇게 철저하게 계획한 후에 앱을 출시해야 하나 싶은 생각이 들었다. 하지만 거창한 서비스를 기획하여 앱을 만들기 보단 복권번호 생성 앱, 간단한 알람앱 등을 만들어 앱 서비스 제공에 대한 A to Z를 나 혼자 해보.. 2023. 2. 28.
2023년 2월 23일 한 회사의 코딩테스트를 봤다. 팰린드롬이라는 알고리즘 문제였는데 역시나 어려웠다. 코딩테스트가 실무에서 쓰이는 건지 의아한 부분이 많아서 공부를 하지 않았는데 한 회사에서 이정도 문제는 풀 수 있어야 그 회사의 팀원들과 같이 일하는데 문제가 없다고 판단하는 기준인 듯하다. 구직 활동을 하면서 코딩테스트도 풀어서 블로그에 게시물로 업로드해야겠다. 2023. 2. 23.
ConstraintLayout과 LinearLayout ConstraintLayout과 LinearLayout은 안드로이드 앱을 개발할 때 사용되는 레이아웃 매니저 중 두 가지입니다. LinearLayout은 뷰를 수평 또는 수직으로 정렬하는 데 사용됩니다. 즉, 뷰가 하나씩 순차적으로 배치됩니다. LinearLayout은 간단하고 쉽게 사용할 수 있으며, 가볍고 빠릅니다. 또한, LinearLayout은 뷰들이 선형으로 배치되기 때문에 화면을 작게 사용하는 경우에 유용합니다. ConstraintLayout은 RelativeLayout의 업그레이드 버전으로, 뷰를 상대적인 위치를 사용하여 배치하는 데 사용됩니다. ConstraintLayout은 뷰를 자유롭게 배치할 수 있어서 다양한 화면 구성을 구현하기 용이합니다. 또한, ConstraintLayout은 레.. 2023. 2. 21.
[MVVM] MVVM의 ViewModel과 AAC(Android Architecture Components)의 ViewModel의 차이 개요 - MVVM 패턴의 ViewModel - AAC의 ViewModel - MVVM의 ViewModel과 AAC ViewModel의 차이점 @ MVVM 패턴의 ViewModel MVVM (Model-View-ViewModel) 패턴은 소프트웨어 아키텍처 패턴 중 하나로, 안드로이드 앱 개발에서도 널리 사용되고 있습니다. MVVM 패턴은 데이터를 처리하고 표시하는 데 필요한 로직을 View에서 분리하여 ViewModel에서 처리하는 것이 특징입니다. 이를 통해 코드의 재사용성과 유지보수성을 향상시킬 수 있습니다. MVVM 패턴에서의 ViewModel은 View와 Model 간의 연결고리로 동작합니다. View는 ViewModel을 통해 Model과 상호작용하며, ViewModel은 View와 Model .. 2023. 2. 21.
LIST