TIL

240313 TIL

오늘 학습한 내용 Kotlin In Action - 10.1 애노테이션 선언과 적용 내일배움캠프 2주차 개인과제 키오스크 구현 - 결제 과정까지 구현 완료 - Stack을 이용해서 CLI에서 MVP를 흉내내는 좋은 경험이 된 것 같다. Hilt 의존성 주입 강의 4-1. 의존성 주입의 방법, 4-2. Qualifier 활용 - 필드 주입을 할 경우, 해당 프로퍼티는 private 접근자를 붙일 수 없다. 이때, 메서드 주입을 사용하면 private 접근자로 외부에서의 접근을 막으면서 의존성 주입을 사용할 수 있다. - Hilt는 중복 바인딩을 허용하지 않는다. Qualifier를 이용하면 중복 바인딩을 구분하는 Type을 명시해, 중복 바인딩을 사용할 수 있다! 3C4P를 기준으로 팀네이버 1번 문항 지..

2024.03.13 게시됨

포스팅 썸네일 이미지

TIL

240312 TIL - Reflection

오늘 학습한 내용 Kotlin in Action - 6.1 널 가능성 내일배움캠프 2주차 개인과제 키오스크 구현 MVP 패턴을 이용해 CLI 기반의 키오스크 프로그램을 구현하고 있다. https://github.com/DoTheBestMayB/NBC-kiosk MutableList vs Array 관련 코드 https://github.com/rlaxodud214/CodingTest_Kotlin/commit/4dbf4f6b1c42a518a7610783f57eb7086b455368 [level 1] Title: 소수 만들기, Time: 25.06 ms, Memory: 63.1 MB -BaekjoonHub · rlaxodud214/CodingTest_Kotlin@4dbf4f6 rlaxodud214 commit..

2024.03.12 게시됨

포스팅 썸네일 이미지

TIL

240311 TIL

오늘 학습한 내용 Udemy 강의 보기 - 컨멘드 기반 프로그램을 구성할 때, screen과 Stack을 이용해서 View를 흉내내는 방법을 배웠다. 의존성 주입 강의 3-2. AndroidEntryPoint의 이해 3-3. Hilt 모듈과 바인딩 Kotlin In Action 학습 - 6.1 널 가능성 일부 코틀린 코루틴 책 - 8장 잡과 자식 코루틴 기다리기 내일배움캠프 2주차 개인과제 요구사항 분석 및 클래스 기본 코드만 구현 오늘은 특별한 내용이 없어서, 최근에 찾은 좋은 노래로 마무리하겠다. https://www.youtube.com/watch?v=KUpXB4O_1cQ

2024.03.11 게시됨

포스팅 썸네일 이미지

TIL

240309 TIL - 면접을 위한 공부를 하지 말자

오늘 학습한 내용 Kotlin In Action 5.4 자바 함수형 인터페이스 활용, 5.5 수신 객체 지정 람다: with와 apply - 안드로이드에서 setOnClickListener의 인자를 람다 {}로 간단하게 적을 수 있는 이유는 인자에 무명 클래스의 인스턴스를 전달하는 대신 람다를 넘길 수 있기 때문이다. 이것이 가능하려면 인자는 추상 메소드가 단 하나만 있는 인터페이스여야 한다. 이러한 인터페이스를 함수형 인터페이스 또는 SAM 인터페이스라고한다. - with는 파라미터가 2개 인 함수다. 면접을 위한 공부하지 말기 유튜브 추천 영상에 나와 보게 됐다. 채용공고에서 클린코드를 우대한다는 곳에 지원하여, 클린코드에 대한 답변을 잘 했는데, 떨어진 경우가 있다고 한다. 그 이유는 "안다"의 기..

2024.03.09 게시됨

TIL

240308 TIL

오늘 학습한 내용 Kotlin In Action 9.3 변성: 제네릭과 하위 타입 Udemy 강의 - partition : 조건에 따라 collection을 두 개의 리스트로 분리하는 연산 - group: 데이터를 구분할 수 있는 값을 key로 갖는 map 타입으로 변환해주는 연산 - Nested class는 Outer class의 paramter에 접근할 수 없다. - Nested class는 Outer.Nested()와 같이 Outer 클래스를 통해 객체를 생성하지만, Inner class는 Outer().Nested()와 같이 Outer 객체를 통해서 생성한다. - A 클래스의 확장함수를 B 클래스의 body에서 정의할 수 있다. 생성된 A의 확장함수를 B만 호출할 수 있고, A는 호출하지 못한다...

2024.03.08 게시됨

TIL

240307 TIL - 네이버에 합격하는 분들은 어떤 사고를 하실까

오늘 학습한 내용 내일배움캠프 1주차 개인 과제 - 계산기 마무리 사용자가 한 줄로 연산식을 입력하도록 했고, +, -, *, /, % 연산자와 (, ) 괄호를 허용했다. 또한 소숫점을 포함한 실수의 입력도 허용했다. 구현은 6시 쯤에 완료했으나, 테스트 케이스를 작성할 때마다 fail이 추가됐다. 만약 이러한 구현 문제가 코딩테스트로 나왔다면 탈락하지 않았을까? https://github.com/DoTheBestMayB/NBC-calculator 저녁 시간에는 네이버 부스트캠프를 수료한 분들 중 네이버에 입사하신 분들이 입사 준비 과정 경험을 말씀해주시는 웨비나에 참여했다. CS의 중요성을 배웠다. 단순히 한 줄로 설명하는 정도의 짧막한 지식이 아닌, 면접관 분과 해당 지식에 대해 대화를 할 수 있을 ..

2024.03.07 게시됨

TIL

240306 TIL

오늘 학습한 내용 Kotlin In Action 5.3 지연 계산(lazy) 컬렉션 연산 - sequnece CS 학습 - if-else vs when https://dodobest.tistory.com/63 Udemy 강의 계산기 로직 구현 - 내일배움캠프 1주차 개인 과제로 계산기 구현을 진행 중인데, 괄호와 +,-,*,/를 지원하는 로직이 떠오르지 않아 관련 리트코드 문제를 풀어봤다. calculator3가 요구 조건과 비슷한 문제인데, 유료 결제 회원만 볼 수 있다. https://leetcode.com/problems/basic-calculator-ii/ https://leetcode.com/problems/basic-calculator/description/ https://leetcode.co..

2024.03.06 게시됨

TIL

240305 TIL - sealed class

오늘 학습한 내용 Kotlin In Action 9.3 공변성 복습 및 반공변성에 대한 학습 - 제네릭을 제대로 활용하기 위해 꼭 필요한 개념이다. CS 학습 - sealed class, sealed interface, enum class의 차이와 언제 사용하면 좋은지에 대해 학습해봤다. https://dodobest.tistory.com/61 Udemy 강의 - 최상위 클래스 Any의 함수인 toString, equals, hashCode 예시를 통해 알아보는 Data class의 장점 Jetpack Compose Tutorial - Compose Essentials - 7. Get started with state 의존성 주입 강의 - Hilt 의존성 추가 오타로 시간을 많이 소모했다. 직접 타이핑 ..

2024.03.05 게시됨

TIL

240304 TIL

오늘 학습한 내용 Kotlin In Action 5.1, 5.2 Android 의존성 주입 강의 1-3, 2-1 Android 구현 연습 - RecyclerView ViewHolder의 viewLifecycleOwner에 따라 CoroutineScope 실행하기 : 아래 링크는 참고했던 블로그 글인데, 앞으로 Trouble Shooting과 android deep dive 학습 방향의 기준으로 삼을 것이다. https://hodie.tistory.com/116 - Data class를 Json String으로 변환해서 SharedPreferences에 String으로 저장하기 : 클린 아키텍처와 관련된 문제로 이 구현은 잠시 미루고, 의존성 주입 강의를 빨리 수강한 후, 아키텍처를 다시 적용해야 함 오늘..

2024.03.04 게시됨

TIL

1주차 KPT

Keep : 잘하고 있는 점. 계속 했으면 좋겠다 싶은 점. 나에게 익숙한, 편한 공부가 아닌, 어려운, 하기 싫은, 불편한 것 위주로 학습하기 -> 현재 잘하는 것을 더 잘하기 위해서는 못하는 것을 잘하는 수준까지 끌어올리는 것이 필요한 것 같다 Problem : 뭔가 문제가 있다 싶은 점. 변화가 필요한 점. 코테 효율적으로 많이 풀어보기 : 10분 정도 생각해봐도 안 풀리는 문제는 답안을 보면서 생각하는 과정을 익히자. 아직 나는 많이 풀어본 경험이 부족하다. 경험을 통한 사고 과정을 익히는 것이 필요하다. Android 구현에서 막히는 부분이 있으면 멈추고 관련 개념 학습하기 : 구현을 하다가 내가 아직 학습하지 않은 아키텍처를 요구하는 부분이 나왔을 때, 배우지 않은 부분을 배제하고 구현하려다 ..

2024.03.04 게시됨