nonaninona의 등록된 링크

 nonaninona로 등록된 티스토리 포스트 수는 44건입니다.

36. Cupcake App : Navigation [내부링크]

Cupcake App : Navigation 위의 페이지를 참고하여 여러 화면을 이동해갈 수 있는 navigation을 활용해보자 개요 우리는 지금까지 화면이 하나인 앱만 다뤄봤었는데 평소에 쓰는 앱을 생각해보면 화면은 보통 여러개이다 이런 앱에서 화면 이동 기능은 필수적인데 이를 가능하게 해주는 navigation을 이용해보자 우선 다음 url에서 프로젝트를 clone 해오자 https://github.com/google-developer-training/basic-android-kotlin-compose-training-cupcake.git 그리고 starter branch로 체크아웃해주자 Cupcake App 살펴보기 이 App은 Cupcake를 주문하는 기능을 가지고 있다 첫 화면에서는 몇 개의 ..

21. Kotlin의 generic, enum, data class, object, 범위함수 [내부링크]

Kotlin의 generic, enum, data class, object, companion object, 범위함수 제네릭, 객체, 확장 제네릭, 객체, 확장 | Android Developers 요약 추가 developer.android.com 위의 페이지를 참고하여 kotlin의 추가적인 문법적인 요소들을 알아보자 개요 오늘은 kotlin의 문법에 대해서 더 알아가는 시간을 가져보자 1. generic generic은 자바나 C++ 등을 해봤다면 익숙한 친구일텐데, 구체적이지 않고 일반적인 자료형이라고 생각하면 좋을 것 같다 자료형을 구체적으로 명시하지 않고 어떤 자료형이던지 들어갈 수 있게 해주는 친구다 다음과 같이 클래스, 함수, 메소드에 쓸 수 있다 fun main() { val a = Jus..

33. Unscramble App : App architecture와 ViewModel [내부링크]

Scramble App : App architecture와 ViewModel Compose의 ViewModel 및 상태 Compose의 ViewModel 및 상태 | Android Developers 이 Codelab에서는 아키텍처 구성요소 중 하나인 ViewModel을 사용하는 방법을 알아봅니다. 구성 변경 중에 앱 상태를 유지하도록 ViewModel을 구현합니다. developer.android.com 위의 페이지를 참고하여 App architecture와 ViewModel에 대해서 배워보자 개요 필자는 최근 건축관련회사에서 사무보조알바를 하고 있다 업무를 하다보면 건축물 도면을 자주 볼 수 있는데 정말 깨알같이 많은 정보가 함축되어있는 것을 볼 수 있다 건축물에는 도면이 있듯이 앱에는 앱 아키텍쳐가..

30. SuperHero App: Material Design, App Icon 복습 [내부링크]

SuperHero App 만들기 : Material Design, App Icon, Lazy Column 복습 연습: Superheroes 앱 빌드하기 연습: Superheroes 앱 빌드하기 | Android Developers Material Design의 개념을 바탕으로, 목록과 간단한 애니메이션을 사용하여 슈퍼히어로 목록을 빌드합니다. developer.android.com 위의 페이지를 참고하여 Woof App과 흡사한 SuperHero App을 만들어보자 준비하기 폰트 다운로드 drawables 추가 string.xml Superheroes Nick the Night and Day The Jetpack Hero Reality Protector Understands the absolute tru..

29. 앱의 접근성 개선 [내부링크]

앱의 접근성 개선 접근성 테스트 접근성 테스트 | Android Developers 앱의 접근성을 테스트하는 방법을 알아봅니다. developer.android.com 위의 페이지를 참고하여 앱의 접근성을 개선해보자 개요 앱에 시각, 청각적으로 문제없이 접근할 수 있는 사람도 있지만 그렇지 않은 사람들도 있다 이들이 앱에 더 잘 접근할 수 있게 접근성을 개선해보자 우선 PlayStore에서 Android Accessibility Suite라는 어플을 다운 받아야 하는데 가상기기를 어떻게 만들었냐에 따라 에뮬레이터에서 PlayStore를 못 찾을 수도 있다 이렇게 PlayStore 기호가 있는 profile을 가지고 만든 가상기기에서만 PlayStore에 접근할 수 있다 없으면 그냥 하나 더 만들어주자 나..

28. Woof App : 애니메이션, icon 추가 [내부링크]

애니메이션 : icon 추가 Jetpack Compose를 사용한 간단한 애니메이션 Jetpack Compose를 사용한 간단한 애니메이션 | Android Developers Compose에서 앱에 간단한 스프링 애니메이션을 추가하는 방법을 알아보세요. developer.android.com 오늘은 위의 페이지를 참고하여 저번에 만들었던 Woof앱에 애니메이션을 추가해보자 Icon 추가 만든 어플들을 빌드할 때마다 gradle이라는 친구를 본 적 있을 것이다 gradle은 빌드를 도와주는 빌드 툴이다 compile, test, packaging, deploy & run과 같은 작업들을 자동화시켜준다 material design에는 icon이 있는데 이 icon들을 사용하려면 gradle에 depende..

27. Woof App : Material Design [내부링크]

Woof App : Material Design으로 꾸미기 Jetpack Compose를 사용한 Material Theming Jetpack Compose를 사용한 Material Theming | Android Developers 색상, 도형, 서체에 Material 테마 설정을 추가하는 방법을 알아봅니다. developer.android.com 위 페이지를 참고하여 Woof라는 이름의 어플을 이쁘게 꾸며보자 개요 Material Design은 google에서 만든 디자인 시스템이다 이를 이용해서 이미 기능적으로 완성된 Woof라는 어플을 꾸며보자 둘러보기 우선 시작코드와 우리가 적용할 color, shape, font를 확인해보자 Dog.kt MainActivity.kt 위의 두 파일의 코드를 살펴보..

26. Course App : Grid 구성 [내부링크]

Grid 화면의 Course 어플 만들어보기 연습: 그리드 빌드 연습: 그리드 빌드 | Android Developers 복잡한 레이아웃으로 그리드를 빌드하는 방법을 알아보세요. developer.android.com 위의 페이지를 참고하여 화면이 바둑판 같이 생긴 Course 어플을 만들어보자 개요 최종 앱 화면이 다음과 같은 앱을 만드는 연습을 해보자 주어지는 데이터는 다음과 같다 string.xml Architecture Crafts Business Culinary Design Fashion Film Gaming Drawing Lifestyle Music Painting Photography Tech DataSource.kt object DataSource { val topics = listOf( ..

티스토리 블로그 꾸미기 : 아이콘, 파비콘 설정 및 프로필 사진 설정하는 법 [내부링크]

티스토리 블로그 아이콘, 파비콘 및 프로필 사진 설정하는 법 티스토리 블로그의 아이콘과 파비콘 및 프로필 사진을 설정하는 법을 알아보겠다 개요 아이콘과 파비콘 일단 아이콘과 파비콘이 뭐냐 하면.. 구글 크롬의 위 탭을 봤을 때 이렇게 YouTube라는 글씨 앞에 있는 그림을 말한다 티스토리 블로그는 기본적으로 T 모양이 뜨게 되는데 이걸 변경해서 개성을 보여줄 수 있다 프로필 사진 프로필 사진이 뭐냐면 티스토리에서 댓글을 달 때 보이는 사진이라고 생각하면 편하다 마찬가지로 설정하지 않으면 기본적으로 T 모양이 뜬다 방법 티스토리의 블로그 관리에 들어간다 그리고 왼쪽 탭의 맨 아래에 있는 '관리'에서 '블로그'를 클릭한다 위에 1번에서는 프로필 사진 아래 2번에서는 아이콘/파비콘이 설정이 가능하다 적당한 ..

25. 앱 아이콘 바꾸기 [내부링크]

앱 아이콘 바꾸기 앱 아이콘 변경 앱 아이콘 변경 | Android Developers Affirmations 앱의 앱 아이콘을 변경합니다. developer.android.com 위의 페이지를 참고하여 앱의 아이콘을 변경해보자 개요 앱의 아이콘이 계속 초록색 안드로이드 모양이니까 멋이 없다 그러니까 아이콘을 바꿔보자 앱의 아이콘은 Android 8.0 (API 26) 이상일 땐 반응형 아이콘(adaptive icon)을 쓸 수 있고 미만일 땐 Legacy Icon을 쓴다 여기서 반응형 아이콘이란, 레이어가 2개로 나누어져 있고 기기에 따라 획일화된 마스킹이 적용되어 깔끔한 느낌을 주고 사용자의 터치에 따라 애니메이션이 적용되기도 하는 친구를 말한다 또한 어느 해상도에서나 하나의 파일로 표현이 가능하다 ..

24. Affirmation App : Scroll 기능 [내부링크]

Affirmation App : Scroll 기능 스크롤 가능한 목록 추가 스크롤 가능한 목록 추가 | Android Developers 텍스트와 이미지로 이루어진 스크롤 가능한 격언 목록을 표시하는 앱을 빌드합니다. developer.android.com 위의 페이지를 참고하여 카드를 스크롤하는 어플을 만들어보자 개요 오늘은 그동안 추가로 배운 kotlin의 list 문법을 이용해 데이터를 이쁘게 표현하는 어플을 만들어보자 코드작성 총 3가지 kt파일로 이루어지는데 MainActivity.kt Affirmation.kt Datasource.kt 이다 여기서 Affirmation은 동기부여라는 뜻이다 Datasource.kt package com.example.affirmations.data import..

23. Kotlin의 컬렉션에서 쓰는 고차함수 [내부링크]

Kotlin의 컬렉션에서 쓰는 고차함수 컬렉션을 사용한 고차 함수 컬렉션을 사용한 고차 함수 | Android Developers Kotlin에서 컬렉션과 함께 일반적인 고차 함수를 사용하는 방법을 알아보세요. developer.android.com 위의 페이지를 참고하여 컬렉션에서 사용할 수 있는 유용한 고차함수들을 정리해보자 개요 고차함수는 함수를 인자를 받는 친구라는 것은 이미 알고 있다 그런데 그 중에서도 컬렉션에 유용한 고차함수들이 있는데 내용을 간단하게 살펴보자 1. forEach() 이름만 봐도 뭐하는 애인 지 알 거 같은 친구다 데이터 구조의 각 항목에 대해 인수로 전달된 함수를 적용한다 fun main() { val li = listOf("Kim", "Lee", "Park") li.for..

22. Kotlin의 컬렉션 [내부링크]

Kotlin의 컬렉션 Kotlin에서 컬렉션 사용 | Android Developers Kotlin에서 컬렉션 사용 | Android Developers 목록, 세트, 맵을 비롯하여 배열 및 컬렉션을 사용하는 방법을 알아봅니다. developer.android.com 위의 페이지를 참고하여 kotlin의 컬렉션에 대해 알아보자 개요 배열이나 벡터 같은 친구들을 data structure라고 하는데 kotlin에서는 이들을 콜렉션이라고 부른다 어떤 애들이 있는지 간단하게 살펴보자 1. Array 어느 언어에나 있어서 크게 설명할 필요 없는 배열이다 fun main() { val array1 = arrayOf(1, 2, 3, 4, 5) val array2 = Array(5, {0}) println(array..

20. My Art Gallery App [내부링크]

나만의 갤러리 만들어보기 Art Space 앱 만들기 Art Space 앱 만들기 | Android Developers 나만의 예술 공간을 선보이는 Android 앱을 만드는 방법을 알아봅니다. developer.android.com 위의 페이지를 참고하여 나만의 갤러리를 만들어보자 개요 지금까지 배운 내용을 바탕으로 조잡하지만 갤러리를 만들어보았다 완성코드 코드는 다음과 같다 package com.example.myartspace import android.os.Bundle import androidx.activity.ComponentActivity import androidx.activity.compose.setContent import androidx.compose.foundation.Image i..

19. Tip Time App : local & instrumentation test [내부링크]

Tip Time App : local & instrumentation test 자동 테스트 작성 | Android 개발자 | Android Developers 자동 테스트 작성 | Android 개발자 | Android Developers 이 Codelab에서는 자동 테스트와 이 테스트가 중요한 이유 및 작성 방법을 알아봅니다. developer.android.com 위 페이지를 참고하여 프로그램 개발에 필수적인 테스트, 그 중에서도 자동테스트를 경험해보자 개요 프로그램 개발을 할 때 마지막에는 테스트를 해본다는 것을 들어본 적이 있을 것이다 테스트에는 자동테스트와 수동테스트가 있고 우리가 관심을 가지는 자동테스트는 local 테스트와 instrumentation 테스트가 있다 대충 코드로직테스트와 UI..

18. Tip Time App : Switch, @StringRes, KeyboardOptions [내부링크]

Tip Time App 발전시키기 : Switch, @StringRes, KeyboardOptions 맞춤 팁 계산하기 | Android Developers 맞춤 팁 계산하기 | Android Developers 작업 버튼을 추가하고 키보드 작업을 설정하고 스위치 컴포저블을 사용하는 방법을 알아봅니다. developer.android.com 위 페이지를 참고하여 저번에 만들었던 tip 계산기를 더 발전시켜보자 개요 Tip 계산기에 tip 비율을 조정하고 반올림 여부를 결정할 수 있는 기능을 추가해보자 코드작성 완성된 코드를 보면서 하나하나 짚어보겠다 package com.example.tiptime import android.os.Bundle import androidx.activity.Component..

17. Tip Time App : remember와 compose 생명주기 [내부링크]

Tip Time App 만들기 : remember와 compose 생명주기 Compose의 상태 소개 | Android Developers Compose의 상태 소개 | Android Developers 상태에 관해 알아보고 Jetpack Compose에서 상태를 사용하고 조작하는 방법을 알아봅니다. developer.android.com 위의 페이지를 참고하여 예전에 접해봤던 remember에 대해 더 깊은 이해를 해보자 개요 저번에 만든 DiceRoller에서 처음 등장한 개념인 remember를 조금 더 본격적으로 배우는 시간이다 Composable vs Composition 일단 컴포저블과 컴포지션과 컴포즈의 차이를 좀 구분하고 가보자 The Composition is a description o..

16. Lemonade App : clickable 속성 이용 [내부링크]

Lemonade App 만들기 : clickable 속성 이용 연습: 클릭 동작 | Android 개발자 | Android Developers 연습: 클릭 동작 | Android 개발자 | Android Developers 버튼 클릭 동작에 관해 학습한 내용을 적용하여 앱을 빌드합니다. developer.android.com 위의 페이지를 참고하여 버튼을 이용한 그럴듯한 어플을 하나 만들어보자 개요 이 App의 기능은 다음과 같다 1. 레몬에이드 제작과정을 4단계로 나누고 각 단계마다 적절한 이미지와 텍스트를 보여준다 2. 이미지를 터치할 때마다 다음 단계로 넘어간다 3. 마지막 단계에서 터치하면 첫 단계로 돌아간다 솔직히 지금까지 배운 거 조금만 활용하면 되서 쉽다 최종코드는 다음과 같다 package..

15. 디버거 써보기 [내부링크]

디버거 써보기 https://developer.android.com/codelabs/basic-android-kotlin-compose-intro-debugger?hl=ko&continue=https%3A%2F%2Fdeveloper.android.com%2Fcourses%2Fpathways%2Fandroid-basics-compose-unit-2-pathway-2%3Fhl%3Dko%23codelab-https%3A%2F%2Fdeveloper.android.com%2Fcodelabs%2Fbasic-android-kotlin-compose-intro-debugger#0 Android 스튜디오에서 디버거 사용하기 | Android Developers Android 스튜디오에서 디버거를 사용하여 런타임 시 앱의..

14. Dice Roller App : remember 사용 [내부링크]

Dice Roller App 만들기 : remember 사용 대화형 Dice Roller 앱 만들기 대화형 Dice Roller 앱 만들기 | Android Developers 사용자가 주사위를 굴려 결과를 표시할 수 있는 대화형 Dice Roller 앱을 빌드하는 방법을 알아봅니다. developer.android.com 위 페이지를 참고하여 상호작용할 수 있는 버튼이 존재하는 Dice Roller App을 만들어보자 개요 kotlin의 문법을 조금 더 알아봤으니 이를 이용해서 간단한 주사위 굴리기 어플을 만들어 보자 간단한 코드이니 바로 결과물을 보자 최종코드는 다음과 같다 package com.example.diceroller import android.os.Bundle import androidx..

Android Studio에서 emulator 녹화하는 방법 [내부링크]

AndroidStudio에서 emulator 녹화하기 emulator를 녹화해보자 개요 Android Studio를 사용하다보면 emulator의 스크린샷 기능은 쉽게 찾아서 이용할 수 있는데 녹화 기능은 찾기 힘든 곳에 숨겨져 있다 그 기능이 어디 숨어있는지 찾아보자 방법 우선 emulator를 이용해 앱을 실행한다 그리고 상단 메뉴바에서 View -> Tool Windows -> LogCat를 선택한다 뜬 창에서 좌측하단 카메라 밑에 마우스를 올려보면 녹화버튼이 있다 그럼 이제 대충 녹화설정을 한 뒤 녹화할 수 있다 녹화 결과물(블로그에 올리느라 부득이하게 gif로 수정한 결과) + 블로그를 할 때 추가적으로 블로그에 올릴 땐 gif 변환과 용량압축을 필수적으로 하게 될텐데 그때 유용한 서비스들을 소..

13. Kotlin의 람다표현식 [내부링크]

Kotlin의 람다표현식 Kotlin에서 함수 유형 및 람다 표현식 사용 Kotlin에서 함수 유형 및 람다 표현식 사용 | Android Developers Kotlin에서 람다 표현식과 고차 함수의 사용 방법을 알아봅니다. developer.android.com 위 페이지를 참고하여 kotlin의 가장 특징적인 문법인 람다표현식에 대해 알아보자 개요 이번에 확인할 내용 중 제일 핵심은 "함수도 하나의 자료형이고 리터럴로서 의미를 가진다"는 것이다 함수를 담은 변수 함수도 하나의 값이나 다름 없기 떄문에 변수에 함수를 저장할 수 있다 fun main() { val fun1Var = ::fun1 fun1Var() fun2() } fun fun1(){ println("this is fun1") } val ..

12. kotlin의 class와 property delegation [내부링크]

Kotlin의 class와 property delegation Kotlin에서 클래스 및 객체 사용 | Android Developers Kotlin에서 클래스 및 객체 사용 | Android Developers Kotlin에서 클래스 및 객체의 사용 방법을 알아봅니다. developer.android.com 위의 페이지를 참고하여 객체지향프로그래밍의 가장 중요한 개념인 class에 대해 짚고 넘어가자 그리고 class를 이용한 기법? 중 하나인 property delegation도 확인해보자 클래스의 정의와 선언 클래스의 기본 정의와 인스턴스 선언은 다음과 같다 fun main() { val jc = JustClass() } class JustClass { } 모든 단어의 시작이 대문자로 시작하는 Pa..

11. Kotlin의 null [내부링크]

Kotiln의 null Kotlin에서 null 허용 여부 사용 | Android Developers Kotlin에서 null 허용 여부 사용 | Android Developers Kotlin에서 null 허용 여부를 사용하는 방법을 알아봅니다. developer.android.com 위의 페이지를 참고하여 kotlin에서의 null을 어떻게 다루는지 알아보자 nullable 표기 kotlin에서 변수에 null을 넣고 싶다면 따로 표기를 해줘야 한다 바로 ? 기호다 var name: String? = null 이런 식으로 자료형까지 명시해준 뒤 뒤에 ?를 붙여야 한다 nullable 접근 nullable한 변수로 선언했을 경우 그 안의 속성이나 메소드에 접근하려면 특별한 기호를 사용해야 한다 역시 ? ..

10. Kotlin의 조건문 [내부링크]

Kotlin의 조건문 Kotlin에서 조건문 작성하기 | Android Developers Kotlin에서 조건문 작성하기 | Android Developers Kotlin에서 조건문을 작성하는 방법을 알아봅니다. developer.android.com 위의 페이지를 참고하여 kotlin의 조건문에 대해서 알아보자 여타 다른 언어와 크게 다른 점은 없지만 가장 중요한 문법 중 하나이기 때문에 짚고 넘어가도록 하자 개요 kotlin의 조건문은 if-else와 when(return 없는 switch-case 정도?)이 있다 if-else if else는 우리가 잘 알고 있는 친구이다 fun main() { val age = 3 if( 14 println("adult") else -> println("youn..

9. 레이아웃 구상/구현 실습 [내부링크]

레이아웃 구상 및 구현 실습 명함 앱 만들기 명함 앱 만들기 | Android Developers 명함을 표시하는 Android 앱을 만드는 방법을 알아봅니다. developer.android.com 위의 페이지를 참고하여 지금까지 배운 Compose의 기초적인 내용들을 바탕으로 명함을 만들어 보겠다 먼저 어떻게 만들지 대충 구상을 하고 실제 코드로 구현하는 두 단계로 나눠서 진행하겠다 구상 간단한 이미지로 표현하자면 다음과 같은 모양으로 만들 예정이다 일단 레이아웃을 생각해보자 크게 두 덩이로 나눠서 위에는 Profile, 아래는 Contact라는 Composable로 구성했다 Profile은 또다시 Image와 name을 담을 Row와 job과 Row를 담은 Column으로 이루어진다 Contact는..

8. 정렬, 화면분할 등 UI 구성실습 [내부링크]

UI 구성실습 연습: Compose 기본사항 연습: Compose 기본사항 | Android Developers 기본 UI 컴포저블 개념을 적용하여 특정 문제에 관한 화면을 구현합니다. developer.android.com 위의 페이지를 참고해서 지금까지 배운 내용들을 바탕으로 실습을 몇 개 해보겠다 1. Compose에 대한 도움말을 제공하는 UI 상세사항은 다음과 같다 크게 어려운 점은 없어보인다 이미지를 넣고 fillMaxWidth 해준다음 Column 컨테이너 안에 Image와 Text 3개를 넣고 각각에 맞는 인자를 넘겨주면 된다 그리고 문자열을 외부에서 불러오면 끝 추가적인 내용으로 textAlign 인자가 있는데 어디서 많이 본 친구들이다 justify, start, end, left, r..

7. Image 추가, 텍스트 정렬, 문자열 추출 [내부링크]

Image 추가, 텍스트 정렬, 문자열 추출 Android 앱에 이미지 추가 Android 앱에 이미지 추가 | Android Developers 구성 가능한 함수로 간단한 앱을 빌드하는 방법을 알아봅니다. developer.android.com 위의 페이지를 참고해서 Jetpack Compose를 좀 더 더 알아가보도록 하자 개요 저번에 했던 코드를 다음과 같이 발전시켜보려고 한다 package com.example.birthdaycard import android.os.Bundle import androidx.activity.ComponentActivity import androidx.activity.compose.setContent import androidx.compose.foundation.Im..

티스토리 블로그 소스코드 예쁘게 넣는 법 [내부링크]

블로그 소스코드 예쁘게 넣는 법 개요 한글과 같은 문서작업을 할 때 프로젝트 발표한다고 ppt에 코드 복사할 때 누구나 이용해본다는 codescripter... https://colorscripter.com/ Color Scripter Simple & Flexible Syntax HighLighter colorscripter.com 그러나 이번에 블로그 포스팅을 하는데 codescripter에는 kotlin 언어가 없어서 어떻게 이쁘게 넣나 고민하던 중.. 티스토리 플러그인에 syntax highlighting 기능이 있다는 것을 알게 되어서 적용해보았다. 방법 우선 적용화면이다 오 이쁘다... 이걸 어떻게 적용하느냐 하면 우선 블로그 관리에 들어간다 그리고 메뉴바에서 플러그인을 선택해 들어간 후 syn..

6. Column 컨테이너 사용해보기 [내부링크]

Column 컨테이너 사용해보기 텍스트 컴포저블로 간단한 앱 빌드 | Android Developers 텍스트 컴포저블로 간단한 앱 빌드 | Android Developers 구성 가능한 함수로 간단한 앱을 빌드하는 방법을 알아봅니다. developer.android.com 위의 페이지를 참고해서 Jetpack Compose를 좀 더 알아가보도록 하자 Column 컨테이너 추가해보기 우선 BirthDayCard라는 이름의 프로젝트를 만들어보자 그 후에 다음과 같이 변경해보자 package com.example.birthdaycard import android.os.Bundle import androidx.activity.ComponentActivity import androidx.activity.comp..

5. Empty Compose Activity 만들어보기 [내부링크]

Empty Compose Activity 만들어보기 저번에 만든 첫번째 앱을 통해서 Jetpack Compose를 알아가보도록 하자 개요 나는 공부를 할 때 최신기술에 대해 거부감을 가지고 있는데 안드로이드 개발에 있어서 Kotlin과 Compose가 바로 그 최신기술의 위치를 차지하고 있다 (상대적으로 최신이라는 뜻. 몇 년 되긴 했음.) 과거의 기술이 되어가는 Java와 xml을 배우고 싶다는 마음을 떨쳐내고 한 번 도전해보기로 했다 일단 이름을 짚어보고 넘어가자 Compose는 Jetpack이라는 라이브러리의 한 항목으로써 UI를 구성하는 방식을 지원한다 그러니까 Compose는 Jetpack의 일부이고 그 중에서도 UI, 화면을 디자인하는 기능을 지원한다는 뜻이다 기본 코드 이해 우선 저번에 만들..

4. Kotlin 변수와 함수, 기초문법 [내부링크]

Kotlin 변수와 함수, 기초문법 Kotlin 프로그래밍 소개 | Android Basics Compose - First Android app | Android Developers Kotlin 프로그래밍 소개 | Android 기본사항 Compose: 첫 번째 Android 앱 | Android Developers Kotlin에서 Android 앱 빌드를 준비하기 위해 Kotlin의 입문 프로그래밍 개념을 알아봅니다. developer.android.com 위의 페이지를 참고해 Kotlin 언어의 가장 기초인 변수와 함수 등의 문법을 배워보자 기초 문법을 대충 보면서 약간 파이썬이랑 자바를 합친 느낌을 받았다. 참고로 필자가 그동안 문법을 공부했던 언어는 C, C++, Java, Javascript, ..

3. Android Studio 설치, 에뮬레이터/하드웨어기기로 첫 앱 빌드 [내부링크]

Android Studio 설치, 에뮬레이터/하드웨어기기로 첫 앱 빌드 Android 개발에 필수적인 Android Studio를 설치해보고 첫 앱을 실행시킬 수 있는 환경을 세팅해본 뒤 실제로 실행시켜보자 Android Studio 설치하기 Android Studio를 다운로드 받을 수 있는 경로는 다음과 같다 https://developer.android.com/studio?hl=ko Download Android Studio & App Tools - Android Developers Android Studio provides app builders with an integrated development environment (IDE) optimized for Android apps. Download..

2. 어플 제작을 위한 학습 계획 [내부링크]

어플 제작을 위한 학습 계획 (1) 독학으로 앱 만들어보기 (인터넷 검색, 공부 방법, 코틀린) (1) 독학으로 앱 만들어보기 (인터넷 검색, 공부 방법, 코틀린) 독학으로 앱 만들기 시작 저는 평소에 아이디어가 넘치는 사람이고, 아이디어를 구현해내는 것을 좋아합니다. 그중에서 건강 관련하여 만들어보고 싶은 어플이 있어서 공부를 해보려고 합니다. dev-nasus.tistory.com 컴공 2학년까지 마쳤지만 앱을 개발하는 것은 처음이다... 그래서 바로 구글에 검색을 때렸고 위 블로그 글을 몇 개 읽어보니 대충 방향이 잡혔다 ios? android? 일단 ios는 내가 가진 장비도 없고 여러모로 장벽이 높아서 android 개발을 하기로 했다 어떤 언어? 언어는 java나 kotlin 두 개가 있다 자..

1. 어플을 만들기로 한 계기 [내부링크]

어플을 만들기로 한 계기 블로그 닉값을 하면서 블로그를 내팽개친지 어언 1년 반이 넘었다... 사실 입대를 한 것도 있었지만 암튼 게으르긴 했다. 이제 곧 전역이고 전역 이후에 복학까지 5개월 정도의 시간이 있기 때문에 그 시간을 알차게 활용해보고 싶어졌다 입대 후에 관심이 제일 많았던 게 바로 돈이었는데 그래서 주식을 시작해보고 통장도 나눠보고 가계부도 써보고 관련 책도 많이 읽었다 그러다가 최근에 '파이프라인'이라는 용어에 관심이 생겼다 대충 수입이 들어오는 채널을 다양하게 만들자는 뜻인데 그 대표적인 것이 블로그와 어플이라고 하더라 근데 어플은 내 전공과 관련이 있고 블로그는 잊고 있었지만 여기 있었네? 그래서 이번에 어플개발을 해보면서 블로그를 같이 하려고 한다 전공 실력도 키우고 블로그 소재도 ..

타자연습을 자연스럽게 할 수 있는 게임제작 프로젝트 - 디자인 [내부링크]

design architecture MVC나 layered 중 선택 layered architecture 장단점 itwiki.kr/w/%EA%B3%84%EC%B8%B5%ED%98%95_%EC%95%84%ED%82%A4%ED%85%8D%EC%B2%98_%EC%8A%A4%ED%83%80%EC%9D%BC MVC architecture 장단점 server-engineer.tistory.com/167 Layered로 선택 SDS docs.google.com/document/d/1CjYvMUqQ2n3TJ5FYZa1psYYGqtwD6wlabvX1-aiLd1o/edit?usp=sharing Photo by Ricardo Gomez Angel on Unsplash

타자연습을 자연스럽게 할 수 있는 게임제작 프로젝트 - 요구사항분석 [내부링크]

Brain storming & Storyboard docs.google.com/document/d/16gPGXnBI5Qj8kKL8api2rkTFdPBmTGcG1PleNnpkpG8/edit?usp=sharing UML Models use case, context, activity, sequence, class, state machine drive.google.com/file/d/1qB7TOwR--epBtAb0TKbVl5VB-Rt57MA4/view?usp=sharing SRS docs.google.com/document/d/1UGDhp1gI0jlp3cVXkkS1MeHJ1F-JSV95WhghpsmRB-w/edit?usp=sharing Photo by Ameen Fahmy on Unsplash

타자연습을 자연스럽게 할 수 있는 게임제작 프로젝트 - 학습 [내부링크]

GUI 게임을 만드는 데 있어서 GUI도 매우 중요한 요소라고 생각한다. 이전에 GUI를 다뤄본 경험이 한 번 있었는데 바로 위에서 언급했던 갤러리 관리 프로그램을 만들 때였다. 그때는 python에서 tkinter라는 모듈을 이용했었는데 C++에서는 어떻게 GUI를 다룰 수 있는지 조금의 자료조사를 거쳤다. 그 방법에는 세 가지 정도가 있다고 한다. 1. window api를 이용하는 방법 2. mfc를 이용하는 방법(정말 암 걸리는 방법이란다) 3. 라이브러리를 이용하는 방법(Qt, JUCE, Nana)등 +window form window api의 경우는 내가 다뤄본 경험이 있어서 자신이 있지만 라이브러리의 경우는 듣도 보도 못한 내용들이 많았다. 설치부터 설정까지도 꽤나 많이 신경써야 한다는 점도..

타자연습을 자연스럽게 할 수 있는 게임제작 프로젝트 - 진행 계획 [내부링크]

지금까지 프로그램을 짜본 것이 몇가지 되지 않지만 프로젝트 경험이 아예없는 것은 아니다. 작년 1학년 2학기 c programming 수업 때 조원들과 모두의 마블 같은 게임을 제작한 적이 있다. 레포지토리 링크 : github.com/DongHoony/CProgramming_MyBuilding 또한 2학년 1학기 오픈소스입문 수업 때 초라하지만 얼굴인식을 이용한 갤러리 관리 프로그램을 만들어보기도 했다. 이용한 파이썬 모듈 : github.com/ageitgey/face_recognition 레포지토리 링크 : github.com/nonaninona/Octopus 마지막으로 이번 2학년 2학기 때 소프트웨어 공학 수업을 배우면서 소프트웨어 개발 과정이 어떻게 진행되는지 배우고 개발 과정 맛보기 팀프로젝..

타자연습을 자연스럽게 할 수 있는 게임제작 프로젝트 - 계기 [내부링크]

내 여자친구는 컴퓨터에 문외한이다. 그래서인지 타자가 필요할 때 많은 에로사항을 겪는 것을 지켜봤다. 특히나 이 시국에는 대학생 신분으로서 과제나 시험을 보는 등 타자의 필요성이 더 커져 그 상황이 심화되었다. 즉 타자연습이 필요한 때가 온 것이다. 이전에 한컴타자연습을 추천했었지만 흥미가 없는 지 금방 그만둔 것으로 보인다. 이번에는 상황이 조금 더 좋다. 나의 영향으로 비디오 게임을 시작하게 되었기 때문이다. 또한 자신의 동기들이 다 컴맹이어서(...) 나에게서 얻어간 몇가지 팁들을 가지고 나름 컴잘알이 되었다고 한다. 종합적으로 컴퓨터에 대한 흥미가 전보다 증가한 것 같다. 어떻게 하면 타자연습을 꾸준히 하게 만들 수 있을까 나의경험을 떠올려본다. 나는 초등학교 2학년 때 방과후 수업으로 컴퓨터를 ..

타자연습을 자연스럽게 할 수 있는 게임제작 프로젝트 - qt에 mysql 연동하기 [내부링크]

아.. 이 문제 때문에 얼마나 많은 시간을 보내버린 건지 ㅋㅋ 일단 나는 qt 5.15.2, qt creator 4.14.0 community, mysql 8.0.22 64bit, visual studio 2019 community를 가지고 진행했다. qt creator에서 msvc2019 64bit을 가지고 프로젝트를 만든 뒤 프로젝트 파일에서 sql 추가, main에서 QSqlDatabase, QtDebug를 include한 다음에 qDebug()

타자연습을 자연스럽게 할 수 있는 게임제작 프로젝트 - 진행상황 [내부링크]

열심히 했다고 생각했지만 블로그 닉값을 하게되었다. 생각보다 qt에 대해 알아야 할 게 많았다. framwork가 지금까지는 무슨 의미인지 잘 몰랐었는데 qt에 대해서 알아가면서 익숙해져가고 있다. framework란 개발환경 정도로 이해하면 될 것 같다. qt의 빌드 과정은 다음과 같다. qt-buildsystem.png (894×626) 익숙한 IDE인 visual studio에 qt extension을 설치하고 mysql도 디렉토리 설정으로 연결했는데.. qt자체에서 컴파일하는 것보다 훨씬 헷갈린다는 단점이 있어서 고생을 많이 했다. 심지어 qt의 모듈 중에 sql을 다루는 모듈이 존재한다! 지금이라도 qt creator로 갈아탈까 고민 중이다. 지금 visual studio를 가지고 menu 정도..

타자연습을 자연스럽게 할 수 있는 게임제작 프로젝트 - 일정 계획 [내부링크]

01/04 01/05 01/06 01/07 01/08 01/09 01/10 srs 완성 sds 완성 qt 학습 mysql 학습 코딩 그냥 1주 잡아놓고 했더니 한 것도 없는데 시간이 가버렸다... 세부사항 별로 일정을 잡아놓고 해야할 것 같다. Photo by Eric Rothermel on Unsplash

타자연습을 자연스럽게 할 수 있는 게임제작 프로젝트 - c1083 error [내부링크]

qt creator에서 기본적으로 만들어지는 hello world 프로그램을 가지고 빌드를 돌렸더니 c1083이 뜨면서 안돌아갔다. 해결했고 잘 기억은 안나는데 아마 window sdk 재 설치를 통해 해결한 것 같다. developer.mic..