분류 전체보기 1203

lambda 람다식이란

람다식이란 뭘까요 익명 함수(Anonymous functions)를 지칭한다고 하는데 이렇게 생긴 함수들입니다. (0 until 10).foreach { println(it) } 자 그러면 얘를 기존 방식대로 쓰면 어떻게 될까요? for (i in 0 until 10) { println(i) } 여기까지는 뭔가 큰 차이가 안보이는데, 다른 것들을 봐 볼까요? 기존 함수 01 fun sum(x1: Int, x2: Int): Int { 02 return x1 + x2 03 } 람다식 01 val sum1 = { x1: Int, x2: Int -> x1+x2 } 뭔가 간결해진 것이 보이죠? 그렇다면, 람다식의 장점과 단점은 뭘까요? 장점으로는 코드가 간결해지고, 불필요한 연산을 자제해서 메모리 효율성이 높아집..

개발/Kotlin 2019.08.14

AsyncTask 란

AsyncTask 란 뭘까요? 일단 동기와 비동기에 대해서 알아보겠습니다. 동기는 해야할 일이 1,2,3,4,5 가 있을 때 1번 끝나면 2번 시작, 2번 끝나면 3번 시작 이런 식으로 하는 것이고 비동기는 1번 끝나기 전에 2번을 시작해버리는 것입니다. 자, 그렇다면 왜 비동기가 필요할까요? 안드로이드에서 어떤 작업을 처리해야 하는데 (ex 대용량 데이터를 불러와야 하는 것) 데이터를 불러오는 동안, 앱이 멈춰있는 것 처럼 보이면 안되기 때문입니다. 때문에, 일단 UI를 보여주면서, 데이터를 불러오는 작업을 background에서 하는 것입니다.

Optional 이란

스위프드 개발을 하다가 UITextField에서 값을 가져와서 프린터로 찍어보면 예를 들면 string_text 라는 변수에 "abc" 라는 변수를 가지고 있는데 print(string_text.text) 라고 찍으면 Optional("abc") print(string_text.text!) 라고 찍으면 "abc" 가 나옵니다. 자 그렇다면 optional이란 것은 이 변수가 비어있을 수도 있으니 optional이라는 값 안에 감싸주는 것인데 뒤에 느낌표를 넣어주면, 얘가 비어있지 않다고 해줌으로써 optional을 사라지게 할 수 있습니다 :)

개발/IOS(Swift) 2019.08.09

Swift FirebaseDatabase getData

이번에는 파이어베이스로 던진 데이터를 받아오는 작업을 해 봅니다. https://firebase.google.com/docs/database/ios/read-and-write?hl=ko iOS에서 데이터 읽기 및 쓰기 | Firebase 실시간 데이터베이스 | Firebase FIRDatabaseReference 가져오기 데이터베이스에서 데이터를 읽거나 쓰려면 FIRDatabaseReference의 인스턴스가 필요합니다. Swiftvar ref: DatabaseReference! ref = Database.database().reference() Objective-C@property (strong, nonatomic) FIRDatabaseReference *ref; self.ref = [[FIRDatab..

개발/IOS(Swift) 2019.08.09

Ethereum 용어 정리

이더리움이란? - 블록체인 기술을 기반으로, smart contract를 구현하기 위한 분산 컴퓨팅 플랫폼이다. - 블록체인이 데이터의 거래를 보장하는 것이라면, 다른 것도 올릴 수 없을까? 해서 이더리움에서는 계약서 등 다양한 정보를 저장할 수 있다. 개인키/공개키 - 개인키로는 서명(인증)을 하고, 공개키는 이더를 수신하는 주소로 사용합니다. GAS Payment - Gas라고 이더리움 네트워크상에서 트랜잭션이 일어날 때, 사용자가 지불해야 하는 수수료입니다. - 이 수수료를 통해 EVM이 무한루프 도는 것을 방지하고, 네트워크를 유지할 수 있는 비용을 감당합니다. Smart Contracts - 그냥 이렇게 할 꺼다 라고 계약을 이더리움 네트워크에 올리는 겁니다. P2P 계약으로 중계자 없이 계약이..

개발/블록체인 2019.08.08

RXJava란

Rxjava RxKotlin 이란 것을 많이 들어봤는데 이 것은 과연 무엇일까요? RX(Reactive java)에서 이름을 따온 것인데 왜 이것을 사용하는지 알아보니, 자바로 Reactive Programming 을 할 때 사용한다고 합니다. 자, Reactive Programming 이란 뭘까요 무슨 검색해보니 데이터에 흐름을 따라 함수나 수식이 업데이트 된다. 이런 말이 나오는데... 이게 무슨 말일까요?? 매우매우 간단하게 설명하면, 어떤 이벤트가 일어나서 그 이벤트에 따라 무엇인가를 변경해준다. 라고 생각하면 되는데 뭐 변경이야 그렇다치고, 그러면 왜? 사용하는가에 대한 부분은 쓰레드 처리가 간단합니다. 쉽게 말하면, 저희가 직접 프로그래밍으로 핸들링 해주는 것 보다 RXjava 에서 더 효율적..