万本电子书0元读

万本电子书0元读

Apache Spark Quick Start Guide
Apache Spark Quick Start Guide
Shrey Mehrotra
¥54.49
A practical guide for solving complex data processing challenges by applying the best optimizations techniques in Apache Spark. Key Features * Learn about the core concepts and the latest developments in Apache Spark * Master writing efficient big data applications with Spark’s built-in modules for SQL, Streaming, Machine Learning and Graph analysis * Get introduced to a variety of optimizations based on the actual experience Book Description Apache Spark is a flexible framework that allows processing of batch and real-time data. Its unified engine has made it quite popular for big data use cases. This book will help you to get started with Apache Spark 2.0 and write big data applications for a variety of use cases. It will also introduce you to Apache Spark – one of the most popular Big Data processing frameworks. Although this book is intended to help you get started with Apache Spark, but it also focuses on explaining the core concepts. This practical guide provides a quick start to the Spark 2.0 architecture and its components. It teaches you how to set up Spark on your local machine. As we move ahead, you will be introduced to resilient distributed datasets (RDDs) and DataFrame APIs, and their corresponding transformations and actions. Then, we move on to the life cycle of a Spark application and learn about the techniques used to debug slow-running applications. You will also go through Spark’s built-in modules for SQL, streaming, machine learning, and graph analysis. Finally, the book will lay out the best practices and optimization techniques that are key for writing efficient Spark applications. By the end of this book, you will have a sound fundamental understanding of the Apache Spark framework and you will be able to write and optimize Spark applications. What you will learn * Learn core concepts such as RDDs, DataFrames, transformations, and more * Set up a Spark development environment * Choose the right APIs for your applications * Understand Spark’s architecture and the execution flow of a Spark application * Explore built-in modules for SQL, streaming, ML, and graph analysis * Optimize your Spark job for better performance Who this book is for If you are a big data enthusiast and love processing huge amount of data, this book is for you. If you are data engineer and looking for the best optimization techniques for your Spark applications, then you will find this book helpful. This book also helps data scientists who want to implement their machine learning algorithms in Spark. You need to have a basic understanding of any one of the programming languages such as Scala, Python or Java.
Generative Adversarial Networks Projects
Generative Adversarial Networks Projects
Kailash Ahirwar
¥81.74
Explore various Generative Adversarial Network architectures using the Python ecosystem Key Features * Use different datasets to build advanced projects in the Generative Adversarial Network domain * Implement projects ranging from generating 3D shapes to a face aging application * Explore the power of GANs to contribute in open source research and projects Book Description Generative Adversarial Networks (GANs) have the potential to build next-generation models, as they can mimic any distribution of data. Major research and development work is being undertaken in this field since it is one of the rapidly growing areas of machine learning. This book will test unsupervised techniques for training neural networks as you build seven end-to-end projects in the GAN domain. Generative Adversarial Network Projects begins by covering the concepts, tools, and libraries that you will use to build efficient projects. You will also use a variety of datasets for the different projects covered in the book. The level of complexity of the operations required increases with every chapter, helping you get to grips with using GANs. You will cover popular approaches such as 3D-GAN, DCGAN, StackGAN, and CycleGAN, and you’ll gain an understanding of the architecture and functioning of generative models through their practical implementation. By the end of this book, you will be ready to build, train, and optimize your own end-to-end GAN models at work or in your own projects. What you will learn * Train a network on the 3D ShapeNet dataset to generate realistic shapes * Generate anime characters using the Keras implementation of DCGAN * Implement an SRGAN network to generate high-resolution images * Train Age-cGAN on Wiki-Cropped images to improve face verification * Use Conditional GANs for image-to-image translation * Understand the generator and discriminator implementations of StackGAN in Keras Who this book is for If you’re a data scientist, machine learning developer, deep learning practitioner, or AI enthusiast looking for a project guide to test your knowledge and expertise in building real-world GANs models, this book is for you.
Hands-On RESTful API Design Patterns and Best Practices
Hands-On RESTful API Design Patterns and Best Practices
Harihara Subramanian
¥73.02
Build effective RESTful APIs for enterprise with design patterns and REST framework’s out-of-the-box capabilities Key Features * Understand advanced topics such as API gateways, API securities, and cloud * Implement patterns programmatically with easy-to-follow examples * Modernize legacy codebase using API connectors, layers, and microservices Book Description This book deals with the Representational State Transfer (REST) paradigm, which is an architectural style that allows networked devices to communicate with each other over the internet. With the help of this book, you’ll explore the concepts of service-oriented architecture (SOA), event-driven architecture (EDA), and resource-oriented architecture (ROA). This book covers why there is an insistence for high-quality APIs toward enterprise integration. It also covers how to optimize and explore endpoints for microservices with API gateways and touches upon integrated platforms and Hubs for RESTful APIs. You’ll also understand how application delivery and deployments can be simplified and streamlined in the REST world. The book will help you dig deeper into the distinct contributions of RESTful services for IoT analytics and applications. Besides detailing the API design and development aspects, this book will assist you in designing and developing production-ready, testable, sustainable, and enterprise-grade APIs. By the end of the book, you’ll be empowered with all that you need to create highly flexible APIs for next-generation RESTful services and applications. What you will learn * Explore RESTful concepts, including URI, HATEOAS, and Code on Demand * Study core patterns like Statelessness, Pagination, and Discoverability * Optimize endpoints for linked microservices with API gateways * Delve into API authentication, authorization, and API security implementations * Work with Service Orchestration to craft composite and process-aware services * Expose RESTful protocol-based APIs for cloud computing Who this book is for This book is primarily for web, mobile, and cloud services developers, architects, and consultants who want to build well-designed APIs for creating and sustaining enterprise-class applications. You’ll also benefit from this book if you want to understand the finer details of RESTful APIs and their design techniques along with some tricks and tips.
Hands-On Microservices with Rust
Hands-On Microservices with Rust
Denis Kolodin
¥81.74
A comprehensive guide in developing and deploying high performance microservices with Rust Key Features * Start your microservices journey and get a broader perspective on microservices development using RUST 2018, * Build, deploy, and test microservices using AWS * Explore advanced techniques for developing microservices such as actor model, Requests Routing, and threads Book Description Microservice architecture is sweeping the world as the de facto pattern for building web-based applications. Rust is a language particularly well-suited for building microservices. It is a new system programming language that offers a practical and safe alternative to C. This book describes web development using the Rust programming language and will get you up and running with modern web frameworks and crates with examples of RESTful microservices creation. You will deep dive into Reactive programming, and asynchronous programming, and split your web application into a set of concurrent actors. The book provides several HTTP-handling examples with manageable memory allocations. You will walk through stateless high-performance microservices, which are ideally suitable for computation or caching tasks, and look at stateful microservices, which are filled with persistent data and database interactions. As we move along, you will learn how to use Rust macros to describe business or protocol entities of our application and compile them into native structs, which will be performed at full speed with the help of the server's CPU. Finally, you will be taken through examples of how to test and debug microservices and pack them into a tiny monolithic binary or put them into a container and deploy them to modern cloud platforms such as AWS. What you will learn * Get acquainted with leveraging Rust web programming * Get to grips with various Rust crates, such as hyper, Tokio, and Actix * Explore RESTful microservices with Rust * Understand how to pack Rust code to a container using Docker * Familiarize yourself with Reactive microservices * Deploy your microservices to modern cloud platforms such as AWS Who this book is for This book is for developers who have basic knowledge of RUST, and want to learn how to build, test, scale, and manage RUST microservices. No prior experience of writing microservices in RUST is assumed.
Red Hat Enterprise Linux Server Cookbook
Red Hat Enterprise Linux Server Cookbook
William Leemans
¥90.46
Over 60 recipes to help you build, configure, and orchestrate RHEL 7 Server to make your everyday administration experience seamless About This Book Create fully unattended installations and deploy configurations without breaking a sweat Discover and kick-start the newest RHEL 7 configuration and management tools through an easy-to-follow, practical approach for a lazy system management Be guided by an experienced RHEL expert who is a certified Linux engineer with a passion for open source and open standards Who This Book Is For Red Hat Enterprise Linux Server Cookbook is for RHEL 7 system administrators and DevOps in need of a practical reference guide to troubleshoot common issues and quickly perform tasks. What You Will Learn Set up and configure RHEL 7 Server Use NetworkManager to configure all aspects of your network Manage virtual environments using libvirt Set up software repositories Secure and monitor your RHEL environment Configure SELinux, and create and apply its policies Create kickstart *s to automatically deploy RHEL 7 systems Use Orchestration and configuration management tools to manage your environment In Detail Dominating the server market, the Red Hat Enterprise Linux operating system gives you the support you need to modernize your infrastructure and boost your organization’s efficiency. Combining both stability and flexibility, RHEL helps you meet the challenges of today and adapt to the demands of tomorrow. This practical Cookbook guide will help you get to grips with RHEL 7 Server and automating its installation. Designed to provide targeted assistance through hands-on recipe guidance, it will introduce you to everything you need to know about KVM guests and deploying multiple standardized RHEL systems effortlessly. Get practical reference advice that will make complex networks setups look like child’s play, and dive into in-depth coverage of configuring a RHEL system. Also including full recipe coverage of how to set up, configuring, and troubleshoot SELinux, you’ll also discover how secure your operating system, as well as how to monitor it. Style and approach This practical guide is packed full of hands-on recipes that provide quick solutions to the problems faced when building your RHEL 7 system from scratch using orchestration tools. Each topic is explained sequentially in the process of setting up a system and binding everything together.
Building Minecraft Server Modifications - Second Edition
Building Minecraft Server Modifications - Second Edition
Cody M. Sommer
¥54.49
Create and customize your very own Minecraft server using Java and the Spigot API About This Book Set up a Minecraft server that you control Use object-oriented programming to modify Minecraft regardless of your level of experience This interactive guide will help you create a unique experience for you and your friends Who This Book Is For This book is great for anyone who is interested in customizing their Minecraft server. Whether you are new to programming, Java, Bukkit, or even Minecraft itself, this book has you covered. All you need is a valid Minecraft account. If you are interested in programming as a career or hobby, this book will get you started. If you are simply interested in playing Minecraft with your friends, then this book will help you make that experience even more enjoyable. What You Will Learn Install and run a Spigot server for free on your home PC Adjust the server settings to customize Minecraft to your liking Install an IDE and configure a project to write code Install and test plugins on a Spigot server Test your plugins through debugging the code Program in game commands and permissions Get to know advanced programming concepts such as event-driven programming, configuration files, saving/loading data, and scheduled tasks Implement configuration files to make your plugins customizable Save and load your plugin's data to persist across server restarts In Detail Minecraft is a sandbox game that allows you to play it in any way you want. Coupled with a multiplayer server powered by Spigot, you can customize the game even more! Using the Bukkit API, anyone interested in learning how to program can control their Minecraft world by developing server plugins. This book is a great introduction to software development through the wonderful world of Minecraft. We start by instructing you through how to set up your home PC for Minecraft server development. This includes an IDE complete with the required libraries as well as a Spigot server to test on. You will be guided through writing code for several different plugins. Each chapter teaches you new skills to create plugins of increasing complexity, and each plugin adds a new concept of the Bukkit API By the end of the book, you will have all the knowledge you need about the API to successfully create any type of plugin. You can then practice and build your Java skills through developing more mods for their server. Style and approach This hands-on guide is filled with interactive examples to help you modify Minecraft. Programming terms and concepts are explained along the way so even those who have never written code before can keep up.
OpenCV Android Programming By Example
OpenCV Android Programming By Example
Amgad Muhammad
¥54.49
Develop vision-aware and intelligent Android applications with the robust OpenCV library About This Book This is the most up-to-date book on OpenCV Android programming on the market at the moment. There is no direct competition for our title. Based on a technology that is increasing in popularity, proven by activity in forums related to this topic. This book uniquely covers applications such as the Panoramic viewer and Automatic Selfie, among others. Who This Book Is For If you are an Android developer and want to know how to implement vision-aware applications using OpenCV, then this book is definitely for you. It would be very helpful if you understand the basics of image processing and computer vision, but no prior experience is required What You Will Learn Identify and install all the elements needed to start building vision-aware Android applications Explore image representation, colored and gray scale Recognize and apply convolution operations and filtering to deal with noisy data Use different shape analysis techniques Extract and identify interest points in an image Understand and perform object detection Run native computer vision algorithms and gain performance boosts In Detail Starting from the basics of computer vision and OpenCV, we'll take you all the way to creating exciting applications. You will discover that, though computer vision is a challenging subject, the ideas and algorithms used are simple and intuitive, and you will appreciate the abstraction layer that OpenCV uses to do the heavy lifting for you. Packed with many examples, the book will help you understand the main data structures used within OpenCV, and how you can use them to gain performance boosts. Next we will discuss and use several image processing algorithms such as histogram equalization, filters, and color space conversion. You then will learn about image gradients and how they are used in many shape analysis techniques such as edge detection, Hough Line Transform, and Hough Circle Transform. In addition to using shape analysis to find things in images, you will learn how to describe objects in images in a more robust way using different feature detectors and de*ors. By the end of this book, you will be able to make intelligent decisions using the famous Adaboost learning algorithm. Style and approach An easy-to-follow tutorial packed with hands-on examples. Each topic is explained and placed in context, and the book supplies full details of the concepts used for added proficiency.
Maven Essentials
Maven Essentials
Prabath Siriwardena
¥45.77
Get started with the essentials of Apache Maven and get your build automation system up and running quickly About This Book Explore the essentials of Apache Maven essentials to arm yourself with all the ingredients needed to develop a comprehensive build automation system Identify the extension points in Apache Maven and learn more about them in-depth Improve developer productivity by optimizing the build process with best practices in Maven using this compact guide Who This Book Is For The book is ideal for for experienced developers who are already familiar with build automation, but want to learn how to use Maven and apply its concepts to the most difficult scenarios in build automation. What You Will Learn Comprehend the key concepts in Apache Maven Build your own custom plugins and get to know how Maven extension points are used Troubleshoot build issues with greater confidence Optimize Maven’s configuration settings Write custom lifecycles and extensions Get hands-on and create a Maven assembly Explore the best practices to design a build system that improves developer productivity In Detail Maven is the #1 build tool used by developers and it has been around for more than a decade. Maven stands out among other build tools due to its extremely extensible architecture, which is built on of the concept of convention over configuration. It’s widely used by many open source Java projects under Apache Software Foundation, Sourceforge, Google Code, and more. Maven Essentials is a fast-paced guide to show you the key concepts in Maven and build automation. We get started by introducing you to Maven and exploring its core concepts and architecture. Next, you will learn about and write a Project Object Model (POM) while creating your own Maven project. You will also find out how to create custom archetypes and plugins to establish the most common goals in build automation. After this, you’ll get to know how to design the build to prevent any maintenance nightmares, with proper dependency management. We then explore Maven build lifecycles and Maven assemblies. Finally, you will discover how to apply the best practices when designing a build system to improve developer productivity. Style and approach This book is a practical and compact guide that will show you how to use Apache Maven in an optimal way to address enterprise build requirements. It provides technical guidance to get you started with Maven and build automation.
Packet Analysis with Wireshark
Packet Analysis with Wireshark
Anish Nath
¥63.21
Leverage the power of Wireshark to troubleshoot your networking issues by using effective packet analysis techniques and performing improved protocol analysis About This Book Gain hands-on experience of troubleshooting errors in TCP/IP and SSL protocols through practical use cases Identify and overcome security flaws in your network to get a deeper insight into security analysis This is a fast-paced book that focuses on quick and effective packet captures through practical examples and exercises Who This Book Is For If you are a network or system administrator who wants to effectively capture packets, a security consultant who wants to audit packet flows, or a white hat hacker who wants to view sensitive information and remediate it, this book is for you. This book requires decoding skills and a basic understanding of networking. What You Will Learn Utilize Wireshark's advanced features to analyze packet captures Locate the vulnerabilities in an application server Get to know more about protocols such as DHCPv6, DHCP, DNS, SNMP, and HTTP with Wireshark Capture network packets with tcpdump and snoop with examples Find out about security aspects such as OS-level ARP scanning Set up 802.11 WLAN captures and discover more about the WAN protocol Enhance your troubleshooting skills by understanding practical TCP/IP handshake and state diagrams In Detail Wireshark provides a very useful way to decode an RFC and examine it. The packet captures displayed in Wireshark give you an insight into the security and flaws of different protocols, which will help you perform the security research and protocol debugging. The book starts by introducing you to various packet analyzers and helping you find out which one best suits your needs. You will learn how to use the command line and the Wireshark GUI to capture packets by employing filters. Moving on, you will acquire knowledge about TCP/IP communication and its use cases. You will then get an understanding of the SSL/TLS flow with Wireshark and tackle the associated problems with it. Next, you will perform analysis on application-related protocols. We follow this with some best practices to analyze wireless traffic. By the end of the book, you will have developed the skills needed for you to identify packets for malicious attacks, intrusions, and other malware attacks. Style and approach This is an easy-to-follow guide packed with illustrations and equipped with lab exercises to help you reproduce scenarios using a sample program and command lines.
Python GUI Programming Cookbook
Python GUI Programming Cookbook
Burkhard A. Meier
¥80.65
Over 80 object-oriented recipes to help you create mind-blowing GUIs in Python About This Book Use object-oriented programming to develop amazing GUIs in Python Create a working GUI project as a central resource for developing your Python GUIs Packed with easy-to-follow recipes to help you develop code using the latest released version of Python Who This Book Is For If you are a Python programmer with intermediate level knowledge of GUI programming and want to learn how to create beautiful, effective, and responsive GUIs using the freely available Python GUI frameworks, this book is for you. What You Will Learn Create amazing GUIs with Python’s built-in Tkinter module Customize the GUIs by using layout managers to arrange the GUI widgets Advance to an object-oriented programming style using Python Develop beautiful charts using the free Matplotlib Python module Use threading in a networked environment to make the GUIs responsive Discover ways to connect the GUIs to a database Understand how unit tests can be created and internationalize the GUI Extend the GUIs with free Python frameworks using best practices In Detail Python is a multi-domain, interpreted programming language. It is a widely used general-purpose, high-level programming language. It is often used as a *ing language because of its forgiving syntax and compatibility with a wide variety of different eco-systems. Its flexible syntax enables developers to write short *s while at the same time, they can use object-oriented concepts to develop very large projects. Python GUI Programming Cookbook follows a task-based approach to help you create beautiful and very effective GUIs with the least amount of code necessary. This book uses the simplest programming style, using the fewest lines of code to create a GUI in Python, and then advances to using object-oriented programming in later chapters. If you are new to object-oriented programming (OOP), this book will teach you how to take advantage of the OOP coding style in the context of creating GUIs written in Python. Throughout the book, you will develop an entire GUI application, building recipe upon recipe, connecting the GUI to a database. In the later chapters, you will explore additional Python GUI frameworks, using best practices. You will also learn how to use threading to ensure your GUI doesn’t go unresponsive. By the end of the book, you will be an expert in Python GUI programming to develop a common set of GUI applications. Style and approach Every recipe in this programming cookbook solves a problem you might encounter in your programming career. At the same time, most of the recipes build on each other to create an entire, real-life GUI application.
JavaScript Unlocked
JavaScript Unlocked
Dmitry Sheiko
¥54.49
Improve your code maintainability, performance, and security through practical expert insights and unlock the full potential of JavaScript About This Book Improve your JavaScript code for better maintainability and performance Discover how to implement scalable application architecture with JavaScript Learn to use JavaScript behind the browser, including its command-line tools, desktop apps, and native mobile apps Who This Book Is For JavaScript Unlocked is for those JS developers who want to see just how far they can push their favourite language through practical insight and techniques. What You Will Learn Make your code readable and expressive by using simple syntax of JavaScript Grasp existing JavaScript collections such as arrays and array-like objects Develop abstract data types in most effective way to extend JavaScript into a more flexible and powerful programming language Examine the pros and cons of JavaScript by implementing real-time code examples Flourish real-time mini-projects by using JavaScript on server side to develop desktop as well as mobile applications Work on parallel tasks with asynchronous JavaScript Improve code maintainability and readability and boost apps performance through JavaScript In Detail JavaScript stands bestride the world like a colossus. Having conquered web development, it now advances into new areas such as server *ing, desktop and mobile development, game *ing, and more. One of the most essential languages for any modern developer, the fully-engaged JavaScript programmer need to know the tricks, non-documented features, quirks, and best practices of this powerful, adaptive language. This all-practical guide is stuffed with code recipes and keys to help you unlock the full potential of JavaScript. Start by diving right into the core of JavaScript, with power user techniques for getting better maintainability and performance from the basic building blocks of your code. Get to grips with modular programming to bring real power to the browser, master client-side JavaScript *ing without jQuery or other frameworks, and discover the full potential of asynchronous coding. Do great things with HTML5 APIs, including building your first web component, tackle the essential requirements of writing large-scale applications, and optimize JavaScript’s performance behind the browser. Wrap up with in-depth advice and best practice for debugging and keeping your JavaScript maintainable for scaling, long-term projects. With every task demonstrated in both classic ES5 JavaScript and next generation ES6-7 versions of the language, Whether read cover-to-cover or dipped into for specific keys and recipes, JavaScript Unlocked is your essential guide for pushing JavaScript to its limits.Style and approachThis practice-oriented cookbook is packed full of code examples put in the form: problem, classical solution, and methods to optimize webpage in both JavaScript ES5 and ES6 language editions. But this thorough guide is best-suited to those who like to “learn by doing” as the topics are covered using real-life examples and tutorials.
Getting Started with React Native
Getting Started with React Native
Ethan Holmes
¥54.49
Learn to build modern native iOS and Android applications using JavaScript and the incredible power of React About This Book Learn to design and build a fully-featured application using the newest cutting-edge framework from Facebook Leverage your JavaScript skills to become a native app developer Develop custom UI components, implement smooth navigation, and access native features such as geolocation and local storage Who This Book Is For This book is for web developers who want to learn to build fast, good-looking, native mobile applications using the skills they already have. If you already have some JavaScript knowledge or are using React on the web, then you will be able to quickly get up and running with React Native for iOS and Android. What You Will Learn Set up the React Native environment on both devices and emulators Gain an in-depth understanding of how React Native works behind the scenes Write your own custom native UI components Learn the ins and outs of screen navigation Master the art of layout and styles Work with device-exclusive data such as geolocation Develop native modules in Objective-C and Java that interact with JavaScript Test and deploy your application for a production-ready environment In Detail React Native is a game-changing approach to hybrid mobile development. Web developers can leverage their existing skills to write mobile applications in JavaScript that are truly native without using cross-compilation or web views. These applications have all of the advantages of those written in Objective-C or Java, combined with the rapid development cycle that JavaScript developers are accustomed to. Web developers who want to develop native mobile applications face a high barrier to entry, because they are forced to learn platform-specific languages and frameworks. Numerous hybrid technologies have tried to simplify this process, but have failed to achieve the performance and appearance that users expect. This book will show you all the advantages of true native development that React Native has without the steep learning curve, leveraging the knowledge you already have. We do this by getting you up and running quickly with a sample application. Next, we’ll introduce you to the fundamentals of creating components and explain how React Native works under the hood. Once you have established a solid foundation, you will dive headfirst into developing a real-world application from start to finish. Along the way, we will demonstrate how to create multiple screens and navigate between them,use layout and style native UI components, and access native APIs such as local storage and geolocation. Finally, we tackle the advanced topic of Native modules, which demonstrates that there are truly no limits to what you can do with React Native. Style and approach This book provides a simple and easy way to build mobile applications in JavaScript. Each topic takes you through the life cycle of creating a fully-functional native app, with detailed explanations of the entire process.
LLVM Essentials
LLVM Essentials
Suyog Sarda
¥45.77
Become familiar with the LLVM infrastructure and start using LLVM libraries to design a compiler About This Book Learn to use the LLVM libraries to emit intermediate representation (IR) from high-level language Build your own optimization pass for better code generation Understand AST generation and use it in a meaningful way Who This Book Is For This book is intended for those who already know some of the concepts of compilers and want to quickly get familiar with the LLVM infrastructure and the rich set of libraries that it provides. What You Will Learn Get an introduction to LLVM modular design and LLVM tools Convert frontend code to LLVM IR Implement advanced LLVM IR paradigms Understand the LLVM IR Optimization Pass Manager infrastructure and write an optimization pass Absorb LLVM IR transformations Understand the steps involved in converting LLVM IR to Selection DAG Implement a custom target using the LLVM infrastructure Get a grasp of C’s frontend clang, an AST dump, and static analysis In Detail LLVM is currently the point of interest for many firms, and has a very active open source community. It provides us with a compiler infrastructure that can be used to write a compiler for a language. It provides us with a set of reusable libraries that can be used to optimize code, and a target-independent code generator to generate code for different backends. It also provides us with a lot of other utility tools that can be easily integrated into compiler projects. This book details how you can use the LLVM compiler infrastructure libraries effectively, and will enable you to design your own custom compiler with LLVM in a snap. We start with the basics, where you’ll get to know all about LLVM. We then cover how you can use LLVM library calls to emit intermediate representation (IR) of simple and complex high-level language paradigms. Moving on, we show you how to implement optimizations at different levels, write an optimization pass, generate code that is independent of a target, and then map the code generated to a backend. The book also walks you through CLANG, IR to IR transformations, advanced IR block transformations, and target machines. By the end of this book, you’ll be able to easily utilize the LLVM libraries in your own projects. Style and approach This book deals with topics sequentially, increasing the difficulty level in a step-by-step approach. Each topic is explained with a detailed example, and screenshots are included to help you understand the examples.
Swift 2 By Example
Swift 2 By Example
Giordano Scalzo
¥80.65
Create robust and extensible iOS apps using the advanced features of Swift 2 About This Book Get up to speed with the new features of Swift 2 by following the exhaustive examples in this book Specialize in developing real iOS apps, and 2D and 3D videogames using Swift and Cocoapods Learn how to build server API apps to feed your iOS client apps Who This Book Is For This book is ideal for those who want to learn to develop app in Swift, starting the right way. Whether you are an expert Objective-C programmer or are new to this platform, you’ll quickly grasp the code of real world apps, and discover how to use Swift effectively. Prior experience in development for Apple devices would be helpful, but is not mandatory. What You Will Learn Create a server in Swift to deliver JSON data to an iOS app Take advantage of Cocoapods to use third-party libraries Use a clean and effective architecture to decrease complexity and speed up development Take advantage of the most useful parts of the iOS SDK Build games with SpriteKit and SceneKit Develop an app running on the cloud to act as an API server for your client’s apps In Detail Swift is no longer the unripe language it was when launched by Apple at WWDC14, now it’s a powerful and ready-for-production programming language that has empowered most new released apps. Swift is a user-friendly language with a smooth learning curve; it is safe, robust, and really flexible. Swift 2 is more powerful than ever; it introduces new ways to solve old problems, more robust error handling, and a new programming paradigm that favours composition over inheritance. Swift 2 by Example is a fast-paced, practical guide to help you learn how to develop iOS apps using Swift. Through the development of seven different iOS apps and one server app, you’ll find out how to use either the right feature of the language or the right tool to solve a given problem. We begin by introducing you to the latest features of Swift 2, further kick-starting your app development journey by building a guessing game app, followed by a memory game. It doesn’t end there, with a few more apps in store for you: a to-do list, a beautiful weather app, two games: Flappy Swift and Cube Runner, and finally an ecommerce app to top everything off. By the end of the book, you’ll be able to build well-designed apps, effectively use AutoLayout, develop videogames, and build server apps. Style and approach These easy-to-follow tutorials show you how to build real-world apps. The difficulty and complexity level increases chapter by chapter. Each chapter is dedicated to build a new app, beginning from a basic and unstyled app through to a full 3D game. The last two chapters show you how to build a complete client-server ecommerce app right from scratch.
Raspberry Pi Computer Architecture Essentials
Raspberry Pi Computer Architecture Essentials
Andrew K. Dennis
¥71.93
Explore Raspberry Pi's architecture through innovative and fun projects About This Book Explore Raspberry Pi 2’s hardware through the Assembly, C/C++, and Python programming languages Experiment with connecting electronics up to your Raspberry Pi 2 and interacting with them through software Learn about the Raspberry Pi 2 architecture and Raspbian operating system through innovative projects Who This Book Is For Raspberry Pi Computer Architecture Essentials is for those who are new and those who are familiar with the Raspberry Pi. Each topic builds upon earlier ones to provide you with a guide to Raspberry Pi’s architecture. From the novice to the expert, there is something for everyone. A basic knowledge of programming and Linux would be helpful but is not required. What You Will Learn Set up your Raspberry Pi 2 and learn about its hardware Write basic programs in Assembly Language to learn about the ARM architecture Use C and C++ to interact with electronic components Find out about the Python language and how to use it to build web applications Interact with third-party microcontrollers Experiment with graphics and audio programming Expand Raspberry Pi 2’s storage mechanism by using external devices Discover Raspberry Pi 2’s GPIO pins and how to interact with them In Detail With the release of the Raspberry Pi 2, a new series of the popular compact computer is available for you to build cheap, exciting projects and learn about programming. In this book, we explore Raspberry Pi 2’s hardware through a number of projects in a variety of programming languages. We will start by exploring the various hardware components in detail, which will provide a base for the programming projects and guide you through setting up the tools for Assembler, C/C++, and Python. We will then learn how to write multi-threaded applications and Raspberry Pi 2’s multi-core processor. Moving on, you’ll get hands on by expanding the storage options of the Raspberry Pi beyond the SD card and interacting with the graphics hardware. Furthermore, you will be introduced to the basics of sound programming while expanding upon your knowledge of Python to build a web server. Finally, you will learn to interact with the third-party microcontrollers. From writing your first Assembly Language application to programming graphics, this title guides you through the essentials. Style and approach This book takes a step-by-step approach to exploring Raspberry Pi’s architecture through projects that build upon each other. Each project provides you with new information on how to interact with an aspect of the Raspberry Pi and Raspbian operating system, providing a well-rounded guide.
Extending SaltStack
Extending SaltStack
Joseph Hall
¥80.65
Extend the power of your infrastructure and applications with Salt modules About This Book Get the most up-to-date practical resource on writing new Salt modules and extending Salt Learn through use cases and encounter both commonly-used modules as well as advanced ones Effectively troubleshoot problems and hiccups encountered while building and putting modules to work Who This Book Is For This book is for both new and existing Salt developers who are looking to build and write new Salt modules. Some prior Python development experience is expected. What You Will Learn Understand the working of Salt's Loader system Write several of the most common types of Salt modules Interact between different kinds of modules and build new ones Submit open source modules upstream to the Salt project Make Salt interact with third-party services and applications In Detail Salt already ships with a very powerful set of tools, but that doesn't mean that they all suit your needs perfectly. By adding your own modules and enhancing existing ones, you can bring the functionality that you need to increase your productivity. Extending SaltStack follows a tutorial-based approach to explain different types of modules, from fundamentals to complete and full-functioning modules. Starting with the Loader system that drives Salt, this book will guide you through the most common types of modules. First you will learn how to write execution modules. Then you will extend the configuration using the grain, pillar, and SDB modules. Next up will be state modules and then the renderers that can be used with them. This will be followed with returner and output modules, which increase your options to manage return data. After that, there will be modules for external file servers, clouds, beacons, and finally external authentication and wheel modules to manage the master. With this guide in hand, you will be prepared to create, troubleshoot, and manage the most common types of Salt modules and take your infrastructure to new heights! Style and approach This book follows a step-by-step tutorial-based approach explaining the different types of modules, from fundamentals to complete and full-functioning modules.
Learning Responsive Data Visualization
Learning Responsive Data Visualization
Christoph K?rner
¥80.65
Master the art of building responsive visualizations on the Web About This Book Learn the techniques for building data visualizations that work well for all screen sizes Implement responsive techniques with popular libraries to get to grips with building responsive visualizations that work in the real world Incorporate responsive workflow in your data visualization process to build visualizations that take a mobile-first approach. Who This Book Is For Web developers and data science professionals who want to make their visualizations work for smaller screen sizes. Some basic knowledge of JavaScript and Data visualization is expected. What You Will Learn Get familiar with responsive design for data visualizations Understand the main concepts of D3.js to create interactive visualizations Unleash the power of Bootstrap to create stunning and responsive visualizations for all screen resolutions Implement Touch and Mouse interactions for mobile-first applications Design Transitions and Animations that impress in portrait and landscape Build a Responsive World Map using GeoJSON and D3.js In Detail Using D3.js and Responsive Design principles, you will not just be able to implement visualizations that look and feel awesome across all devices and screen resolutions, but you will also boost your productivity and reduce development time by making use of Bootstrap—the most popular framework for developing responsive web applications. This book teaches the basics of scalable vector graphics (SVG), D3.js, and Bootstrap while focusing on Responsive Design as well as mobile-first visualizations; the reader will start by discovering Bootstrap and how it can be used for creating responsive applications, and then implement a basic bar chart in D3.js. You will learn about loading, parsing, and filtering data in JavaScript and then dive into creating a responsive visualization by using Media Queries, responsive interactions for Mobile and Desktop devices, and transitions to bring the visualization to life. In the following chapters, we build a fully responsive interactive map to display geographic data using GeoJSON and set up integration testing with Protractor to test the application across real devices using a mobile API gateway such as AWS Device Farm. You will finish the journey by discovering the caveats of mobile-first applications and learn how to master cross-browser complications. Style and approach As the world shifts to mobile devices for consuming data on the Web, developers are faced with the unique challenge of making data visualizations work for their smaller screens. The growth of responsive web design enabled developers to adopt page layouts and media for smaller screens, but there is still little information available on how to adapt data visualizations for the smaller screens. This book fills this important gap and shows how responsive web design principles can be extended to create visualizations that work well regardless of the screen size, thereby allowing developers to build user-friendly visualizations that work well on all devices. In addition to covering some of the popular techniques and design patterns for building responsive visualizations, the book also shows readers how to implement these techniques with the help of some popular tools and libraries.
Learning SQLite for iOS
Learning SQLite for iOS
Gene Da Rocha, MSc, BSc (Hons)
¥54.49
Extend SQLite with mobile development skills to build great apps for iOS devices About This Book Implement Swift code using SQLite statements Learn the background to SQL and SQLite for mobile development, its statements, and command features through practical examples Extend the standard SQLite functionality and increase your software creation portfolio Who This Book Is For This book is intended for those who want to learn about SQLite and how to develop apps in Swift or HTML5 using SQLite. Whether you are an expert Objective-C programmer or new to this platform, you'll learn quickly, grasping the code in real-world apps to use Swift. What You Will Learn Explore Swift's basic language statements Connect to SQLite and execute SQL statements Extend the SQLite language to create your own software extensions Use HTML5 with Phonegap on iOS Set up a Swift project using XCode with SQLite Administer SQLite databases in an easy and effective way In Detail The ability to use SQLite with iOS provides a great opportunity to build amazing apps. Apple's iOS SDK provides native support for SQLite databases. This combination offers the potential to create powerful, data-persistent applications. This book starts with the architecture of SQLite database and introduces you to concepts in SQL . You will find yourself equipped to design your own database system, administer it, and maintain it. Further, you will learn how to operate your SQLite databases smoothly using SQL commands. You will be able to extend the functionality of SQLite by using its vast arsenal of C API calls to build some interesting, exciting, new, and intelligent data-driven applications. Understand how Xcode, HTML5, and Phonegap can be used to build a cross-platform modern app which can benefit from all these technologies - all through creating a complete, customizable application skeleton that you can build on for your own apps. Style and approach This book is a practical and comprehensive guide to developing applications using SQLite and iOS.
jQuery Mobile Web Development Essentials - Third Edition
jQuery Mobile Web Development Essentials - Third Edition
Raymond Camden
¥80.65
Build a powerful and practical jQuery-based framework in order to create mobile-optimized websites About This Book Build websites with jQuery Mobile that work beautifully across a wide range of mobile devices Become a competent jQuery Mobile developer and learn the building blocks of jQuery Mobile’s component-driven design This book covers key concepts but with a focus on providing the practical skills required Who This Book Is For This book is for any web developer who is looking to create mobile-optimized websites. Basic knowledge of HTML is required. Minor familiarity with JavaScript would help but is not required. What You Will Learn Create mobile-optimized sites using simple HTML Structure your sites so users can browse them on mobile devices Find out how to work with multiple pages in the JQM framework and embed multiple pages in HTML files Enhance simple pages using various toolbars Include mobile-optimized forms for interactive sites Convert desktop sites into mobile versions Use HTML5’s local storage feature in jQuery Mobile to include persistent client-side storage Explore the rich sets of widgets and themes available and discover how to modify them for use in your jQuery Mobile site In Detail jQuery Mobile is a HTML5-based touch-optimized web framework. jQuery Mobile can be used to build responsive cross-platform websites and apps for a wide range of smartphones, tablets, and desktop devices. The jQuery Mobile framework can be integrated with other mobile app frameworks such as PhoneGap, IBM Worklight, and more. Introduction to jQuery Mobile explains how to add the framework to your HTML pages to create rich, mobile-optimized web pages with minimal effort. You’ll learn how to use jQuery Mobile’s automatic enhancements and configure the framework for customized, powerful mobile-friendly websites. We then dig into forms, events, and styling. You'll see how jQuery Mobile automatically enhances content, and will find out how to use the JavaScript API to build complex sites. We’ll introduce you to how jQuery Mobile can be themed as well looking into how JavaScript can be used for deep sets of customizations. The examples are ready to run and can be used to help kick-start your own site. Along the way, you will leverage all the concepts you learn to build three sample mobile applications. Style and approach Through a set of easy to follow instructions, we’ll show you how to use jQuery Mobile’s features one easy-to-use widget at a time. You’ll see examples for each feature as well as screenshots to demonstrate what they should look like on a mobile device. You can then take these example files and modify them as you learn to experiment.
OpenLayers 3.x Cookbook - Second Edition
OpenLayers 3.x Cookbook - Second Edition
Peter J. Langley
¥80.65
Over 50 comprehensive recipes to help you create spectacular maps with OpenLayers 3 About This Book Create highly customized mapping apps for the web with rich interactivity and diverse content using JavaScript See how successful mapping apps work and how they integrate with third-party services Packed full of code examples, screenshots, and explanations from professionals in the industry Who This Book Is For If you are a GIS-related professional with basic knowledge of web technologies and want to gain in-depth knowledge of creating web mapping applications, then this book is for you. The recipes will be appropriately mixed to suit JavaScript beginners or experts and cover basic to advanced topics on OpenLayers. What You Will Learn Create stunning maps, and understand projection. Add customized raster and vector layers Work with important tile providers Work with OGCs, WMS, and WFS compliant servers Read/write features from/to different data sources Style features to improve their visualization Understand events and work with the main controls Enhance maps with HTML5 technologies such as Geolocation In Detail Data visualization and analytics has become an important task across all technology-based industries. OpenLayers 3,is one of the most important and complete open source JavaScript mapping libraries today. Throughout this book, you will go through recipes that expose various features of OpenLayers 3, allowing you to gain an insight into building complex GIS web applications. You’ll get to grips with the basics of creating a map with common functionality and quickly advance to more complicated solutions that address modern challenges. You will explore into maps, raster and vector layers and styling in-depth. This book also includes problem solving and how-to recipes for the most common and important tasks. The range of recipes includes: creating basic maps, working with raster and vector layers, understanding events,working with the main controls, reading features from different data sources, styling features, and understanding the underlying architecture. It will also cover solutions and optimizations to challenges commonly faced in modern applications. Style and approach This book teaches you how to create stunning maps that are highly interactive and visually appealing with the help of 50 handpicked recipes. Each recipe will address your need to visualize data on a map. Just follow the steps in the recipes to create maps of your choice in no time.
Mastering Clojure
Mastering Clojure
Akhil Wali
¥90.46
Understand the philosophy of the Clojure language and dive into its inner workings to unlock its advanced features, methodologies, and constructs About This Book Learn to handle data using sequences, reducers, and transducers in Clojure Explore the lesser known and more advanced features, constructs, and methodologies of the Clojure language and its ecosystem, such as asynchronous channels, actors, logic programming, and reactive programming Sharpen your Clojure skills through illustrative and comprehensive examples Who This Book Is For If you’re looking to learn more about the core libraries and dive deep into the Clojure language, then this book is ideal for you. Prior knowledge of the Clojure language is required. What You Will Learn Maximize the impact of parallelization, functional composition, and process transformation by composing reducers and transducers Process and manipulate data using sequences, reducers, and transducers in Clojure Modify and add features to the Clojure language using macros Explore the features of category theory and custom data sources for logic programming in Clojure Orchestrate parallelism and concurrency using built-in primitives as well as community libraries in Clojure Handle data with asynchronous and reactive programming methodologies and leverage it using the core.async library Test your code with unit tests, specs, and type checks to write testable code Troubleshoot and style your Clojure code to make it more maintainable In Detail Clojure is a general-purpose language from the Lisp family with an emphasis on functional programming. It has some interesting concepts and features such as immutability, gradual typing, thread-safe concurrency primitives, and macro-based metaprogramming, which makes it a great choice to create modern, performant, and scalable applications. Mastering Clojure gives you an insight into the nitty-gritty details and more advanced features of the Clojure programming language to create more scalable, maintainable, and elegant applications. You’ll start off by learning the details of sequences, concurrency primitives, and macros. Packed with a lot of examples, you’ll get a walkthrough on orchestrating concurrency and parallelism, which will help you understand Clojure reducers, and we’ll walk through composing transducers so you know about functional composition and process transformation inside out. We also explain how reducers and transducers can be used to handle data in a more performant manner. Later on, we describe how Clojure also supports other programming paradigms such as pure functional programming and logic programming. Furthermore, you’ll level up your skills by taking advantage of Clojure's powerful macro system. Parallel, asynchronous, and reactive programming techniques are also described in detail. Lastly, we’ll show you how to test and troubleshoot your code to speed up your development cycles and allow you to deploy the code faster. Style and approach This is an easy-to-follow project-based guide that throws you directly into the excitement of Clojure code. Mastering Clojure is for anyone who is interested in expanding their knowledge of language features and advanced functional programming.