چه کسانی این کتاب را می‌خوانند

دانشجوعلاقه‌مند یادگیری
کتابخوان حرفه‌ایلذت مطالعه
نویسندهالهام‌گیری

Programming Mac OS X : A Guide for Unix Developers

Kevin O'Malley

قیمت نهایی

۴۴٬۰۰۰ تومان۴۹٬۰۰۰ تومان۱۰٪ تخفیف
  • تخفیف زمان‌دار−۵٬۰۰۰ تومان

۵٬۰۰۰ تومان صرفه‌جویی نسبت به قیمت اصلی

نسخه اصلی و اورجینال

بلافاصله پس از خرید، فایل کتاب روی دستگاه شما آمادهٔ دانلود است.

تحویل فوری
پرداخت امن
ضمانت فایل
پشتیبانی

مشخصات کتاب

نویسنده
Kevin O'Malley
سال انتشار
۲۰۰۳
فرمت
PDF
زبان
انگلیسی
حجم فایل
۱۵ مگابایت

دربارهٔ کتاب

A guide for UNIX developers who want accurate information on getting up to speed with Mac OS X and its software development environment, this book provides programmers all the information they need to understand and use the operating system, its development tools, and key technologies such as Darwin, Cocoa, and AppleScript. Users are introduced to the UNIX-based foundations of Mac OS X and shown how they fit into Mac OS X architecture. Also provided is coverage of both GUI and command-line software development tools, realistic programming examples that developers will encounter, and a discussion of Macintosh-style software development. Team DDU Programming Mac OS X: A Guide for Unix Developers 1 Cover 1 Contents 8 foreword 14 preface 16 acknowledgments 19 about this book 20 about the author 24 about the cover illustration 25 PART 1 OVERVIEW 28 1 Welcome to Mac OS X 30 1.1 Introduction 31 Origins of Mac OS X 32 1.2 The Macintosh user interface 33 1.3 The Mac OS X user interface 35 The desktop 35 Menus 35 The Dock 37 Window layering 38 Dialog boxes 38 Drawers 39 Keyboard navigation 39 Other interface features 40 1.4 The Mac OS X architecture 40 Architecture layers 42 The kernel environment 43 Core Services layer 47 Application Services layer 48 Application Environment layer 49 Aqua 53 1.5 Summary 53 2 Navigating and using Mac OS X 54 2 2.1 Introduction 55 2.2 Shells 56 Terminal features 58 2.3 Help system 59 Help Viewer 60 2.4 User accounts and privileges 60 Creating user accounts 61 2.5 Booting and default services 63 2.6 Programs and Mac OS X bundles 64 2.7 Security issues 66 2.8 File system 66 Finder 68 Case sensitivity and pathname delimiters 70 2.9 Single-user mode 71 2.10 System log files 72 2.11 Processes management 72 2.12 Common commands and tools 73 2.13 Scripting languages 75 AppleScript 75 2.14 Development tools 77 2.15 X Window under Mac OS X 78 Installing the X server 79 2.16 UNIX to Mac OS X software projects 80 2.17 Summary 81 PART 2 TOOLS 82 3 Project Builder and Interface Builder 84 3.1 Introduction 85 Macintosh Programmer’s Workbench 86 THINK Pascal and THINK C 86 CodeWarrior 87 Project Builder and Interface Builder 87 3.2 Creating an application with Project Builder 89 3.3 Project Builder in depth 94 Targets and build styles 94 Project Builder’s UNIX tools 95 Project Builder’s interface 96 Project Builder scenarios 105 3.4 Creating an application with Interface Builder 127 Interface Builder scenarios 128 3.5 Summary 135 4 Development tools 136 4.1 Introduction 137 4.2 UNIX development tools under Mac OS X 139 Editors 139 Mac OS X editing tools 140 Version control 144 Static code analysis tools 148 4.3 Compilers and build tools 149 4.4 Mac OS X Aqua-based development tools 149 UNIX-based editors 149 Mac OS X-based editors 154 4.5 Apple’s GUI-based development tools 154 Apple Help Indexing Tool 155 AppleScript Studio 155 FileMerge 156 Icon Composer 159 Interface Builder 159 JavaBrowser 160 MRJAppBuilder 161 MallocDebug 162 ObjectAlloc 170 PEF Viewer 170 PackageMaker 171 Pixie 171 Project Builder 171 PropertyListEditor 171 Quartz Debug 173 Sampler 174 Thread Viewer 177 icns Browser 182 4.6 Apple’s command-line development tools 183 ps (process status) and top (system usage statistics) 183 sc_usage: showing system call usage statistics 185 fs_usage: reporting system calls and page faults related to the filesystem in real-time 187 gprof: displaying execution profile data 188 leaks: searching a process’s memory for unreferenced malloc buffers 190 heap: listing all the malloc-allocated buffers in the process’s heap 192 malloc_history: showing malloc allocations that a process has performed 192 sample: profiling a process during a time interval 193 4.7 Summary 194 PART 3 PROGRAMMING 196 5 Objective-C and the Cocoa development frameworks 198 5.1 Introduction 199 5.2 Introduction to Objective-C 200 Object-oriented terminology 201 Classes 202 Messages 204 Categories 205 Protocols 207 Other features 207 Why learn Objective-C? 208 5.3 Cocoa software infrastructure 209 Foundation 209 Application Kit 214 Memory management 215 Design patterns 220 Cocoa event handling 224 5.4 Other Cocoa development languages 227 C++ 228 Perl 228 Ruby 229 5.5 Summary 229 6 Cocoa programming 230 6.1 Introduction 231 6.2 The CocoaWGet example program 232 6.3 Program requirements 234 6.4 Program design 235 6.5 Building the interface 236 Opening the project 236 The interface components 237 Control alignment and spacing 239 Forms 242 Classes and instances 242 6.6 CocoaWGet: implementing code with Project Builder 247 The model 248 The view 251 The controller 251 6.7 Program extensions 260 Letting the user cancel downloads 261 The application icon 266 The help file 268 6.8 Summary 270 7 AppleScript programming 272 7.1 Introduction 273 7.2 Scripting languages 274 7.3 AppleScript 275 Creating and running a script 277 Types of AppleScripts 278 AppleScript extensions 279 The AppleScript language 281 Choosing a scripting language 291 7.4 Example applications of AppleScript 291 iTunes and AppleScript 291 AppleScript Studio 296 7.5 Summary 305 8 Mac OS X and beyond 306 8.1 Introduction 307 8.2 Development tools 308 Compilers 308 Project Builder 310 Changing compilers 310 Inline scripting 310 New target editor 313 Searching documentation 314 8.3 Terminal application 316 Setting Terminal preferences 316 Splitting the Terminal window 319 Other Terminal additions 320 8.4 The PerlObjCBridge 320 PerlObjCBridge example 322 8.5 Summary 327 A Getting and installing development tools 328 B UNIX and Mac OS X command mappings 330 B.1 Common Mac OS X operations 331 B.2 UNIX file/directory commands mapped to Mac OS X commands 331 List directory contents: ls 331 Copy/move files or folders: cp, mv 332 Remove files or folders: rm 332 Change directory: cd 332 Create a new directory: mkdir 332 Change file permission and group: chmod, chgrp 333 Compare files: diff 333 Get the word, line, or byte count: wc 333 Compress and decompress data: compress, uncompress, tar, gzip,gnuzip, unzip, zcat 333 Edit text files: emacs, vi 333 View files: head, tail 333 Find files: find 334 B.3 UNIX communication commands mapped to Mac OS X commands 334 OpenSSH: ssh, scp 334 Talk to another user: talk, ytalk 334 B.4 UNIX process management commands mapped to Mac OS X commands 334 Show system and process usage statistics: top, ps 334 Terminate a process: kill 334 C The precursor of Mac OS X: Mac OS 336 C.1 A tour of the Mac OS interface 337 C.2 Interacting with the system 339 C.3 Mac OS system components 340 System file and Finder 341 Process scheduling 341 Memory management 342 Extending the system through system extensions 344 Interapplication communication (IAC) 345 File system 346 Macintosh files 346 Graphics 347 Networking 348 D A brief history of UNIX 350 D.1 The origin of UNIX 351 High-level languages and punch cards 351 Batch processing 352 Time-sharing 353 D.2 The birth and development of UNIX 355 D.3 GNU, Free Software Foundation, and open source 360 D.4 UNIX software development philosophy 362 resources 364 index 372 Team DDU 1 Team DDU......Page 1 Contents......Page 8 foreword......Page 14 preface......Page 16 acknowledgments......Page 19 about this book......Page 20 about the author......Page 24 about the cover illustration......Page 25 PART 1 OVERVIEW......Page 28 1 Welcome to Mac OS X......Page 30 1.1 Introduction......Page 31 Origins of Mac OS X......Page 32 1.2 The Macintosh user interface......Page 33 Menus......Page 35 The Dock......Page 37 Dialog boxes......Page 38 Keyboard navigation......Page 39 1.4 The Mac OS X architecture......Page 40 Architecture layers......Page 42 The kernel environment......Page 43 Core Services layer......Page 47 Application Services layer......Page 48 Application Environment layer......Page 49 1.5 Summary......Page 53 2 Navigating and using Mac OS X......Page 54 2 2.1 Introduction......Page 55 2.2 Shells......Page 56 Terminal features......Page 58 2.3 Help system......Page 59 2.4 User accounts and privileges......Page 60 Creating user accounts......Page 61 2.5 Booting and default services......Page 63 2.6 Programs and Mac OS X bundles......Page 64 2.8 File system......Page 66 Finder......Page 68 Case sensitivity and pathname delimiters......Page 70 2.9 Single-user mode......Page 71 2.11 Processes management......Page 72 2.12 Common commands and tools......Page 73 AppleScript......Page 75 2.14 Development tools......Page 77 2.15 X Window under Mac OS X......Page 78 Installing the X server......Page 79 2.16 UNIX to Mac OS X software projects......Page 80 2.17 Summary......Page 81 PART 2 TOOLS......Page 82 3 Project Builder and Interface Builder......Page 84 3.1 Introduction......Page 85 THINK Pascal and THINK C......Page 86 Project Builder and Interface Builder......Page 87 3.2 Creating an application with Project Builder......Page 89 Targets and build styles......Page 94 Project Builder’s UNIX tools......Page 95 Project Builder’s interface......Page 96 Project Builder scenarios......Page 105 3.4 Creating an application with Interface Builder......Page 127 Interface Builder scenarios......Page 128 3.5 Summary......Page 135 4 Development tools......Page 136 4.1 Introduction......Page 137 Editors......Page 139 Mac OS X editing tools......Page 140 Version control......Page 144 Static code analysis tools......Page 148 UNIX-based editors......Page 149 4.5 Apple’s GUI-based development tools......Page 154 AppleScript Studio......Page 155 FileMerge......Page 156 Interface Builder......Page 159 JavaBrowser......Page 160 MRJAppBuilder......Page 161 MallocDebug......Page 162 PEF Viewer......Page 170 PropertyListEditor......Page 171 Quartz Debug......Page 173 Sampler......Page 174 Thread Viewer......Page 177 icns Browser......Page 182 ps (process status) and top (system usage statistics)......Page 183 sc_usage: showing system call usage statistics......Page 185 fs_usage: reporting system calls and page faults related to the filesystem in real-time......Page 187 gprof: displaying execution profile data......Page 188 leaks: searching a process’s memory for unreferenced malloc buffers......Page 190 malloc_history: showing malloc allocations that a process has performed......Page 192 sample: profiling a process during a time interval......Page 193 4.7 Summary......Page 194 PART 3 PROGRAMMING......Page 196 5 Objective-C and the Cocoa development frameworks......Page 198 5.1 Introduction......Page 199 5.2 Introduction to Objective-C......Page 200 Object-oriented terminology......Page 201 Classes......Page 202 Messages......Page 204 Categories......Page 205 Other features......Page 207 Why learn Objective-C?......Page 208 Foundation......Page 209 Application Kit......Page 214 Memory management......Page 215 Design patterns......Page 220 Cocoa event handling......Page 224 5.4 Other Cocoa development languages......Page 227 Perl......Page 228 5.5 Summary......Page 229 6 Cocoa programming......Page 230 6.1 Introduction......Page 231 6.2 The CocoaWGet example program......Page 232 6.3 Program requirements......Page 234 6.4 Program design......Page 235 Opening the project......Page 236 The interface components......Page 237 Control alignment and spacing......Page 239 Classes and instances......Page 242 6.6 CocoaWGet: implementing code with Project Builder......Page 247 The model......Page 248 The controller......Page 251 6.7 Program extensions......Page 260 Letting the user cancel downloads......Page 261 The application icon......Page 266 The help file......Page 268 6.8 Summary......Page 270 7 AppleScript programming......Page 272 7.1 Introduction......Page 273 7.2 Scripting languages......Page 274 7.3 AppleScript......Page 275 Creating and running a script......Page 277 Types of AppleScripts......Page 278 AppleScript extensions......Page 279 The AppleScript language......Page 281 iTunes and AppleScript......Page 291 AppleScript Studio......Page 296 7.5 Summary......Page 305 8 Mac OS X and beyond......Page 306 8.1 Introduction......Page 307 Compilers......Page 308 Inline scripting......Page 310 New target editor......Page 313 Searching documentation......Page 314 Setting Terminal preferences......Page 316 Splitting the Terminal window......Page 319 8.4 The PerlObjCBridge......Page 320 PerlObjCBridge example......Page 322 8.5 Summary......Page 327 A Getting and installing development tools......Page 328 B UNIX and Mac OS X command mappings......Page 330 List directory contents: ls......Page 331 Create a new directory: mkdir......Page 332 View files: head, tail......Page 333 Terminate a process: kill......Page 334 C The precursor of Mac OS X: Mac OS......Page 336 C.1 A tour of the Mac OS interface......Page 337 C.2 Interacting with the system......Page 339 C.3 Mac OS system components......Page 340 Process scheduling......Page 341 Memory management......Page 342 Extending the system through system extensions......Page 344 Interapplication communication (IAC)......Page 345 Macintosh files......Page 346 Graphics......Page 347 Networking......Page 348 D A brief history of UNIX......Page 350 High-level languages and punch cards......Page 351 Batch processing......Page 352 Time-sharing......Page 353 D.2 The birth and development of UNIX......Page 355 D.3 GNU, Free Software Foundation, and open source......Page 360 D.4 UNIX software development philosophy......Page 362 resources......Page 364 index......Page 372 A guide for UNIX developers that want accurate information on getting up to speed with Mac OS X and its software development environment, this book provides programmers all the information they need to understand and use the operating system, its development tools, and key technologies such as Darwin, Cocoa and Apple Script. Users are introduced to the UNIX-based foundations of Mac OS X and shown how they fit into Mac OS X architecture. Also provided is coverage of both GUI and command-line software development tools, realistic programming examples that developers will encounter, and a discussion of Macintosh-style software development

قیمت نهایی

۴۴٬۰۰۰ تومان