TokkiSea(53)
-
제주정착기 28 - 또 다른 문제, 셀프 시공, 국유지 매각 소식
27편에 이어.. ㅌㄲㅆ TokkiSea "스테인드글라스 공방/작업실/소품 가게" "카페, 주류 가게" 중 제주 김녕에서 준비 중인 "ㅌㄲㅆ(토끼 씨)"입니다. 측량기사가 서있는 저 위치 아래에 점부터 양쪽으로 우리 땅 경계선이다. 우리 집 쪽 증축을 진행하려면 이 부분을 또 협의해야 한다. 정말 너무 골치 아프다. 정말 골치 아픈 집을 산 것 같다. 2021년 이번해에 국유지 매각 사업이 중단되었단 소식에 2022년 말까지는 공사를 못 하겠다고 생각했었다. 그런데 얼마 전 좋은 소식이 왔다. 신청자 중 예외로 일부를 뽑아서 매각 진행하는 대상에 우리가 포함된 것이다. 우리는 증축 설계도면과 제주 정착의 강력한 의사표현 때문인데 다행히 우리도 포함이 되었다. 아직 매각 완료까지는 또 기다려야 하고 또다시..
2021.08.25 -
RxSwift 정리 6 - UI (TableView .bind .drive .orEmpty)
TableView.rx 기존 방식이라면 UIViewController에 TableView 하나 추가 delegate와 dataSource를 UIViewController에 연결하고 UITableViewDelegate, UITableViewDataSource 를 상속한 다음 func tableView(_ tableView: UITableView, numberOfRowsInSection section: Int) -> Int func tableView(_ tableView: UITableView, cellForRowAt indexPath: IndexPath) 를 오버라이딩 한후 UITableViewCell 추가하고 클래스를 만들어 연결하고.. 과정을 생략할 수 있습니다. 그냥 UITableView 추가하고 I..
2021.08.24 -
RxSwift 정리 5 - operators(.withLatestFrom .sample .amb .switchLatest .retry(when:))
.withLatestFrom() .sample() .withLatestFrom : 가장 최근 발생값을 계속 subscribe한다. .sample : 가장 최근 발생값을 subscribe한다. 이후 새로운 값이 없다면 발생값이 없다. sample = withLatestFrom + distinctUntilChanged() 와 같다. let button = PublishSubject() let textField = PublishSubject() button.withLatestFrom(textField) // textField.sample(button) .subscribe(onNext: { value in print(value) }) textField.onNext("Typ") textField.onNext("T..
2021.08.23 -
RxSwift 정리 4 - operators(.startWith .concat .concatMap .marge .combineLatest .zip)
.startWith() 시작 값을 지정 let numbers = Observable.of(2, 3, 4) let observable = numbers.startWith(1) observable.subscribe(onNext: { value in print(value) }) // 1,2,3,4 .concat() 두 시퀸스를 합친다.(순서에따라 앞,뒤 주의) 동작 > first subscribe 하고 complete 발생한후 second를 subscribe한다. let first = Observable.of(1, 2, 3) let second = Observable.of(4, 5, 6) Observable.concat([first, second]).subscribe(onNext: { value in prin..
2021.08.23 -
RxSwift 정리 3 - operators(.flatMap .flatMapLatest .materialize .dematerialize .share)
계속 해서 연산자 입니다. .flatMap() 모든 시퀸스를 하나의 시퀸스로 모아서 발생 시킨다. .flatMapLatest() 가장 마지막의 시퀸스로 발생 시킨다. .materialize(), .dematerialize() score 는 Int 이다. materialize() 를 붙여주면 RxSwift.Event 형태로 바꾸어 준다. ( ".next(1)" 이 찍힘 ) Error, Complete 등 이벤트를 확인 할 수 있다. .dematerialize() 를 붙여주면 다시 Int 로 바뀐다. ( 다시 "1" 이 찍힘 ) struct Student { var score: ReplaySubject } let A = Student(score: ReplaySubject.createUnbounded()) l..
2021.08.20 -
RxSwift 정리 2 - SubJect, operators(기본)
메모용 연산자는 너무너무도 많아서 새로운 연산자 마다 별도로 작성할 예정입니다. 여기서는 많이쓰는 기본적인것만 작성합니다. .ignoreElements().elementAt().filter().skip().skipWhile().skipUntil().take().takeWhile().takeLast().takeUntil().distinctUntilChanged().distinctUntilChanged().delay.buffer.throttle.debounce.toArray().map.enumerated() RxSwift의 장점 !! 비동기화 프로그래밍을 쉽고 강력하게 할 수 있다. Rx 가 붙은 다른 언어로 즉시 사용할 수 있다. RxSwift 작성 -> RxJava로 즉시 사용 가능 PublishSubj..
2021.08.20 -
RxSwift 정리 1 - Observable 생성
RxSwift 메모 용도 정리입니다. RxSwift Reactive Progreamming with Swift 책을 기준으로 작성되었습니다. Observable(sequence) 생성 let one = 1,two = 2,three = 3 1개요소만 생성 : .just() let observable1 = Observable.just(one,scheduler: MainScheduler.instance) scheduler: MainScheduler.instance 요소 생성시에도 스레드를 선택해줄수 있습니다. 종류는 다음에 설명, 여러 요소 생성 : .of() let observable2 = Observable.of(one,two,three) //Observable let observable3 = Observ..
2021.08.20 -
프로그래머스 - Swift algorithm - BALLOON 단어 찾기
"BAOOLLNNOLOLGBAX" 이런 형태의 문자가 입력되면 BALLOON을 몇개나 만들수 있는지를 알아내는 문제다. C++의 char 정도로 for 문 돌면서 찾고 지우면 너무 쉽게 결과가 나올것 같다. 하지만 Swift 는 Charecter 와 String 의 사용이 자연스럽지 못해서 조금은 어려울 수 있다. public func findBALLOON(_ S : inout String) -> Int { let searchArr : Array = ["B","A","L","L","O","O","N"] var foundCount : Int = 0 var bRoop : Bool = true while(bRoop) { if !S.contains("B") { // 첫 글자 B 조차 없으면 시작도 하지 않는다...
2021.08.04 -
프로그래머스 - Swift algorithm 0, 1 배열에서 1 덩어리 찾기
가로 세로 2차원 배열에서 "0"과 "1"을 배열하고 "1"이 가로세로 연결되었을 때 한 묶음으로 간주하여 총 몇 묶음인가, 또 가장 많은 "1"이 연결된 수를 구하는 문제다. 이런 식이다. 좌, 우 끝부터 보면 8개의 "1" 이 연결되어 있고 좌, 아래는 3개, 우, 상에는 3개, 우/하에는 10개의 "1"이 연결되어 있다. 결과는 총 4덩어리고 제일 큰 덩어리는 10개라서 정답은 4,10을 구하는 문제였다. 알고보니 DFS, BFS라는 알고리즘이다. // 문제 입력 var maps : [[Int]] = [[1,1,0,1,1],[0,1,1,0,0],[0,0,0,0,0],[1,1,0,1,1],[1,0,1,1,1],[1,0,1,1,1]] print(DPS_algorithm(&maps)) // 체크할 X,Y..
2021.08.02 -
2021년 ~ 2031년 대체 휴일 + 연휴 정보
일상 소식입니다. 3번째 수정하네요. 기존 대체 공휴일 제도는 어린이날이 토요일, 일요일, 다른 공휴일과 겹치면 다음에 오는 비공휴일을 대체 공휴일로 지정하고요. 설날, 추석 당일(즉 3일 중 중간날짜)이 일요일, 다른 공휴일과 겹치면 다음에 오는 비공휴일을 대체 공휴일로 지정하고 있어요. 이번 2021년에는 공휴일이 7일이나 사라지는 년도예요. 그래서 말이 많아지자 법안으로 통과 시켜려하고 있어요. 반대하는 쪽은 아무래도 사업장이고 특히 소규모 사업장 때문에 반대가 이만저만이 아닙니다. 2022년 1월 부터 모든 공휴일을 대체 공휴일제도로 법안 통과 되었습니다. 추가로 2021년 8월 15일부터 2021년도의 4일도 추가로 적용하게 되었습니다. 다만, 5인미만 사업장은 제외가 되었네요.;;; 여하튼 향..
2021.07.09 -
루카(Luca) - 이탈리아 배경 픽사(Pixar) 영화
오늘의 일상 이야기입니다. 제주도 토끼 씨 집 공사가 사기꾼들 때문에 사람을 늙게 만들어서 힘들어하던 중에 좋은 힐링 영화로 마음을 안정시키고 있네요. 픽사(월트 디즈니의 자회사) 애니메이션 루카 이야기입니다. 영화 소개글이나 스포 글이 아니니 안심하고 읽으셔도 됩니다. 루카는 라틴어로 빛을 뜻하고 여성이름으로 많이 쓰인다고 합니다. 루카는 남자아이네요. 루카스 필름, 루카스 아트 때문에 붙은건가? 라는 의문도 듭니다. 알베르토도 이탈리아의 이름으로 많이 쓰이고요. A 로 끝나는 이름은 여성이 많고(줄리아) O로 끝나는 이름은 남성이 많다고 합니다.(알베르토) 주인공 이름은 루카, 친구 이름은 알베르토 새로 생기는 여자 친구 줄리아 배경은 이탈리아 리비에라라고 소개하고 있어요. 리비에라는 해안이라는 뜻이..
2021.06.23 -
디아블로® II: 레저렉션™ - 출시일 9월 24일
디아블로® II: 레저렉션™ 이 드디어 9월 24일에 출시하네요. 더 빨리 나올수도 있다고 합니다. 가격은 4만 8천 원, 디아블로 3를 하시는 분이라면 7만 2천 원짜리 패키지가 있네요. 최소사양은 Windows 10!!(Mac 이 없군요;) 4K를 지원하는 건 좋은데 시점이 너무 멀어서 액션감이 좀 떨어지겠네요. 아래의 위쪽 이미지는 오리지널, 아래는 레저렉션입니다. 개인적으로는 오리지널이 피가 많이 튀기고 칙칙한 분위기가 더 좋아 보이네요; 개인적으로 디아블로 3를 했다가 접은 이유가 너무 화려한 이펙트가 많고 칙칙하고 어둡지 않다는 것 때문에 디아블로스럽지 않아서 접었었어요. 근데 디아블로 2 레저렉션도 조금 그렇네요;; 뭐.. 마을은 아주 멋지게 바뀌었네요. 마을 구경할 재미는 있겠습니다. 가장..
2021.06.18