Authors Kelsey Hightower, Brendan Burns, and Joe Beda—who’ve worked on Kubernetes at Google and other organizatons—explain how this system fits into the lifecycle of a distributed application. You will learn how to use tools and APIs to automate scalable distributed systems, whether it is for online services, machine-learning applications, or a cluster of Raspberry Pi computers.Explore the distributed system challenges that Kubernetes addressesDive into containerized application development, using containers such as DockerCreate and run containers on Kubernetes, using the docker image format and container runtimeExplore specialized objects essential for running applications in productionReliably roll out new software versions without downtime or errorsGet examples of how to develop and deploy real-world applications in Kubernetes
A radical departure from conventional Bluetooth technology, Bluetooth low energy (BLE) enables breakthrough wireless applications in industries ranging from healthcare to transportation. Running on a coin-sized battery, BLE can operate reliably for years, connecting and extending everything from personal area network devices to next-generation sensors. Now, one of the standard’s leading developers has written the first comprehensive, accessible introduction to BLE for every system developer, designer, and engineer.
Robin Heydon, a member of the Bluetooth SIG Hall of Fame, has brought together essential information previously scattered through multiple standards documents, sharing the context and expert insights needed to implement high-performance working systems. He first reviews BLE’s design goals, explaining how they drove key architectural decisions, and introduces BLE’s innovative usage models. Next, he thoroughly covers how the two main parts of BLE, the controller and host, work together, and then addresses key issues from security and profiles through testing and qualification. This knowledge has enabled the creation of Bluetooth Smart and Bluetooth Smart Ready devices.
This guide is an indispensable companion to the official BLE standards documents and is for every technical professional and decision-maker considering BLE, planning BLE products, or transforming plans into working systems.
Topics IncludeBLE device types, design goals, terminology, and core concepts Architecture: controller, host, applications, and stack splits Usage models: presence detection, data broadcasting, connectionless models, and gateways Physical Layer: modulation, frequency band, radio channels, power, tolerance, and range Direct Test Mode: transceiver testing, hardware interfaces, and HCI Link Layer: state machine, packets, channels, broadcasting, encryption, and optimization HCI: physical/logical interfaces, controller setup, and connection management L2CAP: channels and packet structure, and LE signaling channels Attributes: grouping, services, characteristics, and protocols Security: pairing, bonding, and data signing Generic Access Profiles: roles, modes, procedures, security modes, data advertising, and services Applications, devices, services, profiles, and peripherals Testing/qualification: starting projects, selecting features, planning, testing, compliance, and more
Readers learn how to use a domain model to make a complex development effort more focused and dynamic. A core of best practices and standard patterns provides a common language for the development team. A shift in emphasis–refactoring not just the code but the model underlying the code–in combination with the frequent iterations of Agile development leads to deeper insight into domains and enhanced communication between domain expert and programmer. Domain-Driven Design then builds on this foundation, and addresses modeling and design for complex systems and larger organizations.Specific topics covered include:
With this book in hand, object-oriented developers, system analysts, and designers will have the guidance they need to organize and focus their work, create rich and useful domain models, and leverage those models into quality, long-lasting software implementations.
The algorithms in this book represent a body of knowledge developed over the last 50 years that has become indispensable, not just for professional programmers and computer science students but for any student with interests in science, mathematics, and engineering, not to mention students who use computation in the liberal arts.
The companion web site, algs4.cs.princeton.edu, containsAn online synopsis Full Java implementations Test data Exercises and answers Dynamic visualizations Lecture slides Programming assignments with checklists Links to related material
The MOOC related to this book is accessible via the "Online Course" link at algs4.cs.princeton.edu. The course offers more than 100 video lecture segments that are integrated with the text, extensive online assessments, and the large-scale discussion forums that have proven so valuable. Offered each fall and spring, this course regularly attracts tens of thousands of registrants.
Robert Sedgewick and Kevin Wayne are developing a modern approach to disseminating knowledge that fully embraces technology, enabling people all around the world to discover new ways of learning and teaching. By integrating their textbook, online content, and MOOC, all at the state of the art, they have built a unique resource that greatly expands the breadth and depth of the educational experience.