전체 글 196

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 알고리즘원래라면 순서도를 통해 알고리즘을 소개하고 코드로 넘어가는 편이 이해하기 좋지만, 그래프 탐색 알고리즘은 그냥 코드부터..

그래프 - 너비 우선 탐색 (BFS, Breadth-First Search)

#1 그래프의 탐색 너비 우선 탐색 - 위키백과, 우리 모두의 백과사전위키백과, 우리 모두의 백과사전.ko.wikipedia.org그래프의 각 정점을 한번씩 방문할 필요가 있다고 해보자. 그 방문의 방법에는 크게 2가지 방법이 있다. 하나는 너비 우선 탐색이다. 또 다른 하나는 깊이 우선 탐색이다. 본 게시글에서는 너비 우선 탐색법을 다룬다. (깊이 우선 탐색에 대해서는 이 게시글에서 다룬다) #2 알고리즘원래라면 순서도를 통해 알고리즘을 소개하고 코드로 넘어가는 편이 이해하기 좋지만, 그래프 탐색 알고리즘은 그냥 코드부터 보는 게 오히려 이해가 더 빠르다고 생각한다. 다만, 인접 배열 (Adjacency Array)의 지식에 대해서는 알고 있어야 한다는 전제 하다. 여기서 사용할 인접 배열은 이 게시글..

Nutri Capture 방향성 - 살아남는 앱이 되려면

#1 앱의 인기는 끝났다 앱의 인기는 끝났다당신의 폰에는 이미 앱이 꽉차 있다. 그래서 당신은 이제 새로운 앱을 다운로드 하지 않는다. 새롭게 앱을 출시하는 앱개발사나 앱퍼블리셔는 지속해서 증가하고 있지만 어느 순간 앱마켓이 포brunch.co.kr일단은 잘 만들려고만 했다. 잘 만드는 건 어렵다. 그래도 문제될 건 없다. 어려워도 해내면 된다. 하지만 진정한 문제는 나의 능력이 아니라, 현실이다. 사람들은 이제 앱을 다운로드하지 않는다. 더 정확히는, 새로운 앱을 다운로드하지 않는다. #2 살아남은 앱들의 특징#2-1 네 가지 분류다른 사람들의 마음을 헤아릴 것도 없다. 당장 나부터 쓰는 앱만 쓴다. 그 앱들은 크게 4가지 분류로 나뉜다고 생각한다. (1) 국민 누구나 쓸 정도의 앱, (2) 반강제적으..

[Android] Jetpack Compose - Navigation의 Destination 간 데이터 전달 (NavBackStackEntry.arguments)

#1 이전 글 [Android] Jetpack Compose - Navigation 기초#1 개요#1-1 전통적인 안드로이드 프로젝트에서의 Navigation [Android] Navigation - 기초#1 이전 글 [Android] Navigation - 환경 설정 #1 Navigation#1-1 액티비티 및 프래그먼트 구성의 트렌드요즘 안드로이드 개발kenel.tistory.com본 게시글에선 위 게시글의 완성된 앱을 일부 수정하여, Destination끼리 서로 데이터를 전달하게 만들어본다. 이를 위해서 먼저 NavBackStackEntry에 대해 알아야 한다. 이름에서 보듯, NavBackStackEntry은 백 스택을 관리하는 객체다. 따라서, Back Stack(백 스택)이 뭔지 알아야 Na..

[Android] Jetpack Compose - Navigation 기초

#1 개요#1-1 전통적인 안드로이드 프로젝트에서의 Navigation [Android] Navigation - 기초#1 이전 글 [Android] Navigation - 환경 설정 #1 Navigation#1-1 액티비티 및 프래그먼트 구성의 트렌드요즘 안드로이드 개발의 트렌드는 하나의 액티비티, 여러 개의 프래그먼트다. 이는 구글의 권장사항kenel.tistory.com위 게시글은 Jetpack Compose가 쓰이지 않은 전통적인 구조의 안드로이드 프로젝트에서의 Navigation에 대해 다룬 게시글이다. #1-2 Jetpack Compose 구조의 안드로이드 프로젝트에서의 Navigation Compose를 사용한 탐색  |  Jetpack Compose  |  Android Developers이..

[Android] Jetpack Compose - 객체 지향적 UI 레이어 설계

#1 개요 UI 레이어  |  Android Developers이 페이지는 Cloud Translation API를 통해 번역되었습니다. UI 레이어 컬렉션을 사용해 정리하기 내 환경설정을 기준으로 콘텐츠를 저장하고 분류하세요. UI의 역할은 화면에 애플리케이션 데이터를developer.android.com안드로이드 UI 설계에 대한 공식 가이드에 기반해, 샘플 Jetpack Compose 앱을 만들어본다. #2 앱 미리보기#2-1 작동 화면국가, 대륙 별로 다른 신발 사이즈를 상호 변환할 수 있는 간단한 앱이다. 4개의 TextField 중 아무 TextField에 값이 입력되면 "변환" 버튼이 활성화되어 클릭이 가능해진다. 4개의 TextField 중 오직 하나에만 값 입력이 가능하기에, 예를 들어 ..

[Android] Jetpack Compose - Side-effects

#1 개요 Compose의 부수 효과  |  Jetpack Compose  |  Android Developers이 페이지는 Cloud Translation API를 통해 번역되었습니다. Compose의 부수 효과 컬렉션을 사용해 정리하기 내 환경설정을 기준으로 콘텐츠를 저장하고 분류하세요. 부수 효과는 구성 가능한 함수의 범developer.android.comJetpack Compose는 굉장히 선언적이기 때문에, 세심하고 복잡한 동작 구현이 쉽지 않다. Side-effects는 그 구현을 쉽게 만들어준다. Side effects를 번역하면, '부작용'이라는 말이 되는데, 이 사실은 마치 Side effects가 에러 및 그 처리와 관련되어있다는 늬앙스를 연상케한다. 하지만 Jetpack Compos..

[Android] Jetpack Compose - Scaffold

#1 개요#1-1 Scaffold의 사전적 의미Scaffold는 비계((건설) 높은 곳에서 공사를 할 수 있도록 임시로 설치한 가설물)라는 단어로 번역된다. #1-2 Scaffold in Jetpack Compose Jetpack Compose  |  Android Developers이 페이지는 Cloud Translation API를 통해 번역되었습니다. 컬렉션을 사용해 정리하기 내 환경설정을 기준으로 콘텐츠를 저장하고 분류하세요. Scaffold 머티리얼 디자인에서 스캐폴드는 스캐폴드로developer.android.comJetpack Compose에도 Scaffold라는 이름의 객체가 존재한다. 이 Scaffold에 대해 누군가 무엇을 위한 가설물이냐고 묻는다면, 바로 다양한 UI 요소를 위한 가설..