Mobile applications development
Upcoming SlideShare
Loading in...5
×
 

Mobile applications development

on

  • 1,960 views

 

Statistics

Views

Total Views
1,960
Views on SlideShare
687
Embed Views
1,273

Actions

Likes
0
Downloads
4
Comments
0

4 Embeds 1,273

http://eleksdev.blogspot.com 1265
http://www.eleksdev.blogspot.com 6
http://eleksdev.blogspot.de 1
http://eleksdev.blogspot.co.uk 1

Accessibility

Categories

Upload Details

Uploaded via as Microsoft PowerPoint

Usage Rights

© All Rights Reserved

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
    Processing…
Post Comment
Edit your comment

    Mobile applications development Mobile applications development Presentation Transcript

    • Програмування підмобільні платформи
    • Що таке мобільна програма?• Програма, яка виконується на мобільному пристрої: смартфоні чи планшеті• Доступна для користувача в будь-якому місці і в будь-який час• Має вузький набір функцій
    • Мобільні платформи набирають популярність
    • Мобільні платформи набирають популярність
    • Мобільні програми набирають популярність
    • Види мобільних програм• Productivity • Location-based• Utilities • Games and• Social networking entertainment• Communication • Enterprise• Content browsing, • …• Media
    • Типи мобільних програм• Native apps• Web apps• Hybrid
    • Native apps• Compiled binary deployed to device• Use native framework• Access to all device-specific features
    • Web apps• Web-site displayed in mobile browser• HTML5, CSS, Javascript• Frameworks: jQuery mobile, Sencha Touch, etc.• Can imitate native UI• Can hide browser controls and be added to device screen alongside with other apps
    • Native vs. WebNative Web• Better performance, compiled code • Single app for all platforms• Responsive native UI • Less development and lower cost• Can work offline, require less • No need to publish to app market (no bandwidth usage review process)• Access to all device-specific features • Don’t have to be installed (camera, motion sensors, location • Easy to update services, contacts, calendar, local storage, etc.)• Distribution through app markets
    • Hybrid apps• Native app combined with web view component (“shell apps”)• Frameworks: PhoneGap, Appcelerator Titanium
    • Основні мобільні ОС• Android• iOS• Windows Phone 7• Windows 8 (!) – not released yet• Інші (менш популярні та ті, що втрачають позиції): Symbian, Blackberry OS, Samsung Bada, Meego, HP WebOS, Windows Mobile, …
    • Native apps development on different platforms Android iOS Windows Phone 7Desktop OS for Windows Mac OS X Windowsdevelopment Mac OS X LinuxMain programming Java Objective-C C#languageFramework Android Application Cocoa Touch .NET/Silverlight FrameworkIDE Eclipse Xcode Visual Studio
    • C# and Mobile Development• Windows Phone 7 native apps• Windows 8 RT – native Metro UI apps for tablets• iOS/Android/WP7 development with Xamarin• Back-end web-services for mobile apps with .NET
    • Xamarin• Based on Mono project• MonoTouch, Mono for Android, .NET• Allows to share business logic code• UI code is platform-dependent• Costs money ($ 399 for individuals and small companies, $999 for enterprise per platform) http://xamarin.com/
    • Windows Phone 7 and Windows 8 RT• C#, .NET, SilverLight• Metro UI• Visual Studio + SDK• Simulator
    • Процес розробки• SDK• IDE• Simulator• Device
    • App Distribution• Publish to app market (App Store, Google Play, Windows Marketplace)• Ad-hoc distribution for in-house enterprise apps
    • Особливості мобільних програм• Mobile device is not desktop!• Hardware constraints: Memory size, CPU speed, battery life, small screen, network availability• Different UI and interaction
    • Mobile UI• Small screen• Touch interface, gestures• Consistency• Simplicity, focus on content and task• Specific UI elements
    • Mobile UI: Small Screen• User interacts with single app at a time• Apps usually have single window• Use hierarchical structure to browse content, animated transition between screens• Device orientation can change
    • Mobile UI: Gestures• Tap• Pinch in and out• Pan or drag• Swipe• Rotate• Touch and hold• Shake
    • Mobile UI: Consistency• Provide native OS user experience• Adhere to human interface guidelines • http://developer.android.com/design/index.html • http://developer.apple.com/library/ios/#documentation/UserExperience/Conceptual/MobileHIG/Int roduction/Introduction.html • http://msdn.microsoft.com/en-us/library/hh202915(v=vs.92)• Correctly use standard controls and icons• Application consistency within itself
    • UI Elements (iOS) Similar to desktop (but adjusted for touch interaction):• Button • Slider• Label • Activity indicator• Text field • Progress view• Text view • Alert• Web view
    • UI Elements (iOS)• Segmented control• Switch• Stepper• Search bar• Network activity indicator
    • UI Elements (iOS)• Navigation bar• Toolbar• Tab bar
    • UI Elements (iOS)• Table view (plain and grouped)
    • UI Elements (iOS)• Popover (iPad only)
    • UI Elements (iOS)• Split view (iPad only)
    • UI Elements (iOS)• Action sheet• Picker
    • Application lifecycle (iOS)
    • Multitasking and background execution• Apps are moved to background instead of quit• Required to handle interruptions and state transitions• Limited ability of running in background• Apps in background can be killed by OS during low memory conditions
    • Moving to background
    • Device and features• Multi-touch• Sensors: accelerometer, gyroscope, magnetometer• Media (audio & video playback and recording)• Camera• GPS and location• Networking• Local storage: file system, SQLite, ORMs• OpenGL ES