Mitä näet tässä?
IoT: Kehittäjän tulee nähdä ja ajatella API -rajapintaa API API API API EMS
Sovelluskehitys eri alustoille yhdellä lähdekoodilla mobiili- ja IOT-laitteissa? Juha Piispa JPiispa@moonsoft.fi Ketteryyttä ja tehokkuutta nopeasti muuttuvaan IOT-maailmaan
Moonsoft sertifioitua osaamista Toimisto Graafiset Sovelluskehitys Tietoliikenne Tietoturva Tekniset/Tieteelliset
Vendor Tool Approach for Targeting Multiple Devices $ $ $ $ Objective-C Java C# or C++ C++ or Obj-C ios SDK Android SDK.NET or MFC OSX SDK multiple languages, multiple codebases, multiple testing
Windows developers must deliver mobile apps on ios and Android and continue to support Windows What mobile platforms are most important for your users to have applications for? Will you still be required to develop and support your existing Windows applications? Android Apple ios 67% 83% Yes, we will continue all development and support for the 95% Windows Phone Windows RT 33% 17% We will provide support only, no new features 4% BlackBerry Other 14% 4% No, we will cease development and support of Windows 1% 6
85% say native apps are best for users Do you believe natively compiled apps deliver a better user experience and performance than a scripted/interpreted language solution (i.e. HTML5, Java, JavaScript, Python, etc.)? No 15 % Yes 85 %
95% see value in common source code for mobile and desktop Would it be valuable to have a tool that would allow you to use common source code to produce both desktop applications and native mobile apps with a single development effort? No 5 % Yes 95 %
Multi-Device True Native Multi-Device True Native Embarcadero Intel Single Device True Native Apple Google Microsoft Multi Device Scripted HTML5 and JavaScript
The biggest mistake we made as a company was betting too much on HTML5 as opposed to native Mark Zuckerberg - Facebook CEO Apple unbundling the (Java) runtime will erase a large number of security vulnerabilities AppleInsider 2011 "One of the biggest advantages we've gained from building on native ios has been the ability to make the app fast. Jonathan Dann Facebook 2012 "We are currently unaware of a practical solution to this (Java vulnerability) problem U.S. Department of Homeland Security 2013
App Tethering Expand your existing Windows apps to mobile devices Mobile companion apps Control and interact with existing Windows apps from mobile apps Simple communication components on each side
Sensor Components Sensor framework Sensor components Location Sensor (GPS) Motion Sensor (Accelerometer) Orientation Sensor (Gyroscope) Same across all platforms
The Internet of Things Component and Framework library Bluetooth LE devices Proximity apps with Beacons REST/HTTP device interfaces Supported across OS(s)
APPANALYTICS For RAD Studio and Visual C++
AppAnalytics 15 Capture anonymous usage stats from your customers, understand users behavior No tracking of user data Used also by RAD Studio IDE Hosted by Embarcadero as payper-use service (SaaS)
AppAnalytics for Visual Studio Available via NuGet AppAnalytics is the first analytics service for C++ and MFC applications https://www.nuget.org/packages/appanalytics
IoT for Enterprise Things near a computer Things near your user Any Cloud service Or API Any Enterprise Data or Service EMS Server User Auth API Hosting Enterprise Data Access Data storage IOT Device Access Control Wifi/Bluetooth Bridging Push Notifications Things near your EMS Server 18
EMS Analytics 19
Beacons
Sample Use Case: Retail Store Beacon Deployment Customer uses store app on his smartphone Store app has historical sales data As the customer moves through the store, personalized information is displayed in the app through push notifications based on the user s past shopping behaviors For example, as the customer enters the handbag zone, handbag offers are shown in the app As the customer picks up a purse near a specific beacon, info about the bag manufacturer is shown in the app Reference Image: Macy s Beacon Use Source: Google Images
What Can You Do with Beacons? Your proximity app can: Find nearby beacons Determine how close it is to a beacon Know the identify of the beacon UUID, Major, Minor Enter/exit a beacon range Limited to BLE signal distance Take some action based on seeing the beacon
BeaconFence Developer proximity solution GPS-free, for indoor and outdoor Flexible geometric and radial zones Easy to use events OnZoneEnter
Cloud Connectivity is a Foundation Amazon AWS and Microsoft Azure on the growth trajectory More business players getting into Cloud and BaaS Backend As a Service mobile providers Data Connectivity is a given Local caching is a big plus
Hyper-Connected Connect native client platforms, mobile extensions, smart devices, cloud services, Enterprise and embedded data
MultiDevice Deliver single-source user interfaces across multiple form factors with FireUI Natively compile for desktop and mobile
Multi-Monitor Support in the IDE 29
Designer Previews Live Previews for mobile and desktop platforms Preview the UI on different form factors as you create it
Oikeiden fonttien käyttö Web-fonttien nykyaikaa on oikein fonttitiedostojen käyttö. Siinä sivustolla käytettävä fontti ladataan käyttäjän tietokoneelle, ja selain käyttää sitä kuten tähän asti Arialia ja Verdanaa. Fontti näkyy yhtä hyvin kuin mikä tahansa fontti, mikäli selain tukee fontin latausta. Valitsemalla fontin perinteisen turvajoukon ulkopuolelta suunnittelija voi avata aivan uuden tason näyttävyydessä ja visuaalisessa yhteneväisyydessä esim. yrityksen muuhun ilmeeseen. Kun fontti istutetaan sivustoon kuvatuilla uusilla menetelmillä, pysyy hakukonenäkyvyys kunnossa ja uuden sisällön luominen ei tuota harmaita hiuksia graafikko-osastolla. Comic Sansin voi vihdoin korvata silmää miellyttävällä fontilla 31
MUISTA Kun teet käyttöliittimiä eri alustoihin, erilaisiin näyttöihin sekä useita eri kokoja, niin muista 2 asiaa 1.Käytettävyys : looginen ja käyttäjää opastava käyttö. Älä kikkaile ellei ole hyvä syy 2.Luettavuus/selkeys: Et voi tietää millaisia laitteita on 2-vuoden kuluttua - Ei tehdä toista Y2K ongelmaa, Esim autojen käyttöikä ja Android ohjelma! 20-30 vuotta käytössä! 50% Suomen suosituimmista web-sivuista luottaa Arialiin (oletusfontti). MIKSI? (Moonsoft selvitys 10/2014) Arial / Helvetica fontin ongelmia pienellä näytöllä 32
Mistä ja miten oikeat fontit käyttöön? Fontteja valittaessa tulee huomioida ainakin: - Missä käytetään? - Noudattaako se annettuja ohjeistuksia? Powerpoint, web-sivut (teksti/kuvat), sharepoint, printti-media jne - Mitkä päätelaitteet käytössä? 2k/4K/8K resoluutiot tulevat - Mikä on käyttöikä ja kohderyhmä?
Pidetään ohjelmistoratkaisut yksinkertaisina