Programming Mac OS X: a GUIDE for UNIX DEVELOPERS

Total Page:16

File Type:pdf, Size:1020Kb

Programming Mac OS X: a GUIDE for UNIX DEVELOPERS Programming Mac OS X: A GUIDE FOR UNIX DEVELOPERS KEVIN O’MALLEY MANNING Programming Mac OS X Programming Mac OS X A GUIDE FOR UNIX DEVELOPERS KEVIN O’MALLEY MANNING Greenwich (74° w. long.) For electronic information and ordering of this and other Manning books, go to www.manning.com. The publisher offers discounts on this book when ordered in quantity. For more information, please contact: Special Sales Department Manning Publications Co. 209 Bruce Park Avenue Fax: (203) 661-9018 Greenwich, CT 06830 email: [email protected] ©2003 by Manning Publications Co. All rights reserved. No part of this publication may be reproduced, stored in a retrieval system, or transmitted, in any form or by means electronic, mechanical, photocopying, or otherwise, without prior written permission of the publisher. Many of the designations used by manufacturers and sellers to distinguish their products are claimed as trademarks. Where those designations appear in the book, and Manning Publications was aware of a trademark claim, the designations have been printed in initial caps or all caps. Recognizing the importance of preserving what has been written, it is Manning’s policy to have the books they publish printed on acid-free paper, and we exert our best efforts to that end. Manning Publications Co. Copyeditor: Tiffany Taylor 209 Bruce Park Avenue Typesetter: Denis Dalinnik Greenwich, CT 06830 Cover designer: Leslie Haimes ISBN 1-930110-85-5 Printed in the United States of America 12345678910–VHG–05 040302 brief contents PART 1OVERVIEW ............................................................................. 1 1 ■ Welcome to Mac OS X 3 2 ■ Navigating and using Mac OS X 27 PART 2TOOLS ................................................................................... 55 3 ■ Project Builder and Interface Builder 57 4 ■ Development tools 109 PART 3PROGRAMMING .................................................................. 169 5 ■ Objective-C and the Cocoa development frameworks 171 6 ■ Cocoa programming 203 7 ■ AppleScript programming 245 8 ■ Mac OS X and beyond 279 v contents foreword xiii preface xv acknowledgments xviii about this book xix about the author xxiii about the cover illustration xxiv PART 1OVERVIEW .................................................................. 1 Welcome to Mac OS X 3 1 1.1 Introduction 4 Origins of Mac OS X 5 1.2 The Macintosh user interface 6 1.3 The Mac OS X user interface 8 The desktop 8 ■ Menus 8 ■ The Dock 10 Window layering 11 ■ Dialog boxes 11 ■ Drawers 12 Keyboard navigation 12 ■ Other interface features 13 1.4 The Mac OS X architecture 13 Architecture layers 15 ■ The kernel environment 16 Core Services layer 20 ■ Application Services layer 21 Application Environment layer 22 ■ Aqua 26 1.5 Summary 26 vii viii CONTENTS Navigating and using Mac OS X 27 2 2.1 Introduction 28 2.2 Shells 29 Terminal features 31 2.3 Help system 32 Help Viewer 33 2.4 User accounts and privileges 33 Creating user accounts 34 2.5 Booting and default services 36 2.6 Programs and Mac OS X bundles 37 2.7 Security issues 39 2.8 File system 39 Finder 41 ■ Case sensitivity and pathname delimiters 43 2.9 Single-user mode 44 2.10 System log files 45 2.11 Processes management 45 2.12 Common commands and tools 46 2.13 Scripting languages 48 AppleScript 48 2.14 Development tools 50 2.15 X Window under Mac OS X 51 Installing the X server 52 2.16 UNIX to Mac OS X software projects 53 2.17 Summary 54 PART 2TOOLS....................................................................... 55 Project Builder and Interface Builder 57 3 3.1 Introduction 58 Macintosh Programmer’s Workbench 59 THINK Pascal and THINK C 59 ■ CodeWarrior 60 Project Builder and Interface Builder 60 3.2 Creating an application with Project Builder 62 CONTENTS ix 3.3 Project Builder in depth 67 Targets and build styles 67 ■ Project Builder’s UNIX tools 68 Project Builder’s interface 69 ■ Project Builder scenarios 78 3.4 Creating an application with Interface Builder 100 Interface Builder scenarios 101 3.5 Summary 108 Development tools 109 4 4.1 Introduction 110 4.2 UNIX development tools under Mac OS X 112 Editors 112 ■ Mac OS X editing tools 113 Version control 117 ■ Static code analysis tools 121 4.3 Compilers and build tools 122 4.4 Mac OS X Aqua-based development tools 122 UNIX-based editors 122 ■ Mac OS X-based editors 127 4.5 Apple’s GUI-based development tools 127 Apple Help Indexing Tool 128 ■ AppleScript Studio 128 FileMerge 129 ■ Icon Composer 132 Interface Builder 132 ■ JavaBrowser 133 MRJAppBuilder 134 ■ MallocDebug 135 ■ ObjectAlloc 143 PEF Viewer 143 ■ PackageMaker 144 ■ Pixie 144 Project Builder 144 ■ PropertyListEditor 144 Quartz Debug 146 ■ Sampler 147 ■ Thread Viewer 150 icns Browser 155 4.6 Apple’s command-line development tools 156 ps (process status) and top (system usage statistics) 156 sc_usage: showing system call usage statistics 158 fs_usage: reporting system calls and page faults related to the filesystem in real-time 160 ■ gprof: displaying execution profile data 161 ■ leaks: searching a process’s memory for unreferenced malloc buffers 163 ■ heap: listing all the malloc-allocated buffers in the process’s heap 165 malloc_history: showing malloc allocations that a process has performed 165 ■ sample: profiling a process during a time interval 166 4.7 Summary 167 x CONTENTS PART 3PROGRAMMING....................................................... 169 Objective-C and the Cocoa development frameworks 171 5 5.1 Introduction 172 5.2 Introduction to Objective-C 173 Object-oriented terminology 174 ■ Classes 175 Messages 177 ■ Categories 178 ■ Protocols 180 Other features 180 ■ Why learn Objective-C? 181 5.3 Cocoa software infrastructure 182 Foundation 182 ■ Application Kit 187 Memory management 188 ■ Design patterns 193 Cocoa event handling 197 5.4 Other Cocoa development languages 200 C++ 201 ■ Perl 201 ■ Ruby 202 5.5 Summary 202 Cocoa programming 203 6 6.1 Introduction 204 6.2 The CocoaWGet example program 205 6.3 Program requirements 207 6.4 Program design 208 6.5 Building the interface 209 Opening the project 209 ■ The interface components 210 Control alignment and spacing 212 ■ Forms 215 Classes and instances 215 6.6 CocoaWGet: implementing code with Project Builder 220 The model 221 ■ The view 224 ■ The controller 224 6.7 Program extensions 233 Letting the user cancel downloads 234 The application icon 239 ■ The help file 241 6.8 Summary 243 CONTENTS xi AppleScript programming 245 7 7.1 Introduction 246 7.2 Scripting languages 247 7.3 AppleScript 248 Creating and running a script 250 ■ Types of AppleScripts 251 AppleScript extensions 252 ■ The AppleScript language 254 Choosing a scripting language 264 7.4 Example applications of AppleScript 264 iTunes and AppleScript 264 ■ AppleScript Studio 269 7.5 Summary 278 Mac OS X and beyond 279 8 8.1 Introduction 280 8.2 Development tools 281 Compilers 281 ■ Project Builder 283 ■ Changing compilers 283 Inline scripting 283 ■ New target editor 286 Searching documentation 287 8.3 Terminal application 289 Setting Terminal preferences 289 Splitting the Terminal window 292 Other Terminal additions 293 8.4 The PerlObjCBridge 293 PerlObjCBridge example 295 8.5 Summary 300 A Getting and installing development tools 301 UNIX and Mac OS X command mappings 303 B B.1 Common Mac OS X operations 304 B.2 UNIX file/directory commands mapped to Mac OS X commands 304 List directory contents: ls 304 Copy/move files or folders: cp, mv 305 Remove files or folders: rm 305 ■ Change directory: cd 305 xii CONTENTS Create a new directory: mkdir 305 Change file permission and group: chmod, chgrp 306 Compare files: diff 306 ■ Get the word, line, or byte count: wc 306 Compress and decompress data: compress, uncompress, tar, gzip, gnuzip, unzip, zcat 306 ■ Edit text files: emacs, vi 306 View files: head, tail 306 ■ Find files: find 307 B.3 UNIX communication commands mapped to Mac OS X commands 307 OpenSSH: ssh, scp 307 ■ Talk to another user: talk, ytalk 307 B.4 UNIX process management commands mapped to Mac OS X commands 307 Show system and process usage statistics: top, ps 307 Terminate a process: kill 307 The precursor of Mac OS X: Mac OS 309 C C.1 A tour of the Mac OS interface 310 C.2 Interacting with the system 312 C.3 Mac OS system components 313 System file and Finder 314 ■ Process scheduling 314 Memory management 315 Extending the system through system extensions 317 Interapplication communication (IAC) 318 File system 319 ■ Macintosh files 319 ■ Graphics 320 Networking 321 A brief history of UNIX 323 D D.1 The origin of UNIX 324 High-level languages and punch cards 324 Batch processing 325 ■ Time-sharing 326 D.2 The birth and development of UNIX 328 D.3 GNU, Free Software Foundation, and open source 333 D.4 UNIX software development philosophy 335 resources 337 index 345 foreword Apple’s release of the Macintosh in 1984 heralded a computer revolution in ease of use for nontechnical people. Over time, computers and computer interfaces split into three main camps: Microsoft Windows, the Macintosh, and the various flavors of UNIX. UNIX has been a traditional favorite of the research and scientific community for a variety of reasons. With the rise of Linux, it has become more popular than ever. Now Apple has brought the worlds of Macintosh user experience and UNIX together to form Mac OS X. With a full-featured UNIX system as the driving engine, the two worlds have merged. All that remains is to create better software for this new blended environment. This has proven to be challenging. Many UNIX developers haven’t written code for graphical user interfaces, while many Macintosh developers haven’t written code based on UNIX environments. Bringing these two diverse types of devel- opers to the same playing field can be difficult because they each need to learn from the other.
Recommended publications
  • Broken Breakout Promises
    Broken Breakout Promises Broken Breakout Promises Before co-founding Apple in April 1976, Steve Jobs was one of the To make ends meet in the summer of first 50 employees at Atari, the legendary Silicon Valley game company 1972, Woz, Jobs, and Jobs’ girlfriend took $3-per-hour jobs at the Westgate founded by Nolan Kay Bushnell in 1972. Atari’s Pong, a simple Mall in San Jose, California, dressing up electronic version of ping-pong, had caught on like wildfire in arcades as Alice In Wonderland characters. Jobs and homes across the country, and Bushnell was anxious to come up and Woz alternated as the White Rabbit with a successor. He envisioned a variation on Pong called Breakout, and the Mad Hatter. in which the player bounced a ball off a paddle at the bottom of the screen in an attempt to smash the bricks in a wall at the top. Bushnell turned to Jobs, a technician, to design the circuitry. Initially Jobs tried to do the work himself, but soon realized he was in way over his head and asked his friend Steve Wozniak to bail him out. “Steve wasn’t capable of designing anything that complex. He came .atarihq.com) “He was the only person I met who knew more about electronics than me.” Courtesy of Atari Gaming Headquarters (www Courtesy of Steve Jobs, explaining his initial fascination with Woz “Steve didn’t know very much about electronics.” Conceived by Bushnell, Breakout was originally designed by Wozniak and Jobs. Steve Wozniak For more info, or to order a copy, please visit http://www.netcom.com/~owenink/confidential.html 17 Broken Breakout Promises to me and said Atari would like a game and described how it would work,” recalls Wozniak.
    [Show full text]
  • Mac Keyboard Shortcuts Cut, Copy, Paste, and Other Common Shortcuts
    Mac keyboard shortcuts By pressing a combination of keys, you can do things that normally need a mouse, trackpad, or other input device. To use a keyboard shortcut, hold down one or more modifier keys while pressing the last key of the shortcut. For example, to use the shortcut Command-C (copy), hold down Command, press C, then release both keys. Mac menus and keyboards often use symbols for certain keys, including the modifier keys: Command ⌘ Option ⌥ Caps Lock ⇪ Shift ⇧ Control ⌃ Fn If you're using a keyboard made for Windows PCs, use the Alt key instead of Option, and the Windows logo key instead of Command. Some Mac keyboards and shortcuts use special keys in the top row, which include icons for volume, display brightness, and other functions. Press the icon key to perform that function, or combine it with the Fn key to use it as an F1, F2, F3, or other standard function key. To learn more shortcuts, check the menus of the app you're using. Every app can have its own shortcuts, and shortcuts that work in one app may not work in another. Cut, copy, paste, and other common shortcuts Shortcut Description Command-X Cut: Remove the selected item and copy it to the Clipboard. Command-C Copy the selected item to the Clipboard. This also works for files in the Finder. Command-V Paste the contents of the Clipboard into the current document or app. This also works for files in the Finder. Command-Z Undo the previous command. You can then press Command-Shift-Z to Redo, reversing the undo command.
    [Show full text]
  • Porting Codewarrior Projects to Xcode
    Porting CodeWarrior Projects to Xcode 2006-09-05 Intel and Intel Core are registered Apple Computer, Inc. trademarks of Intel Corportation or its © 2003, 2006 Apple Computer, Inc. subsidiaries in the United States and other All rights reserved. countries. Java and all Java-based trademarks are No part of this publication may be trademarks or registered trademarks of Sun reproduced, stored in a retrieval system, or Microsystems, Inc. in the U.S. and other transmitted, in any form or by any means, countries. mechanical, electronic, photocopying, recording, or otherwise, without prior OpenGL is a registered trademark of Silicon written permission of Apple Computer, Inc., Graphics, Inc. with the following exceptions: Any person PowerPC and and the PowerPC logo are is hereby authorized to store documentation trademarks of International Business on a single computer for personal use only Machines Corporation, used under license and to print copies of documentation for therefrom. personal use provided that the Simultaneously published in the United documentation contains Apple’s copyright States and Canada. notice. Even though Apple has reviewed this document, The Apple logo is a trademark of Apple APPLE MAKES NO WARRANTY OR Computer, Inc. REPRESENTATION, EITHER EXPRESS OR IMPLIED, WITH RESPECT TO THIS Use of the “keyboard” Apple logo DOCUMENT, ITS QUALITY, ACCURACY, MERCHANTABILITY, OR FITNESS FOR A (Option-Shift-K) for commercial purposes PARTICULAR PURPOSE. AS A RESULT, THIS without the prior written consent of Apple DOCUMENT IS PROVIDED “AS IS,” AND YOU, THE READER, ARE ASSUMING THE may constitute trademark infringement and ENTIRE RISK AS TO ITS QUALITY AND unfair competition in violation of federal ACCURACY.
    [Show full text]
  • Bbedit 12.6.3 User Manual
    User Manual BBEdit™ Professional Code and Text Editor for the Macintosh Bare Bones Software, Inc. ™ BBEdit 12.6.3 Product Design Jim Correia, Rich Siegel, Steve Kalkwarf, Patrick Woolsey Product Engineering Jim Correia, Seth Dillingham, Matt Henderson, Jon Hueras, Steve Kalkwarf, Rich Siegel, Steve Sisak Engineers Emeritus Chris Borton, Tom Emerson, Pete Gontier, Jamie McCarthy, John Norstad, Jon Pugh, Mark Romano, Eric Slosser, Rob Vaterlaus Documentation Fritz Anderson, Philip Borenstein, Stephen Chernicoff, John Gruber, Jeff Mattson, Jerry Kindall, Caroline Rose, Allan Rouselle, Rich Siegel, Vicky Wong, Patrick Woolsey Additional Engineering Polaschek Computing Icon Design Bryan Bell Factory Text Color Schemes Luke Andrews Packaging Design Ultra Maroon Design PHP keyword lists Contributed by Ted Stresen-Reuter cmark ©John MacFarlane. Used under license. Part of the CommonMark project LibNcFTP Used under license from and copyright © 1996-2010 Mike Gleason & NcFTP Software Exuberant ctags ©1996-2004 Darren Hiebert http://ctags.sourceforge.net/ PCRE Library Written by Philip Hazel and ©1997-2014 University of Cambridge, England Info-ZIP Library ©1990-2009 Info-ZIP. Used under license. Quicksilver string ranking Adapted from available sources and used under Apache License 2.0 terms NSTimer+Blocks ©2011 Random Ideas, LLC. Used under license. LetsMove Written by Andy Kim; adapted from source. BBEdit and the BBEdit User Manual are copyright ©1992-2019 Bare Bones Software, Inc. All rights reserved. Produced/published in USA. Bare Bones Software, Inc. 73 Princeton Street, Suite 206 North Chelmsford, MA 01863 USA (978) 251-0500 main (978) 251-0525 fax http://www.barebones.com/ Sales & customer service: [email protected] Technical support: [email protected] BBEdit and “It Doesn’t Suck” are registered trademarks of Bare Bones Software, Inc.
    [Show full text]
  • The Effi Barry Training Institute Application
    Notice of Funding Opportunity Government of the District of Columbia Department of Health HIV/AIDS, Hepatitis, STD, and TB Administration H A H S T A The Effi Barry Training Institute Application RFA Number: HAHSTA_EBTI_07.03.20 Application Deadline: Monday, August 3, 2020 at 6:00 PM Late applications cannot be accepted The Department of Health (DC Health) reserves the right to, without prior notice, reduce or cancel one or more programs listed in this Request for Applications (RFA), reject all applications, adjust total funds available, or cancel the RFA in part or whole. Funding levels in the respective program areas and budget amount in the award, if awarded, sub grant agreement is contingent on continued funding, sub grantee performance, and/or reduction, elimination, or reallocation funds by a federal grantor, the Executive Office of the Mayor (EOM) of the Government of the District of Columbia and/or the Department of Health in accordance with applicable sections within the sub grant award and/or agreement. Pre-application Conference: DATE: Wednesday, July 8, 2020 TIME: 2:30 PM – 4:00 PM VIRTUAL ZOOM CALL https://us02web.zoom.us/j/8178711891 Zoom/Conference Meeting ID: 817 8711 8910 (Call Access) - One tap mobile +13017158592-81787118910# Application Deadline: DATE: Monday, August 3, 2020 TIME: by 6:00 pm WHERE: Application submission must be done electronically through the Enterprise Grants Management System (See pages 7-9) Applications submitted after 6:00 PM cannot be accepted. You may download this application from: www.dchealth.dc.gov/ebtifunding http://opgs.dc.gov/page/opgs-district-grants- clearinghouse Effi Barry Training Institute Grant 2020 Table of Contents Notice of Funding Availability ........................................
    [Show full text]
  • Tinkertool System 7 Reference Manual Ii
    Documentation 0642-1075/2 TinkerTool System 7 Reference Manual ii Version 7.5, August 24, 2021. US-English edition. MBS Documentation 0642-1075/2 © Copyright 2003 – 2021 by Marcel Bresink Software-Systeme Marcel Bresink Software-Systeme Ringstr. 21 56630 Kretz Germany All rights reserved. No part of this publication may be redistributed, translated in other languages, or transmitted, in any form or by any means, electronic, mechanical, recording, or otherwise, without the prior written permission of the publisher. This publication may contain examples of data used in daily business operations. To illustrate them as completely as possible, the examples include the names of individuals, companies, brands, and products. All of these names are fictitious and any similarity to the names and addresses used by an actual business enterprise is entirely coincidental. This publication could include technical inaccuracies or typographical errors. Changes are periodically made to the information herein; these changes will be incorporated in new editions of the publication. The publisher may make improvements and/or changes in the product(s) and/or the program(s) described in this publication at any time without notice. Make sure that you are using the correct edition of the publication for the level of the product. The version number can be found at the top of this page. Apple, macOS, iCloud, and FireWire are registered trademarks of Apple Inc. Intel is a registered trademark of Intel Corporation. UNIX is a registered trademark of The Open Group. Broadcom is a registered trademark of Broadcom, Inc. Amazon Web Services is a registered trademark of Amazon.com, Inc.
    [Show full text]
  • GOOGLE LLC V. ORACLE AMERICA, INC
    (Slip Opinion) OCTOBER TERM, 2020 1 Syllabus NOTE: Where it is feasible, a syllabus (headnote) will be released, as is being done in connection with this case, at the time the opinion is issued. The syllabus constitutes no part of the opinion of the Court but has been prepared by the Reporter of Decisions for the convenience of the reader. See United States v. Detroit Timber & Lumber Co., 200 U. S. 321, 337. SUPREME COURT OF THE UNITED STATES Syllabus GOOGLE LLC v. ORACLE AMERICA, INC. CERTIORARI TO THE UNITED STATES COURT OF APPEALS FOR THE FEDERAL CIRCUIT No. 18–956. Argued October 7, 2020—Decided April 5, 2021 Oracle America, Inc., owns a copyright in Java SE, a computer platform that uses the popular Java computer programming language. In 2005, Google acquired Android and sought to build a new software platform for mobile devices. To allow the millions of programmers familiar with the Java programming language to work with its new Android plat- form, Google copied roughly 11,500 lines of code from the Java SE pro- gram. The copied lines are part of a tool called an Application Pro- gramming Interface (API). An API allows programmers to call upon prewritten computing tasks for use in their own programs. Over the course of protracted litigation, the lower courts have considered (1) whether Java SE’s owner could copyright the copied lines from the API, and (2) if so, whether Google’s copying constituted a permissible “fair use” of that material freeing Google from copyright liability. In the proceedings below, the Federal Circuit held that the copied lines are copyrightable.
    [Show full text]
  • Designing PCI Cards and Drivers for Power Macintosh Computers
    Designing PCI Cards and Drivers for Power Macintosh Computers Revised Edition Revised 3/26/99 Technical Publications © Apple Computer, Inc. 1999 Apple Computer, Inc. Adobe, Acrobat, and PostScript are Even though Apple has reviewed this © 1995, 1996 , 1999 Apple Computer, trademarks of Adobe Systems manual, APPLE MAKES NO Inc. All rights reserved. Incorporated or its subsidiaries and WARRANTY OR REPRESENTATION, EITHER EXPRESS OR IMPLIED, WITH No part of this publication may be may be registered in certain RESPECT TO THIS MANUAL, ITS reproduced, stored in a retrieval jurisdictions. QUALITY, ACCURACY, system, or transmitted, in any form America Online is a service mark of MERCHANTABILITY, OR FITNESS or by any means, mechanical, Quantum Computer Services, Inc. FOR A PARTICULAR PURPOSE. AS A electronic, photocopying, recording, Code Warrior is a trademark of RESULT, THIS MANUAL IS SOLD “AS or otherwise, without prior written Metrowerks. IS,” AND YOU, THE PURCHASER, ARE permission of Apple Computer, Inc., CompuServe is a registered ASSUMING THE ENTIRE RISK AS TO except to make a backup copy of any trademark of CompuServe, Inc. ITS QUALITY AND ACCURACY. documentation provided on Ethernet is a registered trademark of CD-ROM. IN NO EVENT WILL APPLE BE LIABLE Xerox Corporation. The Apple logo is a trademark of FOR DIRECT, INDIRECT, SPECIAL, FrameMaker is a registered Apple Computer, Inc. INCIDENTAL, OR CONSEQUENTIAL trademark of Frame Technology Use of the “keyboard” Apple logo DAMAGES RESULTING FROM ANY Corporation. (Option-Shift-K) for commercial DEFECT OR INACCURACY IN THIS purposes without the prior written Helvetica and Palatino are registered MANUAL, even if advised of the consent of Apple may constitute trademarks of Linotype-Hell AG possibility of such damages.
    [Show full text]
  • Icem: Un’ Applicazione Per L’Iphone
    massimo cocco icem: un’ applicazione per l’iphone tesi di laurea Relatore: Prof. Paolo Baldan Università degli Studi di Padova Facoltà di Informatica Dipartimento di Scienze Matematiche Naturali MM FF NN Febbraio 2011 I’m never giving in On with the show - Queen - The Show Must Go On - Dedicato a mio nonno. INDICE 1 introduzione 1 1.1 ”Tutto cambia. Di nuovo” 1 1.2 Introduzione al progetto 2 1.2.1 Corporate Energy Mangement Application 2 1.2.2 L’azienda Autoware e iCEM 3 1.2.3 Settori sviluppati dallo studente 5 2 analisi del progetto 7 2.1 Studio di fattibilità 8 3 use case 9 3.1 Use case: Area filter 9 3.2 Use Case: Area risultati 10 3.3 Use case: Area Events 11 3.4 Use case: Dettagli Eventi 12 3.5 Ciclo di vita 13 4 il linguaggio object c 15 4.1 La struttura del linguaggio 15 5 strumenti utilizzati 19 5.1 Xcode 19 5.2 Xcode IDE 19 5.3 Interface Builder 20 5.3.1 Esempio di utilizzo di Interface Builder: Hello World 20 5.4 SQLite & SQLite Database Browser 21 6 progettazione e sviluppo dell’ icem 25 6.1 Connessione iPhone - Server 25 6.2 Database 26 6.3 Sezioni Allarmi ed Eventi 27 6.4 Tab Bar 27 6.5 Sezione Events 29 6.5.1 Area Events 29 6.5.2 Details Events 31 6.5.3 Meters of Events 32 6.6 Sezione Alarms 32 6.6.1 Area Filter 33 6.6.2 Area Set Alarm Order 36 6.6.3 Area Risultati 37 6.6.4 Area Dettagli 38 7 piano di qualifica 41 7.1 Tecniche di verifica 41 7.1.1 Analisi statica 41 7.2 Tecniche di validazione 41 v 7.2.1 Analisi dinamica 41 7.2.2 Test di unità 42 7.2.3 Test di sistema 42 8 conclusioni 43 9 glossario 45 Bibliografia 49 Lista delle Figure 51 vi 1 INTRODUZIONE 1.1 ”tutto cambia.
    [Show full text]
  • Chapter 1. Origins of Mac OS X
    1 Chapter 1. Origins of Mac OS X "Most ideas come from previous ideas." Alan Curtis Kay The Mac OS X operating system represents a rather successful coming together of paradigms, ideologies, and technologies that have often resisted each other in the past. A good example is the cordial relationship that exists between the command-line and graphical interfaces in Mac OS X. The system is a result of the trials and tribulations of Apple and NeXT, as well as their user and developer communities. Mac OS X exemplifies how a capable system can result from the direct or indirect efforts of corporations, academic and research communities, the Open Source and Free Software movements, and, of course, individuals. Apple has been around since 1976, and many accounts of its history have been told. If the story of Apple as a company is fascinating, so is the technical history of Apple's operating systems. In this chapter,[1] we will trace the history of Mac OS X, discussing several technologies whose confluence eventually led to the modern-day Apple operating system. [1] This book's accompanying web site (www.osxbook.com) provides a more detailed technical history of all of Apple's operating systems. 1 2 2 1 1.1. Apple's Quest for the[2] Operating System [2] Whereas the word "the" is used here to designate prominence and desirability, it is an interesting coincidence that "THE" was the name of a multiprogramming system described by Edsger W. Dijkstra in a 1968 paper. It was March 1988. The Macintosh had been around for four years.
    [Show full text]
  • NCSA Telnet for the Macintosh User's Guide
    NCSA Telnet for the Macintosh User’s Guide Version 2.6 • October 1994 National Center for Supercomputing Applications University of Illinois at Urbana-Champaign Contents Introduction Features of NCSA Telnet v Differences between Version 2.5 and Version 2.6 v New Features in Version 2.6 v Discontinued Features vi Bugs Fixed from Version 2.5 vi System Requirements vi Notational Conventions vi 1 Getting Started Installation Note 1-1 Beginning an NCSA Telnet Session 1-1 Opening and Closing a Connection 1-2 Opening a Connection 1-2 Logging on to Your Host 1-3 Setting the BACKSPACE/DELETE Key 1-3 Setting a VT Terminal Type 1-3 Emulating the VT Terminal Keyboard 1-4 Closing a Connection 1-4 Copying, Pasting, and Printing 1-5 Copy and Paste from the Edit Menu 1-5 Print from the File Menu 1-5 Ending an NCSA Telnet Session 1-6 2 Configuration Global Preferences 2-1 New Configuration System in Version 2.6 2-3 Default Configuration Records 2-3 Editing Configuration Records 2-3 Editing Terminal Configuration Records 2-4 Editing Session Configuration Records 2-5 Changing Configuration after Session Connected 2-9 Saved Sets 2-13 Saving a Set 2-14 Using a Saved Set 2-14 Loading a Saved Set 2-15 Macro Definitions 2-15 Reverting to Previous Macro Definitions 2-16 Saving Macros 2-16 3 Advanced Features Cursor Positioning with the Mouse 3-1 Multiple Connections 3-1 Opening More Than One Connection 3-1 Moving between Connections 3-1 Rules for Session Names 3-2 The Connections Menu 3-2 Naming Windows 3-2 Checking Session Status 3-2 Aborting Connection Attempts
    [Show full text]
  • Bbedit User Manual Are Copyright ©1992-2018 Bare Bones Software, Inc
    User Manual BBEdit™ Professional Code and Text Editor for the Macintosh Bare Bones Software, Inc. ™ BBEdit 12.5 Product Design Jim Correia, Rich Siegel, Steve Kalkwarf, Patrick Woolsey Product Engineering Jim Correia, Seth Dillingham, Matt Henderson, Jon Hueras, Steve Kalkwarf, Rich Siegel, Steve Sisak Engineers Emeritus Chris Borton, Tom Emerson, Pete Gontier, Jamie McCarthy, John Norstad, Jon Pugh, Mark Romano, Eric Slosser, Rob Vaterlaus Documentation Fritz Anderson, Philip Borenstein, Stephen Chernicoff, John Gruber, Jeff Mattson, Jerry Kindall, Caroline Rose, Allan Rouselle, Rich Siegel, Vicky Wong, Patrick Woolsey Additional Engineering Polaschek Computing Icon Design Bryan Bell Factory Text Color Schemes Luke Andrews Packaging Design Ultra Maroon Design PHP keyword lists Contributed by Ted Stresen-Reuter cmark ©John MacFarlane. Used under license. Part of the CommonMark project LibNcFTP Used under license from and copyright © 1996-2010 Mike Gleason & NcFTP Software Exuberant ctags ©1996-2004 Darren Hiebert http://ctags.sourceforge.net/ PCRE Library Written by Philip Hazel and ©1997-2014 University of Cambridge, England Info-ZIP Library ©1990-2009 Info-ZIP. Used under license. Quicksilver string ranking Adapted from available sources and used under Apache License 2.0 terms NSTimer+Blocks ©2011 Random Ideas, LLC. Used under license. LetsMove Written by Andy Kim; adapted from source. BBEdit and the BBEdit User Manual are copyright ©1992-2018 Bare Bones Software, Inc. All rights reserved. Produced/published in USA. Bare Bones Software, Inc. 73 Princeton Street, Suite 206 North Chelmsford, MA 01863 USA (978) 251-0500 main (978) 251-0525 fax http://www.barebones.com/ Sales & customer service: [email protected] Technical support: [email protected] BBEdit and “It Doesn’t Suck” are registered trademarks of Bare Bones Software, Inc.
    [Show full text]