Đề cương khóa học

Giới thiệu

  • Ai sử dụng Scala?
  • Phát triển các chương trình thuần chức năng quy mô lớn

Tổng quan về Functional Programming trong Scala

  • Hàm bậc cao
  • Combinators
  • Hàm đa hình

Làm chủ các kiểu Scala

  • Kiểu tích & Kiểu tổng
  • Kiểu cha & Kiểu con
  • Universals & Existentials
  • Kiểu bậc cao
  • Type Lambdas

Làm chủ các lớp kiểu Scala

  • Lớp & Instances
  • Mẹo với Implicits
  • Ràng buộc đa hình

Nghiên cứu điển hình: Các chương trình trạng thái cao với các hệ thống bên ngoài phức tạp

Bài tập lập trình

Làm việc với Dữ liệu

  • Dữ liệu bất biến & Đệ quy
  • Catamorphisms & Church Encoding
  • Dữ liệu điểm cố định
  • Sơ đồ đệ quy

Khớp mẫu nâng cao trong Scala

  • Khớp sâu
  • Sử dụng extractors

Nghiên cứu điển hình: Scala và Big Data

Bài tập lập trình

Sử dụng các mẫu chức năng

  • Options, Either & Validations
  • Semigroups & Monoids
  • Functors
  • Applicatives
  • Monads
  • Foldables & Traversables
  • Lenses

Làm việc với Effects

  • IO
  • State
  • Reader
  • Kết hợp Effects

Nghiên cứu điển hình

  • TBD

Bài tập lập trình

Kiến trúc chức năng

  • Kiến trúc hiện đại cho FP
  • Tính toán được hiện thực hóa & Đánh giá trì hoãn
  • Bộ đánh giá Compositional
  • Kỹ thuật tối ưu hóa
  • Mocking thuần chức năng

Thư viện và DSLs

  • Cấu trúc điều khiển tùy chỉnh với các tham số theo tên
  • Xây dựng các thư viện được thiết kế tốt và DSLs nội bộ

Xử lý ngoại lệ chức năng

  • Xử lý ngoại lệ truyền thống
  • Xử lý ngoại lệ chức năng
  • Sử dụng Try với For comprehensions

Bài tập lập trình và đánh giá cuối cùng

Lời kết

Requirements

  • Kinh nghiệm thực hành với lập trình Scala
  • Làm quen với kết hợp mẫu và đặc điểm

Đối tượng

  • Các lập trình viên Scala muốn tìm hiểu các tính năng nâng cao và sắc thái hơn của Scala
 14 Hours

Number of participants


Price per participant

Provisional Upcoming Courses (Require 5+ participants)

Related Categories