官术网_书友最值得收藏!

What This Book Covers

Chapter 1, Setting up the Development Environment, shows you how to set up your development environment. You'll learn the basics of Scala, such as what the simple Scala program looks like and what a typical developer flow is. It'll also cover some aspects of testing your Scala program by using unit testing.

Chapter 2, Basic Language Features, covers classes and objects, traits, pattern matching, case class, and so on. You'll also implement your chatbot application by applying the object oriented concepts.

Chapter 3, Functions, covers functional programming with Scala and how object- oriented and functional approaches complete each other. You'll identify generic classes and also identify how to create user-defined pattern matching and why is it useful.

Chapter 4, Scala Collections, teaches you how to work with lists. Then, it covers some more relevant data structures. Finally, you'll look at how collections relate to monads and how you can use that knowledge to make some powerful abstractions in your code.

Chapter 5, Scala Type System, covers the type system and polymorphism. It'll also enable you to identify the different types of variance, which provides a way to constrain parameterized types. Then, you'll cover some advanced types such as abstract type members and option.

Chapter 6, Implicits, covers implicit parameters and implicit conversions. You'll be learning about how they work, how to use them, and what kind of benefits and perils they provide.

Chapter 7, Functional Idioms, covers the core concepts of functional programming like Pure functions, immutability, and higher-order functions. It'll also cover two popular functional programming libraries called Cats and Doobie, and use them to write some interesting programs.

Chapter 8, Domain Specifc Languages, covers how Scala makes it possible to write powerful DSLs by providing a few interesting language features. Then, it'll cover a DSL that you'll very likely be using if you're going to work with Scala professionally.

Finally, you'll implement your own DSL.

What You Need for This Book

The minimum hardware requirements are as follows:

  • Intel Core i3 processor
  • 2 GB RAM
  • An Internet connection

Please ensure you have the following software installed on your machine:

  • Microsoft Windows 10/8/7 (64 bit)
  • JDK 8
  • IntelliJ + Scala plugin

Mac

  • macOS 10.5 or higher (64-bit)
  • JDK 8
  • IntelliJ + Scala plugin

Linux

  • Linux 64-bit
  • KDE, GNOME, or Unity DE desktop
  • JDK 8
  • IntelliJ + Scala plugin
主站蜘蛛池模板: 松江区| 青神县| 中山市| 汶川县| 铜山县| 乌拉特后旗| 莱芜市| 额济纳旗| 信丰县| 西城区| 平湖市| 雷州市| 定州市| 明星| 郧西县| 乡城县| 平泉县| 房山区| 红原县| 宣威市| 香格里拉县| 铜陵市| 阳高县| 永善县| 木兰县| 福安市| 南投市| 阜康市| 和林格尔县| 余庆县| 崇礼县| 禹城市| 沾化县| 涿鹿县| 新河县| 东台市| 阿拉尔市| 凌海市| 翁牛特旗| 富宁县| 宾阳县|