전체 글

공부한 것을 기록하는 나만의 공간~^^
객체지향/개발자가 반드시 정복해야 할 객체지향과 디자인 패턴

Part 01 들어가기 ( 객체지향이 필요한 이유 )

개발을 하면서 변화 가능한 유연한 구조를 만들어주는 핵심 기법 중 하나인 객체지향(Object Oriented)의 중요성을 깨달았다. 이를 조금 더 자세하게 공부를 하고 싶어 '개발자가 반드시 정복해야 할 객체 지향과 디자인 패턴' 책을 사서 읽고 정리를 한 것을 블로그에 남기기로 했다. ( 추후에 보았을 때 기억에 남기기 쉽게 하기 위해 ) 이번 파트는 Part 01 로 첫번째 시작하는 파트이다. 첫번째 시작하는 파트인 만큼 객체지향이 필요한 이유를 설명한다. 객체지향이 필요한 이유를 설명하기 위해 객체지향을 사용하지 않았을 때와 사용을 했을때를 비교를 하면서 정리를 해보았다. ( 이 책은 참고로 Java 기반으로 예시 코드가 작성되어 있으니 참고 바란다. ) 1. 지저분해지는 코드 메뉴 영역에서 메..

Google IO 2023

Google IO 2023[ Android Studio Bot ]

이번에는 실제로 안드로이드 개발하는데 진짜 유용할 거 같은 정보를 가져왔다! 이번에 설명한 내용은 Android Studio를 이용하는 Android 개발자를 위한 Android Studio Bot 이라는 도구이다. 아래의 동영상을 보고 정리한 내용으로 Android Studio Bot을 설명을 해보겠다. ( 영어를 잘하지 못해 오역이 생기는점 양해 바람 ) ( Android Studio Bot을 소개하는 시간은 12:04 부터이다. ) Meet Studio Bot | Android Studio | Android Developers Learn how to improve your coding productivity with Studio Bot. developer.android.com 1. Android S..

Google IO 2023

Google IO 2023 [ Magic Compose(AI 기반 메시지 기능) ]

이번 Google IO 2023은 2023년 05월 11일 02:00(한국시간)에 열리게 되었다. 새벽에 잠시 보다가 영어가 해석이 안되어서 아침에 다시보기를 되돌려보면서 흥미로운 부분에 대해서 정리를 해보고자 한다. 나는 Android 개발자를 지망하고 있고, 아무래도 Android에 대한 기술에 대해서 관심이 가고 흥미로울 수 밖에 없다. 그래서 이번에 Google IO 2023에서 새롭게 발표된 기술중에 내가 관심있게 본 것은, Android 14에서 AI 기반 기능을 안드로이드 도입했다는 "매직 컴포즈(Magic Compose)" 기능이다. 동영상을 보고 이것을 해석하고 이해한 대로 정리를 해보도록 하겠다.( 영어를 잘하지 못해 오역이 생기는점 양해 바람 ) ( 참고 : 매직 컴포즈(Magic ..

TIL

기본 테마가 Material Theme 일때, Style을 정의하여 사용하면 Button의 background(배경색) 적용되지 않는점 및 적용 되었다면 Button의 enabled / abled 구분해서 배경색 적용 해결법

1. 사전지식 Style : View 모양을 지정하는 속성의 모음이다. 예를들어 font size, font color, background color 등과 같은 것을 지정하는 속성 모음이다! 한번 직접 Style을 정의(커스텀)해서 사용을 해보겠다. 2. 의문점 및 해결 2-1. 앱 전체의 기본 테마가 Material Theme가 기본 테마일때, 내가 Style을 정의해서 backgroud 속성에 대한 것을 정의했고, 그 Style을 Button에 적용을 시켰는데 반응이 일어나지 않는 경우를 살펴보자. [의문점] 앱 전체의 기본 테마가 Material Theme가 기본 테마일때, 내가 Style을 정의해서 backgroud 속성에 대한 것을 정의했고, 그 Style을 Button에 적용을 시켰는데 반응..

Kotlin/궁금한 점 의문 해결

data class의 얕은복사, 깊은복사 의문점 해결

1. 사전지식 data class란 데이터의 보관이 목적인 클래스로 가장 큰 특징인 toString(), equals(), hashode(), copy()가 우리가 원하는 목적으로 오버라이딩이 되어 있어 데이터 출력, 비교, 복사가 편하다. GitHub - meenjoon/TIL Contribute to meenjoon/TIL development by creating an account on GitHub. github.com 2. 의문점 및 해결 [의문점] 나는 객체(인스턴스)를 생성하고 이것을 '='을 통해 다른 변수에 할당해주면 얕은 복사가 된다는 것을 깨달았다. 나는 구글링을 해보면서 얕은복사가 아닌 깊은복사를 하기 위해선 data class의 copy()메서드, Cloneable 인터페이스 사용..

Kotlin/궁금한 점 의문 해결

얕은 복사를 이용해 문제를 풀었을때의 의문점 해결

▩목 차▩ 1. 의문점 및 해결 1. 의문점 해결 // 코드 val chunkList = mutableListOf() for((index,value) in list.withIndex()) { val lastChunk = chunkList.lastOrNull() if (lastChunk == null || lastChunk.count() == size) { chunkList.add(mutableListOf(value)) } else { println() chunkList.forEachIndexed { index2, it -> print("|for문 인덱스($index),값 추가 전 인덱스($index2)| ") it.forEach { print(" $it ") }} println() lastChunk.ad..

삼겹살짱짱맨
BJ의 엉금엉금 개발 이야기