Node.js Design Patterns - Second Edition
¥90.46
Get the best out of Node.js by mastering its most powerful components and patterns to create modular and scalable applications with ease About This Book Create reusable patterns and modules by leveraging the new features of Node.js . Understand the asynchronous single thread design of node and grasp all its features and patterns to take advantage of various functions. This unique guide will help you get the most out of Node.js and its ecosystem. Who This Book Is For The book is meant for developers and software architects with a basic working knowledge of JavaScript who are interested in acquiring a deeper understanding of how to design and develop enterprise-level Node.js applications. Basic knowledge of Node.js is also helpful to get the most out of this book. What You Will Learn Design and implement a series of server-side JavaScript patterns so you understand why and when to apply them in different use case scenarios Become comfortable with writing asynchronous code by leveraging constructs such as callbacks, promises, generators and the async-await syntax Identify the most important concerns and apply unique tricks to achieve higher scalability and modularity in your Node.js application Untangle your modules by organizing and connecting them coherently Reuse well-known techniques to solve common design and coding issues Explore the latest trends in Universal JavaScript, learn how to write code that runs on both Node.js and the browser and leverage React and its ecosystem to implement universal applications In Detail Node.js is a massively popular software platform that lets you use JavaScript to easily create scalable server-side applications. It allows you to create efficient code, enabling a more sustainable way of writing software made of only one language across the full stack, along with extreme levels of reusability, pragmatism, simplicity, and collaboration. Node.js is revolutionizing the web and the way people and companies create their software. In this book, we will take you on a journey across various ideas and components, and the challenges you would commonly encounter while designing and developing software using the Node.js platform. You will also discover the "Node.js way" of dealing with design and coding decisions. The book kicks off by exploring the basics of Node.js describing it's asynchronous single-threaded architecture and the main design patterns. It then shows you how to master the asynchronous control flow patterns,and the stream component and it culminates into a detailed list of Node.js implementations of the most common design patterns as well as some specific design patterns that are exclusive to the Node.js world.Lastly, it dives into more advanced concepts such as Universal Java*, and scalability' and it's meant to conclude the journey by giving the reader all the necessary concepts to be able to build an enterprise grade application using Node.js. Style and approach This book takes its intended readers through a comprehensive explanation to create a scalable and efficient real-time server-side apps.
Modern JavaScript Applications
¥90.46
An example-driven guide that explores the world of modern web development with JavaScript About This Book Explore the new features of ECMAScript 6 and how they can be incorporated to build cutting edge web applications Learn about modern web architectures and build real-world apps on top of them Make use of modern JavaScript tools, techniques and frameworks to enhance your web development skills Who This Book Is For This book is for existing JavaScript developers who want to explore some of the modern JavaScript features, techniques, and architectures to develop cutting edge web applications. What You Will Learn Learn to create single page websites Gain expertise in responsive and dynamic website design Enable Real-time communications between client-client and client-server/server-client Create APIs for large-scale applications Write complete applications using functional reactive programming In Detail Over the years, JavaScript has taken significant strides in the world of modern web development to enhance the development of a wide range of applications with different architectures. This book explores the advanced and new features that have arrived in JavaScript and how they can be applied to develop high-quality applications with different architectures. The book begins by covering a single page application that builds on the innovative MVC approach using AngularJS. As we move forward, the book shows you how to develop an enterprise-level application with the microservices architecture, using Node to build web services. We then focus on network programming concepts and you’ll build a real-time web application with websockets. When you’ve gained a solid grip on the different architectures, we’ll move on to the area where JavaScript shines, that is, UI development. You’ll learn to build responsive, declarative UIs with React and Bootstrap. As we near the end of this book, you’ll see how the performance of web applications can be enhanced using Functional Reactive Programming (FRP). Along the way, the book also explores how the power of JavaScript can be increased multi-fold. After reading this book, you will have a solid knowledge of the latest JavaScript techniques, tools, and architecture to build modern web apps. Style and approach Covering all the new features in ECMAScript 6, this book takes a project-based approach to introduce you to all the latest techniques, tools, and architectures of JavaScript web development. Each project that the book builds will show you a different angle of the power of JavaScript in modern web development.
Asynchronous Android Programming - Second Edition
¥90.46
Unlock the power of multi-core mobile devices to build responsive and reactive Android applications About This Book Construct scalable and performant applications to take advantage of multi-thread asynchronous techniques Explore the high-level Android asynchronous constructs available on the Android SDK Choose the most appropriate asynchronous technique to implement your next outstanding feature Who This Book Is For This book is for Android developers who want to learn how to build multithreaded and reliable Android applications using high-level and advanced asynchronous techniques and concepts. No prior knowledge of concurrent and asynchronous programming is required. This book will also be great for Java experts who are new to Android. Whether you are a beginner at Android development or a seasoned Android programmer, this book will guide you through the most basic and advanced asynchronous constructs used in Android programming. What You Will Learn Get familiar with the android process model and low-level concurrent constructs delivered by the Android SDK Use AsyncTask and loader framework to load data in the background, delivering progress results in the meantime Create services that interact with your activity without compromising the UI rendering Learn the working of Android concurrency on the Native Layer Interact with nearby devices over Bluetooth and WiFi communications channels Create and compose tasks with RxJava to execute complex asynchronous work in a predictable way Get accustomed to the use of the Android Loader construct to deliver up-to-date results In Detail Asynchronous programming has acquired immense importance in Android programming, especially when we want to make use of the number of independent processing units (cores) available on the most recent Android devices. With this guide in your hands you’ll be able to bring the power of Asynchronous programming to your own projects, and make your Android apps more powerful than ever before! To start with, we will discuss the details of the Android Process model and the Java Low Level Concurrent Framework, delivered by Android SDK. We will also guide you through the high-level Android-specific constructs available on the SDK: Handler, AsyncTask, and Loader. Next, we will discuss the creation of IntentServices, Bound Services and External Services, which can run in the background even when the user is not interacting with it. You will also discover AlarmManager and JobScheduler APIs, which are used to schedule and defer work without sacrificing the battery life. In a more advanced phase, you will create background tasks that are able to execute CPU-intensive tasks in a native code-making use of the Android NDK. You will be then guided through the process of interacting with remote services asynchronously using the HTTP protocol or Google GCM Platform. Using the EventBus library, we will also show how to use the Publish-Subscribe software pattern to simplify communication between the different Android application components by decoupling the event producer from event consumer. Finally, we will introduce RxJava, a popular asynchronous Java framework used to compose work in a concise and reactive way. Asynchronous Android will help you to build well-behaved applications with smooth responsive user interfaces that delight the users with speedy results and data that’s always fresh. Style and approach This easy-to-follow guide is full of code examples of real-world use cases. Each asynchronous topic is explained sequentially, from the most basic and low-level to the more advanced, using concise and effective language. Some lifecycle flows and concepts feature illustrations to help you understand the complex interactions between Android entities.
Large Scale Machine Learning with Python
¥90.46
Learn to build powerful machine learning models quickly and deploy large-scale predictive applications About This Book Design, engineer and deploy scalable machine learning solutions with the power of Python Take command of Hadoop and Spark with Python for effective machine learning on a map reduce framework Build state-of-the-art models and develop personalized recommendations to perform machine learning at scale Who This Book Is For This book is for anyone who intends to work with large and complex data sets. Familiarity with basic Python and machine learning concepts is recommended. Working knowledge in statistics and computational mathematics would also be helpful. What You Will Learn Apply the most scalable machine learning algorithms Work with modern state-of-the-art large-scale machine learning techniques Increase predictive accuracy with deep learning and scalable data-handling techniques Improve your work by combining the MapReduce framework with Spark Build powerful ensembles at scale Use data streams to train linear and non-linear predictive models from extremely large datasets using a single machine In Detail Large Python machine learning projects involve new problems associated with specialized machine learning architectures and designs that many data scientists have yet to tackle. But finding algorithms and designing and building platforms that deal with large sets of data is a growing need. Data scientists have to manage and maintain increasingly complex data projects, and with the rise of big data comes an increasing demand for computational and algorithmic efficiency. Large Scale Machine Learning with Python uncovers a new wave of machine learning algorithms that meet scalability demands together with a high predictive accuracy. Dive into scalable machine learning and the three forms of scalability. Speed up algorithms that can be used on a desktop computer with tips on parallelization and memory allocation. Get to grips with new algorithms that are specifically designed for large projects and can handle bigger files, and learn about machine learning in big data environments. We will also cover the most effective machine learning techniques on a map reduce framework in Hadoop and Spark in Python. Style and approach This efficient and practical title is stuffed full of the techniques, tips and tools you need to ensure your large scale Python machine learning runs swiftly and seamlessly. Large-scale machine learning tackles a different issue to what is currently on the market. Those working with Hadoop clusters and in data intensive environments can now learn effective ways of building powerful machine learning models from prototype to production. This book is written in a style that programmers from other languages (R, Julia, Java, Matlab) can follow.
Eclipse Plug-in Development: Beginner's Guide - Second Edition
¥90.46
Develop skills to build powerful plug-ins with Eclipse IDE through examples About This Book Create useful plug-ins to make Eclipse work for you Learn how to migrate Eclipse 3.x plug-ins to Eclipse 4.x From automation to testing, find out how to get your IDE performing at an impressive standard Who This Book Is For This book is for Java developers familiar with Eclipse who need more from the IDE. This book will sharpen your confidence and make you a more productive developer with a tool that supports rather than limits you. What You Will Learn Create plug-ins for Eclipse 4.x Test plug-ins automatically with JUnit Display tree and table information in views Upgrade Eclipse 3.x plug-ins to Eclipse 4.x Find out how to build user interfaces from SWT and JFace Run tasks in the background and update the user interface asynchronously Automate builds of plug-ins and features Automate user interface tests with SWTBot In Detail Eclipse is used by everyone from indie devs to NASA engineers. Its popularity is underpinned by its impressive plug-in ecosystem, which allows it to be extended to meet the needs of whoever is using it. This book shows you how to take full advantage of the Eclipse IDE by building your own useful plug-ins from start to finish. Taking you through the complete process of plug-in development, from packaging to automated testing and deployment, this book is a direct route to quicker, cleaner Java development. It may be for beginners, but we're confident that you'll develop new skills quickly. Pretty soon you'll feel like an expert, in complete control of your IDE. Don't let Eclipse define you - extend it with the plug-ins you need today for smarter, happier, and more effective development. Style and approach Packed with plenty of examples so you're never stuck, or never left simply reading instructions, this book encourages you to get started immediately. This book is for developers who want to develop, not just learn.
Visual Studio 2015 Cookbook - Second Edition
¥90.46
Over 50 new and improved recipes to put Visual Studio 2015 to work in your crucial development projects About This Book Get to grips with all the new Visual Studio 2015 features regardless of your preferred programming language Apply Visual Studio to all areas of development: writing, debugging, and application lifecycle maintenance Straightforward and hands-on advice for building both Windows and Android apps Who This Book Is For If you are a developer excited about the new features introduced in Visual Studio 2015, then no matter what your programming language of choice is, Visual Studio 2015 Cookbook is for you. You should have a good knowledge of working with previous versions of Visual Studio to benefit from the recipes in this book. What You Will Learn Customize the editor's new abilities to fit your development style Create apps for Windows Use Visual Studio to debug parallel and concurrent programs Integrate .NET Framework 4.6 effectively Put TypeScript to work in your web applications Develop modern C++11 with Visual Studio 2015 Protect and manage your source code with Team Foundation Server In Detail Visual Studio 2015 is the premier tool for developers targeting the Microsoft platform. Learning how to effectively use this technology can enhance your productivity while simplifying your most common tasks, allowing you more time to focus on your project. Visual Studio 2015 is packed with improvements that increase productivity, and this book walks you through each one in succession to help you smooth your workflow and get more accomplished. From customization and the interface to code snippets and debugging, the Visual Studio upgrade expands your options — and this book is your fast-track guide to getting on board quickly. Visual Studio 2015 Cookbook will introduce you to all the new areas of Visual Studio and how they can quickly be put to use to improve your everyday development tasks. With this book, you will learn not only what VS2015 offers, but what it takes to put it to work for your projects. Style and approach This book is a practical guide to using Visual Studio 2015 and will help you become familiar with the improvements made in previous versions. Each recipe provides a hands-on approach to the new features with step-by-step instructions on how to increase your productivity.
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.
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.
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.
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.
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.
Improving your C# Skills
¥90.46
Conquer complex and interesting programming challenges by building robust and concurrent applications with caches, cryptography, and parallel programming. Key Features * Understand how to use .NET frameworks like the Task Parallel Library (TPL)and CryptoAPI * Develop a containerized application based on microservices architecture * Gain insights into memory management techniques in .NET Core Book Description This Learning Path shows you how to create high performing applications and solve programming challenges using a wide range of C# features. You’ll begin by learning how to identify the bottlenecks in writing programs, highlight common performance pitfalls, and apply strategies to detect and resolve these issues early. You'll also study the importance of micro-services architecture for building fast applications and implementing resiliency and security in .NET Core. Then, you'll study the importance of defining and testing boundaries, abstracting away third-party code, and working with different types of test double, such as spies, mocks, and fakes. In addition to describing programming trade-offs, this Learning Path will also help you build a useful toolkit of techniques, including value caching, statistical analysis, and geometric algorithms. This Learning Path includes content from the following Packt products: * C# 7 and .NET Core 2.0 High Performance by Ovais Mehboob Ahmed Khan * Practical Test-Driven Development using C# 7 by John Callaway, Clayton Hunt * The Modern C# Challenge by Rod Stephens What you will learn * Measure application performance using BenchmarkDotNet * Leverage the Task Parallel Library (TPL) and Parallel Language Integrated Query (PLINQ)library to perform asynchronous operations * Modify a legacy application to make it testable * Use LINQ and PLINQ to search directories for files matching patterns * Find areas of polygons using geometric operations * Randomize arrays and lists with extension methods * Use cryptographic techniques to encrypt and decrypt strings and files Who this book is for If you want to improve the speed of your code and optimize the performance of your applications, or are simply looking for a practical resource on test driven development, this is the ideal Learning Path for you. Some familiarity with C# and .NET will be beneficial.
Getting Started with Python
¥90.46
Harness the power of Python objects and data structures to implement algorithms for analyzing your data and efficiently extracting information Key Features * Turn your designs into working software by learning the Python syntax * Write robust code with a solid understanding of Python data structures * Understand when to use the functional or the OOP approach Book Description This Learning Path helps you get comfortable with the world of Python. It starts with a thorough and practical introduction to Python. You’ll quickly start writing programs, building websites, and working with data by harnessing Python's renowned data science libraries. With the power of linked lists, binary searches, and sorting algorithms, you'll easily create complex data structures, such as graphs, stacks, and queues. After understanding cooperative inheritance, you'll expertly raise, handle, and manipulate exceptions. You will effortlessly integrate the object-oriented and not-so-object-oriented aspects of Python, and create maintainable applications using higher level design patterns. Once you’ve covered core topics, you’ll understand the joy of unit testing and just how easy it is to create unit tests. By the end of this Learning Path, you will have built components that are easy to understand, debug, and can be used across different applications. This Learning Path includes content from the following Packt products: * Learn Python Programming - Second Edition by Fabrizio Romano * Python Data Structures and Algorithms by Benjamin Baka * Python 3 Object-Oriented Programming by Dusty Phillips What you will learn * Use data structures and control flow to write code * Use functions to bundle together a sequence of instructions * Implement objects in Python by creating classes and defining methods * Design public interfaces using abstraction, encapsulation and information hiding * Raise, define, and manipulate exceptions using special error objects * Create bulletproof and reliable software by writing unit tests * Learn the common programming patterns and algorithms used in Python Who this book is for If you are relatively new to coding and want to write scripts or programs to accomplish tasks using Python, or if you are an object-oriented programmer for other languages and seeking a leg up in the world of Python, then this Learning Path is for you. Though not essential, it will help you to have basic knowledge of programming and OOP.
Advanced Python Programming
¥90.46
Create distributed applications with clever design patterns to solve complex problems Key Features * Set up and run distributed algorithms on a cluster using Dask and PySpark * Master skills to accurately implement concurrency in your code * Gain practical experience of Python design patterns with real-world examples Book Description This Learning Path shows you how to leverage the power of both native and third-party Python libraries for building robust and responsive applications. You will learn about profilers and reactive programming, concurrency and parallelism, as well as tools for making your apps quick and efficient. You will discover how to write code for parallel architectures using TensorFlow and Theano, and use a cluster of computers for large-scale computations using technologies such as Dask and PySpark. With the knowledge of how Python design patterns work, you will be able to clone objects, secure interfaces, dynamically choose algorithms, and accomplish much more in high performance computing. By the end of this Learning Path, you will have the skills and confidence to build engaging models that quickly offer efficient solutions to your problems. This Learning Path includes content from the following Packt products: * Python High Performance - Second Edition by Gabriele Lanaro * Mastering Concurrency in Python by Quan Nguyen * Mastering Python Design Patterns by Sakis Kasampalis What you will learn * Use NumPy and pandas to import and manipulate datasets * Achieve native performance with Cython and Numba * Write asynchronous code using asyncio and RxPy * Design highly scalable programs with application scaffolding * Explore abstract methods to maintain data consistency * Clone objects using the prototype pattern * Use the adapter pattern to make incompatible interfaces compatible * Employ the strategy pattern to dynamically choose an algorithm Who this book is for This Learning Path is specially designed for Python developers who want to build high-performance applications and learn about single core and multi-core programming, distributed concurrency, and Python design patterns. Some experience with Python programming language will help you get the most out of this Learning Path.
Docker on Windows
¥90.46
Learn how to run new and old applications in Docker containers on Windows - modernizing the architecture, improving security and maximizing efficiency. Key Features * Run .NET Framework and .NET Core apps in Docker containers for efficiency, security and portability * Design distributed containerized apps, using enterprise-grade open source software from Docker Hub * Build a CI/CD pipeline with Docker, going from source to a production Docker Swarm in the cloud Book Description Docker on Windows, Second Edition teaches you all you need to know about Docker on Windows, from the 101 to running highly-available workloads in production. You’ll be guided through a Docker journey, starting with the key concepts and simple examples of .NET Framework and .NET Core apps in Docker containers on Windows. Then you’ll learn how to use Docker to modernize the architecture and development of traditional ASP.NET and SQL Server apps. The examples show you how to break up legacy monolithic applications into distributed apps and deploy them to a clustered environment in the cloud, using the exact same artifacts you use to run them locally. You’ll see how to build a CI/CD pipeline which uses Docker to compile, package, test and deploy your applications. To help you move confidently to production, you’ll learn about Docker security, and the management and support options. The book finishes with guidance on getting started with Docker in your own projects. You’ll walk through some real-world case studies for Docker implementations, from small-scale on-premises apps to very large-scale apps running on Azure. What you will learn * Understand key Docker concepts: images, containers, registries and swarms * Run Docker on Windows 10, Windows Server 2019, and in the cloud * Deploy and monitor distributed solutions across multiple Docker containers * Run containers with high availability and failover with Docker Swarm * Master security in-depth with the Docker platform, making your apps more secure * Build a Continuous Deployment pipeline, running Jenkins and Git in Docker * Debug applications running in Docker containers using Visual Studio * Plan the adoption of Docker in your organization Who this book is for If you want to modernize an old monolithic application without rewriting it, smooth the deployment to production, or move to DevOps or the cloud, then Docker is the enabler for you. This book gives you a solid grounding in Docker so you can confidently approach all of these scenarios.
Numerical Computing with Python
¥90.46
Understand, explore, and effectively present data using the powerful data visualization techniques of Python Key Features *Use the power of Pandas and Matplotlib to easily solve data mining issues *Understand the basics of statistics to build powerful predictive data models *Grasp data mining concepts with helpful use-cases and examples Book Description Data mining, or parsing the data to extract useful insights, is a niche skill that can transform your career as a data scientist Python is a flexible programming language that is equipped with a strong suite of libraries and toolkits, and gives you the perfect platform to sift through your data and mine the insights you seek. This Learning Path is designed to familiarize you with the Python libraries and the underlying statistics that you need to get comfortable with data mining. You will learn how to use Pandas, Python's popular library to analyze different kinds of data, and leverage the power of Matplotlib to generate appealing and impressive visualizations for the insights you have derived. You will also explore different machine learning techniques and statistics that enable you to build powerful predictive models. By the end of this Learning Path, you will have the perfect foundation to take your data mining skills to the next level and set yourself on the path to become a sought-after data science professional. This Learning Path includes content from the following Packt products: *Statistics for Machine Learning by Pratap Dangeti *Matplotlib 2.x By Example by Allen Yu, Claire Chung, Aldrin Yim *Pandas Cookbook by Theodore Petrou What you will learn *Understand the statistical fundamentals to build data models *Split data into independent groups *Apply aggregations and transformations to each group *Create impressive data visualizations *Prepare your data and design models *Clean up data to ease data analysis and visualization *Create insightful visualizations with Matplotlib and Seaborn *Customize the model to suit your own predictive goals Who this book is for If you want to learn how to use the many libraries of Python to extract impactful information from your data and present it as engaging visuals, then this is the ideal Learning Path for you. Some basic knowledge of Python is enough to get started with this Learning Path.
C# 7 and .NET: Designing Modern Cross-platform Applications
¥90.46
Explore C# and the .NET Core framework to create applications and optimize them with ASP.NET Core 2 Key Features *Get to grips with multi-threaded, concurrent, and asynchronous programming in C# and .NET Core *Develop modern, cross-platform applications with .NET Core 2.0 and C# 7.0 *Create efficient web applications with ASP.NET Core 2. Book Description C# is a widely used programming language, thanks to its easy learning curve, versatility, and support for modern paradigms. The language is used to create desktop apps, background services, web apps, and mobile apps. .NET Core is open source and compatible with Mac OS and Linux. There is no limit to what you can achieve with C# and .NET Core. This Learning Path begins with the basics of C# and object-oriented programming (OOP) and explores features of C#, such as tuples, pattern matching, and out variables. You will understand.NET Standard 2.0 class libraries and ASP.NET Core 2.0, and create professional websites, services, and applications. You will become familiar with mobile app development using Xamarin.Forms and learn to develop high-performing applications by writing optimized code with various profiling techniques. By the end of C# 7 and .NET: Designing Modern Cross-platform Applications, you will have all the knowledge required to build modern, cross-platform apps using C# and .NET. This Learning Path includes content from the following Packt products: *C# 7.1 and .NET Core 2.0 - Modern Cross-Platform Development - Third Edition by Mark J. Price *C# 7 and .NET Core 2.0 High Performance by Ovais Mehboob Ahmed Khan What you will learn *Explore ASP.NET Core to create professional web applications *Master OOP with C# to increase code reusability and efficiency *Protect your data using encryption and hashing *Measure application performance using BenchmarkDotNet *Use design techniques to increase your application’s performance *Learn memory management techniques in .NET Core *Understand tools and techniques to monitor application performance Who this book is for This Learning Path is designed for developers who want to gain a solid foundation in C# and .NET Core, and want to build cross-platform applications. To gain maximum benefit from this Learning Path, you must have basic knowledge of C#.
Tableau 10 Complete Reference
¥90.46
Explore and understand data with the powerful data visualization techniques of Tableau, and then communicate insights in powerful ways Key Features *Apply best practices in data visualization and chart types exploration *Explore the latest version of Tableau Desktop with hands-on examples *Understand the fundamentals of Tableau storytelling Book Description Graphical presentation of data enables us to easily understand complex data sets. Tableau 10 Complete Reference provides easy-to-follow recipes with several use cases and real-world business scenarios to get you up and running with Tableau 10. This Learning Path begins with the history of data visualization and its importance in today's businesses. You'll also be introduced to Tableau - how to connect, clean, and analyze data in this visual analytics software. Then, you'll learn how to apply what you've learned by creating some simple calculations in Tableau and using Table Calculations to help drive greater analysis from your data. Next, you'll explore different advanced chart types in Tableau. These chart types require you to have some understanding of the Tableau interface and understand basic calculations. You’ll study in detail all dashboard techniques and best practices. A number of recipes specifically for geospatial visualization, analytics, and data preparation are also covered. Last but not least, you'll learn about the power of storytelling through the creation of interactive dashboards in Tableau. Through this Learning Path, you will gain confidence and competence to analyze and communicate data and insights more efficiently and effectively by creating compelling interactive charts, dashboards, and stories in Tableau. This Learning Path includes content from the following Packt products: *Learning Tableau 10 - Second Edition by N. Milligan *Getting Started with Tableau 2018.x by Tristan Guillevin What you will learn *Build effective visualizations, dashboards, and story points *Build basic to more advanced charts with step-by-step recipes *Become familiar row-level, aggregate, and table calculations *Dig deep into data with clustering and distribution models *Prepare and transform data for analysis *Leverage Tableau’s mapping capabilities to visualize data *Use data storytelling techniques to aid decision making strategy Who this book is for Tableau 10 Complete Reference is designed for anyone who wants to understand their data better and represent it in an effective manner. It is also used for BI professionals and data analysts who want to do better at their jobs.
QlikView: Advanced Data Visualization
¥90.46
Build powerful data analytics applications with this business intelligence tool and overcome all your business challenges Key Features *Master time-saving techniques and make your QlikView development more efficient *Perform geographical analysis and sentiment analysis in your QlikView applications *Explore advanced QlikView techniques, tips, and tricks to deliver complex business requirements Book Description QlikView is one of the most flexible and powerful business intelligence platforms around, and if you want to transform data into insights, it is one of the best options you have at hand. Use this Learning Path, to explore the many features of QlikView to realize the potential of your data and present it as impactful and engaging visualizations. Each chapter in this Learning Path starts with an understanding of a business requirement and its associated data model and then helps you create insightful analysis and data visualizations around it. You will look at problems that you might encounter while visualizing complex data insights using QlikView, and learn how to troubleshoot these and other not-so-common errors. This Learning Path contains real-world examples from a variety of business domains, such as sales, finance, marketing, and human resources. With all the knowledge that you gain from this Learning Path, you will have all the experience you need to implement your next QlikView project like a pro. This Learning Path includes content from the following Packt products: *QlikView for Developers by Miguel ?ngel García, Barry Harmsen *Mastering QlikView by Stephen Redmond *Mastering QlikView Data Visualization by Karl Pover What you will learn *Deliver common business requirements using advanced techniques *Load data from disparate sources to build associative data models *Understand when to apply more advanced data visualization *Utilize the built-in aggregation functions for complex calculations *Build a data architecture that supports scalable QlikView deployments *Troubleshoot common data visualization errors in QlikView *Protect your QlikView applications and data Who this book is for This Learning Path is designed for developers who want to go beyond their technical knowledge of QlikView and understand how to create analysis and data visualizations that solve real business needs. To grasp the concepts explained in this Learning Path, you should have a basic understanding of the common QlikView functions and some hands-on experience with the tool.
Building Computer Vision Projects with OpenCV 4 and C++
¥90.46
Delve into practical computer vision and image processing projects and get up to speed with advanced object detection techniques and machine learning algorithms Key Features * Discover best practices for engineering and maintaining OpenCV projects * Explore important deep learning tools for image classification * Understand basic image matrix formats and filters Book Description OpenCV is one of the best open source libraries available and can help you focus on constructing complete projects on image processing, motion detection, and image segmentation. This Learning Path is your guide to understanding OpenCV concepts and algorithms through real-world examples and activities. Through various projects, you'll also discover how to use complex computer vision and machine learning algorithms and face detection to extract the maximum amount of information from images and videos. In later chapters, you'll learn to enhance your videos and images with optical flow analysis and background subtraction. Sections in the Learning Path will help you get to grips with text segmentation and recognition, in addition to guiding you through the basics of the new and improved deep learning modules. By the end of this Learning Path, you will have mastered commonly used computer vision techniques to build OpenCV projects from scratch. This Learning Path includes content from the following Packt books: * Mastering OpenCV 4 - Third Edition by Roy Shilkrot and David Millán Escrivá * Learn OpenCV 4 By Building Projects - Second Edition by David Millán Escrivá, Vinícius G. Mendon?a, and Prateek Joshi What you will learn * Stay up-to-date with algorithmic design approaches for complex computer vision tasks * Work with OpenCV's most up-to-date API through various projects * Understand 3D scene reconstruction and Structure from Motion (SfM) * Study camera calibration and overlay augmented reality (AR) using the ArUco module * Create CMake scripts to compile your C++ application * Explore segmentation and feature extraction techniques * Remove backgrounds from static scenes to identify moving objects for surveillance * Work with new OpenCV functions to detect and recognize text with Tesseract Who this book is for If you are a software developer with a basic understanding of computer vision and image processing and want to develop interesting computer vision applications with OpenCV, this Learning Path is for you. Prior knowledge of C++ and familiarity with mathematical concepts will help you better understand the concepts in this Learning Path.

购物车
个人中心

