본문 바로가기

Programmer Jinyo/Scala & FP

(17)
(Typed) Akka document 읽으면서 소소하게 정리 (Getting Started Guide) 뭐, 이 글은 완벽한 번역은 아니고, 읽다가 별 내용 아닌거 빼고 그냥 중요한 내용 위주로 번역(정리) 해 놓은 글입니다. 이 글 + 원본 문서를 같이 읽으시는걸 추천드립니다 :) https://doc.akka.io/docs/akka/current/typed/guide/introduction.html Introduction to Akka 아카는 안정적인 동작, 고장 방지 능력(fault tolerance), 고성능을 제공하기 위한 코드를 작성함에 있어 low-level 코드를 작성하지 않고, 비즈니스 요구를 충족시키기 위해 집중할 수 있게 해 준다. 분산 시스템은 component가 응답하지않고 죽거나, 추적되지 않는 상황에서 메시지가 유실되거나, latency가 변동되는 환경 안에서 잘 대처해야 한다...
scala with cats 책 읽으면서 필기 Chapter 7 (Foldable and Traverse) 2020/02/21 - [Programmer Jinyo/Scala & AKKA] - scala with cats 책 읽으면서 필기 Chapter 6 (Semigroupal and Applicative) 위 글에서 이어지는 글입니다. 이 글 시리즈는 scala with cats 원문을 보고 쓴 글입니다. *필기 위주로 합니다 ㅜ_ㅜ.. 공부하는데에 너무 시간이 오래걸려서.. Foldable and Traverse 이 챕터에서는 컬랙션에 대해서 순회를 캡쳐하는(?) 두 타입 클래스에 대해서 볼 것이다. - Foldable 은 foldLeft와 foldRight과 비슷한 연산을 추상화한다. - Traverse는 고-레벨의 추상화인데 folding보다 적게 고통받으며 순회하기 위해 Applicatives를 사용..
scala with cats 책 읽으면서 필기 Chapter 6 (Semigroupal and Applicative) 2020/02/20 - [Programmer Jinyo/Scala & AKKA] - scala with cats 책 읽으면서 필기(하다보니 번역급) Chapter 5 (Monad Transformers) 위 글에서 이어지는 글입니다. 이 글 시리즈는 scala with cats 원문을 보고 쓴 글입니다. *이번 글 부터는 진짜 거의 필기 위주로만 합니다 ㅜ_ㅜ.. 공부하는데에 너무 시간이 오래걸려서.. 이전 챕터에서 우리는 어떻게 map과 flatMap을 사용하여 functors와 monads 가 작업을 이어붙이는지에 대해서 살펴보았다. functor과 모나드가 대단히 유용한 추상화인 반면, 그들이 표현하지 못하는 몇몇 프로그램 타입이 있다. 하나의 예시로는 , form validation이 있다. 우리..
scala with cats 책 읽으면서 필기(하다보니 번역급) Chapter 5 (Monad Transformers) 이 글은 2020/02/17 - [Programmer Jinyo/Scala & AKKA] - scala with cats 책 읽으면서 필기(하다보니 번역급) Chapter 4 (Monads) 요기에서 이어지는 글입니다. 다음글은 2020/02/21 - [Programmer Jinyo/Scala & AKKA] - scala with cats 책 읽으면서 필기 Chapter 6 (Semigroupal and Applicative) 입니다. Scala with cats 책을 읽으며 적은 글입니다. 모나드는 중첩된 for-comprehensions를 통해 코드 베이스가 부풀어 오를 수 있다. 우리가 데이터베이스와 상호작용 하고 있다고 생각 해 보자. 우리는 유저 레코드를 살펴보고 싶다. 유저가 안철수 할 수 있..
scala with cats 책 읽으면서 필기(하다보니 번역급) Chapter 4 (Monads) 이 글은 2020/02/12 - [Programmer Jinyo/Scala & AKKA] - scala with cats 책 읽으면서 필기(하다보니 번역급) Chapter 3 여기에서 이어지는 글이며, 스칼라 with cats 를 보며 작성했습니다. 다음 글은 2020/02/20 - [Programmer Jinyo/Scala & AKKA] - scala with cats 책 읽으면서 필기(하다보니 번역급) Chapter 5 (Monad Transformers) 입니다. * 이 책에서 말하는 모나드의 설명이 사실 실제로 수학적으로 정의된 모나드의 정의랑은 조금 상이한 부분이 있습니다. 따로 정리하지는 않겠지만 알아두시고 공부하시는 것이 좋을 것 같아 말씀드립니다. Monads 모나드는 Scala에서 가장 ..
scala with cats 책 읽으면서 필기(하다보니 번역급) Chapter 3 (Functors) 2020/02/11 - [Programmer Jinyo/Scala & AKKA] - scala with cats 책 읽으면서 필기(하다보니 번역급) Chapter 2 위 글에서 이어지는 글입니다. 2020/02/17 - [Programmer Jinyo/Scala & AKKA] - scala with cats 책 읽으면서 필기(하다보니 번역급) Chapter 4 (Monads) 로 이어집니다. Funtors 이 챕터에서는 functors를 살펴 볼 것이다. 펑터는 추상적 개념인데, 우리에게 컨텍스트(List, Option등이 컨텍스트이다) 안에서 연산의 시퀀스를 표현하는 것을 허락 해 준다.(컨텍스트는 직관적인 이해가 힘들면 어떤 원소를 가지고 있는 wrapper이라고 생각해도 크게 벗어나지 않는다.) 펑..
scala with cats 책 읽으면서 필기(하다보니 번역급) Chapter 2 (Monoids and Semigroups) 2020/02/07 - [전체보기] - scala with cats 책 읽으면서 필기(하다보니 번역급) Chapter 1 위 글에서 이어지는 글입니다. 다음 글은 2020/02/12 - [Programmer Jinyo/Scala & AKKA] - scala with cats 책 읽으면서 필기(하다보니 번역급) Chapter 3 입니다. 이 글은 scala with cats책을 읽으면서 거의 번역하다시피 한 글임을 먼저 밝히고요, https://books.underscore.io/scala-with-cats/scala-with-cats.pdf 여기서 보실 수 있습니다. Monoids and Semigroups 이 챕터에서는 monoid와 semigroup 타입 클래스에 대해서 알아 볼 것이다. 이 것들은 ..
Scala CaseClass에 대한 특징 정리 Programming in scala 를 참고하여 작성했음을 밝힘니다. 케이스 클래스는 다음과 같이 정의할 수 있다. abstract class Expr // trait가 되어도 괜찮아~ case class Var(name: String) extends Expr case class Number(num : Double) extends Expr case class UnOp(operator:String, arg:Expr) extends Expr case class BinOp(operator:String, left: Expr, right: Expr) extends Expr case수식자는 스칼라 컴파일러에게 해당 클래스에 문법적으로 편리한 기능 몇 가지를 추가하라고 지시하는 것이다. 1. 컴파일러는 클래스 이름..