万本电子书0元读

万本电子书0元读

R Data Analysis Cookbook - Second Edition
R Data Analysis Cookbook - Second Edition
Kuntal Ganguly
¥90.46
Over 80 recipes to help you breeze through your data analysis projects using R About This Book ? Analyse your data using the popular R packages like ggplot2 with ready-to-use and customizable recipes ? Find meaningful insights from your data and generate dynamic reports ? A practical guide to help you put your data analysis skills in R to practical use Who This Book Is For This book is for data scientists, analysts and even enthusiasts who want to learn and implement the various data analysis techniques using R in a practical way. Those looking for quick, handy solutions to common tasks and challenges in data analysis will find this book to be very useful. Basic knowledge of statistics and R programming is assumed. What You Will Learn ? Acquire, format and visualize your data using R ? Using R to perform an Exploratory data analysis ? Introduction to machine learning algorithms such as classification and regression ? Get started with social network analysis ? Generate dynamic reporting with Shiny ? Get started with geospatial analysis ? Handling large data with R using Spark and MongoDB ? Build Recommendation system- Collaborative Filtering, Content based and Hybrid ? Learn real world dataset examples- Fraud Detection and Image Recognition In Detail Data analytics with R has emerged as a very important focus for organizations of all kinds. R enables even those with only an intuitive grasp of the underlying concepts, without a deep mathematical background, to unleash powerful and detailed examinations of their data. This book will show you how you can put your data analysis skills in R to practical use, with recipes catering to the basic as well as advanced data analysis tasks. Right from acquiring your data and preparing it for analysis to the more complex data analysis techniques, the book will show you how you can implement each technique in the best possible manner. You will also visualize your data using the popular R packages like ggplot2 and gain hidden insights from it. Starting with implementing the basic data analysis concepts like handling your data to creating basic plots, you will master the more advanced data analysis techniques like performing cluster analysis, and generating effective analysis reports and visualizations. Throughout the book, you will get to know the common problems and obstacles you might encounter while implementing each of the data analysis techniques in R, with ways to overcoming them in the easiest possible way. By the end of this book, you will have all the knowledge you need to become an expert in data analysis with R, and put your skills to test in real-world scenarios. Style and Approach ? Hands-on recipes to walk through data science challenges using R ? Your one-stop solution for common and not-so-common pain points while performing real-world problems to execute a series of tasks. ? Addressing your common and not-so-common pain points, this is a book that you must have on the shelf
Apache Spark 2.x Machine Learning Cookbook
Apache Spark 2.x Machine Learning Cookbook
Siamak Amirghodsi;Meenakshi Rajendran;Broderick Hall;Shuen Mei
¥90.46
Simplify machine learning model implementations with Spark About This Book ? Solve the day-to-day problems of data science with Spark ? This unique cookbook consists of exciting and intuitive numerical recipes ? Optimize your work by acquiring, cleaning, analyzing, predicting, and visualizing your data Who This Book Is For This book is for Scala developers with a fairly good exposure to and understanding of machine learning techniques, but lack practical implementations with Spark. A solid knowledge of machine learning algorithms is assumed, as well as hands-on experience of implementing ML algorithms with Scala. However, you do not need to be acquainted with the Spark ML libraries and ecosystem. What You Will Learn ? Get to know how Scala and Spark go hand-in-hand for developers when developing ML systems with Spark ? Build a recommendation engine that scales with Spark ? Find out how to build unsupervised clustering systems to classify data in Spark ? Build machine learning systems with the Decision Tree and Ensemble models in Spark ? Deal with the curse of high-dimensionality in big data using Spark ? Implement Text analytics for Search Engines in Spark ? Streaming Machine Learning System implementation using Spark In Detail Machine learning aims to extract knowledge from data, relying on fundamental concepts in computer science, statistics, probability, and optimization. Learning about algorithms enables a wide range of applications, from everyday tasks such as product recommendations and spam filtering to cutting edge applications such as self-driving cars and personalized medicine. You will gain hands-on experience of applying these principles using Apache Spark, a resilient cluster computing system well suited for large-scale machine learning tasks. This book begins with a quick overview of setting up the necessary IDEs to facilitate the execution of code examples that will be covered in various chapters. It also highlights some key issues developers face while working with machine learning algorithms on the Spark platform. We progress by uncovering the various Spark APIs and the implementation of ML algorithms with developing classification systems, recommendation engines, text analytics, clustering, and learning systems. Toward the final chapters, we’ll focus on building high-end applications and explain various unsupervised methodologies and challenges to tackle when implementing with big data ML systems. Style and approach This book is packed with intuitive recipes supported with line-by-line explanations to help you understand how to optimize your work flow and resolve problems when working with complex data modeling tasks and predictive algorithms. This is a valuable resource for data scientists and those working on large scale data projects.
Machine Learning With Go
Machine Learning With Go
Daniel Whitenack
¥90.46
Build simple, maintainable, and easy to deploy machine learning applications. About This Book ? Build simple, but powerful, machine learning applications that leverage Go’s standard library along with popular Go packages. ? Learn the statistics, algorithms, and techniques needed to successfully implement machine learning in Go ? Understand when and how to integrate certain types of machine learning model in Go applications. Who This Book Is For This book is for Go developers who are familiar with the Go syntax and can develop, build, and run basic Go programs. If you want to explore the field of machine learning and you love Go, then this book is for you! Machine Learning with Go will give readers the practical skills to perform the most common machine learning tasks with Go. Familiarity with some statistics and math topics is necessary. What You Will Learn ? Learn about data gathering, organization, parsing, and cleaning. ? Explore matrices, linear algebra, statistics, and probability. ? See how to evaluate and validate models. ? Look at regression, classification, clustering. ? Learn about neural networks and deep learning ? Utilize times series models and anomaly detection. ? Get to grip with techniques for deploying and distributing analyses and models. ? Optimize machine learning workflow techniques In Detail The mission of this book is to turn readers into productive, innovative data analysts who leverage Go to build robust and valuable applications. To this end, the book clearly introduces the technical aspects of building predictive models in Go, but it also helps the reader understand how machine learning workflows are being applied in real-world scenarios. Machine Learning with Go shows readers how to be productive in machine learning while also producing applications that maintain a high level of integrity. It also gives readers patterns to overcome challenges that are often encountered when trying to integrate machine learning in an engineering organization. The readers will begin by gaining a solid understanding of how to gather, organize, and parse real-work data from a variety of sources. Readers will then develop a solid statistical toolkit that will allow them to quickly understand gain intuition about the content of a dataset. Finally, the readers will gain hands-on experience implementing essential machine learning techniques (regression, classification, clustering, and so on) with the relevant Go packages. Finally, the reader will have a solid machine learning mindset and a powerful Go toolkit of techniques, packages, and example implementations. Style and approach This book connects the fundamental, theoretical concepts behind Machine Learning to practical implementations using the Go programming language.
Python Machine Learning By Example
Python Machine Learning By Example
Yuxi (Hayden) Liu
¥90.46
Take tiny steps to enter the big world of data science through this interesting guide About This Book ? Learn the fundamentals of machine learning and build your own intelligent applications ? Master the art of building your own machine learning systems with this example-based practical guide ? Work with important classification and regression algorithms and other machine learning techniques Who This Book Is For This book is for anyone interested in entering the data science stream with machine learning. Basic familiarity with Python is assumed. What You Will Learn ? Exploit the power of Python to handle data extraction, manipulation, and exploration techniques ? Use Python to visualize data spread across multiple dimensions and extract useful features ? Dive deep into the world of analytics to predict situations correctly ? Implement machine learning classification and regression algorithms from scratch in Python ? Be amazed to see the algorithms in action ? Evaluate the performance of a machine learning model and optimize it ? Solve interesting real-world problems using machine learning and Python as the journey unfolds In Detail Data science and machine learning are some of the top buzzwords in the technical world today. A resurging interest in machine learning is due to the same factors that have made data mining and Bayesian analysis more popular than ever. This book is your entry point to machine learning. This book starts with an introduction to machine learning and the Python language and shows you how to complete the setup. Moving ahead, you will learn all the important concepts such as, exploratory data analysis, data preprocessing, feature extraction, data visualization and clustering, classification, regression and model performance evaluation. With the help of various projects included, you will find it intriguing to acquire the mechanics of several important machine learning algorithms – they are no more obscure as they thought. Also, you will be guided step by step to build your own models from scratch. Toward the end, you will gather a broad picture of the machine learning ecosystem and best practices of applying machine learning techniques. Through this book, you will learn to tackle data-driven problems and implement your solutions with the powerful yet simple language, Python. Interesting and easy-to-follow examples, to name some, news topic classification, spam email detection, online ad click-through prediction, stock prices forecast, will keep you glued till you reach your goal. Style and approach This book is an enticing journey that starts from the very basics and gradually picks up pace as the story unfolds. Each concept is first succinctly defined in the larger context of things, followed by a detailed explanation of their application. Every concept is explained with the help of a project that solves a real-world problem, and involves hands-on work—giving you a deep insight into the world of machine learning. With simple yet rich language—Python—you will understand and be able to implement the examples with ease.
Mastering Node.js - Second Edition
Mastering Node.js - Second Edition
Sandro Pasquali,Kevin Faaborg
¥90.46
Expert techniques for building fast servers and scalable, real-time network applications with minimal effort; rewritten for Node.js 8 and Node.js 9 About This Book ? Packed with practical examples and explanations, Mastering Node.js contains everything you need to take your applications to the next level. ? Unleash the full potential of Node.js 9 to build real-time and scalable applications. ? Gain in-depth knowledge of asynchronous programming, event loops, and parallel data processing. ? Explore Node's innovative event-non-blocking design, and build professional applications with the help of detailed examples. Who This Book Is For This book is targeted at JavaScript developers who want to take an in-depth look at the latest Node.js framework to create faster, scalable, real-time backend applications. Basic JavaScript programming knowledge—and also some previous Node.js development experience—are mandatory to get the best out of this book What You Will Learn ? Build an Electron desktop app using Node that manages a filesystem ? Explore Streams and understand how they apply to building networked services ? Develop and deploy an SMS-driven customer service application ? Use WebSockets for rapid bi-directional communication ? Construct serverless applications with Amazon Lambda ? Test and debug with headless browsers, CPU profiling, Mocha, Sinon, and more ? Scale applications vertically and horizontally across multiple cores and web services In Detail Node.js, a modern development environment that enables developers to write server- and client-side code with JavaScript, thus becoming a popular choice among developers. This book covers the features of Node that are especially helpful to developers creating highly concurrent real-time applications. It takes you on a tour of Node's innovative event non-blocking design, showing you how to build professional applications. This edition has been updated to cover the latest features of Node 9 and ES6. All code examples and demo applications have been completely rewritten using the latest techniques, introducing Promises, functional programming, async/await, and other cutting-edge patterns for writing JavaScript code. Learn how to use microservices to simplify the design and composition of distributed systems. From building serverless cloud functions to native C++ plugins, from chatbots to massively scalable SMS-driven applications, you'll be prepared for building the next generation of distributed software. By the end of this book, you'll be building better Node applications more quickly, with less code and more power, and know how to run them at scale in production environments. Style and approach Mastering Node.js contains all of the examples and explanations you'll need to build applications in a short amount of time and at a low cost, running rapidly and at scale.
Mastering Entity Framework Core 2.0
Mastering Entity Framework Core 2.0
Prabhakaran Anbazhagan
¥90.46
Learn how to leverage the features of the new Entity Framework Core APIs and use them to build pure .NET Core applications. About This Book ? Learn how to effectively manage your database to make it more productive and maintainable. ? Write simplified queries using LINQ to acquire the desired data easily ? Raise the abstraction level from data to objects so teams can function independently, resulting in easily maintainable code Who This Book Is For This book is for .NET Core developers who would like to integrate EF Core in their application. Prior knowledge of .NET Core and C# is assumed. What You Will Learn ? Create databases and perform CRUD operations on them ? Understand and build relationships (related to entities, keys, and properties) ? Understand in-built, custom, and remote validation (both client and server side) ? You will learn to handle concurrency to build responsive applications ? You will handle transactions and multi-tenancy while also improving performance In Detail Being able to create and maintain data-oriented applications has become crucial in modern programming. This is why Microsoft came up with Entity Framework so architects can optimize storage requirements while also writing efficient and maintainable application code. This book is a comprehensive guide that will show how to utilize the power of the Entity Framework to build efficient .NET Core applications. It not only teaches all the fundamentals of Entity Framework Core but also demonstrates how to use it practically so you can implement it in your software development. The book is divided into three modules. The first module focuses on building entities and relationships. Here you will also learn about different mapping techniques, which will help you choose the one best suited to your application design. Once you have understood the fundamentals of the Entity Framework, you will move on to learn about validation and querying in the second module. It will also teach you how to execute raw SQL queries and extend the Entity Framework to leverage Query Objects using the Query Object Pattern. The final module of the book focuses on performance optimization and managing the security of your application. You will learn to implement failsafe mechanisms using concurrency tokens. The book also explores row-level security and multitenant databases in detail. By the end of the book, you will be proficient in implementing Entity Framework on your .NET Core applications. Style and approach This book is filled with various examples that will help you use Entity Framework Core 2.0 to write efficient software.
Jenkins 2.x Continuous Integration Cookbook - Third Edition
Jenkins 2.x Continuous Integration Cookbook - Third Edition
Mitesh Soni;Alan Mark Berg
¥90.46
Get a problem-solution approach enriched with code examples for practical and easy comprehension About This Book ? Explore the use of more than 40 best-of-breed plug-ins for improving efficiency ? Secure and maintain Jenkins 2.x by integrating it with LDAP and CAS, which is a Single Sign-on solution ? Efficiently build advanced pipelines with pipeline as code, thus increasing your team's productivity Who This Book Is For If you are a Java developer, a software architect, a technical project manager, a build manager, or a development or QA engineer, then this book is ideal for you. A basic understanding of the software development life cycle and Java development is needed, as well as a rudimentary understanding of Jenkins. What You Will Learn ? Install and Configure Jenkins 2.x on AWS and Azure ? Explore effective ways to manage and monitor Jenkins 2.x ? Secure Jenkins 2.x using Matrix-based Security ? Deploying a WAR file from Jenkins 2.x to Azure App Services and AWS Beanstalk ? Automate deployment of application on AWS and Azure PaaS ? Continuous Testing – Unit Test Execution, Functional Testing and Load Testing In Detail Jenkins 2.x is one of the most popular Continuous Integration servers in the market today. It was designed to maintain, secure, communicate, test, build, and improve the software development process. This book will begin by guiding you through steps for installing and configuring Jenkins 2.x on AWS and Azure. This is followed by steps that enable you to manage and monitor Jenkins 2.x. You will also explore the ways to enhance the overall security of Jenkins 2.x. You will then explore the steps involved in improving the code quality using SonarQube. Then, you will learn the ways to improve quality, followed by how to run performance and functional tests against a web application and web services. Finally, you will see what the available plugins are, concluding with best practices to improve quality. Style and approach This book provides a problem-solution approach to some common tasks and some uncommon tasks using Jenkins 2.x and is well-illustrated with practical code examples.
Mastering ROS for Robotics Programming - Second Edition
Mastering ROS for Robotics Programming - Second Edition
Lentin Joseph,Jonathan Cacace
¥90.46
Discover best practices and troubleshooting solutions when working on ROS About This Book ? Develop complex robotic applications using ROS to interface robot manipulators and mobile robots ? Gain insight into autonomous navigation in mobile robots and motion planning in robot manipulators ? Discover best practices and troubleshooting solutions Who This Book Is For If you are a robotics enthusiast or researcher who want to learn more about building robot applications using ROS, this book is for you. In order to learn from this book, you should have a basic knowledge of ROS, GNU/Linux, and C++ programming concepts. The book is also excellent for programmers who want to explore the advanced features of ROS. What You Will Learn ? Create a robot model with a seven-DOF robotic arm and a differential wheeled mobile robot ? Work with Gazebo and V-REP robotic simulator ? Implement autonomous navigation in differential drive robots using SLAM and AMCL packages ? Explore the ROS Pluginlib, ROS nodelets, and Gazebo plugins ? Interface I/O boards such as Arduino, robot sensors, and high-end actuators ? Simulate and motion plan an ABB and universal arm using ROS Industrial ? Explore the latest version of the ROS framework ? Work with the motion planning of a seven-DOF arm using MoveIt! In Detail In this day and age, robotics has been gaining a lot of traction in various industries where consistency and perfection matter. Automation is achieved via robotic applications and various platforms that support robotics. The Robot Operating System (ROS) is a modular software platform to develop generic robotic applications. This book focuses on the most stable release of ROS (Kinetic Kame), discusses advanced concepts, and effectively teaches you programming using ROS. We begin with aninformative overview of the ROS framework, which will give you a clear idea of how ROS works. During the course of this book, you’ll learn to build models of complex robots, and simulate and interface the robot using the ROS MoveIt! motion planning library and ROS navigation stacks. Learn to leverage several ROS packages to embrace your robot models. After covering robot manipulation and navigation, you’ll get to grips with the interfacing I/O boards, sensors, and actuators of ROS. Vision sensors are a key component of robots, and an entire chapter is dedicated to the vision sensor and image elaboration, its interface in ROS and programming. You’ll also understand the hardware interface and simulation of complex robots to ROS and ROS Industrial. At the end of this book, you’ll discover the best practices to follow when programming using ROS. Style and approach This is a simplified guide to help you learn and master advanced topics in ROS using hands-on examples.
Building Microservices with Spring
Building Microservices with Spring
Dinesh Rajput
¥90.46
Learn and use the design patterns and best practices in Spring to solve common design problems and build user-friendly microservices Key Features *Study the benefits of using the right design pattern in your toolkit *Manage your code easily with Spring's dependency injection pattern *Explore the features of Docker and Mesos to build successful microservices Book Description 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 What you will learn *Develop applications using dependency injection patterns *Build web applications using traditional Spring MVC patterns *Utilize the reactive programming pattern to build reactive web apps *Learn concurrency and handle multiple connections inside a web server *Use Spring Boot and Spring Cloud to develop microservices *Leverage reactive programming to build cloud-native applications Who this book is for Getting Started with Spring Microservices is ideal for Spring developers who want to use design patterns to solve common design problems and build cloud-ready, Internet-scale applications, and simple RESTful services.
Modern C++: Efficient and Scalable Application Development
Modern C++: Efficient and Scalable Application Development
Richard Grimes
¥90.46
Create apps in C++ and leverage its latest features using modern programming techniques. Key Features *Develop strong C++ skills to build a variety of applications *Explore features of C++17, such as containers, algorithms, and threads *Grasp the standard support for threading and concurrency and use them in basic daily tasks Book Description C++ is one of the most widely used programming languages. It is fast, flexible, and used to solve many programming problems. This Learning Path gives you an in-depth and hands-on experience of working with C++, using the latest recipes and understanding most recent developments. You will explore C++ programming constructs by learning about language structures, functions, and classes, which will help you identify the execution flow through code. You will also understand the importance of the C++ standard library as well as memory allocation for writing better and faster programs. Modern C++: Efficient and Scalable Application Development deals with the challenges faced with advanced C++ programming. You will work through advanced topics such as multithreading, networking, concurrency, lambda expressions, and many more recipes. By the end of this Learning Path, you will have all the skills to become a master C++ programmer. This Learning Path includes content from the following Packt products: *Beginning C++ Programming by Richard Grimes *Modern C++ Programming Cookbook by Marius Bancila *The Modern C++ Challenge by Marius Bancila What you will learn *Become familiar with the structure of C++ projects *Identify the main structures in the language: functions and classes *Learn to debug your programs *Leverage C++ features to obtain increased robustness and performance *Explore functions and callable objects with a focus on modern features *Serialize and deserialize JSON and XML data *Create client-server applications that communicate over TCP/IP *Use design patterns to solve real-world problems Who this book is for This Learning Path is designed for developers who want to gain a solid foundation in C++. The desire to learn how to code in C++ is all you need to get started with this Learning Path
Learn Web Development with Python
Learn Web Development with Python
Fabrizio Romano
¥90.46
A comprehensive guide to Python programming for web development using the most popular Python web framework - Django Key Features *Learn the fundamentals of programming with Python and building web apps *Build web applications from scratch with Django *Create real-world RESTful web services with the latest Django framework Book Description If you want to develop complete Python web apps with Django, this Learning Path is for you. It will walk you through Python programming techniques and guide you in implementing them when creating 4 professional Django projects, teaching you how to solve common problems and develop RESTful web services with Django and Python. You will learn how to build a blog application, a social image bookmarking website, an online shop, and an e-learning platform. Learn Web Development with Python will get you started with Python programming techniques, show you how to enhance your applications with AJAX, create RESTful APIs, and set up a production environment for your Django projects. Last but not least, you’ll learn the best practices for creating real-world applications. By the end of this Learning Path, you will have a full understanding of how Django works and how to use it to build web applications from scratch. This Learning Path includes content from the following Packt products: *Learn Python Programming by Fabrizio Romano *Django RESTful Web Services by Gastón C. Hillar *Django Design Patterns and Best Practices by Arun Ravindran What you will learn *Explore the fundamentals of Python programming with interactive projects *Grasp essential coding concepts along with the basics of data structures and control flow *Develop RESTful APIs from scratch with Django and the Django REST Framework *Create automated tests for RESTful web services *Debug, test, and profile RESTful web services with Django and the Django REST Framework *Use Django with other technologies such as Redis and Celery Who this book is for If you have little experience in coding or Python and want to learn how to build full-fledged web apps, this Learning Path is for you. No prior experience with RESTful web services, Python, or Django is required, but basic Python programming experience is needed to understand the concepts covered.
Hands-On System Programming with C++
Hands-On System Programming with C++
Dr. Rian Quinn
¥90.46
A hands-on guide to making system programming with C++ easy Key Features *Write system-level code leveraging C++17 *Learn the internals of the Linux Application Binary Interface (ABI) and apply it to system programming *Explore C++ concurrency to take advantage of server-level constructs Book Description C++ is a general-purpose programming language with a bias toward system programming as it provides ready access to hardware-level resources, efficient compilation, and a versatile approach to higher-level abstractions. This book will help you understand the benefits of system programming with C++17. You will gain a firm understanding of various C, C++, and POSIX standards, as well as their respective system types for both C++ and POSIX. After a brief refresher on C++, Resource Acquisition Is Initialization (RAII), and the new C++ Guideline Support Library (GSL), you will learn to program Linux and Unix systems along with process management. As you progress through the chapters, you will become acquainted with C++'s support for IO. You will then study various memory management methods, including a chapter on allocators and how they benefit system programming. You will also explore how to program file input and output and learn about POSIX sockets. This book will help you get to grips with safely setting up a UDP and TCP server/client. Finally, you will be guided through Unix time interfaces, multithreading, and error handling with C++ exceptions. By the end of this book, you will be comfortable with using C++ to program high-quality systems. What you will learn *Understand the benefits of using C++ for system programming *Program Linux/Unix systems using C++ *Discover the advantages of Resource Acquisition Is Initialization (RAII) *Program both console and file input and output *Uncover the POSIX socket APIs and understand how to program them *Explore advanced system programming topics, such as C++ allocators *Use POSIX and C++ threads to program concurrent systems *Grasp how C++ can be used to create performant system applications Who this book is for If you are a fresh developer with intermediate knowledge of C++ but little or no knowledge of Unix and Linux system programming, this book will help you learn system programming with C++ in a practical way.
Hands-On Design Patterns with C++
Hands-On Design Patterns with C++
Fedor G. Pikus
¥90.46
A comprehensive guide with extensive coverage on concepts such as OOP, functional programming, generic programming, and STL along with the latest features of C++ Key Features * Delve into the core patterns and components of C++ in order to master application design * Learn tricks, techniques, and best practices to solve common design and architectural challenges * Understand the limitation imposed by C++ and how to solve them using design patterns Book Description C++ is a general-purpose programming language designed with the goals of efficiency, performance, and flexibility in mind. Design patterns are commonly accepted solutions to well-recognized design problems. In essence, they are a library of reusable components, only for software architecture, and not for a concrete implementation. The focus of this book is on the design patterns that naturally lend themselves to the needs of a C++ programmer, and on the patterns that uniquely benefit from the features of C++, in particular, the generic programming. Armed with the knowledge of these patterns, you will spend less time searching for a solution to a common problem and be familiar with the solutions developed from experience, as well as their advantages and drawbacks. The other use of design patterns is as a concise and an efficient way to communicate. A pattern is a familiar and instantly recognizable solution to specific problem; through its use, sometimes with a single line of code, we can convey a considerable amount of information. The code conveys: "This is the problem we are facing, these are additional considerations that are most important in our case; hence, the following well-known solution was chosen." By the end of this book, you will have gained a comprehensive understanding of design patterns to create robust, reusable, and maintainable code. What you will learn * Recognize the most common design patterns used in C++ * Understand how to use C++ generic programming to solve common design problems * Explore the most powerful C++ idioms, their strengths, and drawbacks * Rediscover how to use popular C++ idioms with generic programming * Understand the impact of design patterns on the program’s performance Who this book is for This book is for experienced C++ developers and programmers who wish to learn about software design patterns and principles and apply them to create robust, reusable, and easily maintainable apps.
React Native Cookbook
React Native Cookbook
Dan Ward
¥90.46
Improve your React Native mobile development skills or transition from web development to mobile development with this practical solution-packed guide Key Features * Learn strategies and techniques to face challenges in React Native mobile development head-on * Leverage the best ways to use iOS and Android for React Native development while maximizing code reuse and cohesion * Build engaging, performant user experiences with React Native Book Description If you are a developer looking to create mobile applications with maximized code reusability and minimized cost, then React Native is here to help. With this practical guide, you will be able to build attractive UIs, tackle common mobile development-related issues, and achieve improved performance in mobile environments. This book starts with common techniques for React Native customization and helps you set up your development platforms. Over the course of the book, a wide variety of step-by-step recipes are designed with both built-in React Native and custom third-party components that you will create, style, and animate. You will create real-world browser-based authentication, build a fully functional audio player, and integrate with Google maps. You will also explore different strategies for working with data, including leveraging the popular Redux library and optimizing your app’s dataflow. You will then get an introduction to writing native device functionality for new and already existing native projects. Finally, you will learn how app deployment works, and tips and tricks for writing performant code. By the end of the book, you'll have gained enough knowledge to build full iOS and Android applications using React Native. What you will learn * Build UI features and components using React Native * Create advanced animations for UI components * Develop universal apps that run on phones and tablets * Leverage Redux to manage application flow and data * Expose both custom native UI components and application logic to React Native * Employ open-source third-party plugins to create React Native apps more efficiently Who this book is for If you're a JavaScript developer looking for a practical guide with step-by-step tutorials for developing feature rich mobile apps using React Native, then this book is for you. Though not required, some experience working with React will help you more easily understand the React Native concepts covered in this book. While React Native development can be done on a Windows machine, certain aspects, such as running your apps on iOS devices and in the iOS simulator, or editing native code with Xcode, can only be done with a Mac.
Mastering Rust
Mastering Rust
Rahul Sharma
¥90.46
Become proficient in designing, developing and deploying effective software systems using the advanced constructs of Rust Key Features * Improve your productivity using the latest version of Rust and write simpler and easier code * Understand Rust’s immutability and ownership principle, expressive type system, safe concurrency * Deep dive into the new doamins of Rust like WebAssembly, Networking and Command line tools Book Description Rust is an empowering language that provides a rare combination of safety, speed, and zero-cost abstractions. Mastering Rust – Second Edition is filled with clear and simple explanations of the language features along with real-world examples, showing you how you can build robust, scalable, and reliable programs. This second edition of the book improves upon the previous one and touches on all aspects that make Rust a great language. We have included the features from latest Rust 2018 edition such as the new module system, the smarter compiler, helpful error messages, and the stable procedural macros. You’ll learn how Rust can be used for systems programming, network programming, and even on the web. You’ll also learn techniques such as writing memory-safe code, building idiomatic Rust libraries, writing efficient asynchronous networking code, and advanced macros. The book contains a mix of theory and hands-on tasks so you acquire the skills as well as the knowledge, and it also provides exercises to hammer the concepts in. After reading this book, you will be able to implement Rust for your enterprise projects, write better tests and documentation, design for performance, and write idiomatic Rust code. What you will learn * Write generic and type-safe code by using Rust’s powerful type system * How memory safety works without garbage collection * Know the different strategies in error handling and when to use them * Learn how to use concurrency primitives such as threads and channels * Use advanced macros to reduce boilerplate code * Create efficient web applications with the Actix-web framework * Use Diesel for type-safe database interactions in your web application Who this book is for The book is aimed at beginner and intermediate programmers who already have familiarity with any imperative language and have only heard of Rust as a new language. If you are a developer who wants to write robust, efficient and maintainable software systems and want to become proficient with Rust, this book is for you. It starts by giving a whirlwind tour of the important concepts of Rust and covers advanced features of the language in subsequent chapters using code examples that readers will find useful to advance their knowledge.
Learn Spring for Android Application Development
Learn Spring for Android Application Development
S. M. Mohi Us Sunnat
¥90.46
A hands-on guide to Android programming with Spring MVC, Spring Boot, and Spring Security Key Features * Build native Android applications with Spring for Android * Explore Reactive programming, concurrency, and multithreading paradigms for building fast and efficient applications * Write more expressive and robust code with Kotlin using its coroutines and other latest features Book Description As the new official language for Android, Kotlin is attracting new as well as existing Android developers. As most developers are still working with Java and want to switch to Kotlin, they find a combination of these two appealing. This book addresses this interest by bringing together Spring, a widely used Java SE framework for building enterprise-grade applications, and Kotlin. Learn Spring for Android Application Development will guide you in leveraging some of the powerful modules of the Spring Framework to build lightweight and robust Android apps using Kotlin. You will work with various modules, such as Spring AOP, Dependency Injection, and Inversion of Control, to develop applications with better dependency management. You’ll also explore other modules of the Spring Framework, such as Spring MVC, Spring Boot, and Spring Security. Each chapter has practice exercises at the end for you to assess your learning. By the end of the book, you will be fully equipped to develop Android applications with Spring technologies. What you will learn * Get to grips with the basics of the Spring Framework * Write web applications using the Spring Framework with Kotlin * Develop Android apps with Kotlin * Connect a RESTful web service with your app using Retrofilt * Understand JDBC, JPA, MySQL for Spring and SQLite Room for Android * Explore Spring Security fundamentals, Basic Authentication, and OAuth2 * Delve into Concurrency and Reactive programming using Kotlin * Develop testable applications with Spring and Android Who this book is for If you’re an aspiring Android developer or an existing developer who wants to learn how to use Spring to build robust Android applications in Kotlin, this book is for you. Though not necessary, basic knowledge of Spring will assist with understanding key concepts covered in this book.
Implementing AWS: Design, Build, and Manage your Infrastructure
Implementing AWS: Design, Build, and Manage your Infrastructure
Yohan Wadia
¥90.46
Work through exciting recipes to administer your AWS cloud Key Features * Build secure environments using AWS components and services * Explore core AWS features with real-world applications and best practices * Design and build Lambda functions using real-world examples Book Description With this Learning Path, you’ll explore techniques to easily manage applications on the AWS cloud. You’ll begin with an introduction to serverless computing, its advantages, and the fundamentals of AWS. The following chapters will guide you on how to manage multiple accounts by setting up consolidated billing, enhancing your application delivery skills, with the latest AWS services such as CodeCommit, CodeDeploy, and CodePipeline to provide continuous delivery and deployment, while also securing and monitoring your environment's workflow. It’ll also add to your understanding of the services AWS Lambda provides to developers. To refine your skills further, it demonstrates how to design, write, test, monitor, and troubleshoot Lambda functions. By the end of this Learning Path, you’ll be able to create a highly secure, fault-tolerant, and scalable environment for your applications. This Learning Path includes content from the following Packt products: * AWS Administration: The Definitive Guide, Second Edition by Yohan Wadia * AWS Administration Cookbook by Rowan Udell, Lucas Chan * Mastering AWS Lambda by Yohan Wadia, Udita Gupta What you will learn * Explore the benefits of serverless computing and applications * Deploy apps with AWS Elastic Beanstalk and Amazon Elastic File System * Secure environments with AWS CloudTrail, AWSConfig, and AWS Shield * Run big data analytics with Amazon EMR and Amazon Redshift * Back up and safeguard data using AWS Data Pipeline * Create monitoring and alerting dashboards using CloudWatch * Effectively monitor and troubleshoot serverless applications with AWS * Design serverless apps via AWS Lambda, DynamoDB, and API Gateway Who this book is for This Learning Path is specifically designed for IT system and network administrators, AWS architects, and DevOps engineers who want to effectively implement AWS in their organization and easily manage daily activities. Familiarity with Linux, web services, cloud computing platforms, virtualization, networking, and other administration-related tasks will assist in understanding the concepts in the book. Prior hands-on experience with AWS core services such as EC2, IAM, S3, and programming languages, such as Node.Js, Java, and C#, will also prove beneficial.
Mastering Distributed Tracing
Mastering Distributed Tracing
Yuri Shkuro
¥90.46
Understand how to apply distributed tracing to microservices-based architectures Key Features * A thorough conceptual introduction to distributed tracing * An exploration of the most important open standards in the space * A how-to guide for code instrumentation and operating a tracing infrastructure Book Description Mastering Distributed Tracing will equip you to operate and enhance your own tracing infrastructure. Through practical exercises and code examples, you will learn how end-to-end tracing can be used as a powerful application performance management and comprehension tool. The rise of Internet-scale companies, like Google and Amazon, ushered in a new era of distributed systems operating on thousands of nodes across multiple data centers. Microservices increased that complexity, often exponentially. It is harder to debug these systems, track down failures, detect bottlenecks, or even simply understand what is going on. Distributed tracing focuses on solving these problems for complex distributed systems. Today, tracing standards have developed and we have much faster systems, making instrumentation less intrusive and data more valuable. Yuri Shkuro, the creator of Jaeger, a popular open-source distributed tracing system, delivers end-to-end coverage of the field in Mastering Distributed Tracing. Review the history and theoretical foundations of tracing; solve the data gathering problem through code instrumentation, with open standards like OpenTracing, W3C Trace Context, and OpenCensus; and discuss the benefits and applications of a distributed tracing infrastructure for understanding, and profiling, complex systems. What you will learn * How to get started with using a distributed tracing system * How to get the most value out of end-to-end tracing * Learn about open standards in the space * Learn about code instrumentation and operating a tracing infrastructure * Learn where distributed tracing fits into microservices as a core function Who this book is for Any developer interested in testing large systems will find this book very revealing and in places, surprising. Every microservice architect and developer should have an insight into distributed tracing, and the book will help them on their way. System administrators with some development skills will also benefit. No particular programming language skills are required, although an ability to read Java, while non-essential, will help with the core chapters.
Mastering Microsoft Dynamics 365 Customer Engagement
Mastering Microsoft Dynamics 365 Customer Engagement
Deepesh Somani
¥90.46
A comprehensive guide packed with the latest features of Dynamics 365 for customer relationship management Key Features * Create efficient client-side apps and customized plugins that work seamlessly * Learn best practices from field experience to use Dynamics 365 efficiently * Unleash the power of Dynamics 365 to maximize your organization’s profits Book Description Microsoft Dynamics 365 is an all-in-one business management solution that's easy to use and adapt. It helps you connect your finances, sales, service, and operations to streamline business processes, improve customer interactions, and enable growth. This book gives you all the information you need to become an expert in MS Dynamics 365. This book starts with a brief overview of the functional features of Dynamics 365. You will learn how to create Word and Excel templates using CRM data to enable customized data analysis for your organization. This book helps you understand how to use Dynamics 365 as an XRM Framework, gain a deep understanding of client-side scripting in Dynamics 365, and create client-side applications using JavaScript and the Web API. In addition to this, you will discover how to customize Dynamics 365, and quickly move on to grasp the app structure, which helps you customize Dynamics 365 better. You will also learn how Dynamics 365 can be seamlessly embedded into various productivity tools to customize them for machine learning and contextual guidance. By the end of this book, you will have mastered utilizing Dynamics 365 features through real-world scenarios. What you will learn * Manage various divisions of your organization using Dynamics 365 customizations * Explore the XRM Framework and leverage its features * Provide an enhanced mobile and tablet experience * Develop client-side applications using JavaScript and the Web API * Understand how to develop plugins and workflows using Dynamics 365 * Explore solution framework improvements and new field types Who this book is for Mastering Microsoft Dynamics 365 Customer Engagement is for you if you have knowledge of Dynamics CRM and want to utilize the latest features of Dynamics 365. This book is also for you if you’re a skilled developer looking to move to the Microsoft stack to build business solution software. Extensive Dynamics CRM development experience will be beneficial to understand the concepts covered in this book.
Securing Network Infrastructure
Securing Network Infrastructure
Sairam Jetty
¥90.46
Plug the gaps in your network’s infrastructure with resilient network security models Key Features * Develop a cost-effective and end-to-end vulnerability management program * Explore best practices for vulnerability scanning and risk assessment * Understand and implement network enumeration with Nessus and Network Mapper (Nmap) Book Description Digitization drives technology today, which is why it’s so important for organizations to design security mechanisms for their network infrastructures. Analyzing vulnerabilities is one of the best ways to secure your network infrastructure. This Learning Path begins by introducing you to the various concepts of network security assessment, workflows, and architectures. You will learn to employ open source tools to perform both active and passive network scanning and use these results to analyze and design a threat model for network security. With a firm understanding of the basics, you will then explore how to use Nessus and Nmap to scan your network for vulnerabilities and open ports and gain back door entry into a network. As you progress through the chapters, you will gain insights into how to carry out various key scanning tasks, including firewall detection, OS detection, and access management to detect vulnerabilities in your network. By the end of this Learning Path, you will be familiar with the tools you need for network scanning and techniques for vulnerability scanning and network protection. This Learning Path includes content from the following Packt books: * Network Scanning Cookbook by Sairam Jetty * Network Vulnerability Assessment by Sagar Rahalkar What you will learn * Explore various standards and frameworks for vulnerability assessments and penetration testing * Gain insight into vulnerability scoring and reporting * Discover the importance of patching and security hardening * Develop metrics to measure the success of a vulnerability management program * Perform configuration audits for various platforms using Nessus * Write custom Nessus and Nmap scripts on your own * Install and configure Nmap and Nessus in your network infrastructure * Perform host discovery to identify network devices Who this book is for This Learning Path is designed for security analysts, threat analysts, and security professionals responsible for developing a network threat model for an organization. Professionals who want to be part of a vulnerability management team and implement an end-to-end robust vulnerability management program will also find this Learning Path useful.
Hands-On Enterprise Application Development with Python
Hands-On Enterprise Application Development with Python
Saurabh Badhwar
¥90.46
Architect scalable, reliable, and maintainable applications for enterprises with Python Key Features *Explore various Python design patterns used for enterprise software development *Apply best practices for testing and performance optimization to build stable applications *Learn about different attacking strategies used on enterprise applications and how to avoid them Book Description Dynamically typed languages like Python are continuously improving. With the addition of exciting new features and a wide selection of modern libraries and frameworks, Python has emerged as an ideal language for developing enterprise applications. Hands-On Enterprise Application Development with Python will show you how to build effective applications that are stable, secure, and easily scalable. The book is a detailed guide to building an end-to-end enterprise-grade application in Python. You will learn how to effectively implement Python features and design patterns that will positively impact your application lifecycle. The book also covers advanced concurrency techniques that will help you build a RESTful application with an optimized frontend. Given that security and stability are the foundation for an enterprise application, you’ll be trained on effective testing, performance analysis, and security practices, and understand how to embed them in your codebase during the initial phase. You’ll also be guided in how to move on from a monolithic architecture to one that is service oriented, leveraging microservices and serverless deployment techniques. By the end of the book, you will have become proficient at building efficient enterprise applications in Python. What you will learn *Understand the purpose of design patterns and their impact on application lifecycle *Build applications that can handle large amounts of data-intensive operations *Uncover advanced concurrency techniques and discover how to handle a large number of requests in production *Optimize frontends to improve the client-side experience of your application *Effective testing and performance profiling techniques to detect issues in applications early in the development cycle *Build applications with a focus on security *Implement large applications as microservices to improve scalability Who this book is for If you’re a developer who wants to build enterprise-grade applications, this book is for you. Basic to intermediate-level of programming experience with Python and database systems is required to understand the concepts covered in this book.