Macos Daemonology: Communicate with Daemons, Agents, and Helpers Through Xpc
暫譯: macOS 守護進程學:透過 XPC 與守護進程、代理和輔助程式溝通

Vashurkin, Volodymyr

  • 出版商: Apress
  • 出版日期: 2021-10-08
  • 售價: $1,770
  • 貴賓價: 9.5$1,682
  • 語言: 英文
  • 頁數: 235
  • 裝訂: Quality Paper - also called trade paper
  • ISBN: 1484272765
  • ISBN-13: 9781484272763
  • 海外代購書籍(需單獨結帳)

商品描述

Take advantage of the full power of Swift through XPC. Development for macOS differs from iOS and web-based development because of multicomponent applications. Besides the usual GUI-based applications and app extensions, there are a wide range of daemons--processes that run in the background--to worry about. These include system monitoring, event listening, notification agents, and many-many more.
First, you'll take a tour around different types of daemons: user agents, privileged helpers, login items, XPC services, and System Extensions. Knowing key specifics of the daemons will open a wide range of possibilities from non-trivial application development to system development. You'll find lots of examples, working code samples, and even ready-to-use utilities. The book will guide you step-by-step through preparation, registration, and management of all kinds of daemons.
System Extensions are brand new for macOS and open additional powerful features for developers. You'll explore installation, user flow, and communication with System Extensions, too, with examples, of course. XPC provides an object-oriented way of communication. There's no need for custom byte/text-based protocols. A good macOS developer has to know not only programming interfaces, but also design patterns related to technology. XPC communication has a few patterns of its own, and we'll go through them all, including uni- and bi-directional communication, passing objects by-value and by-proxy, handling connection invalidation, named and anonymous connections, and many more.
What You'll Learn
  • Use multiples types of daemons in your applications
  • Deal with System Extensions - the new type of system daemons
  • Get acquainted with Swift bridging patterns for XPC communication

Who This Book Is For
Software developers and solution architects with at least a working knowledge of macOS and Swift programming. As overview, may be interested for software/solution architects.

商品描述(中文翻譯)

充分利用 XPC 的 Swift 強大功能。macOS 的開發與 iOS 和基於網頁的開發有所不同,因為它涉及多組件應用程式。除了通常的 GUI 應用程式和應用程式擴展外,還有許多守護進程——在背景中運行的進程——需要關注。這些包括系統監控、事件監聽、通知代理等等。

首先,您將了解不同類型的守護進程:用戶代理、特權助手、登錄項目、XPC 服務和系統擴展。了解守護進程的關鍵細節將為從非平凡的應用程式開發到系統開發開啟廣泛的可能性。您將找到許多示例、可運行的代碼範例,甚至是現成的工具。本書將逐步指導您準備、註冊和管理各種守護進程。

系統擴展是 macOS 的全新功能,為開發人員開啟了額外強大的功能。您還將探索系統擴展的安裝、用戶流程和通信,當然還會有示例。XPC 提供了一種面向對象的通信方式。無需自定義的字節/文本協議。一位優秀的 macOS 開發人員不僅需要了解編程介面,還需要了解與技術相關的設計模式。XPC 通信有幾種自己的模式,我們將逐一介紹,包括單向和雙向通信、按值和按代理傳遞對象、處理連接失效、命名和匿名連接等等。

您將學到什麼


  • 在您的應用程式中使用多種類型的守護進程


  • 處理系統擴展 - 新型系統守護進程


  • 熟悉 XPC 通信的 Swift 橋接模式


本書適合誰

具備至少基本 macOS 和 Swift 編程知識的軟體開發人員和解決方案架構師。作為概述,可能對軟體/解決方案架構師感興趣。

作者簡介

Volodymyr Vashurkin (@alkenso) is an experienced macOS system and security developer and engineer. His first steps in daemonology were made while researching FileVault full disk encryption on macOS, and its interaction with iCloud services. iCloud on macOS uses plenty of system daemons and user agents, and investigating macOS's infrastructure led to a solid understanding of how the background world of macOS works. This led him deeply into the development of security solutions for macOS. Working in the security area, Volodymyr gained practical skills for creating GUI-based applications with fewer user agents (user background processes) and root daemons (root'ed background processes). In developing his knowledge and skills, Volodymyr faced numerous tricky cases, lack of documentation, and minor and major documentation gaffes. He would like to help his readers avoid the same pitfalls.

作者簡介(中文翻譯)

Volodymyr Vashurkin (@alkenso) 是一位經驗豐富的 macOS 系統與安全開發者及工程師。他在研究 macOS 上的 FileVault 全磁碟加密及其與 iCloud 服務的互動時,開始接觸守護進程(daemonology)。macOS 上的 iCloud 使用了許多系統守護進程和用戶代理,調查 macOS 的基礎架構使他對 macOS 背後的運作有了深入的理解。這使他深入開發 macOS 的安全解決方案。在安全領域工作期間,Volodymyr 獲得了創建基於 GUI 的應用程序的實用技能,這些應用程序使用較少的用戶代理(用戶背景進程)和根守護進程(root 的背景進程)。在提升自己的知識和技能的過程中,Volodymyr 遇到了許多棘手的案例、文檔不足以及小錯誤和重大文檔失誤。他希望能幫助讀者避免同樣的陷阱。

最後瀏覽商品 (20)