개발 공부 21

[Android] WorkManager - 2

참조: https://developer.android.com/codelabs/android-workmanager#3 WorkManager를 사용한 백그라운드 작업 - Kotlin | Android Developers Android에는 보장된 백그라운드 작업을 위한 다수의 옵션이 있으며, 이러한 옵션에는 각각 다양한 장단점이 있습니다. Android용 WorkManager API는 백그라운드 작업을 간편하게 만듭니다. WorkManager는 예 developer.android.com WorkManager 클래스 Worker 백그라운드에서 실행하고자 하는 실제 작업의 코드를 입력 이 클래스를 확장하고 doWork() 메서드를 재정의 WorkRequest: 작업 실행 요청 WorkRequest를 만드는 과정에..

[Android] WorkManager - 1

WorkManager란? WorkManager는 지속적인 작업에 권장되는 솔루션이다. 앱이 다시시작 또는 재부팅 될때 작업이 유지된다 (작업이 예약되있을때) 지속적인 작업을 통해 가장 잘 처리되는 백그라운드 처리 기본 API 지속적인 작업의 유형 Immediate (즉시): 즉시 시작하고 바로 완료해야하는 작업 (1회) OnTimeWorkRequest 및 Worker. 신속 처리 작업의 경우 OnTimeWorkRequest에서 SetExpendited()를 호출 Long Running (장기 실행): 더 오래 실행될 수 있는 작업 (1회 또는 주기적, 10분 이상) 모든 WorkRequest 또는 Worker.Worker에서 setForeground()를 호출하여 알림을 처리 Deferrable (지연 ..

Kotlin DSL에 대해 알아보기 (2)

저번 시간엔 Kotlin DSL을 공부해보기전 DSL의 대한 개념을 정리했었다. 이번 시간엔 Kotlin DSL이란 무엇인가에 대해 간단하게 정리하고 직접 실습해볼것이다. Kotlin DSL? DSL이 도메인 특화 언어라고 저번에 배웠었는데 그러면 Kotlin DSL이란 무엇일까? Kotlin DSL이란 코틀린만의 언어직 특성을 살려서 스크립트(Gradle)를 작성하는 DSL이다. 장단점으론 장점 - 익숙한 Kotlin으로 작업할 수 있다. - 제약을 가하는 표현방식이 좋은경우 Kotlin DSL이 더 적합할 수 있다. - 코드 자동완성과 참조 / 문법 오류 코드 강조, 리펙토링이 가능하다 단점 - 빌드시간이 Groovy보다 느리다. 가 있다. 그럼 간단하게 알아봤으니 Kotlin DSL을 직접 사용해보..

Kotlin DSL에 대해 공부해보기 (1)

오늘은 Kotlin DSL에 대해 알아보기 전에 DSL에 대해 알아보자 DSL 먼저 도메인 특허 언어(DSL)이란 "Domain Specific Language"의 약어로 관련 특정 분야에 최적화된 프로그래밍 언어이다. DSL과 일반 프로그래밍 언어와의 차이점은 무엇일까? - DSL은 Java, C 등과 같은 범용언어 보다는 덜 복잡하고 전문가가 아닌 해당 DSL의 대상 분야에 능통한 비 프로그래머가 사용되도록 제작된다는 차이점이 있습니다. 그럼 장단점으론 무엇이 있을까 장점 - 언어와 변환엔진을 갖추면서 일일이 수행할 필요가 없어지면서 더 효율적으로 작업할 수 있다. - 추상성을 제거하고 효율적인 코드를 생성하므로 런타임 오버헤드 없이 도메인에 특화된 추상적 개념을 사용할 수 있다. - 해당 도메인에 ..

[JAVA 공부] 배열

배열 같은 데이터 타입을 가진 연속된 메모리 공간으로 이루어진 자료구조 같은 데이터 타입을 가진 여러개의 변수가 필요할 때 사용한다. 1차원 배열 package JAVAStudy; public class Array { public static void main(String[] args) { int [] array1 = new int [4]; } } 배열 선언 package JAVAStudy; public class Array { public static void main(String[] args) { int [] array1 = new int [4]; array1[0] = 1; array1[1] = 2; array1[2] = 3; array1[3] = 4; } } 배열에 값을 저장 시작은 0부터! pac..

[JAVA 공부] 반복문

반복문 반복문은 실행문을 반복적으로 실행해야 할 때 사용 한다. 반복문의 종류는 while문, do-while문, for문 이 있다. while문 조건문의 실행 결과가 true일 동안 반복해서 실행한다. package JAVAStudy; public class Loop { public static void main(String[] args) { int i = 0; while(i < 10){ System.out.println(i); i++; } } } 사용예시 i가 10보다 작을때 동안 반복하고 반복하는 동안에는 i가 출력된다음 i가 증가가 된다. 이것을 i가 10보다 같거나 클때까지 반복한다. package JAVAStudy; public class Loop { public static void main..

[JAVA 공부] 조건문

조건문 어떤 문장은 수행하고 싶고, 어떤 문장은 수행하고 싶지 않을때 사용한다. if 문 조건식이 true 일 경우에만 실행문이 실행된다. if(조건식) 다음의 { } 를 생략할 수 있다. 하지만, 생략할 경우 if문에 포함되는 실행문은 단 한 줄만 포함된다. package JAVAStudy; public class Conditional { public static void main(String[] args) { int x = 50; int y = 60; if(x < y) { System.out.println("x는 y보다 작습니다."); } } } if문 사용형식. 괄호 안에 있는 조건이 성립될때 중괄호 안에 있는 코드가 실행이 된다. package JAVAStudy; public class Condi..

[JAVA 공부] 연산자

연산 데이터를 처리하여 결과를 산출하는 것 x = y + z라는 식을 봤을 때 y와 z를 더한 값을 x에 대입한다는 것을 의미한다. '+'는 연산자를 뜻한다. x, y, z는 피연산자라고 한다 x = y+ z 는 연산식이다 연산자 (Operations) 연산에 사용되는 표시나 기호 ex) +, -, *, /, %, = ... 피연산자 (Operand) 연산 대상이 되는 데이터 리터럴, 변수등이 있다. 연산자의 종류 부호 연산자 Ex) +, - 산술연산자 Ex) +, -, *, /, % 증감 연산자 Ex) ++, -- 피연산자가 1개인 연산자는 단항 연산자 부호 연산자와, 증감연산자는 단항 연산자이다. package JAVAStudy; public class Operator { public static v..

[JAVA 공부] 기본형 타입(형) 변환

기본형 타입변환 기본형 타입(형)변환 형변환이란, 변수 또는 리터럴의 타입을 다른 타입으로 변환하는 것이다. 타입의 크기 순서 byte < short, char < int < long < float < double 묵시적 형변환 크기가 작은 타입을 크기가 더 큰 타입으로 바꿀 때에는 묵시적으로 형을 바꾸어 준다. 이를 암묵적 형변환 이라고도 한다. package JAVAStudy; public class TypeConversion { public static void main(String[] args) { int x = 50; long y = x; System.out.println(y); } } 사용예시 명시적 형변환 크기가 더 큰 타입을 작은 타입으로 바꿀 때에는 명시적으로 변환 해주어야 한다. 이를 ..

[안드로이드 공부] 기본 위젯 - PlainText와 imageView

plainText와 imageView는 분량이적어서 같이 적는다. PainText Text를 입력 및 수정까지 가능한 뷰(View) 위젯 platte의 텍스트 부분의 plain Text를 끌어다 놓는다. 이렇게 위치를 맞춰준다. 안에 있는 내용을 지우고, inputType을 찾아 속성을 열어보면 이렇게 많은 속성들이 있다. inputType은 plainText에서 중요한 기능이다. 만약 비밀번호를 입력하는 것을 만들려면 inputType의 Password를 찾고 번호를 입력한다 하면 number 등을 찾야야한다. 그다음 중요한 속성은 hint라는 속성이다. 이 속성은 뭘 적어야하는지 알려주는 기능이다. 예를 들어 이렇게 hint에다가 "아이디 입력"을 적어준다면 plainText에서 연한 글씨로 나오게 ..