万本电子书0元读

万本电子书0元读

Mastering AWS Lambda
Mastering AWS Lambda
Yohan Wadia;Udita Gupta
¥80.65
Build cost-effective and highly scalable Serverless applications using AWS Lambda. About This Book ? Leverage AWS Lambda to significantly lower your infrastructure costs and deploy out massively scalable, event-driven systems and applications ? Learn how to design and build Lambda functions using real-world examples and implementation scenarios ? Explore the Serverless ecosystem with a variety of toolsets and AWS services including DynamoDB, API Gateway, and much more! Who This Book Is For If you are a Cloud administrator and/or developer who wishes to explore, learn, and leverage AWS Lambda to design, build, and deploy Serverless applications in the cloud, then this is the book for you! The book assumes you have some prior knowledge and hands-on experience with AWS core services such as EC2, IAM, S3, along with the knowledge to work with any popular programming language such as Node.Js, Java, C#, and so on. What You Will Learn ? Understand the hype, significance, and business benefits of Serverless computing and applications ? Plunge into the Serverless world of AWS Lambda and master its core components and how it works ? Find out how to effectively and efficiently design, develop, and test Lambda functions using Node.js, along with some keen coding insights and best practices ? Explore best practices to effectively monitor and troubleshoot Serverless applications using AWS CloudWatch and other third-party services in the form of Datadog and Loggly ? Quickly design and develop Serverless applications by leveraging AWS Lambda, DynamoDB, and API Gateway using the Serverless Application Framework (SAF) and other AWS services such as Step Functions ? Explore a rich variety of real-world Serverless use cases with Lambda and see how you can apply it to your environments In Detail AWS is recognized as one of the biggest market leaders for cloud computing and why not? It has evolved a lot since the time it started out by providing just basic services such as EC2 and S3 and today; they go all the way from IoT to Machine Learning, Image recognition, Chatbot Frameworks, and much more! One of those recent services that is also gaining a lot of traction is AWS Lambda! Although seemingly simple and easy to use, Lambda is a highly effective and scalable compute service that provides developers with a powerful platform to design and develop Serverless event-driven systems and applications. The book begins with a high-level introduction into the world of Serverless computing and its advantages and use cases, followed by a deep dive into AWS Lambda! You’ll learn what services AWS Lambda provides to developers; how to design, write, and test Lambda functions; as well as monitor and troubleshoot them. The book is designed and accompanied with a vast variety of real-world examples, use cases, and code samples that will enable you to get started on your Serverless applications quickly. By the end of the book, you will have gained all the skills required to work with AWS Lambda services! Style and approach This step-by-step guide will help you build Serverless applications and run Serverless workloads using the AWS Lambda service. You’ll be able to get started with it in a matter of minutes with easy-to-follow code snippets and examples.
Mastering ASP.NET Web API
Mastering ASP.NET Web API
Mithun Pattankar;Malendra Hurbuns
¥80.65
Leverage ASP.Net Web API to build professional web services and create powerful applications. About This Book ? Get a comprehensive analysis of the latest specification of ASP.NET Core and all the changes to the underlying platform that you need to know to make the most of the web API ? See an advanced coverage of ASP.NET Core Web API to create robust models for your data, create controllers, and handle routing and security ? This book is packed with key theoretical and practical concepts that can be instantly applied to build professional applications using API with Angular 4, Ionic, and React Who This Book Is For This book is for .Net developers who wants to Master ASP.NET Core (Web API) and have played around with previous ASP.NET Web API a little, but don’t have in-depth knowledge of it. You need to know Visual Studio and C#, and have some HTML, CSS, and JavaScript knowledge. What You Will Learn ? Acquire conceptual and hands-on knowledge of ASP.NET Core (MVC & Web API) ? Learn about HTTP methods, the structure of HTTP content, internet media types, and how servers respond to HTTP requests and their associated HTTP codes ? Explore middleware, filters, routing, and unit testing ? Optimize Web API implementations ? Develop a secure Web API interface ? Deploy Web API projects to various platforms ? Consume your web API in front end application based on Angular 4, Bootstrap, and Ionic ? Implement and explore the current trends in service architecture In Detail Microsoft has unified their main web development platforms. This unification will help develop web applications using various pieces of the ASP.NET platform that can be deployed on both Windows and LINUX. With ASP.NET Core (Web API), it will become easier than ever to build secure HTTP services that can be used from any client. Mastering ASP.NET Web API starts with the building blocks of the ASP.NET Core, then gradually moves on to implementing various HTTP routing strategies in the Web API. We then focus on the key components of building applications that employ the Web API, such as Kestrel, Middleware, Filters, Logging, Security, and Entity Framework.Readers will be introduced to take the TDD approach to write test cases along with the new Visual Studio 2017 live unit testing feature. They will also be introduced to integrate with the database using ORMs. Finally, we explore how the Web API can be consumed in a browser as well as by mobile applications by utilizing Angular 4, Ionic and ReactJS. By the end of this book, you will be able to apply best practices to develop complex Web API, consume them in frontend applications and deploy these applications to a modern hosting infrastructure. Style and approach Using a hands-on approach, we cover both the conceptual as well as the technical aspects of the ASP.NET Core (Web API) framework.
Learning Concurrency in Python
Learning Concurrency in Python
Elliot Forbes
¥80.65
Practically and deeply understand concurrency in Python to write efficient programs About This Book ? Build highly efficient, robust, and concurrent applications ? Work through practical examples that will help you address the challenges of writing concurrent code ? Improve the overall speed of execution in multiprocessor and multicore systems and keep them highly available Who This Book Is For This book is for Python developers who would like to get started with concurrent programming. Readers are expected to have a working knowledge of the Python language, as this book will build on these fundamentals concepts. What You Will Learn ? Explore the concept of threading and multiprocessing in Python ? Understand concurrency with threads ? Manage exceptions in child threads ? Handle the hardest part in a concurrent system — shared resources ? Build concurrent systems with Communicating Sequential Processes (CSP) ? Maintain all concurrent systems and master them ? Apply reactive programming to build concurrent systems ? Use GPU to solve specific problems In Detail Python is a very high level, general purpose language that is utilized heavily in fields such as data science and research, as well as being one of the top choices for general purpose programming for programmers around the world. It features a wide number of powerful, high and low-level libraries and frameworks that complement its delightful syntax and enable Python programmers to create. This book introduces some of the most popular libraries and frameworks and goes in-depth into how you can leverage these libraries for your own high-concurrent, highly-performant Python programs. We'll cover the fundamental concepts of concurrency needed to be able to write your own concurrent and parallel software systems in Python. The book will guide you down the path to mastering Python concurrency, giving you all the necessary hardware and theoretical knowledge. We'll cover concepts such as debugging and exception handling as well as some of the most popular libraries and frameworks that allow you to create event-driven and reactive systems. By the end of the book, you'll have learned the techniques to write incredibly efficient concurrent systems that follow best practices. Style and approach This easy-to-follow guide teaches you new practices and techniques to optimize your code, and then moves toward more advanced ways to effectively write efficient Python code. Small and simple practical examples will help you test the concepts yourself, and you will be able to easily adapt them for any application.
Learning VMware NSX - Second Edition
Learning VMware NSX - Second Edition
Ranjit Singh Thakurratan
¥71.93
Explore the foundational components of VMware NSX About This Book ? Install, manage, monitor and configure your NSX deployment. ? Understand VMware NSX's components and discover best practices to help you manage VMware NSX ? A step by step guide that will help you elevate your skills in deploying NSX to your environment Who This Book Is For The book is intended for network and system administrators that have hands on experience with VMware vSphere suite of products and would like to learn more about software defined networking and implementation of NSX. The readers are also expected to have basic networking knowledge and aware of basic switching and routing fundamentals. What You Will Learn ? Understand software-defined networks ? Deploy and configure VXLAN-enabled logical switches ? Secure your environment using Distributed Firewall and Data Security ? Configure third-party services in NSX ? Manage, configure, and deploy edge gateway services ? Perform various Edge operations including configuring CA certificates ? Explore the different monitoring options to check their traffic flow In Detail VMware NSX is a platform for the software-defined data center. It allows complex networking topologies to be deployed programmatically in seconds. SDNs allow ease of deployment, management, and automation in deploying and maintaining new networks while reducing and in some cases completely eliminating the need to deploy traditional networks. The book allows you a thorough understanding of implementing Software defined networks using VMware’s NSX. You will come across the best practices for installing and configuring NSX to setup your environment. Then you will get a brief overview of the NSX Core Components NSX’s basic architecture. Once you are familiar with everything, you will get to know how to deploy various NSX features. Furthermore, you will understand how to manage and monitor NSX and its associated services and features. In addition to this, you will also explore the best practices for NSX deployments. By the end of the book, you will be able to deploy Vmware NSX in your own environment with ease. This book can come handy if you are preparing for VMware NSX certification. Style and approach This is an easy-to-follow guide with tested configuration steps to get you up and running quickly. This book covers the nitty-gritty of installing, configuring, managing, and monitoring VMware NSX.
Building Web Apps with Spring 5 and Angular
Building Web Apps with Spring 5 and Angular
Ajitesh Shukla
¥90.46
A complete guide to build robust and scalable web applications with Spring and Angular. About This Book ? This hands on guide will teach you how to build an end-to-end modern web application using Spring and Angular. ? It is easy to read and will benefit Java developers who have been used to develop the back-end part of web application while front-end (UI) has been left for UI developers. ? Learn the core aspects involved in developing the backend and the UI, right from designing to integrating and deploying. Who This Book Is For This book is targeted towards Java Web Developers with a basic knowledge of Spring who want to build complete web applications in a fast and effective way. They will want to gain a stronghold on both frontend and backend development to advance in their careers. What You Will Learn ? Set up development environment for Spring Web App and Angular app. ? Process web request and response and build REST API endpoints. ? Create data access components using Spring Web MVC framework and Hibernate ? Use Junit 5 to test your application ? Learn the fundamental concepts around building Angular ? Configure and use Routes and Components. ? Protect Angular app content from common web vulnerabilities and attacks. ? Integrate Angular apps with Spring Boot Web API endpoints ? Deploy the web application based on CI and CD using Jenkins and Docker containers In Detail Spring is the most popular application development framework being adopted by millions of developers around the world to create high performing, easily testable, reusable code. Its lightweight nature and extensibility helps you write robust and highly-scalable server-side web applications. Coupled with the power and efficiency of Angular, creating web applications has never been easier. If you want build end-to-end modern web application using Spring and Angular, then this book is for you. The book directly heads to show you how to create the backend with Spring, showing you how to configure the Spring MVC and handle Web requests. It will take you through the key aspects such as building REST API endpoints, using Hibernate, working with Junit 5 etc. Once you have secured and tested the backend, we will go ahead and start working on the front end with Angular. You will learn about fundamentals of Angular and Type* and create an SPA using components, routing etc. Finally, you will see how to integrate both the applications with REST protocol and deploy the application using tools such as Jenkins and Docker. Style and approach This is a straightforward guide that shows how to build a complete web application in Angular and Spring.
Preparing for the Certified OpenStack Administrator Exam
Preparing for the Certified OpenStack Administrator Exam
Matt Dorn
¥80.65
Master the objectives required to pass the Certified OpenStack Administrator exam. About This Book ? Focuses on providing a clear, concise strategy so you gain the specific skills required to pass the Certified OpenStack Administrator exam ? Includes exercises and performance-based tasks to ensure all exam objectives can be completed via the Horizon dashboard and command-line interface ? Includes a free OpenStack Virtual Appliance to practice the objectives covered throughout the book ? Includes a practice exam to put your OpenStack skills to the test to prove you have what it takes to conquer the live exam ? Updated for the 2017 exam featuring OpenStack Newton Who This Book Is For This book is for IT professionals, system administrators, DevOps engineers, and software developers with basic Linux command-line and networking knowledge. It’s also a great guide for those interested in an entry-level OpenStack position but have limited real-world OpenStack experience. After passing the exam, Certified OpenStack Administrators will prove they have the required skills for the job. What You Will Learn ? Manage the Keystone identity service by creating and modifying domains, groups, projects, users, roles, services, endpoints, and quotas. ? Upload Glance images, launch new Nova instances, and create flavors, key pairs, and snapshots. ? Discover Neutron tenant and provider networks, security groups, routers, and floating IPs. ? Manage the Cinder block storage service by creating volumes and attaching them to instances. ? Create Swift containers and set access control lists to allow read/write access to your objects. ? Explore Heat orchestration templates and create, list, and update stacks. In Detail This book provides you with a specific strategy to pass the OpenStack Foundation’s first professional certification: the Certified OpenStack Administrator. In a recent survey, 78% of respondents said the OpenStack skills shortage had deterred them from adopting OpenStack. Consider this an opportunity to increase employer and customer confidence by proving you have the skills required to administrate real-world OpenStack clouds. You will begin your journey by getting well-versed with the OpenStack environment, understanding the benefits of taking the exam, and installing an included OpenStack all-in-one virtual appliance so you can work through objectives covered throughout the book. After exploring the basics of the individual services, you will be introduced to strategies to accomplish the exam objectives relevant to Keystone, Glance, Nova, Neutron, Cinder, Swift, Heat, and troubleshooting. Finally, you’ll benefit from the special tips section and a practice exam to put your knowledge to the test. By the end of the journey, you will be ready to become a Certified OpenStack Administrator! Style and approach Clear, concise, and straightforward with supporting diagrams and lab environment tutorials, this book will help you confidently pass Certified OpenStack Administrator objectives on the Horizon dashboard and command-line interface.
Modular Programming in Java 9
Modular Programming in Java 9
Koushik Kothagal
¥63.21
Kick-start your modular programming journey and gear up for the future of Java development About This Book ? Master design patterns and best practices to build truly modular applications in Java 9 ? Upgrade your old Java code to Java 9 with ease ? Build and run a smooth functioning multi-module application. Who This Book Is For This book is written for Java developers who are interested in learning and understanding the techniques and best practices to build modular applications in Java. The book assumes some previous programming experience in Java 8 or earlier, familiarity with the basic Java types such as classes and interfaces, as well as experience in compiling and executing Java programs. What You Will Learn ? Get introduced to the concept of modules and modular programming by working on a fully modular Java application ? Build and configure your own Java 9 modules ? Work with multiple modules and establish inter-module dependencies ? Understand and use the principles of encapsulation, readability, and accessibility ? Use jlink to generate fully loaded custom runtime images like a pro ? Discover the best practices to help you write awesome modules that are a joy to use and maintain ? Upgrade your old Java code to use the new Java 9 module system In Detail The Java 9 module system is an important addition to the language that affects the way we design, write, and organize code and libraries in Java. It provides a new way to achieve maintainable code by the encapsulation of Java types, as well as a way to write better libraries that have clear interfaces. Effectively using the module system requires an understanding of how modules work and what the best practices of creating modules are. This book will give you step-by-step instructions to create new modules as well as migrate code from earlier versions of Java to the Java 9 module system. You'll be working on a fully modular sample application and add features to it as you learn about Java modules. You'll learn how to create module definitions, setup inter-module dependencies, and use the built-in modules from the modular JDK. You will also learn about module resolution and how to use jlink to generate custom runtime images. We will end our journey by taking a look at the road ahead. You will learn some powerful best practices that will help you as you start building modular applications. You will also learn how to upgrade an existing Java 8 codebase to Java 9, handle issues with libraries, and how to test Java 9 applications. Style and Approach The book is a step-by-step guide to understanding Modularity and building a complete application using a modular design.
Android Development with Kotlin
Android Development with Kotlin
Marcin Moskala;Igor Wojda
¥80.65
Learn how to make Android development much faster using a variety of Kotlin features, from basics to advanced, to write better quality code. About This Book ? Leverage specific features of Kotlin to ease Android application development ? Write code based on both object oriented and functional programming to build robust applications ? Filled with various practical examples so you can easily apply your knowledge to real world scenarios ? Identify the improved way of dealing with common Java patterns Who This Book Is For This book is for developers who have a basic understanding of Java language and have 6-12 months of experience with Android development and developers who feel comfortable with OOP concepts. What You Will Learn ? Run a Kotlin application and understand the integration with Android Studio ? Incorporate Kotlin into new/existing Android Java based project ? Learn about Kotlin type system to deal with null safety and immutability ? Define various types of classes and deal with properties ? Define collections and transform them in functional way ? Define extensions, new behaviours to existing libraries and Android framework classes ? Use generic type variance modifiers to define subtyping relationship between generic types ? Build a sample application In Detail Nowadays, improved application development does not just mean building better performing applications. It has become crucial to find improved ways of writing code. Kotlin is a language that helps developers build amazing Android applications easily and effectively. This book discusses Kotlin features in context of Android development. It demonstrates how common examples that are typical for Android development, can be simplified using Kotlin. It also shows all the benefits, improvements and new possibilities provided by this language. The book is divided in three modules that show the power of Kotlin and teach you how to use it properly. Each module present features in different levels of advancement. The first module covers Kotlin basics. This module will lay a firm foundation for the rest of the chapters so you are able to read and understand most of the Kotlin code. The next module dives deeper into the building blocks of Kotlin, such as functions, classes, and function types. You will learn how Kotlin brings many improvements to the table by improving common Java concepts and decreasing code verbosity. The last module presents features that are not present in Java. You will learn how certain tasks can be achieved in simpler ways thanks to Kotlin. Through the book, you will learn how to use Kotlin for Android development. You will get to know and understand most important Kotlin features, and how they can be used. You will be ready to start your own adventure with Android development with Kotlin. Style and approach A step-by-step guide that is filled with numerous real-world examples.
Boost C++ Application Development Cookbook - Second Edition
Boost C++ Application Development Cookbook - Second Edition
Antony Polukhin
¥90.46
Learn to build applications faster and better by leveraging the real power of Boost and C++ About This Book ? Learn to use the Boost libraries to simplify your application development ? Learn to develop high quality, fast and portable applications ? Learn the relations between Boost and C++11/C++4/C++17 Who This Book Is For This book is for developers looking to improve their knowledge of Boost and who would like to simplify their application development processes. Prior C++ knowledge and basic knowledge of the standard library is assumed. What You Will Learn ? Get familiar with new data types for everyday use ? Use smart pointers to manage resources ? Get to grips with compile-time computations and assertions ? Use Boost libraries for multithreading ? Learn about parallel execution of different task ? Perform common string-related tasks using Boost libraries ? Split all the processes, computations, and interactions to tasks and process them independently ? Learn the basics of working with graphs, stacktracing, testing and interprocess communications ? Explore different helper macros used to detect compiler, platform and Boost features In Detail If you want to take advantage of the real power of Boost and C++ and avoid the confusion about which library to use in which situation, then this book is for you. Beginning with the basics of Boost C++, you will move on to learn how the Boost libraries simplify application development. You will learn to convert data such as string to numbers, numbers to string, numbers to numbers and more. Managing resources will become a piece of cake. You’ll see what kind of work can be done at compile time and what Boost containers can do. You will learn everything for the development of high quality fast and portable applications. Write a program once and then you can use it on Linux, Windows, MacOS, Android operating systems. From manipulating images to graphs, directories, timers, files, networking – everyone will find an interesting topic. Be sure that knowledge from this book won’t get outdated, as more and more Boost libraries become part of the C++ Standard. Style and approach Clear step-by-step recipes that will help you take advantage of the real power of Boost.
Mastering Non-Functional Requirements
Mastering Non-Functional Requirements
Sameer Paradkar
¥71.93
This book covers the most critical 24 NFRs that are applicable to IT applications and systems. About This Book ? Explains three stages of nonfunctional requirements, that is, analysis, architecture, and assessment ? In-depth knowledge of NFR framework and taxonomy that provides guidance around the modelling phase for the NFRs ? Coverage of 24 critical and pivotal NFRs, including the analysis, architecture, and assessment. Who This Book Is For The primary audience for this title are the gamut of roles starting from IT consultant to chief architects who are responsible to deliver strategic, tactical, and operational engagements for fortune 100 customers worldwide. Nonfunctional requirements are the key to any software / IT program. They cannot be overlooked or ignored. The book provides a comprehensive approach from analysis, architecture, and measurement of nonfunctional requirements. The book includes considerations for bespoke (Java, .Net, and COTS applications). These are applicable to IT applications from various domains. The book outlines the methodology for capturing the NFRs and also describes a framework that can be leveraged by analysts and architects for tackling NFRs for various engagements. The audience for this book include business analysts, enterprise architects, business architects, solution architects, technical architects/designers, domain/security/integration architects, software developers, support engineers and test engineers, technical project managers, project leads/technical leads/technical project managers, and students from the computer science/IT stream What You Will Learn ? Learn techniques related to the analysis, architecture, and monitoring of NFRs ? Understand the various tools, techniques, and processes in order to improve the overall quality of the desired outcomes ? Embrace the best practices of architecting, metrics, and success factors for NFRs ? Identify the common pitfalls to be avoided and the patterns to leverage ? Understand taxonomy and framework for NFRs ? Learn the design guidelines for architecting applications and systems relating to NFRs ? Abstract different methodologies to analyze and gather NFRs In Detail Non-functional Requirements are key to any software/IT program and cannot be overlooked or ignored. This book provides a comprehensive approach to the analysis, architecture, and measurement of NFRs. It includes considerations for bespoke Java, .NET, and COTS applications that are applicable to IT applications/systems in different domains. The book outlines the methodology for capturing the NFRs and also describes a framework that can be leveraged by analysts and architects for tackling NFRs for various engagements. This book starts off by explaining the various KPIs, taxonomies, and methods for identifying NFRs. Learn the design guidelines for architecting applications and systems relating to NFRs and design principles to achieve the desired outcome. We will then move on to various key tiers/layers and patterns pertaining to the business, database, and integrating tiers. After this, we will dive deep into the topics pertaining to techniques related to monitoring and measurement of NFRs, such as sizing, analytical modeling, and quality assurance. Lastly, we end the book by describing some pivotal NFRs and checklists for the software quality attributes related to the business, application, data, and infrastructure domains. Style and approach The book takes a pragmatic approach, describing various techniques related to the analysis of NFRs, the architecture of NFRs, and assessment of NFRs.
Learn Python in 7 Days
Learn Python in 7 Days
Mohit,Bhaskar N. Das
¥71.93
Learn efficient Python coding within 7 days About This Book ? Make the best of Python features ? Learn the tinge of Python in 7 days ? Learn complex concepts using the most simple examples Who This Book Is For The book is aimed at aspiring developers and absolute novice who want to get started with the world of programming. We assume no knowledge of Python for this book. What You Will Learn ? Use if else statement with loops and how to break, skip the loop ? Get acquainted with python types and its operators ? Create modules and packages ? Learn slicing, indexing and string methods ? Explore advanced concepts like collections, class and objects ? Learn dictionary operation and methods ? Discover the scope and function of variables with arguments and return value In Detail Python is a great language to get started in the world of programming and application development. This book will help you to take your skills to the next level having a good knowledge of the fundamentals of Python. We begin with the absolute foundation, covering the basic syntax, type variables and operators. We'll then move on to concepts like statements, arrays, operators, string processing and I/O handling. You’ll be able to learn how to operate tuples and understand the functions and methods of lists. We’ll help you develop a deep understanding of list and tuples and learn python dictionary. As you progress through the book, you’ll learn about function parameters and how to use control statements with the loop. You’ll further learn how to create modules and packages, storing of data as well as handling errors. We later dive into advanced level concepts such as Python collections and how to use class, methods, objects in python. By the end of this book, you will be able to take your skills to the next level having a good knowledge of the fundamentals of Python. Style and approach Fast paced guide to get you up-to-speed with the language. Every chapter is followed by an exercise that focuses on building something with the language. The codes of the exercises can be found on the Packt website
Akka Cookbook
Akka Cookbook
Héctor Veiga Ortiz,Piyush Mishra
¥90.46
Learn how to use the Akka framework to build effective applications in Scala About This Book ? Covers a discussion on Lagom—the newest launched Akka framework that is built to create complex microservices easily ? The recipe approach of the book allows the reader to know important and independent concepts of Scala and Akka in a seamless manner ? Provides a comprehensive understanding of the Akka actor model and implementing it to create reactive web applications Who This Book Is For If you are a Scala developer who wants to build scalable and concurrent applications, then this book is for you. Basic knowledge of Akka will help you take advantage of this book. What You Will Learn ? Control an actor using the ContolAware mailbox ? Test a fault-tolerant application using the Akka test kit ? Create a parallel application using futures and agents ? Package and deploy Akka application inside Docker ? Deploy remote actors programmatically on different nodes ? Integrate Streams with Akka actors ? Install Lagom and create a Lagom project In Detail Akka is an open source toolkit that simplifies the construction of distributed and concurrent applications on the JVM. This book will teach you how to develop reactive applications in Scala using the Akka framework. This book will show you how to build concurrent, scalable, and reactive applications in Akka. You will see how to create high performance applications, extend applications, build microservices with Lagom, and more. We will explore Akka's actor model and show you how to incorporate concurrency into your applications. The book puts a special emphasis on performance improvement and how to make an application available for users. We also make a special mention of message routing and construction. By the end of this book, you will be able to create a high-performing Scala application using the Akka framework. Style and approach This highly practical recipe-based approach will allow you to build scalable, robust, and reactive applications using the Akka framework.
Mastering Reactive JavaScript
Mastering Reactive JavaScript
Erich de Souza Oliveira
¥71.93
Expand your boundaries by creating applications empowered with real-time data using RxJs without compromising performance About This Book ? Handle an infinite stream of incoming data using RxJs without going crazy ? Explore important RxJs operators that can help you improve your code readability ? Get acquainted with the different techniques and operators used to handle data traffic, which occurs when you receive data faster than you can process Who This Book Is For If you're a web developer with some basic JavaScript programming knowledge who wants to implement the reactive programming paradigm with JavaScript, then this book is for you. What You Will Learn ? Get to know the basics of functional reactive programming using RxJs ? Process a continuous flow of data with linear memory consumption ? Filter, group, and react to changes in your system ? Discover how to deal with data traffic ? Compose operators to create new operators and use them in multiple observables to avoid code repetition ? Explore transducers and see how they can improve your code readability ? Detect and recover from errors in observables using Retry and Catch operators ? Create your own reactive application: a real-time webchat In Detail If you’re struggling to handle a large amount of data and don’t know how to improve your code readability, then reactive programming is the right solution for you. It lets you describe how your code behaves when changes happen and makes it easier to deal with real-time data. This book will teach you what reactive programming is, and how you can use it to write better applications. The book starts with the basics of reactive programming, what Reactive Extensions is, and how can you use it in JavaScript along with some reactive code using Bacon. Next, you’ll discover what an Observable and an Observer are and when to use them.You'll also find out how you can query data through operators, and how to use schedulers to react to changes. Moving on, you’ll explore the RxJs API, be introduced to the problem of data traffic (backpressure), and see how you can mitigate it. You’ll also learn about other important operators that can help improve your code readability, and you’ll see how to use transducers to compose operators. At the end of the book, you’ll get hands-on experience of using RxJs, and will create a real-time web chat using RxJs on the client and server, providing you with the complete package to master RxJs. Style and approach This easy-to-follow guide is full of hands-on examples of reactive programming. Each topic is explained and placed in context, and for the more inquisitive there are more details of the concepts used, ending with an application using the concepts learned through the book.
Spring 5 Design Patterns
Spring 5 Design Patterns
Dinesh Rajput
¥80.65
Learn various design patterns and best practices in Spring 5 and use them to solve common design problems. About This Book ? Explore best practices for designing an application ? Manage your code easily with Spring's Dependency Injection pattern ? Understand the benefits that the right design patterns can offer your toolkit Who This Book Is For This book is for developers who would like to use design patterns to address common problems while designing an app using the Spring Framework and Reactive Programming approach. A basic knowledge of the Spring Framework and Java is assumed. What You Will Learn ? Develop applications using dependency injection patterns ? Learn best practices to design enterprise applications ? Explore Aspect-Oriented Programming relating to transactions, security, and caching. ? Build web applications using traditional Spring MVC patterns ? Learn to configure Spring using XML, annotations, and Java. ? Implement caching to improve application performance. ? Understand concurrency and handle multiple connections inside a web server. ? Utilizing Reactive Programming Pattern to build Reactive web applications. In Detail Design patterns help speed up the development process by offering well tested and proven solutions to common problems. These patterns coupled with the Spring framework offer tremendous improvements in the development process. The book begins with an overview of Spring Framework 5.0 and design patterns. You will understand the Dependency Injection pattern, which is the main principle behind the decoupling process that Spring performs, thus making it easier to manage your code. You will learn how GoF patterns can be used in Application Design. You will then learn 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. Then, you will be introduced to MVC patterns to build Reactive web applications. Finally, you will move on to more advanced topics such as Reactive streams and Concurrency. At the end of this book, you will be well equipped to develop efficient enterprise applications using Spring 5 with common design patterns Style and approach The book takes a pragmatic approach, showing various design patterns and best-practice considerations, including the Reactive programming approach with the Spring 5 Framework and ways to solve common development and design problems for enterprise applications.
Architecting Modern Java EE Applications
Architecting Modern Java EE Applications
Sebastian Daschner
¥90.46
Find out how to craft effective, business-oriented Java EE 8 applications that target customer’s demands in the age of Cloud platforms and container technology. About This Book ? Understand the principles of modern Java EE and how to realize effective architectures ? Gain knowledge of how to design enterprise software in the age of automation, Continuous Delivery and Cloud platforms ? Learn about the reasoning and motivations behind state-of-the-art enterprise Java technology, that focuses on business Who This Book Is For This book is for experienced Java EE developers who are aspiring to become the architects of enterprise-grade applications, or software architects who would like to leverage Java EE to create effective blueprints of applications. What You Will Learn ? What enterprise software engineers should focus on ? Implement applications, packages, and components in a modern way ? Design and structure application architectures ? Discover how to realize technical and cross-cutting aspects ? Get to grips with containers and container orchestration technology ? Realize zero-dependency, 12-factor, and Cloud-native applications ? Implement automated, fast, reliable, and maintainable software tests ? Discover distributed system architectures and their requirements In Detail Java EE 8 brings with it a load of features, mainly targeting newer architectures such as microservices, modernized security APIs, and cloud deployments. This book will teach you to design and develop modern, business-oriented applications using Java EE 8. It shows how to structure systems and applications, and how design patterns and Domain Driven Design aspects are realized in the age of Java EE 8. You will learn about the concepts and principles behind Java EE applications, and how to effect communication, persistence, technical and cross-cutting concerns, and asynchronous behavior. This book covers Continuous Delivery, DevOps, infrastructure-as-code, containers, container orchestration technologies, such as Docker and Kubernetes, and why and especially how Java EE fits into this world. It also covers the requirements behind containerized, zero-dependency applications and how modern Java EE application servers support these approaches. You will also learn about automated, fast, and reliable software tests, in different test levels, scopes, and test technologies. This book covers the prerequisites and challenges of distributed systems that lead to microservice, shared-nothing architectures. The challenges and solutions of consistency versus scalability will further lead us to event sourcing, event-driven architectures, and the CQRS principle. This book also includes the nuts and bolts of application performance as well as how to realize resilience, logging, monitoring and tracing in a modern enterprise world. Last but not least the demands of securing enterprise systems are covered. By the end, you will understand the ins and outs of Java EE so that you can make critical design decisions that not only live up to, but also surpass your clients' expectations. Style and approach This book focuses on solving business problems and meeting customer demands in the enterprise world. It covers how to create enterprise applications with reasonable technology choices, free of cargo-cult and over-engineering. The aspects shown in this book not only demonstrate how to realize a certain solution, but also explain its motivations and reasoning.
Augmented Reality for Developers
Augmented Reality for Developers
Jonathan Linowes;Krystian Babilinski
¥90.46
Build exciting AR applications on mobile and wearable devices with Unity 3D, Vuforia, ARToolKit, Microsoft Mixed Reality HoloLens, Apple ARKit, and Google ARCore About This Book ? Create unique AR applications from scratch, from beginning to end, with step-by-step tutorials ? Use Unity 3D to efficiently create AR apps for Android, iOS, and Windows platforms ? Use Vuforia, ARTookKit, Windows Mixed Reality, and Apple ARKit to build AR projects for a variety of markets ? Learn best practices in AR user experience, software design patterns, and 3D graphics Who This Book Is For The ideal target audience for this book is developers who have some experience in mobile development, either Android or iOS. Some broad web development experience would also be beneficial. What You Will Learn ? Build Augmented Reality applications through a step-by-step, tutorial-style project approach ? Use the Unity 3D game engine with the Vuforia AR platform, open source ARToolKit, Microsoft's Mixed Reality Toolkit, Apple ARKit, and Google ARCore, via the C# programming language ? Implement practical demo applications of AR including education, games, business marketing, and industrial training ? Employ a variety of AR recognition modes, including target images, markers, objects, and spatial mapping ? Target a variety of AR devices including phones, tablets, and wearable smartglasses, for Android, iOS, and Windows HoloLens ? Develop expertise with Unity 3D graphics, UIs, physics, and event systems ? Explore and utilize AR best practices and software design patterns In Detail Augmented Reality brings with it a set of challenges that are unseen and unheard of for traditional web and mobile developers. This book is your gateway to Augmented Reality development—not a theoretical showpiece for your bookshelf, but a handbook you will keep by your desk while coding and architecting your first AR app and for years to come. The book opens with an introduction to Augmented Reality, including markets, technologies, and development tools. You will begin by setting up your development machine for Android, iOS, and Windows development, learning the basics of using Unity and the Vuforia AR platform as well as the open source ARToolKit and Microsoft Mixed Reality Toolkit. You will also receive an introduction to Apple's ARKit and Google's ARCore! You will then focus on building AR applications, exploring a variety of recognition targeting methods. You will go through multiple complete projects illustrating key market sectors including business marketing, education, industrial training, and gaming. By the end of the book, you will have gained the necessary knowledge to make quality content appropriate for a range of AR devices, platforms, and intended uses. Style and approach This book adopts a practical, step-by-step, tutorial-style approach. The design principles and methodology will be explained by creating different modules of the AR app.
Mastering Linux Kernel Development
Mastering Linux Kernel Development
Raghu Bharadwaj
¥90.46
Explore Implementation of core kernel subsystems About This Book ? Master the design, components, and structures of core kernel subsystems ? Explore kernel programming interfaces and related algorithms under the hood ? Completely updated material for the 4.12.10 kernel Who This Book Is For If you are a kernel programmer with a knowledge of kernel APIs and are looking to build a comprehensive understanding, and eager to explore the implementation, of kernel subsystems, this book is for you. It sets out to unravel the underlying details of kernel APIs and data structures, piercing through the complex kernel layers and gives you the edge you need to take your skills to the next level. What You Will Learn ? Comprehend processes and fles—the core abstraction mechanisms of the Linux kernel that promote effective simplification and dynamism ? Decipher process scheduling and understand effective capacity utilization under general and real-time dispositions ? Simplify and learn more about process communication techniques through signals and IPC mechanisms ? Capture the rudiments of memory by grasping the key concepts and principles of physical and virtual memory management ? Take a sharp and precise look at all the key aspects of interrupt management and the clock subsystem ? Understand concurrent execution on SMP platforms through kernel synchronization and locking techniques In Detail Mastering Linux Kernel Development looks at the Linux kernel, its internal arrangement and design, and various core subsystems, helping you to gain significant understanding of this open source marvel. You will look at how the Linux kernel, which possesses a kind of collective intelligence thanks to its scores of contributors, remains so elegant owing to its great design. This book also looks at all the key kernel code, core data structures, functions, and macros, giving you a comprehensive foundation of the implementation details of the kernel’s core services and mechanisms. You will also look at the Linux kernel as well-designed software, which gives us insights into software design in general that are easily scalable yet fundamentally strong and safe. By the end of this book, you will have considerable understanding of and appreciation for the Linux kernel. Style and approach Each chapter begins with the basic conceptual know-how for a subsystem and extends into the details of its implementation. We use appropriate code excerpts of critical routines and data structures for subsystems.
Learning Ceph - Second Edition
Learning Ceph - Second Edition
Anthony D'Atri,Vaibhav Bhembre,Karan Singh
¥90.46
Implement and manage your software-defined, massively scalable storage system About This Book ? Explore Ceph's architecture in order to achieve scalability and high availability ? Learn to utilize Ceph efficiently with the help of practical examples ? Successfully implement Ceph clusters to scale-out storage solutions along with outstanding data protection Who This Book Is For A basic knowledge of GNU/Linux, and storage systems, and server components is assumed. If you have no experience of software-defined storage solutions and Ceph, but are eager to learn about them, this is the book for you. What You Will Learn ? The limitations of existing systems and why you should use Ceph as a storage solution ? Familiarity with Ceph's architecture, components, and services ? Instant deployment and testing of Ceph within a Vagrant and VirtualBox environment ? Ceph operations including maintenance, monitoring, and troubleshooting ? Storage provisioning of Ceph's block, object, and filesystem services ? Integrate Ceph with OpenStack ? Advanced topics including erasure coding, CRUSH maps, and performance tuning ? Best practices for your Ceph clusters In Detail Learning Ceph, Second Edition will give you all the skills you need to plan, deploy, and effectively manage your Ceph cluster. You will begin with the first module, where you will be introduced to Ceph use cases, its architecture, and core projects. In the next module, you will learn to set up a test cluster, using Ceph clusters and hardware selection. After you have learned to use Ceph clusters, the next module will teach you how to monitor cluster health, improve performance, and troubleshoot any issues that arise. In the last module, you will learn to integrate Ceph with other tools such as OpenStack, Glance, Manila, Swift, and Cinder. By the end of the book you will have learned to use Ceph effectively for your data storage requirements. Style and approach This step-by-step guide, including use cases and examples, not only helps you to easily use Ceph but also demonstrates how you can use it to solve any of your server or drive storage issues.
Kali Linux - An Ethical Hacker's Cookbook
Kali Linux - An Ethical Hacker's Cookbook
Himanshu Sharma
¥80.65
Over 120 recipes to perform advanced penetration testing with Kali Linux About This Book ? Practical recipes to conduct effective penetration testing using the powerful Kali Linux ? Leverage tools like Metasploit, Wireshark, Nmap, and many more to detect vulnerabilities with ease ? Confidently perform networking and application attacks using task-oriented recipes Who This Book Is For This book is aimed at IT security professionals, pentesters, and security analysts who have basic knowledge of Kali Linux and want to conduct advanced penetration testing techniques. What You Will Learn ? Installing, setting up and customizing Kali for pentesting on multiple platforms ? Pentesting routers and embedded devices ? Bug hunting 2017 ? Pwning and escalating through corporate network ? Buffer over?ows 101 ? Auditing wireless networks ? Fiddling around with software-defned radio ? Hacking on the run with NetHunter ? Writing good quality reports In Detail With the current rate of hacking, it is very important to pentest your environment in order to ensure advanced-level security. This book is packed with practical recipes that will quickly get you started with Kali Linux (version 2016.2) according to your needs, and move on to core functionalities. This book will start with the installation and configuration of Kali Linux so that you can perform your tests. You will learn how to plan attack strategies and perform web application exploitation using tools such as Burp, and Jexboss. You will also learn how to perform network exploitation using Metasploit, Sparta, and Wireshark. Next, you will perform wireless and password attacks using tools such as Patator, John the Ripper, and airo*-ng. Lastly, you will learn how to create an optimum quality pentest report! By the end of this book, you will know how to conduct advanced penetration testing thanks to the book’s crisp and task-oriented recipes. Style and approach This is a recipe-based book that allows you to venture into some of the most cutting-edge practices and techniques to perform penetration testing with Kali Linux.
Jupyter for Data Science
Jupyter for Data Science
Dan Toomey
¥71.93
Your one-stop guide to building an efficient data science pipeline using Jupyter About This Book ? Get the most out of your Jupyter notebook to complete the trickiest of tasks in Data Science ? Learn all the tasks in the data science pipeline—from data acquisition to visualization—and implement them using Jupyter ? Get ahead of the curve by mastering all the applications of Jupyter for data science with this unique and intuitive guide Who This Book Is For This book targets students and professionals who wish to master the use of Jupyter to perform a variety of data science tasks. Some programming experience with R or Python, and some basic understanding of Jupyter, is all you need to get started with this book. What You Will Learn ? Understand why Jupyter notebooks are a perfect fit for your data science tasks ? Perform scientific computing and data analysis tasks with Jupyter ? Interpret and explore different kinds of data visually with charts, histograms, and more ? Extend SQL's capabilities with Jupyter notebooks ? Combine the power of R and Python 3 with Jupyter to create dynamic notebooks ? Create interactive dashboards and dynamic presentations ? Master the best coding practices and deploy your Jupyter notebooks efficiently In Detail Jupyter Notebook is a web-based environment that enables interactive computing in notebook documents. It allows you to create documents that contain live code, equations, and visualizations. This book is a comprehensive guide to getting started with data science using the popular Jupyter notebook. If you are familiar with Jupyter notebook and want to learn how to use its capabilities to perform various data science tasks, this is the book for you! From data exploration to visualization, this book will take you through every step of the way in implementing an effective data science pipeline using Jupyter. You will also see how you can utilize Jupyter's features to share your documents and codes with your colleagues. The book also explains how Python 3, R, and Julia can be integrated with Jupyter for various data science tasks. By the end of this book, you will comfortably leverage the power of Jupyter to perform various tasks in data science successfully. Style and approach This book is a perfect blend of concepts and practical examples, written in a way that is very easy to understand and implement. It follows a logical flow where you will be able to build on your understanding of the different Jupyter features with every chapter.
Linux Device Drivers Development
Linux Device Drivers Development
John Madieu
¥80.65
Learn to develop customized device drivers for your embedded Linux system About This Book ? Learn to develop customized Linux device drivers ? Learn the core concepts of device drivers such as memory management, kernel caching, advanced IRQ management, and so on. ? Practical experience on the embedded side of Linux Who This Book Is For This book will help anyone who wants to get started with developing their own Linux device drivers for embedded systems. Embedded Linux users will benefit highly from this book. This book covers all about device driver development, from char drivers to network device drivers to memory management. What You Will Learn ? Use kernel facilities to develop powerful drivers ? Develop drivers for widely used I2C and SPI devices and use the regmap API ? Write and support devicetree from within your drivers ? Program advanced drivers for network and frame buffer devices ? Delve into the Linux irqdomain API and write interrupt controller drivers ? Enhance your skills with regulator and PWM frameworks ? Develop measurement system drivers with IIO framework ? Get the best from memory management and the DMA subsystem ? Access and manage GPIO subsystems and develop GPIO controller drivers In Detail Linux kernel is a complex, portable, modular and widely used piece of software, running on around 80% of servers and embedded systems in more than half of devices throughout the World. Device drivers play a critical role in how well a Linux system performs. As Linux has turned out to be one of the most popular operating systems used, the interest in developing proprietary device drivers is also increasing steadily. This book will initially help you understand the basics of drivers as well as prepare for the long journey through the Linux Kernel. This book then covers drivers development based on various Linux subsystems such as memory management, PWM, RTC, IIO, IRQ management, and so on. The book also offers a practical approach on direct memory access and network device drivers. By the end of this book, you will be comfortable with the concept of device driver development and will be in a position to write any device driver from scratch using the latest kernel version (v4.13 at the time of writing this book). Style and approach A set of engaging examples to develop Linux device drivers