SlideShare ist ein Scribd-Unternehmen logo
1 von 22
Downloaden Sie, um offline zu lesen
CS193p
                            Spring 2010




Wednesday, March 31, 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 projects)
                            Due Tuesdays at 11:59pm (3 late days allowed per quarter)
                            Graded on ✓, ✓+ and ✓-
                            Final Project w/Keynote Presentation (last 3 weeks)




Wednesday, March 31, 2010
Object Oriented Programming Terms
              Class
              A description of (or sometimes called a “template for”) an Object.

              Instance
              A manifestation of a Class. Often interchangeable with “Object”.

              Message
              What you send to an Object to get it to do something.
              Method
              The code that is invoked when you send an Object a Message.
              Instance Variable
              A storage location each Instance has. Is often a pointer to another Object.

              Inheritance / Superclass / Subclass
              The process by which a Class gets functionality from another Class.
              A Subclass Inherits functionality from its Superclass.
              Protocol
              A description of a set of Messages that a Class can claim to respond to.
              Sometimes called an “interface” in some languages.


Wednesday, March 31, 2010
Requirements
                            Prerequisite: CS106
                            Object-Oriented Programming


                            You need access to a Mac!
                            Intel-based (not PowerPC) Macintosh
                            Mac OSX 10.5 Leopard (or later)
                            iPhone SDK is not available on the cluster computers currently


                            iPhone/iPod Touch (iPad?)
                            NOT Required
                            Homework to be done on iPhone Simulator
                            Loaner iPod Touches (sorry no iPads or iPhones) available


                            No “Textbook”
                            Documentation is built into Developer Tools



Wednesday, March 31, 2010
Enrollment
                            Class will be limited to 60 students
                            40 Graded, 20 Pass/No Credit


                            You MUST fill out a survey to be considered
                            http://tinyurl.com/cs193p-spring-2010
                            Needs to be completed by noon tomorrow!


                            If oversubscribed, class will be filled by ...
                            Experience
                            Quarters remaining to graduation
                            Major
                            Other (be sure to share any other interesting info)

                            Auditors welcome!


Wednesday, March 31, 2010
iPhone SDK
                            Free!
                            Thru iPhone Developer University Program
                            No beta SDKs, so no iPad for now :(
                            No uploading to the AppStore
                            You can always join the normal iPhone Developer Program: $99


                            You will be sent an invitation to your sunetid
                            Will only be sent after you fill out aforementioned survey
                            Follow the directions
                            Download the SDK to your Mac
                            We need the UDID of any device you’re going to use (even loaners)
                            Valid through the end of the quarter




Wednesday, March 31, 2010
iTunes U

                 Not on iTunesU this quarter.

                 Class is quite different this quarter
                 Especially the first 6 to 8 lectures.


                 Old iTunesU is not a substitute for coming to class!
                 You’ll be lost on the homework assignments




Wednesday, March 31, 2010
Communication
                            E-mail
                            Questions are best sent to cs193p@cs.stanford.edu
                            Sending directly to instructor or TA’s risks slow response.
                            Sorry, but we cannot take questions from auditors (too swamped).


                            Web Site
                            Very Important!
                            http://cs193p.stanford.edu
                            All lectures, assignments, code, etc. will be there.
                            This site will be your best friend when it comes to getting info.


                            External
                            Google Group http:/ /cs193p.com (auditors’ group)
                            http://developer.apple.com
                            http://devforums.apple.com



Wednesday, March 31, 2010
What will I learn?
                            How to build cool apps!
                            Arguably the coolest application development platform in the world.


                            Real-life Object-Oriented Programming
                            OOP is at the heart of the Cocoa Touch API
                            We’ll also cover a lot of “design concepts” in OO systems

                            Other CS Concepts
                            Databases
                            Graphics
                            Media
                            Animation
                            Embedded System Performance (incl. multi-threading)
                            Network Programming
                            Much, much more!



Wednesday, March 31, 2010
Homework Projects
                            Calculator
                            First part will be simply to recreate Wednesday’s demo
                            Second part will be to add a few features
                            Learn: Intro to Xcode, IB, Objective-C, MVC


                            Polygon
                            Draw and control the properties of a graphical shape
                            Learn: Memory Management, Objective-C Properties
                            Learn: Creating Custom Graphical Views

                            SPoT (Stanford Photo Tour)
                            An online photographic reference guide to Stanford
                            Displays, searches and manages a large amount of data
                            Learn: Navigation, Tables, Core Data, Threading, Maps, more ...




Wednesday, March 31, 2010
iPhone OS
                                      Core OS
                       Cocoa Touch
                                      OSX Kernel Power Management
                            Media     Mach 3.0   Keychain Access
                                      BSD        Certificates
                     Core Services
                                      Sockets    File System
                            Core OS   Security   Bonjour




Wednesday, March 31, 2010
iPhone OS
                                      Core Services
                       Cocoa Touch
                                      Collections   Core Location
                            Media     Address Book Net Services
                                      Networking    Threading
                     Core Services
                                      File Access   Preferences
                            Core OS   SQLite        URL Utilities




Wednesday, March 31, 2010
iPhone OS
                                      Media
                       Cocoa Touch
                                      Core Audio       JPEG, PNG, TIFF
                            Media     OpenAL           PDF
                                      Audio Mixing     Quartz (2D)
                     Core Services
                                      Audio Recording Core Animation
                            Core OS   Video Playback   OpenGL ES




Wednesday, March 31, 2010
iPhone OS
                                      Cocoa Touch
                       Cocoa Touch
                                      Multi-Touch      Alerts
                            Media     Accelerometer    Web View
                                      View Hierarchy   Map Kit
                     Core Services
                                      Localization     Image Picker
                            Core OS   Controls         Camera




Wednesday, March 31, 2010
Platform Components
                                                Interface Builder
                            Tools                                                            s
                                                                                         t
                                                                              In stru men
                                       Xcode

                            Language   [display setTextColor:[UIColor blackColor]];

                                                                    a
                                                                D at
                                                           re
                                                        Co
                                                                 Ma
                            Frameworks                              p
                                                                        Kit
                                             Foundation                        UIKit

                            Design Strategies     MVC
Wednesday, March 31, 2010
Model View Controller

                                     Controller

                               Objects in Your Program

                            Model                   View




Wednesday, March 31, 2010
Model View Controller

                                      Controller

                              Could Be Groups of Objects


                            Model                    View




Wednesday, March 31, 2010
Model View Controller

                                    Controller



                            Model                View




Wednesday, March 31, 2010
Model View Controller
                                                 Delegation
                                                 Notification
                                                    KVC

                                    Controller
    Delegation
    Notification
       KVC




                            Model                View


                                                         Delegation
                                                         Notification
                                                            KVC
Wednesday, March 31, 2010
Wednesday

                            Overview of Development Environment
                            Objective-C
                            Interface Builder
                            Xcode
                            MVC (Model-View-Controller) Example


                            Demonstration
                            From-scratch development of a calculator
                            We’ll go over every line of code




Wednesday, March 31, 2010
Next Week
                            More Objective-C
                            Language Syntax (properties, enumeration)
                            Foundation Classes: NSString, NSArray, NSNumber, etc.
                            Dynamic and Static Typing
                            Selectors
                            Memory Management


                            More Interface Builder and Xcode
                            Controls other than UIButton and UILabel
                            Cursory overview of the debugger


                            Views and Drawing



Wednesday, March 31, 2010
Remember


                            Fill out the Survey by tomorrow noon!
                            http://tinyurl.com/cs193p-spring-2010




Wednesday, March 31, 2010

Weitere ähnliche Inhalte

Kürzlich hochgeladen

Gas measurement O2,Co2,& ph) 04/2024.pptx
Gas measurement O2,Co2,& ph) 04/2024.pptxGas measurement O2,Co2,& ph) 04/2024.pptx
Gas measurement O2,Co2,& ph) 04/2024.pptxDr.Ibrahim Hassaan
 
Roles & Responsibilities in Pharmacovigilance
Roles & Responsibilities in PharmacovigilanceRoles & Responsibilities in Pharmacovigilance
Roles & Responsibilities in PharmacovigilanceSamikshaHamane
 
ACC 2024 Chronicles. Cardiology. Exam.pdf
ACC 2024 Chronicles. Cardiology. Exam.pdfACC 2024 Chronicles. Cardiology. Exam.pdf
ACC 2024 Chronicles. Cardiology. Exam.pdfSpandanaRallapalli
 
Field Attribute Index Feature in Odoo 17
Field Attribute Index Feature in Odoo 17Field Attribute Index Feature in Odoo 17
Field Attribute Index Feature in Odoo 17Celine George
 
ISYU TUNGKOL SA SEKSWLADIDA (ISSUE ABOUT SEXUALITY
ISYU TUNGKOL SA SEKSWLADIDA (ISSUE ABOUT SEXUALITYISYU TUNGKOL SA SEKSWLADIDA (ISSUE ABOUT SEXUALITY
ISYU TUNGKOL SA SEKSWLADIDA (ISSUE ABOUT SEXUALITYKayeClaireEstoconing
 
HỌC TỐT TIẾNG ANH 11 THEO CHƯƠNG TRÌNH GLOBAL SUCCESS ĐÁP ÁN CHI TIẾT - CẢ NĂ...
HỌC TỐT TIẾNG ANH 11 THEO CHƯƠNG TRÌNH GLOBAL SUCCESS ĐÁP ÁN CHI TIẾT - CẢ NĂ...HỌC TỐT TIẾNG ANH 11 THEO CHƯƠNG TRÌNH GLOBAL SUCCESS ĐÁP ÁN CHI TIẾT - CẢ NĂ...
HỌC TỐT TIẾNG ANH 11 THEO CHƯƠNG TRÌNH GLOBAL SUCCESS ĐÁP ÁN CHI TIẾT - CẢ NĂ...Nguyen Thanh Tu Collection
 
INTRODUCTION TO CATHOLIC CHRISTOLOGY.pptx
INTRODUCTION TO CATHOLIC CHRISTOLOGY.pptxINTRODUCTION TO CATHOLIC CHRISTOLOGY.pptx
INTRODUCTION TO CATHOLIC CHRISTOLOGY.pptxHumphrey A Beña
 
Like-prefer-love -hate+verb+ing & silent letters & citizenship text.pdf
Like-prefer-love -hate+verb+ing & silent letters & citizenship text.pdfLike-prefer-love -hate+verb+ing & silent letters & citizenship text.pdf
Like-prefer-love -hate+verb+ing & silent letters & citizenship text.pdfMr Bounab Samir
 
ANG SEKTOR NG agrikultura.pptx QUARTER 4
ANG SEKTOR NG agrikultura.pptx QUARTER 4ANG SEKTOR NG agrikultura.pptx QUARTER 4
ANG SEKTOR NG agrikultura.pptx QUARTER 4MiaBumagat1
 
Choosing the Right CBSE School A Comprehensive Guide for Parents
Choosing the Right CBSE School A Comprehensive Guide for ParentsChoosing the Right CBSE School A Comprehensive Guide for Parents
Choosing the Right CBSE School A Comprehensive Guide for Parentsnavabharathschool99
 
Computed Fields and api Depends in the Odoo 17
Computed Fields and api Depends in the Odoo 17Computed Fields and api Depends in the Odoo 17
Computed Fields and api Depends in the Odoo 17Celine George
 
MULTIDISCIPLINRY NATURE OF THE ENVIRONMENTAL STUDIES.pptx
MULTIDISCIPLINRY NATURE OF THE ENVIRONMENTAL STUDIES.pptxMULTIDISCIPLINRY NATURE OF THE ENVIRONMENTAL STUDIES.pptx
MULTIDISCIPLINRY NATURE OF THE ENVIRONMENTAL STUDIES.pptxAnupkumar Sharma
 
AMERICAN LANGUAGE HUB_Level2_Student'sBook_Answerkey.pdf
AMERICAN LANGUAGE HUB_Level2_Student'sBook_Answerkey.pdfAMERICAN LANGUAGE HUB_Level2_Student'sBook_Answerkey.pdf
AMERICAN LANGUAGE HUB_Level2_Student'sBook_Answerkey.pdfphamnguyenenglishnb
 
USPS® Forced Meter Migration - How to Know if Your Postage Meter Will Soon be...
USPS® Forced Meter Migration - How to Know if Your Postage Meter Will Soon be...USPS® Forced Meter Migration - How to Know if Your Postage Meter Will Soon be...
USPS® Forced Meter Migration - How to Know if Your Postage Meter Will Soon be...Postal Advocate Inc.
 
Full Stack Web Development Course for Beginners
Full Stack Web Development Course  for BeginnersFull Stack Web Development Course  for Beginners
Full Stack Web Development Course for BeginnersSabitha Banu
 
4.18.24 Movement Legacies, Reflection, and Review.pptx
4.18.24 Movement Legacies, Reflection, and Review.pptx4.18.24 Movement Legacies, Reflection, and Review.pptx
4.18.24 Movement Legacies, Reflection, and Review.pptxmary850239
 

Kürzlich hochgeladen (20)

Gas measurement O2,Co2,& ph) 04/2024.pptx
Gas measurement O2,Co2,& ph) 04/2024.pptxGas measurement O2,Co2,& ph) 04/2024.pptx
Gas measurement O2,Co2,& ph) 04/2024.pptx
 
Roles & Responsibilities in Pharmacovigilance
Roles & Responsibilities in PharmacovigilanceRoles & Responsibilities in Pharmacovigilance
Roles & Responsibilities in Pharmacovigilance
 
ACC 2024 Chronicles. Cardiology. Exam.pdf
ACC 2024 Chronicles. Cardiology. Exam.pdfACC 2024 Chronicles. Cardiology. Exam.pdf
ACC 2024 Chronicles. Cardiology. Exam.pdf
 
Field Attribute Index Feature in Odoo 17
Field Attribute Index Feature in Odoo 17Field Attribute Index Feature in Odoo 17
Field Attribute Index Feature in Odoo 17
 
YOUVE_GOT_EMAIL_PRELIMS_EL_DORADO_2024.pptx
YOUVE_GOT_EMAIL_PRELIMS_EL_DORADO_2024.pptxYOUVE_GOT_EMAIL_PRELIMS_EL_DORADO_2024.pptx
YOUVE_GOT_EMAIL_PRELIMS_EL_DORADO_2024.pptx
 
TataKelola dan KamSiber Kecerdasan Buatan v022.pdf
TataKelola dan KamSiber Kecerdasan Buatan v022.pdfTataKelola dan KamSiber Kecerdasan Buatan v022.pdf
TataKelola dan KamSiber Kecerdasan Buatan v022.pdf
 
ISYU TUNGKOL SA SEKSWLADIDA (ISSUE ABOUT SEXUALITY
ISYU TUNGKOL SA SEKSWLADIDA (ISSUE ABOUT SEXUALITYISYU TUNGKOL SA SEKSWLADIDA (ISSUE ABOUT SEXUALITY
ISYU TUNGKOL SA SEKSWLADIDA (ISSUE ABOUT SEXUALITY
 
LEFT_ON_C'N_ PRELIMS_EL_DORADO_2024.pptx
LEFT_ON_C'N_ PRELIMS_EL_DORADO_2024.pptxLEFT_ON_C'N_ PRELIMS_EL_DORADO_2024.pptx
LEFT_ON_C'N_ PRELIMS_EL_DORADO_2024.pptx
 
HỌC TỐT TIẾNG ANH 11 THEO CHƯƠNG TRÌNH GLOBAL SUCCESS ĐÁP ÁN CHI TIẾT - CẢ NĂ...
HỌC TỐT TIẾNG ANH 11 THEO CHƯƠNG TRÌNH GLOBAL SUCCESS ĐÁP ÁN CHI TIẾT - CẢ NĂ...HỌC TỐT TIẾNG ANH 11 THEO CHƯƠNG TRÌNH GLOBAL SUCCESS ĐÁP ÁN CHI TIẾT - CẢ NĂ...
HỌC TỐT TIẾNG ANH 11 THEO CHƯƠNG TRÌNH GLOBAL SUCCESS ĐÁP ÁN CHI TIẾT - CẢ NĂ...
 
INTRODUCTION TO CATHOLIC CHRISTOLOGY.pptx
INTRODUCTION TO CATHOLIC CHRISTOLOGY.pptxINTRODUCTION TO CATHOLIC CHRISTOLOGY.pptx
INTRODUCTION TO CATHOLIC CHRISTOLOGY.pptx
 
Like-prefer-love -hate+verb+ing & silent letters & citizenship text.pdf
Like-prefer-love -hate+verb+ing & silent letters & citizenship text.pdfLike-prefer-love -hate+verb+ing & silent letters & citizenship text.pdf
Like-prefer-love -hate+verb+ing & silent letters & citizenship text.pdf
 
ANG SEKTOR NG agrikultura.pptx QUARTER 4
ANG SEKTOR NG agrikultura.pptx QUARTER 4ANG SEKTOR NG agrikultura.pptx QUARTER 4
ANG SEKTOR NG agrikultura.pptx QUARTER 4
 
Choosing the Right CBSE School A Comprehensive Guide for Parents
Choosing the Right CBSE School A Comprehensive Guide for ParentsChoosing the Right CBSE School A Comprehensive Guide for Parents
Choosing the Right CBSE School A Comprehensive Guide for Parents
 
Computed Fields and api Depends in the Odoo 17
Computed Fields and api Depends in the Odoo 17Computed Fields and api Depends in the Odoo 17
Computed Fields and api Depends in the Odoo 17
 
MULTIDISCIPLINRY NATURE OF THE ENVIRONMENTAL STUDIES.pptx
MULTIDISCIPLINRY NATURE OF THE ENVIRONMENTAL STUDIES.pptxMULTIDISCIPLINRY NATURE OF THE ENVIRONMENTAL STUDIES.pptx
MULTIDISCIPLINRY NATURE OF THE ENVIRONMENTAL STUDIES.pptx
 
AMERICAN LANGUAGE HUB_Level2_Student'sBook_Answerkey.pdf
AMERICAN LANGUAGE HUB_Level2_Student'sBook_Answerkey.pdfAMERICAN LANGUAGE HUB_Level2_Student'sBook_Answerkey.pdf
AMERICAN LANGUAGE HUB_Level2_Student'sBook_Answerkey.pdf
 
FINALS_OF_LEFT_ON_C'N_EL_DORADO_2024.pptx
FINALS_OF_LEFT_ON_C'N_EL_DORADO_2024.pptxFINALS_OF_LEFT_ON_C'N_EL_DORADO_2024.pptx
FINALS_OF_LEFT_ON_C'N_EL_DORADO_2024.pptx
 
USPS® Forced Meter Migration - How to Know if Your Postage Meter Will Soon be...
USPS® Forced Meter Migration - How to Know if Your Postage Meter Will Soon be...USPS® Forced Meter Migration - How to Know if Your Postage Meter Will Soon be...
USPS® Forced Meter Migration - How to Know if Your Postage Meter Will Soon be...
 
Full Stack Web Development Course for Beginners
Full Stack Web Development Course  for BeginnersFull Stack Web Development Course  for Beginners
Full Stack Web Development Course for Beginners
 
4.18.24 Movement Legacies, Reflection, and Review.pptx
4.18.24 Movement Legacies, Reflection, and Review.pptx4.18.24 Movement Legacies, Reflection, and Review.pptx
4.18.24 Movement Legacies, Reflection, and Review.pptx
 

Empfohlen

2024 State of Marketing Report – by Hubspot
2024 State of Marketing Report – by Hubspot2024 State of Marketing Report – by Hubspot
2024 State of Marketing Report – by HubspotMarius Sescu
 
Everything You Need To Know About ChatGPT
Everything You Need To Know About ChatGPTEverything You Need To Know About ChatGPT
Everything You Need To Know About ChatGPTExpeed Software
 
Product Design Trends in 2024 | Teenage Engineerings
Product Design Trends in 2024 | Teenage EngineeringsProduct Design Trends in 2024 | Teenage Engineerings
Product Design Trends in 2024 | Teenage EngineeringsPixeldarts
 
How Race, Age and Gender Shape Attitudes Towards Mental Health
How Race, Age and Gender Shape Attitudes Towards Mental HealthHow Race, Age and Gender Shape Attitudes Towards Mental Health
How Race, Age and Gender Shape Attitudes Towards Mental HealthThinkNow
 
AI Trends in Creative Operations 2024 by Artwork Flow.pdf
AI Trends in Creative Operations 2024 by Artwork Flow.pdfAI Trends in Creative Operations 2024 by Artwork Flow.pdf
AI Trends in Creative Operations 2024 by Artwork Flow.pdfmarketingartwork
 
PEPSICO Presentation to CAGNY Conference Feb 2024
PEPSICO Presentation to CAGNY Conference Feb 2024PEPSICO Presentation to CAGNY Conference Feb 2024
PEPSICO Presentation to CAGNY Conference Feb 2024Neil Kimberley
 
Content Methodology: A Best Practices Report (Webinar)
Content Methodology: A Best Practices Report (Webinar)Content Methodology: A Best Practices Report (Webinar)
Content Methodology: A Best Practices Report (Webinar)contently
 
How to Prepare For a Successful Job Search for 2024
How to Prepare For a Successful Job Search for 2024How to Prepare For a Successful Job Search for 2024
How to Prepare For a Successful Job Search for 2024Albert Qian
 
Social Media Marketing Trends 2024 // The Global Indie Insights
Social Media Marketing Trends 2024 // The Global Indie InsightsSocial Media Marketing Trends 2024 // The Global Indie Insights
Social Media Marketing Trends 2024 // The Global Indie InsightsKurio // The Social Media Age(ncy)
 
Trends In Paid Search: Navigating The Digital Landscape In 2024
Trends In Paid Search: Navigating The Digital Landscape In 2024Trends In Paid Search: Navigating The Digital Landscape In 2024
Trends In Paid Search: Navigating The Digital Landscape In 2024Search Engine Journal
 
5 Public speaking tips from TED - Visualized summary
5 Public speaking tips from TED - Visualized summary5 Public speaking tips from TED - Visualized summary
5 Public speaking tips from TED - Visualized summarySpeakerHub
 
ChatGPT and the Future of Work - Clark Boyd
ChatGPT and the Future of Work - Clark Boyd ChatGPT and the Future of Work - Clark Boyd
ChatGPT and the Future of Work - Clark Boyd Clark Boyd
 
Getting into the tech field. what next
Getting into the tech field. what next Getting into the tech field. what next
Getting into the tech field. what next Tessa Mero
 
Google's Just Not That Into You: Understanding Core Updates & Search Intent
Google's Just Not That Into You: Understanding Core Updates & Search IntentGoogle's Just Not That Into You: Understanding Core Updates & Search Intent
Google's Just Not That Into You: Understanding Core Updates & Search IntentLily Ray
 
Time Management & Productivity - Best Practices
Time Management & Productivity -  Best PracticesTime Management & Productivity -  Best Practices
Time Management & Productivity - Best PracticesVit Horky
 
The six step guide to practical project management
The six step guide to practical project managementThe six step guide to practical project management
The six step guide to practical project managementMindGenius
 
Beginners Guide to TikTok for Search - Rachel Pearson - We are Tilt __ Bright...
Beginners Guide to TikTok for Search - Rachel Pearson - We are Tilt __ Bright...Beginners Guide to TikTok for Search - Rachel Pearson - We are Tilt __ Bright...
Beginners Guide to TikTok for Search - Rachel Pearson - We are Tilt __ Bright...RachelPearson36
 

Empfohlen (20)

2024 State of Marketing Report – by Hubspot
2024 State of Marketing Report – by Hubspot2024 State of Marketing Report – by Hubspot
2024 State of Marketing Report – by Hubspot
 
Everything You Need To Know About ChatGPT
Everything You Need To Know About ChatGPTEverything You Need To Know About ChatGPT
Everything You Need To Know About ChatGPT
 
Product Design Trends in 2024 | Teenage Engineerings
Product Design Trends in 2024 | Teenage EngineeringsProduct Design Trends in 2024 | Teenage Engineerings
Product Design Trends in 2024 | Teenage Engineerings
 
How Race, Age and Gender Shape Attitudes Towards Mental Health
How Race, Age and Gender Shape Attitudes Towards Mental HealthHow Race, Age and Gender Shape Attitudes Towards Mental Health
How Race, Age and Gender Shape Attitudes Towards Mental Health
 
AI Trends in Creative Operations 2024 by Artwork Flow.pdf
AI Trends in Creative Operations 2024 by Artwork Flow.pdfAI Trends in Creative Operations 2024 by Artwork Flow.pdf
AI Trends in Creative Operations 2024 by Artwork Flow.pdf
 
Skeleton Culture Code
Skeleton Culture CodeSkeleton Culture Code
Skeleton Culture Code
 
PEPSICO Presentation to CAGNY Conference Feb 2024
PEPSICO Presentation to CAGNY Conference Feb 2024PEPSICO Presentation to CAGNY Conference Feb 2024
PEPSICO Presentation to CAGNY Conference Feb 2024
 
Content Methodology: A Best Practices Report (Webinar)
Content Methodology: A Best Practices Report (Webinar)Content Methodology: A Best Practices Report (Webinar)
Content Methodology: A Best Practices Report (Webinar)
 
How to Prepare For a Successful Job Search for 2024
How to Prepare For a Successful Job Search for 2024How to Prepare For a Successful Job Search for 2024
How to Prepare For a Successful Job Search for 2024
 
Social Media Marketing Trends 2024 // The Global Indie Insights
Social Media Marketing Trends 2024 // The Global Indie InsightsSocial Media Marketing Trends 2024 // The Global Indie Insights
Social Media Marketing Trends 2024 // The Global Indie Insights
 
Trends In Paid Search: Navigating The Digital Landscape In 2024
Trends In Paid Search: Navigating The Digital Landscape In 2024Trends In Paid Search: Navigating The Digital Landscape In 2024
Trends In Paid Search: Navigating The Digital Landscape In 2024
 
5 Public speaking tips from TED - Visualized summary
5 Public speaking tips from TED - Visualized summary5 Public speaking tips from TED - Visualized summary
5 Public speaking tips from TED - Visualized summary
 
ChatGPT and the Future of Work - Clark Boyd
ChatGPT and the Future of Work - Clark Boyd ChatGPT and the Future of Work - Clark Boyd
ChatGPT and the Future of Work - Clark Boyd
 
Getting into the tech field. what next
Getting into the tech field. what next Getting into the tech field. what next
Getting into the tech field. what next
 
Google's Just Not That Into You: Understanding Core Updates & Search Intent
Google's Just Not That Into You: Understanding Core Updates & Search IntentGoogle's Just Not That Into You: Understanding Core Updates & Search Intent
Google's Just Not That Into You: Understanding Core Updates & Search Intent
 
How to have difficult conversations
How to have difficult conversations How to have difficult conversations
How to have difficult conversations
 
Introduction to Data Science
Introduction to Data ScienceIntroduction to Data Science
Introduction to Data Science
 
Time Management & Productivity - Best Practices
Time Management & Productivity -  Best PracticesTime Management & Productivity -  Best Practices
Time Management & Productivity - Best Practices
 
The six step guide to practical project management
The six step guide to practical project managementThe six step guide to practical project management
The six step guide to practical project management
 
Beginners Guide to TikTok for Search - Rachel Pearson - We are Tilt __ Bright...
Beginners Guide to TikTok for Search - Rachel Pearson - We are Tilt __ Bright...Beginners Guide to TikTok for Search - Rachel Pearson - We are Tilt __ Bright...
Beginners Guide to TikTok for Search - Rachel Pearson - We are Tilt __ Bright...
 

Lecture 1#-(Logistics, iPhone OS Overview, MVC)

  • 1. CS193p Spring 2010 Wednesday, March 31, 2010
  • 2. 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 projects) Due Tuesdays at 11:59pm (3 late days allowed per quarter) Graded on ✓, ✓+ and ✓- Final Project w/Keynote Presentation (last 3 weeks) Wednesday, March 31, 2010
  • 3. Object Oriented Programming Terms Class A description of (or sometimes called a “template for”) an Object. Instance A manifestation of a Class. Often interchangeable with “Object”. Message What you send to an Object to get it to do something. Method The code that is invoked when you send an Object a Message. Instance Variable A storage location each Instance has. Is often a pointer to another Object. Inheritance / Superclass / Subclass The process by which a Class gets functionality from another Class. A Subclass Inherits functionality from its Superclass. Protocol A description of a set of Messages that a Class can claim to respond to. Sometimes called an “interface” in some languages. Wednesday, March 31, 2010
  • 4. Requirements Prerequisite: CS106 Object-Oriented Programming You need access to a Mac! Intel-based (not PowerPC) Macintosh Mac OSX 10.5 Leopard (or later) iPhone SDK is not available on the cluster computers currently iPhone/iPod Touch (iPad?) NOT Required Homework to be done on iPhone Simulator Loaner iPod Touches (sorry no iPads or iPhones) available No “Textbook” Documentation is built into Developer Tools Wednesday, March 31, 2010
  • 5. Enrollment Class will be limited to 60 students 40 Graded, 20 Pass/No Credit You MUST fill out a survey to be considered http://tinyurl.com/cs193p-spring-2010 Needs to be completed by noon tomorrow! If oversubscribed, class will be filled by ... Experience Quarters remaining to graduation Major Other (be sure to share any other interesting info) Auditors welcome! Wednesday, March 31, 2010
  • 6. iPhone SDK Free! Thru iPhone Developer University Program No beta SDKs, so no iPad for now :( No uploading to the AppStore You can always join the normal iPhone Developer Program: $99 You will be sent an invitation to your sunetid Will only be sent after you fill out aforementioned survey Follow the directions Download the SDK to your Mac We need the UDID of any device you’re going to use (even loaners) Valid through the end of the quarter Wednesday, March 31, 2010
  • 7. iTunes U Not on iTunesU this quarter. Class is quite different this quarter Especially the first 6 to 8 lectures. Old iTunesU is not a substitute for coming to class! You’ll be lost on the homework assignments Wednesday, March 31, 2010
  • 8. Communication E-mail Questions are best sent to cs193p@cs.stanford.edu Sending directly to instructor or TA’s risks slow response. Sorry, but we cannot take questions from auditors (too swamped). Web Site Very Important! http://cs193p.stanford.edu All lectures, assignments, code, etc. will be there. This site will be your best friend when it comes to getting info. External Google Group http:/ /cs193p.com (auditors’ group) http://developer.apple.com http://devforums.apple.com Wednesday, March 31, 2010
  • 9. What will I learn? How to build cool apps! Arguably the coolest application development platform in the world. Real-life Object-Oriented Programming OOP is at the heart of the Cocoa Touch API We’ll also cover a lot of “design concepts” in OO systems Other CS Concepts Databases Graphics Media Animation Embedded System Performance (incl. multi-threading) Network Programming Much, much more! Wednesday, March 31, 2010
  • 10. Homework Projects Calculator First part will be simply to recreate Wednesday’s demo Second part will be to add a few features Learn: Intro to Xcode, IB, Objective-C, MVC Polygon Draw and control the properties of a graphical shape Learn: Memory Management, Objective-C Properties Learn: Creating Custom Graphical Views SPoT (Stanford Photo Tour) An online photographic reference guide to Stanford Displays, searches and manages a large amount of data Learn: Navigation, Tables, Core Data, Threading, Maps, more ... Wednesday, March 31, 2010
  • 11. iPhone OS Core OS Cocoa Touch OSX Kernel Power Management Media Mach 3.0 Keychain Access BSD Certificates Core Services Sockets File System Core OS Security Bonjour Wednesday, March 31, 2010
  • 12. iPhone OS Core Services Cocoa Touch Collections Core Location Media Address Book Net Services Networking Threading Core Services File Access Preferences Core OS SQLite URL Utilities Wednesday, March 31, 2010
  • 13. iPhone OS Media Cocoa Touch Core Audio JPEG, PNG, TIFF Media OpenAL PDF Audio Mixing Quartz (2D) Core Services Audio Recording Core Animation Core OS Video Playback OpenGL ES Wednesday, March 31, 2010
  • 14. iPhone OS Cocoa Touch Cocoa Touch Multi-Touch Alerts Media Accelerometer Web View View Hierarchy Map Kit Core Services Localization Image Picker Core OS Controls Camera Wednesday, March 31, 2010
  • 15. Platform Components Interface Builder Tools s t In stru men Xcode Language [display setTextColor:[UIColor blackColor]]; a D at re Co Ma Frameworks p Kit Foundation UIKit Design Strategies MVC Wednesday, March 31, 2010
  • 16. Model View Controller Controller Objects in Your Program Model View Wednesday, March 31, 2010
  • 17. Model View Controller Controller Could Be Groups of Objects Model View Wednesday, March 31, 2010
  • 18. Model View Controller Controller Model View Wednesday, March 31, 2010
  • 19. Model View Controller Delegation Notification KVC Controller Delegation Notification KVC Model View Delegation Notification KVC Wednesday, March 31, 2010
  • 20. Wednesday Overview of Development Environment Objective-C Interface Builder Xcode MVC (Model-View-Controller) Example Demonstration From-scratch development of a calculator We’ll go over every line of code Wednesday, March 31, 2010
  • 21. Next Week More Objective-C Language Syntax (properties, enumeration) Foundation Classes: NSString, NSArray, NSNumber, etc. Dynamic and Static Typing Selectors Memory Management More Interface Builder and Xcode Controls other than UIButton and UILabel Cursory overview of the debugger Views and Drawing Wednesday, March 31, 2010
  • 22. Remember Fill out the Survey by tomorrow noon! http://tinyurl.com/cs193p-spring-2010 Wednesday, March 31, 2010