Java

33
Ebook

Building Microservices with Spring. Master design patterns of the Spring framework to build smart, efficient microservices

Dinesh Rajput, Rajesh R V

Getting Started with Spring Microservices begins with an overview of the Spring Framework 5.0, its design patterns, and its guidelines that enable you to implement responsive microservices at scale. You will learn how to use GoF patterns in application design. You will understand the dependency injection pattern, which is the main principle behind the decoupling process of the Spring Framework and makes it easier to manage your code. Then, you will learn how to use proxy patterns in aspect-oriented programming and remoting. Moving on, you will understand the JDBC template patterns and their use in abstracting database access. After understanding the basics, you will move on to more advanced topics, such as reactive streams and concurrency. Written to the latest specifications of Spring that focuses on Reactive Programming, the Learning Path teaches you how to build modern, internet-scale Java applications in no time. Next, you will understand how Spring Boot is used to deploying serverless autonomous services by removing the need to have a heavyweight application server. You’ll also explore ways to deploy your microservices to Docker and managing them with Mesos. By the end of this Learning Path, you will have the clarity and confidence for implementing microservices using Spring Framework.This Learning Path includes content from the following Packt products:• Spring 5 Microservices by Rajesh R V • Spring 5 Design Patterns by Dinesh Rajput

34
Ebook

Building RESTful Web Services with Spring 5. Leverage the power of Spring 5.0, Java SE 9, and Spring Boot 2.0 - Second Edition

Raja CSP Raman, Ludovic Dewailly

REST is an architectural style that tackles the challenges of building scalable web services. In today's connected world, APIs have taken a central role on the web. APIs provide the fabric through which systems interact, and REST has become synonymous with APIs.The depth, breadth, and ease of use of Spring makes it one of the most attractive frameworks in the Java ecosystem. Marrying the two technologies is therefore a very natural choice.This book takes you through the design of RESTful web services and leverages the Spring Framework to implement these services. Starting from the basics of the philosophy behind REST, you'll go through the steps of designing and implementing an enterprise-grade RESTful web service. Taking a practical approach, each chapter provides code samples that you can apply to your own circumstances.This second edition brings forth the power of the latest Spring 5.0 release, working with MVC built-in as well as the front end framework. It then goes beyond the use of Spring to explores approaches to tackle resilience, security, and scalability concerns. Improve performance of your applications with the new HTTP 2.0 standards. You'll learn techniques to deal with security in Spring and discover how to implement unit and integration test strategies.Finally, the book ends by walking you through building a Java client for your RESTful web service, along with some scaling techniques using the new Spring Reactive libraries.

35
Ebook
36
Ebook

Ciągłe dostarczanie oprogramowania w języku Java. Najlepsze narzędzia i praktyki wdrażania kodu

Daniel Bryant, Abraham Marín-Pérez

W ciągu ostatnich lat radykalnie zmieniły się wymagania i oczekiwania biznesowe wobec oprogramowania. Kluczowymi wartościami są innowacyjność, szybkość i czas wejścia na rynek. Do spełnienia tych wymagań konieczne okazały się nowe architektury i modele tworzenia kodu. Metodyka ciągłego dostarczania, zwanego też CD, polega na tworzeniu w krótkich cyklach wartościowych i solidnych produktów. Funkcjonalności są dodawane w małych krokach, a oprogramowanie można wydawać niezawodnie w dowolnej chwili. To sprawia, że można też szybko otrzymywać informacje zwrotne. Jednak taki sposób pracy wymaga odpowiednich ram organizacyjnych, a zespół projektowy musi przyswoić nieco inny od tradycyjnego styl pracy. Ta książka jest praktycznym przewodnikiem, dzięki któremu programiści Javy opanują techniki potrzebne do pomyślnego zastosowania metody ciągłego dostarczania. Opisano tu najlepsze zasady budowy architektury oprogramowania, automatycznej kontroli jakości, pakowania aplikacji i wdrażania ich w różnych środowiskach produkcyjnych. Szczególną uwagę poświęcono testowaniu oprogramowania: przedstawiono całą gamę metodyk testowania, opisano ich zastosowanie i znaczenie w cyklu życia aplikacji. Ciekawym elementem książki są informacje o złych praktykach i antywzorcach wraz ze wskazówkami dotyczącymi rozwiązywania tego rodzaju problemów. W tej książce między innymi: solidne podstawy ciągłego dostarczania oprogramowania migracja do ciągłego dostarczania oprogramowania narzędzia: Jenkins, PMD i FindSecBugs zasady testowania funkcjonalności i jakości oprogramowania techniki obserwacji aplikacji w środowisku produkcyjnym Java i CD: tak zdobędziesz prawdziwą przewagę!

37
Ebook

Clojure Polymorphism. Leverage Clojure's polymorphic tools to develop your applications

Paul Stadig

Clojure is a modern, dynamic language that you can use to develop robust, multithreaded programs. Clojure Polymorphism is a comprehensive guide that shows you how to use Clojure’s features to your advantage.The book begins by describing examples that show how to define and implement abstractions with plain functions and multimethods. Then you'll analyze these examples and separate the good and bad aspects of their design principles. You'll also learn how to perform data transformation abstraction with a plain function and discover how to write new cross-platform predicates while keeping the core of your abstraction free from reader conditionals. The later chapters explain the considerations to keep in mind when implementing Clojure protocols on the Java Virtual Machine (JVM).By the end of this book, you’ll know how to use the various polymorphic tools of Clojure to your advantage while designing your applications.

38
Ebook
39
Ebook

Data Democratization with Domo. Bring together every component of your business to make better data-driven decisions using Domo

Jeff Burtenshaw

Domo is a power-packed business intelligence (BI) platform that empowers organizations to track, analyze, and activate data in record time at cloud scale and performance.Data Democratization with Domo begins with an overview of the Domo ecosystem. You’ll learn how to get data into the cloud with Domo data connectors and Workbench; profile datasets; use Magic ETL to transform data; work with in-memory data sculpting tools (Data Views and Beast Modes); create, edit, and link card visualizations; and create card drill paths using Domo Analyzer. Next, you’ll discover options to distribute content with real-time updates using Domo Embed and digital wallboards. As you advance, you’ll understand how to use alerts and webhooks to drive automated actions. You’ll also build and deploy a custom app to the Domo Appstore and find out how to code Python apps, use Jupyter Notebooks, and insert R custom models. Furthermore, you’ll learn how to use Auto ML to automatically evaluate dozens of models for the best fit using SageMaker and produce a predictive model as well as use Python and the Domo Command Line Interface tool to extend Domo. Finally, you’ll learn how to govern and secure the entire Domo platform.By the end of this book, you’ll have gained the skills you need to become a successful Domo master.

40
Ebook

Data-Centric Applications with Vaadin 8. Develop and maintain high-quality web applications using Vaadin

Alejandro Duarte

Vaadin is an open-source Java framework used to build modern user interfaces. Vaadin 8 simplifies application development and improves user experience. The book begins with an overview of the architecture of Vaadin applications and the way you can organize your code in modules.Then it moves to the more advanced topics about advanced topics such as internationalization, authentication, authorization, and database connectivity. The book also teaches you how to implement CRUD views, how to generate printable reports, and how to manage data with lazy loading.By the end of this book you will be able to architect, implement, and deploy stunning Vaadin applications, and have the knowledge to master web development with Vaadin.