일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- 그라나다
- 도심공항
- cocoapod
- 스쿠버다이빙
- 세비야
- swiftUI
- Concurrency #Swift #Combine
- 강릉
- 푸켓여행
- 라이브러리
- 크로아티아
- 스플리트
- 공기먹는다이버스
- 러브자그레브
- 스페인여행
- 아시아나
- 스페인광장
- 리브어보드
- 연금저축펀드
- 대한항공
- SwiftUI #Skeleton #데이터갱신
- Gradle
- 괌 자유여행
- 시밀란
- 러브스플리트
- Device 등록
- Swift #Concurrency #쓰레드
- Cocoapods #PrivateRepo #SpecRepo
- xcode
- 지팍스페인
- Today
- Total
목록분류 전체보기 (110)
JEP's Diary
스페인(Spain) 여행 3일차 (2018.12.22.토) 시차적응..은 힘든것 새벽5시부터 잠이 깨어 ㅎㅎ의도치 않게 부지런해졌다해가 고개를 조금씩 내밀때의 저 색감질리지않는다. 오늘은 몬세라트 가는날근교를 어디갈까 참 고민많았는데지로나도 가고싶고, 시체스, 몬세라트 등그 중 결국 몬세라트로 결정.몬세라트행은 에스파냐역에서 출발한다, 아침 일찍 전철타러 아레나쇼핑몰쪽에 있는 전철 출구로 내려갔는데전철 타는곳으로 가는길이 막혀있는게 아닌가.... 어찌해야될지 모르다가다른사람한테 물어보니 건너편 출구를 이용해보라길래건너편 호텔쪽에 있는 출구로 들어갈 수 있었다. 휴우 요렇게 표시된 방향만 잘 따라가면몬세라트행 전철행 플랫폼에 도착하게된다 3.4번 플랫폼 몬세라트행은 4번플랫폼 8시36분차아직 20분정도 여..
스페인(Spain) 여행 2일차 (2018.12.21.금) 시차적응 안되서 ㅎㅎ 자꾸 새벽에 깨고5AM면 눈이 떠져서 잠도안오길래창문밖을 바라보니 요러해. 10AM에 까사밀라를 예약해놨었고,아침 부지런히 지하철을 타러 왔다.L3 라인 Tarragona 역에서 Diagonal역으로 이동이동할때 L3라인을 가장 많이 이용했던 것 같다. Diagonal역에서 출구로 나오면 바로 까사밀라 건물이 보인다.올록볼록 굴곡이 참 멋있다. 아직 10시가 되지 않아 밖에서 요리조리 사진찍기동생이 찍어준 샷인생샷 여러개 건져줬다 ㅎㅎㅎㅎ 참 신기하다 이곳에서 까사밀라는 La Pedrera라고 불린다.10시 조금 되기전에 줄섰는데도 바로 입장 시켜주었고,입장할때 짐검사를 한다!!그리고 오디오 가이드가 제공되는데(입장료에 포함..
3.자바와는 다른 코틀린의 특징 클래스: 자바와 달리 코틀린에서만 제공하는 클래스에 대한 기능을 살펴본다. - 데이터 클래스: 자료를 구성하는 프로퍼티만 선언하면 컴파일러가 equals(), hashCode(), toString()함수를 자동으로 생성해준다.data class Person(val lastName: String, val firstName: String): 객체.toString()을 하면 다음과 같은 출력결과가 나온다.val me = Person("John", "Park") println("Me = $me" )Me = Person(lastName=John, firstName=Park) - 한정클래스(sealed class): enum 클래스를 확장한 개념으로, 각 종류별로 하나의 인스턴스만 ..
스페인(Spain) 여행 1일차 (2018.12.20.목) 스페인 여행 다녀와서 시차적응 대실패 ㅜㅜ아침에 잠들어서 하루 푹 자고, 밤에 아니 새벽에.. 똘망똘망해진 지금 사진정리와 함께 여행 이야기를 쓰려한다 ㅎㅎ이번여행은 여행을 마치고 한국행 비행기를 타는 날이 되었는데,하나의 아쉬움없이 너무 만족했다!! 그렇기에 얼른 한국으로 돌아가고 싶다는 감정까지 들었다?참으로 신기한 감정 ㅎㅎ매번 여행마지막날에는 으아 집에돌아가기싫어~~~ 이랬었는데그와 다른감정이 들었다는게 신기했다.그만큼 스페인은 관광지 한곳 한곳 너무 예뻤고, 멋있었고, 음식도 맛있고, 사람들도 친절하고좋았던 기억이 가득하다 ^^이제부터 여행 이야기 시작!! 올해 1월에 스페인행 뱅기 티켓팅을 해놓고 1년은 언제 지나가나 생각했는데..드디..
2. 자바와 비교해 보는 코틀린 2 자료/자료형의 확인 및 변환 - 자료의 동일성 확인: ==, === 연산자 : == 연산자는 객체냐 객체의 값이냐를 구분할 필요 없이 ==연산자를 사용한다. 또한 비교하는 값의 널 여부를 함께 확인한다.: === 연산자는 객체 자체가 동일한지 여부에 대한 비교 연산자이다. - 자료형 확인: is 연산자: is연산자는 자료형을 확인하기 위해 사용한다. (자바의 instanceOf): !is 연산자는 자료형이 아닌지는 확인할때 사용한다. - 자료형 변환: as 연산자123fun processNumger(number: Number) { val foo : Int = number as Int}Colored by Color Scriptercs - 스마트 캐스트: 자료형 추론이 가..
2. 자바와 비교해 보는 코틀린 기본 자료형코틀린은 모든 타입을 객체로 표현하므로 원시 타입(int, double)과 래퍼 클래스(Integer, Double)를 구분하지 않는다.kotlin.Bytekotlin.Shortkotlin.Intkotlin.Longkotlin.Charkotlin.Floatkotlin.Doublekotlin.Boolean - 숫자: 숫자와 타입, 진법을 함께 표현하기 위해 사용하는 리터럴 표기법은 자바와 대부분 동일하다.: Long타입은 대문자만 지원한다. 12val longValue: Long = 100L cs - 연산자: 숫자 연산자는 자바보다 더 직관적이다.: and, or, xor, inv, shl, shr, ushr - 문자: 코틀린에서는 문자만 대입할 수 있다.12va..
1.코틀린이란?코틀린은 젯브레인(JetBrains)에서 만든 언어로, 2016년에 정식 버전이 출시 되었다.코틀린은 간결한 문법과 풍부한 기능, 높은 안정성을 토대로 높은 생산성을 보장하는 것을 목표로 개발되었고, 자바와 100%호환된다. 코틀린의 특징- 간결한 문법: 문장 끝에 세미콜론(;)이 없다.: new 키워드를 쓰지 않고 객체를 생성한다.: 타입 추론을 지원하므로 보통 타입을 적지 않아도 된다. - 널 안전성: 객체 타입의 변수에서 널 값 허용 여부를 구분하며, 널 값의 허용 여부를 컴파일 단계에서 검사하므로 런타임에서 발생하는 오류를 줄일 수 있다. - 가변/불변 구분: 변수의 값에 대해 가변/불변 여부를 구분한다. 또는 컬렉션 자료형에 대해서도 가변/불변 여부를 구분한다.: val(value..
Android ViewModel Android Architecture Component의 ViewModel은 액티비티와 프래그먼트에서 사용되는 UI관련 데이터를 보관하고, 관리하기 위해 디자인 되었다.액티비티가 재생성 될때도 ViewModel의 인스턴스가 유지되어 데이터가 보관이되고,데이터의 소유권을 ViewModel이 가지고 있기 때문에 코드분리가되어 액티비티와 프래그먼트는 UI를 업데이트 하는 역할을 하게된다. 액티비티의 생성, 화면전환, 종료에 이르는 수명주기에도 ViewModel 스코프는 일관되게 유지가된다.따라서 프래그먼트들 사이에서 ViewModel을 이용해 데이터를 쉽게 공유할 수 있어, 프로그먼트 간 데이터 공유에 액티비티가 관여하지 않아도 된다. 액티비티가 완전히 종료되는 시점에 View..
스케줄러: 스케줄러는 스레드를 지정할 수 있게 해준다. 스케줄러를 활용한 비동기 프로그래밍의 핵심은 데이터 흐름이 발생하는 스레드와 처리된 결과를 구독자에게 전달하는 스레드를 분리 할 수 있다.: subsribeOn()함수는 구독자가 Observable에 subscribe()함수를 호출하여 구독할 때 실행되는 스레드를 지정한다.Observable에서 구독자가 subscribe()함수를 호출했을 때 데이터 흐름을 발행하는 스레드를 지정.한번 호출했을때 결정한 스레드를 고정하며 이후에는 다시 호출해도 스레드가 바뀌지 않는다.: observeOn()함수는 Observable에서 생성한 데이터 흐름이 여기저기 함수를 거치며 처리될 때 동작이 어느 스레드에서 일어나는지 지정할 수 있다.처리된 결과를 구독자에게 전..
리액티브 연산자2 생성연산자는 Observable로 데이터 흐름을 만들고 변환 연산자와 필터 연산자는 데이터 흐름을 내가 원하는 방식으로 변형한다.: 생성 연산자 just(), fromXXX(), create(), interval(), ranger(), timer(), intervalRange(), defer(), repeat(): 변환 연산자map(), flatMap(), concatMap(), switchMap(), groupBy(), scan(), buffer(), window(): 필터 연산자filter(), take(), skip(), distinct(): 결합 연산자zip(), combineLastest(), merge(), concat(): 조건 연산자amb(), takeUntil(), sk..