万本电子书0元读

万本电子书0元读

Modern Python Cookbook
Modern Python Cookbook
Steven F. Lott
¥90.46
The latest in modern Python recipes for the busy modern programmer About This Book Develop succinct, expressive programs in Python Learn the best practices and common idioms through carefully explained and structured recipes Discover new ways to apply Python for the new age of development Who This Book Is For The book is for web developers, programmers, enterprise programmers, engineers, big data scientist, and so on. If you are a beginner, Python Cookbook will get you started. If you are experienced, it will expand your knowledge base. A basic knowledge of programming would help. What You Will Learn See the intricate details of the Python syntax and how to use it to your advantage Improve your code readability through functions in Python Manipulate data effectively using built-in data structures Get acquainted with advanced programming techniques in Python Equip yourself with functional and statistical programming features Write proper tests to be sure a program works as advertised Integrate application software using Python In Detail Python is the preferred choice of developers, engineers, data scientists, and hobbyists everywhere. It is a great *ing language that can power your applications and provide great speed, safety, and scalability. By exposing Python as a series of simple recipes, you can gain insight into specific language features in a particular context. Having a tangible context helps make the language or standard library feature easier to understand. This book comes with over 100 recipes on the latest version of Python. The recipes will benefit everyone ranging from beginner to an expert. The book is broken down into 13 chapters that build from simple language concepts to more complex applications of the language. The recipes will touch upon all the necessary Python concepts related to data structures, OOP, functional programming, as well as statistical programming. You will get acquainted with the nuances of Python syntax and how to effectively use the advantages that it offers. You will end the book equipped with the knowledge of testing, web services, and configuration and application integration tips and tricks. The recipes take a problem-solution approach to resolve issues commonly faced by Python programmers across the globe. You will be armed with the knowledge of creating applications with flexible logging, powerful configuration, and command-line options, automated unit tests, and good documentation. Style and approach This book takes a recipe-based approach, where each recipe addresses specific problems and issues. The recipes provide discussions and insights and an explanation of the problems.
Mastering F#
Mastering F#
Alfonso García-Caro Núñez
¥80.65
A comprehensive and in-depth guide to writing functional programs using F# About This Book Learn how to manage, run, and automate your servers using Puppet Explore how to use F# to develop large-scale applications quickly and simply, and become more productive in today’s age of cloud computing and multi-core programming This easy-to-follow guide is packed with real-world examples that will jump-start you with F# development on the .NET platform Who This Book Is For If you are a C# developer with a basic knowledge of F# and want to explore the functional programming paradigm further to master your F# skills, then this book is for you. What You Will Learn Understand the basics of F# and organize F# source code with Visual Studio Work with F# data structures and create functional data structures in F# interoperate with C# Build and use asynchronous programming patterns with F# Create and use type providers that help perform data analysis from within Visual Studio Develop applications with pure F# code in WPF or ASP.NET MVC Find out how to perform distributed programming with ServiceBus or ZeroMQ Visualize data with charts, and work with Excel and R language Type providers In Detail F# is a multi-paradigm programming language that encompasses object-oriented, imperative, and functional programming language properties. Now adopted in a wide range of application areas and is supported both by industry-leading companies who provide professional tools and by an active open community, F# is rapidly gaining popularity as it emerges in digital music advertising, creating music-focused ads for Spotify, Pandora, Shazam, and anywhere on the web. This book will guide you through the basics and will then help you master F#. The book starts by explaining how to use F# with Visual Studio, file ordering, and the differences between F# and C# in terms of usage. It moves on to explain the functional core of F# such as data types, type declarations, immutability, strong type interference, pattern matching, records, F# data structures, sequence expressions, and lazy evaluation. Next, the book takes you through imperative and asynchronous programming, F# type providers, applications, and testing in F#. Finally, we look into using F# with distributed programming and using F# as a suitable language for data science. In short, this book will help you learn F# for real-world applications and increase your productivity with functional programming. Style and approach This easy-to-follow guide with syntaxes will help you master the concepts of F#. Packed with in-depth examples of real-world uses, this book covers each topic in detail with a reference to C#, so you will understand the difference between the languages.
Cracking the IT Architect Interview
Cracking the IT Architect Interview
Sameer Paradkar
¥90.46
The ultimate guide to successful interviews for Enterprise, Business, Domain, Solution, and Technical Architect roles as well as IT Advisory Consultant and Software Designer roles About This Book Learn about Enterprise Architects IT strategy and NFR – this book provides you with methodologies, best practices, and frameworks to ace your interview A holistic view of key architectural skills and competencies with 500+ questions that cover 12 domains 100+ diagrams depicting scenarios, models, and methodologies designed to help you prepare for your interview Who This Book Is For This book is for aspiring enterprise, business, domain, solution, and technical architects. It is also ideal for IT advisory consultants and IT designers who wish to interview for such a role. Interviewers will be able leverage this book to make sure they hire candidates with the right competencies to meet the role requirements. What You Will Learn Learn about IT strategies, NFR, methodologies, best practices, and frameworks to ace your interview Get a holistic view of key concepts, design principles, and patterns related to evangelizing web and Java enterprise applications Discover interview preparation guidelines through case studies Use this as a reference guide for adopting best practices, standards, and design guidelines Get a better understanding with 60+ diagrams depicting various scenarios, models, and methodologies Benefit from coverage of all architecture domains including EA (Business, Data, Infrastructure, and Application), SA, integration, NFRs, security, and SOA, with extended coverage from IT strategies to the NFR domain In Detail An architect attends multiple interviews for jobs or projects during the course of his or her career. This book is an interview resource created for designers, consultants, technical, solution, domain, enterprise, and chief architects to help them perform well in interview discussions and launch a successful career. The book begins by providing de*ions of architecture skills and competencies that cover the 12 key domains, including 350+ questions relating to these domains. The goal of this book is to cover all the core architectural domains. From an architect’s perspective, it is impossible to revise or learn about all these key areas without a good reference guide – this book is the solution. It shares experiences, learning, insights, and proven methodologies that will benefit practitioners, SMEs, and aspirants in the long run. This book will help you tackle the NFR domain, which is a key aspect pertaining to architecting applications. It typically takes years to understand the core concepts, fundamentals, patterns, and principles related to architecture and designs. This book is a goldmine for the typical questions asked during an interview and will help prepare you for success! Style and approach This book will help you prepare for interviews for architectural profiles by providing likely questions, explanations, and expected answers. It is an insight-rich guide that will help you develop strategic, tactical, and operational thinking for your interview.
Penetration Testing with Raspberry Pi - Second Edition
Penetration Testing with Raspberry Pi - Second Edition
Michael McPhee
¥71.93
Learn the art of building a low-cost, portable hacking arsenal using Raspberry Pi 3 and Kali Linux 2 About This Book Quickly turn your Raspberry Pi 3 into a low-cost hacking tool using Kali Linux 2 Protect your confidential data by deftly preventing various network security attacks Use Raspberry Pi 3 as honeypots to warn you that hackers are on your wire Who This Book Is For If you are a computer enthusiast who wants to learn advanced hacking techniques using the Raspberry Pi 3 as your pentesting toolbox, then this book is for you. Prior knowledge of networking and Linux would be an advantage. What You Will Learn Install and tune Kali Linux 2 on a Raspberry Pi 3 for hacking Learn how to store and offload pentest data from the Raspberry Pi 3 Plan and perform man-in-the-middle attacks and bypass advanced encryption techniques Compromise systems using various exploits and tools using Kali Linux 2 Bypass security defenses and remove data off a target network Develop a command and control system to manage remotely placed Raspberry Pis Turn a Raspberry Pi 3 into a honeypot to capture sensitive information In Detail This book will show you how to utilize the latest credit card sized Raspberry Pi 3 and create a portable, low-cost hacking tool using Kali Linux 2. You’ll begin by installing and tuning Kali Linux 2 on Raspberry Pi 3 and then get started with penetration testing. You will be exposed to various network security scenarios such as wireless security, scanning network packets in order to detect any issues in the network, and capturing sensitive data. You will also learn how to plan and perform various attacks such as man-in-the-middle, password cracking, bypassing SSL encryption, compromising systems using various toolkits, and many more. Finally, you’ll see how to bypass security defenses and avoid detection, turn your Pi 3 into a honeypot, and develop a command and control system to manage a remotely-placed Raspberry Pi 3. By the end of this book you will be able to turn Raspberry Pi 3 into a hacking arsenal to leverage the most popular open source toolkit, Kali Linux 2.0. Style and approach This concise and fast-paced guide will ensure you get hands-on with penetration testing right from the start. You will quickly install the powerful Kali Linux 2 on your Raspberry Pi 3 and then learn how to use and conduct fundamental penetration techniques and attacks.
Developing with Docker
Developing with Docker
Jarosław Krochmalski
¥80.65
Change the way your organization deploys software at scale with this face paced guide to the world of Docker About This Book Cut through the noise and in simple terms learn to package your applications and test, ship, and scale your containers Find and build images and successfully run your programs within containers Build, deploy, and test your Docker containers and put them to work in production Who This Book Is For This book is for IT professionals, system administrators, and DevOps professionals or anyone looking to quickly develop and deploy software to production at scale. If you are interested in Docker, DevOps, or containers in general, don’t look any further. What You Will Learn Understand Docker’s architecture Build, ship, and run distributed applications Deploy, automate, and manage the execution of applications within Docker Scale and virtualize images and containers Utilize the networking features that Docker offers Use repositories to store and retrieve images In Detail This fast-paced practical guide will get you up and running with Docker. Using Docker, you will be able to build, ship, and run many distributed applications in real time. You will start with quickly installing Docker and start working with images and containers. We will present different types of containers and their applications, and show you how to find and build images. You will learn how you can contribute to the image repository by publishing different images. This will familiarize you with the image building process and you will be able to successfully run your programs within containers. By finishing this book, you will be well equipped in deploying your applications using Docker and will have a clear understanding of concepts, techniques, and practical methods to get it running in production systems. Style and approach This book takes a fast-paced practical approach that quickly gets you up and running with Docker so that you spend less time learning and more time deploying Docker containers effectively. This book contains a mix of concepts, practical examples, techniques, and the most up-to-date content to run things effectively in production. We’ll show you the easiest way to speed up your development and deployment with Docker.
MEAN Web Development - Second Edition
MEAN Web Development - Second Edition
Amos Q. Haviv
¥80.65
Develop your real-time MEAN application efficiently using a combination of MongoDB, Express, Angular, and Node About This Book Construct a fully-functional MEAN application by using its components along with the best third-party modules Harness the power of the JavaScript ecosystem to effectively run, build, and test your MEAN application Gain a deep, practical understanding of real-time web application development through real-world examples Who This Book Is For If you are a JavaScript developer who is interested in building modern web applications using MongoDB, Express, Angular 2, and Node 5.0, then this book is for you. You only need knowledge of JavaScript development. What You Will Learn Use MongoDB to store and retrieve your application's data Connect your Express application to MongoDB and use the Mongoose module Manage your users' authentication and offer them diverse login options using Passport Structure and use an Angular 2 application in your MEAN project Use Socket.io to create real-time communication between your client and server Test your application's Express and Angular 2 entities In Detail The MEAN stack is a collection of the most popular modern tools for web development that helps you build fast, robust, and maintainable web applications. Starting with the MEAN core frameworks, this pragmatic guide will explain the key concepts of each framework, how to set them up properly, and how to use popular modules to connect it all together. By following the real-world examples shown in this tutorial, you will scaffold your MEAN application architecture, add an authentication layer, and develop an MVC structure to support your project development. You will learn the best practices of maintaining clear and simple code and will see how to avoid common pitfalls. Finally, you will walk through the different tools and frameworks that will help expedite your daily development cycles. Watch how your application development grows by learning from the only guide that is solely orientated towards building a full, end-to-end, real-time application using the MEAN stack! Style and approach This comprehensive guide covers every part of the MEAN stack, and focuses on the gestalt power of the apps they can create through practical, real-world examples
Mastering Oculus Rift Development
Mastering Oculus Rift Development
Jack Donovan
¥90.46
Explore the new frontier of virtual reality with the Oculus Rift and bring the VR revolution to your own projects About This Book Create immersive 3D games especially designed for the Oculus Rift platform Build complex realistic virtual reality (VR) games with the Unity Engine Create striking VR environments with advanced graphical techniques Who This Book Is For This book is for aspiring indie developers and VR enthusiasts who want to bring their ideas into virtual reality with a new platform that provides an unprecedented level of realism and immersion. What You Will Learn Increase immersion with 3D audio and intuitive interfaces Create group VR experiences using multi-player networking Design fun and engaging mechanics that utilize VR principles Explore the best ways to navigate and interact using the Oculus Rift Design intuitive ways to navigate and interact with scenes in VR Add stunning realism to a scene with three-dimensional audio Invent mechanics and features that take full advantage of VR hardware In Detail Virtual reality (VR) is changing the world of gaming and entertainment as we know it. VR headsets such as the Oculus Rift immerse players in a virtual world by tracking their head movements and simulating depth, giving them the feeling that they are actually present in the environment. We will first use the Oculus SDK in the book and will then move on to the widely popular Unity Engine, showing you how you can add that extra edge to your VR games using the power of Unity. In this book, you’ll learn how to take advantage of this new medium by designing around each of its unique features. This book will demonstrate the Unity 5 game engine, one of most widely-used engines for VR development, and will take you through a comprehensive project that covers everything necessary to create and publish a complete VR experience for the Oculus Rift. You will also be able to identify the common perils and pitfalls of VR development to ensure that your audience has the most comfortable experience possible. By the end of the book, you will be able to create an advanced VR game for the Oculus Rift, and you’ll have everything you need to bring your ideas into a new reality. Style and approach This book takes a step-by-step tutorial approach with illustrative examples to help you implement the projects on your own. The book lets you first get to grips with the Oculus SDK and then moves on to the Unity Engine to add realistic graphics and features in your games.
OpenCV 3 Computer Vision Application Programming Cookbook - Third Edition
OpenCV 3 Computer Vision Application Programming Cookbook - Third Edition
Robert Laganiere
¥90.46
Recipes to help you build computer vision applications that make the most of the popular C++ library OpenCV 3 About This Book Written to the latest, gold-standard specification of OpenCV 3 Master OpenCV, the open source library of the computer vision community Master fundamental concepts in computer vision and image processing Learn about the important classes and functions of OpenCV with complete working examples applied to real images Who This Book Is For OpenCV 3 Computer Vision Application Programming Cookbook Third Edition is appropriate for novice C++ programmers who want to learn how to use the OpenCV library to build computer vision applications. It is also suitable for professional software developers who wish to be introduced to the concepts of computer vision programming. It can also be used as a companion book for university-level computer vision courses. It constitutes an excellent reference for graduate students and researchers in image processing and computer vision. What You Will Learn Install and create a program using the OpenCV library Process an image by manipulating its pixels Analyze an image using histograms Segment images into homogenous regions and extract meaningful objects Apply image filters to enhance image content Exploit the image geometry in order to relay different views of a pictured scene Calibrate the camera from different image observations Detect people and objects in images using machine learning techniques Reconstruct a 3D scene from images In Detail Making your applications see has never been easier with OpenCV. With it, you can teach your robot how to follow your cat, write a program to correctly identify the members of One Direction, or even help you find the right colors for your redecoration. OpenCV 3 Computer Vision Application Programming Cookbook Third Edition provides a complete introduction to the OpenCV library and explains how to build your first computer vision program. You will be presented with a variety of computer vision algorithms and exposed to important concepts in image and video analysis that will enable you to build your own computer vision applications. This book helps you to get started with the library, and shows you how to install and deploy the OpenCV library to write effective computer vision applications following good programming practices. You will learn how to read and write images and manipulate their pixels. Different techniques for image enhancement and shape analysis will be presented. You will learn how to detect specific image features such as lines, circles or corners. You will be introduced to the concepts of mathematical morphology and image filtering. The most recent methods for image matching and object recognition are described, and you’ll discover how to process video from files or cameras, as well as how to detect and track moving objects. Techniques to achieve camera calibration and perform multiple-view analysis will also be explained. Finally, you’ll also get acquainted with recent approaches in machine learning and object classification. Style and approach This book will arm you with the basics you need to start writing world-aware applications right from a pixel level all the way through to processing video sequences.
TensorFlow Machine Learning Cookbook
TensorFlow Machine Learning Cookbook
Nick McClure
¥99.18
Explore machine learning concepts using the latest numerical computing library — TensorFlow — with the help of this comprehensive cookbook About This Book Your quick guide to implementing TensorFlow in your day-to-day machine learning activities Learn advanced techniques that bring more accuracy and speed to machine learning Upgrade your knowledge to the second generation of machine learning with this guide on TensorFlow Who This Book Is For This book is ideal for data scientists who are familiar with C++ or Python and perform machine learning activities on a day-to-day basis. Intermediate and advanced machine learning implementers who need a quick guide they can easily navigate will find it useful. What You Will Learn Become familiar with the basics of the TensorFlow machine learning library Get to know Linear Regression techniques with TensorFlow Learn SVMs with hands-on recipes Implement neural networks and improve predictions Apply NLP and sentiment analysis to your data Master CNN and RNN through practical recipes Take TensorFlow into production In Detail TensorFlow is an open source software library for Machine Intelligence. The independent recipes in this book will teach you how to use TensorFlow for complex data computations and will let you dig deeper and gain more insights into your data than ever before. You’ll work through recipes on training models, model evaluation, sentiment analysis, regression analysis, clustering analysis, artificial neural networks, and deep learning – each using Google’s machine learning library TensorFlow. This guide starts with the fundamentals of the TensorFlow library which includes variables, matrices, and various data sources. Moving ahead, you will get hands-on experience with Linear Regression techniques with TensorFlow. The next chapters cover important high-level concepts such as neural networks, CNN, RNN, and NLP. Once you are familiar and comfortable with the TensorFlow ecosystem, the last chapter will show you how to take it to production. Style and approach This book takes a recipe-based approach where every topic is explicated with the help of a real-world example.
OpenVPN Cookbook - Second Edition
OpenVPN Cookbook - Second Edition
Jan Just Keijser
¥90.46
Discover over 90 practical and exciting recipes that leverage the power of OpenVPN 2.4 to help you obtain a reliable and secure VPN About This Book Master the skills of configuring, managing, and securing your VPN using the latest OpenVPN Gain expertise in establishing IPv6 connections and understand PolarSSL using the latest version of OpenVPN This book contains enticing recipes about OpenVPN functionalities that cater to mission critical applications Who This Book Is For This book is for system administrators who have a basic knowledge of OpenVPN and are eagerly waiting to build, secure, and manage VPNs using the latest version. This book assumes some prior knowledge of TCP/IP networking and OpenVPN and you must have network administration skills to get the most out of this book. What You Will Learn Determine the best type of OpenVPN setup for your networking needs Get to grips with the encryption, authentication, and certifications features of OpenSSL. Integrate an OpenVPN server into the local IT infrastructure with the *ing features of OpenVPN Ease the integration of Windows clients into the VPN using Windows-specific client-side configuration Understand the authentication plugins for PAM and LDAP Get to know the difference between TUN-style and TAP-style networks and when to use what Troubleshoot your VPN setup Establish a connection via IPv6 along with demonstrations In Detail OpenVPN provides an extensible VPN framework that has been designed to ease site-specific customization, such as providing the capability to distribute a customized installation package to clients, and supporting alternative authentication methods via OpenVPN’s plugin module interface. This book provides you with many different recipes to help you set up, monitor, and troubleshoot an OpenVPN network. You will learn to configure a scalable, load-balanced VPN server farm that can handle thousands of dynamic connections from incoming VPN clients. You will also get to grips with the encryption, authentication, security, extensibility, and certifications features of OpenSSL. You will also get an understanding of IPv6 support and will get a demonstration of how to establish a connection via IPv64. This book will explore all the advanced features of OpenVPN and even some undocumented options, covering all the common network setups such as point-to-point networks and multi-client TUN-style and TAP-style networks. Finally, you will learn to manage, secure, and troubleshoot your virtual private networks using OpenVPN 2.4. Style and approach This practical, recipe-based book covers the core functionalities of OpenVPN ending with troubleshooting, performance tuning and making the readers inquisitive about the advanced features.
Mastering Windows Presentation Foundation
Mastering Windows Presentation Foundation
Sheridan Yuen
¥99.18
Master the art of building modern desktop applications on Windows About This Book Learn how to use the MVVM software architectural pattern and see the benefits of using it with Windows Presentation Fountain (WPF) Explore various ways to enhance efficiency through performance tuning and UI automation Obtain a deep understanding of data validation and understand various methods that suit different situations Who This Book Is For This book is for working developers with a moderate level of knowledge about Windows Presentation Foundation. It will also be of special interest to ambitious individuals who want to know more about application architecture. It is also suitable for those who just want to learn how to build visually stunning user interfaces. What You Will Learn Use MVVM to improve workflow Create visually stunning user interfaces Perform data binds proficiently Implement advanced data validation Locate and resolve errors quickly Master practical animations Improve your applications’ performance In Detail Windows Presentation Foundation is rich in possibilities when it comes to delivering an excellent user experience. This book will show you how to build professional-grade applications that look great and work smoothly. We start by providing you with a foundation of knowledge to improve your workflow – this includes teaching you how to build the base layer of the application, which will support all that comes after it. We’ll also cover the useful details of data binding. Next, we cover the user interface and show you how to get the most out of the built-in and custom WPF controls. The final section of the book demonstrates ways to polish your applications, from adding practical animations and data validation to improving application performance. The book ends with a tutorial on how to deploy your applications and outlines potential ways to apply your new-found knowledge so you can put it to use right away. The book also covers 2D and 3D graphics, UI automation, and performance tuning. Style and approach Filled with intriguing and practical examples, this book delineates concepts that will help you take your WPF skills to the next level.
Learning Functional Data Structures and Algorithms
Learning Functional Data Structures and Algorithms
Atul S. Khot
¥80.65
Learn functional data structures and algorithms for your applications and bring their benefits to your work now About This Book Moving from object-oriented programming to functional programmingThis book will help you get started with functional programming. Easy-to-understand explanations of practical topics will help you get started with functional data structures. Illustrative diagrams to explain the algorithms in detail. Get hands-on practice of Scala to get the most out of functional programming. Who This Book Is For This book is for those who have some experience in functional programming languages. The data structures in this book are primarily written in Scala, however implementing the algorithms in other functional languages should be straight forward. What You Will Learn Learn to think in the functional paradigm Understand common data structures and the associated algorithms, as well as the context in which they are commonly used Take a look at the runtime and space complexities with the O notation See how ADTs are implemented in a functional setting Explore the basic theme of immutability and persistent data structures Find out how the internal algorithms are redesigned to exploit structural sharing, so that the persistent data structures perform well, avoiding needless copying. Get to know functional features like lazy evaluation and recursion used to implement efficient algorithms Gain Scala best practices and idioms In Detail Functional data structures have the power to improve the codebase of an application and improve efficiency. With the advent of functional programming and with powerful functional languages such as Scala, Clojure and Elixir becoming part of important enterprise applications, functional data structures have gained an important place in the developer toolkit. Immutability is a cornerstone of functional programming. Immutable and persistent data structures are thread safe by definition and hence very appealing for writing robust concurrent programs. How do we express traditional algorithms in functional settingWon’t we end up copying too muchDo we trade performance for versioned data structuresThis book attempts to answer these questions by looking at functional implementations of traditional algorithms. It begins with a refresher and consolidation of what functional programming is all about. Next, you’ll get to know about Lists, the work horse data type for most functional languages. We show what structural sharing means and how it helps to make immutable data structures efficient and practical. Scala is the primary implementation languages for most of the examples. At times, we also present Clojure snippets to illustrate the underlying fundamental theme. While writing code, we use ADTs (abstract data types). Stacks, Queues, Trees and Graphs are all familiar ADTs. You will see how these ADTs are implemented in a functional setting. We look at implementation techniques like amortization and lazy evaluation to ensure efficiency. By the end of the book, you will be able to write efficient functional data structures and algorithms for your applications. Style and approach Step-by-step topics will help you get started with functional programming. Learn by doing with hands-on code snippets that give you practical experience of the subject.
Spring MVC: Designing Real-World Web Applications
Spring MVC: Designing Real-World Web Applications
Shameer Kunjumohamed
¥179.84
Unleash the power of Spring MVC and build enterprise-grade, lightning-fast web applications About This Book Configure Spring MVC to build logic-less controllers that transparently support the most advanced web techniques Secure your developments with easy-to-write, reliable unit and end-to-end tests Get this fast-paced, practical guide to produce REST resources and templates as required by the latest front-end best practices Who This Book Is For This Learning Path is for Java developers who want to exploit Spring MVC and its features to build web applications. It will help you step up in your career and stay up to date or learn more about Spring’s web scalability. What You Will Learn Set up and build standalone and web-based projects using Spring Framework with Maven or Gradle Develop RESTful API applications for XML and JSON data transfers Investigate Spring data access mechanisms with Spring Data Repositories Generate templates for a responsive and powerful front end with AngularJS and Bootstrap Authenticate over REST with a BASIC authentication scheme and OAuth2; handle roles and permissions Communicate through WebSocket and STOMP messages Design complex advanced-level forms and validate the model Create maintainable unit and acceptance tests to secure the apps Deploy the web application to the cloud in a snap In Detail Spring MVC helps you build flexible and loosely coupled web applications. The Spring MVC Framework is designed in such a way that every piece of logic and functionality is highly configurable. This Learning Path aims to make you an expert in designing web applications with Spring MVC 4. In our first module, we’ll begin with an introduction to the Spring framework. You'll then learn aspect-oriented programming. Packed with real-world examples, you’ll get an insight into how you can use Spring Expression Language in your applications to make them easier to manage and maintain. In the second module, you'll learn everything you need to build modern Spring-based enterprise web applications. From practical development techniques and useful tools from the wider Spring ecosystem, to the new JEE standards, the impact of JavaScript, and even the Internet of Things, you'll feel confident that you can deploy Spring for an impressive range of creative purposes. In the final module, you'll find out how to take advantage of Spring MVC's advanced features - essential if you are to properly master the framework. To do this you'll investigate the inner mechanics of Spring MVC, and how they tie into to the broader principles that inform many modern web architectures. With further guidance on how to test, secure, and optimize your application, as well as designing RESTful services, you'll very quickly be ready to use Spring in your next web project. This Learning Path combines some of the best that Packt has to offer in one complete, curated package. It includes content from the following Packt products: Spring Essentials by Shameer Kunjumohamed, Hamidreza Sattari Spring MVC Cookbook by Alex Bretet Mastering Spring MVC 4 by Geoffroy Warin Style and approach This is a hands-on, practical guide based on logical modules of the whole Spring framework family, employing a combination of theory and examples with pro-level practices, techniques, and solutions.
Javascript: Object Oriented Programming
Javascript: Object Oriented Programming
Ved Antani,Gastón C. Hillar,Stoyan Stefanov
¥143.87
Build sophisticated web applications by mastering the art of Object-Oriented Java* About This Book Learn popular Object-Oriented programming (OOP) principles and design patterns to build robust apps Implement Object-Oriented concepts in a wide range of frontend architectures Capture objects from real-world elements and create object-oriented code that represents them Learn the latest ES6 features and how to test and debug issues with JavaScript code using various modern mechanisms Who This Book Is For JavaScript developers looking to enhance their web developments skills by learning object-oriented programming. What You Will Learn Get acquainted with the basics of JavaScript language constructs along with object-oriented programming and its application. Learn to build scalable server application in JavaScript using Node.js Generate instances in three programming languages: Python, JavaScript, and C# Work with a combination of access modifiers, prefixes, properties, fields, attributes, and local variables to encapsulate and hide data Master DOM manipulation, cross-browser strategies, and ES6 Identify and apply the most common design patterns such as Singleton, Factory, Observer, Model-View-Controller, and Mediator Patterns Design applications using a modular architecture based on SOLID principles In Detail JavaScript is the behavior, the third pillar in today's paradigm that looks at web pages as something that consists of : content (HTML), presentation (CSS), and behavior (JavaScript). Using JavaScript, you can create interactive web pages along with desktop widgets, browser, and application extensions, and other pieces of software. Object-oriented programming, which is popularly known as OOP, is basically based on the concept of objects rather than actions. The first module will help you master JavaScript and build futuristic web applications. You will start by getting acquainted with the language constructs and how to organize code easily. You develop concrete understanding of variable scoping, loops, and best practices on using types and data structures, as well as the coding style and recommended code organization patterns in JavaScript. The book will also teach you how to use arrays and objects as data structures. By the end of the book, you will understand how reactive JavaScript is going to be the new paradigm. The second module is an easy-to-follow course, which includes hands-on examples of solutions to common problems with object-oriented code. It will help to identify objects from real-life scenarios, to protect and hide data with the data encapsulation features of Python, JavaScript, and C#. You will discover the advantage of duck typing in both Python and JavaScript, while you work with interfaces and generics in C#. With a fair understanding of interfaces, multiple inheritance, and composition, you will move on to refactor existing code and to organize your source for easy maintenance and extension. The third module takes you through all the in-depth and exciting futures hidden behind the facade. You should read through this course if you want to be able to take your JavaScript skills to a new level of sophistication. Style and approach This course is a comprehensive guide where each chapter consists of best practices, constructive advice, and few easy-to-follow examples that will build up your skills as you advance through the book. Get object oriented with this course, which takes you on a journey to get acquainted with few useful hands-on tools, features, and ways to enhance your productivity using OOP techniques. It will also act as a reference guide with useful examples on resolving problems with object-oriented code in Python, JavaScript, and C#.
Go: Building Web Applications
Go: Building Web Applications
Nathan Kozyra,Mat Ryer,
¥152.59
Build real-world, production-ready solutions by harnessing the powerful features of Go About This Book An easy-to-follow guide that provides everything a developer needs to know to build end-to-end web applications in Go Write interesting and clever, but simple code, and learn skills and techniques that are directly transferable to your own projects A practical approach to utilize application scaffolding to design highly scalable programs that are deeply rooted in go routines and channels Who This Book Is For This book is intended for developers who are new to Go, but have previous experience of building web applications and APIs. What You Will Learn Build a fully featured REST API to enable client-side single page apps Utilize TLS to build reliable and secure sites Learn to apply the nuances of the Go language to implement a wide range of start-up quality projects Create websites and data services capable of massive scale using Go's net/http package, exploring RESTful patterns as well as low-latency WebSocket APIs Interact with a variety of remote web services to consume capabilities ranging from authentication and authorization to a fully functioning thesaurus Explore the core syntaxes and language features that enable concurrency in Go Understand when and where to use concurrency to keep data consistent and applications non-blocking, responsive, and reliable Utilize advanced concurrency patterns and best practices to stay low-level without compromising the simplicity of Go itself In Detail Go is an open source programming language that makes it easy to build simple, reliable, and efficient software. It is a statically typed language with syntax loosely derived from that of C, adding garbage collection, type safety, some dynamic-typing capabilities, additional built-in types such as variable-length arrays and key-value maps, and a large standard library. This course starts with a walkthrough of the topics most critical to anyone building a new web application. Whether it’s keeping your application secure, connecting to your database, enabling token-based authentication, or utilizing logic-less templates, this course has you covered. Scale, performance, and high availability lie at the heart of the projects, and the lessons learned throughout this course will arm you with everything you need to build world-class solutions. It will also take you through the history of concurrency, how Go utilizes it, how Go differs from other languages, and the features and structures of Go's concurrency core. It will make you feel comfortable designing a safe, data-consistent, and high-performance concurrent application in Go. This course is an invaluable resource to help you understand Go's powerful features to build simple, reliable, secure, and efficient web applications. Style and approach This course is a step-by-step guide, which starts off with the basics of go programming to build web applications and will gradually move on to cover intermediate and advanced topics. You will be going through this smooth transition by building interesting projects along with the authors, discussing significant options, and decisions at each stage, while keeping the programs lean, uncluttered, and as simple as possible.
Python: Journey from Novice to Expert
Python: Journey from Novice to Expert
Fabrizio Romano,Dusty Phillips,Rick van Hattem
¥179.84
Learn core concepts of Python and unleash its power to * highest quality Python programs About This Book Develop a strong set of programming skills with Pyhton that you will be able to express in any situation, on every platform, thanks to Python's portability Stop writing *s and start architecting programs by applying object-oriented programming techniques in Python Learn the trickier aspects of Python and put it in a structured context for deeper understanding of the language Who This Book Is For This course is meant for programmers who wants to learn Python programming from a basic to an expert level. The course is mostly self-contained and introduces Python programming to a new reader and can help him become an expert in this trade. What You Will Learn Get Python up and running on Windows, Mac, and Linux in no time Grasp the fundamental concepts of coding, along with the basics of data structures and control flow Understand when to use the functional or the object-oriented programming approach Extend class functionality using inheritance Exploit object-oriented programming in key Python technologies, such as Kivy and Django Understand how and when to use the functional programming paradigm Use the multiprocessing library, not just locally but also across multiple machines In Detail Python is a dynamic and powerful programming language, having its application in a wide range of domains. It has an easy-to-use, simple syntax, and a powerful library, which includes hundreds of modules to provide routines for a wide range of applications, thus making it a popular language among programing enthusiasts.This course will take you on a journey from basic programming practices to high-end tools and techniques giving you an edge over your peers. It follows an interesting learning path, divided into three modules. As you complete each one, you’ll have gained key skills and get ready for the material in the next module.The first module will begin with exploring all the essentials of Python programming in an easy-to-understand way. This will lay a good foundation for those who are interested in digging deeper. It has a practical and example-oriented approach through which both the introductory and the advanced topics are explained. Starting with the fundamentals of programming and Python, it ends by exploring topics, like GUIs, web apps, and data science.In the second module you will learn about object oriented programming techniques in Python. Starting with a detailed analysis of object-oriented technique and design, you will use the Python programming language to clearly grasp key concepts from the object-oriented paradigm. This module fully explains classes, data encapsulation, inheritance, polymorphism, abstraction, and exceptions with an emphasis on when you can use each principle to develop well-designed software.With a good foundation of Python you will move onto the third module which is a comprehensive tutorial covering advanced features of the Python language. Start by creating a project-specific environment using venv. This will introduce you to various Pythonic syntax and common pitfalls before moving onto functional features and advanced concepts, thereby gaining an expert level knowledge in programming and teaching how to * highest quality Python programs. Style and approach This course follows a theory-cum-practical approach having all the ingredients that will help you jump into the field of Python programming as a novice and grow-up as an expert. The aim is to create a smooth learning path that will teach you how to get started with Python and carry out expert-level programming techniques at the end of course.
Android High Performance Programming
Android High Performance Programming
Enrique López Mañas,Diego Grancini,
¥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.
Asynchronous Android Programming - Second Edition
Asynchronous Android Programming - Second Edition
Helder Vasconcelos
¥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.
Swift: Developing iOS Applications
Swift: Developing iOS Applications
Andrew J Wagner,Giordano Scalzo,Jon Hoffman
¥161.31
Unleash the power of Swift and discover the skills required to build incredible robust iOS applications About This Book Write expressive, understandable, and maintainable Swift 2 code with this hands-on course Unveil the complex underpinnings of Swift to turn your app ideas into reality Specialize in developing real iOS apps, and 2D and 3D video games using Swift and Cocoapods Dive deep into protocol extensions, learn new error handling model and use featured Swift design patterns to write more efficient code Who This Book Is For This course would be for app developers who are new to developing for iOS or OSX and are trying to get grips with Swift for the first time. What You Will Learn From a solid understanding of the Swift 2 language Get to know the practical aspects of how a computer program actually works Understand the paradigms used by Apple’s frameworks, so you are not intimidated by them Create a server in Swift to deliver JSON data to an iOS app Take advantage of Cocoapods to use third-party libraries Build games with SpriteKit and SceneKit Develop an app running on the cloud to act as an API server for your client’s apps Dive into the core components of Swift 2 including operators, collections, control flow, and functions Create and use classes, structures, and enums including object-oriented topics such as inheritance, protocols, and extensions Develop a practical understanding of sub*s, optionals, and closures Master Objective-C interoperability with mix and match Access network resources using Swift Implement various standard design patterns in the Swift language In Detail The Swift––Developing iOS Applications course will take you on a journey to become an efficient iOS and OS X developer, with the latest trending topic in town. Right from the basics to the advanced level topics, this course would cover everything in detail. We’ll embark our journey by dividing the learning path into four modules. Each of these modules are a mini course in their own right; and as you complete each one, you’ll gain key skills and be ready for the material in the next module. The first module is like a step-by-step guide to programming in Swift 2. Each topic is separated into compressible sections that are full of practical examples and easy-to-understand explanations. Each section builds on the previous topics, so you can develop a proficient and comprehensive understanding of app development in Swift 2. By the end of this module, you’ll have a basic understanding of Swift 2 and its functionalities. The second module will be the an easy-to-follow guide filled with tutorials to show you how to build real-world apps. The difficulty and complexity level increases chapter by chapter. Each chapter is dedicated to build a new app, beginning from a basic and unstyled app through to a full 3D game. The last two chapters show you how to build a complete client-server e-commerce app right from scratch. You’ll be able to build well-designed apps, effectively use AutoLayout, develop videogames, and build server apps. The third and the last module of our course will take an example-based approach where each concept covered is supported by example code to not only give you a good understanding of the concept, but also to demonstrate how to properly implement it. Style and approach This course includes all the resources that will help you jump into the app development .This course covers all the important aspects Swift application development and is divided into individual modules so that you develop your skill after the completion of a module and get ready for the next. Through this comprehensive course, you'll learn how to use Swift programming with hands-on examples from scratch to finish!
Using CiviCRM - Second Edition
Using CiviCRM - Second Edition
Erik Hommel,Joseph Murray,Brian P. Shaughnessy
¥107.90
Develop and implement a fully-functional, systematic CRM plan with CiviCRM About This Book Develop an integrated online system that manages contacts, donations, event registrations, memberships, bulk e-mail, campaigns, case management, and other functions such as activity tracking, grant distribution, and reporting. Plan a constituency relationship management strategy with ladders of engagement that will improve how your organization realizes its mission. Use case studies and step-by-step examples to put the raw concepts into real-life terminology and build your solutions. Who This Book Is For The book is primarily for administrators tasked with implementing, configuring, maintaining, and updating CiviCRM, and staff users who are looking to better understand the tools available in order to become power users. CiviCRM is software that may be used by advocacy groups, non-profit, and non-governmental organizations, elected officials, professional and trade associations, government entities, political campaigns and parties, and other similar organizations, and this book will prove useful to all such users. What You Will Learn Install and configure your CiviCRM Analyze your current workflows and processes to translate them effectively into the CiviCRM model Build an integrated system to solicit, retain, and manage your donors and members through robust management and reporting tools for administrators Raise more money with CiviCRM with effective solicitation campaigns Market events effectively and track registrations and payments Improve communications with constituents using targeted broadcast e-mail campaigns Track ongoing communications with constituents including from Outlook and Gmail using activities and case management tools Take advantage of the many CiviCRM tools to generate both simple and complex event structures and manage registrants through every phase of the project In Detail CiviCRM provides a powerful toolbox of resources to help organizations manage relationships with constituents. It is free, open source, web-based, and geared specifically to meet the constituent relationship management needs of the not-for-profit sector. Beginning with broader questions about how your organization is structured, which existing workflows are critical to your operations, and the overarching purpose of a centralized CRM, the book proceeds step by step through configuring CiviCRM, understanding the choices when setting up the system, importing data, and exploring the breadth of tools available throughout the system. You will see how to best use this software to handle event registrations, accept and track contributions, manage paid and free memberships and sub*ions, segment contacts, send bulk e-mails with open and click-through tracking, manage outreach campaigns, and set up case management workflows that match your organization’s roles and rules. With specific emphasis on helping implementers ask the right questions, consider key principals when setting up the system, and understand usage through case studies and examples, the book comprehensively reviews the functionality of CiviCRM and the opportunities it provides. With this book, you can help your organization better achieve its mission as a charity, industry association, professional society, political advocacy group, community group, government agency, or other similar organization and position yourself to become a power user who efficiently and effectively navigates the system. Style and approach This guide is packed with step-by-step tutorials and real-life examples interspersed with practical advice and best practices on how to use CiviCRM strategically. You will be able to quickly grasp and implement the basic elements of CiviCRM before moving on to more advanced tools.
Android: Game Programming
Android: Game Programming
John Horton,Raul Portales,
¥179.84
Extend your game development skills by harnessing the power of Android SDK About This Book Gain the knowledge to design and build highly interactive and amazing games for your phone and tablet from scratch Create games that run at super-smooth 60 frames per second with the help of these easy-to-follow projects Understand the internals of a game engine by building one and seeing the reasoning behind each of the components Who This Book Is For If you are completely new to Java, Android, or game programming, this book is for you. If you want to publish Android games for fun or for business and are not sure where to start, then this book will show you what to do, step by step, from the start. What You Will Learn Set up an efficient, professional game development environment in Android Studio Explore object-oriented programming (OOP) and design scalable, reliable, and well-written Java games or apps on almost any Android device Build simple to advanced game engines for different types of game, with cool features such as sprite sheet character animation and scrolling parallax backgrounds Implement basic and advanced collision detection mechanics Process multitouch screen input effectively and efficiently Implement a flexible and advanced game engine that uses OpenGL ES 2 to ensure fast, smooth frame rates Use animations and particle systems to provide a rich experience Create beautiful, responsive, and reusable UIs by taking advantage of the Android SDK Integrate Google Play Services to provide achievements and leaderboards to the players In Detail Gaming has historically been a strong driver of technology, whether we're talking about hardware or software performance, the variety of input methods, or graphics support, and the Android game platform is no different. Android is a mature, yet still growing, platform that many game developers have embraced as it provides tools, APIs, and services to help bootstrap Android projects and ensure their success, many of which are specially designed to help game developers. Since Android uses one of the most popular programming languages, Java, as the primary language to build apps of all types, you will start this course by first obtaining a solid grasp of the Java language and its foundation APIs. This will improve your chances of succeeding as an Android app developer. We will show you how to get your Android development environment set up and you will soon have your first working game. The course covers all the aspects of game development through various engrossing and insightful game projects. You will learn all about frame-by-frame animations and resource animations using a space shooter game, create beautiful and responsive menus and dialogs, and explore the different options to play sound effects and music in Android. You will also learn the basics of creating a particle system and will see how to use the Leonids library. By the end of the course, you will be able to configure and use Google Play Services on the developer console and port your game to the big screen. This Learning Path combines some of the best that Packt has to offer in one complete, curated package. It includes content from the following Packt products: Learning Java by Building Android Games by John Horton Android Game Programming by Example by John Horton Mastering Android Game Development by Raul Portales Style and approach This course is a step-by-step guide where you will learn to build Android games from scratch. It takes a practical approach where each project is a game. It starts off with simple arcade games, and then gradually the complexity of the games keep on increasing as you uncover the new and advanced tools that Android offers.