TIL

240318 TIL

오늘 학습한 내용 프로그래머스 체육복 문제 풀의 작성 - 리트코드처럼 풀이 시간이 더 짧은 사람의 코드를 볼 수 있으면 하는데, scope function을 이용해서 짧고 멋있어 보이는 코드에만 👍이 찍혀서, 도움이 되지 않는다. 빨리 개선좀 했으면 좋겠다. - MinHeap, MaxHeap이 내부에 구현되어 있는 PriorityQueue를 이용해 정렬 시간 단축 https://dodobest.tistory.com/75 Kotlin In Action 6.2 코틀린의 원시 타입 - 함수가 exception을 던지기만 할 경우에 명시할 수 있는 타입인 Nothing을 배웠다. - 코틀린은 원시타입과 참조 타입을 구분하지 않는다. 다만 JVM에서 동작하기 위해 자바 코드로 변환되는데, 제네릭 타입에 원시 타입..

2024.03.18 게시됨

포스팅 썸네일 이미지

TIL

240315 TIL

오늘 학습한 내용 코틀린 코루틴 책 읽기 - 16장 채널, 17장 셀렉트, 18장 핫 데이터 소스와 콜드 데이터 소스 - Sequence(결과를 바로 반환, Hot Channel)와 Flow(사용자 요청이 있을 때, 연산 후 결과를 반환, Cold Channel)의 차이에 대해 배웠다. 현재 상황 Leetcode를 꾸준히 풀기 시작한지 약 2달 반 정도 지났는데, Medium 중간 이하 난이도 문제는 어느 정도 풀이의 흐름이 보이기 시작했다. Hard에 가까운 Medium이나 Hard 문제는 BruteForce 방식은 떠오르나, BruteForce의 반복되는 부분 또는 부분 문제로 분할하여 이전 값을 더 큰 문제에 적용하는 아이디어는 아직 떠오르지 않고 있다. 이전에 아이디어가 안 보이던 문제가, 자연스..

2024.03.16 게시됨

TIL

240314 TIL

오늘 학습한 내용 Kotlin In Action 10.2 리플렉션 일부 내용 내일배움캠프 2주차 개인과제 키오스크 구현 마무리 - 결제 잔액 확인 및, 서버 점검 시간 로직 구현 - Level5에 쓰레드 개념을 이용하는 요구사항이 있는데, 아직 코루틴에 대한 이해가 충분하지 않아 해당 요구사항은 구현하지 않았습니다. https://github.com/DoTheBestMayB/NBC-kiosk/tree/develop 의존성 주입 강의 4.3 Lazy와 Provider - Lazy는 Hilt Component에 Lazy 객체를 저장하고, Lazy 객체의 get 메소드 최초 호출하는 시점에 Lazy의 제네릭 T 클래스의 인스턴스를 생성한다. 최초 호출 이후에는 이미 생성한 인스턴스를 반환한다. - Provid..

2024.03.14 게시됨

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 게시됨