Mac OS X is an outstanding web development platform, with
its stable open-source core based on FreeBSD 5.0 and a wealth of
standard open-source web technologies. Mac OS X gives you the
ability to develop dynamic browser-based applications that you
can deploy locally, on Mac OS X Server, or on your
heterogeneous enterprise servers. On the client side, the Safari web
browser supports not only Mac OS X, but also Windows and iPhone, so you
have a greater audience for web applications than was available just a
year ago. The WebKit, which forms the basis of the Safari web browser,
provides a powerful HTML engine for use in your applications. Dashboard
widgets provide a simple yet powerful way to quickly get information
into the hands of your users. And if you prefer AJAX, WebObjects,
PHP, Perl, Python, JSP, or pure Java implementations, you can
collaboratively develop your site leveraging corporate resources
such as databases, LDAP repositories, and source code management
repositories. You'll enjoy the reliability of UNIX, plus the
rich user interface and ease of use that are the hallmarks of
Macintosh.
Sophisticated Web Applications
The availability of Safari on Mac OS X, Windows, and iPhone means you
now have a cross-platform delivery mechanism for new, unique types of
web applications. Safari is built on the Cocoa WebKit framework, which
provides a set of classes to support a variety of web content—from
the most trivial embedded web content application (with web content
displayed in a single window) to a full-featured web browser such as
Safari.
Safari includes support for Scalable Vector Graphics (SVG), a W3C
open standard. SVG brings to the WebKit the capability to draw basic shapes
and Bezier curves; precise text layout; linear and radial
gradients; transparency; raster graphics (images), and more. Some of the
advanced features include clipping, masking, patterns,
resolution-independent filters, animation, and so on. Plus, SVG can be
controlled from JavaScript the same way you program the Document Object Model (DOM). Scripting
SVG takes you beyond the Core DOM by allowing typed access to
attributes; computed values; and built-in graphics-oriented data
types.
You use the WebKit to display web content in a window of your
application, as well as edit web content within a WebView. You can also
modify the DOM directly using an Objective-C API. With
the WebKit, you can access JavaScript from Objective-C and vice
versa.
The WebKit can be extended to handle the details of client requests,
frame and resource loading, window operations, and downloading. You can
also implement your own document models and views to handle specific
MIME types. Because of this extensibility, the WebKit can be used to
develop some innovative Internet applications.
Information at your Fingertips
Dashboard enables Mac users to get fast access to information and
functionality they use frequently. The Dashboard is home to Widgets,
mini-applications that provide a very simple, tightly focused interface
for common tasks. They're lightweight (launch quickly), very simple, and
very easy to use. Widgets can stand alone, complement the functionality
of a larger and more powerful application, display information from the
Internet, and a lot more.
Widgets are based on the WebKit. Anyone who can weave HTML markup
with CSS (Cascading Style Sheets) and JavaScript can write a Widget.
Widgets support plug-ins, so you can drop down to Cocoa and Objective-C
and access the functionality of your own native code or any other system
code. And from Cocoa, you can access any other functionality on the
system.
Dashcode is Apple's Dashboard widget development environment. It
offers a built-in debugger and all the text editing features of a
professional IDE. Dashcode is geared for all levels of Widget
developers. You can start out with a prebuilt template and modify it to
your needs, or get deep into the JavaScript, CSS, and HTML that defines
all the aspects of how a Widget looks and works.
Multimedia Everywhere
QuickTime is Apple's multimedia
software architecture that provides digital video streaming
capability in all popular web browsers, including Safari,
Firefox, and Internet Explorer. QuickTime is a plug-in and sits in its own, self-contained world. For web development, QuickTime integrates with XHTML through simple interfaces. Other types of content can be rendered on top of your QuickTime
content, as well as below, including CSS, SVG, and even alpha-composited QuickTime! Plus, your QuickTime content can be styled using CSS, such as controlling the
video's opacity with the opacity property. This allows for complete skinning of QuickTime content and controls.
JavaScript can be used to control the QuickTime plug-in through access to the QuickTime APIs. You can get the status of the media
state while being retrieved, loaded, etc. You can also get more information about loaded data such as the movie size, number of bytes, loaded, and so on. The plug-in fires DOM events, just like AJAX technologies, so you can get notification of additional state changes, for example loaded, ended, timeupdate, durationchanged, or stalled. Callbacks allow the script to be notified when a given point in the media has been played.
Podcasts offer an extremely effective and popular way to deliver
content over the Internet. Apple's Podcast Producer is a complete,
end-to-end solution for producing professional-quality podcasts. With
the Podcast Capture application in Leopard, users can capture audio and
video, record onscreen actions, or submit existing QuickTime content to
the server. Once it's uploaded, Podcast Producer automatically publishes
content in formats optimized for playback on almost any device, from HD
video to iPod, Apple TV, or any multimedia-enabled cell phone.
Effective Collaboration
With Mac OS X Server, it's easy for anyone to create collaborative
web pages, called wikis, complete with group calendar, blog, and mailing
list. Wiki Server includes 20 Apple-designed themes for wiki-powered
websites, where group members can create blog entries, tag and
cross-reference material, upload files and images, add comments, and
perform keyword searches—all with just a few clicks. And there's
no need to worry about mistakes, because the wiki maintains the complete
history, so you can always revert to a previous version of any page.
Industry Standards
Mac OS X includes solid support for
web industry standard tools, including the Apache web server, AJAX, PHP, MySQL,
PostgreSQL, Perl, SFTP, WebDAV, Java 1.5, Java Web Start, and J2EE. Mac OS X
Server includes Apache
Tomcat, making development and deployment of J2EE applications easier than ever.
JavaScript is possibly the most popular web scripting language, and
as part of AJAX allows you to create some remarkable interfaces in a web
page, making possible browser-based applications that look and behave
like desktop applications.
For network security, Mac OS X relies on standards such as digital certificates,
SSL encryption, secure remote login through SSH, and directory and
authentication services through Open Directory, which works with LDAP and other
protocols, such as Active Directory.
Fast Development
The WebObjects framework makes it easy to develop, deploy, and extend your own
standards-based web services without writing low-level SOAP, XML or WSDL. These
web services can interoperate with clients written in many languages, including
Java, AppleScript, Perl and .Net, opening up enterprise development to your
class of programmers. You can also create database applications that have HTML,
XML, SMIL or Java Swing interfaces, depending on your needs. WebObjects gives
you the power to deliver enterprise-level web services and Java server
applications—and the agility to respond immediately to change.
Need to build a web application quickly? Use AppleScript, tightly integrated
into the Xcode IDE, to write clients that make remote procedure calls using the
XML-RPC and SOAP protocols. While you're working, you can continually store and
retrieve your web application's compiled language files and web files, such as
HTML, PHP, and Perl, with Xcode's integrated support for the powerful Subversion and CVS source code management tools.
With its fully integrated tools riding atop the rock-solid foundation of Mac OS
X, Macintosh provides the best browsing and web development experience on any
computer today.
For news, updates and links to other ADC content related to the Internet and
Web on Mac OS X, return to the Internet & Web topic page.
Updated: 2007-10-26
|