안녕하세요 간만에 포스팅입니다. 오늘은 현재 내 위치를 받아오는 예제 앱을 통해 Permission에 대해 알아보겠습니다. #1> Android Permission 누구니 너? 2007년 스티브잡스가 아이폰을 발표한지 어느덧 13년이 지났습니다. 스마트폰 시장의 태동기 때에는 하드웨어와 소프트웨어 기술 발전에 모든 포커스가 쏠려있었지만 혁신이라 불릴만한 기술들이 대부분 나온 현재에는 수많은 정보들이 저장되있는 스마트폰의 보안에 눈길에 쏠려있습니다. 이런 보안에 대해 안드로이드는 어떤 정책을 가지고 있을까요? 초창기 Android OS(Api 22 이하)에서는 앱 개발 시 manifest.xml 파일에 앱에서 필요한 권한을 명시하도록 했고, 여기에 리스트업된 권한들은 사용자가 앱 설치 시 한번만 보여주었습..
#1> 개요 코틀린에서는 문자열 템플릿(String Template)이라는 식(Expression)을 통해 자바 스타일의 코드보다 간편하게 원하는 문자열을 생성할 수 있습니다. 이 문자열 템플릿이 강력한 이유는 말 그대로 식을 포함할 수 있기 때문입니다. 이게 무슨 의미일까요? 저와 같이 아래 내용을 살펴보시면 이해하실 수 있을 겁니다. 실제 프로젝트를 진행하면서 문자열을 출력하는 경우는 크게 아래와 같이 3가지 경우로 나눌 수 있습니다. 디버깅을 위한 로그 출력 사용자에게 보여지는 View에 의미있는 정보 출력 Json과 같은 xml 포멧을 가진 프로토콜을 사용하는 데이터 통신 위와같은 Case에서 우리는 원하는 문자열을 생성하기 위해 여러 방법을 사용합니다. 우선 자바 스타일의 문자열 생성 방식에 대..
#> 개요 처음 안드로이드 스튜디오를 실행하면 아래와 같이 Welcome Page가 나타납니다. 하지만 기존에 작업하던 프로젝트가 있는 경우 자동으로 해당 프로젝트가 열립니다. 기존 작업을 이어서 하는 경우에는 편리하지만 다른 프로젝트를 열어야 할 때는 자동으로 열린 프로젝트 Build를 취소하고 다시 원하는 프로젝트를 열어야 하는 번거로움이 있습니다. 이런 경우 설정값 하나만 변경해주면 안드로이드 스튜디오 실행 시 내가 원하는 프로젝트를 선택할 수 있습니다. #> 설정방법 설정 방법은 매우 간단합니다. 아래 순서대로 기존 Defualt로 설정되어 있던 체크박스 하나만 해제시켜 주면 됩니다. 1. 안드로이드 스튜디오 실행 후 File>Settings 혹은 단축키 Ctrl+Alt+S 키를 눌러 설정창을 열..
프로그래밍 언어의 가장 기본인 함수와 변수 선언 방법에 대해 알아보자. #> 함수선언 코틀린에서 함수를 선언하는 방식은 Java와는 다르게 아래와 같은 규칙을 가지고 있습니다. 함수를 선언할 때 fun 이라는 키워드를 사용한다. 함수에 Parameter가 없는 경우에는 빈 괄호를 입력한다. 함수의 Parameter는 이름을 먼저 명시한 뒤, 콜론(:) 뒤에 타입을 명시한다. 함수의 Parameter가 2개 이상인 경우 콤마(,)로 구분한다. 리턴 타입은 함수이름 뒤에 명시한다. 위 규칙을 실제로 적용하면서 간단한 함수를 선언해보도록 하겠습니다. fun main() { println("main function") } 위 함수는 이전 포스팅에서 살펴봤던 Hello World를 출력하는 형태를 가지고 있습니다..
#1> 개요 Sublime Text를 써보신 분이라면 아래와 같이 우측에 작은 Panel 형태로 표현되는 코드맵을 보신적이 있을겁니다. 내 코드의 엔트로피와, 위/아래로 어떤 코드들이 작성되어 있는지 직관적으로 파악할 수 있어 참 편리합니다. IntelliJ 기반의 Android Studio에서는 이런 minimap을 기본으로 제공하지는 않지만, Plugin을 통해서 설치 및 사용이 가능합니다. #2> Plugin이란? 설치방법을 말씀드리기에 앞서 Plugin에 대해 짚고 넘어가려고 합니다. 플러그인. 많이 쓰고 얘기도 많이 들어봤지만 도대체 뭘까요? 위키피디아에 검색해보니 아주 정확한 정의를 내려주고 있습니다. 플러그인(plugin) 또는 추가 기능(애드인;add-in, 애드온;add-on)은 호스트 ..
광고 클릭, 하트, 댓글은 필자에게 큰 힘이 됩니다! 오늘은 자바 열거형 타입 (Enum Type)에 대한 글을 준비했습니다. 자바를 알고 계시고 활용하고 계신 분들이라면 개념은 익히 알고 계시겠지만 어떨 때 활용하면 좋을지, 그리고 실제 프로젝트에 녹여낼 때 고민이 되었던 점들과 그 문제들을 어떻게 해결했는지 등등 제 경험을 토대로 이야기를 진행해 보겠습니다. 참, 이번 포스팅은 Java 8 기준으로 설명합니다. 우선 개념부터 짚고 넘어가볼까요? #1> 정의 / Enum Type이란? java.lang.Enum은 형식을 제한한 보다 안전한 상수 목록을 제공하기 위해 Java 1.5부터 추가되었습니다. Java의 Enum은 각 인스턴스가 속성과 로직을 구현할 수 있는 완전한 객체라는 점에서 다른 언어의 ..
#_ Condition Operator, What the fun!? 삼항연산자의 활용에 대해 물어보면 시니어 프로그래머라면 잘 아시겠지만, 주니어 프로그래머의 경우 알고는 있지만 사용하지 않는다던가, 처음 들어보는 경우가 있을겁니다. 나는 입문할 당시 책에서 배웠었나? 하는 궁금증이 생겨 책장에 있는 자바 책을 뒤적여 봤습니다. Java 입문서로 널리 알려진 Head First Java 책의 47페이지 조건문에 따른 분기문 챕터에서는 언급하고 있지 않네요.. 남궁성님이 집필하신 자바의 정석에서는 다루고 있군요. 그도 그럴것이 삼항연산자는 몰라도 괜찮은(?) 녀석이기 때문입니다. 우리에겐 강력한 if/else가 있으니까요. 수년간 자바를 통해 개발을 해온 제 입장에서 삼항 연산자는 안써도 좋지만 쓰면 더 ..
프로그래밍 언어 입문 시 제일먼저 해당 언어의 문법을 통해 Hello World! 라는 문자열을 출력하는 예제를 만들곤 합니다. 본 포스팅에서는 이 우아한 전통에 따라 Hello, World! 라는 문자열을 출력하는 3가지 방법에 대해 설명하고자 합니다. #Method_01 > Web 기반 Play Ground 우리는 무언가를 배우기 좋은 시대에 살아가고 있습니다. 필요 이상으로 많은 정보들이 인터넷을 기반으로 계속해서 쌓여가고 있으며, 적절한 키워드와 인터넷 브라우저 실행이 가능한 기기만 있다면 언제 어디서는 원하는 정보를 찾을 수 있습니다. 이런 이유에서일까요? 젊은 언어 코틀린은 언제, 어디서든 코틀린 학습 및 실습이 가능하도록 아래와 같이 웹 기반 play ground를 제공합니다. 좌측 텝에는 ..
# 1. Kotlin? Why? 코틀린에 대해 짧막하게 소개하면 다음과 같습니다. 코틀린은 JVM에서 동작하는 프로그래밍 언어로서, 2011년 9월, JetBrain 사가 공개했습니다. 확장자는 .kt 또는 .kts 를 사용합니다. 또한 19년 5월 7일 이후로 구글의 안드로이드 앱 개발에서 선호하는 언어가 되었습니다! 여기서 주요한 포인트는 바로 구글에서 이 언어에 대해 관심을 가지고 내부적인 프로젝트에 적극적으로 활용하기 시작했다는 점 입니다. 이말인 즉, 앞으로의 reference 문서들은 코틀린 기반으로 작성된 코드를 통해 배포될 것이며 현재는 Java와 혼용되지만 주요 코드는 Kotlin으로만 작성되어 Release 될 수 있다는 것입니다. 따라서 아래와 같은 이유로 Kotlin 관련 포스팅을 ..
개요 개발자라면 한번쯤은 테스트 주도 개발 (TDD)에 대해 들어봤을 것이다. 테스트 위주의 코드 작성으로 알고있는 TDD의 장점과 단점을 살펴보고 대략적인 이해를 주는 것이 본 포스팅의 목적이다. 장/단점에 대한 내용은 hoons.net에 14년도에 작성된 http://www.hoons.net/Lecture/View/644 포스팅을 정리한 내용이다. TDD란? 테스트 주도 개발(Test-Driven Development, TDD)은 매우 짧은 개발 사이클을 반복하는 소프트웨어 개발 프로세스 중 하나이다. 개발자는 먼저 요구사항을 검증하는 자동화된 테스트 케이스를 작성한다. 그런 후에, 그 테스트 케이스를 통과하기 위한 최소한의 코드를 생성한다. 마지막으로 작성한 코드를 표준에 맞도록 리팩토링한다. 이 ..
- Total
- Today
- Yesterday
- 코딩
- 안스 템플릿
- 프로젝트오일러
- 안드로이드 스튜디오 라이브 템플릿
- 영어회화
- 안드로이드 컴포즈
- Programming
- php
- 자바
- 개발자
- 안드로이드
- live template
- 프로그래밍
- 코틀린 기초강의
- 문제풀이
- 영어발음
- 안드로이드 바텀시트
- Android
- 코딩문제
- 런탭
- 코틀린 기초
- 안드로이드 스튜디오
- Kotlin
- 컴포즈 바텀시트
- android studio
- Java
- compose bottomsheet
- 코틀린
- kotlin 기초
- LiveTemplate
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | 6 | 7 |
8 | 9 | 10 | 11 | 12 | 13 | 14 |
15 | 16 | 17 | 18 | 19 | 20 | 21 |
22 | 23 | 24 | 25 | 26 | 27 | 28 |
29 | 30 | 31 |