SlideShare una empresa de Scribd logo
1 de 20
Cross-platform apps
with Adobe AIR
Yes or No?
Lviv Mobile Development Day 2013
Thursday, September 19, 13
Audience
• Decision Makers
• Mobile Developers
Thursday, September 19, 13
Why Adobe AIR?
• Full cross-platform solution
• Web/Desktop/Mobile (iOS/Android/BB)
• Adobe dropped mobile Flash?
• ActionScript developers are still there
Thursday, September 19, 13
Why Adobe AIR?
Conqu
Tablet
Desktop
Phone
Thursday, September 19, 13
Conqu
Why Adobe AIR?
Thursday, September 19, 13
Why Adobe AIR?
Check sheet
Desktop iOS Android
Thursday, September 19, 13
Service Desk (Proof of concept/Alpha)
Tablet
Web
Phone
Why Adobe AIR?
Thursday, September 19, 13
How to deal with UI?
Is Flex UI good?
Flex UI is not Native for most platforms
Runs in Flash Player or AIR Skinning rulez!!!
Thursday, September 19, 13
How to deal with UI?
Is Flex UI good?
Flex UI is Native for BlackBerry
BlackBerry 10 and Palybook OS have AIR runtime built-in
Thursday, September 19, 13
How to deal with UI?
Is Flex UI good?
Flex UI is not Native for OS
(remember BlackBerry?)
• Pros
• Same UI for all platforms
• Less training / support cost for big corporates
• Cons
• UI has to be perfectly designed to be adopted
Thursday, September 19, 13
Specifics of Flex
Requires AIR runtime
•Pros:
• Same codebase for all platforms
• Number of distribution options
•Cons:
• Performance issues, like with any other non-native solution
•Other:
• AIR runtime may be built in with executable
Thursday, September 19, 13
Performance?
• UI is slow
• Collections are common but not fast
• High memory usage (AIR runtime)
Thursday, September 19, 13
Slower than Native in most some cases
Math calculations are faster than native code on iPad!
Example:
f1(x) = 5.4321 * x 2 + 9.8765 * x
f2(x) = 5.4321 * cos(x)
• Results for
1,000,000 cycles:
C++ Builder XE4 C++ (XCode) Java (Eclipse) Flex
Web
Windows/Chrome
5156 ms 6819 ms
iPad2 24950 ms 26062 ms
iPad4 21306 ms 14064 ms
Nexus 7 14395 ms 18345 ms
Performance?
Thursday, September 19, 13
Performance?
Surflex
var sql:Surflex = new Surflex();
sql.CreateTable("Product", "ProductId", Product.generateTestData());
sql.CreateIndex("Product", "CategoryId");
sql.CreateTable("Category", "CategoryId", Category.generateTestData());
sql.CreateTable("Order", "OrderId", Order.generateTestData());
sql.CreateTable("OrderItem", "OrderItemId", OrderItem.generateTestData());
sql.CreateIndex("OrderItem", "ProductId");
sql.CreateIndex("OrderItem", "OrderId");
sql.Insert("Order", new Order(4, "NO 000459", null));
var orderItem:OrderItem = new OrderItem(15, 4, 8, 8, 400);
sql.Insert("OrderItem", orderItem);
orderItem.Price -= 100;
sql.Update("OrderItem", orderItem);
sql.Delete("Order", function(order:Order):Boolean{return order.OrderId == 4;});
sql.CreateTable("Category2", "CategoryId", Category.generateTestData());
var result:Array;
result = sql.Select("SELECT Category.Name AS Category, Product.Name AS Product,
OrderItem.Quantity AS Quantity"
        + ", OrderItem.Price AS Price, Category2.* AS Mistake"
        + " FROM Category"
        + " INNER JOIN Product ON Category.CategoryId = Product.CategoryId"
        + " INNER JOIN OrderItem ON Product.ProductId = OrderItem.ProductId"
        + " INNER JOIN Order ON OrderItem.OrderId = Order.OrderId"
        + " LEFT JOIN Category2 ON Product.ProductId = Category2.CategoryId"
        + " WHERE Product, Order"
        + " ORDER BY Category ASC, Product DESC", new <Function>[
                function(product:Product):Boolean{return product.Status;},
                function(order:Order):Boolean{return order.OrderId == 2;}
        ]);
Data: 7 collections of 1-100K items each. 
Goal: find items based on some criteria.
Standard for loops: 4000 ms
Surflex query: 650 ms
Thursday, September 19, 13
Performance?
Collections
• Use proper Collections
Thursday, September 19, 13
Performance?
Other ways to improve
• Control memory usage with Profiler
• Use proper Collections: Array & Vector vs ArrayCollection
• Use optimized search algorithms (e.g. binary search) to find item
instead of “brute force” for each
• Surflex does its job
• Match class definitions when loading from server
• Read performance tuning tips / best practices
Thursday, September 19, 13
How to get data?
Backend?
• ADEP (Adobe Digital Enterprise Platform) /
LiveCycle ES4
• Data access with no line of Java code
• Expensive
• BlazeDS
• Java backend
• Free (reduced ADEP)
• Web services
• XML/AMF (FluorineFx)
Thursday, September 19, 13
Q/A
Thursday, September 19, 13
Useful links
• Adobe Mobile Development: http://www.adobe.com/devnet/devices/mobile-apps.html
• Adobe AIR Developer Center: http://www.adobe.com/devnet/air.html
• Tour de Flex: http://www.adobe.com/devnet-archive/flex/tourdeflex/
• Surflex: https://code.google.com/p/surflex/
• ADEP/LiveCycle: http://www.adobe.com/solutions/customer-experience/enterprise-
platform.html
• BlazeDS: http://livedocs.adobe.com/blazeds/1/blazeds_devguide/
• FluorineFx: http://www.fluorinefx.com
• iOS Theme for Flex Mobile: http://blogs.adobe.com/jasonsj/2011/06/ios-theme-for-
flex-mobile-projects-proof-of-concept.html
• Conqu: http://conqu.com
• 500px: http://500px.com/
Thursday, September 19, 13
About
Ivan Dulnyavka
Contacts:
email: ivand@devcom.com
Skype: id_skype_
in: http://www.linkedin.com/in/idulnyavka
Thursday, September 19, 13

Más contenido relacionado

Destacado

101 MARAVILHAS DE DEUS - VOLUME II
101 MARAVILHAS DE DEUS - VOLUME II101 MARAVILHAS DE DEUS - VOLUME II
101 MARAVILHAS DE DEUS - VOLUME IIESCRIBAVALDEMIR
 
lifestyle modifications-a broad thinking
lifestyle modifications-a broad thinkinglifestyle modifications-a broad thinking
lifestyle modifications-a broad thinkingbasil0005
 
Educación y derechos humanos texto para la presentación
Educación y derechos humanos texto para la presentaciónEducación y derechos humanos texto para la presentación
Educación y derechos humanos texto para la presentaciónMiguel Morales
 
Standards of Medical Care in Diabetes 2016
Standards of Medical Care in Diabetes 2016Standards of Medical Care in Diabetes 2016
Standards of Medical Care in Diabetes 2016Utai Sukviwatsirikul
 

Destacado (6)

101 MARAVILHAS DE DEUS - VOLUME II
101 MARAVILHAS DE DEUS - VOLUME II101 MARAVILHAS DE DEUS - VOLUME II
101 MARAVILHAS DE DEUS - VOLUME II
 
lifestyle modifications-a broad thinking
lifestyle modifications-a broad thinkinglifestyle modifications-a broad thinking
lifestyle modifications-a broad thinking
 
Educación y derechos humanos texto para la presentación
Educación y derechos humanos texto para la presentaciónEducación y derechos humanos texto para la presentación
Educación y derechos humanos texto para la presentación
 
Ada In 2017
Ada In 2017Ada In 2017
Ada In 2017
 
Standards of Medical Care in Diabetes 2016
Standards of Medical Care in Diabetes 2016Standards of Medical Care in Diabetes 2016
Standards of Medical Care in Diabetes 2016
 
20 666_t
 20 666_t 20 666_t
20 666_t
 

Más de Lviv Startup Club

Nikita Zahurdaiev: PMO Tools and Technologies (UA)
Nikita Zahurdaiev: PMO Tools and Technologies (UA)Nikita Zahurdaiev: PMO Tools and Technologies (UA)
Nikita Zahurdaiev: PMO Tools and Technologies (UA)Lviv Startup Club
 
Nikita Zahurdaiev: Developing PMO Services and Functions (UA)
Nikita Zahurdaiev: Developing PMO Services and Functions (UA)Nikita Zahurdaiev: Developing PMO Services and Functions (UA)
Nikita Zahurdaiev: Developing PMO Services and Functions (UA)Lviv Startup Club
 
Oleksandr Krakovetskyi: What's wrong with Generative AI? (UA)
Oleksandr Krakovetskyi: What's wrong with Generative AI? (UA)Oleksandr Krakovetskyi: What's wrong with Generative AI? (UA)
Oleksandr Krakovetskyi: What's wrong with Generative AI? (UA)Lviv Startup Club
 
Oleksandr Krakovetskyi: What's wrong with Generative AI? (UA)
Oleksandr Krakovetskyi: What's wrong with Generative AI? (UA)Oleksandr Krakovetskyi: What's wrong with Generative AI? (UA)
Oleksandr Krakovetskyi: What's wrong with Generative AI? (UA)Lviv Startup Club
 
Stanislav Podyachev: AI Agents as Role-Playing Business Modeling Tools (UA)
Stanislav Podyachev: AI Agents as Role-Playing Business Modeling Tools (UA)Stanislav Podyachev: AI Agents as Role-Playing Business Modeling Tools (UA)
Stanislav Podyachev: AI Agents as Role-Playing Business Modeling Tools (UA)Lviv Startup Club
 
Kyryl Truskovskyi: Training and Serving Open-Sourced Foundational Models (UA)
Kyryl Truskovskyi: Training and Serving Open-Sourced Foundational Models (UA)Kyryl Truskovskyi: Training and Serving Open-Sourced Foundational Models (UA)
Kyryl Truskovskyi: Training and Serving Open-Sourced Foundational Models (UA)Lviv Startup Club
 
Andrii Rodionov: What can go wrong in a distributed system – experience from ...
Andrii Rodionov: What can go wrong in a distributed system – experience from ...Andrii Rodionov: What can go wrong in a distributed system – experience from ...
Andrii Rodionov: What can go wrong in a distributed system – experience from ...Lviv Startup Club
 
Dmytro Tkachenko: Можливості АІ відео для бізнесу (UA)
Dmytro Tkachenko: Можливості АІ відео для бізнесу (UA)Dmytro Tkachenko: Можливості АІ відео для бізнесу (UA)
Dmytro Tkachenko: Можливості АІ відео для бізнесу (UA)Lviv Startup Club
 
Roman Kyslyi: Використання та побудова LLM агентів (UA)
Roman Kyslyi: Використання та побудова LLM агентів (UA)Roman Kyslyi: Використання та побудова LLM агентів (UA)
Roman Kyslyi: Використання та побудова LLM агентів (UA)Lviv Startup Club
 
Veronika Snizhko: Штучний інтелект як каталізатор інноваційної культури в ком...
Veronika Snizhko: Штучний інтелект як каталізатор інноваційної культури в ком...Veronika Snizhko: Штучний інтелект як каталізатор інноваційної культури в ком...
Veronika Snizhko: Штучний інтелект як каталізатор інноваційної культури в ком...Lviv Startup Club
 
Volodymyr Zhukov: Ключові труднощі в реальних імплементаціях AI. Досвід з пра...
Volodymyr Zhukov: Ключові труднощі в реальних імплементаціях AI. Досвід з пра...Volodymyr Zhukov: Ключові труднощі в реальних імплементаціях AI. Досвід з пра...
Volodymyr Zhukov: Ключові труднощі в реальних імплементаціях AI. Досвід з пра...Lviv Startup Club
 
Volodymyr Zhukov: Куди рухається ринок AI у 2024 році. Інсайти від Stanford H...
Volodymyr Zhukov: Куди рухається ринок AI у 2024 році. Інсайти від Stanford H...Volodymyr Zhukov: Куди рухається ринок AI у 2024 році. Інсайти від Stanford H...
Volodymyr Zhukov: Куди рухається ринок AI у 2024 році. Інсайти від Stanford H...Lviv Startup Club
 
Andrii Boichuk: The RAG is dead, long live the RAG або як сучасні LLM змінюют...
Andrii Boichuk: The RAG is dead, long live the RAG або як сучасні LLM змінюют...Andrii Boichuk: The RAG is dead, long live the RAG або як сучасні LLM змінюют...
Andrii Boichuk: The RAG is dead, long live the RAG або як сучасні LLM змінюют...Lviv Startup Club
 
Vladyslav Fliahin: Applications of Gen AI in CV (UA)
Vladyslav Fliahin: Applications of Gen AI in CV (UA)Vladyslav Fliahin: Applications of Gen AI in CV (UA)
Vladyslav Fliahin: Applications of Gen AI in CV (UA)Lviv Startup Club
 
Artem Ternov: Побудова платформи під DataEngineering та DataScience в ентерпр...
Artem Ternov: Побудова платформи під DataEngineering та DataScience в ентерпр...Artem Ternov: Побудова платформи під DataEngineering та DataScience в ентерпр...
Artem Ternov: Побудова платформи під DataEngineering та DataScience в ентерпр...Lviv Startup Club
 
Michael Vidyakin: Defining PMO Structure and Governance (UA)
Michael Vidyakin: Defining PMO Structure and Governance (UA)Michael Vidyakin: Defining PMO Structure and Governance (UA)
Michael Vidyakin: Defining PMO Structure and Governance (UA)Lviv Startup Club
 
Michael Vidyakin: Assessing Organizational Readiness (UA)
Michael Vidyakin: Assessing Organizational Readiness (UA)Michael Vidyakin: Assessing Organizational Readiness (UA)
Michael Vidyakin: Assessing Organizational Readiness (UA)Lviv Startup Club
 
Michael Vidyakin: Introduction to PMO (UA)
Michael Vidyakin: Introduction to PMO (UA)Michael Vidyakin: Introduction to PMO (UA)
Michael Vidyakin: Introduction to PMO (UA)Lviv Startup Club
 
Anna Kompanets: PMO Maturity and Continuous Improvement (UA)
Anna Kompanets: PMO Maturity and Continuous Improvement (UA)Anna Kompanets: PMO Maturity and Continuous Improvement (UA)
Anna Kompanets: PMO Maturity and Continuous Improvement (UA)Lviv Startup Club
 
Natalia Folgina: General state of IT talent market (UA)
Natalia Folgina: General state of IT talent market (UA)Natalia Folgina: General state of IT talent market (UA)
Natalia Folgina: General state of IT talent market (UA)Lviv Startup Club
 

Más de Lviv Startup Club (20)

Nikita Zahurdaiev: PMO Tools and Technologies (UA)
Nikita Zahurdaiev: PMO Tools and Technologies (UA)Nikita Zahurdaiev: PMO Tools and Technologies (UA)
Nikita Zahurdaiev: PMO Tools and Technologies (UA)
 
Nikita Zahurdaiev: Developing PMO Services and Functions (UA)
Nikita Zahurdaiev: Developing PMO Services and Functions (UA)Nikita Zahurdaiev: Developing PMO Services and Functions (UA)
Nikita Zahurdaiev: Developing PMO Services and Functions (UA)
 
Oleksandr Krakovetskyi: What's wrong with Generative AI? (UA)
Oleksandr Krakovetskyi: What's wrong with Generative AI? (UA)Oleksandr Krakovetskyi: What's wrong with Generative AI? (UA)
Oleksandr Krakovetskyi: What's wrong with Generative AI? (UA)
 
Oleksandr Krakovetskyi: What's wrong with Generative AI? (UA)
Oleksandr Krakovetskyi: What's wrong with Generative AI? (UA)Oleksandr Krakovetskyi: What's wrong with Generative AI? (UA)
Oleksandr Krakovetskyi: What's wrong with Generative AI? (UA)
 
Stanislav Podyachev: AI Agents as Role-Playing Business Modeling Tools (UA)
Stanislav Podyachev: AI Agents as Role-Playing Business Modeling Tools (UA)Stanislav Podyachev: AI Agents as Role-Playing Business Modeling Tools (UA)
Stanislav Podyachev: AI Agents as Role-Playing Business Modeling Tools (UA)
 
Kyryl Truskovskyi: Training and Serving Open-Sourced Foundational Models (UA)
Kyryl Truskovskyi: Training and Serving Open-Sourced Foundational Models (UA)Kyryl Truskovskyi: Training and Serving Open-Sourced Foundational Models (UA)
Kyryl Truskovskyi: Training and Serving Open-Sourced Foundational Models (UA)
 
Andrii Rodionov: What can go wrong in a distributed system – experience from ...
Andrii Rodionov: What can go wrong in a distributed system – experience from ...Andrii Rodionov: What can go wrong in a distributed system – experience from ...
Andrii Rodionov: What can go wrong in a distributed system – experience from ...
 
Dmytro Tkachenko: Можливості АІ відео для бізнесу (UA)
Dmytro Tkachenko: Можливості АІ відео для бізнесу (UA)Dmytro Tkachenko: Можливості АІ відео для бізнесу (UA)
Dmytro Tkachenko: Можливості АІ відео для бізнесу (UA)
 
Roman Kyslyi: Використання та побудова LLM агентів (UA)
Roman Kyslyi: Використання та побудова LLM агентів (UA)Roman Kyslyi: Використання та побудова LLM агентів (UA)
Roman Kyslyi: Використання та побудова LLM агентів (UA)
 
Veronika Snizhko: Штучний інтелект як каталізатор інноваційної культури в ком...
Veronika Snizhko: Штучний інтелект як каталізатор інноваційної культури в ком...Veronika Snizhko: Штучний інтелект як каталізатор інноваційної культури в ком...
Veronika Snizhko: Штучний інтелект як каталізатор інноваційної культури в ком...
 
Volodymyr Zhukov: Ключові труднощі в реальних імплементаціях AI. Досвід з пра...
Volodymyr Zhukov: Ключові труднощі в реальних імплементаціях AI. Досвід з пра...Volodymyr Zhukov: Ключові труднощі в реальних імплементаціях AI. Досвід з пра...
Volodymyr Zhukov: Ключові труднощі в реальних імплементаціях AI. Досвід з пра...
 
Volodymyr Zhukov: Куди рухається ринок AI у 2024 році. Інсайти від Stanford H...
Volodymyr Zhukov: Куди рухається ринок AI у 2024 році. Інсайти від Stanford H...Volodymyr Zhukov: Куди рухається ринок AI у 2024 році. Інсайти від Stanford H...
Volodymyr Zhukov: Куди рухається ринок AI у 2024 році. Інсайти від Stanford H...
 
Andrii Boichuk: The RAG is dead, long live the RAG або як сучасні LLM змінюют...
Andrii Boichuk: The RAG is dead, long live the RAG або як сучасні LLM змінюют...Andrii Boichuk: The RAG is dead, long live the RAG або як сучасні LLM змінюют...
Andrii Boichuk: The RAG is dead, long live the RAG або як сучасні LLM змінюют...
 
Vladyslav Fliahin: Applications of Gen AI in CV (UA)
Vladyslav Fliahin: Applications of Gen AI in CV (UA)Vladyslav Fliahin: Applications of Gen AI in CV (UA)
Vladyslav Fliahin: Applications of Gen AI in CV (UA)
 
Artem Ternov: Побудова платформи під DataEngineering та DataScience в ентерпр...
Artem Ternov: Побудова платформи під DataEngineering та DataScience в ентерпр...Artem Ternov: Побудова платформи під DataEngineering та DataScience в ентерпр...
Artem Ternov: Побудова платформи під DataEngineering та DataScience в ентерпр...
 
Michael Vidyakin: Defining PMO Structure and Governance (UA)
Michael Vidyakin: Defining PMO Structure and Governance (UA)Michael Vidyakin: Defining PMO Structure and Governance (UA)
Michael Vidyakin: Defining PMO Structure and Governance (UA)
 
Michael Vidyakin: Assessing Organizational Readiness (UA)
Michael Vidyakin: Assessing Organizational Readiness (UA)Michael Vidyakin: Assessing Organizational Readiness (UA)
Michael Vidyakin: Assessing Organizational Readiness (UA)
 
Michael Vidyakin: Introduction to PMO (UA)
Michael Vidyakin: Introduction to PMO (UA)Michael Vidyakin: Introduction to PMO (UA)
Michael Vidyakin: Introduction to PMO (UA)
 
Anna Kompanets: PMO Maturity and Continuous Improvement (UA)
Anna Kompanets: PMO Maturity and Continuous Improvement (UA)Anna Kompanets: PMO Maturity and Continuous Improvement (UA)
Anna Kompanets: PMO Maturity and Continuous Improvement (UA)
 
Natalia Folgina: General state of IT talent market (UA)
Natalia Folgina: General state of IT talent market (UA)Natalia Folgina: General state of IT talent market (UA)
Natalia Folgina: General state of IT talent market (UA)
 

Último

APRIL2024_UKRAINE_xml_0000000000000 .pdf
APRIL2024_UKRAINE_xml_0000000000000 .pdfAPRIL2024_UKRAINE_xml_0000000000000 .pdf
APRIL2024_UKRAINE_xml_0000000000000 .pdfRbc Rbcua
 
EUDR Info Meeting Ethiopian coffee exporters
EUDR Info Meeting Ethiopian coffee exportersEUDR Info Meeting Ethiopian coffee exporters
EUDR Info Meeting Ethiopian coffee exportersPeter Horsten
 
Onemonitar Android Spy App Features: Explore Advanced Monitoring Capabilities
Onemonitar Android Spy App Features: Explore Advanced Monitoring CapabilitiesOnemonitar Android Spy App Features: Explore Advanced Monitoring Capabilities
Onemonitar Android Spy App Features: Explore Advanced Monitoring CapabilitiesOne Monitar
 
Appkodes Tinder Clone Script with Customisable Solutions.pptx
Appkodes Tinder Clone Script with Customisable Solutions.pptxAppkodes Tinder Clone Script with Customisable Solutions.pptx
Appkodes Tinder Clone Script with Customisable Solutions.pptxappkodes
 
Introducing the Analogic framework for business planning applications
Introducing the Analogic framework for business planning applicationsIntroducing the Analogic framework for business planning applications
Introducing the Analogic framework for business planning applicationsKnowledgeSeed
 
WSMM Technology February.March Newsletter_vF.pdf
WSMM Technology February.March Newsletter_vF.pdfWSMM Technology February.March Newsletter_vF.pdf
WSMM Technology February.March Newsletter_vF.pdfJamesConcepcion7
 
PSCC - Capability Statement Presentation
PSCC - Capability Statement PresentationPSCC - Capability Statement Presentation
PSCC - Capability Statement PresentationAnamaria Contreras
 
trending-flavors-and-ingredients-in-salty-snacks-us-2024_Redacted-V2.pdf
trending-flavors-and-ingredients-in-salty-snacks-us-2024_Redacted-V2.pdftrending-flavors-and-ingredients-in-salty-snacks-us-2024_Redacted-V2.pdf
trending-flavors-and-ingredients-in-salty-snacks-us-2024_Redacted-V2.pdfMintel Group
 
Planetary and Vedic Yagyas Bring Positive Impacts in Life
Planetary and Vedic Yagyas Bring Positive Impacts in LifePlanetary and Vedic Yagyas Bring Positive Impacts in Life
Planetary and Vedic Yagyas Bring Positive Impacts in LifeBhavana Pujan Kendra
 
Horngren’s Financial & Managerial Accounting, 7th edition by Miller-Nobles so...
Horngren’s Financial & Managerial Accounting, 7th edition by Miller-Nobles so...Horngren’s Financial & Managerial Accounting, 7th edition by Miller-Nobles so...
Horngren’s Financial & Managerial Accounting, 7th edition by Miller-Nobles so...ssuserf63bd7
 
Jewish Resources in the Family Resource Centre
Jewish Resources in the Family Resource CentreJewish Resources in the Family Resource Centre
Jewish Resources in the Family Resource CentreNZSG
 
Guide Complete Set of Residential Architectural Drawings PDF
Guide Complete Set of Residential Architectural Drawings PDFGuide Complete Set of Residential Architectural Drawings PDF
Guide Complete Set of Residential Architectural Drawings PDFChandresh Chudasama
 
TriStar Gold Corporate Presentation - April 2024
TriStar Gold Corporate Presentation - April 2024TriStar Gold Corporate Presentation - April 2024
TriStar Gold Corporate Presentation - April 2024Adnet Communications
 
BAILMENT & PLEDGE business law notes.pptx
BAILMENT & PLEDGE business law notes.pptxBAILMENT & PLEDGE business law notes.pptx
BAILMENT & PLEDGE business law notes.pptxran17april2001
 
Church Building Grants To Assist With New Construction, Additions, And Restor...
Church Building Grants To Assist With New Construction, Additions, And Restor...Church Building Grants To Assist With New Construction, Additions, And Restor...
Church Building Grants To Assist With New Construction, Additions, And Restor...Americas Got Grants
 
Memorándum de Entendimiento (MoU) entre Codelco y SQM
Memorándum de Entendimiento (MoU) entre Codelco y SQMMemorándum de Entendimiento (MoU) entre Codelco y SQM
Memorándum de Entendimiento (MoU) entre Codelco y SQMVoces Mineras
 
GUIDELINES ON USEFUL FORMS IN FREIGHT FORWARDING (F) Danny Diep Toh MBA.pdf
GUIDELINES ON USEFUL FORMS IN FREIGHT FORWARDING (F) Danny Diep Toh MBA.pdfGUIDELINES ON USEFUL FORMS IN FREIGHT FORWARDING (F) Danny Diep Toh MBA.pdf
GUIDELINES ON USEFUL FORMS IN FREIGHT FORWARDING (F) Danny Diep Toh MBA.pdfDanny Diep To
 
Driving Business Impact for PMs with Jon Harmer
Driving Business Impact for PMs with Jon HarmerDriving Business Impact for PMs with Jon Harmer
Driving Business Impact for PMs with Jon HarmerAggregage
 

Último (20)

APRIL2024_UKRAINE_xml_0000000000000 .pdf
APRIL2024_UKRAINE_xml_0000000000000 .pdfAPRIL2024_UKRAINE_xml_0000000000000 .pdf
APRIL2024_UKRAINE_xml_0000000000000 .pdf
 
EUDR Info Meeting Ethiopian coffee exporters
EUDR Info Meeting Ethiopian coffee exportersEUDR Info Meeting Ethiopian coffee exporters
EUDR Info Meeting Ethiopian coffee exporters
 
Onemonitar Android Spy App Features: Explore Advanced Monitoring Capabilities
Onemonitar Android Spy App Features: Explore Advanced Monitoring CapabilitiesOnemonitar Android Spy App Features: Explore Advanced Monitoring Capabilities
Onemonitar Android Spy App Features: Explore Advanced Monitoring Capabilities
 
Appkodes Tinder Clone Script with Customisable Solutions.pptx
Appkodes Tinder Clone Script with Customisable Solutions.pptxAppkodes Tinder Clone Script with Customisable Solutions.pptx
Appkodes Tinder Clone Script with Customisable Solutions.pptx
 
WAM Corporate Presentation April 12 2024.pdf
WAM Corporate Presentation April 12 2024.pdfWAM Corporate Presentation April 12 2024.pdf
WAM Corporate Presentation April 12 2024.pdf
 
Introducing the Analogic framework for business planning applications
Introducing the Analogic framework for business planning applicationsIntroducing the Analogic framework for business planning applications
Introducing the Analogic framework for business planning applications
 
WSMM Technology February.March Newsletter_vF.pdf
WSMM Technology February.March Newsletter_vF.pdfWSMM Technology February.March Newsletter_vF.pdf
WSMM Technology February.March Newsletter_vF.pdf
 
PSCC - Capability Statement Presentation
PSCC - Capability Statement PresentationPSCC - Capability Statement Presentation
PSCC - Capability Statement Presentation
 
The Bizz Quiz-E-Summit-E-Cell-IITPatna.pptx
The Bizz Quiz-E-Summit-E-Cell-IITPatna.pptxThe Bizz Quiz-E-Summit-E-Cell-IITPatna.pptx
The Bizz Quiz-E-Summit-E-Cell-IITPatna.pptx
 
trending-flavors-and-ingredients-in-salty-snacks-us-2024_Redacted-V2.pdf
trending-flavors-and-ingredients-in-salty-snacks-us-2024_Redacted-V2.pdftrending-flavors-and-ingredients-in-salty-snacks-us-2024_Redacted-V2.pdf
trending-flavors-and-ingredients-in-salty-snacks-us-2024_Redacted-V2.pdf
 
Planetary and Vedic Yagyas Bring Positive Impacts in Life
Planetary and Vedic Yagyas Bring Positive Impacts in LifePlanetary and Vedic Yagyas Bring Positive Impacts in Life
Planetary and Vedic Yagyas Bring Positive Impacts in Life
 
Horngren’s Financial & Managerial Accounting, 7th edition by Miller-Nobles so...
Horngren’s Financial & Managerial Accounting, 7th edition by Miller-Nobles so...Horngren’s Financial & Managerial Accounting, 7th edition by Miller-Nobles so...
Horngren’s Financial & Managerial Accounting, 7th edition by Miller-Nobles so...
 
Jewish Resources in the Family Resource Centre
Jewish Resources in the Family Resource CentreJewish Resources in the Family Resource Centre
Jewish Resources in the Family Resource Centre
 
Guide Complete Set of Residential Architectural Drawings PDF
Guide Complete Set of Residential Architectural Drawings PDFGuide Complete Set of Residential Architectural Drawings PDF
Guide Complete Set of Residential Architectural Drawings PDF
 
TriStar Gold Corporate Presentation - April 2024
TriStar Gold Corporate Presentation - April 2024TriStar Gold Corporate Presentation - April 2024
TriStar Gold Corporate Presentation - April 2024
 
BAILMENT & PLEDGE business law notes.pptx
BAILMENT & PLEDGE business law notes.pptxBAILMENT & PLEDGE business law notes.pptx
BAILMENT & PLEDGE business law notes.pptx
 
Church Building Grants To Assist With New Construction, Additions, And Restor...
Church Building Grants To Assist With New Construction, Additions, And Restor...Church Building Grants To Assist With New Construction, Additions, And Restor...
Church Building Grants To Assist With New Construction, Additions, And Restor...
 
Memorándum de Entendimiento (MoU) entre Codelco y SQM
Memorándum de Entendimiento (MoU) entre Codelco y SQMMemorándum de Entendimiento (MoU) entre Codelco y SQM
Memorándum de Entendimiento (MoU) entre Codelco y SQM
 
GUIDELINES ON USEFUL FORMS IN FREIGHT FORWARDING (F) Danny Diep Toh MBA.pdf
GUIDELINES ON USEFUL FORMS IN FREIGHT FORWARDING (F) Danny Diep Toh MBA.pdfGUIDELINES ON USEFUL FORMS IN FREIGHT FORWARDING (F) Danny Diep Toh MBA.pdf
GUIDELINES ON USEFUL FORMS IN FREIGHT FORWARDING (F) Danny Diep Toh MBA.pdf
 
Driving Business Impact for PMs with Jon Harmer
Driving Business Impact for PMs with Jon HarmerDriving Business Impact for PMs with Jon Harmer
Driving Business Impact for PMs with Jon Harmer
 

Іван Дульнявка. Крос-платформенна розробка на Adobe air: за і проти?

  • 1. Cross-platform apps with Adobe AIR Yes or No? Lviv Mobile Development Day 2013 Thursday, September 19, 13
  • 2. Audience • Decision Makers • Mobile Developers Thursday, September 19, 13
  • 3. Why Adobe AIR? • Full cross-platform solution • Web/Desktop/Mobile (iOS/Android/BB) • Adobe dropped mobile Flash? • ActionScript developers are still there Thursday, September 19, 13
  • 6. Why Adobe AIR? Check sheet Desktop iOS Android Thursday, September 19, 13
  • 7. Service Desk (Proof of concept/Alpha) Tablet Web Phone Why Adobe AIR? Thursday, September 19, 13
  • 8. How to deal with UI? Is Flex UI good? Flex UI is not Native for most platforms Runs in Flash Player or AIR Skinning rulez!!! Thursday, September 19, 13
  • 9. How to deal with UI? Is Flex UI good? Flex UI is Native for BlackBerry BlackBerry 10 and Palybook OS have AIR runtime built-in Thursday, September 19, 13
  • 10. How to deal with UI? Is Flex UI good? Flex UI is not Native for OS (remember BlackBerry?) • Pros • Same UI for all platforms • Less training / support cost for big corporates • Cons • UI has to be perfectly designed to be adopted Thursday, September 19, 13
  • 11. Specifics of Flex Requires AIR runtime •Pros: • Same codebase for all platforms • Number of distribution options •Cons: • Performance issues, like with any other non-native solution •Other: • AIR runtime may be built in with executable Thursday, September 19, 13
  • 12. Performance? • UI is slow • Collections are common but not fast • High memory usage (AIR runtime) Thursday, September 19, 13
  • 13. Slower than Native in most some cases Math calculations are faster than native code on iPad! Example: f1(x) = 5.4321 * x 2 + 9.8765 * x f2(x) = 5.4321 * cos(x) • Results for 1,000,000 cycles: C++ Builder XE4 C++ (XCode) Java (Eclipse) Flex Web Windows/Chrome 5156 ms 6819 ms iPad2 24950 ms 26062 ms iPad4 21306 ms 14064 ms Nexus 7 14395 ms 18345 ms Performance? Thursday, September 19, 13
  • 14. Performance? Surflex var sql:Surflex = new Surflex(); sql.CreateTable("Product", "ProductId", Product.generateTestData()); sql.CreateIndex("Product", "CategoryId"); sql.CreateTable("Category", "CategoryId", Category.generateTestData()); sql.CreateTable("Order", "OrderId", Order.generateTestData()); sql.CreateTable("OrderItem", "OrderItemId", OrderItem.generateTestData()); sql.CreateIndex("OrderItem", "ProductId"); sql.CreateIndex("OrderItem", "OrderId"); sql.Insert("Order", new Order(4, "NO 000459", null)); var orderItem:OrderItem = new OrderItem(15, 4, 8, 8, 400); sql.Insert("OrderItem", orderItem); orderItem.Price -= 100; sql.Update("OrderItem", orderItem); sql.Delete("Order", function(order:Order):Boolean{return order.OrderId == 4;}); sql.CreateTable("Category2", "CategoryId", Category.generateTestData()); var result:Array; result = sql.Select("SELECT Category.Name AS Category, Product.Name AS Product, OrderItem.Quantity AS Quantity"         + ", OrderItem.Price AS Price, Category2.* AS Mistake"         + " FROM Category"         + " INNER JOIN Product ON Category.CategoryId = Product.CategoryId"         + " INNER JOIN OrderItem ON Product.ProductId = OrderItem.ProductId"         + " INNER JOIN Order ON OrderItem.OrderId = Order.OrderId"         + " LEFT JOIN Category2 ON Product.ProductId = Category2.CategoryId"         + " WHERE Product, Order"         + " ORDER BY Category ASC, Product DESC", new <Function>[                 function(product:Product):Boolean{return product.Status;},                 function(order:Order):Boolean{return order.OrderId == 2;}         ]); Data: 7 collections of 1-100K items each.  Goal: find items based on some criteria. Standard for loops: 4000 ms Surflex query: 650 ms Thursday, September 19, 13
  • 15. Performance? Collections • Use proper Collections Thursday, September 19, 13
  • 16. Performance? Other ways to improve • Control memory usage with Profiler • Use proper Collections: Array & Vector vs ArrayCollection • Use optimized search algorithms (e.g. binary search) to find item instead of “brute force” for each • Surflex does its job • Match class definitions when loading from server • Read performance tuning tips / best practices Thursday, September 19, 13
  • 17. How to get data? Backend? • ADEP (Adobe Digital Enterprise Platform) / LiveCycle ES4 • Data access with no line of Java code • Expensive • BlazeDS • Java backend • Free (reduced ADEP) • Web services • XML/AMF (FluorineFx) Thursday, September 19, 13
  • 19. Useful links • Adobe Mobile Development: http://www.adobe.com/devnet/devices/mobile-apps.html • Adobe AIR Developer Center: http://www.adobe.com/devnet/air.html • Tour de Flex: http://www.adobe.com/devnet-archive/flex/tourdeflex/ • Surflex: https://code.google.com/p/surflex/ • ADEP/LiveCycle: http://www.adobe.com/solutions/customer-experience/enterprise- platform.html • BlazeDS: http://livedocs.adobe.com/blazeds/1/blazeds_devguide/ • FluorineFx: http://www.fluorinefx.com • iOS Theme for Flex Mobile: http://blogs.adobe.com/jasonsj/2011/06/ios-theme-for- flex-mobile-projects-proof-of-concept.html • Conqu: http://conqu.com • 500px: http://500px.com/ Thursday, September 19, 13
  • 20. About Ivan Dulnyavka Contacts: email: ivand@devcom.com Skype: id_skype_ in: http://www.linkedin.com/in/idulnyavka Thursday, September 19, 13