Final Exam Review

Final Exam Review

Final Exam Review What do you know about iOS/Platform Source Platform Core Language OS Architecture Version History Updates/Upgrades Makers Carriers Life Battery Web Browsers Copyright Ivette Doss 2013 2 Operating System: iOS iOS is derived from Mac OS X

that shares with the Darwin foundation; and therefore, it is a Unix operating system. Primary Apple development language is Objective-C; although, it is possible, with some translation work, to port Java code into iPhone. http://www.techotopia.com/index.php/ The_iOS_4_Architecture_and_SDK_Frameworks http://iosframeworks.com/ Copyright Ivette Doss 2013 3 Operating System: iOS Hardware Copyright Ivette Doss 2013 4

iOS: Cocoa Touch The Cocoa Touch layer sits at the top of the iOS stack and contains the frameworks that are most commonly used by iPhone application developers. Cocoa Touch is primarily written in Objective-C, is based on the standard Mac OS X Cocoa API (as found on Apple desktop and laptop computers) and has been extended and modified to meet the needs of mobile technology. The Cocoa Touch layer provides the following frameworks for iPhone app development: https://developer.apple.com/library/mac/ #documentation/Cocoa/Conceptual/ CocoaFundamentals/WhatIsCocoa/ WhatIsCocoa.html

1 UIKit Framework 2 Map Kit Framework 3 Push Notification Service 4 Message UI Framework 5 Address Book UI Framework 6 Game Kit Framework 7 iAd Framework 8 Event Kit UI Framework Copyright Ivette Doss 2013 5 Application Frameworks Web development is about getting

stuff done, not figuring out how to get it done. Frameworks and libraries help the web developers focus on creating rather than figuring stuff out. Rather than reinventing the wheel, Developers can use a framework or library to delegate brunt, non-creative and repetitive work, freeing up their time and energy to create the actual website or application. http://speckyboy.com/2011/03/07/20-new-frameworks-for-web-and-mobileapp-developers/ http://www.rhomobile.com/webinars-old/rhodes-testing-framework/ Copyright Ivette Doss 2013 6 A software framework is an abstraction in which software providing generic functionality can be selectively changed by additional user

written code, thus providing application specific software. A software framework is a universal, reusable software platform used to develop applications, products and solutions. Software frameworks include support programs, compilers, code libraries, an application programming interface (API) and tool sets that bring together all the different components to enable development of a project or solution. Framework- definition For example:

Platform: Windows CE; OS: Windows Phone; Framework: .NET Platform: OS X; OS: iOS; Framework: Cocoa Touch http://en.wikipedia.org/wiki/ Comparison_of_web_application_frameworks Copyright Ivette Doss 2013 7 It defines the underlying code structure of the application in advance. Developers usually use object-oriented programming techniques to implement frameworks such that the unique parts of an application can simply inherit from pre-existing classes in the framework Copyright Ivette Doss 2013 8

Frameworks type Modelviewcontroller (MVC) Short Description Many frameworks follow the MVC architectural pattern to separate the data model with business rules from the user interface. This is generally considered a good practice as it modularizes code, promotes code reuse, and allows multiple interfaces to be applied. In web applications, this permits different views to be presented, such as web pages for humans, and web service interfaces for remote applications Copyright Ivette Doss 2013 9

Types of Framework architectures Frameworks type Short Description Push-based vs. pull-based Most MVC frameworks follow a push-based architecture also called "action-based". These frameworks use actions that do the required processing, and then "push" the data to the view layer to render the results. Struts, Django, Ruby on Rails, Symfony, Yii, Spring MVC, Stripes, Play, CodeIgniter are good examples of this architecture. An alternative to this is pull-based architecture, sometimes also called "component-based". These frameworks start with the view layer, which can then "pull" results from multiple controllers as needed.

In this architecture, multiple controllers can be involved with a single view. Lift, Tapestry, JBoss Seam, JavaServer Faces, and Wicket are examples of pull-based architectures. Copyright Ivette Doss 2013 10 Application Framework Example Web Runtimes (WRTs) Nokia, Opera (Presto), and Yahoo! provide various Web Runtimes, or WRTs. Those are mini-frameworks, based on web standards, to create mobile widgets. Both Operas and Nokias WRTs meet the W3Crecommended specifications for mobile widgets.

Copyright Ivette Doss 2013 11 Application Framework: Example The Web2.0 is the only application framework that virtually works across all devices and all platforms. Increased demand to offer products and services outside of operators control, together with a desire to support more devices in shorter development cycles. Copyright Ivette Doss 2013 12

Application Framework: Examples Free-software frameworks exist as part of the Mozilla, OpenOffice.org, GNOME, KDE, NetBeans and Eclipse projects. Microsoft markets a framework for developing Windows applications in C++ called the Microsoft Foundation Class Library. A number of frameworks can build cross-platform applications for Linux, Macintosh, and Windows from the same source code, such as Qt, the widget toolkits wxWidgets, FOX toolkit, or Eclipse RCP. Oracle Application Development

Framework (Oracle ADF) aids in producing Java-oriented systems. Copyright Ivette Doss 2013 13 Top Apps Frameworks jQTouch (Amazon, Mozilla, Google, Twitter, MS, Craiglist, WordPress) Prototype (Apple, HubPages, AutoTrader, TicketMaster) Struts (Yell, IRS, TelecomFrance, The ShoppingChannel, One Entry) Bootstrap (NASA, Read.gov, InEx Finance, Syd PHP, PressAboutUs) JavaScript MVC (T-Mobile, Grooveshark,

Wegener, Mindjet, Kaplan) http://www.sparkyhub.com/top-5-front-end-frameworks-infographic/ Copyright Ivette Doss 2013 14 Copyright Ivette Doss 2013 15 Copyright Ivette Doss 2013 16 http://timreview.ca/article/335 Copyright Ivette Doss 2013 17

Cloud Services An updated version of utility computing: basically virtual servers available over the Internet Copyright Ivette Doss 2013 18 Location Based Services (LBS) LBS are used in a variety of contexts, such as health, indoor object search, entertainment, work, personal life, etc.

LBS include services to identify a location of a person or object, such as discovering the nearest banking cash machine or the whereabouts of a friend or employee. LBS include parcel tracking and vehicle tracking services. LBS can include mobile commerce when taking the form of coupons or advertising directed at customers based on their current location. They include personalized weather services and even location-based games. They are an example of telecommunication convergence. Convergence services, such as VoIP, IP-TV, Mobile TV, etc., will replace the old technologies and is a threat to the current service providers Copyright Ivette Doss 2013 19 Copyright Ivette Doss 2013

20 Thank you for listening To be continue Copyright Ivette Doss 2013 21 List of cool Mobile apps: iPhone Android QA Interview and Programming Apps

Cheat Sheets (David Ortega Cuadrado) Linux Cheat Sheet (Conundrum) Ruby Cheat Sheet (Nakarin Maneerat) Java Quick reference cards (nadstech.com) Hackers Reference (Frustration Free Solution) Cloud Computing Interview Questions Java QA & Forum Transcribe Pro Cloud Tools for Windows Azure Task Cloud 9

Cooper Egg Server Monitoring Synced Tool Micro Transfer thoughtbot Learn Copyright Ivette Doss 2013 22 List of cool apps: TechNews Android iPhone TheVerge Appy Geek TechNews Riversip (Briox)

TED inoTechNews (inoapp llc) The Verge TED Appy Geek Tech News Tube iNews 24/7 TechWire MobilityBeat Copyright Ivette Doss 2013 23

List of cool apps: Helping Tools Monitor Usage Stats and Tweak System Utilities Android Carat MX Log Collector RemoteLogCat Fing WiFi Analyzer ADB Wifi

Android Assistant Battery Dr Saver System Analyzer Android Cleaner iPhone UDID Carat BattLoad Testing $3.99

Device Log Viewer WiFi Analyzer Network Analyzer ($2.99) System Status ($2.99) VR Mobile Vibration Testing UDID Ad Hoc Helper Unit Testing Free for iOhone Test Studio (Mobile Automation) Minimal Essential testing Strategy Performance Test Mobile http://android.appstorm.net/roundups/utilitiesroundups/35-android-apps-to-monitor-usage-statsCopyright Ivette Doss 2013 and-tweak-system-utilities/ 24 List of cool apps: Helping Tools Android iPhone Monitor Usage Stats and Tweak System Utilities

Audio Kit iCurlHTTP ProjQA Audit AKLite Agile Estimate HP ALM Mobile About My Device LogPolice

Rest Client HeadsUp XG CEH Exam SMTPtest G360 Accelerometer Copyright Ivette Doss 2013 25 List of cool apps: Helping Tools Android iPhone

J-Rest Client ISTQB Test CircleCi API 653 Tmin Calculator iTester iLoader.io SessionLog HTML source code Flash Quiz MCAD Bug Tracker URLTestr Defect Logger YASC

Net Analyzer Sensor Monitor System Status Copyright Ivette Doss 2013 26 Android iPhone Lie Detector NC Decibel Environmental Fun Apps Copyright Ivette Doss 2013 27

Recently Viewed Presentations

  • Autumn 2015 2015 Specifications GCSE English Language (accredited)

    Autumn 2015 2015 Specifications GCSE English Language (accredited)

    Section B (20%) - Prose Writing. ... but it will not form part of the final mark and grade. ... of different reading abilities, to be able to approach the closed book nature of the assessments in a fair and...
  • Parts of Speech

    Parts of Speech

    Parts of Speech * * * * What Does Part of Speech Mean? Each part of speech explains not what the word is but how the word is used. The Eight Parts of Speech Verb Noun Pronoun Adjectives Adverbs Prepositions...
  • Name of presentation

    Name of presentation

    A key part of the scanning and checking phases of the spiral of inquiry Purposes: To gain deeper insights into your learners and their experiences. To get feedback from your learners regarding the extent to which they feel connected to...
  • Early Intervention for Children with Language Difficulties ...

    Early Intervention for Children with Language Difficulties ...

    Early Intervention for Children with Language Difficulties: An Evaluation of Two School Based Intervention Programmes Claudine Crane, Margaret J. Snowling, Julia Carroll, Fiona Duff, Elizabeth Fieldsend, Jeremy Miles & Charles Hulme Universities of York and Warwick, UK
  • Hvac Equipment

    Hvac Equipment

    HVAC CONTROLS (See section 18.9) Thermostat (additional information) A thermostat is the example of a sensing device. Sensing devices of an HVAC control system sense air or water temperature, humidity, and steam pressure or air pressure, and convert the sensation...
  • Diapositive 1 - Loranger Marcoux

    Diapositive 1 - Loranger Marcoux

    , SA 06-03031 (Denis Provençal) Le salarié était affecté tout au plus d'un problème de santé mineur ne donnant lieu à aucune restriction médicale en lien avec son emploi. L'employeur n'avait aucune obligation d'accommodement en l'espèce et le salarié ne...
  • Architectural Tactics and Patterns  An architectural pattern is

    Architectural Tactics and Patterns An architectural pattern is

    for modifiability and reuse, factor out common services and modify them in a single location or small number of locations. for scalability and availability, centralize the control of these resources and services while distributing the resources themselves across multiple physical...
  • Programming Languages - DMIUnipg

    Programming Languages - DMIUnipg

    Chapter 17 Programming Tools The Architecture of Computer Hardware and Systems Software: An Information Technology Approach 3rd Edition, Irv Englander John Wiley and Sons ©2003 Wilson Wong, Bentley College Linda Senne, Bentley College Programming Tools Overview Editors Assemblers Debuggers Compilers...