
Mastering Embedded Linux Programming
¥90.46
Harness the power of Linux to create versatile and robust embedded solutions About This Book Create efficient and secure embedded devices using Linux Minimize project costs by using open source tools and programs Explore each component technology in depth, using sample implementations as a guide Who This Book Is For This book is ideal for Linux developers and system programmers who are already familiar with embedded systems and who want to know how to create best-in-class devices. A basic understanding of C programming and experience with systems programming is needed. What You Will Learn Understand the role of the Linux kernel and select an appropriate role for your application Use Buildroot and Yocto to create embedded Linux systems quickly and efficiently Create customized bootloaders using U-Boot Employ perf and ftrace to identify performance bottlenecks Understand device trees and make changes to accommodate new hardware on your device Write applications that interact with Linux device drivers Design and write multi-threaded applications using POSIX threads Measure real-time latencies and tune the Linux kernel to minimize them In Detail Mastering Embedded Linux Programming takes you through the product cycle and gives you an in-depth de*ion of the components and options that are available at each stage. You will begin by learning about toolchains, bootloaders, the Linux kernel, and how to configure a root filesystem to create a basic working device. You will then learn how to use the two most commonly used build systems, Buildroot and Yocto, to speed up and simplify the development process. Building on this solid base, the next section considers how to make best use of raw NAND/NOR flash memory and managed flash eMMC chips, including mechanisms for increasing the lifetime of the devices and to perform reliable in-field updates. Next, you need to consider what techniques are best suited to writing applications for your device. We will then see how functions are split between processes and the usage of POSIX threads, which have a big impact on the responsiveness and performance of the final device The closing sections look at the techniques available to developers for profiling and tracing applications and kernel code using perf and ftrace. Style and approach This book is an easy-to-follow and pragmatic guide consisting of an in-depth analysis of the implementation of embedded devices. Each topic has a logical approach to it; this coupled with hints and best practices helps you understand embedded Linux better.

Banana Pro Blueprints
¥90.46
Leverage the capability of Banana Pi with exciting real-world projects About This Book Delve into the expanse of Banana Pi’s self-managing functionalities and develop real-world projects Gain hands-on experience of developing various wireless, multimedia, robotic, and sensor-based applications with Banana Pi Develop your applications using Banana Pi through a project-based approach Who This Book Is For This book is designed for those who are interested in exploring the capabilities of Banana Pro. Basic know-how of Linux and embedded systems would be an added advantage. What You Will Learn Remotely connect to Banana Pro and program the embedded board Use Banana Pro as a hotspot or provide an AirPlay server for wireless audio transmission Find out about the different programming languages that can be used with Banana Pro Build and program your own multimedia centre in order to watch television and movies Connect peripherals such as a camera, LCD, or hard disk to Banana Pro Manage and regulate your Linux system with Banana Pro Stream music wirelessly from your mobile phone to Banana Pro In Detail This book follows a tactical plan that will guide you through the implementation of Banana Pro and its configurations. You will then learn the various programming languages used with Banana Pi with the help of examples. In no time at all, you’ll be working on a wireless project that implements AirPlay servers, hotspots, and so on. Following this, you’ll develop a retro-style arcade kiosk game. Then we’ll move on to explore the multimedia features of Banana Pro by designing and building an enclosure for it. After this, you’ll learn to build a remote-controlled smart car and we’ll examine how to control a robotic arm. The book will conclude with the creation of a home sensor system that has the ability to expand or shrink to suit any home. Style and approach This book follows a project-based approach that covers the most important features of Banana Pro. Every chapter dives into the practical side of the implementation.

Android Programming for Beginners
¥90.46
Learn all the Java and Android skills you need to start making powerful mobile applications About This Book Kick-start your Android programming career, or just have fun publishing apps to the Google Play marketplace A first-principles introduction to Java, via Android, which means you’ll be able to start building your own applications from scratch Learn by example and build three real-world apps and over 40 mini apps throughout the book Who This Book Is For Are you trying to start a career in programming, but haven’t found the right way inDo you have a great idea for an app, but don’t know how to make it a realityOr maybe you’re just frustrated that “to learn Android, you must know java.” If so, Android Programming for Beginners is for you. You don’t need any programming experience to follow along with this book, just a computer and a sense of adventure. What You Will Learn Master the fundamentals of coding Java for Android Install and set up your Android development environment Build functional user interfaces with the Android Studio visual designer Add user interaction, data captures, sound, and animation to your apps Manage your apps’ data using the built-in Android SQLite database Find out about the design patterns used by professionals to make top-grade applications Build, deploy, and publish real Android applications to the Google Play marketplace In Detail Android is the most popular OS in the world. There are millions of devices accessing tens of thousands of applications. It is many people's entry point into the world of technology; it is an operating system for everyone. Despite this, the entry-fee to actually make Android applications is usually a computer science degree, or five years’ worth of Java experience. Android Programming for Beginners will be your companion to create Android applications from scratch—whether you’re looking to start your programming career, make an application for work, be reintroduced to mobile development, or are just looking to program for fun. We will introduce you to all the fundamental concepts of programming in an Android context, from the Java basics to working with the Android API. All examples are created from within Android Studio, the official Android development environment that helps supercharge your application development process. After this crash-course, we’ll dive deeper into Android programming and you’ll learn how to create applications with a professional-standard UI through fragments, make location-aware apps with Google Maps integration, and store your user’s data with SQLite. In addition, you’ll see how to make your apps multilingual, capture images from a device’s camera, and work with graphics, sound, and animations too. By the end of this book, you’ll be ready to start building your own custom applications in Android and Java. Style and approach With more than 40 mini apps to code and run, Android Programming for Beginners is a hands-on guide to learning Android and Java. Each example application demonstrates a different aspect of Android programming. Alongside these mini apps, we push your abilities by building three larger applications to demonstrate Android application development in context.

Julia for Data Science
¥90.46
Explore the world of data science from scratch with Julia by your side About This Book An in-depth exploration of Julia's growing ecosystem of packages Work with the most powerful open-source libraries for deep learning, data wrangling, and data visualization Learn about deep learning using Mocha.jl and give speed and high performance to data analysis on large data sets Who This Book Is For This book is aimed at data analysts and aspiring data scientists who have a basic knowledge of Julia or are completely new to it. The book also appeals to those competent in R and Python and wish to adopt Julia to improve their skills set in Data Science. It would be beneficial if the readers have a good background in statistics and computational mathematics. What You Will Learn Apply statistical models in Julia for data-driven decisions Understanding the process of data munging and data preparation using Julia Explore techniques to visualize data using Julia and D3 based packages Using Julia to create self-learning systems using cutting edge machine learning algorithms Create supervised and unsupervised machine learning systems using Julia. Also, explore ensemble models Build a recommendation engine in Julia Dive into Julia’s deep learning framework and build a system using Mocha.jl In Detail Julia is a fast and high performing language that's perfectly suited to data science with a mature package ecosystem and is now feature complete. It is a good tool for a data science practitioner. There was a famous post at Harvard Business Review that Data Scientist is the sexiest job of the 21st century. (https://hbr.org/2012/10/data-scientist-the-sexiest-job-of-the-21st-century). This book will help you get familiarised with Julia's rich ecosystem, which is continuously evolving, allowing you to stay on top of your game. This book contains the essentials of data science and gives a high-level overview of advanced statistics and techniques. You will dive in and will work on generating insights by performing inferential statistics, and will reveal hidden patterns and trends using data mining. This has the practical coverage of statistics and machine learning. You will develop knowledge to build statistical models and machine learning systems in Julia with attractive visualizations. You will then delve into the world of Deep learning in Julia and will understand the framework, Mocha.jl with which you can create artificial neural networks and implement deep learning. This book addresses the challenges of real-world data science problems, including data cleaning, data preparation, inferential statistics, statistical modeling, building high-performance machine learning systems and creating effective visualizations using Julia. Style and approach This practical and easy-to-follow yet comprehensive guide will get you learning about Julia with respect to data science. Each topic is explained thoroughly and placed in context. For the more inquisitive, we dive deeper into the language and its use case. This is the one true guide to working with Julia in data science.

Haskell High Performance Programming
¥90.46
Boost the performance of your Haskell applications using optimization, concurrency, and parallel programming About This Book Explore the benefits of lazy evaluation, compiler features, and tools and libraries designed for high performance Write fast programs at extremely high levels of abstraction Work through practical examples that will help you address the challenges of writing efficient code Who This Book Is For To get the most out of this book, you need to have a working knowledge of reading and writing basic Haskell. No knowledge of performance, optimization, or concurrency is required. What You Will Learn Program idiomatic Haskell that's also surprisingly efficient Improve performance of your code with data parallelism, inlining, and strictness annotations Profile your programs to identify space leaks and missed opportunities for optimization Find out how to choose the most efficient data and control structures Optimize the Glasgow Haskell Compiler and runtime system for specific programs See how to smoothly drop to lower abstractions wherever necessary Execute programming for the GPU with Accelerate Implement programming to easily scale to the cloud with Cloud Haskell In Detail Haskell, with its power to optimize the code and its high performance, is a natural candidate for high performance programming. It is especially well suited to stacking abstractions high with a relatively low performance cost. This book addresses the challenges of writing efficient code with lazy evaluation and techniques often used to optimize the performance of Haskell programs. We open with an in-depth look at the evaluation of Haskell expressions and discuss optimization and benchmarking. You will learn to use parallelism and we'll explore the concept of streaming. We’ll demonstrate the benefits of running multithreaded and concurrent applications. Next we’ll guide you through various profiling tools that will help you identify performance issues in your program. We’ll end our journey by looking at GPGPU, Cloud and Functional Reactive Programming in Haskell. At the very end there is a catalogue of robust library recommendations with code samples. By the end of the book, you will be able to boost the performance of any app and prepare it to stand up to real-world punishment. Style and approach This easy-to-follow guide teaches new practices and techniques to optimize your code, and then moves towards more advanced ways to effectively write efficient Haskell code. Small and simple practical examples will help you test the concepts yourself, and you will be able to easily adapt them for any application.

Practical Data Analysis - Second Edition
¥90.46
A practical guide to obtaining, transforming, exploring, and analyzing data using Python, MongoDB, and Apache Spark About This Book Learn to use various data analysis tools and algorithms to classify, cluster, visualize, simulate, and forecast your data Apply Machine Learning algorithms to different kinds of data such as social networks, time series, and images A hands-on guide to understanding the nature of data and how to turn it into insight Who This Book Is For This book is for developers who want to implement data analysis and data-driven algorithms in a practical way. It is also suitable for those without a background in data analysis or data processing. Basic knowledge of Python programming, statistics, and linear algebra is assumed. What You Will Learn Acquire, format, and visualize your data Build an image-similarity search engine Generate meaningful visualizations anyone can understand Get started with analyzing social network graphs Find out how to implement sentiment text analysis Install data analysis tools such as Pandas, MongoDB, and Apache Spark Get to grips with Apache Spark Implement machine learning algorithms such as classification or forecasting In Detail Beyond buzzwords like Big Data or Data Science, there are a great opportunities to innovate in many businesses using data analysis to get data-driven products. Data analysis involves asking many questions about data in order to discover insights and generate value for a product or a service. This book explains the basic data algorithms without the theoretical jargon, and you’ll get hands-on turning data into insights using machine learning techniques. We will perform data-driven innovation processing for several types of data such as text, Images, social network graphs, documents, and time series, showing you how to implement large data processing with MongoDB and Apache Spark. Style and approach This is a hands-on guide to data analysis and data processing. The concrete examples are explained with simple code and accessible data.

Modular Programming with PHP 7
¥90.46
Utilize the power of modular programming to improve code readability, maintainability, and testability About This Book This book demonstrates code reusability and distributed development to get high speed, maintainable, and fast applications It illustrates the development of a complete modular application developed using PHP7 in detail This book provides a high-level overview of the Symfony framework, a set of tools and a development methodology that are needed to build a modular web shop application Who This Book Is For This step-by-step guide is divided into two sections. The first section explores all the fundamentals of modular design technique with respect to PHP 7. The latter section demonstrates the practical development of individual modules of a web shop application. What You Will Learn Discover the new features of PHP 7 that are relevant to modular application development Write manageable code based on the GoF design patterns and SOLID principles Define the application requirements of a working modular application Explore the ins and outs of the Symfony framework Build a set of modules based on the Symfony framework that comprise a simple web shop app Use core modules to set the structure and dependencies for other modules to use Set up entities that are relevant to the module functionality and see how to manage these entities In Detail Modular design techniques help you build readable, manageable, reusable, and more efficient codes. PHP 7, which is a popular open source *ing language, is used to build modular functions for your software. With this book, you will gain a deep insight into the modular programming paradigm and how to achieve modularity in your PHP code. We start with a brief introduction to the new features of PHP 7, some of which open a door to new concepts used in modular development. With design patterns being at the heart of all modular PHP code, you will learn about the GoF design patterns and how to apply them. You will see how to write code that is easy to maintain and extend over time with the help of the SOLID design principles. Throughout the rest of the book, you will build different working modules of a modern web shop application using the Symfony framework, which will give you a deep understanding of modular application development using PHP 7. Style and approach This book is for intermediate-level PHP developers with little to no knowledge of modular programming who want to understand design patterns and principles in order to better utilize the existing frameworks for modular application development.

C++ Windows Programming
¥90.46
Develop real-world applications in Windows. About This Book Create diverse applications featuring the versatility of Small Windows C++ library Learn about object-oriented programming in Windows and how to develop a large object-oriented class library in C++ Understand how to tackle application-specific problems along with acquiring a deep understanding of the workings of Windows architecture Who This Book Is For This book is for application developers who want a head-first approach into Windows programming. It will teach you how to develop an object-oriented class library in C++ and enhanced applications in Windows. Basic knowledge of C++ and the object-oriented framework is assumed to get the most out of this book. What You Will Learn Develop advanced real-world applications in Windows Design and implement a graphical object-oriented class library in C++ Get to grips with the workings of the integral aspects of the Win32 API, such as mouse input, drawing, cut-and-paste, file handling, and drop files Identify general problems when developing graphical applications as well as specific problems regarding drawing, spreadsheet, and word processing applications Implement classes, functions, and macros of the object-oriented class library developed in the book and how we implement its functionality by calling functions and macros in the Win32 API In Detail It is critical that modern developers have the right tools to build practical, user-friendly, and efficient applications in order to compete in today’s market. Through hands-on guidance, this book illustrates and demonstrates C++ best practices and the Small Windows object-oriented class library to ease your development of interactive Windows applications. Begin with a focus on high level application development using Small Windows. Learn how to build four real-world applications which focus on the general problems faced when developing graphical applications. Get essential troubleshooting guidance on drawing, spreadsheet, and word processing applications. Finally finish up with a deep dive into the workings of the Small Windows class library, which will give you all the insights you need to build your own object-oriented class library in C++. Style and approach This book takes a tutorial-style approach that will demonstrate the features of a C++ object-oriented library by developing interactive Windows applications.

Mobile Forensics – Advanced Investigative Strategies
¥90.46
Master powerful strategies to acquire and analyze evidence from real-life scenarios About This Book A straightforward guide to address the roadblocks face when doing mobile forensics Simplify mobile forensics using the right mix of methods, techniques, and tools Get valuable advice to put you in the mindset of a forensic professional, regardless of your career level or experience Who This Book Is For This book is for forensic analysts and law enforcement and IT security officers who have to deal with digital evidence as part of their daily job. Some basic familiarity with digital forensics is assumed, but no experience with mobile forensics is required. What You Will Learn Understand the challenges of mobile forensics Grasp how to properly deal with digital evidence Explore the types of evidence available on iOS, Android, Windows, and BlackBerry mobile devices Know what forensic outcome to expect under given circumstances Deduce when and how to apply physical, logical, over-the-air, or low-level (advanced) acquisition methods Get in-depth knowledge of the different acquisition methods for all major mobile platforms Discover important mobile acquisition tools and techniques for all of the major platforms In Detail Investigating digital media is impossible without forensic tools. Dealing with complex forensic problems requires the use of dedicated tools, and even more importantly, the right strategies. In this book, you’ll learn strategies and methods to deal with information stored on smartphones and tablets and see how to put the right tools to work. We begin by helping you understand the concept of mobile devices as a source of valuable evidence. Throughout this book, you will explore strategies and "plays" and decide when to use each technique. We cover important techniques such as seizing techniques to shield the device, and acquisition techniques including physical acquisition (via a USB connection), logical acquisition via data backups, over-the-air acquisition. We also explore cloud analysis, evidence discovery and data analysis, tools for mobile forensics, and tools to help you discover and analyze evidence. By the end of the book, you will have a better understanding of the tools and methods used to deal with the challenges of acquiring, preserving, and extracting evidence stored on smartphones, tablets, and the cloud. Style and approach This book takes a unique strategy-based approach, executing them on real-world scenarios. You will be introduced to thinking in terms of "game plans," which are essential to succeeding in analyzing evidence and conducting investigations.

Android High Performance Programming
¥90.46
Build fast and efficient Android apps that run as reliably as clockwork in a multi-device world About This Book . Wide coverage of various topics that help in developing optimal applications . Explore the concepts of Advanced Native Coding in depth . A must-have for professional-standard Android developers for whom performance failures and the sloppy use of resources are simply unacceptable Who This Book Is For This book is aimed at developers with an advanced knowledge of Android and who want to test their skills and learn new techniques to increase the performance of their applications. We assume they are comfortable working with the entire Android SDK, and have been doing it for a few years. They need to be familiar with frameworks such as NDK to use native code, which is crucial for app performance What You Will Learn . Create Android applications that squeeze the most from the limited resource capacity of devices . Swap code that isn’t performing . Efficient memory management by identifying problems such as leaks . Reap the benefits of multithreaded and asynchronous programming . Maximize the security and encryption mechanisms natively provided by Android . Perform efficient network operations and techniques to retrieve data from servers . Master the NDK to write native code that can perform faster operations In Detail Performant applications are one of the key drivers of success in the mobile world. Users may abandon an app if it runs slowly. Learning how to build applications that balance speed and performance with functionality and UX can be a challenge; however, it's now more important than ever to get that balance right. Android High Performance will start you thinking about how to wring the most from any hardware your app is installed on, so you can increase your reach and engagement. The book begins by providing an introduction to state–of-the-art Android techniques and the importance of performance in an Android application. Then, we will explain the Android SDK tools regularly used to debug and profile Android applications. We will also learn about some advanced topics such as building layouts, multithreading, networking, and security. Battery life is one of the biggest bottlenecks in applications; and this book will show typical examples of code that exhausts battery life, how to prevent this, and how to measure battery consumption from an application in every kind of situation to ensure your apps don’t drain more than they should. This book explains techniques for building optimized and efficient systems that do not drain the battery, cause memory leaks, or slow down with time. Style and approach The book follows a tutorial-based approach to take the reader from the basic fundamentals of debugging to advanced performance-improvement concepts.

Spark for Data Science
¥90.46
Analyze your data and delve deep into the world of machine learning with the latest Spark version, 2.0 About This Book Perform data analysis and build predictive models on huge datasets that leverage Apache Spark Learn to integrate data science algorithms and techniques with the fast and scalable computing features of Spark to address big data challenges Work through practical examples on real-world problems with sample code snippets Who This Book Is For This book is for anyone who wants to leverage Apache Spark for data science and machine learning. If you are a technologist who wants to expand your knowledge to perform data science operations in Spark, or a data scientist who wants to understand how algorithms are implemented in Spark, or a newbie with minimal development experience who wants to learn about Big Data Analytics, this book is for you! What You Will Learn Consolidate, clean, and transform your data acquired from various data sources Perform statistical analysis of data to find hidden insights Explore graphical techniques to see what your data looks like Use machine learning techniques to build predictive models Build scalable data products and solutions Start programming using the RDD, DataFrame and Dataset APIs Become an expert by improving your data analytical skills In Detail This is the era of Big Data. The words ‘Big Data’ implies big innovation and enables a competitive advantage for businesses. Apache Spark was designed to perform Big Data analytics at scale, and so Spark is equipped with the necessary algorithms and supports multiple programming languages. Whether you are a technologist, a data scientist, or a beginner to Big Data analytics, this book will provide you with all the skills necessary to perform statistical data analysis, data visualization, predictive modeling, and build scalable data products or solutions using Python, Scala, and R. With ample case studies and real-world examples, Spark for Data Science will help you ensure the successful execution of your data science projects. Style and approach This book takes a step-by-step approach to statistical analysis and machine learning, and is explained in a conversational and easy-to-follow style. Each topic is explained sequentially with a focus on the fundamentals as well as the advanced concepts of algorithms and techniques. Real-world examples with sample code snippets are also included.

Working with Odoo 10 - Second Edition
¥90.46
Configure, manage, and customize Odoo to build professional-level business applications About This Book Build an Odoo module and integrate it with other platforms through this practical guide This book is the perfect companion to help you customize your Odoo installations for your enterprise requirements Use project management along with analytics for better reporting Who This Book Is For This book is for those who have not used Odoo before, allowing you to learn advanced-level features with Odoo such as creating your own custom modules. You do not need any knowledge of Odoo. What You Will Learn Configure a functioning customer relationship management system Set up a purchasing and receiving system Implement manufacturing operations and processes using real-world examples Discover the capabilities of Odoo's financial accounting and reporting features Integrate powerful human resource applications Utilize Odoo's project management application to organize tasks Customize Odoo without writing a line a code In Detail Odoo is a comprehensive set of open-source enterprise management applications. Now with Odoo 10, you have access to a powerful website builder, integrated e-commerce features, and a fast-growing community to help transform and modernize your business. You will start with how to set up Odoo online and on your own server. You’ll then configure the basic company settings required to quickly getting your first Odoo system up and running. Later you’ll explore Customer Relationship Management in Odoo and and their importance in today's modern business environment. Next we will deep dive into purchasing application with Odoo and learn some of the primary functionalities of ERP systems for manufacturing operations. You will then use analytic accounting to provide better reporting. Finally you will walk through the recent Odoo 10 features with respect to the community and enterprise edition giving you complete understanding of what Odoo can do for you no matter the reason! Style and approach This fast-paced, step-by-step guide will show you everything you need to know about the Odoo module ecosystem through practical and real-world examples.

Mastering Unity 5.x
¥90.46
Create amazing games with solid gameplay features, using a professional-grade workflow inside the Unity engine! About This Book Become a Unity master by creating a practical, in-depth game-development project with Unity Use advanced C# *ing to unlock the complete potential of Unity 5 Use Version Control to Effectively Manage and Scale your workflow Who This Book Is For If you are a Unity developer who now wants to develop and deploy interesting games by leveraging the new features of Unity 5.x, then this is the book for you. Basic knowledge of C# programming is assumed. What You Will Learn Explore hands-on tasks and real-world scenarios to make a Unity horror adventure game Create enemy characters that act intelligently and make reasoned decisions Use data files to save and restore game data in a way that is platform-agnostic Get started with VR development Use Navigation Meshes, Occlusion Culling, and the Profiler tools Work confidently with GameObjects, Rotations, and Transformations Understand specific gameplay features such as AI enemies, inventory systems, and level design In Detail Do you want to take the leap from being an everyday Unity developer to being a pro game developerThen look no further! This book is your one stop solution to creating mesmerizing games with lifelike features and amazing gameplay. This book takes an in-depth focus on a practical project with Unity, building a first-person game with many features. You’ll dive deep into the architecture of a Unity game, creating expansive worlds, interesting render effects, and other features to make your games special. You will create individual game components, use efficient animation techniques, and implement collision and physics effectively. Specifically, we’ll explore optimal techniques for importing game assets, such as meshes and textures; tips and tricks for effective level design; how to animate and * NPCs; how to configure and deploy to mobile devices; how to prepare for VR development; and how to work with version control, and more. By the end of this book, you’ll have developed sufficient competency in Unity development to produce fun games with confidence. Style and approach This book takes a step-by-step, practical tutorial approach. You will create an advanced level Unity game with an emphasis on leveraging the advanced Unity 5 features. You will make the most of the Unity 5 advanced features while you develop the game in its entirety.

NHibernate 4.x Cookbook - Second Edition
¥90.46
Over 90 incredible and powerful recipes to help you efficiently use NHibernate in your application About This Book · Master the full range of NHibernate features through detailed example recipes that you can quickly apply to your own applications· Reduce hours of application development time and get a better application architecture and improved performance· Create, maintain, and update your database structure automatically with the help of NHibernate Who This Book Is For This book is written for .NET developers who want to use NHibernate and those who want to deepen their knowledge of the platform. Examples are written in C# and XML. Some basic knowledge of SQL is assumed. If you build .NET applications that use relational databases, this book is for you. What You Will Learn · Create a persistent object model to move data in and out of your database· Build the database from your model automatically· Configure NHibernate for use with WebForms, MVC, WPF, and WinForms applications· Create database queries using a variety of methods· Improve the performance of your applications using a variety of techniques· Build an infrastructure for fast, easy, test-driven development of your data access layer· Implement entity validation, auditing, full-text search, horizontal partitioning (sharding), and spatial queries using NHibernate Contrib projects In Detail NHibernate is a mature, flexible, scalable, and feature-complete open source project for data access. Although it sounds like an easy task to build and maintain database applications, it can be challenging to get beyond the basics and develop applications that meet your needs perfectly. NHibernate allows you to use plain SQL and stored procedures less and keep focus on your application logic instead. Learning the best practices for a NHibernate-based application will help you avoid problems and ensure that your project is a success. The book will take you from the absolute basics of NHibernate through to its most advanced features, showing you how to take full advantage of each concept to quickly create amazing database applications. You will learn several techniques for each of the four core NHibernate tasks—configuration, mapping, session and transaction management, and querying—and which techniques fit best with various types of applications. In short, you will be able to build an application using NHibernate by the end of the book. You will also learn how to best implement enterprise application architecture patterns using NHibernate, leading to clean, easy-to-understand code and increased productivity. In addition to new features, you will learn creative ways to extend the NHibernate core, as well as gaining techniques to work with the NHibernate search, shards, spatial, envers, and validation projects. Style and approach This book contains recipes with examples organized in functional areas, each containing step-by-step instructions on everything necessary to execute a particular task. The book is designed so you can read it from start to end or just open up any chapter and start following the recipes.

Learning OpenCV 3 Application Development
¥90.46
Build, create, and deploy your own computer vision applications with the power of OpenCV About This Book This book provides hands-on examples that cover the major features that are part of any important Computer Vision application It explores important algorithms that allow you to recognize faces, identify objects, extract features from images, help your system make meaningful predictions from visual data, and much more All the code examples in the book are based on OpenCV 3.1 – the latest version Who This Book Is For This is the perfect book for anyone who wants to dive into the exciting world of image processing and computer vision. This book is aimed at programmers with a working knowledge of C++. Prior knowledge of OpenCV or Computer Vision/Machine Learning is not required. What You Will Learn Explore the steps involved in building a typical computer vision/machine learning application Understand the relevance of OpenCV at every stage of building an application Harness the vast amount of information that lies hidden in images into the apps you build Incorporate visual information in your apps to create more appealing software Get acquainted with how large-scale and popular image editing apps such as Instagram work behind the scenes by getting a glimpse of how the image filters in apps can be recreated using simple operations in OpenCV Appreciate how difficult it is for a computer program to perform tasks that are trivial for human beings Get to know how to develop applications that perform face detection, gender detection from facial images, and handwritten character (digit) recognition In Detail Computer vision and machine learning concepts are frequently used in practical computer vision based projects. If you’re a novice, this book provides the steps to build and deploy an end-to-end application in the domain of computer vision using OpenCV/C++. At the outset, we explain how to install OpenCV and demonstrate how to run some simple programs. You will start with images (the building blocks of image processing applications), and see how they are stored and processed by OpenCV. You’ll get comfortable with OpenCV-specific jargon (Mat Point, Scalar, and more), and get to know how to traverse images and perform basic pixel-wise operations. Building upon this, we introduce slightly more advanced image processing concepts such as filtering, thresholding, and edge detection. In the latter parts, the book touches upon more complex and ubiquitous concepts such as face detection (using Haar cascade classifiers), interest point detection algorithms, and feature de*ors. You will now begin to appreciate the true power of the library in how it reduces mathematically non-trivial algorithms to a single line of code! The concluding sections touch upon OpenCV’s Machine Learning module. You will witness not only how OpenCV helps you pre-process and extract features from images that are relevant to the problems you are trying to solve, but also how to use Machine Learning algorithms that work on these features to make intelligent predictions from visual data! Style and approach This book takes a very hands-on approach to developing an end-to-end application with OpenCV. To avoid being too theoretical, the de*ion of concepts are accompanied simultaneously by the development of applications. Throughout the course of the book, the projects and practical, real-life examples are explained and developed step by step in sync with the theory.

Kali Linux 2: Windows Penetration Testing
¥90.46
Kali Linux: a complete pentesting toolkit facilitating smooth backtracking for working hackers About This Book Conduct network testing, surveillance, pen testing and forensics on MS Windows using Kali Linux Footprint, monitor, and audit your network and investigate any ongoing infestations Customize Kali Linux with this professional guide so it becomes your pen testing toolkit Who This Book Is For If you are a working ethical hacker who is looking to expand the offensive skillset with a thorough understanding of Kali Linux, then this is the book for you. Prior knowledge about Linux operating systems and the BASH terminal emulator along with Windows desktop and command line would be highly beneficial. What You Will Learn Set up Kali Linux for pen testing Map and enumerate your Windows network Exploit several common Windows network vulnerabilities Attack and defeat password schemes on Windows Debug and reverse-engineer Windows programs Recover lost files, investigate successful hacks and discover hidden data in innocent-looking files Catch and hold admin rights on the network, and maintain backdoors on the network after your initial testing is done In Detail Microsoft Windows is one of the two most common OS and managing its security has spawned the discipline of IT security. Kali Linux is the premier platform for testing and maintaining Windows security. Kali is built on the Debian distribution of Linux and shares the legendary stability of that OS. This lets you focus on using the network penetration, password cracking, forensics tools and not the OS. This book has the most advanced tools and techniques to reproduce the methods used by sophisticated hackers to make you an expert in Kali Linux penetration testing. First, you are introduced to Kali's top ten tools and other useful reporting tools. Then, you will find your way around your target network and determine known vulnerabilities to be able to exploit a system remotely. Next, you will prove that the vulnerabilities you have found are real and exploitable. You will learn to use tools in seven categories of exploitation tools. Further, you perform web access exploits using tools like websploit and more. Security is only as strong as the weakest link in the chain. Passwords are often that weak link. Thus, you learn about password attacks that can be used in concert with other approaches to break into and own a network. Moreover, you come to terms with network sniffing, which helps you understand which users are using services you can exploit, and IP spoofing, which can be used to poison a system's DNS cache. Once you gain access to a machine or network, maintaining access is important. Thus, you not only learn penetrating in the machine you also learn Windows privilege’s escalations. With easy to follow step-by-step instructions and support images, you will be able to quickly pen test your system and network. Style and approach This book is a hands-on guide for Kali Linux pen testing. This book will provide all the practical knowledge needed to test your network's security using a proven hacker's methodology. The book uses easy-to-understand yet professional language for explaining concepts.

Practical Windows Forensics
¥90.46
Leverage the power of digital forensics for Windows systems About This Book Build your own lab environment to analyze forensic data and practice techniques. This book offers meticulous coverage with an example-driven approach and helps you build the key skills of performing forensics on Windows-based systems using digital artifacts. It uses specific open source and Linux-based tools so you can become proficient at analyzing forensic data and upgrade your existing knowledge. Who This Book Is For This book targets forensic analysts and professionals who would like to develop skills in digital forensic analysis for the Windows platform. You will acquire proficiency, knowledge, and core skills to undertake forensic analysis of digital data. Prior experience of information security and forensic analysis would be helpful. You will gain knowledge and an understanding of performing forensic analysis with tools especially built for the Windows platform. What You Will Learn Perform live analysis on victim or suspect Windows systems locally or remotely Understand the different natures and acquisition techniques of volatile and non-volatile data. Create a timeline of all the system actions to restore the history of an incident. Recover and analyze data from FAT and NTFS file systems. Make use of various tools to perform registry analysis. Track a system user's browser and e-mail activities to prove or refute some hypotheses. Get to know how to dump and analyze computer memory. In Detail Over the last few years, the wave of the cybercrime has risen rapidly. We have witnessed many major attacks on the governmental, military, financial, and media sectors. Tracking all these attacks and crimes requires a deep understanding of operating system operations, how to extract evident data from digital evidence, and the best usage of the digital forensic tools and techniques. Regardless of your level of experience in the field of information security in general, this book will fully introduce you to digital forensics. It will provide you with the knowledge needed to assemble different types of evidence effectively, and walk you through the various stages of the analysis process. We start by discussing the principles of the digital forensics process and move on to show you the approaches that are used to conduct analysis. We will then study various tools to perform live analysis, and go through different techniques to analyze volatile and non-volatile data. Style and approach This is a step-by-step guide that delivers knowledge about different Windows artifacts. Each topic is explained sequentially, including artifact analysis using different tools and techniques. These techniques make use of the evidence extracted from infected machines, and are accompanied by real-life examples.

3D Game Design with Unreal Engine 4 and Blender
¥90.46
Combine the powerful UE4 with Blender to create visually appealing and comprehensive game environments About This Book The only resource that shows how you can incorporate Blender into your Unreal Engine 4 Game environment Create amazing 3D game environments by leveraging the power of Blender and Unreal Engine 4 Practical step-by-step approach with plenty of illustrative examples to get you started immediately Who This Book Is For This book would be ideal for 3D artists and game designers who want to create amazing 3D game environments and leverage the power of Blender with Unreal Engine 4. 3D design basics would be necessary to get the most out of this book. Some previous experience with Blender would be helpful but not essential What You Will Learn Create a fully functioning game level of your own design using Blender and Unreal Engine 4 Customize your level with detailed 3D assets created with Blender Import assets into Unreal Engine 4 to create an amazing finished product Build a detailed dynamic environment with goals and an ending Explore Blender’s incredible animation tools to animate elements of your game Create great environments using sound effects, particle effects, and class blueprints In Detail Unreal Engine 4 now has support for Blender, which was not available in earlier versions. This has opened up new possibilities and that is where this book comes in. This is the first book in the market combining these two powerful game and graphic engines. Readers will build an amazing high-level game environment with UE4 and will show them how to use the power of Blender 3D to create stunning animations and 3D effects for their game. This book will start with creating levels, 3D assets for the game, game progression, light and environment control, animation, and so on. Then it will teach readers to add amazing visual effects to their game by applying rendering, lighting, rigging, and compositing techniques in Blender. Finally, readers will learn how to smoothly transfer blender files to UE4 and animate the game assets. Each chapter will add complexities to the game environment. Style and approach This will have a clear, step-by-step approach to creating game assets in Blender and then importing them to UE4 to create stunning game environments. All asset creation techniques are explained in detail along with tips on how to use them to create your own game environments. The book offers end-to-end coverage of how to design a game level from scratch.

Mastering Unreal Engine 4.X
¥90.46
Take your game development skills to the next level with one of the best engines on the market About This Book Build an entire AAA game level throughout the book Take your C++ *ing skills to the next level and use them extensively to build the game An advanced practical guide with a tutorial style approach that will help you make the best of Unreal engine 4 Who This Book Is For This book is for game developers who have a basic knowledge of Unreal Engine and C++ *ing knowledge. If you want to take the leap from a casual game developer to a full-fledged professional game developer with Unreal Engine 4, this is the book for you. What You Will Learn Script your player controls in C++ Build a superb and engaging level with advanced design techniques Program AI with C++ Use Cascade to add life to your games Use custom shaders and advanced shading techniques to make things pretty Implement an awesome UI in the game Control gameplay using data tables In Detail Unreal Engine 4 has garnered a lot of attention in the gaming world because of its new and improved graphics and rendering engine, the physics simulator, particle generator, and more. This book is the ideal guide to help you leverage all these features to create state-of-the-art games that capture the eye of your audience. Inside we’ll explain advanced shaders and effects techniques and how you can implement them in your games. You’ll create custom lighting effects, use the physics simulator to add that extra edge to your games, and create customized game environments that look visually stunning using the rendering technique. You’ll find out how to use the new rendering engine efficiently, add amazing post-processing effects, and use data tables to create data-driven gameplay that is engaging and exciting. By the end of this book, you will be able to create professional games with stunning graphics using Unreal Engine 4! Style and approach An advanced guide that will take you to the next level of developing games with Unreal engine with illustrative examples that will make you confident of creating customized professional level games on your won.

Delphi Cookbook - Second Edition
¥90.46
Over 60 hands-on recipes to help you master the power of Delphi for cross-platform and mobile development on multiple platforms About This Book Get to grips with Delphi to build and deploy various cross-platform applications Design, develop, and deploy real-world applications by implementing a single source codebase This swift guide will increase your productivity to develop applications with Delphi Who This Book Is For If you are an intermediate developer with a basic knowledge of Delphi and you want to develop cross-platform applications, then this book is for you. Familiarity with the fundamentals of RAD (Rapid Application Development) Studio is expected. What You Will Learn Develop visually stunning applications using FireMonkey Deploy LiveBinding effectively with the right OOP approach Create server-side programs to serve RESTful web services and provide data to your mobile apps Use well-defined GUI design patterns to build mobile applications that provide a great user experience Build mobile apps that read data from a remote server efficiently Call the platform native API on Android and iOS even for an unpublished API Manage software customization for your customer by making better use of an extended RTTI Implement the most popular design pattern without wasting too much time on debugging and bug fixing In Detail Delphi is a cross-platform Integrated Development Environment (IDE) that supports rapid application development for Microsoft Windows, Apple Mac OS X, Google Android, and Apple iOS. It helps you to concentrate on the real business and save yourself the pain of wandering amid GUI widget details, or having to tackle inter-platform incompatibilities. It also has a wide range of drag-and-drop controls, helping you code your business logic into your business model, and it compiles natively for desktop and mobile platforms. This book will teach you how to design and develop applications, deploy them on the cloud platform, and distribute them within an organization via Google Play and other similar platforms. You will begin with the basics of Delphi and get acquainted with JSON format strings, XSLT transformations, unicode encodings and various types of streams. We then move on to more advanced topics such as developing higher-order functions and using enumerators and RTTI. You will get an understanding of how Delphi RTL functions and how to use FireMonkey in a VCL application. We will then cover topics such as multithreading, using the parallel programming library and putting Delphi on a server. We will also take a look at the new feature of WebBroker Apache modules and then ride the mobile revolution with FireMonkey. By the end of the book, you will be able to develop and deploy cross-platform applications using Delphi. Style and approach Delphi Cookbook is an easy-to-follow guide, rich with hands-on examples of real-world programming tasks in Delphi.

Mastering Django: Core
¥90.46
Delivers absolutely everything you will ever need to know to become a master Django programmer About This Book Gain a complete understanding of Django—the most popular, Python-based web framework in the world Gain the skills to successfully designing, developing, and deploying your app This book is packaged with fully described code so you can learn the fundamentals and the advanced topics to get a complete understanding of all of Django’s core functions Who This Book Is For This book assumes you have a basic understanding of the Internet and programming. Experience with Python or Django would be an advantage, but is not necessary. It is ideal for beginner to intermediate programmers looking for a fast, secure, scalable, and maintainable alternative web development platform to those based on PHP, Java, and dotNET. What You Will Learn Use Django to access user-submitted form data, validate it, and work with it Get to know advanced URLconf tips and tricks Extend Django’s template system with custom code Define models and use the database API to create, retrieve, update, and delete records Fully extend and customize the default implementation as per your project’s needs Test and deploy your Django application Get to know more about Django’s session, cache Framework, and middleware In Detail Mastering Django: Core is a completely revised and updated version of the original Django Book, written by Adrian Holovaty and Jacob Kaplan-Moss - the creators of Django. The main goal of this book is to make you a Django expert. By reading this book, you’ll learn the skills needed to develop powerful websites quickly, with code that is clean and easy to maintain. This book is also a programmer’s manual that provides complete coverage of the current Long Term Support (LTS) version of Django. For developers creating applications for commercial and business critical deployments, Mastering Django: Core provides a complete, up-to-date resource for Django 1.8LTS with a stable code-base, security fixes and support out to 2018. Style and approach This comprehensive step-by-step practical guide offers a thorough understanding of all the web development concepts related to Django. In addition to explaining the features of Django, this book provides real-world experience on how these features fit together to build extraordinary apps.