Welcome to CS193E. Mac OS X Cocoa Programming. James Dempsey Paul Marcos

Size: px
Start display at page:

Download "Welcome to CS193E. Mac OS X Cocoa Programming. James Dempsey Paul Marcos"

Transcription

1 Welcome to CS193E Mac OS X Cocoa Programming James Dempsey dempsey1@stanford.edu Paul Marcos pmarcos@stanford.edu

2 Intros James Dempsey Paul Marcos TA - David Black <dcblack@cs.stanford.edu>

3 Logistics Lectures: Skilling 193 Tues & Thurs 12:50-2:05 PM Prerequisite: CS 106B/X Recommended Book: Cocoa Programming for Mac OS X by Aaron Hillegass, 2nd edition. 7 concurrent licenses available online Software: Mac OS X 10.4 (Tiger)

4 Quick Survey Have worked with Java or C++? Have a Macintosh? Have OS X 10.5 Leopard installed? Have done development on a Mac?

5 Why Are We Here? To build Mac OS X applications with Cocoa

6 Why Are We Here? 193E is not just about Cocoa and ObjC It s about Software Engineering as well as object oriented architecture and design Exposure to problems and solutions that you might not see in other classes

7 Things to Learn

8 Tools Xcode Interface Builder Frameworks Foundation AppKit Language (& Runtime) [textview Hello ]; Objective-C

9 Why Cocoa? Cocoa is a mature, well thought out with highly consistent APIs Provides a very rich starting point for exploring application design Shows real-world implementations of OO design patterns

10 Why ObjC? Exposure to other languages is always good A language focused on simplicity and the elegance of OO design Based on ANSI C Brings many object oriented principles, but with a minimal amount of syntax A data point to compare with designs of C, C++ and Java

11 Cocoa Applications Mail Safari ichat Photo Booth Automator iphoto Keynote Aperture Interface Builder

12 Applications You Will Build Temp Converter & Obj-C Tool Favorite Things Timeline - 4 weekly assignments Final Project - You Decide!

13 Assignments, Grading & Late Policy 7 weekly assignments Final project of your choice End of quarter demos at Apple... Grading: Nice & simple:, + and - Late Policy: 3 late days, use them wisely!

14 First Assignment First part of first assignment handed out today Intended to get you familiar with tools and dip a toe in the language Includes a comprehensive walkthrough We suggest trying to do 1A before Thursday to help work out any tools or installation issues

15 Office Hours & Web Site Office hours Mon & Weds 10:30-12:30 in Gates B24A Web site:

16 Questions?

17 Mac OS X Overview

18 Mac OS X Architecture Frameworks Application Services Core Services Kernel - Darwin Mach Core BSD Cocoa Foundation 4.4 Quartz (2D) Carbon Carbon IOKit Core OpenGL (3D) File CFNetwork Classic Systems QuickTime Web Java Services Open Source

19 Tools Xcode Interface Builder Frameworks Foundation AppKit Language (& Runtime) [textview Hello ]; Objective-C

20 Notes about Tools We ll be using Xcode 2.5 tools If you have 10.4 Tiger, you may need to update or install If you have 10.5 Leopard, you need to install Xcode 2.5 If you need Xcode 2.5, download for free from Apple Developer Connection Sign up for free Online ADC account Xcode 2.5 and Xcode 3.0 can happily coexist on a Leopard machine Read the XCode 2.5 release notes for details

21 Cocoa Architecture Frameworks Application Kit Aqua Elements Application Runtime UI Widgets Foundation Kit Utility Classes Collection Classes Object Wrappers for OS Services

22 Using Cocoa GUI (Graphical User Interface) applications Command-line tools Plug-ins Even device drivers!

23 Objects

24 Thing Object

25 Behavior Thing behavior dosomething

26 Message Thing "dosomething" dosomething

27 State Thing state flag count behavior dosomething

28 Other Objects As State Thing Other Thing state flag count helper performdifficulttask behavior dosomething dosomethingelse sethelper:

29 Message Identifiers As State Thing Other Thing state flag count helper message "lastname" performdifficulttask behavior dosomething dosomethingelse sethelper:

30 Outlets slider Converter textfield makedouble: makehalf:

31 Target / Action slider Converter textfield makedouble: makehalf: target action ʻmakeDouble:ʼ target action ʻmakeHalf:ʼ

32 Demo

33 Outlets slider Converter textfield makedouble: makehalf:

34 Target / Action slider Converter textfield makedouble: makehalf: target action ʻmakeDouble:ʼ target action ʻmakeHalf:ʼ

35 Questions?

Cocoa. Last Week... Music 3SI: Introduction to Audio/Multimedia App. Programming. Today... Why Cocoa? Wikipedia - Cocoa

Cocoa. Last Week... Music 3SI: Introduction to Audio/Multimedia App. Programming. Today... Why Cocoa? Wikipedia - Cocoa Music 3SI: Introduction to Audio/Multimedia App. Programming IDE (briefly) VST Plug-in Assignment 1 hints Last Week... Week #5-5/5/2006 CCRMA, Department of Music Stanford University 1 2 Today... Cocoa

More information

CS193p Spring 2010 Wednesday, March 31, 2010

CS193p Spring 2010 Wednesday, March 31, 2010 CS193p Spring 2010 Logistics Lectures Building 260 (History Corner) Room 034 Monday & Wednesday 4:15pm - 5:30pm Office Hours TBD Homework 7 Weekly Assignments Assigned on Wednesdays (often will be multiweek

More information

X Review. Mac OS X Roots: NeXT. BWS Available for virtually every OS

X Review. Mac OS X Roots: NeXT. BWS Available for virtually every OS X Review Distributed window system Server is the user s Terminal Client runs the application WM Xlib Application Widget Set Xt Intrinsics Xlib Highly modular X Server (exchange WM, Widget Set) BWS Available

More information

Component-Based Software Engineering

Component-Based Software Engineering Component-Based Software Engineering CSM-15 Paul Krause Contents Lecture 1 (Part 2) - Software Architecture Why is this interesting? What is Software Architecture? Why is Software Architecture Important?

More information

iphone App Basics iphone and ipod touch Development Fall 2009 Lecture 5

iphone App Basics iphone and ipod touch Development Fall 2009 Lecture 5 iphone App Basics iphone and ipod touch Development Fall 2009 Lecture 5 Questions? Announcements Assignment #1 due this evening by 11:59pm Remember, if you wish to use a free late you must email me before

More information

Mobile App Development. ios Platform

Mobile App Development. ios Platform Mobile App Development ios Platform Overview Introduction Development Environment & Tools App Store Pros & Cons Programming Recommendations Objective-C Primer Demo What is ios? An operating system that

More information

Mac OS X Part 1. The University of Utah Student Computing Labs Macintosh Support

Mac OS X Part 1. The University of Utah Student Computing Labs Macintosh Support Mac OS X Mac OS X Part 1 The University of Utah Student Computing Labs Macintosh Support mac@scl.utah.edu We Will Cover Classic Mac OS evolution Overview UNIX evolution Overview How Classic Mac OS & UNIX

More information

Introduction to Cocoa Programming

Introduction to Cocoa Programming Introduction to Cocoa Programming Dr. Ken Tabb Computer Science Dept. University of Hertfordshire Agenda Brief history of Cocoa Apple s free Developer Tools - Xcode - Interface Builder Cocoa programming

More information

These are exciting times for Macintosh users. When Apple unleashed Mac

These are exciting times for Macintosh users. When Apple unleashed Mac Chapter 1 A Brief Tour of Cocoa Development In This Chapter Programming for Mac OS X Discovering the Cocoa development process Exploring the tools for programming Cocoa applications These are exciting

More information

Xcode and Swift CS 4720 Mobile Application Development

Xcode and Swift CS 4720 Mobile Application Development Xcode and Swift Mobile Application Development Why Java for Android? Let s first recap: why do you think Android uses Java? 2 Why Java for Android? Some good reasons: You can t find a CS major that doesn

More information

Praktikum Entwicklung von Mediensystemen mit

Praktikum Entwicklung von Mediensystemen mit Praktikum Entwicklung von Mediensystemen mit Sommersemester 2013 Fabius Steinberger, Dr. Alexander De Luca Today Organization Introduction to ios programming Hello World Assignment 1 2 Organization 6 ECTS

More information

CS193E Lecture 17. Multiple Document Windows OpenGL & Cocoa

CS193E Lecture 17. Multiple Document Windows OpenGL & Cocoa CS193E Lecture 17 Multiple Document Windows OpenGL & Cocoa Multiple Views onto a Model Xcode Keynote Finder Dreamweaver TreeGenerator 3D NSDocument Architecture Supports two approaches: Simple, single

More information

Mac OS X. Mach in the Darwin Kernel. COMP342 4/5/06

Mac OS X. Mach in the Darwin Kernel.  COMP342 4/5/06 Mac OS X Mach in the Darwin Kernel http://www.maths.mq.edu.au/~steffen/talks/ COMP342 4/5/06 Daniel A. Steffen Mathematics Department Macquarie University steffen@maths.mq.edu.au Mach in the Darwin Kernel

More information

Christopher Sean Morrison

Christopher Sean Morrison BRL-CAD Users Group Meeting 2002 Friday, October 25, 2002 & Mac OS X Christopher Sean Morrison morrison@arl.army.mil Quantum Research International, Inc. BRL-CAD & Mac OS X Topics: Apple Computer, Inc

More information

Leow Wee Kheng CS3249 User Interface Development. Windowing Systems CS3249

Leow Wee Kheng CS3249 User Interface Development. Windowing Systems CS3249 Leow Wee Kheng User Interface Development 1 1 Modern computers come with graphical user interfaces... 2 2 Windows XP 3 3 Ubuntu 4 4 What is needed for GUI to work? What is needed for drop-down menu to

More information

Stanford CS193p. Developing Applications for ios Fall Stanford CS193p. Fall 2013

Stanford CS193p. Developing Applications for ios Fall Stanford CS193p. Fall 2013 Developing Applications for ios -14 Today What is this class all about? Description Prerequisites Homework / Final Project ios Overview What s in ios? MVC Object-Oriented Design Concept Objective C (Time

More information

Xcode. Chapter 1. Creating a Project

Xcode. Chapter 1. Creating a Project Chapter 1 Xcode Many computer books use Chapter 1 to cover introductory material. Xcode Tools Sensei is not one of those books. I want you to start learning immediately. After reading this chapter you

More information

Operating System Services. User Services. System Operation Services. User Operating System Interface - CLI. A View of Operating System Services

Operating System Services. User Services. System Operation Services. User Operating System Interface - CLI. A View of Operating System Services Operating System Services One set of services for users The other set of services for system operations Operating Systems Structures Notice: This set of slides is based on the notes by Professor Perrone

More information

Objective-C Phrasebook (Developer's Library) By David Chisnall READ ONLINE

Objective-C Phrasebook (Developer's Library) By David Chisnall READ ONLINE Objective-C Phrasebook (Developer's Library) By David Chisnall READ ONLINE The Go Programming Language PHRASEBOOK DEVELOPER S LIBRARY. maintainer of the GNUstep Objective-C 2 runtime library and the associated

More information

Toyin Adedokun & Daniel Laughlin. Exploring the iphone SDK

Toyin Adedokun & Daniel Laughlin. Exploring the iphone SDK Toyin Adedokun & Daniel Laughlin Exploring the iphone SDK Purpose - Flashcards Provide simple way of creating & viewing flashcards Clean, simple interface Integrate with familiar application such as Google

More information

Developing Applications for ios

Developing Applications for ios Developing Applications for ios Lecture 1: Mobile Applications Development Radu Ionescu raducu.ionescu@gmail.com Faculty of Mathematics and Computer Science University of Bucharest Evaluation Individual

More information

Mac OS X Developer Resources

Mac OS X Developer Resources PART I RI AL Mac OS X Developer Resources CHAPTER 3: Xcode MA CHAPTER 2: Developer Tools TE CHAPTER 1: The Mac OS X Environment CO PY RI GH TE D CHAPTER 4: Interface Builder 1The Mac OS X Environment

More information

OSCon Open Source

OSCon Open Source : Open Source Security Development John Hurley, Ph.D. Security Policy Architect Apple Computer Overview OS X Security Architecture Common Data Security Architecture Open source security advantages Open

More information

GNUstep: What is it? gnustep.org

GNUstep: What is it? gnustep.org GNUSTEP GNUstep: What is it? A powerful object-oriented development environment: A set of cross-platform libraries for developing applications (text, graphic, script, web, etc.) Development tools and applications

More information

Cocoa Fundamentals Guide

Cocoa Fundamentals Guide Cocoa Fundamentals Guide General 2010-12-13 Apple Inc. 2010 Apple Inc. All rights reserved. No part of this publication may be reproduced, stored in a retrieval system, or transmitted, in any form or by

More information

Grand Central Dispatch and NSOperation. CSCI 5828: Foundations of Software Engineering Lecture 28 12/03/2015

Grand Central Dispatch and NSOperation. CSCI 5828: Foundations of Software Engineering Lecture 28 12/03/2015 Grand Central Dispatch and NSOperation CSCI 5828: Foundations of Software Engineering Lecture 28 12/03/2015 1 Credit Where Credit Is Due Most of the examples in this lecture were inspired by example code

More information

CSE 167: Introduction to Computer Graphics. Jürgen P. Schulze, Ph.D. University of California, San Diego Fall Quarter 2013

CSE 167: Introduction to Computer Graphics. Jürgen P. Schulze, Ph.D. University of California, San Diego Fall Quarter 2013 CSE 167: Introduction to Computer Graphics Jürgen P. Schulze, Ph.D. University of California, San Diego Fall Quarter 2013 Today Course organization Course overview 2 Course Staff Instructor Jürgen Schulze,

More information

Chapter 2: Operating-System Structures. Operating System Concepts 9 th Edit9on

Chapter 2: Operating-System Structures. Operating System Concepts 9 th Edit9on Chapter 2: Operating-System Structures Operating System Concepts 9 th Edit9on Silberschatz, Galvin and Gagne 2013 Chapter 2: Operating-System Structures 1. Operating System Services 2. User Operating System

More information

Welcome to! 4DN4! Advanced Internet Communications"

Welcome to! 4DN4! Advanced Internet Communications Welcome to! 4DN4! Advanced Internet Communications" Mon. Jan. 5 Wed. April 8, 2015" Prof. Ted Szymanski! Department of ECE! McMaster University! Web-Page: Please go to Avenue-to-Learn." Email: teds@mcmaster.ca"

More information

CS-E4420 Information Retrieval

CS-E4420 Information Retrieval CS-E4420 Information Retrieval Course assignments 02-07-2017 Esko Ikkala Agenda General information about the course assignments Short demo: how to set up the necessary programming tools Assignments There

More information

Operating Systems CMPSC 473. Introduction January 15, Lecture 1 Instructor: Trent Jaeger

Operating Systems CMPSC 473. Introduction January 15, Lecture 1 Instructor: Trent Jaeger Operating Systems CMPSC 473 Introduction January 15, 2008 - Lecture 1 Instructor: Trent Jaeger About Me Trent Jaeger (PhD, University of Michigan) Associate Professor, CSE -- after 9 years at IBM Research

More information

CS193P - Lecture 3. iphone Application Development. Custom Classes Object Lifecycle Autorelease Properties

CS193P - Lecture 3. iphone Application Development. Custom Classes Object Lifecycle Autorelease Properties CS193P - Lecture 3 iphone Application Development Custom Classes Object Lifecycle Autorelease Properties 1 Announcements Assignments 1A and 1B due Wednesday 1/13 at 11:59 PM Enrolled Stanford students

More information

Apple Human Interface Guidelines

Apple Human Interface Guidelines Apple Human Interface Guidelines 2005-06-04 Apple Computer, Inc. 1992, 2001-2003, 2005 Apple Computer, Inc. All rights reserved. No part of this publication may be reproduced, stored in a retrieval system,

More information

AppleScript Overview

AppleScript Overview AppleScript Overview Contents Introduction to AppleScript Overview 5 Who Should Read This Document 5 Organization of This Document 6 See Also 6 About AppleScript 7 When to Use AppleScript 8 Limitations

More information

About Me. Office Hours: Tu 4-5, W 1-2, or by appointment Office: 346A IST Bldg

About Me. Office Hours: Tu 4-5, W 1-2, or by appointment Office: 346A IST Bldg 1 About Me Trent Jaeger (PhD, University of Michigan) Associate Professor, CSE -- after 9 years at IBM Research Research: Operating System Security Example Projects L4 Microkernel -- minimal, high performance

More information

IBM Case Manager Mobile Version SDK for ios Developers' Guide IBM SC

IBM Case Manager Mobile Version SDK for ios Developers' Guide IBM SC IBM Case Manager Mobile Version 1.0.0.5 SDK for ios Developers' Guide IBM SC27-4582-04 This edition applies to version 1.0.0.5 of IBM Case Manager Mobile (product number 5725-W63) and to all subsequent

More information

Manual Eclipse CDT Mac OS Snow Leopard

Manual Eclipse CDT Mac OS Snow Leopard UNVIERSITY OF VICTORIA Manual Eclipse CDT Mac OS Snow Leopard Installation & Demonstration Guide Przemek Lach 9/3/2013 This guide shows how to use install Eclipse and C- Compiler and how to test the setup

More information

Download vm virtualbox in virtualbox.org/. How to Install OSX on Virtualbox.

Download vm virtualbox in virtualbox.org/. How to Install OSX on Virtualbox. Manual Java Installing Mac Os X Lion On Pc Virtualbox To create a virtual machine, open up Virtualbox and click New on the upper left. Give your new virtual machine a name, and choose Mac OS X for the

More information

Adapting to the New UI of OS X Yosemite

Adapting to the New UI of OS X Yosemite Frameworks #WWDC14 Adapting to the New UI of OS X Yosemite Session 209 Mike Stern User Experience Evangelist! Rachel Goldeen Cocoa Software Engineer! Patrick Heynen Cocoa Engineering Manager 2014 Apple

More information

CSE 504: Compiler Design

CSE 504: Compiler Design http://xkcd.com/303/ Compiler Design Course Organization CSE 504 1 / 20 CSE 504: Compiler Design http://www.cs.stonybrook.edu/~cse504/ Mon., Wed. 2:30pm 3:50pm Harriman Hall 116 C. R. Ramakrishnan e-mail:

More information

Programming 2. Outline (112) Lecture 0. Important Information. Lecture Protocol. Subject Overview. General Overview.

Programming 2. Outline (112) Lecture 0. Important Information. Lecture Protocol. Subject Overview. General Overview. Programming 2 (112) Lecture 0 College of Computer Science and Engineering Taibah University S2, 1439 Outline Important Information Lecture Protocol Subject Overview General Overview Course Objectives Studying

More information

Four Components of a Computer System

Four Components of a Computer System Four Components of a Computer System Operating System Concepts Essentials 2nd Edition 1.1 Silberschatz, Galvin and Gagne 2013 Operating System Definition OS is a resource allocator Manages all resources

More information

CSE 167: Introduction to Computer Graphics. Jürgen P. Schulze, Ph.D. University of California, San Diego Fall Quarter 2016

CSE 167: Introduction to Computer Graphics. Jürgen P. Schulze, Ph.D. University of California, San Diego Fall Quarter 2016 CSE 167: Introduction to Computer Graphics Jürgen P. Schulze, Ph.D. University of California, San Diego Fall Quarter 2016 Today Course organization Course overview 2 Course Staff Instructor Jürgen Schulze,

More information

Richard Mallion. Swift for Admins #TEAMSWIFT

Richard Mallion. Swift for Admins #TEAMSWIFT Richard Mallion Swift for Admins #TEAMSWIFT Apple Introduces Swift At the WWDC 2014 Keynote, Apple introduced Swift A new modern programming language It targets the frameworks for Cocoa and Cocoa Touch

More information

Admin. ! Assignment 3. ! due Monday at 11:59pm! one small error in 5b (fast division) that s been fixed. ! Midterm next Thursday in-class (10/1)

Admin. ! Assignment 3. ! due Monday at 11:59pm! one small error in 5b (fast division) that s been fixed. ! Midterm next Thursday in-class (10/1) Admin CS4B MACHINE David Kauchak CS 5 Fall 5! Assignment 3! due Monday at :59pm! one small error in 5b (fast division) that s been fixed! Midterm next Thursday in-class (/)! Comprehensive! Closed books,

More information

CSci Introduction to Operating Systems. Administrivia, Intro

CSci Introduction to Operating Systems. Administrivia, Intro CSci 4061 Introduction to Operating Systems Administrivia, Intro Me: Welcome to 4061! Jon Weissman CS Professor circa 1999 Call me Jon TAs: Zach Leidall, Francis Liu, Fei Wu, Parag Panda, Gaurav Khandelwal

More information

Typing Program For Mac Os X Adobe Flash

Typing Program For Mac Os X Adobe Flash Typing Program For Mac Os X 10.5 8 Adobe Flash Player Download, install or update Adobe Flash Player (Mac) - Plug-in plays 8. Thank you for your review. Free. Download Adobe Flash Player from Adobe Flash

More information

Admin CS41B MACHINE. Midterm topics. Admin 2/11/16. Midterm next Thursday in-class (2/18) SML. recursion. math. David Kauchak CS 52 Spring 2016

Admin CS41B MACHINE. Midterm topics. Admin 2/11/16. Midterm next Thursday in-class (2/18) SML. recursion. math. David Kauchak CS 52 Spring 2016 Admin! Assignment 3! due Monday at :59pm! Academic honesty CS4B MACHINE David Kauchak CS 5 Spring 6 Admin Midterm next Thursday in-class (/8)! Comprehensive! Closed books, notes, computers, etc.! Except,

More information

CSE 333 Lecture 1 - Systems programming

CSE 333 Lecture 1 - Systems programming CSE 333 Lecture 1 - Systems programming Hal Perkins Department of Computer Science & Engineering University of Washington Welcome! Today s goals: - introductions - big picture - course syllabus - setting

More information

The Professional Institute for Educators ED*7038C*01 Sandra McClurken,

The Professional Institute for Educators ED*7038C*01 Sandra McClurken, 1 of 5 5/24/2011 4:53 PM The Professional Institute for Educators ED*7038C*01 Sandra McClurken, smcclurken@uarts.edu Course Description Explore the basic tools of Macintosh laptops to best integrate these

More information

Programming 1. Outline (111) Lecture 0. Important Information. Lecture Protocol. Subject Overview. General Overview.

Programming 1. Outline (111) Lecture 0. Important Information. Lecture Protocol. Subject Overview. General Overview. Programming 1 (111) Lecture 0 College of Computer Science and Engineering Taibah University S1, 1439 Outline Important Information Lecture Protocol Subject Overview General Overview Course Objectives Studying

More information

ava with Object-Oriented Generic Programming+ Java Java with Object-Oriented + Generic Programming by Paul S. Wang sofpower.com

ava with Object-Oriented Generic Programming+ Java Java with Object-Oriented + Generic Programming by Paul S. Wang sofpower.com J Java J with Object-Oriented Generic Programming+ ava Java with by Paul S. Wang Object-Oriented + Generic Programming sofpower.com Java with Object-oriented and Generic Programming Paul S. Wang Department

More information

Intro to Intro to Software Engineering

Intro to Intro to Software Engineering Intro to Intro to Software Engineering John Jannotti CSCI032 (cs032) Jan 28, 2010 John Jannotti (cs32) Intro to Intro to Software Engineering Jan 28, 2010 1 / 1 Introductions Me John Jannotti JJ HTAs Alex

More information

ECE 3574: Applied Software Design

ECE 3574: Applied Software Design ECE 3574: Applied Software Design Chris Wyatt Spring 2018 Welcome to ECE 3574: Applied Software Design CRN 19016 Website: https://filebox.ece.vt.edu/~ece3574 Instructor: Chris Wyatt, clwyatt@vt.edu Today

More information

Tools to Develop New Linux Applications

Tools to Develop New Linux Applications Tools to Develop New Linux Applications IBM Software Development Platform Tools for every member of the Development Team Supports best practices in Software Development Analyst Architect Developer Tester

More information

INTERNET GIS. Course Overview. Schedule. Instructor. Lab Instructor. Prerequisites. Urban Planning 794 Monday s 5:30-8:10pm SARUP 158

INTERNET GIS. Course Overview. Schedule. Instructor. Lab Instructor. Prerequisites. Urban Planning 794 Monday s 5:30-8:10pm SARUP 158 INTERNET GIS Urban Planning 794 Monday s 5:30-8:10pm SARUP 158 Schedule Class/Lab - Mondays 5:30pm - 8:10pm Office Hours - By Appointment Mid-Term - 11/9/2015 Final - 12/14/2015 12/21/2015 Instructor Paul

More information

Programming In Objective-C (4th (fourth) Edition) (Developer's Library) By Stephen G. Kochan READ ONLINE

Programming In Objective-C (4th (fourth) Edition) (Developer's Library) By Stephen G. Kochan READ ONLINE Programming In Objective-C (4th (fourth) Edition) (Developer's Library) By Stephen G. Kochan READ ONLINE Description. This is the 4th edition of the world's bestselling book on Objective-C programming,

More information

INF 315E Introduction to Databases School of Information Fall 2015

INF 315E Introduction to Databases School of Information Fall 2015 INF 315E Introduction to Databases School of Information Fall 2015 Class Hours: Tuesday & Thursday10:30 am-12:00 pm Instructor: Eunyoung Moon Email: eymoon@utexas.edu Course Description Almost every website

More information

Architectural Support for Operating Systems. Jinkyu Jeong ( Computer Systems Laboratory Sungkyunkwan University

Architectural Support for Operating Systems. Jinkyu Jeong ( Computer Systems Laboratory Sungkyunkwan University Architectural Support for Operating Systems Jinkyu Jeong ( jinkyu@skku.edu) Computer Systems Laboratory Sungkyunkwan University http://csl.skku.edu Today s Topics Basic services of OS Basic computer system

More information

CS 3813/718 Fall Python Programming. Professor Liang Huang.

CS 3813/718 Fall Python Programming. Professor Liang Huang. CS 3813/718 Fall 2012 Python Programming Professor Liang Huang huang@cs.qc.cuny.edu http://vision.cs.qc.cuny.edu/huang/python-2012f/ Logistics Lectures: TTh 9:25-10:40 am SB B-141 Personnel Instructor

More information

CS193E: Temperature Converter Walkthrough

CS193E: Temperature Converter Walkthrough CS193E: Temperature Converter Walkthrough The goal of this walkthrough is to give you a fairly step by step path through building a simple Cocoa application. You are encouraged to follow the walkthrough,

More information

Automator Programming Guide

Automator Programming Guide Automator Programming Guide Contents Introduction to Automator Programming Guide 9 Who Should Read This Document 9 Organization of This Document 9 See Also 10 Automator and the Developer 11 Constructing

More information

Xcode Setup. Setup. 1. Copy your files. 2. Install X Code

Xcode Setup. Setup. 1. Copy your files. 2. Install X Code Xcode Setup Department of Computer Science & Electrical Engineering Xcode is an Integrated Development Environment (IDE) provided for free by Apple Inc. to develop Apple Macintosh and Apple ios applications.

More information

CS110/CS119 Introduction to Computing (Java) Bob Wilson S-3-176

CS110/CS119 Introduction to Computing (Java) Bob Wilson S-3-176 CS110/CS119 Introduction to Computing (Java) Bob Wilson bobw@cs.umb.edu S-3-176 1 CS110 vs CSIT114/CSIT115 Two tracks for starting CS curriculum at UMB CS110 is a traditional one semester introduction

More information

ROOT on ios and RootBrowser app

ROOT on ios and RootBrowser app Native graphics on Mac OS X ROOT on ios and RootBrowser app Timur Pocheptsov root.cern.ch 1 Motivation X11.application (XQuartz) is not required anymore. No mysterious crashes with XQuartz (we can not

More information

About Xcode and iphone SDK

About Xcode and iphone SDK apple About Xcode and iphone SDK iphone SDK and Xcode 3.1.2 developer tools for iphone OS 2.2 Contents Introduction Compatibility with Mac OS X Versions What's New Installation Deprecation Notice Introduction

More information

G4120: Introduction to Computational Biology

G4120: Introduction to Computational Biology ICB Fall 2006 G4120: Computational Biology Oliver Jovanovic, Ph.D. Columbia University Department of Microbiology Copyright 2006 Oliver Jovanovic, All Rights Reserved. The Binary Language of Computers

More information

Lecture Notes CPSC 321 (Fall 2018) Today... Survey. Course Overview. Homework. HW1 (out) S. Bowers 1 of 8

Lecture Notes CPSC 321 (Fall 2018) Today... Survey. Course Overview. Homework. HW1 (out) S. Bowers 1 of 8 Today... Survey Course Overview Homework HW1 (out) S. Bowers 1 of 8 Course Overview Course webpage www.cs.gonzaga.edu/bowers/courses/cpsc321 Please check frequently (schedule, notes, assignments, etc.)

More information

G4120: Introduction to Computational Biology

G4120: Introduction to Computational Biology ICB Fall 2003 G4120: Computational Biology Oliver Jovanovic, Ph.D. Columbia University Department of Microbiology Copyright 2003 Oliver Jovanovic, All Rights Reserved. The Binary Language of Computers

More information

Xcode 6 and ios 8 What s New for Software Developers

Xcode 6 and ios 8 What s New for Software Developers Xcode 6 and ios 8 What s New for Software Developers August 2014 Norman McEntire! norman.mcentire@servin.com Slides and Video of this presentation will be posted on Tuesday Aug 26 here: http://servin.com!1

More information

CS 235AM, Mobile Application Development: Android Spring 2016

CS 235AM, Mobile Application Development: Android Spring 2016 CS 235AM, Mobile Application Development: Android Spring 2016 Sections CRN 44555 & 44036 Credits 4 Classroom 19/132 Day & Time M, W 8:00 9:50 Instructor Brian Bird Office Building 19, Room 152 Office Phone

More information

Trina Gregory. Background. Contact

Trina Gregory. Background. Contact Trina Gregory Background BA, Mathematics-Computer Science Software engineer for over 15 years Teaching at USC since Spring 2007 MS, Computer Science Contact Email: trina.gregory@usc.edu or trinagre@usc.edu

More information

ios Application Development Course Details

ios Application Development Course Details ios Application Development Course Details By Besant Technologies Course Name Category Venue ios Application Development Mobile Application Development Besant Technologies No.24, Nagendra Nagar, Velachery

More information

Object-Oriented Programming in Objective-C

Object-Oriented Programming in Objective-C In order to build the powerful, complex, and attractive apps that people want today, you need more complex tools than a keyboard and an empty file. In this section, you visit some of the concepts behind

More information

Introduc+on. General Information. General Information. General Information. General Information. General Information

Introduc+on. General Information. General Information. General Information. General Information. General Information Introduc+on IT244 - Introduc+on to Linux / Unix Instructor: Bo Sheng Location and Time S-3-143, Mon & Wed, 4:00 ~ 5:15pm Door code: 261359* Office Hours Science Center, S-3-167, Mon & Wed, 2 ~ 4pm TA office

More information

CS 241 Data Organization. August 21, 2018

CS 241 Data Organization. August 21, 2018 CS 241 Data Organization August 21, 2018 Contact Info Instructor: Dr. Marie Vasek Contact: Private message me on the course Piazza page. Office: Room 2120 of Farris Web site: www.cs.unm.edu/~vasek/cs241/

More information

CLOCK TUTORIAL VERY SIMPLE HELLO WORLD COCOA APPLICATION

CLOCK TUTORIAL VERY SIMPLE HELLO WORLD COCOA APPLICATION http:clanmills.com Page 1/10 CLOCK TUTORIAL VERY SIMPLE HELLO WORLD COCOA APPLICATION Life in a new programming environment has to start somewhere. Everybody knows the hello world application written in

More information

To install OpenOffice.org 3.0 on a Windows-based computer that meets the minimum system requirements, follow these steps:

To install OpenOffice.org 3.0 on a Windows-based computer that meets the minimum system requirements, follow these steps: 14 Lesson One your computer must have Java Runtime Environment (JRE) version 1.5 or higher installed. Fortunately, if you select to perform a Complete Install during the installation process, OpenOffice.org

More information

Science. Computer Science

Science. Computer Science Introductions CS 442: Mobile App Development Michael Saelee Michael (Sae) Lee - lee@iit.edu - moss.cs.iit.edu - Office: SB 226A Agenda - Syllabus & Administrivia - Course overview Android

More information

Web II CE 2413C 01 CE 2414N 01 Fall 2013

Web II CE 2413C 01 CE 2414N 01 Fall 2013 Web II CE 2413C 01 CE 2414N 01 Fall 2013 Class Meeting Information Terra 1113 MON SEPTEMBER 30 MON DECEMBER 2, 6 9 PM Instructor Information Name: Email: Charles Dennis instructorchas@gmail.com Charles

More information

Chapter 2: Operating-System Structures

Chapter 2: Operating-System Structures Chapter 2: Operating-System Structures Chapter 2: Operating-System Structures Operating System Services User Operating System Interface System Calls Types of System Calls System Programs Operating System

More information

Topics in Mobile Computing

Topics in Mobile Computing Topics in Mobile Computing Workshop 1I - ios Fundamental Prepared by Y.H. KWOK What is ios? From Wikipedia (http://en.wikipedia.org/wiki/ios): ios is an operating system for iphone, ipad and Apple TV.

More information

How the Other Half Lives

How the Other Half Lives How the Other Half Lives Developing SDR Software for the Macintosh Platform Jeremy C. McDermond, J.D. 1 (NH6Z) 1. As of May 22, 2010 About the Author Licensed in 1986 at age 14 as KB7AKH Began to program

More information

From the moment you see Mac OS X, you know that it s different from

From the moment you see Mac OS X, you know that it s different from Introduction and Installation of Mac OS X From the moment you see Mac OS X, you know that it s different from any other computer operating system on the planet, including earlier iterations of Mac OS.

More information

Contents. iphone Training. Industry Trainers. Classroom Training Online Training ON-DEMAND Training. Read what you need

Contents. iphone Training. Industry Trainers. Classroom Training Online Training ON-DEMAND Training. Read what you need iphone Training Contents About iphone Training Our ios training classes can help you get off to a running start in iphone, ipod and ipad app development. Learn from expert Objective-C developers with years

More information

CSE 333 Lecture 1 - Systems programming

CSE 333 Lecture 1 - Systems programming CSE 333 Lecture 1 - Systems programming Steve Gribble Department of Computer Science & Engineering University of Washington Welcome! Today s goals: - introductions - big picture - course syllabus - setting

More information

Chapter 2. Operating-System Structures

Chapter 2. Operating-System Structures Chapter 2 Operating-System Structures 2.1 Chapter 2: Operating-System Structures Operating System Services User Operating System Interface System Calls Types of System Calls System Programs Operating System

More information

Chapter 2: Operating-System Structures. Operating System Concepts 9 th Edition

Chapter 2: Operating-System Structures. Operating System Concepts 9 th Edition Chapter 2: Operating-System Structures Silberschatz, Galvin and Gagne 2013 Chapter 2: Operating-System Structures Operating System Services User Operating System Interface System Calls Types of System

More information

Chapter 2: System Structures

Chapter 2: System Structures Chapter 2: Operating System Structures Operating System Services System Calls Chapter 2: System Structures System Programs Operating System Design and Implementation Operating System Structure Virtual

More information

CS 520 Theory and Practice of Software Engineering Fall 2017

CS 520 Theory and Practice of Software Engineering Fall 2017 CS 520 Theory and Practice of Software Engineering Fall 2017 Course introduction September 05, 2017 The CS 520 team Instructors Prof. Yuriy Brun Office: CS 346 Office hours: by appointment brun@cs.umass.edu

More information

Advanced Operating Systems. COMP9242 Introduction

Advanced Operating Systems. COMP9242 Introduction Advanced Operating Systems COMP9242 Introduction Staff Lecturer in Charge Gernot Heiser Lecturer Kevin Elphinstone Various Support Staff TBA 2 Why are you here? You ve done comp3231 Did well (minimum credit)

More information

Staff. Advanced Operating Systems. Why are you here? What can you expect?

Staff. Advanced Operating Systems. Why are you here? What can you expect? Staff Advanced Operating Systems COMP9242 Introduction Lecturer in Charge Gernot Heiser Lecturer Kevin Elphinstone Various Support Staff TBA 2 Why are you here? You ve done comp3231 Did well (minimum credit)

More information

CS 1110, LAB 1: EXPRESSIONS AND ASSIGNMENTS First Name: Last Name: NetID:

CS 1110, LAB 1: EXPRESSIONS AND ASSIGNMENTS   First Name: Last Name: NetID: CS 1110, LAB 1: EXPRESSIONS AND ASSIGNMENTS http://www.cs.cornell.edu/courses/cs1110/2018sp/labs/lab01/lab01.pdf First Name: Last Name: NetID: Learning goals: (1) get hands-on experience using Python in

More information

ArcGIS for Developers: An Introduction. Moey Min Ken

ArcGIS for Developers: An Introduction. Moey Min Ken ArcGIS for Developers: An Introduction Moey Min Ken AGENDA Is development right for me? Building Apps on the ArcGIS platform Rest API & Web API Native SDKs Configurable Apps and Builders Extending the

More information

Mac Os X The Missing Manual For Pc Emulator

Mac Os X The Missing Manual For Pc Emulator Mac Os X The Missing Manual For Pc Emulator Getting into OS X, Windows and How to Work Them, The Four Window Views, Icon View The Mac App Store, Other Ways to Get Mac Software, Opening OS X. Mac OS X*

More information

Syllabus version 1.7

Syllabus version 1.7 Syllabus version 1.7 Instructors Dan Armendariz danallan@mit.edu David J. Malan dmalan@harvard.edu Description Todayʼs applications are increasingly mobile. Computers are no longer confined to desks and

More information

Java Programming Manual Windows

Java Programming Manual Windows Java Programming Manual Windows If you are searching for a book Java programming manual windows in pdf format, then you've come to the loyal website. We presented the complete option of this ebook in txt,

More information

Mac OS X and PDF. The Real Story. Leonard Rosenthol Lazerware, Inc. Copyright , Lazerware, Inc.

Mac OS X and PDF. The Real Story. Leonard Rosenthol Lazerware, Inc. Copyright , Lazerware, Inc. Mac OS X and PDF The Real Story Leonard Rosenthol Lazerware, Inc. Overview Mac OS X PDF Where s the overlap? You are here because You re currently working with Mac OS and are interested in what Mac OS

More information

Chapter 2: System Structures. Operating System Concepts 9 th Edition

Chapter 2: System Structures. Operating System Concepts 9 th Edition Chapter 2: System Structures Silberschatz, Galvin and Gagne 2013 Chapter 2: System Structures Operating System Services User Operating System Interface System Calls Types of System Calls System Programs

More information

Introduction to Computer Systems

Introduction to Computer Systems Introduction to Computer Systems Today:! Welcome to EECS 213! Lecture topics and assignments Next time:! Bits & bytes! and some Boolean algebra Fabián E. Bustamante, 2007 Welcome to Intro. to Computer

More information