전체 233

Nutri Capture 프론트엔드 - NutrientScreen의 무한 스크롤

#1 깨알 변경 - SnapshotStateList로 마이그레이션#1-1 NutrientScreenState.kt......import androidx.compose.runtime.snapshots.SnapshotStateListdata class NutrientScreenState( val dailyMeals: SnapshotStateList)data class DailyMeal( var date: LocalDate, val meals: SnapshotStateList)data class Meal( var time: LocalTime, var name: String, val nutritionInfo: NutritionInfo,)List형을 전부 SnapshotStateL..

Nutri Capture 프론트엔드 - NutrientScreen 구조 잡기

#1 깨알 변경 사항#1-1 "NutrientInputScreen"을 "NutrientScreen"으로 변경가독성을 위한 이름 변경이다. #1-2 "nutrient" 패키지 생성먼저, "NutrientScreen"를 "nutrient" 패키지에 넣는다. 또, 본 게시글에서 새로 만들 모든 파일은 해당 패키지에 들어간다 #2 개요#2-1 객체 지향적 UI 설계 [Android] Jetpack Compose - 객체 지향적 UI 레이어 설계#1 개요 UI 레이어  |  Android Developers이 페이지는 Cloud Translation API를 통해 번역되었습니다. UI 레이어 컬렉션을 사용해 정리하기 내 환경설정을 기준으로 콘텐츠를 저장하고 분류하세요. UI의 역kenel.tistory.com위 ..

Nutri Capture 방향성 - 고유인지감각, 새 UI 스케치

#1 사용자의 속마음#1-1 나쁜 사용자 경험의 요소: 높은 피로감 Nutri Capture 방향성 - 살아남는 앱이 되려면#1 앱의 인기는 끝났다 앱의 인기는 끝났다당신의 폰에는 이미 앱이 꽉차 있다. 그래서 당신은 이제 새로운 앱을 다운로드 하지 않는다. 새롭게 앱을 출시하는 앱개발사나 앱퍼블리셔는 지속해kenel.tistory.com위 게시글에서 Nutri Capture를 살아 남는 앱으로 만들겠다는 포부를 밝혔다. 그러려면 사용자가 원하는 것이 무엇인지 알고 정확하게 제공해야할테다. 식단 관리... 이전에 나는 여기에서 사용자가 자신이 먹은 영양 기록을 수치로 입력하는 내용의 UI 스케치를 했었다. 자신이 먹은 음식의 양과 영양분을 칼같이 계산하고, 그걸 매번 기록하는 게 정말로 사용자가 원하는 ..

디베이터 - 논제

#1 개요논제는 무엇에 대해 어떻게 싸울 것인가?를 정의내린다. 논제는 '내용에 대한 제목' 이상의 무게감을 지니는데, 그 이유는 논제가 아주 살짝만 틀어져도 토론 결과가 뒤집히기 십상이기 때문이다. 또, 좋은 토론은 좋은 논제에서부터 시작된다. #2 핵심 논리#2-1 논제사람들은 실제로 특정 주제에 포커스를 맞추기보단 '마치 주제에 부합하는 양 말하기'를 더 잘한다. 말하자면 우리는 미묘하게 주제를 바꾸면서, "그 점과 관련해서" 같은 말을 종종 끼워넣으며 마치 그 주제에 관해 말하는 듯한 인상을 준다는 이야기다. 우리 대부분은 자유롭게 흘러가는 가벼운 대화를 즐기기 때문에 자기 말이 주제에 부합하는 지 애써 점검하지 않는다. 그러다보니 이런저런 근거를 대는 척하다가 주제에서 멀어져 결론으로부터 한참 ..

책/자기 계발 2024.09.29

Nutri Capture 프론트엔드 - NavigationBar

#1 개요#1-1 NavigationBar에 넣을 아이콘 가져오기 Material Symbols and Icons - Google FontsMaterial Symbols are our newest icons consolidating over 2,500 glyphs in a single font file with a wide range of design variants.fonts.google.comNavigationBar을 구현하기 위해선 먼저 아이콘이 필요하다. 위 페이지에서 SVG 아이콘을 다운로드했다. 이전 게시글에서 만든 NavHost의 Destination은 3개이므로 각각의 Destination에 어울리는 아이콘 3개를 골라 다운로드 했다 (참조: 첫번째 아이콘, 두번째 아이콘, 세번째 아이콘)..

디베이터 - 서론

#1 책 소개 디베이터 | 서보현 - 교보문고디베이터 | 김용 전 세계은행 총재, 석지영 하버드 로스쿨 종신교수, 스티븐 슈워츠먼 블랙스톤 창립자, 홍정욱 올가니카 회장, 애덤 그랜트 와튼스쿨 교수가 강력 추천한 지금 우리가 읽어야 할product.kyobobook.co.kr토론에 대한 이야기들이 담겨 있다. 토론이란 무엇인가? 토론의 기술은? 토론 대회에서의 토론 그리고 일상에서의 토론은 어떻게 다른가? 토론의 '기술'에 대해서만 다루는 서적이라고 보면 오산이다. 토론이라는 행위 자체에 대해 생각할 거리를 던져준다. #2 핵심 논리#2-1 '수준 높은 반대'라는 목적지이 책은 토론의 두 가지 형태에 관한 것이다. 하나는 두 팀이 심사위원단 앞에서 주어진 논제를 가지고 제 주장을 펼치며 경쟁하는, 일종의..

책/자기 계발 2024.09.26

Nutri Capture 프론트엔드 - NavHost

#1 개요#1-1 Scaffold의 bottomBar Nutri Capture 프론트엔드 - Scaffold#1 개요#1-1 첫 삽 뜨기무엇부터 손을 대야할 지 감이 잡히지 않는다. 프로토타이핑을 한번 더 해야 하나? 소프트웨어 모델링이라는 건 뭐지... 이걸 먼저 공부해야할까? ...  여러 의문이 든다. 그kenel.tistory.com이전 게시글에서 Scaffold를 만들었다. 해당 Scaffold에는 대부분 앱의 전형적인 구조로서 포함되는 NavigationBar를 넣을 것이다. 그러기 위해서 먼저, NavHost부터 만들어둘 필요가 있다. #1-2 NavHost 구현 [Android] Jetpack Compose - Navigation 기초#1 개요#1-1 전통적인 안드로이드 프로젝트에서의 Na..

Nutri Capture 프론트엔드 - Scaffold

#1 개요#1-1 첫 삽 뜨기무엇부터 손을 대야할 지 감이 잡히지 않는다. 프로토타이핑을 한번 더 해야 하나? 소프트웨어 모델링이라는 건 뭐지... 이걸 먼저 공부해야할까? ...  여러 의문이 든다. 그래도 분명한 건 앞으로 내가 핵심적으로 공들여야할 무언가(핵심 과제)는 분명 존재할 것이라는 사실이다. 가령 프론트엔드에서 매끄러운 애니메이션을 구현해야한다거나 생명주기를 말끔하게 처리하는 작업들이 그 예일 것이다. 그 과제까지 닿기 위해서 먼저 확실히 해두어야 하는 것들부터 먼저 처리해야한다. #1-2 Scaffold [Android] Jetpack Compose - Scaffold#1 개요#1-1 Scaffold의 사전적 의미Scaffold는 비계((건설) 높은 곳에서 공사를 할 수 있도록 임시로 설..

[백준] 1260 (DFS와 BFS)

#1 알고리즘DFS 및 BFS 알고리즘을 알고 있는지 묻는 간단한 문제다. 하지만, 약간 신경 쓸 점이 3가지 있다. 1. 방문할 수 있는 정점이 여러 개인 경우에는 정점 번호가 작은 것을 먼저 방문 인접 배열을 정렬하면 된다. 나는 퀵 정렬을 이용했다.2. 정점의 개수 N(1 ≤ N ≤ 1,000) 문제에서 출제되는 정점은 1부터 시작한다. 즉, 1-based indexing을 사용하고 있다. 나는 이 문제를 풀기 위해 예전에 정리해 게시글로 남겨두었던 BFS 및 DFS 알고리즘 코드를 그대로 가져다 쓸 건데, 문제는 해당 코드들은 정점이 0부터 시작한다는 조건 하에 짜여진 코드들이다. 즉, 정점이 0-based indexing을 사용하고 있다. 이 차이를 해소하기 위해서 '인접 배열들의 리스트(lis..

그래프 - 깊이 우선 탐색 (DFS, Depth-First Search)

#1 그래프의 탐색 깊이 우선 탐색 - 위키백과, 우리 모두의 백과사전위키백과, 우리 모두의 백과사전. 깊이 우선 탐색 깊이 우선 탐색의 애니메이션 예시 깊이 우선 탐색( - 優先探索, 영어: depth-first search, DFS)은 맹목적 탐색방법의 하나로 탐색트리의 최근에 첨가ko.wikipedia.org그래프의 각 정점을 한번씩 방문할 필요가 있다고 해보자. 그 방문의 방법에는 크게 2가지 방법이 있다. 하나는 깊이 우선 탐색이다. 또 다른 하나는 너비 우선 탐색이다. 본 게시글에서는 깊이 우선 탐색법을 다룬다. (너비 우선 탐색에 대해서는 이 게시글에서 다룬다) #2 알고리즘원래라면 순서도를 통해 알고리즘을 소개하고 코드로 넘어가는 편이 이해하기 좋지만, 그래프 탐색 알고리즘은 그냥 코드부터..