The OS X operating system combines a stable core with advanced technologies to help you deliver world-class products on the Mac platform. Knowing what these technologies are, and how to use them, can help streamline your development process, while giving you access to key OS X features.
- Develop For Macos
- Develop For Microsoft
- Mac Os App Development
- Mac Os Developer Tools
- Developer Profile For Mac Os
- Big Sur Developer Beta
At a Glance
This guide introduces you to the range of possibilities for developing Mac software, describes the many technologies you can use for software development, and points you to sources of information about those technologies. It does not describe user-level system features or features that have no impact on software development.
- PL/SQL Developer by IFS Allround Automations is a feature-rich Integrated Development Environment (IDE) that was designed to help users develop units for Oracle databases using PL/SQL programming. Sadly, there is no version of PL/SQL Developer for Mac, but.
- Develop and Test for Any Platform. Fusion makes it possible to build and test apps for nearly any cloud, platform or device. A new CLI tool, ‘vctl,’ lets users run existing off-the-shelf options or build completely custom OCI containers, design apps and services with Kubernetes, all without needing a managed cloud environment. Apps and virtual machines run in secure local sandboxes and can.
OS X Has a Layered Architecture with Key Technologies in Each Layer
Mac Operating System also refered to as macOS is the operating system offered by Apple Inc. For its Macintosh series. Apple provides a set of its own tools for developing software for its devices. Developing a device driver or a graphical application for the Mac OS X environment is quite different from developing one for Linux and Windows.
So, as a Mac developer (who also writes for other UNIX OSes), my recommendation is buy a Mac and start using it, full time if you can. A Mac Mini is completely adequate for development and will set you back only a few hundered dollars, including the OS. Using Parallels Desktop 11, you can run Windows apps side-by-side with existing Mac applications, including Visual Studio and Cortana. A pro version is available that includes extra features for developers, including improved debugging, and support for Docker and Jenkins. For more info, and a free trial version, see Parallels Desktop.
It’s helpful to view the implementation of OS X as a set of layers. The lower layers of the system provide the fundamental services on which all software relies. Subsequent layers contain more sophisticated services and technologies that build on (or complement) the layers below.
The lower the layer a technology is in, the more specialized are the services it provides. Generally, technologies in higher layers incorporate lower-level technologies to provide common app behaviors. A good rule of thumb is to use the highest-level programming interface that meets the goals of your app. Here is a brief summary of the layers of OS X.
The Cocoa (Application) layer includes technologies for building an app’s user interface, for responding to user events, and for managing app behavior.
The Media layer encompasses specialized technologies for playing, recording, and editing audiovisual media and for rendering and animating 2D and 3D graphics.
The Core Services layer contains many fundamental services and technologies that range from Automatic Reference Counting and low-level network communication to string manipulation and data formatting.
The Core OS layer defines programming interfaces that are related to hardware and networking, including interfaces for running high-performance computation tasks on a computer’s CPU and GPU.
The Kernel and Device Drivers layer consists of the Mach kernel environment, device drivers, BSD library functions (
libSystem
), and other low-level components. The layer includes support for file systems, networking, security, interprocess communication, programming languages, device drivers, and extensions to the kernel.
Develop For Macos
Relevant Chapters:Cocoa Application Layer, Media Layer, Core Services Layer, Core OS Layer, Kernel and Device Drivers Layer
You Can Create Many Different Kinds of Software for Mac
Using the developer tools and system frameworks, you can develop a wide variety of software for Mac, including the following:
Apps. Apps help users accomplish tasks that range from creating content and managing data to connecting with others and having fun. OS X provides a wealth of system technologies such as app extensions and handoff, that you use to extend the capabilities of your apps and enhance the experience of your users.
Frameworks and libraries. Frameworks and libraries enable code sharing among apps.
Command-line tools and daemons. Command-line tools allow sophisticated users to manipulate data in the command-line environment of the Terminal app. Daemons typically run continuously and act as servers for processing client requests.
App plug-ins and loadable bundles. Plug-ins extend the capabilities of other apps; bundles contain code and resources that apps can dynamically load at runtime.
System plug-ins. System plug-ins, such as audio units, kernel extensions, I/O Kit device drivers, preference panes, Spotlight importers, and screen savers, extend the capabilities of the system.
Relevant Chapter:Creating Software Products for the Mac Platform
When Porting a Cocoa Touch App, Be Aware of API Similarities and Differences
The technology stacks on which Cocoa and Cocoa Touch apps are based have many similarities. Some system frameworks are identical (or nearly identical) in each platform, including Foundation, Core Data, and AV Foundation. This commonality of API makes some migration tasks—for example, porting the data model of your Cocoa Touch app—easy.
Other migration tasks are more challenging because they depend on frameworks that reflect the differences between the platforms. For example, porting controller objects and revising the user interface are more demanding tasks because they depend on AppKit and UIKit, which are the primary app frameworks in the Cocoa and CocoaTouch layers, respectively.
See Also
Apple provides developer tools and additional information that support your development efforts.
Xcode, Apple’s integrated development environment, helps you design, create, debug, and optimize your software. You can download Xcode from the Mac App Store.
Develop For Microsoft
For an overview of the developer tools for OS X, see the Xcode Apple Developer webpage. For an overview Xcode functionality, read Xcode Overview.
The OS X Developer Library contains the documentation, sample code, tutorials, and other information you need to write OS X apps. You can access the OS X Developer Library from the Apple Developer website or from Xcode. In Xcode, choose Help > Documentation and API Reference to view documents and other resources in the Organizer window.
In addition to the OS X Developer Library, there are other sources of information on developing different types of software for Mac:
Apple Open Source. Apple makes major components of OS X—including the UNIX core—available to the developer community. To learn about Apple’s commitment to Open Source development, visit Open Source Development Resources. To learn more about some specific Open Source projects, such as Bonjour and WebKit, visit Mac OS Forge.
BSD. Berkeley Software Distribution (BSD) is an essential UNIX-based part of the OS X kernel environment. Several excellent books on BSD and UNIX are available in bookstores. But you can also find additional information on any of the websites that cover BSD variants—for example, The FreeBSD Project.
Third-party books. Several excellent books on Mac app development can be found online and in the technical sections of bookstores.
Mac Os App Development
Copyright © 2004, 2015 Apple Inc. All Rights Reserved. Terms of Use | Privacy Policy | Updated: 2015-09-16
-->Use your current Mac computer to develop apps for Windows.
Run Windows on your Mac and use Visual Studio
Are you ready to start developing Universal Windows apps, but you don't have a PC handy? That's okay — you can use your Mac! With popular third-party solutions like Apple Boot Camp, Oracle VirtualBox, VMware Fusion, and Parallels Desktop, you can install Windows 10 and Microsoft Visual Studio on your Apple computer.
Note You will need a Windows 10 bootable image on disk or USB flash drive. If you are a MSDN Subscriber, you can download the install image from the MSDN Subscriber Downloads center. If you aren't a subscriber, the installer can be purchased from the Microsoft Store. You can also download it from this location, which is useful if you are already running Windows and wish to upgrade.
Once you have Windows running, you can then install the latest release of Visual Studio from Developer downloads for Windows 10 and start writing apps!
Note If you plan to use the Visual Studio device emulators, you must install a 64-bit (x64) version of Windows 10 Pro or better. Unfortunately, some older Macs cannot run 64-bit Windows. Please check with Apple if your hardware is compatible on thisApple support page.
Apple Boot Camp
The Boot Camp Assistant app is pre-installed on every recent Mac, and launching it will walk you through the process of installing Windows 10. All you need is a copy of Windows (from the sources listed above) and at least 30 Gb of free disk space. Once installed, you can choose to boot into Mac OSX or Windows 10. For more info, see Apple's Boot Camp instructions page.
Mac Os Developer Tools
Parallels Desktop
Using Parallels Desktop 11, you can run Windows apps side-by-side with existing Mac applications, including Visual Studio and Cortana. A pro version is available that includes extra features for developers, including improved debugging, and support for Docker and Jenkins. For more info, and a free trial version, see Parallels Desktop.
VMWare Fusion
Fusion 8 from VMWare will let you run Visual Studio right on your Mac desktop. A pro version is available to offer developers some more advanced features such as vSphere support. For more info, and a free trial version, see VMware Fusion.
Developer Profile For Mac Os
Oracle VirtualBox
Big Sur Developer Beta
VirtualBox is a free application for running virtual machines on your computer, and it supports running Windows on Mac. It is a no-frills option, but the price is appealing. For more info, see VirtualBox.