Soong이란? : Build 도구 중 하나인 Make를 대체하기 위해 Android 7.0(누가) 때 소개됨. Android의 build 속도를 높이기 위해 Kati GNU Make clone과 Ninja build system component를 사용. Android 7.0 배포 전까지, Android는 build rule을 형성하고 실행하기 위해 GNU Make를 사용. Make build system은 폭넓게 지원되고 사용됐지만, Android의 규모에선 느리고, 오류체 취약하며(error prone), 유연하지 못하며(unscalable), 테스트하기 어렵다. Soong build system은 Android build에 요규되는 유연함(flexibility)를 제공. Make와 Soong 비교..
NP는 Nondeterminisitic Polynomial-time의 약자로, NP-complete problem은 효율적인 해결 알고리즘이 현재까지 알려지지 않은 계산 문제 중의 하나다. 많은 중대한 컴퓨터 싸이언스 문제들이 이 종류에 속하는데 여기엔 Knapsack problem(배낭 문제), The traveling salesman problem(외판원 문제), Boolean satisfiability problems(충족 가능성 문제)와 Graph coloring problems(그래프 색칠 문제) 등이 있다. 계산 복잡성 이론에 따르면, 다음의 두 조건을 만족할 경우 NP-complete problem이다: 1. 각 해법의 정확함이 빠른 시간 안에 확인이 되고, 모든 가능성 있는 해법을 시도하는..
Architectural smell은 대개 이해도, 시험 가능성, 확장성, 재활용성과 같은 시스템의 생명주기 특성에 부정적으로 영향을 미치는 아키텍쳐 설계 결정을 뜻한다. An architectural bad smell is a commonly (although not always intentionally) used set of architectural design decisions that negatively impacts system lifecycle properties, such as understandability, testability, extensibility, and reusability. 출처(References) - Toward a Catalogue of Architectural Bad ..
![](http://i1.daumcdn.net/thumb/C148x148.fwebp.q85/?fname=https://blog.kakaocdn.net/dn/cEnT5D/btrfp23OFeR/U3MPVLbtrWAnQSbvBVjtn1/img.png)
Lean back 모드는 전체화면 모드 중 하나로 사용자가 비디오 시청을 하는 등의 화면과의 많은 상호 작용이 없는 시나리오를 지원하는 모드다. 같은 전체 화면 모드인 Immersive, Sticky immersive 모드와의 차이점은 상태표시줄이나 내비게이션 바 같은 시스템 바의 사용을 원하면 화면 아무 곳이나 터치하면 된다. Lean back 모드를 활성화하기 위해선, setSystemUiVisibility() 메소드를 호출해 SYSTEM_UI_FLAG_FULLSCREEN flag와 SYSTEM_UI_FLAG_HIDE_NAVIGATION flag를 전달하면 된다. 시스템 바가 다시 나타날 때, 당신은 다른 적절한 UI를 업데이트하는 콜백을 받을 수 있다. 이는 Responding to UI VIsib..
JAR(Java Archive, 자바 아카이브)는 여러개의 자바 클래스 파일과, 클래스들이 이용하는 관련 리소스(텍스트, 그림 등) 및 메타데이터를 하나의 파일로 모아서 자바 플랫폼에 응용 소프트웨어나 라이브러리를 배포하기 위한 소프트웨어 패키지 파일 포맷이다. JAR 파일은 실제로 ZIP 파일 포맷으로 이루어진 압축 파일로서, 파일 확장자는 .jar이다. 컴퓨터 사용자들은 JDK에 포함된 jar 명령어를 이용하여 JAR 파일을 만들거나 압출을 풀 수 있다. 또, zip 도구를 사용할 수도 있으나 압축 시에는 manifest 파일이 처음이어야 하는 경우가 있어 zip 파일 헤더의 엔트리 순서가 중요하다. JAR 안에서 파일 이름들은 유니코드 텍스트로 되어 있다. 출처 - https://ko.wikiped..
![](http://i1.daumcdn.net/thumb/C148x148.fwebp.q85/?fname=https://blog.kakaocdn.net/dn/cqHxJJ/btrfotBltz3/F0IL2DtrEw8UFSdpRwCI90/img.png)
안드로이드 전체 화면 모드는 Lean back, Immersive, Sticky immersive 3가지를 지원한다. 이 중 Immersive 모드에 대해 알아보겠다. Immersive 모드는 게임이나 갤러리에서 사진 보기, 책이나 발표 슬라이드 같은 페이지가 매겨진 내용물을 보는 것과 같은 사용자가 화면에 많은 몰두를 필요로 하는 상황을 위한 모드다. Lean back 모드와의 차이점은 사용자가 상태표시줄이나 내비게이션 바 같은 시스템 바를 화면에 다시 가져오려면, 기기의 모서리를 훑도록 한 것이다. 화면 임의의 지점이 아닌 모소리를 훑은 의도적인 제스처로 시스템 바 복원을 하도록 한 것은, 사용자가 앱에 집중하는 것을 임의의 터치 등으로부터 방해받지 않도록 하기 윈한 것이다. Immersive 모드를..
![](http://i1.daumcdn.net/thumb/C148x148.fwebp.q85/?fname=https://blog.kakaocdn.net/dn/bTtZD6/btre5OYm8Pu/60tBFgDPrZsCvyfGybtcE0/img.png)
public boolean isInMultiWindowMode () 액티비티가 현재 멀티 윈도우 모드면 true를 반환한다. Returns true if the activity is currently in multi-window mode. 멀티 윈도우 모드 활성화 여부에 따라 동작이 달라질 때 isInMultiWindowMode()의 반환값을 조건으로 분기 처리가 가능하다. * 멀티 윈도우 모드(Multi-window mode) : 안드로이드에서 지원하는 화면 분할 모드로 아래와 같이 한 화면을 둘로 나누어 사용하는 기능. 출처 - https://developer.android.com/reference/android/app/Activity#isInMultiWindowMode() - https://deve..
Taxonomies for the Development and Verification of Digital Systems에 따르면 Platform-based design이란 "통합을 지향하는 디자인 접근 방법으로 플랫폼과 호환 가능한 하드웨어와 소프트웨어 가상 구성요소를 기반으로한 복잡한 제품을 개발하기 위해 체계적이고 조직적인 재사용을 강조하고, 이것의 의도는 시장에 내놓기 위한 개발 위험과 비용, 시간을 줄이는 것이다. Platform-based design is defined in Taxonomies for the Development and Verification of Digital Systems as "an integration oriented design approach emphasizing s..
instanceof는 객체가 주어진 타입이 맞는지 여부를 확인하는 이항 연산자로, true와 false를 결과로 반환한다. 알 수 없는 객체를 캐스팅(casting) 하기 전에 확인을 위해 쓰이며, 런타임에서 ClassCastException를 회피할 수 있도록 한다. instanceof의 기본 문법은 아래와 같다. : (object) instanceof (type) 단, 하기 예제처럼 null 일 시에는 false를 반환한다. Example) class Car { } class Kia extends Car { } public class InstanceofTest { public static void main(String[] args) { Kia kia = new Kia(); System.out.prin..
- Total
- Today
- Yesterday
- vertex shader
- 티스토리챌린지
- 리트코드
- The Economist Espresso
- Computer Graphics
- Python
- 파이썬
- min heap
- C++
- 이코노미스트
- 딕셔너리
- 오블완
- I2C
- 머신 러닝
- machine learning
- java
- 투 포인터
- socket programming
- The Economist
- Android
- join
- 소켓 프로그래밍
- leetcode
- DICTIONARY
- Hash Map
- 안드로이드
- ml
- 이코노미스트 에스프레소
- tf-idf
- defaultdict
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |