Beginning BazelDiscover Bazel, a new build and software test set of tools for today's programmers and developers. This book shows you how to speed up your builds and tests, and how to use Bazel in the context of your favorite programming language. You'll see that the languages and SDKs supported include Java, Android, iOS, and Go.
Use Bazel as a build tool; Test software with Bazel; Work with Java, C++, Android, iOS, Go, and other programming languages; Run Bazel on Linux, macOS, and Windows; Scale and extend Bazel to other languages and platforms. ...
C# 8.0 and .NET Core 3.0 : Modern Cross-Platform Development, 4th EditionIn C# 8.0 and .NET Core 3.0 - Modern Cross-Platform Development, Fourth Edition, expert teacher Mark J. Price gives you everything you need to start programming C# applications.
This latest edition uses the popular Visual Studio Code editor to work across all major operating systems. It is fully updated and expanded with new chapters on Content Management Systems (CMS) and machine learning with ML.NET.
The book covers all the topics you need. Part 1 teaches the fundamentals of C#, including object-oriented programming, and new C# 8.0 features such as nullable reference types, simplified switch pattern matching, and default interface methods. Part 2 covers the .NET Standard APIs, such as managing and querying data, monitoring and improving performance, working with the filesystem, async streams, serialization, and encryption. Part 3 provides examples of cross-platform applications you can build and deploy, such as web apps using ASP.NET Core or mobile apps using Xamarin.Forms. The ...
Fundamentals of Software ArchitectureSalary surveys worldwide regularly place software architect in the top 10 best jobs, yet no real guide exists to help developers become architects. Until now. This book provides the first comprehensive overview of software architecture's many aspects. Aspiring and existing architects alike will examine architectural characteristics, architectural patterns, component determination, diagramming and presenting architecture, evolutionary architecture, and many other topics.
Mark Richards and Neal Ford - hands-on practitioners who have taught software architecture classes professionally for years - focus on architecture principles that apply across all technology stacks. You'll explore software architecture in a modern light, taking into account all the innovations of the past decade.
This book examines:
Architecture patterns: The technical basis for many architectural decisions;
Components: Identification, coupling, cohesion, partitioning, and granularity;
Soft skills: Effective t ...
JavaScript EverywhereJavaScript is the little scripting language that could. Once used chiefly to add interactivity to web browser windows, JavaScript is now a primary building block of powerful and robust applications. In this practical book, new and experienced JavaScript developers will learn how to use this language to create APIs as well as web, mobile, and desktop applications.
Author and engineering leader Adam D. Scott covers technologies such as Node.js, GraphQL, React, React Native, and Electron. Ideal for developers who want to build full stack applications and ambitious web development beginners looking to bootstrap a startup, this book shows you how to create a single CRUD-style application that will work across several platforms.
Explore GraphQL's simple process for querying data; Learn about shared authentication for APIs, web apps, and native applications; Build performant web applications with React and Styled Components; Use React Native to write cross-platform applications for iOS ...
Programming iOS 13If you're grounded in the basics of Swift, Xcode, and the Cocoa framework, this book provides a structured explanation of all essential real-world iOS app components. Through deep exploration and copious code examples, you'll learn how to create views, manipulate view controllers, and add features from iOS frameworks.
Create, arrange, draw, layer, and animate views that respond to touch; Use view controllers to manage multiple screens of interface; Master interface classes for scroll views, table views, text, popovers, split views, web views, and controls; Dive into frameworks for sound, video, maps, and sensors; Access user libraries: music, photos, contacts, and calendar; Explore files, networking, and threads.
Stay up-to-date on iOS 13 innovations, such as: Symbol images; Light and dark mode; Sheet presentation; Diffable data sources and compositional layout; Context menus and previews; Window scene delegates and multiple windows on iPad.
Want to brush up on the basics? Pic ...
macOS Catalina: The Missing ManualApple gives macOS new features and improvements right on your desktop and under the hood with Catalina - aka OS X 10.15. With this updated guide, you'll learn how to use your iPad as a second screen, work with iPad apps on your Mac, and use Screen Time on your Mac. This new edition of the #1 bestselling Mac book shows you how to use the revamped apps for Music, Podcasts, and TV.
Loaded with illustrations, step-by-step instructions, tips, and tricks, this book from David Pogue - Missing Manual series creator, New York Times columnist, and Emmy-winning tech correspondent for CNBC, CBS, and NPR - covers everything Catalina has to offer with lots of humor and technical insight. ...
Using and Administering Linux: Volume 1Become a Linux sysadmin and expert user of Linux, even with no previous Linux experience and learn to manage complex systems with ease. Volume 1 of this three volume training course introduces operating systems in general and Linux in particular. It briefly explores the The Linux Philosophy for SysAdmins in preparation for the rest of the course. This book provides you with the tools necessary for mastering user management; installing, updating, and deleting software; and using command line tools to do performance tuning and basic problem determination.
You'll begin by creating a virtual network and installing an instance of Fedora - a popular and powerful Linux distribution - on a VirtualBox VM that can be used for all of the experiments on an existing Windows or Linux computer. You'll then move on to the basics of using the Xfce GUI desktop and the many tools Linux provides for working on the command line including virtual consoles, various terminal emulators, BASH, and other shel ...
Using and Administering Linux: Volume 3Manage complex systems with ease and equip yourself for a new career. This book builds upon the skills you learned in Volumes 1 and 2 of this course and it depends upon the virtual network and virtual machine you created there.
However, more experienced Linux users can begin with this volume and download an assigned script that will set up the VM for the start of Volume 3. Instructions with the script will provide specifications for configuration of the virtual network and the virtual machine. Refer to the volume overviews in the book's introduction to select the volume of this course most appropriate for your current skill level.
Start by reviewing the administration of Linux servers and install and configure various Linux server services such as DHCP, DNS, NTP, and SSH server that will be used to provide advanced network services. You'll then learn to install and configure servers such as BIND for name services, DHCP for network host configuration, and SSH for secure logins to ...
Microsoft Platform and Tools for Mobile App DevelopmentUnderstanding and creating a mobile app development strategy is an important process for today's development decision-makers who aim to open up new business opportunities or to empower employees to be more productive with new capabilities.
Microsoft defines an end-to-end (E2E) platform for the agile creation of mobile apps that can target any platform (iOS, Android, or Windows), provides easy consumption of services in the cloud or on-premises, spans the requirements for consumer or employee scenarios, offers development teams DevOps tools to improve quality and to achieve faster time to market, and allows for integration with existing enterprise systems.
This book outlines the E2E platform from Microsoft that forms the critical capabilities for organizations selecting technologies and tools for a Mobile Application Development Platform (MADP) and Rapid Mobile Application Development (RMAD). It also describes the core decision factors that organizations should consider, and it ou ...
Containerized Docker Application Lifecycle with Microsoft Platform and ToolsEnterprises are increasingly adopting containers. The enterprise is realizing the benefits of cost savings, solution to deployment problems, and DevOps and production operations improvements that containers provide. Over the last years, Microsoft has been rapidly releasing container innovations to the Windows and Linux ecosystems – partnering with industry leaders like Docker and Mesosphere to deliver container solutions that help companies build and deploy applications at cloud speed and scale, whatever their choice of platform or tools.
This guide provides end-to-end guidance on the Docker application development lifecycle with Microsoft tools and services while providing an introduction to Docker development concepts for readers who might be new to the Docker ecosystem. This way, anyone can understand the global picture and start planning development projects based on Docker and Microsoft technologies/cloud. ...