Stanford CS193p. Developing Applications for ios. Spring Stanford CS193p. Spring 2012

Size: px
Start display at page:

Download "Stanford CS193p. Developing Applications for ios. Spring Stanford CS193p. Spring 2012"

Transcription

1 Developing Applications for ios

2 Today Shutterbug Map Demo Final part: customizing the callout. Final Projects Requirements Some ideas from the Stanford community Persistence (time-permitting) More ways to make things stick around between launchings of your app

3 Demo continued... Shutterbug Map

4 Final Project Proposal due immediately! And must be received no later than next Wednesday. Send PDF of your proposal to your CA (the one who has graded your latest assignment). Proposal must say not only what you are doing, but also what parts of SDK will be featured. Project (including Keynote) due on Friday, June 8th. Use normal submission process. NO LATE DAYS (next week s assignment is the last opportunity to use free late days). Required presentation during final exam period Monday, June 11th at 12:15pm in this room (Hewlett 200). 2-minute Keynote (not PowerPoint) presentation (more on this in a moment). Alternate presentation available on Tuesday, June 5th (Keynotes due by Monday, June 4th). If you need/want the alternate presentation time, let us know immediately (via class staff ).

5 Final Project Scope is the same as three weeks of homework Luckily, you ll have three weeks to do it (counts as 35-40% of your overall grade). P/NC students must pass both homework and final project segments separately. Check out past itunesu presentations to get an idea of scope. One- or two-person teams If two, be sure to include the proposed team in your proposal. Division of work must be VERY CLEARLY explained (both in proposal and in final submission). Two-person team is equivalent of six weeks of homework total (obviously). Must work on hardware! Bring your hardware to final exam to demo to TA (if not used during your presentation). ipad or iphone or ipod Touch okay. Only ios SDK code counts Don t waste your time writing server-side code Okay to simulate a server-side interaction to make your code demonstrable.

6 Final Project You ll be graded on proper use of SDK Hackery will count against you. Use good object-oriented programming technique. Must have at least one feature which was NOT taught in lecture/demo/homework assignment. Breadth is VERY important. Don t get stuck down a rathole. Aesthetics of your user-interface matter (although we do not expect professional graphic designer quality graphics) Sloppy layouts will be graded down. Lots of places to get graphics from on the internet. Be careful not to get side-tracked on non-ios-code Some students in the past have spent 80% of their time working on stuff that didn t demonstrate their mastery of the class material. (e.g. preparing some large database or working on graphics too much, etc.) In the end, this is an ios PROGRAMMING course, so we want to see how well you can program on this platform.

7 Final Project Presentation Quality Matters A (tiny) portion of your grade will be related to the quality of your presentation. Not okay to just put up a recording of you or of your application and say nothing. Being able to make a live presentation is a valuable skill. Practice your presentation before you show up. You only get 2 minutes (strictly enforced), so make em count. Live demo? All projects will be loaded onto the demo ipad2, so you can try to demo it live if you want. Or you can use your own hardware (ipad2, new ipad and iphone4s are only supported platforms) Live demos are perilous, as you saw all quarter :). You must, at worst, show screen shots of your application. Keynote/Quicktime has some tools to animate screen shots (better than static). Video (screen capture) of your app in action can be good also.

8 Sample Proposal Section 1: What am I doing? I will be building a Shakespeare Director application. It will have the following features: A table for choosing a Shakespearean play from a list downloaded from Folio*. A custom view for laying out the blocking of a chosen Shakespearean play. A dialogue-learning mode. * Folio is an on-line database of all of Shakespeare s works. The custom view will be simple (only rectangles and circles with colors for stroke/fill, and text). Photos (from Camera or Library) can be put in rectangles in the blocking view. The blocking can change from line to line in the dialog (but no more often than that). Blocking can be stepped through, line by line, or played back in time lapse mode. The dialogue-learning mode will step through all the dialog line by line. Users can record the dialog for other parts (as prompts for them to learn their own part). ipad only.

9 Sample Proposal Section 2: What parts of ios will it use? TableView for choosing plays and stepping through dialog Custom UITableViewCell prototypes (for dialog, including speaker, blocking instructions) Custom UIView with drawrect: for blocking Camera/Photo Library for putting images in blocking rectangles UITextField in a popover for text labels in the blocking view Popover for choosing stroke and fill color and shape in blocking mode Scroll view to zoom in/pan around in blocking view AVFoundation for record/playback of dialog NSTimer for time lapse playback of entire play with dialog/blocking linked Core Data to store the blocking and dialog Play entity Scene entity BlockingElement entity LineOfDialog entity Printing of blocking to AirPrint printers (this is the NOT COVERED IN LECTURE feature)

10 Sample Proposal What to notice about this sample proposal? Clear description of what the application will do (section 1). Clear list of the ios features that will be used (section 2). Lots of breadth (not necessarily that much depth in any one area). Clearly delineates the NOT COVERED IN LECTURE feature. Specifies platform (ipad only). It s creative (it s not just Places or Calculator recycled).

11 Ideas Kristen Pilner Blair, School of Education Sam Saenz, Office of Alcohol Policy/Education School of Medicine

12 Persistence Property Lists Use writetourl:atomically: and initwithcontentsofurl: in NSArray or NSDictionary Or NSUserDefaults if appropriate. Also NSPropertyListSerialization converts Property Lists to/from NSData. Archiving Objects SQLite Core Data Next week

13 Archiving There is a mechanism for making ANY object graph persistent Not just graphs with NSArray, NSDictionary, etc. in them. For example, the view hierarchies you build in Interface Builder Those are obviously graphs of very complicated objects. Requires all objects in the graph to implement NSCoding protocol - (void)encodewithcoder:(nscoder *)coder; - initwithcoder:(nscoder *)coder; It is extremely unlikely you will use this in this course Certainly not in the homework assignments. But almost certainly not in your Final Project either. There are other, simpler, (or more appropriate), persistence mechanisms (more on this later).

14 Archiving Object graph is saved by sending all objects encodewithcoder: - (void)encodewithcoder:(nscoder *)coder { } [super encodewithcoder:coder]; [coder encodefloat:scale forkey:@ scale ]; [coder encodecgpoint:origin forkey:@ origin ]; [coder encodeobject:expression forkey:@ expression ]; Absolutely, positively must call super s version or your superclass s data won t get written out! Object graph is read back in with alloc/initwithcoder: - initwithcoder:(nscoder *)coder { } self = [super initwithcoder:coder]; scale = [coder decodefloatforkey:@ scale ]; expression = [coder decodeobjectforkey:@ expression ]; origin = [coder decodecgpointforkey:@ origin ]; // note that order does not matter

15 Archiving NSKeyed[Un]Archiver classes used to store/retrieve graph Storage and retrieval is done to NSData objects. NSKeyedArchiver stores an object graph to an NSData... + (NSData *)archiveddatawithrootobject:(id <NSCoder>)rootObject; NSKeyedUnarchiver retrieves an object graph from an NSData... + (id <NSCoder>)unarchiveObjectWithData:(NSData *)data; What do you think this code does? id <NSCoder> object =...; NSData *data = [NSKeyedArchiver archiveddatawithrootobject:object]; id <NSCoder> dup = [NSKeyedArchiver unarchiveobjectwithdata:data]; It makes a deep copy of object. But beware, you may get more (or less) than you bargained for. Object graphs like view hierarchies can be very complicated. For example, does a view s superview get archived?

16 SQLite SQL in a single file Fast, low memory, reliable. Open Source, comes bundled in ios. Not good for everything (e.g. not video or even serious sounds/images). Not a server-based technology (not great at concurrency, but usually not a big deal on a phone). API int sqlite3_open(const char *filename, sqlite3 **db); // get a database into db int sqlite3_exec(sqlite3 *db, // execute SQL statements const char *sql, int (*callback)(void *, int, char **, char **), void *context, char **error); int mycallback(void *context, int count, char **values, char **cols); // data returned int sqlite3_close(sqlite3 *db); // close the database

17 Coming Up Next Week Core Data (object-oriented database)

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

Stanford CS193p. Developing Applications for ios. Fall Stanford CS193p. Fall 2011 Developing Applications for ios Today Persistence How to make things stick around between launchings of your app (besides NSUserDefaults) Persistence Property Lists Use writetourl:atomically: and initwithcontentsofurl:

More information

Review. Objective-C Classes, Methods, Properties, Protocols, Delegation, Memory Management

Review. Objective-C Classes, Methods, Properties, Protocols, Delegation, Memory Management Data Persistence Review Objective-C Classes, Methods, Properties, Protocols, Delegation, Memory Management Foundation NSArray, NSDictionary, NSString (and mutable versions thereof) MVC and UIViewController

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

Developing Applications for ios

Developing Applications for ios Developing Applications for ios Lecture 10: Managing and Storing Data Radu Ionescu raducu.ionescu@gmail.com Faculty of Mathematics and Computer Science University of Bucharest Content Property Lists Archiving

More information

Assignment III: Graphing Calculator

Assignment III: Graphing Calculator Assignment III: Graphing Calculator Objective The goal of this assignment is to reuse your CalculatorBrain and CalculatorViewController objects to build a Graphing Calculator. By doing this, you will gain

More information

Assignment III: Graphing Calculator

Assignment III: Graphing Calculator Assignment III: Graphing Calculator Objective The goal of this assignment is to reuse your CalculatorBrain and CalculatorViewController objects to build a Graphing Calculator for iphone and ipad. By doing

More information

Files & Archiving. Lecture 8

Files & Archiving. Lecture 8 Files & Archiving Lecture 8 Persistent Data NSUserDefaults Dead simple to use Just one big file Only supports property list types What if you want more features? File Tasks Finding the file path User selected

More information

Software Compare and Contrast

Software Compare and Contrast Microsoft Software Compare and Contrast Word Easy to navigate. Compatible with all PC computers. Very versatile. There are lots of templates that can be used to create flyers, calendars, resumes, etc.

More information

Assignment III: Graphing Calculator

Assignment III: Graphing Calculator Assignment III: Graphing Calculator Objective You will enhance your Calculator to create a graph of the program the user has entered which can be zoomed in on and panned around. Your app will now work

More information

Announcements. Today s Topics

Announcements. Today s Topics Announcements Lab 2 is due tonight by 11:59 PM Late policy is 10% of lab total per day late So -7.5 points per day late for lab 2 Labs 3 and 4 are posted on the course website Extensible Networking Platform

More information

Assignment II: Foundation Calculator

Assignment II: Foundation Calculator Assignment II: Foundation Calculator Objective The goal of this assignment is to extend the CalculatorBrain from last week to allow inputting variables into the expression the user is typing into the calculator.

More information

Stanford CS193p. Developing Applications for ios. Winter CS193p! Winter 2015

Stanford CS193p. Developing Applications for ios. Winter CS193p! Winter 2015 Stanford CS193p Developing Applications for ios Today Objective-C Compatibility Bridging Property List NSUserDefaults Demo: var program in CalculatorBrain Views Custom Drawing Demo FaceView Bridging Objective-C

More information

Announcements. 1. Forms to return today after class:

Announcements. 1. Forms to return today after class: Announcements Handouts (3) to pick up 1. Forms to return today after class: Pretest (take during class later) Laptop information form (fill out during class later) Academic honesty form (must sign) 2.

More information

Assignment III: Graphing Calculator

Assignment III: Graphing Calculator Assignment III: Graphing Calculator Objective You will enhance your Calculator to create a graph of the program the user has entered which can be zoomed in on and panned around. Your app will now work

More information

Advanced ios. CSCI 4448/5448: Object-Oriented Analysis & Design Lecture 20 11/01/2012

Advanced ios. CSCI 4448/5448: Object-Oriented Analysis & Design Lecture 20 11/01/2012 Advanced ios CSCI 4448/5448: Object-Oriented Analysis & Design Lecture 20 11/01/2012 1 Goals of the Lecture Present a few additional topics and concepts related to ios programming persistence serialization

More information

CSE 438: Mobile Application Development Lab 2: Virtual Pet App

CSE 438: Mobile Application Development Lab 2: Virtual Pet App CSE 438: Mobile Application Development Lab 2: Virtual Pet App Overview In this lab, you will create an app to take care of your very own virtual pets! The app will only have one screen and simple logic,

More information

Dragon Printer ver. 1.0

Dragon Printer ver. 1.0 1 Dragon Printer ver. 1.0 Printing Everything To Any Printer...2 Documents Management...3 Printing Documents...4 Printing Photos, Pictures from Camera Roll...7 Printing Web Pages...8 Printing Clipboard

More information

CS193E Lecture 7. Document-based Applications NSTableView Key-Value Coding

CS193E Lecture 7. Document-based Applications NSTableView Key-Value Coding CS193E Lecture 7 Document-based Applications NSTableView Key-Value Coding Agenda Questions? Review: delegates, MVC Document-based apps Table views Key Value Coding Model, View, Controller Controller Model

More information

Intelligent Agents in CloudDeakin

Intelligent Agents in CloudDeakin SENSES e L e a r n i n g p r o j e c t Intelligent Agents in CloudDeakin Intelligent Agents are automatic emails sent to students in response to their actions. It is an efficient way to personalise the

More information

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

Stanford CS193p. Developing Applications for ios. Fall Stanford CS193p. Fall 2011 Developing Applications for ios Views A view (i.e. UIView subclass) represents a rectangular area Defines a coordinate space Draws and handles events in that rectangle Hierarchical A view has only one

More information

Stanford CS193p. Developing Applications for iphone 4, ipod Touch, & ipad Fall Stanford CS193p Fall 2010

Stanford CS193p. Developing Applications for iphone 4, ipod Touch, & ipad Fall Stanford CS193p Fall 2010 Developing Applications for iphone 4, ipod Touch, & ipad Today Blocks Language syntax for declaring a function on the fly. Grand Central Dispatch C API for leveraging blocks to make writing multithreaded

More information

CSE 344 JANUARY 3 RD - INTRODUCTION

CSE 344 JANUARY 3 RD - INTRODUCTION CSE 344 JANUARY 3 RD - INTRODUCTION COURSE FORMAT Lectures Location: SIG 134 Please attend Sections: Content: exercises, tutorials, questions, new materials (occasionally) Locations: see web Please attend

More information

0.1 Welcome. 0.2 Insertion sort. Jessica Su (some portions copied from CLRS)

0.1 Welcome. 0.2 Insertion sort. Jessica Su (some portions copied from CLRS) 0.1 Welcome http://cs161.stanford.edu My contact info: Jessica Su, jtysu at stanford dot edu, office hours Monday 3-5 pm in Huang basement TA office hours: Monday, Tuesday, Wednesday 7-9 pm in Huang basement

More information

Seng310 Lecture 8. Prototyping

Seng310 Lecture 8. Prototyping Seng310 Lecture 8. Prototyping Course announcements Deadlines Individual assignment (extended) deadline: today (June 7) 8:00 am by email User testing summary for paper prototype testing- Thursday June

More information

HOW TO COMPLETE YOUR RCR WITH THE PB INSPECTOR APP

HOW TO COMPLETE YOUR RCR WITH THE PB INSPECTOR APP HOW TO COMPLETE YOUR RCR WITH THE PB INSPECTOR APP A Guide to using the free PB Inspector App to complete your Room Condition Report with Capstone Properties at Towson University. STEP 1: DOWNLOAD PB SOLUTIONS

More information

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

Stanford CS193p. Developing Applications for ios. Fall Stanford CS193p. Fall 2011 Developing Applications for ios Today UI Element of the Week UIToolbar ipad Split View Popover Universal (iphone + ipad) Application Demo Friday Section AVFoundation framework - Capturing and manipulating

More information

COMP390 (Design &) Implementation

COMP390 (Design &) Implementation COMP390 (Design &) Implementation Phil (& Dave s) rough guide Consisting of some ideas to assist the development of large and small projects in Computer Science (and a chance for me to try out some features

More information

Acing the QuickBooks Online Certification Exam

Acing the QuickBooks Online Certification Exam ProAdvisor Program THE ACCOUNTANT S GUIDE TO Acing the QuickBooks Online Certification Exam Insider tips, tricks and facts to help you pass the first time. Brought to you by Intuit s professional QuickBooks

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

CS 106B, Lecture 1 Introduction to C++

CS 106B, Lecture 1 Introduction to C++ CS 106B, Lecture 1 Introduction to C++ reading: Programming Abstractions in C++, Chapters 1 & 2 This document is copyright (C) Stanford Computer Science and Ashley Marty Stepp, Taylor, licensed under Creative

More information

[ 8 marks ] Demonstration of Programming Concepts

[ 8 marks ] Demonstration of Programming Concepts Assignment 9 Due: Mon, December 5 before 11:59 PM (no extensions, no grace days, late assignments receive 0) Final Project This is a self-directed assignment where you get to decide what your Processing

More information

CSC 4710 / CSC 6710 Database Systems. Rao Casturi

CSC 4710 / CSC 6710 Database Systems. Rao Casturi CSC 4710 / CSC 6710 Database Systems Rao Casturi Introduction About me Education B.E (Electronics & Communications) M.S (Computer Science) Working towards Ph.D. Professional work experience 25+ Years in

More information

More Flow Control Functions in C++ CS 16: Solving Problems with Computers I Lecture #4

More Flow Control Functions in C++ CS 16: Solving Problems with Computers I Lecture #4 More Flow Control Functions in C++ CS 16: Solving Problems with Computers I Lecture #4 Ziad Matni Dept. of Computer Science, UCSB Administrative CHANGED T.A. OFFICE/OPEN LAB HOURS! Thursday, 10 AM 12 PM

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

COURSE SYLLABUS Fall SAHE&T CSC 101 Introduction to Computers (CRN 3070) MAC Department Course No. Course Title

COURSE SYLLABUS Fall SAHE&T CSC 101 Introduction to Computers (CRN 3070) MAC Department Course No. Course Title COURSE SYLLABUS Fall 2016 SAHE&T CSC 101 Introduction to Computers (CRN 3070) MAC Department Course No. Course Title 3 hrs 1.5 1.5 Credit Hrs. # lecture # lab hrs./week hrs./week Prepared by Donna Hylton

More information

Blackfin Online Learning & Development

Blackfin Online Learning & Development Presentation Title: Multimedia Starter Kit Presenter Name: George Stephan Chapter 1: Introduction Sub-chapter 1a: Overview Chapter 2: Blackfin Starter Kits Sub-chapter 2a: What is a Starter Kit? Sub-chapter

More information

SHOW ME MICROSOFT OFFICE EXCEL 2003

SHOW ME MICROSOFT OFFICE EXCEL 2003 page 1 / 6 page 2 / 6 show me microsoft office pdf Microsoft Office 2016 (codenamed Office 16) is a version of the Microsoft Office productivity suite, succeeding both Office 2013 and Office for Mac 2011,

More information

HKUST. CSIT 6910A Report. iband - Musical Instrument App on Mobile Devices. Student: QIAN Li. Supervisor: Prof. David Rossiter

HKUST. CSIT 6910A Report. iband - Musical Instrument App on Mobile Devices. Student: QIAN Li. Supervisor: Prof. David Rossiter HKUST CSIT 6910A Report Student: Supervisor: Prof. David Rossiter Table of Contents I. Introduction 1 1.1 Overview 1 1.2 Objective 1 II. Preparation 2 2.1 ios SDK & Xcode IDE 2 2.2 Wireless LAN Network

More information

Due: Monday, February 5, 2018, 8:00 AM (submit to BlackBoard, under Assignments) File Type: Microsoft Word

Due: Monday, February 5, 2018, 8:00 AM (submit to BlackBoard, under Assignments) File Type: Microsoft Word Due: Monday, February 5, 2018, 8:00 AM (submit to BlackBoard, under Assignments) File Type: Microsoft Word Team Name : 10 Team Members and email addresses: - Josiah Gray < j305g268@ku.edu > - Shaina Krumme

More information

Assignment IV: Smashtag Mentions

Assignment IV: Smashtag Mentions Assignment IV: Smashtag Mentions Objective In this assignment, you will enhance the Smashtag application that we built in class to give ready-access to hashtags, urls, images and users mentioned in a tweet.

More information

HOW TO SET HOMEWORK ON FIREFLY

HOW TO SET HOMEWORK ON FIREFLY HOW TO SET HOMEWORK ON FIREFLY HOW TO SET HOMEWORK ON FIREFLY How to set homework on Firefly using a desktop 1. In the user bar, select Set a New Task: 2. Start typing the name of the student or group

More information

Contextual Android Education

Contextual Android Education Contextual Android Education James Reed David S. Janzen Abstract Advances in mobile phone hardware and development platforms have drastically increased the demand, interest, and potential of mobile applications.

More information

COMP390 (Design &) Implementation

COMP390 (Design &) Implementation COMP390 (Design &) Implementation Phil (& Dave s) rough guide Consisting of some ideas to assist the development of large and small projects in Computer Science (and a chance for me to try out some features

More information

YOUR CHALLENGE: Bring a poem to life through stop motion.

YOUR CHALLENGE: Bring a poem to life through stop motion. Poetry in Action WHAT: Stop motion animation is where you take many photos of objects or characters and string them together into a movie. Each time you take a picture, you ll move the character or object

More information

Connect to CCPL

Connect to CCPL Connect to Tech @ CCPL Charleston County Public Library October November December 2015 Technology Training Catalog TECH NEWS Want to receive this publication by email each month? Sign up for our monthly

More information

Stanford CS193p. Developing Applications for ios. Spring CS193p. Spring 2016

Stanford CS193p. Developing Applications for ios. Spring CS193p. Spring 2016 Stanford Developing Applications for ios Today Views Custom Drawing Demo FaceView Views A view (i.e. UIView subclass) represents a rectangular area Defines a coordinate space For drawing And for handling

More information

Connect to CCPL

Connect to CCPL Connect to Tech @ CCPL Charleston County Public Library TECH NEWS January February March 2016 Send your request in an email to techteam@ccpl.org with your full name and phone number. We ll add you to the

More information

Youth Action Africa. The Greenhouse Center

Youth Action Africa. The Greenhouse Center Youth Action Africa The Greenhouse Center In February 2013 Youth Action Africa launched the Greenhouse Center in Bali, Cameroon. The main objective of the Center is to strengthen the Bali community by

More information

Announcements. Lab 3 is due on Wednesday by 11:59 PM

Announcements. Lab 3 is due on Wednesday by 11:59 PM Announcements Lab 3 is due on Wednesday by 11:59 PM Extensible Networking Platform 1 1 - CSE 438 Mobile Application Development Today s Topics Property Lists iphone s File System Archiving Objects SQLite

More information

CS 326: Operating Systems. Lecture 1

CS 326: Operating Systems. Lecture 1 CS 326: Operating Systems Lecture 1 Welcome to CS 326! Glad to have you all in class! Lecture Information: Time: T, Th 9:55 11:40am Lab: M 4:45 6:20pm Room: LS G12 Course website: http://www.cs.usfca.edu/~mmalensek/cs326

More information

: Dimension. Lecturer: Barwick. Wednesday 03 February 2016

: Dimension. Lecturer: Barwick. Wednesday 03 February 2016 18.06.01: Dimension Lecturer: Barwick Wednesday 03 February 2016 What is dimension? Line segments are 1-dimensional; here s one now: Planar regions are 2-dimensional; here s one: Finally, cubes are 3-dimensional:

More information

CS193p Spring 2010 Thursday, April 29, 2010

CS193p Spring 2010 Thursday, April 29, 2010 CS193p Spring 2010 Announcements You should have received an e-mail by now If you received e-mail approving enrollment, but are not in Axess, do it! If you have any questions, please ask via e-mail or

More information

ANDROID APPLICATION DEVELOPMENT COURSE Training Program

ANDROID APPLICATION DEVELOPMENT COURSE Training Program ANDROID APPLICATION DEVELOPMENT COURSE Training Program This Android Application Development Course is a 24 Hours Training Program with Certification. The program is to be developed for Matriculated, Intermediate

More information

1 Build Your First App. The way to get started is to quit talking and begin doing. Walt Disney

1 Build Your First App. The way to get started is to quit talking and begin doing. Walt Disney 1 Build Your First App The way to get started is to quit talking and begin doing. Walt Disney Copyright 2015 AppCoda Limited All rights reserved. Please do not distribute or share without permission. No

More information

Parameters and Objects

Parameters and Objects Parameters and Objects CS + ENGLISH Enrich your computer science skills with the understanding of human experiences, critical thinking, and creativity taught in English. More info: english.stanford.edu/csenglish

More information

Final Exam. Programming Assignment 3. University of British Columbia CPSC 111, Intro to Computation Alan J. Hu. Readings

Final Exam. Programming Assignment 3. University of British Columbia CPSC 111, Intro to Computation Alan J. Hu. Readings University of British Columbia CPSC 111, Intro to Computation Alan J. Hu Interfaces vs. Inheritance Abstract Classes Inner Classes Readings This Week: No new readings. Consolidate! (Reminder: Readings

More information

Informatics 1: Data & Analysis

Informatics 1: Data & Analysis Informatics 1: Data & Analysis Lecture 3: The Relational Model Ian Stark School of Informatics The University of Edinburgh Tuesday 24 January 2017 Semester 2 Week 2 https://blog.inf.ed.ac.uk/da17 Lecture

More information

ITP 342 Mobile App Development. Data Persistence

ITP 342 Mobile App Development. Data Persistence ITP 342 Mobile App Development Data Persistence Persistent Storage Want our app to save its data to persistent storage Any form of nonvolatile storage that survives a restart of the device Want a user

More information

Introduction to Database S ystems Systems CSE 444 Lecture 1 Introduction CSE Summer

Introduction to Database S ystems Systems CSE 444 Lecture 1 Introduction CSE Summer Introduction to Database Systems CSE 444 Lecture 1 Introduction 1 Staff Instructor: Hal Perkins CSE 548, perkins@cs.washington.edu Office hours: labs tba, office drop-ins and appointments welcome TA: David

More information

How To: Panopto Tutorial for Faculty & Staff

How To: Panopto Tutorial for Faculty & Staff How To: Panopto Tutorial for Faculty & Staff Information Technology Help Desk Colorado Mesa University 8/22/2016 CMU Help Desk: 970-248-2111 or http://whd.coloradomesa.edu Page 0 Table of Contents What

More information

San Jose State University College of Science Department of Computer Science CS151, Object-Oriented Design, Sections 1, 2, and 3, Spring 2018

San Jose State University College of Science Department of Computer Science CS151, Object-Oriented Design, Sections 1, 2, and 3, Spring 2018 San Jose State University College of Science Department of Computer Science CS151, Object-Oriented Design, Sections 1, 2, and 3, Spring 2018 Course and Contact Information Instructor: Suneuy Kim Office

More information

Connect to CCPL

Connect to CCPL Connect to Tech @ CCPL Charleston County Public Library July August September 2016 Technology Training Catalog The CCPL Tech Team includes staff from the Main Library and five Regional branches who assist

More information

Assignment I: Concentration

Assignment I: Concentration Assignment I: Concentration Objective The goal of this assignment is to recreate the demonstration given in lecture and then make some small enhancements. It is important that you understand what you are

More information

Course and Contact Information. Course Description. Course Objectives

Course and Contact Information. Course Description. Course Objectives San Jose State University College of Science Department of Computer Science CS157A, Introduction to Database Management Systems, Sections 1 and 2, Fall2016 Course and Contact Information Instructor: Dr.

More information

CISC 110 Week 1. An Introduction to Computer Graphics and Scripting

CISC 110 Week 1. An Introduction to Computer Graphics and Scripting CISC 110 Week 1 An Introduction to Computer Graphics and Scripting Emese Somogyvari Office: Goodwin 235 E-mail: somogyva@cs.queensu.ca Please use proper email etiquette! Office hours: TBD Course website:

More information

Physics 2660: Fundamentals of Scientific Computing. Lecture 7 Instructor: Prof. Chris Neu

Physics 2660: Fundamentals of Scientific Computing. Lecture 7 Instructor: Prof. Chris Neu Physics 2660: Fundamentals of Scientific Computing Lecture 7 Instructor: Prof. Chris Neu (chris.neu@virginia.edu) Reminder HW06 due Thursday 15 March electronically by noon HW grades are starting to appear!

More information

BTEC Nationals IT - Unit2 FAQs

BTEC Nationals IT - Unit2 FAQs BTEC Nationals IT - Unit2 FAQs Q1 Q2 I need more clarity on what is required in the design task Is it expected that the race officials are entering times as raw times and then the table is set up so it

More information

Adding content to your Blackboard 9.1 class

Adding content to your Blackboard 9.1 class Adding content to your Blackboard 9.1 class There are quite a few options listed when you click the Build Content button in your class, but you ll probably only use a couple of them most of the time. Note

More information

Computer Science 210: Data Structures

Computer Science 210: Data Structures Computer Science 210: Data Structures Welcome to Data Structures! Data structures are fundamental building blocks of algorithms and programs Csci 210 is a study of data structures design efficiency implementation

More information

CS1 Lecture 2 Jan. 16, 2019

CS1 Lecture 2 Jan. 16, 2019 CS1 Lecture 2 Jan. 16, 2019 Contacting me/tas by email You may send questions/comments to me/tas by email. For discussion section issues, sent to TA and me For homework or other issues send to me (your

More information

CS193P: HelloPoly Walkthrough

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

More information

Announcements. Today s Topics

Announcements. Today s Topics Announcements Lab 2 is due tonight Lab 3 is posted Due next Wednesday Sept 30 th 1 Extensible - CSE 436 Software Networking Engineering Platform Workshop 1 Today s Topics Designing iphone Applica;ons Model-

More information

How To: Panopto Tutorial for Faculty & Staff

How To: Panopto Tutorial for Faculty & Staff How To: Panopto Tutorial for Faculty & Staff Information Technology Help Desk Colorado Mesa University 8/22/2016 CMU Help Desk: 970-248-2111 or http://whd.coloradomesa.edu Page 0 Table of Contents What

More information

CS 378 (Spring 2003) Linux Kernel Programming. Yongguang Zhang. Copyright 2003, Yongguang Zhang

CS 378 (Spring 2003) Linux Kernel Programming. Yongguang Zhang. Copyright 2003, Yongguang Zhang Department of Computer Sciences THE UNIVERSITY OF TEXAS AT AUSTIN CS 378 (Spring 2003) Linux Kernel Programming Yongguang Zhang (ygz@cs.utexas.edu) Copyright 2003, Yongguang Zhang Read Me First Everything

More information

Connect to CCPL

Connect to CCPL Connect to Tech @ CCPL Charleston County Public Library July August September 2015 Technology Training Catalog TECH NEWS Want to receive this publication by email each month? Sign up for our monthly newsletter!

More information

Announcements. Course syllabus Tutorial/lab signup form (due 4pm today) Lecture 1 notes Homework 1 Initial assessment

Announcements. Course syllabus Tutorial/lab signup form (due 4pm today) Lecture 1 notes Homework 1 Initial assessment Announcements Handouts (5) to pick up Course syllabus Tutorial/lab signup form (due 4pm today) Lecture 1 notes Homework 1 Initial assessment Please do it now and hand it in as you leave lecture It s ungraded;

More information

Bases de Dades: introduction and organization

Bases de Dades: introduction and organization Andrew D. Bagdanov bagdanov@cvc.uab.es Departamento de Ciencias de la Computación Universidad Autónoma de Barcelona Fall, 2010 Outline 1 2 3 4 5 Contact information Professor Database systems Important

More information

Connect to CCPL

Connect to CCPL Connect to Tech @ CCPL Charleston County Public Library TECH NEWS January February March 07 Technology Training Catalog Want to receive this publication by email each month? Sign up for our monthly newsletter!

More information

Course Syllabus: Linux Essentials

Course Syllabus: Linux Essentials Course Syllabus: Linux Essentials Instructor: Roger Elliott Email: rlelliott@c-tec.edu Phone: Office: (740) 364-2299 Cell: (740) 814-7504 Course text Course #: Hours: Meeting Days & Times: Location Linux

More information

Stanford CS193p. Developing Applications for ios. Spring Stanford CS193p. Spring 2012

Stanford CS193p. Developing Applications for ios. Spring Stanford CS193p. Spring 2012 Developing Applications for ios Today Blocks Objective-C language feature for in-lining blocks of code Foundation of multi-threaded support (GCD) What is a block? A block of code (i.e. a sequence of statements

More information

Rochester Institute of Technology Golisano College of Computing and Information Sciences Department of Information Sciences and Technologies

Rochester Institute of Technology Golisano College of Computing and Information Sciences Department of Information Sciences and Technologies Rochester Institute of Technology Golisano College of Computing and Information Sciences Department of Information Sciences and Technologies 4002-360.01 ~ Introduction to Database & Data Modeling ~ Spring

More information

Online Rooms: Educator Guide. Online Rooms. Introduction to Online Rooms

Online Rooms: Educator Guide. Online Rooms. Introduction to Online Rooms Online Rooms: Educator Guide Online Rooms Introduction to Online Rooms Author: Kev Lavery Last Updated: 26/09/2016 In this guide you will learn about: Accessing Online Rooms Setting up a meeting room Checking

More information

InDesign UX Design Patterns. by Justin Putney

InDesign UX Design Patterns. by Justin Putney InDesign UX Design Patterns by Justin Putney InDesign UX Design Patterns Hi, I m Justin Putney, Owner of Ajar Productions. Thanks for downloading this guide! It s full of ways to create interactive user

More information

Create and edit word processing. Pages.

Create and edit word processing. Pages. Create and edit word processing documents with Pages. In this chapter, we begin to get work done on the ipad by using Pages to create and format documents. Creating a New Document Styling and Formatting

More information

E40M. An Introduction to Making: What is EE?

E40M. An Introduction to Making: What is EE? E40M An Introduction to Making: What is EE? Jim Plummer Stanford University plummer@stanford.edu Chuan-Zheng Lee Stanford University czlee@stanford.edu Roger Howe Stanford University rthowe@stanford.edu

More information

The Complete Nonprofit Website Toolkit Defining Your Content and Navigation Strategy June 2013

The Complete Nonprofit Website Toolkit Defining Your Content and Navigation Strategy June 2013 The Complete Nonprofit Website Toolkit Defining Your Content and Navigation Strategy June 2013 1 Wait for the recording to begin The Complete Nonprofit Website Toolkit Defining Your Content and Navigation

More information

Statistics 13, Lab 1. Getting Started. The Mac. Launching RStudio and loading data

Statistics 13, Lab 1. Getting Started. The Mac. Launching RStudio and loading data Statistics 13, Lab 1 Getting Started This first lab session is nothing more than an introduction: We will help you navigate the Statistics Department s (all Mac) computing facility and we will get you

More information

Assignment Tutorial.

Assignment Tutorial. Assignment Tutorial rudolf.lam@mail.mcgill.ca What we are looking at today Overview Demo Why Motivation for this lecture on assignment How The way the assignment is run What The components of the assignment

More information

LIS 2680: Database Design and Applications

LIS 2680: Database Design and Applications School of Information Sciences - University of Pittsburgh LIS 2680: Database Design and Applications Summer 2012 Instructor: Zhen Yue School of Information Sciences, University of Pittsburgh E-mail: zhy18@pitt.edu

More information

CSC209. Software Tools and Systems Programming. https://mcs.utm.utoronto.ca/~209

CSC209. Software Tools and Systems Programming. https://mcs.utm.utoronto.ca/~209 CSC209 Software Tools and Systems Programming https://mcs.utm.utoronto.ca/~209 What is this Course About? Software Tools Using them Building them Systems Programming Quirks of C The file system System

More information

user manual version 12

user manual version 12 MOBILE check-in user manual version 12 Table of Contents MOBILE CHECK IN OVERVIEW Check In / Out Process...4 Check in with an ipad, smart phone or other mobile device...4 Name Tags and Security Tags...5

More information

BIT 115: Introduction To Programming LECTURE 3. Instructor: Craig Duckett

BIT 115: Introduction To Programming LECTURE 3. Instructor: Craig Duckett BIT 115: Introduction To Programming LECTURE 3 Instructor: Craig Duckett cduckett@cascadia.edu Lecture 3 Announcements By now everyone should be up and running with Java, jgrasp, and the Becker Robots

More information

The Andersen Company s Mobile Application User Guide

The Andersen Company s Mobile Application User Guide The Andersen Company s Mobile Application User Guide Mobile App User Guide Page 2 Introduction The Andersen Company Mobile App provides an easy way for users to search and view existing mat designs as

More information

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

Stanford CS193p. Developing Applications for ios. Fall Stanford CS193p. Fall 2011 Developing Applications for ios Today Core Data Thread Safety NSManagedObjectContext is not thread-safe. What to do about that. Core Data and Table View Very common way to view data from a Core Data database

More information

COSC 115A: Introduction to Web Authoring Fall 2014

COSC 115A: Introduction to Web Authoring Fall 2014 COSC 115A: Introduction to Web Authoring Fall 2014 Instructor: David. A. Sykes Class meetings: TR 1:00-2:20PM in Daniel Building, Room 102 Office / Hours: Olin 204E / TR 8:00-10:45AM, MWF 9:00 10:20AM,

More information

CPSC Tutorial 4 Visual Studio and C#

CPSC Tutorial 4 Visual Studio and C# CPSC 481 - Tutorial 4 Visual Studio and C# (based on previous tutorials by Alice Thudt, Fateme Rajabiyazdi, David Ledo, Brennan Jones, and Sowmya Somanath) Today Intro to Assignment 2 Visual Studio Intro

More information

Class Note #02. [Overall Information] [During the Lecture]

Class Note #02. [Overall Information] [During the Lecture] Class Note #02 Date: 01/11/2006 [Overall Information] In this class, after a few additional announcements, we study the worst-case running time of Insertion Sort. The asymptotic notation (also called,

More information

Computer 2 App1. App3 API Library. App3. API Library. Local Clipboard

Computer 2 App1. App3 API Library. App3. API Library. Local Clipboard System Programming (MEEC/MEAer) Project Assignment 2016/2017 In this project the students will implement a simple distributed clipboard. Applications can copy and past to/from the distributed clipboard

More information

CSC 443: Web Programming

CSC 443: Web Programming 1 CSC 443: Web Programming Haidar Harmanani Department of Computer Science and Mathematics Lebanese American University Byblos, 1401 2010 Lebanon Today 2 Course information Course Objectives A Tiny assignment

More information

STX & ios Devices. Setting up and using STX iphone, ipad, ipod touch

STX & ios Devices. Setting up and using STX iphone, ipad, ipod touch STX & ios Devices Setting up and using STX iphone, ipad, ipod touch STX for ios provides more flexibility and efficiency for you and your staff. With all the most often used features of STX desktop built-in,

More information