Scala

1
E-book

Apache Spark Quick Start Guide. Quickly learn the art of writing efficient big data applications with Apache Spark

Shrey Mehrotra, Akash Grade

Apache Spark is a ?exible framework that allows processing of batch and real-time data. Its unified engine has made it quite popular for big data use cases. This book will help you to get started with Apache Spark 2.0 and write big data applications for a variety of use cases.It will also introduce you to Apache Spark – one of the most popular Big Data processing frameworks. Although this book is intended to help you get started with Apache Spark, but it also focuses on explaining the core concepts. This practical guide provides a quick start to the Spark 2.0 architecture and its components. It teaches you how to set up Spark on your local machine. As we move ahead, you will be introduced to resilient distributed datasets (RDDs) and DataFrame APIs, and their corresponding transformations and actions. Then, we move on to the life cycle of a Spark application and learn about the techniques used to debug slow-running applications. You will also go through Spark’s built-in modules for SQL, streaming, machine learning, and graph analysis.Finally, the book will lay out the best practices and optimization techniques that are key for writing efficient Spark applications. By the end of this book, you will have a sound fundamental understanding of the Apache Spark framework and you will be able to write and optimize Spark applications.

2
E-book

Instant Play Framework Starter. Build your web applications from the ground up with the Play Framework for Java and Scala

Daniel Dietrich

Play is a full-featured Java and Scala web framework for building modern, high-performance web applications. It is characterized by its simplicity and scalability. With its lightweight, stateless, and web-friendly architecture, Play focuses on developer experience to make web application development fun.Instant Play Framework Starter is the ideal companion to start developing web applications with Play. The building blocks of a typical web application are carefully designed following an on-going example.Instant Play Framework Starter starts with a quick setup and running a first sample. Then, the anatomy of a typical Play application is outlined. More features are added step by step to an example application. The result is the prototype of a highly scalable web application.The example is implemented in Java and in Scala. It consists of building blocks you will find in every Play application. In particular, you will learn how views are rendered with the template engine, how HTTP routes are used to define the navigation rules, and how to separate the application logic of controllers from the business logic of the model. This separation is the result of a careful application design, which makes it easy to add features like data binding and validation. Finally you will see how easy it is to adapt different database access libraries.Instant Play Framework Starter will help you to get started with Play and develop your first application. Packed with examples, it is easy to follow the design of a real-world application. You are able to compare the difference between a Java- and a Scala-based Play application and to decide which language fits your needs best. All topics covered in the book are described with the aim to serve as a reference for future web application development with Play.

3
E-book

Java. Projektowanie aplikacji WWW

Vishal Layka

Aplikacje WWW w języku Java! Język Java zadebiutował na rynku blisko dwadzieścia lat temu. Od tego czasu zdobył ogromną popularność i jest z powodzeniem używany do tworzenia projektów o różnym stopniu trudności. Język ten sprawdza się idealnie zarówno przy budowie zaawansowanych systemów bankowych, jak i prostych stron WWW. Przekonaj się, jaki potencjał kryje się w Javie! Jeśli sięgniesz po tę książkę, błyskawicznie nauczysz się budować strony WWW przy użyciu serwletów i stron JSP. W kolejnych rozdziałach poznasz bardziej zaawansowane narzędzia — szkielet Struts 2, Spring Web MVC oraz JSF 2. Podczas tworzenia aplikacji działających w środowisku wirtualnej maszyny języka Java nie jesteś skazany wyłącznie na ten język. Wiele problemów możesz rozwiązać sprawniej za pomocą języków Scala lub Groovy. Książka ta jest doskonałą lekturą dla wszystkich osób chcących stworzyć stronę WWW w Javie i nie tylko! Dzięki tej książce: skonfigurujesz swoje środowisko pracy poznasz aktualne trendy w tworzeniu aplikacji poznasz popularne szkielety do tworzenia aplikacji WWW sprawdzisz możliwości języków Java, Groovy i Scala zbudujesz swoją stronę WWW Przewodnik po świecie WWW w języku Java!

4
E-book

Kafka w praktyce. Przetwarzanie strumieniowe i potoki danych o dużej skali. Wydanie II

Gwen Shapira, Todd Palino, Rajini Sivaram, Krit Petty

Każda aplikacja korporacyjna tworzy dane. Ich przenoszenie i przetwarzanie jest równie ważne jak same dane. Platforma Apache Kafka została zbudowana właśnie w tym celu: aby umożliwić płynną obsługę strumieni zdarzeń czasu rzeczywistego. Umożliwia to architektom nie tylko łączenie aplikacji z systemami danych, ale również budowanie niestandardowych aplikacji, które same w sobie wyzwalają strumienie danych. Okazuje się, że architektura skupiona wokół strumieni zdarzeń otwiera zupełnie nowy rozdział projektowania dużych systemów. Dzięki temu praktycznemu przewodnikowi komfortowo rozpoczniesz pracę z platformą streamingową Apache Kafka. Poznasz najlepsze praktyki w zakresie jej wdrażania i konfiguracji, aby zapewnić sobie możliwość strumieniowego przetwarzania dużych ilości danych. Zaznajomisz się z AdminClient API Kafki, mechanizmem transakcji i z nowymi funkcjonalnościami zabezpieczeń. W książce znajdziesz szczegółowe instrukcje, w jaki sposób wdrażać klastry produkcyjne Kafki, pisać niezawodne mikrousługi oparte na zdarzeniach i budować skalowalne aplikacje przetwarzania strumieniowego. Opisano w niej też gwarancje niezawodności, kluczowe interfejsy API i szczegóły architektury, w tym protokół replikacji, kontroler i warstwę pamięci masowej. Najciekawsze zagadnienia: wdrażanie i konfigurowanie Kafki w praktyce niezawodne dostarczanie danych budowanie potoków danych i aplikacji monitorowanie, dostrajanie i utrzymywanie działania Kafki w środowisku produkcyjnym wskaźniki pomiarów operacyjnych Kafki Kafka w systemach przetwarzania strumieniowego Kafka: gwarancja niezawodności korporacyjnych aplikacji!

5
E-book
6
E-book

Modern Big Data Processing with Hadoop. Expert techniques for architecting end-to-end big data solutions to get valuable insights

V Naresh Kumar, Prashant Shindgikar

The complex structure of data these days requires sophisticated solutions for data transformation, to make the information more accessible to the users.This book empowers you to build such solutions with relative ease with the help of Apache Hadoop, along with a host of other Big Data tools.This book will give you a complete understanding of the data lifecycle management with Hadoop, followed by modeling of structured and unstructured data in Hadoop. It will also show you how to design real-time streaming pipelines by leveraging tools such as Apache Spark, and build efficient enterprise search solutions using Elasticsearch. You will learn to build enterprise-grade analytics solutions on Hadoop, and how to visualize your data using tools such as Apache Superset. This book also covers techniques for deploying your Big Data solutions on the cloud Apache Ambari, as well as expert techniques for managing and administering your Hadoop cluster. By the end of this book, you will have all the knowledge you need to build expert Big Data systems.

7
E-book
8
E-book

Programowanie funkcyjne. Krok po kroku

Joshua Backfield

Zmień swoje podejście do programowania! Języki funkcyjne zdobywają wśród programistów coraz większą popularność. Jak bezboleśnie zmienić sposób myślenia na funkcyjny? Ułatwi Ci to niniejsza książka, w całości poświęcona temu podejściu do programowania. Poznaj podstawy teoretyczne programowania funkcyjnego, a następnie zacznij zgłębiać tajniki typów funkcyjnych, rekurencji oraz zmiennych niepodlegających modyfikacji. Z kolejnych rozdziałów dowiedz się, czym są ewaluacja rygorystyczna i nierygorystyczna. Zobacz też, jak wykonać dopasowanie do wzorca. Co jeszcze znajdziesz w tej książce? Wprowadzenie do języka Scala, przedstawienie języka Groovy oraz opis technik funkcyjnego programowania obiektowego to tylko niektóre z poruszanych w niej tematów. Jeżeli chcesz zmienić sposób programowania na funkcyjny, to doskonała pozycja dla Ciebie! Dowiesz się, czemu obecne sprawnie działające aplikacje lepiej funkcjonują z kodem funkcyjnym. Przejdziesz od wzorców stylu imperatywnego do kodu funkcyjnego w kilku podstawowych krokach. Przyspieszysz z językami Groovy i Scala dzięki przykładom. Zrozumiesz, w jaki sposób typy funkcyjne są przekazywane do innych funkcji i zwracane z nich. Przekonwertujesz istniejące metody na funkcje czyste, a pętle na metody rekurencyjne. Przejdziesz od zmiennych mutowalnych do niemutowalnych. Uzyskasz praktyczne doświadczenie w zakresie stosowania instrukcji oraz ewaluacji nierygorystycznej. Będziesz stosował programowanie funkcyjne z elementami programowania obiektowego. Przekonaj się, jak podejście funkcyjne może ułatwić Ci życie!

9
E-book

Scala Design Patterns. Design modular, clean, and scalable applications by applying proven design patterns in Scala - Second Edition

Ivan Nikolov

Design patterns make developers’ lives easier by helping them write great software that is easy to maintain, runs efficiently, and is valuable to the company or people concerned. You’ll learn about the various features of Scala and will be able to apply well-known, industry-proven design patterns in your work. The book starts off by focusing on some of the most interesting and latest features of Scala while using practical real-world examples. We will be learning about IDE’s and Aspect Oriented Programming. We will be looking into different components in Scala. We will also cover the popular Gang of Four design patterns and show you how to incorporate functional patterns effectively. The book ends with a practical example that demonstrates how the presented material can be combined in real-life applications. You’ll learn the necessary concepts to build enterprise-grade applications. By the end of this book, you’ll have enough knowledge and understanding to quickly assess problems and come up with elegant solutions.

10
E-book

Scala. Nauka programowania

Vikash Sharma

Scala jest językiem programowania ogólnego przeznaczenia, który łączy cechy języków funkcyjnych i obiektowych. Jego twórcy postawili sobie za cel skalowalność napisanych w nim aplikacji - stąd wzięła się nazwa Scala. Scala jest oparta na wirtualnej maszynie Javy, umożliwia programowanie funkcyjne i oferuje bogaty wybór typów. Dzięki tym cechom można tworzyć kod mniej podatny na występowanie błędów w trakcie działania programu. Po uzyskaniu pewnej biegłości w kodowaniu praca z tym językiem staje się prawdziwą przyjemnością, nawet podczas tworzenia frameworków czy bibliotek. Ten przystępny podręcznik przeznaczono dla programistów, którzy chcą poznać język Scala, aby wykorzystywać go do pisania współbieżnych, skalowalnych i reaktywnych aplikacji. Przedstawiono tu podstawy niezbędne do rozpoczęcia kodowania w Scali: składnię języka, podstawowe typy danych, literały czy zmienne. Następnie omówiono struktury danych w Scali i sposoby korzystania z funkcji wyższego rzędu. Zaprezentowano również takie koncepcje jak dopasowanie wzorca, klasy przypadku oraz zagadnienia związane z programowaniem funkcyjnym i programowaniem zorientowanym obiektowo. Opisano techniki programowania asynchronicznego i reaktywnego. Znalazło się tu także obszerne wprowadzenie do frameworka Akka. W tej książce między innymi: paradygmaty programowania a korzystanie ze Scali kolekcje modyfikowalne i niemodyfikowalne koncepcja domniemania i praca z wyjątkami programowanie równoległe, asynchroniczne i reaktywne programowanie sterowane testami w Scali Scala: nowoczesność i prostota w każdej skali!