zio/zio1
-
ZLayer module pattern 을 이용한 dependency injectionzio/zio1 2021. 8. 18. 17:44
문제 zio module pattern 1.0 은 쓸데없이 복잡해 차라리 constructor dependency injection 을 쓰는게 낫다고 생각해 왔다. zio module pattern 2.0 이 최근에 소개되었는데, zio magic 과 함께 쓰면 어느정도 쓸만한 것 같다. 코드 import zio.clock.Clock import zio.console.Console import zio.magic._ import zio.{ App, ExitCode, Has, Ref, UIO, URIO, URLayer, ZIO, ZLayer } object ZLayerTest extends App { trait Logging { def log(line: String): UIO[Unit] } object Lo..
-
피보나치(fibonacci) 수열을 Scala Stream, ZStream 으로 각각 구현zio/zio1 2021. 8. 3. 00:47
문제 피보나치(fibonacci) 수열 앞 10개를 출력하는 프로그램을 아래 2가지 방법으로 각각 구현하라 scala stream 을 이용해 구현 ZStream 을 이용해 구현 코드 scala stream 을 이용한 구현 object ScalaStreamFibo { def main(args: Array[String]): Unit = { def fibonacci(h: Long, n: Long): Stream[Long] = h #:: fibonacci(n, h + n) fibonacci(0, 1).take(10).foreach(println) } } ZStream 을 이용한 구현 import zio._ import zio.stream.ZStream object ZStreamFibo extends App { ..