SlideShare uma empresa Scribd logo
1 de 29
Baixar para ler offline
Cross-Platform Tools
                             Build once and Run Everywhere

                                 Alexey Karpik
                      Web Platform Developer at ALTOROS




Tuesday, May 22, 12
Action plan




                     Current mobile platforms overview
                     Main groups of cross-platform tools
                     Examples of the usage
                     Summary
                     Questions



                                  © ALTOROS Systems | CONFIDENTIAL


Tuesday, May 22, 12
Mobile platforms


          World-Wide Smartphone Sale (2012 Q1)

                                                     Windows Phone 7
                                                          2.0%

                                                         RIM
                                                         7.2%
                                                 Symbian
                                                  8.9%


                                                  iOS             Android
                                                 23.8%             58.2%




                          © ALTOROS Systems | CONFIDENTIAL                  3


Tuesday, May 22, 12
Cross-platform tools groups

               JavaScript Libraries

               Wrappers around web applications

               Transformers to Native code

               Applications Frameworks

               Adobe Air
                             © ALTOROS Systems | CONFIDENTIAL


Tuesday, May 22, 12
JavaScript Libraries


                Single unified GUI
                      You have one GUI for multiple devices
                      (buttons, header, footer, tabs groups, and
                      etc.)

                Touch interface benefits
                      Most of the devices have build in touch
                      screens

                HTML5, CSS3
                      Audio, video, storage, animation and effects

                                      © ALTOROS Systems | CONFIDENTIAL


Tuesday, May 22, 12
JavaScript Libraries


               Sencha
               http://www.sencha.com/




                Have some additional related products:
                Sencha Architect (UI builder)
                Sencha Animator (CSS3 effects builder)




                                              © ALTOROS Systems | CONFIDENTIAL


Tuesday, May 22, 12
JavaScript Libraries

             jQuery mobile
             http://jquerymobile.com
              ...
              <body>
              <div data-role="page">
                 <div data-role="header">
                  <h1>My Title</h1>
                 </div><!-- /header -->
                 <div data-role="content">
                  <h1>Lists</h1>
                  <ul data-role="listview" data-inset="true" data-filter="true">
                   <li><a href="#">Acura</a></li>
                   <li><a href="#">Audi</a></li>
                  </ul>
                  <h1>Forms</h1>
                  <form><label for="slider-0">Input slider:</label>
                    <input type="range" name="slider" id="slider-0"
                      value="25" min="0" max="100" />
                  </form>
                 </div><!-- /content -->
                 <div data-role="footer">
                  <p>&copy; 2011-12 Altoros Systems LLC.</p>
                 </div><!-- /header -->
              </div><!-- /page -->
              </body>
              ...
                                                          © ALTOROS Systems | CONFIDENTIAL


Tuesday, May 22, 12
JavaScript Libraries


                Jo
                http://joapp.com/




                 Lightweight JavaScript framework designed
                 for HTML5 apps.
                 Last code update on GitHub about 4 month
                 ago :(




                                              © ALTOROS Systems | CONFIDENTIAL


Tuesday, May 22, 12
JavaScript Libraries




                      Advantages                            Disadvantages
              Modern technologies                    Not a native app
              Quick start                            Application speed
              Injection                              Platform dependable
              Widely used                            Internet
              No special                             No distribution channels
               environment



                                   © ALTOROS Systems | CONFIDENTIAL


Tuesday, May 22, 12
Applications Frameworks



            Create an application from the start
            Familiar programming language




                The M Project
                http://the-m-project.org/
                jQuery mobile, NodeJs, Build HTML




                                          © ALTOROS Systems | CONFIDENTIAL


Tuesday, May 22, 12
Applications Frameworks


                      Advantages                            Disadvantages
       Single place for business  Doesn’t allow migration
        and presentation layers    100% relay on
       Cutting-edge technologies   development tools and
                                    community
                                   Online usage only
                                   Browser window
                                   No distribution channels




                                   © ALTOROS Systems | CONFIDENTIAL


Tuesday, May 22, 12
Wrappers around web applications




             Create a native app for mobile platform
             Integrated Development Environment
             Single code development
             Native API support



                           © ALTOROS Systems | CONFIDENTIAL


Tuesday, May 22, 12
Wrappers around web applications




               MoSync
               http://www.mosync.com
               JavaScript, HTML, C++




                                © ALTOROS Systems | CONFIDENTIAL


Tuesday, May 22, 12
MoSync




                      © ALTOROS Systems | CONFIDENTIAL


Tuesday, May 22, 12
Wrappers around web applications




      PhoneGap
       http://phonegap.com/
       HTML
       JavaScript Libraries
       Xcode plugin




                              © ALTOROS Systems | CONFIDENTIAL


Tuesday, May 22, 12
PhoneGap




                      © ALTOROS Systems | CONFIDENTIAL


Tuesday, May 22, 12
Wrappers around web applications




                RhoMobile
                http://rhomobile.com/
                Ruby
                jQuery Mobile




                                        © ALTOROS Systems | CONFIDENTIAL


Tuesday, May 22, 12
RhoMobile




                       © ALTOROS Systems | CONFIDENTIAL


Tuesday, May 22, 12
Wrappers around web applications


                      Advantages                            Disadvantages
                Native API                             Not Native UI
                Extendable tools                       Challenges to go live
                Offline support                        High level of expertise
                Native Application                     Dependence on native
                Covered common cases                    SDK versions.
                Native SDK
                Native Distribution
                 channels


                                   © ALTOROS Systems | CONFIDENTIAL


Tuesday, May 22, 12
Transformers to Native code


      Create a native app for mobile platform
      Transform Platform Language into Native
            code
      Integrated Development Environment
      Have Platform Services
      Native API support

                      © ALTOROS Systems | CONFIDENTIAL   20


Tuesday, May 22, 12
Transformers to Native code




         Antenna
         http://www.antennasoftware.com/
         AMP
         Wizards
         Build-in User Management




                                   © ALTOROS Systems | CONFIDENTIAL


Tuesday, May 22, 12
Antenna




                      © ALTOROS Systems | CONFIDENTIAL


Tuesday, May 22, 12
Transformers to Native code



                 Appcelerator Titanium
                http://www.appcelerator.com
                JavaScript only, but recently support HTML5
                (mobile web version)

                The only tool that generates native UI
                elements, and transforms JavaScript into
                Native Platform Code.




                                            © ALTOROS Systems | CONFIDENTIAL


Tuesday, May 22, 12
Appcelerator Titanium




                          © ALTOROS Systems | CONFIDENTIAL


Tuesday, May 22, 12
Transformers to Native code


                      Advantages                            Disadvantages
                Native API                         Challenges to go live
                Extendable tools                   Dependence on
                Offline support                     Transformers
                Native Application                 Dependence on native
                Native UI                           SDK versions.
                Native SDK
                Native Distribution
                 channels


                                   © ALTOROS Systems | CONFIDENTIAL


Tuesday, May 22, 12
Adobe AIR


      Integrated Development Environment
      Create native app for mobile platform
            SWF byte-code runs on Native Platform, iOS - Adobe
            AIR player embedded into each app, on Android use
            system installed Adobe AIR player.

      Native API support
      Stage 3D

                                © ALTOROS Systems | CONFIDENTIAL   26


Tuesday, May 22, 12
Adobe AIR


                      Advantages                            Disadvantages
            Native API                             Not Native UI
            Extendable tools                       Challenges to go live
            Offline support                        Dependence on native
            Native Application                      SDK versions.
            Stage 3D support (for                  Moved into Gaming
             games)                                  directions
            Native Distribution
             channels


                                   © ALTOROS Systems | CONFIDENTIAL


Tuesday, May 22, 12
Summary


                Allows to utilities 80%                      Does not work for
                 off all web development                       platform specific
                 resources.                                    features
                Covers about 70% of                          No performance
                 all common application                        optimization as for
                 GUI                                           native UI elements.
                Covers about 60% of                          Does not really cover
                 the common mobile                             all mobile platforms
                 application functionality




                                   © ALTOROS Systems | CONFIDENTIAL


Tuesday, May 22, 12
Questions




                      Anything you want to
                      ask about?



                             © ALTOROS Systems | CONFIDENTIAL


Tuesday, May 22, 12

Mais conteúdo relacionado

Semelhante a Cross-Platform Tools: Build Once and Run Everywhere

Webinar: The Enterrpise Appstore - What is it and why you need it.
Webinar: The Enterrpise Appstore - What is it and why you need it.Webinar: The Enterrpise Appstore - What is it and why you need it.
Webinar: The Enterrpise Appstore - What is it and why you need it.Appear
 
Micro-Frontends JSVidCon
Micro-Frontends JSVidConMicro-Frontends JSVidCon
Micro-Frontends JSVidConAmir Zuker
 
webinos and Open Ecosystems Open Governance
webinos and Open Ecosystems Open Governancewebinos and Open Ecosystems Open Governance
webinos and Open Ecosystems Open Governancewebinos project
 
Navigating the Mobile maze
Navigating the Mobile mazeNavigating the Mobile maze
Navigating the Mobile mazePraveen Bohra
 
Developing for Windows Phone 8 and Windows 8
Developing for Windows Phone 8 and Windows 8Developing for Windows Phone 8 and Windows 8
Developing for Windows Phone 8 and Windows 8Dave Bost
 
The Modern Web, Part 1: Mobility
The Modern Web, Part 1: MobilityThe Modern Web, Part 1: Mobility
The Modern Web, Part 1: MobilityDavid Pallmann
 
HTML5 vs Native Android: Smart Enterprises for the Future
HTML5 vs Native Android: Smart Enterprises for the FutureHTML5 vs Native Android: Smart Enterprises for the Future
HTML5 vs Native Android: Smart Enterprises for the FutureMotorola Mobility - MOTODEV
 
Shaping a Technology Strategy for Mobile Development
Shaping a Technology Strategy for Mobile DevelopmentShaping a Technology Strategy for Mobile Development
Shaping a Technology Strategy for Mobile Developmentfrog
 
Disruptive Technology Trends - Cloud, Mobile, IoT and Beyond
Disruptive Technology Trends - Cloud, Mobile, IoT and BeyondDisruptive Technology Trends - Cloud, Mobile, IoT and Beyond
Disruptive Technology Trends - Cloud, Mobile, IoT and BeyondDr Ganesh Iyer
 
Developing a Modern Mobile App Strategy
Developing a Modern Mobile App StrategyDeveloping a Modern Mobile App Strategy
Developing a Modern Mobile App StrategyTodd Anglin
 
Complete Visibility into Docker Containers with AppDynamics
Complete Visibility into Docker Containers with AppDynamicsComplete Visibility into Docker Containers with AppDynamics
Complete Visibility into Docker Containers with AppDynamicsAppDynamics
 
Best practices for creating modular Web applications
Best practices for creating modular Web applicationsBest practices for creating modular Web applications
Best practices for creating modular Web applicationspeychevi
 
Netbiscuits corporate presentation 2012
Netbiscuits corporate presentation 2012Netbiscuits corporate presentation 2012
Netbiscuits corporate presentation 2012Aussie
 
Harbinger Systems Mobile App Development Practice Group
Harbinger Systems Mobile App Development Practice GroupHarbinger Systems Mobile App Development Practice Group
Harbinger Systems Mobile App Development Practice GroupSachin Katariya
 
From Containerization to Modularity
From Containerization to ModularityFrom Containerization to Modularity
From Containerization to Modularityoasisfeng
 
Development Workshop on ET1, Android and Motorola RhoElements
Development Workshop on ET1, Android and Motorola RhoElementsDevelopment Workshop on ET1, Android and Motorola RhoElements
Development Workshop on ET1, Android and Motorola RhoElementsRomin Irani
 
Accelerate your Application Delivery with DevOps and Microservices
Accelerate your Application Delivery with DevOps and MicroservicesAccelerate your Application Delivery with DevOps and Microservices
Accelerate your Application Delivery with DevOps and MicroservicesAmazon Web Services
 

Semelhante a Cross-Platform Tools: Build Once and Run Everywhere (20)

Webinar: The Enterrpise Appstore - What is it and why you need it.
Webinar: The Enterrpise Appstore - What is it and why you need it.Webinar: The Enterrpise Appstore - What is it and why you need it.
Webinar: The Enterrpise Appstore - What is it and why you need it.
 
Micro-Frontends JSVidCon
Micro-Frontends JSVidConMicro-Frontends JSVidCon
Micro-Frontends JSVidCon
 
webinos and Open Ecosystems Open Governance
webinos and Open Ecosystems Open Governancewebinos and Open Ecosystems Open Governance
webinos and Open Ecosystems Open Governance
 
Navigating the Mobile maze
Navigating the Mobile mazeNavigating the Mobile maze
Navigating the Mobile maze
 
Developing for Windows Phone 8 and Windows 8
Developing for Windows Phone 8 and Windows 8Developing for Windows Phone 8 and Windows 8
Developing for Windows Phone 8 and Windows 8
 
The Modern Web, Part 1: Mobility
The Modern Web, Part 1: MobilityThe Modern Web, Part 1: Mobility
The Modern Web, Part 1: Mobility
 
HTML5 vs Native Android: Smart Enterprises for the Future
HTML5 vs Native Android: Smart Enterprises for the FutureHTML5 vs Native Android: Smart Enterprises for the Future
HTML5 vs Native Android: Smart Enterprises for the Future
 
Eye OS
Eye OSEye OS
Eye OS
 
Shaping a Technology Strategy for Mobile Development
Shaping a Technology Strategy for Mobile DevelopmentShaping a Technology Strategy for Mobile Development
Shaping a Technology Strategy for Mobile Development
 
Disruptive Technology Trends - Cloud, Mobile, IoT and Beyond
Disruptive Technology Trends - Cloud, Mobile, IoT and BeyondDisruptive Technology Trends - Cloud, Mobile, IoT and Beyond
Disruptive Technology Trends - Cloud, Mobile, IoT and Beyond
 
Developing a Modern Mobile App Strategy
Developing a Modern Mobile App StrategyDeveloping a Modern Mobile App Strategy
Developing a Modern Mobile App Strategy
 
Complete Visibility into Docker Containers with AppDynamics
Complete Visibility into Docker Containers with AppDynamicsComplete Visibility into Docker Containers with AppDynamics
Complete Visibility into Docker Containers with AppDynamics
 
Best practices for creating modular Web applications
Best practices for creating modular Web applicationsBest practices for creating modular Web applications
Best practices for creating modular Web applications
 
Netbiscuits corporate presentation 2012
Netbiscuits corporate presentation 2012Netbiscuits corporate presentation 2012
Netbiscuits corporate presentation 2012
 
Harbinger Systems Mobile App Development Practice Group
Harbinger Systems Mobile App Development Practice GroupHarbinger Systems Mobile App Development Practice Group
Harbinger Systems Mobile App Development Practice Group
 
From Containerization to Modularity
From Containerization to ModularityFrom Containerization to Modularity
From Containerization to Modularity
 
Development Workshop on ET1, Android and Motorola RhoElements
Development Workshop on ET1, Android and Motorola RhoElementsDevelopment Workshop on ET1, Android and Motorola RhoElements
Development Workshop on ET1, Android and Motorola RhoElements
 
Accelerate your Application Delivery with DevOps and Microservices
Accelerate your Application Delivery with DevOps and MicroservicesAccelerate your Application Delivery with DevOps and Microservices
Accelerate your Application Delivery with DevOps and Microservices
 
Application development framework
Application development frameworkApplication development framework
Application development framework
 
Project Fuji/OpenESB Aquarium Paris
Project Fuji/OpenESB Aquarium ParisProject Fuji/OpenESB Aquarium Paris
Project Fuji/OpenESB Aquarium Paris
 

Mais de Altoros

Maturing with Kubernetes
Maturing with KubernetesMaturing with Kubernetes
Maturing with KubernetesAltoros
 
Kubernetes Platform Readiness and Maturity Assessment
Kubernetes Platform Readiness and Maturity AssessmentKubernetes Platform Readiness and Maturity Assessment
Kubernetes Platform Readiness and Maturity AssessmentAltoros
 
Journey Through Four Stages of Kubernetes Deployment Maturity
Journey Through Four Stages of Kubernetes Deployment MaturityJourney Through Four Stages of Kubernetes Deployment Maturity
Journey Through Four Stages of Kubernetes Deployment MaturityAltoros
 
SGX: Improving Privacy, Security, and Trust Across Blockchain Networks
SGX: Improving Privacy, Security, and Trust Across Blockchain NetworksSGX: Improving Privacy, Security, and Trust Across Blockchain Networks
SGX: Improving Privacy, Security, and Trust Across Blockchain NetworksAltoros
 
Using the Cloud Foundry and Kubernetes Stack as a Part of a Blockchain CI/CD ...
Using the Cloud Foundry and Kubernetes Stack as a Part of a Blockchain CI/CD ...Using the Cloud Foundry and Kubernetes Stack as a Part of a Blockchain CI/CD ...
Using the Cloud Foundry and Kubernetes Stack as a Part of a Blockchain CI/CD ...Altoros
 
A Zero-Knowledge Proof: Improving Privacy on a Blockchain
A Zero-Knowledge Proof:  Improving Privacy on a BlockchainA Zero-Knowledge Proof:  Improving Privacy on a Blockchain
A Zero-Knowledge Proof: Improving Privacy on a BlockchainAltoros
 
Crap. Your Big Data Kitchen Is Broken.
Crap. Your Big Data Kitchen Is Broken.Crap. Your Big Data Kitchen Is Broken.
Crap. Your Big Data Kitchen Is Broken.Altoros
 
Containers and Kubernetes
Containers and KubernetesContainers and Kubernetes
Containers and KubernetesAltoros
 
Distributed Ledger Technology for Over-the-Counter Trading
Distributed Ledger Technology for Over-the-Counter TradingDistributed Ledger Technology for Over-the-Counter Trading
Distributed Ledger Technology for Over-the-Counter TradingAltoros
 
5-Step Deployment of Hyperledger Fabric on Multiple Nodes
5-Step Deployment of Hyperledger Fabric on Multiple Nodes5-Step Deployment of Hyperledger Fabric on Multiple Nodes
5-Step Deployment of Hyperledger Fabric on Multiple NodesAltoros
 
Deploying Kubernetes on GCP with Kubespray
Deploying Kubernetes on GCP with KubesprayDeploying Kubernetes on GCP with Kubespray
Deploying Kubernetes on GCP with KubesprayAltoros
 
UAA for Kubernetes
UAA for KubernetesUAA for Kubernetes
UAA for KubernetesAltoros
 
Troubleshooting .NET Applications on Cloud Foundry
Troubleshooting .NET Applications on Cloud FoundryTroubleshooting .NET Applications on Cloud Foundry
Troubleshooting .NET Applications on Cloud FoundryAltoros
 
Continuous Integration and Deployment with Jenkins for PCF
Continuous Integration and Deployment with Jenkins for PCFContinuous Integration and Deployment with Jenkins for PCF
Continuous Integration and Deployment with Jenkins for PCFAltoros
 
How to Never Leave Your Deployment Unattended
How to Never Leave Your Deployment UnattendedHow to Never Leave Your Deployment Unattended
How to Never Leave Your Deployment UnattendedAltoros
 
Cloud Foundry Monitoring How-To: Collecting Metrics and Logs
Cloud Foundry Monitoring How-To: Collecting Metrics and LogsCloud Foundry Monitoring How-To: Collecting Metrics and Logs
Cloud Foundry Monitoring How-To: Collecting Metrics and LogsAltoros
 
Smart Baggage Tracking: End-to-End Sensor-Based Solution
Smart Baggage Tracking: End-to-End Sensor-Based SolutionSmart Baggage Tracking: End-to-End Sensor-Based Solution
Smart Baggage Tracking: End-to-End Sensor-Based SolutionAltoros
 
Navigating the Ecosystem of Pivotal Cloud Foundry Tiles
Navigating the Ecosystem of Pivotal Cloud Foundry TilesNavigating the Ecosystem of Pivotal Cloud Foundry Tiles
Navigating the Ecosystem of Pivotal Cloud Foundry TilesAltoros
 
AI as a Catalyst for IoT
AI as a Catalyst for IoTAI as a Catalyst for IoT
AI as a Catalyst for IoTAltoros
 
Over-Engineering: Causes, Symptoms, and Treatment
Over-Engineering: Causes, Symptoms, and TreatmentOver-Engineering: Causes, Symptoms, and Treatment
Over-Engineering: Causes, Symptoms, and TreatmentAltoros
 

Mais de Altoros (20)

Maturing with Kubernetes
Maturing with KubernetesMaturing with Kubernetes
Maturing with Kubernetes
 
Kubernetes Platform Readiness and Maturity Assessment
Kubernetes Platform Readiness and Maturity AssessmentKubernetes Platform Readiness and Maturity Assessment
Kubernetes Platform Readiness and Maturity Assessment
 
Journey Through Four Stages of Kubernetes Deployment Maturity
Journey Through Four Stages of Kubernetes Deployment MaturityJourney Through Four Stages of Kubernetes Deployment Maturity
Journey Through Four Stages of Kubernetes Deployment Maturity
 
SGX: Improving Privacy, Security, and Trust Across Blockchain Networks
SGX: Improving Privacy, Security, and Trust Across Blockchain NetworksSGX: Improving Privacy, Security, and Trust Across Blockchain Networks
SGX: Improving Privacy, Security, and Trust Across Blockchain Networks
 
Using the Cloud Foundry and Kubernetes Stack as a Part of a Blockchain CI/CD ...
Using the Cloud Foundry and Kubernetes Stack as a Part of a Blockchain CI/CD ...Using the Cloud Foundry and Kubernetes Stack as a Part of a Blockchain CI/CD ...
Using the Cloud Foundry and Kubernetes Stack as a Part of a Blockchain CI/CD ...
 
A Zero-Knowledge Proof: Improving Privacy on a Blockchain
A Zero-Knowledge Proof:  Improving Privacy on a BlockchainA Zero-Knowledge Proof:  Improving Privacy on a Blockchain
A Zero-Knowledge Proof: Improving Privacy on a Blockchain
 
Crap. Your Big Data Kitchen Is Broken.
Crap. Your Big Data Kitchen Is Broken.Crap. Your Big Data Kitchen Is Broken.
Crap. Your Big Data Kitchen Is Broken.
 
Containers and Kubernetes
Containers and KubernetesContainers and Kubernetes
Containers and Kubernetes
 
Distributed Ledger Technology for Over-the-Counter Trading
Distributed Ledger Technology for Over-the-Counter TradingDistributed Ledger Technology for Over-the-Counter Trading
Distributed Ledger Technology for Over-the-Counter Trading
 
5-Step Deployment of Hyperledger Fabric on Multiple Nodes
5-Step Deployment of Hyperledger Fabric on Multiple Nodes5-Step Deployment of Hyperledger Fabric on Multiple Nodes
5-Step Deployment of Hyperledger Fabric on Multiple Nodes
 
Deploying Kubernetes on GCP with Kubespray
Deploying Kubernetes on GCP with KubesprayDeploying Kubernetes on GCP with Kubespray
Deploying Kubernetes on GCP with Kubespray
 
UAA for Kubernetes
UAA for KubernetesUAA for Kubernetes
UAA for Kubernetes
 
Troubleshooting .NET Applications on Cloud Foundry
Troubleshooting .NET Applications on Cloud FoundryTroubleshooting .NET Applications on Cloud Foundry
Troubleshooting .NET Applications on Cloud Foundry
 
Continuous Integration and Deployment with Jenkins for PCF
Continuous Integration and Deployment with Jenkins for PCFContinuous Integration and Deployment with Jenkins for PCF
Continuous Integration and Deployment with Jenkins for PCF
 
How to Never Leave Your Deployment Unattended
How to Never Leave Your Deployment UnattendedHow to Never Leave Your Deployment Unattended
How to Never Leave Your Deployment Unattended
 
Cloud Foundry Monitoring How-To: Collecting Metrics and Logs
Cloud Foundry Monitoring How-To: Collecting Metrics and LogsCloud Foundry Monitoring How-To: Collecting Metrics and Logs
Cloud Foundry Monitoring How-To: Collecting Metrics and Logs
 
Smart Baggage Tracking: End-to-End Sensor-Based Solution
Smart Baggage Tracking: End-to-End Sensor-Based SolutionSmart Baggage Tracking: End-to-End Sensor-Based Solution
Smart Baggage Tracking: End-to-End Sensor-Based Solution
 
Navigating the Ecosystem of Pivotal Cloud Foundry Tiles
Navigating the Ecosystem of Pivotal Cloud Foundry TilesNavigating the Ecosystem of Pivotal Cloud Foundry Tiles
Navigating the Ecosystem of Pivotal Cloud Foundry Tiles
 
AI as a Catalyst for IoT
AI as a Catalyst for IoTAI as a Catalyst for IoT
AI as a Catalyst for IoT
 
Over-Engineering: Causes, Symptoms, and Treatment
Over-Engineering: Causes, Symptoms, and TreatmentOver-Engineering: Causes, Symptoms, and Treatment
Over-Engineering: Causes, Symptoms, and Treatment
 

Último

[BuildWithAI] Introduction to Gemini.pdf
[BuildWithAI] Introduction to Gemini.pdf[BuildWithAI] Introduction to Gemini.pdf
[BuildWithAI] Introduction to Gemini.pdfSandro Moreira
 
presentation ICT roal in 21st century education
presentation ICT roal in 21st century educationpresentation ICT roal in 21st century education
presentation ICT roal in 21st century educationjfdjdjcjdnsjd
 
Apidays New York 2024 - APIs in 2030: The Risk of Technological Sleepwalk by ...
Apidays New York 2024 - APIs in 2030: The Risk of Technological Sleepwalk by ...Apidays New York 2024 - APIs in 2030: The Risk of Technological Sleepwalk by ...
Apidays New York 2024 - APIs in 2030: The Risk of Technological Sleepwalk by ...apidays
 
EMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWER
EMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWEREMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWER
EMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWERMadyBayot
 
WSO2's API Vision: Unifying Control, Empowering Developers
WSO2's API Vision: Unifying Control, Empowering DevelopersWSO2's API Vision: Unifying Control, Empowering Developers
WSO2's API Vision: Unifying Control, Empowering DevelopersWSO2
 
Polkadot JAM Slides - Token2049 - By Dr. Gavin Wood
Polkadot JAM Slides - Token2049 - By Dr. Gavin WoodPolkadot JAM Slides - Token2049 - By Dr. Gavin Wood
Polkadot JAM Slides - Token2049 - By Dr. Gavin WoodJuan lago vázquez
 
Introduction to Multilingual Retrieval Augmented Generation (RAG)
Introduction to Multilingual Retrieval Augmented Generation (RAG)Introduction to Multilingual Retrieval Augmented Generation (RAG)
Introduction to Multilingual Retrieval Augmented Generation (RAG)Zilliz
 
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024Victor Rentea
 
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...apidays
 
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, AdobeApidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobeapidays
 
Finding Java's Hidden Performance Traps @ DevoxxUK 2024
Finding Java's Hidden Performance Traps @ DevoxxUK 2024Finding Java's Hidden Performance Traps @ DevoxxUK 2024
Finding Java's Hidden Performance Traps @ DevoxxUK 2024Victor Rentea
 
Strategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a FresherStrategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a FresherRemote DBA Services
 
MINDCTI Revenue Release Quarter One 2024
MINDCTI Revenue Release Quarter One 2024MINDCTI Revenue Release Quarter One 2024
MINDCTI Revenue Release Quarter One 2024MIND CTI
 
ICT role in 21st century education and its challenges
ICT role in 21st century education and its challengesICT role in 21st century education and its challenges
ICT role in 21st century education and its challengesrafiqahmad00786416
 
Platformless Horizons for Digital Adaptability
Platformless Horizons for Digital AdaptabilityPlatformless Horizons for Digital Adaptability
Platformless Horizons for Digital AdaptabilityWSO2
 
Why Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire businessWhy Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire businesspanagenda
 
CNIC Information System with Pakdata Cf In Pakistan
CNIC Information System with Pakdata Cf In PakistanCNIC Information System with Pakdata Cf In Pakistan
CNIC Information System with Pakdata Cf In Pakistandanishmna97
 
"I see eyes in my soup": How Delivery Hero implemented the safety system for ...
"I see eyes in my soup": How Delivery Hero implemented the safety system for ..."I see eyes in my soup": How Delivery Hero implemented the safety system for ...
"I see eyes in my soup": How Delivery Hero implemented the safety system for ...Zilliz
 
Elevate Developer Efficiency & build GenAI Application with Amazon Q​
Elevate Developer Efficiency & build GenAI Application with Amazon Q​Elevate Developer Efficiency & build GenAI Application with Amazon Q​
Elevate Developer Efficiency & build GenAI Application with Amazon Q​Bhuvaneswari Subramani
 

Último (20)

[BuildWithAI] Introduction to Gemini.pdf
[BuildWithAI] Introduction to Gemini.pdf[BuildWithAI] Introduction to Gemini.pdf
[BuildWithAI] Introduction to Gemini.pdf
 
presentation ICT roal in 21st century education
presentation ICT roal in 21st century educationpresentation ICT roal in 21st century education
presentation ICT roal in 21st century education
 
Apidays New York 2024 - APIs in 2030: The Risk of Technological Sleepwalk by ...
Apidays New York 2024 - APIs in 2030: The Risk of Technological Sleepwalk by ...Apidays New York 2024 - APIs in 2030: The Risk of Technological Sleepwalk by ...
Apidays New York 2024 - APIs in 2030: The Risk of Technological Sleepwalk by ...
 
EMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWER
EMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWEREMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWER
EMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWER
 
WSO2's API Vision: Unifying Control, Empowering Developers
WSO2's API Vision: Unifying Control, Empowering DevelopersWSO2's API Vision: Unifying Control, Empowering Developers
WSO2's API Vision: Unifying Control, Empowering Developers
 
Polkadot JAM Slides - Token2049 - By Dr. Gavin Wood
Polkadot JAM Slides - Token2049 - By Dr. Gavin WoodPolkadot JAM Slides - Token2049 - By Dr. Gavin Wood
Polkadot JAM Slides - Token2049 - By Dr. Gavin Wood
 
Introduction to Multilingual Retrieval Augmented Generation (RAG)
Introduction to Multilingual Retrieval Augmented Generation (RAG)Introduction to Multilingual Retrieval Augmented Generation (RAG)
Introduction to Multilingual Retrieval Augmented Generation (RAG)
 
Understanding the FAA Part 107 License ..
Understanding the FAA Part 107 License ..Understanding the FAA Part 107 License ..
Understanding the FAA Part 107 License ..
 
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
 
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
 
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, AdobeApidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
 
Finding Java's Hidden Performance Traps @ DevoxxUK 2024
Finding Java's Hidden Performance Traps @ DevoxxUK 2024Finding Java's Hidden Performance Traps @ DevoxxUK 2024
Finding Java's Hidden Performance Traps @ DevoxxUK 2024
 
Strategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a FresherStrategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a Fresher
 
MINDCTI Revenue Release Quarter One 2024
MINDCTI Revenue Release Quarter One 2024MINDCTI Revenue Release Quarter One 2024
MINDCTI Revenue Release Quarter One 2024
 
ICT role in 21st century education and its challenges
ICT role in 21st century education and its challengesICT role in 21st century education and its challenges
ICT role in 21st century education and its challenges
 
Platformless Horizons for Digital Adaptability
Platformless Horizons for Digital AdaptabilityPlatformless Horizons for Digital Adaptability
Platformless Horizons for Digital Adaptability
 
Why Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire businessWhy Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire business
 
CNIC Information System with Pakdata Cf In Pakistan
CNIC Information System with Pakdata Cf In PakistanCNIC Information System with Pakdata Cf In Pakistan
CNIC Information System with Pakdata Cf In Pakistan
 
"I see eyes in my soup": How Delivery Hero implemented the safety system for ...
"I see eyes in my soup": How Delivery Hero implemented the safety system for ..."I see eyes in my soup": How Delivery Hero implemented the safety system for ...
"I see eyes in my soup": How Delivery Hero implemented the safety system for ...
 
Elevate Developer Efficiency & build GenAI Application with Amazon Q​
Elevate Developer Efficiency & build GenAI Application with Amazon Q​Elevate Developer Efficiency & build GenAI Application with Amazon Q​
Elevate Developer Efficiency & build GenAI Application with Amazon Q​
 

Cross-Platform Tools: Build Once and Run Everywhere

  • 1. Cross-Platform Tools Build once and Run Everywhere Alexey Karpik Web Platform Developer at ALTOROS Tuesday, May 22, 12
  • 2. Action plan  Current mobile platforms overview  Main groups of cross-platform tools  Examples of the usage  Summary  Questions © ALTOROS Systems | CONFIDENTIAL Tuesday, May 22, 12
  • 3. Mobile platforms World-Wide Smartphone Sale (2012 Q1) Windows Phone 7 2.0% RIM 7.2% Symbian 8.9% iOS Android 23.8% 58.2% © ALTOROS Systems | CONFIDENTIAL 3 Tuesday, May 22, 12
  • 4. Cross-platform tools groups  JavaScript Libraries  Wrappers around web applications  Transformers to Native code  Applications Frameworks  Adobe Air © ALTOROS Systems | CONFIDENTIAL Tuesday, May 22, 12
  • 5. JavaScript Libraries  Single unified GUI You have one GUI for multiple devices (buttons, header, footer, tabs groups, and etc.)  Touch interface benefits Most of the devices have build in touch screens  HTML5, CSS3 Audio, video, storage, animation and effects © ALTOROS Systems | CONFIDENTIAL Tuesday, May 22, 12
  • 6. JavaScript Libraries Sencha http://www.sencha.com/ Have some additional related products: Sencha Architect (UI builder) Sencha Animator (CSS3 effects builder) © ALTOROS Systems | CONFIDENTIAL Tuesday, May 22, 12
  • 7. JavaScript Libraries jQuery mobile http://jquerymobile.com ... <body> <div data-role="page"> <div data-role="header"> <h1>My Title</h1> </div><!-- /header --> <div data-role="content"> <h1>Lists</h1> <ul data-role="listview" data-inset="true" data-filter="true"> <li><a href="#">Acura</a></li> <li><a href="#">Audi</a></li> </ul> <h1>Forms</h1> <form><label for="slider-0">Input slider:</label> <input type="range" name="slider" id="slider-0" value="25" min="0" max="100" /> </form> </div><!-- /content --> <div data-role="footer"> <p>&copy; 2011-12 Altoros Systems LLC.</p> </div><!-- /header --> </div><!-- /page --> </body> ... © ALTOROS Systems | CONFIDENTIAL Tuesday, May 22, 12
  • 8. JavaScript Libraries Jo http://joapp.com/ Lightweight JavaScript framework designed for HTML5 apps. Last code update on GitHub about 4 month ago :( © ALTOROS Systems | CONFIDENTIAL Tuesday, May 22, 12
  • 9. JavaScript Libraries Advantages Disadvantages  Modern technologies  Not a native app  Quick start  Application speed  Injection  Platform dependable  Widely used  Internet  No special  No distribution channels environment © ALTOROS Systems | CONFIDENTIAL Tuesday, May 22, 12
  • 10. Applications Frameworks  Create an application from the start  Familiar programming language The M Project http://the-m-project.org/ jQuery mobile, NodeJs, Build HTML © ALTOROS Systems | CONFIDENTIAL Tuesday, May 22, 12
  • 11. Applications Frameworks Advantages Disadvantages  Single place for business  Doesn’t allow migration and presentation layers  100% relay on  Cutting-edge technologies development tools and community  Online usage only  Browser window  No distribution channels © ALTOROS Systems | CONFIDENTIAL Tuesday, May 22, 12
  • 12. Wrappers around web applications  Create a native app for mobile platform  Integrated Development Environment  Single code development  Native API support © ALTOROS Systems | CONFIDENTIAL Tuesday, May 22, 12
  • 13. Wrappers around web applications MoSync http://www.mosync.com JavaScript, HTML, C++ © ALTOROS Systems | CONFIDENTIAL Tuesday, May 22, 12
  • 14. MoSync © ALTOROS Systems | CONFIDENTIAL Tuesday, May 22, 12
  • 15. Wrappers around web applications PhoneGap http://phonegap.com/ HTML JavaScript Libraries Xcode plugin © ALTOROS Systems | CONFIDENTIAL Tuesday, May 22, 12
  • 16. PhoneGap © ALTOROS Systems | CONFIDENTIAL Tuesday, May 22, 12
  • 17. Wrappers around web applications RhoMobile http://rhomobile.com/ Ruby jQuery Mobile © ALTOROS Systems | CONFIDENTIAL Tuesday, May 22, 12
  • 18. RhoMobile © ALTOROS Systems | CONFIDENTIAL Tuesday, May 22, 12
  • 19. Wrappers around web applications Advantages Disadvantages  Native API  Not Native UI  Extendable tools  Challenges to go live  Offline support  High level of expertise  Native Application  Dependence on native  Covered common cases SDK versions.  Native SDK  Native Distribution channels © ALTOROS Systems | CONFIDENTIAL Tuesday, May 22, 12
  • 20. Transformers to Native code  Create a native app for mobile platform  Transform Platform Language into Native code  Integrated Development Environment  Have Platform Services  Native API support © ALTOROS Systems | CONFIDENTIAL 20 Tuesday, May 22, 12
  • 21. Transformers to Native code Antenna http://www.antennasoftware.com/ AMP Wizards Build-in User Management © ALTOROS Systems | CONFIDENTIAL Tuesday, May 22, 12
  • 22. Antenna © ALTOROS Systems | CONFIDENTIAL Tuesday, May 22, 12
  • 23. Transformers to Native code Appcelerator Titanium http://www.appcelerator.com JavaScript only, but recently support HTML5 (mobile web version) The only tool that generates native UI elements, and transforms JavaScript into Native Platform Code. © ALTOROS Systems | CONFIDENTIAL Tuesday, May 22, 12
  • 24. Appcelerator Titanium © ALTOROS Systems | CONFIDENTIAL Tuesday, May 22, 12
  • 25. Transformers to Native code Advantages Disadvantages  Native API  Challenges to go live  Extendable tools  Dependence on  Offline support Transformers  Native Application  Dependence on native  Native UI SDK versions.  Native SDK  Native Distribution channels © ALTOROS Systems | CONFIDENTIAL Tuesday, May 22, 12
  • 26. Adobe AIR  Integrated Development Environment  Create native app for mobile platform SWF byte-code runs on Native Platform, iOS - Adobe AIR player embedded into each app, on Android use system installed Adobe AIR player.  Native API support  Stage 3D © ALTOROS Systems | CONFIDENTIAL 26 Tuesday, May 22, 12
  • 27. Adobe AIR Advantages Disadvantages  Native API  Not Native UI  Extendable tools  Challenges to go live  Offline support  Dependence on native  Native Application SDK versions.  Stage 3D support (for  Moved into Gaming games) directions  Native Distribution channels © ALTOROS Systems | CONFIDENTIAL Tuesday, May 22, 12
  • 28. Summary  Allows to utilities 80%  Does not work for off all web development platform specific resources. features  Covers about 70% of  No performance all common application optimization as for GUI native UI elements.  Covers about 60% of  Does not really cover the common mobile all mobile platforms application functionality © ALTOROS Systems | CONFIDENTIAL Tuesday, May 22, 12
  • 29. Questions Anything you want to ask about? © ALTOROS Systems | CONFIDENTIAL Tuesday, May 22, 12