Groovy in Action, 2nd EditionIn the last ten years, Groovy has become an integral part of a Java developer's toolbox. Its comfortable, common-sense design, seamless integration with Java, and rich ecosystem that includes the Grails web framework, the Gradle build system, and Spock testing platform have created a large Groovy community.
Groovy in Action, 2nd Edition is the undisputed definitive reference on the Groovy language. Written by core members of the Groovy language team, this book presents Groovy like no other can—from the inside out. With relevant examples, careful explanations of Groovy's key concepts and features, and insightful coverage of how to use Groovy in-production tasks, including building new applications, integration with existing code, and DSL development, this is the only book you'll need. Updated for Groovy 2.4. ...
Oculus Rift in ActionVirtual reality has long been the domain of researchers and developers with access to specialized hardware and proprietary tools. With the appearance of the Oculus Rift VR headset, the game has changed. Using standard programming tools and the intuitive Oculus SDKs, you can deliver powerful immersive games, simulations, and other virtual experiences that finally nail the feeling of being in the middle of the action.
Oculus Rift in Action teaches you how to create 3D games and other virtual reality experiences for the Oculus Rift. You'll explore the Rift hardware through examples of real applications using the Oculus SDK and both the Oculus C API and the Unity 3D graphics engine. Along the way, you'll get practical guidance on how to use the Rift's sensors to produce fluid VR experiences. ...
Creating Dynamic UIs with Android Fragments, 2nd EditionToday's users expect mobile apps to be dynamic and highly interactive, with rich navigation features. These same apps must look fantastic whether running on a medium-resolution smartphone or high-resolution tablet. Fragments provide the toolset we need to meet these user expectations by enabling us to build our applications out of adaptable components that take advantage of the rich capabilities of each individual device and automatically adapt to their differences.
This book looks at the impact fragments have on Android UI design and their role in both simplifying many common UI challenges and in providing best practices for incorporating rich UI behaviors. We look closely at the roll of fragment transactions and how to work with the Android back stack. Leveraging this understanding, we explore several specialized fragment-related classes such as ListFragment and DialogFragment. We then go on to discuss how to implement rich navigation features such as swipe-based screen browsing, ...
Mastering JavaScriptJavaScript is a high-level, dynamic, untyped, lightweight, and interpreted programming language. Along with HTML and CSS, it is one of the three essential technologies of World Wide Web content production, and is an open source and cross-platform technology. The majority of websites employ JavaScript, and it is well supported by all modern web browsers without plugins. However, the JavaScript landscape has changed dramatically in recent years, and you need to adapt to the new world of JavaScript that people now expect. Mastering modern JavaScript techniques and the toolchain are essential to develop web-scale applications.
Mastering JavaScript will be your companion as you master JavaScript and build innovative web applications. To begin with, you will get familiarized with the language constructs and how to make code easy to organize. You will gain a concrete understanding of variable scoping, loops, and best practices on using types and data structures, as well as the coding style ...
Make a 2D Arcade Game in a Weekend: With UnityCreate and complete your first 2D arcade game in Unity. In Make a 2D Arcade Game in a Weekend with Unity, you will learn to create an arcade classic brick breaker game from beginning to end. You will plan the game flow, add the graphics and create the game logic using C#, then build the UX to complete your game. By the time you have finished, you will have enough knowledge to tweak the game to create more levels or your own variant game rules, and you will have the confidence to go on and create your own 2D arcade games. You will also learn how to publish the game into mobile app stores.
Unity is a powerful cross platform software tool that allows you to create 2D and 3D apps and games. Learning how to create a classic arcade game is a great way to learn the foundations of game design. While you do need to have a basic understanding of Unity to complete this project, advanced game building or advanced Unity experience is not required. ...
A Journey from Robot to Digital HumanThis book provides readers with a solid set of diversified and essential tools for the theoretical modeling and control of complex robotic systems, as well as for digital human modeling and realistic motion generation. Following a comprehensive introduction to the fundamentals of robotic kinematics, dynamics and control systems design, the author extends robotic modeling procedures and motion algorithms to a much higher-dimensional, larger scale and more sophisticated research area, namely digital human modeling. Most of the methods are illustrated by MATLAB codes and sample graphical visualizations, offering a unique closed loop between conceptual understanding and visualization. ...
Modern JavaScript ApplicationsOver the years, JavaScript has become vital to the development of a wide range of applications with different architectures. But JS moves lightning fast, and it's easy to fall behind. Modern JavaScript Applications is designed to get you exploring the latest features of JavaScript and how they can be applied to develop high-quality applications with different architectures.
Begin by creating a single page application that builds on the innovative MVC approach using AngularJS, then move forward to develop an enterprise-level application with the microservices architecture using Node to build web services. After that, shift your focus to network programming concepts as you build a real-time web application with websockets. Learn to build responsive, declarative UIs with React and Bootstrap, and see how the performance of web applications can be enhanced using Functional Reactive Programming (FRP). Along the way, explore how the power of JavaScript can be increased multi-fold with high ...
Practical Statistics for Data ScientistsStatistical methods are a key part of of data science, yet very few data scientists have any formal statistics training. Courses and books on basic statistics rarely cover the topic from a data science perspective. This practical guide explains how to apply various statistical methods to data science, tells you how to avoid their misuse, and gives you advice on what's important and what's not.
Many data science resources incorporate statistical methods but lack a deeper statistical perspective. If you're familiar with the R programming language, and have some exposure to statistics, this quick reference bridges the gap in an accessible, readable format.
Why exploratory data analysis is a key preliminary step in data science; How random sampling can reduce bias and yield a higher quality dataset, even with big data; How the principles of experimental design yield definitive answers to questions; How to use regression to estimate outcomes and detect anomalies; Key classification techni ...
Microservice ArchitectureMicroservices can have a positive impact on your enterprise - just ask Amazon and Netflix - but you can fall into many traps if you don't approach them in the right way. This practical guide covers the entire microservices landscape, including the principles, technologies, and methodologies of this unique, modular style of system building. You'll learn about the experiences of organizations around the globe that have successfully adopted microservices.
In three parts, this book explains how these services work and what it means to build an application the Microservices Way. You'll explore a design-based approach to microservice architecture with guidance for implementing various elements. And you'll get a set of recipes and practices for meeting practical, organizational, and cultural challenges to microservice adoption. ...
Mastering PostCSS for Web DesignPostCSS is a tool that has quickly emerged as the future of existing preprocessors such as SASS and Less, mainly because of its power, speed, and ease of use. This comprehensive guide offers in-depth guidance on incorporating cutting-edge styles into your web page and at the same time maintaining the performance and maintainability of your code.
The book will show how you can take advantage of PostCSS to simplify the entire process of stylesheet authoring. It covers various techniques to add dynamic and modern styling features to your web pages. As the book progresses, you will learn how to make CSS code more maintainable by taking advantage of the modular architecture of PostCSS. By the end of this book, you would have mastered the art of adding modern CSS effects to web pages by authoring high performing, maintainable stylesheets. ...