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

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)
스칼라 강좌 (11) - while 루프 와 재귀

while 스칼라에서 While,For 문은 없다로 생각하는게 좋습니다. 개인적으론 Java 8 이상에서도 while 문은 없다라고 생각하는게 좋지 않나 합니다. 아래와 같이 다른 방법 Stream API LINQ STL algorithm 컬렉션의 고차함수(map , flatmap, filter, zip, fold, foreach, reduce, collect, partition, scan, groupBy 등) 을 먼저 생각하는게 좋습니다. 특징 * 스칼라의 while 은 다른 언어와 마찬가지로 동작합니다. * if 나 for 가 표현"식" 인 반면에 while 은 "식" 이 아닙니다. 그냥 루프입니다. 즉 값을 내어 놓지 않습니다. 예를들어 if 표현식의 경우 값을 내놓기 때문에 아래와 같이 코딩이 가..

Scala 2016. 7. 3. 13:15
스칼라 강좌 (10) - 공변성,불변성,역공변성

공변성,불변성,역공변성 자바로 설명 백그라운드 Object

Scala 2016. 6. 27. 21:07
스칼라 강좌 (9) - Stack / Queue

Queue mutable val queue = new scala.collection.mutable.Queue[String] queue += "a" queue ++= List("b", "c") println(queue.dequeue) => a Stack mutable val stack = new scala.collection.mutable.Stack[Int] stack.push(1) stack.push(2) println(stack.pop) => 2 각각 immutable 타입도 존재한다.

Scala 2016. 6. 26. 14:15
스칼라 강좌 (8) - ArrayBuffer 와 Vector 그리고 공변성

ArrayBuffer 각 언어에서 가장 많이 사용되는 컬렉션을 말하자면 (개인적인 경험으로) C++ 에서는 vector , map 이고 자바에서는 ArrayList , HashMap Python 에서는 [] , {} 즉 리스트 와 딕셔너리 였던거 같습니다. 다른 언어를 사용할때 가장 먼저 찾게되는것이 바로 저런 가장 기본적인 컬렉션들인데요. 스칼라는 무엇일까요? JVM 상에서 돌아가는 스칼라에도 자바처럼 ArrayList (동적으로 사이즈가 변하는 배열) 같은게 있을까요? 특성 * 스칼라에는 자바의 java.util.ArrayList 가 없다. 대신 ArrayBuffer 가 있다. mutable 속성을 지녔다. * 자바의 ArrayList 는 C++ 의 vector 와 유사하다. (즉 링크드리스트로 구현..

Scala 2016. 6. 26. 14:07
스칼라 강좌 (7) - 컬렉션과 자바

스칼라 컬렉션과 자바 특성 * 스칼라 컬렉션에서 배열은 특별하다. 스칼라 배열은 어떤 면에서 자바 배열과 일대일 대응된다. 즉 Array[Int] 는 자바에서는 int[] 로 표현할 수 있다. 다만 스칼라쪽 배열이 훨씬 많은 기능을 제공한다는 점. 1. 제너릭 할 수 있다. Array[T] 식으로 만들 수 있다. 2. Seq[T] 와 호환 가능 3. 모든 시퀀스 연산을 지원한다. (map, filter, reverse 같은..) * 스칼라는 자바에 비해 변하지 않는 컬렉션을 강조하며, 한 컬렉션에서 새로운 것으로 변환하는 많은 연산 제공 * 스칼라 자바 양방향 변환가능 타입 Iterator java.util.Iterator Iterator java.util.Enumeration Iterable java...

Scala 2016. 6. 26. 13:08
스칼라 강좌 (6) - Map

Map 특성 * Map 은 변경 가능한 것 (mutable.Map) 과 변경 불가능한 것 (immutable.Map) 모두를 제공합니다. import scala.collection.mutable.Map 예를들어 put 이라든지 remove 메소드는 immutable.Map 에서는 사용 불가. * Map 을 위한 기반 트레이트가 있고 이를 상속한 변경 가능 집합, 변경 불가능 집합을 위한 2가지 트레이트가 있다. ( Set 과 비슷) 생성 val m = Map[Int,String]() // 다른것들과 마찬가지로 팩토리 메소드를 이용해 만들 수 있다. val m2 = Map (1 -> "one" , 2-> "two") 이렇게 초기화 할 수 있고 val m3 = Map ( (1,"one") , (2,"two"..

Scala 2016. 6. 20. 21:04
스칼라 강좌 (5) - Set

Set 특성 * Set 은 변경 가능한 것과 변경 불가능한 것 모두를 제공합니다. * Set 을 위한 기반 트레이트가있고 이를 상속한 변경 가능 집합, 변경 불가능 집합을 위한 2가지 트레이트가 있다. ( 트레이트는 자바 인터페이스와 비슷한 것으로 나중에 설명 ) 생성 val s = Set ("Hi" , "There") 리스트나 배열과 비슷하게 생성한다. 변경 불가능한 Set 객체를 만들어서 변경 불가능한 s 에 대입한다. 변경 import scala.collection.immutable.set var s = Set ("Hi" , "There") s += "bye" 이 코드에서 눈여겨 볼것은 var 로 선언된 s 이다. 이 코드는 기존 s 에 "bye" 를 더하면서 새로운 집합으로 재 할당 한것이다. 즉..

Scala 2016. 6. 19. 14:05
스칼라 강좌 (4) - Tuple

Tuple 특성 * 리스트와 마찬가지로 변경 불가능 하다. * 리스트와 다른 점은 다른 타입의 원소를 넣을 수 있다는 점 * 메소드에서 여러 다양한 객체를 리턴해야 하는 경우 유용하다. 생성 val p = ( 99, "High") 그냥 객체들을 콤마로 구분하여 () 사이에 넣어주면 된다. 저것의 타입은 Tuple2[Int,String] 이다. 튜플의 타입은 원소의 개수와 각각의 타입에 따라 달라진다. (22 개 까지 지원) 즉 ('u','r',"the") 의 타입은 Tuple3[Char,Char,String]이다. 원소에 접근 println(p._1) 튜플의 첫번째 값에 접근할수있다. 마지막 왜 튜플은 원소접근을 p(0) 즉 p.apply(0) 처럼 할 수 없을까? -> 리스트의 apply 메소드는 항상..

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

Blog is powered by Tistory / Designed by Tistory

티스토리툴바