본문 바로가기 메뉴 바로가기

HAMA 블로그

프로필사진
  • 글쓰기
  • 관리
  • 태그
  • 방명록
  • RSS

HAMA 블로그

검색하기 폼
  • 전체 (687)
    • 주인장 (9)
    • 잡동사니 (2)
    • 소프트웨어 사색 (81)
    • Rust (0)
    • tech shard (비공개) (0)
    • 그래픽스 (3)
    • 데브옵스 (5)
    • 데이터 가시화 (d3.js , Plotly, Gr.. (18)
    • 디자인패턴 (10)
    • 무들 (moodle) (17)
    • 보안 (6)
    • 뱅킹 & PG (5)
    • 블록체인 (55)
    • 알고리즘,자료구조 (4)
    • 서버 &컨테이너 & 도커등 (2)
    • 오픈소스, 미들웨어 (9)
    • 임베디드 (4)
    • 인터프리터 (4)
    • 하이브리드앱 (9)
    • 아이폰 (IOS) (10)
    • 안드로이드 (14)
    • 운영체제 (1)
    • 아마존 AWS & 클라우드 (5)
    • 테스트 (1)
    • 통계 & 머신러닝 & 딥러닝 (39)
    • Angular & React (3)
    • Akka (27)
    • CUDA (1)
    • Flask (5)
    • Go (17)
    • HAMA (3)
    • Hadoop (7)
    • Haskell (1)
    • IoT (32)
    • IoT 데이터 분석 (NILM) (10)
    • IoT 전기자동차 (4)
    • IDE & 기타 툴(tool) (3)
    • Javascript (12)
    • Java (31)
    • Kotlin (10)
    • Math (1)
    • Netty, Java IO (8)
    • Network (7)
    • NoSQL (7)
    • Node.js (1)
    • OpenMP,PPL (4)
    • OpenCV, Halcon (1)
    • OpenGL , WebGL (0)
    • PlayFramework2 (35)
    • Amp,CUDA,OpenCL,TensorFlow (1)
    • Python (37)
    • RDBMS (PostgreSQL) (11)
    • Scala (51)
    • Spark (5)
    • Spring (9)
    • UI , UX 디자인 (6)
    • VTK (1)
    • Vert.x (13)
    • WAS & 웹서버 (3)
    • Zookeeper (2)
    • C++ (비공개) (4)
      • 문법 (1)
      • TR1 (0)
      • Algorithm (0)
      • container (0)
      • Date Time (0)
      • Exception (0)
      • FileSystem (0)
      • Flyweight (0)
      • function (0)
      • Functor & binder (0)
      • Geometry (0)
      • Graph (0)
      • IO Stream (0)
      • InterProcess (0)
      • Interator (0)
      • Lamda (0)
      • Localization & UTF-8 (0)
      • log (0)
      • Math, numeric (0)
      • memory&pool (0)
      • meta class (0)
      • metwork & ASIO (0)
      • PropertyTree (0)
      • Regex (0)
      • Signal (0)
      • Singleton_template (0)
      • smartptr (0)
      • speed (0)
      • spirit (0)
      • string (0)
      • system (0)
      • thread & concurrent (0)
      • tokenizer (0)
      • util (0)
      • Timer (0)
    • Meeting (0)
    • OpusM (0)
  • 방명록

Scala (51)
스칼라 강의 (43) - 고급 타입관련 주제들

스칼라 스쿨 타입 고급주제 (한글번역) 참고. https://twitter.github.io/scala_school/ko/advanced-types.html 먼가 좀 조잡하긴 한데....나중에 스칼라에 대한 도가 좀 쌓이면, 풀어서 다시 정리하는 글을 올릴것이다.

Scala 2017. 3. 26. 14:30
스칼라 강좌 (42) 고급 타입 다루기 - F-bounded polymorphism / recursive types

F-bounded polymorphism / recursive types 번역:http://blog.originate.com/blog/2014/02/27/types-inside-types-in-scala/ 지금까지 이런 타입 시그니처 본 적이 있어? (역주: 난 얼마전에 봤다...당황 많이 했어 ;;) 1 trait T[U Bird): Bird def delete(id: String): Unit }사과랑 새라는 두개의 클래스가 있는데, 잘 보면 두 클래스가 하는 역할이 너무 비슷하잖아? 중복되는 느낌도 들고~ 앞으로 비슷한 클래스를 작성 할때 저 코드를 또 타이핑 해야할 것을 생각하면 한숨이 나오지..그렇다면 리팩토링의 화신인 우리가 해야할 것은 무엇일까?그래 인터페이스로 끌어 올리는거야. 스칼라에서는 ..

Scala 2017. 3. 26. 13:32
스칼라 강좌 (41) Try 예외처리

Try 값이 util.Try 클렉션은 에러 처리를 컬렉션 관리로 바꾸어 놓는다. 이 클렉션은 주어진 함수 매개변수에서 발생한 에러를 잡아내는 메커니즘을 제공하여 함수가 성공적으로 실행된 경우에는 함수의 결과값을 그렇지 않은 경우에는 에러를 반환한다.추가 설명은 아래 링크를 참고하세요. http://blog.seulgi.kim/2015/07/monad-try.html Try 를 이용한 에러 처리 메소드 이름 예제 설명 flatMap nextError flatMap { _ => nextError } Success인 경우 util.Try를 반환하는 함수를 호출함으로써 현재의 반환값을 새로운 내장된 반환값(또는 예외에 매핀함, 우리의 'nextError' 데모함수는 입력값을 취하지 않기 때문에 우리는 현재 Su..

Scala 2017. 2. 27. 13:48
스칼라 강좌 (40) 동시성을 위한 Promise 와 Await

Promise이전 블로그글에서 Future 에 대해서 먼저 읽고 오자. (안읽으셨다면..) 스칼라의 Promise 는 Future 의 일반화라고 볼 수 있다. (스칼라의 Promise 다. 다른 언어 라이브러리들이 모두 Future, Promise 등에 대한 정의/구현이 조금씩 다를 수 있다. 요즘 처럼 동시성 이슈가 많은 시절에는 원할한 의사 소통을 위해 구분 지어야 할 것이다) 따라서 Future 에 대해서 학습했다면 쉽게 이해 가능하다. (여기서 일반화라는 말이 너무추상적이라 헤깔릴수 있을 텐데 좀 참아보자.)Future 에서는 보통 위임 행동이 강결합 되있었다. 즉 future.( 행동 ) 하지만 Promise 는 Promise 만 먼저 선언해두고 나중에 success 를 호출해서 완료된것을 알려..

Scala 2017. 2. 21. 17:45
스칼라 강좌 (39) 동시성을 위한 Observable

* 이 글은 일단 발행은 하는데 오류가 있을 가능성도 있으며 수정&발전 될 것입니다. 동시성을 위한 스칼라 Observable 스칼라의 Observable 을 배우기 전에 여러가지 것들에 대해서 편하게 읽어보자. Play 의 Iteratee & Enumerator Play 에서 Iteratee / Enumerator / Enumeratee을 간단하게 말하면 :이름설명Iteratee [E, A] Iteratee [E, A]는 함수형 프로그래밍에서 iteration 컨셉의 일반화. E 입력,A 출력 (소비자역할)Enumerator [E]컬렉션을 일반화 한 것으로 형태 E를 열거한다. 무한 열거 (Streaming) 할 수도있다. (생산자역할)Enumeratee [E, A]거의 사용하지 않기 때문에 지금은 생..

Scala 2017. 2. 21. 16:08
스칼라 강좌 (38) 동시성을 위한 Collections

동시성을 위한 스칼라 Collections 스칼라도 자바5에서 등장한 자바동시성 도구들 처럼 (을 사용한) 쓰레드 안전한 콜렉션들이 있다. 대표적으로 ConcurrentHashMap. LinkedBlockingQueue 등...concurrent.TrieMap 같이 스칼라 전용으로 추가된 것들도 있다. 대략적인 것은 안다고 가정하고 스칼라 코드를 살펴보자.* 이런 컬렉션들은 여러 쓰레드들에 의해 공유된다. 공유되지 않는 방법으로 동시성을 처리하는 경우도 있는데 이런 경우 공유 되지 않기 때문에 락을 걸 필요가 없어진다. (액터 등) 코드로 말해요.LinkedBlockingQueueobject CollectionsIterators extends App { import java.util.concurrent...

Scala 2017. 2. 21. 11:43
스칼라 강좌 (37) 동시성을 위한 ExecutorContext

ExecutorContext 스칼라도 JVM 상에 돌아가는 언어 (네이티브 스칼라도 개발중이긴 하다.)라 자바의 라이브러리를 사용 할 수 도 있으며 자신의 라이브러리가 있다면 주로 그것을 사용하는 편 이다.쓰레드 생성 관련해서도 자바에 있는 Executor 와 ExecutorService 를 사용할수도 있겠지만 스칼라에서는 기능이 보강된 자신만의 것도 있다. 이름하여 ExecutorContext!!이번 포스트에서는 ExecutorContext 등 스칼라의 저레벨 (쓰레드를 직접 사용하는것은 원시레벨) 동시성 도구들에 대해 알아보자. 먼저 자바의 경우 Executor 는 그냥 Runnable 타입을 내부 쓰레드풀을 이용해서 실행시켜주는거다.기본 Executor구현으로는 ThreadPoolExecutor (..

Scala 2017. 2. 21. 11:05
스칼라 강좌 (36) {} 익숙해지기, {} 는 어디서 사용되는가?

{} 는 어디서 사용되는가? 이름 있는 함수 def timesTwo(i: Int): Int = { println("hello world") i * 2 }이름 없는 함수 : {} 를 통해 묶었다. scala> { i: Int => println("hello world") i * 2 }이렇게 스칼라 코드를 읽을때 개인적으로 자바와 가장 큰 차이점 중 하나는 시도 때도 없이 나타나는 {} 이다. def tweets = WebSocket.acceptWithActor[String, JsValue]{ request => out => TwitterStreamer.props(out) }예를들어 여기서 { } 는 뭘까? object Test { type HandlerProps = String => String def a..

Scala 2017. 2. 17. 20:32
이전 1 2 3 4 5 ··· 7 다음
이전 다음
공지사항
최근에 올라온 글
최근에 달린 댓글
Total
Today
Yesterday
링크
TAG
  • 파이썬 머신러닝
  • 파이썬 동시성
  • 엔터프라이즈 블록체인
  • 블록체인
  • 하이퍼레저 패브릭
  • 플레이프레임워크
  • 스칼라 강좌
  • 스칼라
  • 스위프트
  • Golang
  • 이더리움
  • CORDA
  • 안드로이드 웹뷰
  • 파이썬 강좌
  • Hyperledger fabric gossip protocol
  • akka 강좌
  • play2 강좌
  • hyperledger fabric
  • 주키퍼
  • Play2 로 웹 개발
  • 파이썬 데이터분석
  • 스칼라 동시성
  • play 강좌
  • Adapter 패턴
  • Akka
  • Actor
  • 그라파나
  • Play2
  • 하이브리드앱
  • 파이썬
more
«   2025/07   »
일 월 화 수 목 금 토
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
글 보관함

Blog is powered by Tistory / Designed by Tistory

티스토리툴바