목록투케이2K 알고리즘 (105)
투케이2K
![](http://i1.daumcdn.net/thumb/C150x150/?fname=https://blog.kakaocdn.net/dn/bmin2B/btrWQ5rwpbF/Ok80g6AEr2cCxkBMbeU3wk/img.png)
[환경 설정 및 설명] 언어 / 플랫폼 : Java / Spring 설 명 : 문법 - RequestHeader , RequestParam 사용해 http 요청 헤더 값 및 파라미터 값 확인 [소스 코드] // ----------------------------------------------------------------------------------------- // TODO [SEARCH FAST] : [POST] : Request Header 값 확인 // ----------------------------------------------------------------------------------------- @PostMapping("/post_request_header") p..
[환경 설정 및 설명] 언 어 : Kotlin 설 명 : 문법 - [BroadCast] 브로드 캐스트 알림 전달 , 수신 및 채널 등록 [소스 코드] // ----------------------------------------- // [SEARCH FAST] : [BroadCast] : 브로드캐스트 알림 전송 // ----------------------------------------- try { val intent = Intent("BROAD_CAST_CHANNER") // [채널 명칭 지정] intent.addFlags(Intent.FLAG_ACTIVITY_NO_ANIMATION) LocalBroadcastManager.getInstance(A_Intro@this).sendBroadcast..
[환경 설정 및 설명] 언 어 : RxAndroid 설 명 : 문법 - [Observable] 스케줄러 사용해 subscribeOn , observeOn 스레드 관리 [설 명] /** * // ----------------------------------------- * [요약 설명] * // ----------------------------------------- * 1. 개발 환경 : 안드로이드 스튜디오 * // ----------------------------------------- * 2. Rx 관련 라이브러리 설치 (build.gradle) : * * implementation 'io.reactivex.rxjava3:rxandroid:3.0.0' * implementation 'i..
[환경 설정 및 설명] 언 어 : RxAndroid 설 명 : 문법 - [Observable] retry 사용해 api 재호출 및 subscribeOn, observeOn 스레드 관리 [설 명] /** * // ----------------------------------------- * [요약 설명] * // ----------------------------------------- * 1. 개발 환경 : 안드로이드 스튜디오 * // ----------------------------------------- * 2. Rx 관련 라이브러리 설치 (build.gradle) : * * implementation 'io.reactivex.rxjava3:rxandroid:3.0.0' * implement..
![](http://i1.daumcdn.net/thumb/C150x150/?fname=https://blog.kakaocdn.net/dn/y0P7w/btrVAK241Vd/6kssl6ut1kkkdWtPBidkOk/img.png)
[환경 설정 및 설명] 언 어 : RxKotlin 설 명 : 문법 - [Subject] AsyncSubject 사용해 onNext() 발행 된 마지막 데이터 출력 실시 [설 명] /** * // ----------------------------------------- * [요약 설명] * // ----------------------------------------- * 1. 개발 환경 : 안드로이드 스튜디오 * // ----------------------------------------- * 2. Rx 관련 라이브러리 설치 (build.gradle) : * * implementation 'io.reactivex.rxjava3:rxandroid:3.0.0' * implementation '..
![](http://i1.daumcdn.net/thumb/C150x150/?fname=https://blog.kakaocdn.net/dn/dagGHn/btrVBnM9gJs/Asmy0KdS0SOiv2ZUsonz9k/img.png)
[환경 설정 및 설명] 언 어 : RxKotlin 설 명 : 문법 - [Subject] ReplaySubject 사용해 구독 하는 시점에 관계없이 발행 된 모든 데이터 출력 [설 명] /** * // ----------------------------------------- * [요약 설명] * // ----------------------------------------- * 1. 개발 환경 : 안드로이드 스튜디오 * // ----------------------------------------- * 2. Rx 관련 라이브러리 설치 (build.gradle) : * * implementation 'io.reactivex.rxjava3:rxandroid:3.0.0' * implementatio..
![](http://i1.daumcdn.net/thumb/C150x150/?fname=https://blog.kakaocdn.net/dn/Kpyr9/btrVK0XoqNP/yEJD6dDSXLA2macPhihMD0/img.png)
[환경 설정 및 설명] 언 어 : RxKotlin 설 명 : 문법 - [Subject] BehaviorSubject 구독 이전에 발행 된 데이터 1개, 구독 이후 발행 된 데이터 출력 [설 명] /** * // ----------------------------------------- * [요약 설명] * // ----------------------------------------- * 1. 개발 환경 : 안드로이드 스튜디오 * // ----------------------------------------- * 2. Rx 관련 라이브러리 설치 (build.gradle) : * * implementation 'io.reactivex.rxjava3:rxandroid:3.0.0' * impleme..
![](http://i1.daumcdn.net/thumb/C150x150/?fname=https://blog.kakaocdn.net/dn/dniuaK/btrVBQhnNMO/URt6WErhgEqWetBY9pGBhK/img.png)
[환경 설정 및 설명] 언 어 : RxKotlin 설 명 : 문법 - [Subject] PublishSubject 사용해 구독 한 시점으로부터 발행 된 데이터 확인 [설 명] /** * // ----------------------------------------- * [요약 설명] * // ----------------------------------------- * 1. 개발 환경 : 안드로이드 스튜디오 * // ----------------------------------------- * 2. Rx 관련 라이브러리 설치 (build.gradle) : * * implementation 'io.reactivex.rxjava3:rxandroid:3.0.0' * implementation 'io..
![](http://i1.daumcdn.net/thumb/C150x150/?fname=https://blog.kakaocdn.net/dn/p3nqD/btrVzY8kwSm/6tpqiKRtMR3ZZmlQce9770/img.png)
[환경 설정 및 설명] 언 어 : RxKotlin 설 명 : 문법 - [Observable] create 사용해 생성자 만들기 및 subscribe 구독 결과 메시지 확인 [설 명] /** * // ----------------------------------------- * [요약 설명] * // ----------------------------------------- * 1. 개발 환경 : 안드로이드 스튜디오 * // ----------------------------------------- * 2. Rx 관련 라이브러리 설치 (build.gradle) : * * implementation 'io.reactivex.rxjava3:rxandroid:3.0.0' * implementation..
[환경 설정 및 설명] 언 어 : RxJava 설 명 : 패턴 - MVI (Model , View , Intent) 형태 로직 구현 실시 [MVI 설명] https://blog.naver.com/kkh0977/222925744013 68. (TWOK/ALGORITHM) [Android] 패턴 - MVI (Model-View-Intent) 개념 설명 [환경 설정 및 설명] OS : Android 설 명 : 패턴 - MVI (Model-View-Intent) 개념 설명 [설 명] ... blog.naver.com [클래스 구조] 1. Activity : 뷰 화면, 모델 상태 업데이트 시 렌더링을 수행해 다시 변경된 데이터 사용자에게 표시 2. Intent : 이벤트 동작 정의, 앱 상태 변경 ..
![](http://i1.daumcdn.net/thumb/C150x150/?fname=https://blog.kakaocdn.net/dn/PwhDQ/btrTk2RD5B9/ckZGvKSCraIQVH6eMUZ2YK/img.png)
[환경 설정 및 설명] 언 어 : Objc 설 명 : 문법 - #define 전처리기 지시어 선언 및 호출 방법 - 상수값 정의 [S_Define.h : 헤더 파일 소스 코드] /* // ----------------------------------------- // MARK: - [클래스 설명] // ----------------------------------------- [전처리기 지시어 관리 헤더 파일] // ----------------------------------------- 1. #define 은 전처리기 지시어 입니다 // ----------------------------------------- 2. #define 정의는 타입에 대한 정보가 없습니다 (타입 안전성이 떨어짐)..
![](http://i1.daumcdn.net/thumb/C150x150/?fname=https://blog.kakaocdn.net/dn/BskGk/btrShBNGToe/ujvldzkxSxkSEYq42kGkk1/img.png)
[환경 설정 및 설명] 언 어 : JavaScript 설 명 : 문법 - 클로저 (Closure) 사용해 void 함수 , return 함수 정의 [소스 코드] [결과 출력] [참고 사이트] https://blog.naver.com/kkh0977/222850413493 186. (javascript/자바스크립트) 클로저 (Closure) 사용해 void 함수 , return 함수 정의 실시 [개발 환경 설정] 개발 툴 : Edit++ 개발 언어 : javascript [소스 코드] [결과 출력] blog.naver.com
![](http://i1.daumcdn.net/thumb/C150x150/?fname=https://blog.kakaocdn.net/dn/c8gL5t/btrSa7G2zyV/kWsagfdEzbWadZ3NFyqEQK/img.png)
[환경 설정 및 설명] 언 어 : Ios 설 명 : 문법 - OperationQueue , BlockOperation 오퍼레이션 큐 사용해 동기 순차 로직 구현 [소스 코드] // MARK: - [테스트 메인 함수 정의 실시] func testMain() { print("") print("====================================") print("[\(self.ACTIVITY_NAME) >> testMain() :: 테스트 함수 시작 실시]") print("====================================") print("") /* ------------------------------- [요약 설명] -----------------------------..
![](http://i1.daumcdn.net/thumb/C150x150/?fname=https://blog.kakaocdn.net/dn/bEHobn/btrScaXPHC1/dtVv21O4epqdqkM4bU1Qt1/img.png)
[환경 설정 및 설명] 언 어 : Ios 설 명 : 문법 - willSet , didSet 사용해 데이터 변경 (갱신) 상태 확인 [소스 코드] // MARK: - [테스트 메인 함수 정의 실시] func testMain() { print("") print("====================================") print("[\(self.ACTIVITY_NAME) >> testMain() :: 테스트 함수 시작 실시]") print("====================================") print("") /* // ----------------------------- [요약 설명] // ----------------------------- 1. willSet :..
![](http://i1.daumcdn.net/thumb/C150x150/?fname=https://blog.kakaocdn.net/dn/CmBAf/btrShIF1Svx/DcrPm66cKLsDfIjbbGgGU1/img.png)
[환경 설정 및 설명] 언 어 : Ios 설 명 : 문법 - Dispatch Group 사용해 task 작업 그룹화 및 동기 방식 로직 처리 수행 [소스 코드] // MARK: - [테스트 메인 함수 정의 실시] func testMain() { print("") print("====================================") print("[\(self.ACTIVITY_NAME) >> testMain() :: 테스트 함수 시작 실시]") print("====================================") print("") /* ------------------------------- [요약 설명] ------------------------------- 1. Di..
[환경 설정 및 설명] 언 어 : Ios 설 명 : 문법 - GCD (Grand Central Dispatch) 설명 및 예제 소스 코드 작성 [설 명] 1. GCD 는 macOS, iOS, watchOS 및 tvOS 의 멀티코어 하드웨어에서 동시 코드 실행 지원에 대한 스케줄링 작업 체계 방식 입니다 2. GCD 는 큐 (Queue) 방식으로 작업 task 를 관리 합니다 3. DispatchQueue 스레드 구분 : - main (main thread) : 주로 UI 및 메인 스레드에서 처리해야할 작업 수행 - global (background thread) : 주로 네트워킹 , api 호출 관련 백그라운드 스레드에서 처리해야할 작업 수행 4. DispatchQueue task 처리..
[환경 설정 및 설명] 언 어 : Ios 설 명 : 패턴 - KVO (Key Value Observing) 패턴 설명 및 예제 - 프로퍼티의 상태 변경 반응 확인 [설 명] 1. KVO 는 다른 객체의 변경사항 (특정 키의 값의 변화) 을 알려주는 코코아 프로그래밍 패턴 입니다 2. KVO 는 모델 객체의 어떤 값이 변경 되었을 경우 이를 UI 및 로직에 반영하기 위해서 컨트롤러는 모델 객체에 Observing 을 도입하여 딜리게이트에 특정 메시지를 보내 작업을 처리합니다 3. KVO 는 메소드나 다른 액션에서 나타나는 것이 아니라 프로퍼티의 상태에 반응합니다 4. KVO 사용 방법 및 이점 : - Model 과 View 와 같이 분리된 파트 간의 변경사항을 전달하는데 유용함니다 - NSObj..
[환경 설정 및 설명] OS : Android 설 명 : 패턴 - MVI (Model-View-Intent) 개념 설명 [설 명] MVI 설명 : MVI 는 자바스크립트 Cycle.js 의 [단방향성] 과 Cycle Nature 에서 영감을 받아 만들어진 안드로이드 아키텍처 패턴입니다 MVI 는 패턴 흐름 : User >> Intent >> Model >> View 로 이루어진 단방향성 (Intent 와 Model 사이에 SideEffects 가 추가 존재 가능) MVI 패턴 각 컴포넌트 요약 설명 : Model (모델) : 앱의 상태와 데이터를 가지고 있는 불변 객체 View (뷰) : 사용자가 볼 수 있는 화면 (Activity / Fragment) Intent (인텐트) : 앱의 상태..
[환경 설정 및 설명] 언 어 : Swift 설 명 : 패턴 - 싱글톤 패턴 생성 및 사용 예시 [소스 코드] import AVFoundation class C_TTS { /* // ----------------------------- [요약 설명] // ----------------------------- 1. Text To Speech : 문자열을 음성으로 읽어주는 것 입니다 // ----------------------------- 2. 필요 import 설정 : import AVFoundation // ----------------------------- 3. 사용 방법 : C_TTS.shared.play("안녕하세요") C_TTS.shared.stop() // ---------------..
[환경 설정 및 설명] 언 어 : Kotlin 설 명 : 패턴 - 싱글톤 패턴 생성 및 사용 예시 [요약 설명] /** * ------------------------------------ * TODO [요약 설명] * ------------------------------------ * 1. companion object : 별다른 정의 없이 싱글톤 (singleton) 구현을 지원해줍니다. (java >> static) * ------------------------------------ * 2. 싱글톤 형태 static 메소드 변수를 사용하기 위해서는 companion object 내에 선언해주시면됩니다 * ------------------------------------ * */ [소스 코..