728x90
반응형
- [ pinslog ]2024 : 방황을 끝내고2025-01-18 18:01:21무슨 말을 하든 핑계를 벗어나진 못하겠지만 작년엔 정말로 내가 가진 이 업에 흥미를 느끼지 못했고 허탈감만 가득했다. 그럼에도 불구하고 다시 블로그로 돌아와 이 글을 쓰는 이유는 난 여전히 이걸로 밥 벌어 먹고 살고 있기 때문이고, 그래도 아직은 이 일을 사랑하기 때문이다.이직만 하다 1년을 보낸 사람1.시작은 이랬다. 잘 다니던 회사가 작년 말(2023)부터 삐그덕거리더니 결국엔 가라 앉을 조짐이 보였다. 사실은 내가 입사하기 전부터 문제가 많았던 곳이었고, 난 벌여놓은 것들을 꿰매기 위해 채용된 바늘 그 이상 이하도 아닌걸 알게 된지 얼마 되지 않아 곧이어 회사는 영영 돌아올 수 없는 역사의 저편으로 사라지게 되었다. 여기까지는 그럴 수 있다 치는데..이 과정에서 내가 거둬들인 성과에 대한 보상을 받..
- [ pinslog/Log.daily() ][git] git stash 쓰다 식겁한 이야기2024-07-03 20:55:46개발하면서 git stash 명령어를 요긴하게 사용하고 있었다.A 브랜치에서 작업하다 급하게 B 브랜치로 넘어가야 할때,커밋할 정도는 아니라고 느껴질 때,stash 해놓고 볼일을 보고 돌아와 마저 할 일을 하는 것이 정말 편리했다.이 날도 어김없이 stash 하고 돌아와 apply를 했는데내가 만들어 놓은 파일이 나타나질 않는 것이다.그게 지금 작업의 핵심이라, 사라지면 일을 한 의미가 없어지는 거여서침착하게 마음을 가다듬고 폭풍 검색을 했다.그러다가 어느 블로그에서 stash는 변경사항만 저장하고신규사항은 저장하지 않는다는 것을 알게 되었다. 눈물...작업한 내용은 다행히 로컬에 남아있어 겨우겨우 살려냈다.stash 할 때 신규 작업까지 모두 저장해두려면git stash --include-untrack..
- [ pinslog ]GS 인증 생생 기록 - 마지막2024-04-05 00:08:22지난 글에서 GS 인증 취득 단계 중 상담과 계약에 대해 알아보았다. GS 인증 생생 기록 - 0 참여한 프로젝트의 일차적인 개발이 마무리 된 후 GS 인증 취득 담당 업무를 맡게 되었다. 인증 대상이 내가 참여한 안드로이드 앱이여서 두근거리는 마음으로 업무에 임했다. 아직은 진행중인 www.pinslog.com GS 인증 생생 기록 - 1 GS 인증 생생 기록 - 0 참여한 프로젝트의 일차적인 개발이 마무리 된 후 GS 인증 취득 담당 업무를 맡게 되었다. 인증 대상이 내가 참여한 안드로이드 앱이여서 두근거리는 마음으로 업무에 임했 www.pinslog.com 이번에는 품질 시험 및 평가와 취득 후기에 대해 써보려고 한다. 품질 시험 및 평가 사실 이 부분이 GS 인증의 핵심이라고 봐도 무방하다. 이 ..
- [ pinslog ]100일 챌린지를 끝마치며2023-12-31 16:59:08https://pinslog.tistory.com/155 다시 시작 별다를 것 없던 스터디 와중 루디님이 9월 23일이 되면 2023년까지 100일이 남게 되고, 이 날부터 꾸준히 무언가를 매일 하면 100일동안 하게 되는 것이라고 알려주었다. 습관을 들이는데는 보통 60 www.pinslog.com https://pinslog.tistory.com/256 [Android] BottomSheetDialog WW 앱의 업데이트 상태를 알리기 위한 방법으로 바텀 시트 다이얼로그를 선택했다. 이전에는 기본 다이얼로그를 커스텀해 사용하는 방식을 많이 선택했는데 요즘 앱들을 살펴보면 바텀 시트 다 www.pinslog.com 100일 챌린지를 시작하고 (위) 어제까지 작성한 글(아래)이다. 중간에 챌린지 말고 하..
- [ pinslog/Log.daily() ][Kotlin] Kotlin Destructuring2023-12-27 18:36:42때로는 객체를 여러 변수로 분해하는 것이 더 편리할 때가 있다. 이를 코틀린에선 구조 분해 할당(구조 분해 선언)이라고 하며, 한번에 여러 변수를 생성할 수 있다. data class Person( val name: String, val age: Int, ) fun main() { val person = Person("David", 30) val (name, age) = person println(name) // David println(age) // 30 } 이는 다음과 같이 컴파일 된다. val name = person.component1() val age = person.component2() 데이터 클래스가 자동으로 componentN() 를 제공하며, 클래스에서 직접 구현하기 위해서는 다음과 같..
- [ pinslog/Log.daily() ][Kotlin] takeIf2023-12-26 22:25:37주어진 조건을 만족하는 경우 해당 객체를 반환하는 함수이다. (만족하지 못하는 경우 null을 반환함) takeIf는 단일 객체에 대한 필터링을 도와준다. inline fun T.takeIf(predicate: (T) -> Boolean): T? 주어진 조건 (it.age > 30) 을 만족하는 경우 해당 객체를 반환 그렇지 않은 경우 null을 반환하는 것을 확인할 수 있다. data class Person( val name: String, val age: Int, ) fun main() { val list = listOf(Person("amy", 34), Person("john", 45), Person("tom", 27)) list.forEach { println(it.takeIf { it.age >..
728x90
반응형