상속과 인터페이스는 언제 써야될까...?
Framework/Spring2023. 12. 8. 20:49상속과 인터페이스는 언제 써야될까...?

1. 상속(extend) extends(상속) : 이는 '상속'을 의미합니다. '상속'이란 기존의 클래스를 재사용하여 새로운 클래스를 생성하는 개념입니다. 즉, 부모 클래스의 특성과 메서드를 자식 클래스가 물려받는 것을 말합니다. 'extend'는 이러한 상속 관계를 구현할 때 사용됩니다. 이를 통해 코드의 재사용성을 높이고, 코드의 중복을 줄일 수 있습니다. 또한, 상속 관계를 통해 클래스 간의 계층적인 관계를 표현할 수 있습니다. 예를 들면, '동물'이라는 클래스가 있고, 그 내부에 '먹는다', '달린다'라는 메서드가 있다고 가정해보자. 이제 '사자'라는 새로운 클래스를 만들려고 하는데, '사자' 역시 '먹는다', '달린다' 라는 행동을 할 수 있다. 이럴 때 '사자' 클래스를 '동물' 클래스로부터..

트랜잭션(Transaction)이 뭐지?
Framework/Spring2023. 12. 7. 22:47트랜잭션(Transaction)이 뭐지?

1. 트랜잭션(Transaction) 사전적 의미로는 거래를 의미한다. 그렇다면 스프링에서 트랜잭션은 거래와 가까운 기능을 하지않을까? 쉽게 이해 하려면 trans + action 이라고 생각하면 좋다고 강사님께서 말씀하셨는데 꽤 기억에 잘 남는다. 스프링에서의 트랜잭션은 데이터베이스의 상태를 변환시키는 하나의 논리적 기능을 수행하기 위한 작업의 단위 또는 한꺼번에 모두 수행되어야할 일련의 연산들을 모두 의미한다고 한다. 이때 중요한 점은, 트랜잭션이 모두 수행되거나, 그렇지 않다면 수행되지 않아야 한다는 것이다. 스프링에서 이것을 트랜잭션(transaction)의 원자성이라고 부른다고 한다. + 모든 작업이 성공해서 데이터베이스에 정상 반영하는 것을 Commit이라 하고, 작업 중 하나라도 실패해서 거..

[Andorid Studio] hilt 설정 중 kapt이 Intentions에서 뜨지않는 경우
ISSUE/Error2023. 12. 6. 11:17[Andorid Studio] hilt 설정 중 kapt이 Intentions에서 뜨지않는 경우

1. 문제 buildgradle에서 hilt를 사용하기 위해서 추가를 하던 중 kapt를 아무리 타이핑을 해도 사용할 수 없다고 나왔다. 예전 버전에서는 implementation 'com.google.dagger:hilt-android:2.44.2' kapt 'com.google.dagger:hilt-compiler:2.44.2' 이런 식으로 작성을 해서 이 부분에서 차이가 있었나 싶어서 이것저것 다 해보았는데도 되질 않았다... 안드로이드 스튜디오는 워낙 변화가 빠르니깐 사용방법이 대문자로 바뀐건가...? 했는데 역시나 되지 않았고 공식문서를 읽다보니 KSP로 이사를 갔다고... 하는데 기존에 kapt가 지원종료가 된 것이 아니기 때문에 KSP를 사용하던 하지 않던 kapt는 지금도 사용이 되어야하니..

binding을 쓰는 이유
Language/Kotlin2023. 12. 5. 20:03binding을 쓰는 이유

1. binding은 무엇인가? 코틀린에서의 "binding"은 데이터 바인딩(Data Binding) 기술을 사용할 때 생성되는 바인딩 클래스를 의미합니다. 이 클래스는 XML 레이아웃 파일의 뷰와 해당 뷰에 바인딩된 데이터를 연결해주는 역할을 합니다. 데이터 바인딩은 레이아웃과 코드 간의 결합도를 낮추고, 뷰를 더 쉽게 조작하고 업데이트할 수 있는 기술입니다. 데이터 바인딩을 사용함으로써 다음과 같은 이점을 얻을 수 있습니다. 1-1. binding을 사용했을 때 장점 코드 간결성 : 데이터 바인딩을 사용하게 되면 findViewById() 등의 번거로운 작업을 피하고, 바인딩된 뷰에 직접 접근하여 코드를 보다 간결하게 작성할 수 있게 만들어준다고 한다. 가독성 : 데이터 바인딩을 사용하면 XML 레..

Android 컴포넌트는 무엇이 있을까?
Framework/Android studio2023. 12. 5. 15:21Android 컴포넌트는 무엇이 있을까?

1. Android 컴포넌트 컴포넌트(Component)는 소프트웨어 개발에서 독립적으로 동작하거나 재사용 가능한 부분을 말합니다. 안드로이드에서의 컴포넌트는 앱의 다양한 기능과 동작을 구성하는 단위로, 각각의 역할과 책임을 가지고 작동합니다. 안드로이드 앱은 여러 개의 컴포넌트로 구성되며, 각 컴포넌트는 특정한 기능을 수행하거나 역할을 담당합니다. 예를 들어, 액티비티는 사용자 인터페이스를 담당하고, 서비스는 백그라운드 작업을 처리하며, 브로드캐스트 리시버는 시스템 이벤트를 수신하고 처리합니다. 컴포넌트는 독립적으로 작동할 수도 있으며, 다른 컴포넌트와 상호작용하여 앱의 기능을 구현할 수도 있습니다. 예를 들어, 액티비티에서 다른 액티비티로 화면 전환을 할 수 있고, 서비스에서 데이터를 가져와 액티비티..

onBackPressed는 왜 사용을 권장하지 않을까?
Framework/Android studio2023. 12. 4. 22:36onBackPressed는 왜 사용을 권장하지 않을까?

1. 찾아보게 된 이유 강의를 듣다보니 강사님은 onBackPressed를 사용하셨을 때 문제가 없으셨는데 onClick때처럼 줄이 그어져 있어서 요즘 권장하는 것은 무엇일까 하고 찾아보게 되었다. 2. onBackPressed onBackPressed는 안드로이드 시스템에서 제공하는 메서드로, 사용자가 뒤로 가기 버튼을 눌렀을 때 호출됩니다. 이 메서드는 Activity 클래스에 정의되어 있으며, 기본적으로 현재 액티비티를 종료하고 이전 액티비티로 돌아가는 동작을 수행합니다. 하지만 개발자가 onBackPressed를 오버라이드(재정의)하면, 뒤로 가기 버튼을 눌렀을 때의 동작을 사용자 정의할 수 있습니다. 예를 들어, 특정 화면에서 뒤로 가기 버튼을 눌렀을 때 앱을 완전히 종료하거나, 또는 다른 화면..

728x90
image