Build highly modular software in macOS that interacts deeply and intuitively with other programs.
About the Author: Hem Dutt started his software engineering career in 2010 as a macOS (OS X) application developer and thereafter designed and developed numerous native macOS and iOS applications for various clients across the globe while working in multiple MNCs.
284 Pages
Computers + Internet, Programming
Description
Book Synopsis
Build highly modular software in macOS that interacts deeply and intuitively with other programs. This book explores all techniques available for Inter-process communications (IPC) from high level macOS layers to deep kernel options while applying theoretical concepts into practical implementations on real world scenarios. You'll see how IPC techniques are used for exchanging data and messages among multiple threads in one or more processes, which may be running on one or more computers connected by a network or running locally. IPC methods can be divided into methods for message passing, synchronization, shared memory, and remote procedure calls (RPC). A poorly conceived IPC can even expose an entire network to over-the-network attacks. Despite the risks, processes and applications absolutely need to communicate with each other across your system and the network. You'll see how these communications facilitate information sharing, computational speedup, modularity, convenience, and privilege separation. In macOS, a program has a number of ways to communicate with other programs. These mechanisms for IPC often exist in different layers of the system. You'll examine how each has its own specific purposes, limitations, and intended scenarios. Some are more suitable than others for code written at a certain level of the system. For example, a kernel extension would not make use of Apple events. Additionally, the book reveals that different users have different rights when it comes to accessing files, changing system wide settings, and so on, depending on whether they are admin users or ordinary users. Running code with root or administrative privileges can intensify the dangers posed by security vulnerabilities. You'll learn that to elevate privileges safely, it is mandatory for the application to perform the task through a secure Helper process. What You'll Learn
Expand the capabilities of your programs by sharing data within multiple applications
Understand and dig deep into the world of Helper tools to create apps that need user privilege elevation
Enhance the modularity of a system by allowing your applications to interact and share data with a website
Who This Book Is For Software engineers and architects designing and developing secure applications for macOS and iOS who have hands-on knowledge of Swift with XCode.
From the Back Cover
Build highly modular software in macOS that interacts deeply and intuitively with other programs. This book explores all techniques available for Inter-process communications (IPC) from high level macOS layers to deep kernel options while applying theoretical concepts into practical implementations on real world scenarios. You'll see how IPC techniques are used for exchanging data and messages among multiple threads in one or more processes, which may be running on one or more computers connected by a network or running locally. IPC methods can be divided into methods for message passing, synchronization, shared memory, and remote procedure calls (RPC). A poorly conceived IPC can even expose an entire network to over-the-network attacks. Despite the risks, processes and applications absolutely need to communicate with each other across your system and the network. You'll see how these communications facilitate information sharing, computational speedup, modularity, convenience, and privilege separation. In macOS, a program has a number of ways to communicate with other programs. These mechanisms for IPC often exist in different layers of the system. You'll examine how each has its own specific purposes, limitations, and intended scenarios. Some are more suitable than others for code written at a certain level of the system. For example, a kernel extension would not make use of Apple events. Additionally, the book reveals that different users have different rights when it comes to accessing files, changing system wide settings, and so on, depending on whether they are admin users or ordinary users. Running code with root or administrative privileges can intensify the dangers posed by security vulnerabilities. You'll learn that to elevate privileges safely, it is mandatory for the application to perform the task through a secure Helper process. You will:
Expand the capabilities of your programs by sharing data within multiple applications
Understand and dig deep into the world of Helper tools to create apps that need user privilege elevation
Enhance the modularity of a system by allowing your applications to interact and share data with a website
About the Author
Hem Dutt started his software engineering career in 2010 as a macOS (OS X) application developer and thereafter designed and developed numerous native macOS and iOS applications for various clients across the globe while working in multiple MNCs. With more than a continuous decade of experience working in macOS, Hem Dutt has developed applications in multiple domains; including healthcare, insurance, VPN clients, publishing, and IOT. His passion for designing and developing secure, reliable, and modular software is evident from his blogs, client awards/recommendations, and open source projects.
Dimensions (Overall): 9.21 Inches (H) x 6.14 Inches (W) x .64 Inches (D)
Weight: .94 Pounds
Suggested Age: 22 Years and Up
Number of Pages: 284
Genre: Computers + Internet
Sub-Genre: Programming
Publisher: Apress
Theme: Macintosh
Format: Paperback
Author: Hem Dutt
Language: English
Street Date: May 29, 2021
TCIN: 1011990321
UPC: 9781484270448
Item Number (DPCI): 247-20-7594
Origin: Made in the USA or Imported
If the item details aren’t accurate or complete, we want to know about it.
Shipping details
Estimated ship dimensions: 0.64 inches length x 6.14 inches width x 9.21 inches height
Estimated ship weight: 0.94 pounds
We regret that this item cannot be shipped to PO Boxes.
This item cannot be shipped to the following locations: American Samoa (see also separate entry under AS), Guam (see also separate entry under GU), Northern Mariana Islands, Puerto Rico (see also separate entry under PR), United States Minor Outlying Islands, Virgin Islands, U.S., APO/FPO, Alaska, Hawaii
Return details
This item can be returned to any Target store or Target.com.
This item must be returned within 90 days of the date it was purchased in store, delivered to the guest, delivered by a Shipt shopper, or picked up by the guest.