Bestand wählen
Merken

Building Mobile Applications with Ember

Zitierlink des Filmsegments
Embed Code

Automatisierte Medienanalyse

Beta
Erkannte Entitäten
Sprachtranskript
home
so everybody's out of about building local would ever the apologies value on on stage I think everybody's kind of having trouble staying awake at the moment so it's not you so who my beyond amber for about 3 years now before that like everybody I sort of Java and C has been a couple years writing goes well which I still really enjoy doing in my 2nd ever embarek was accorded the based application which is what kind of this fascination but I promises will be the only holiday work for a company called i'll could we basically specialize in building number of private applications that's what we do I would mostly based in drug we have an office in Chicago now as well will see some of the more generic number 1 I'm always hiring always looking for new people to work with so the reason I want this talk today is like a lot of people have gone and built and recorded for applications before you build something called over and just didn't work right it just
felt that little bit out of reach you couldn't do what it is that you need to do good them the so we're going to
talk about today is a little bit of a preamble to sometimes of what we're doing we're going to that actually build the emperor include replication gather what tools we used what that answer out there a little bit of the basics as well you how we had this last reason I want to the number and the basic changes the tomato and brack was going to close off with performance and having these things at least those close to native as possible and so what I wanna do this obviously because Amber Amber fun it's nice to act out 1 of the reasons those talk about with clients is like the float as well it's it's much easier to go and find a single Amber developers induced find developers every platform major technical maybe that's not so much of a problem that these for us a lot of people we work with our technical and recruiting is a very big problem for them as a result to make that as simple as we can so this picture and this but the most people here the difference between quotas from going the K not many so for those who don't it would be fair to say that fun gap implements code code over is that core engine that wraps with you and creates a native application also has the CEO and the basic plugin ecosystem forget this Adobe's basically proprietary service on top that gives you build services some extra out on some extra plug ins and stuff like that are historically was always called again that basically the Apache Foundation stuff started unison trademark things happen they need change and going touch that discussion about every time I do the trolls out Twitter that so last when the preamble is that you building good mobile app is basically is writing the code to start with and but there's no room magic bullet because we're dealing in mobile especially when dealing with over which is basically just a web browser anyway but I think a lot of people just get used to being lazy is the desktop does let away with just some was practices it's always make a point as well so that you know it doesn't was far more powerful than a mobile phone but it will in the benchmarks now and mobile safaris actually outperforming desktop from in a lot of JavaScript benchmarks of that's not necessarily the case anymore either so getting in the row content had we build these acts so in the old days this is how I started to build just a kludgy file I don't remember build copy things over and rank order for built forests then later in this library called embassy I could over the thought of before what it did was it automated but that file daily let you run your embassy the building of a local built with applications for you and also included library of which you could do code over but it may be easy to do that while you're running an our so a couple weeks ago we decided to fork that we would be helping out maintaining it in writing new features in the last 6 months or so of we decided to create a and the reason for that was twofold ones would been doing some broader platforms what we needed to destroy backwards compatibility and you can't really do that with an established Rico that is we started hacking more more we just said adding a lot of new features and a lot of things we want to see in C or whatever for a long time that's where did default and what the change so we refactored all the internals and tarsal knowledge of canonical and Brad unstructured and we actually inherent house of anonymous functions and by default it doesn't include any assumptions as to how you're writing Amber there's no in assumption that using mobile touch Hammer time for anything like that that's on you the only assumptions we make a how you're going to record of we've also added support which I'll talk about a little bit later splash screens and icons are 1st class citizens now with added some code over device and platform services which I'll tell you about and also starting to work on a plug-in ecosystem specifically for code over to a taking those core plug-ins like camera writing amber service that will bind them so that you don't need to worry about writing your cost himself are also working on something so you can review embassy deviance told you're ever at will install with the emperor out on and the court of a plugin for you to compare those 2 things together if you have an existing quarter replication you wanna try this out we need to do is move your code over a directed em report of the Special go over everything else is going to what to expect and so we're working on next to small loading binding sweat fixing the test sample still pretty broken before we did the fork but we're working on clean this up as quickly as we can see this is more more plugin bindings the so to get started is pretty simple we run and renewal project is to enable Member report than amber install and recorded but you'll find that in school is going to install quarter for you as well and is going to anita poured over directory as well as our right now because it's too much and read we had very tight assumptions to we're going to place that would package so installing this adds a couple of commands your embassy or lack of all the Member whatever commands adjust and recorded and the CDD if you prefer to do short hand so obviously have a build command what build will do is will run your Amber built for you will then symlink you're just add directory your quota to read every directory and it's going around court of appeal to actually Latin whatever application for you a new composite flights only with the right platform environment whatever you're looking for so we ones with noticing is called for prepare that every title to could over developers it's interesting how people handle put appointments the I've seen people do bash scripts to try and install every point in that they want have gone to projects have a read as you this install these 10 points please if you want where whenever you add a platform or according to code over you can actually append safe flag not say that it's say what that would do is back up and contig XML for you then you can run coded for prepare lexical reinstall every organ every platform for you it is the canonical way to handle that that's what that command will do for you if you're wondering why that's a config XML it's honestly just because quota for predates NDN and there's a plan to migrate to package Jason relatively so last 2 commands worth noting and quota Perceval actually library load on the phone for you and there's some conflict facts if you want the more about it just to the really and Amber code over as well so if you were on a roll could have the command you can this proxy straight through the repo without needing to type CD and recorded so if you truly lazy you can do that as well so in terms of the books we made available we had before after built before and after pair so the moment we're mostly using these 4 things like warning a client there may be doing production building they need to change something or selected index HL modifications those to their use lastly I'm going to talk about in tooling to reduce the
slides us in talk about and tooling is remote inspections of the 1 where this is great little package called the embassy library inspector what will let you do is as you run your code application the phone you can still remember inspectors you can still get inside and see what's going on it's completely worth having a look at the so again the fun stuff handling the basic had we actually build this application what does that look like the 1st thing you need to changes you occasion type must be a hash that's an assumption built and then recorded over Leslie warn you if that's not the case so you be pretty safe this because for the users file-based euros you need passion there no thing you need to change especially if you're developing for IOS if 2 developing from mobile web far you already know this is you need to make sure that your data interactions have a pointer the reason for this is by default safari are mobile Safari specifically will only raise touch events that click events so if you have a quick to touch poly tail it's actually not going to fire so if you change this what happens is far recognize that the courts appointed something that should register on and all of a sudden you're actually going to work again Our this applies anything a link or a but it's generally to saved add that to your CSS and yeah last little is a secular would do is this thing up there are not going to read out of that by default browser will highlight a link to give clicked by default a mobile application does not that's what this piece of CSS handles will make trolling is being clicked is retained its original style the so in terms of handling splashes well assistance splashes a 1st class citizen Mariposa will go installed quotas Flash plugin for you and there are 2 ways you can actually dismiss your splash screen get and how you package them in a 2nd as well by default we propose the use import the splash screen Nixon and what that will do is on your application rounds after model book it will go on high slashed and that's something that you would probably say do a lot of time and I coming next week this is something what would mean about the time of talking you never called that we kind of really decided that it's ready that 7 days ago only hold all nite is basically every day since to try and get out of that's coming soon base you're doing is making sure the icon to be handled by default and the cities you I cannot 2 X. means radical and have my phone 6 or I had to already freezer packaging for just affinities to work in this environments a little bit simpler that's what this is going to look like so the splash screen you can already do today but just in your standard config file gone and pulled over past icon pop splash screen and what devices you want support but the way despite framework as well is that if you're what going up in your scaling up to be a device it's going to figure out what the calls were just on the left and right was pixel and scale up that which is not actually going to scare your image up to retain original dimensions we the so 1 the other things you're going to need to do pretty frequently is understand what platform it is you're dealing with and so this is something that we just completely photos from ionic something they did really really well in our opinion to create a platform so small that would do with what you know when you're writing an ILS with running on an iPad whether it's Android crossfall running in a web viewer browser or something like that it's like anything you just inject that platform service then you see some function you know if this is I was going to go into something different that might not seem very helpful because I find a lot of cases we wanna slightly change something because I was surrendering having that recognition it's very very easy and by the way all the services work with your standard getters and setters and promises so it's built to work with Member versus just returning something straight up if it so we've also gone and added a quarter of the surface and this is for if you need to find the things that are happening inside of code over right somebody press the volume of that the battery is low the battery is critical anything like that so what you again is you can inject the quarter of a so also mixing if you prefer attention it that way then you'll see we just subscribe to write a quarter of a volume of them it can go do whatever we want I know this example shows a rapid again you can inject this review want preferred hand-lettered component or controller knock yourself out if you're wondering what events are available that's basically what you have and the the the so 1 of the things we need to do is figure out how to handle touch events so general will do something that comments hammer initial hammer example in a 2nd if your native to Emory you can obviously going use your hammer times your mobile touches or having whatever version of dealing with as well a going ashore on our example literacy think kind get a feel for what you can change as you can see actually took the screenshot with a transparent background throwing some horrible error in the background that is the way to start and you have a manager and we're registering attacked a press and hold or cancer were registering attack is a single once we catch get double-tap a triple tap whatever it is we're looking for you know we where Presley defining that as you holding for 800 ms and hand we drop the listeners and we're going to fire events just as if somebody clicks so 1 the things you need to be aware of as well as held device ready what's in this fall but if you don't then we what device ready is something that fires encoded say hey put of the Spanish brooding we're ready it's now safety gone wrong whatever it is we wanna run and a lot of times JavaScript developers they're afraid of using device ready because the word don't drop the listener after device readies is already fired a device for it is actually a special case in the sense that even if you drop a listener wants devices ready it's going to fire immediately for this reason so where this really applies to you is if you're building initialize around a plug great example would be pushed notifications we need to register Yankees you can't do that until the device is ready to embrace the meeting at the same time so make sure you go every initializer and his wraparound some of device ready book but what's just like any other lists so 1 of the other things you're going to want to old timers interact with people you might want closer keyboard in certain cases of Americans have an awareness of what's going on at again we've gone and fault the ionic keyboard but it's pretty pretty good and you can see we go here the keyboard on did show on did height and also the Board of show what people don't hide and
while we're talking about keyboards this is you know 1 of the more important points really in hybrid a lot of the pollution that image the left is correct when the keyboard is open our viewport size doesn't change but that's actually not the case once the keyboard is popular and you're going to find new report sizes change relative to how much space the keyboards using and this just fractures a lot of developers because all of a sudden when you reflow everything on the screen gets 30 % more of 48 cents more your under and what's going on so how do we handle this for and
it's relatively simple use 1 add these 2 settings your config XML and that's going to make sure that instead of the keyboard resizing the viewport cables going to at the people which is exactly what we wanted was cases for less that's a little bit more complicated so you probably just wanna go and use the keyboard player with written it's all documents in the readme and this is actually worked on by Chris mostly or transpired at what he did was he went in they show that when the body container for based on the keyboard is the body contain will maintain state for so you're going to be completely protected from that
the so 2 tools like before we get formants just use liquid fire so it's being talked about all based on a pretty good example but what I will tell you is that when you're dealing in a court of environment liquid fire runs completely 5 and it there's no choppiness it's a smooth is 1 to be and again you through the kind of
about sorting some not going to go too deep into it but infinite scroll you smoke and mirrors that was completely find the phone again back you really do using some of so getting in the fund that knowledge is performance right how we make sure these apps actually efficient having Mitchell there may be comparing the performance of the native application so the 1st thing you but we will look at is this library called crosswalk you offer me with what crosswalk is specially built by Intel conditional trying to do this is kind of a quarter of a competitor pronounce something people package much more with quotas for instead of exclusively for entering the downside is will added that 20 megabytes your size for your size I don't really think that matters to be honest if you're dealing with you know crappy 3 G connections when people are downloading that might be a bit of a problem but it gives you to get but both give the kids is actually standardizes the inner browser on Android if you 1 where different versions of Android come packaged with completely different versions the inner browser but unlike on the across the web view but unlike I fraction change that's not against entrance the service to put something better into application of opposition Andrew 440 going to find it is actually terrible when you it's really slippage up descriptor we have identified a 10 x form speed or performance this just by implementing crosswalk on those devices the other thing it gives user going to find because of the difference in whether use your sister truly going to pass slightly differently based on what and where you're dealing with 1 install cross-talk you're dealing with a consistent platform again gently to stop changing your CSS based on the platform novel when I was growing up is just know which when you're dealing in especially in Ny-Ålesund have to you I you your WK with you but if you're not familiar with the directly with you is a new 1 and actually implements a new when I true engine i which is far more performance were found just by implementing a W K with you from allowed to this led to about 20 % performance boost in just any application that I'm shipping with Amber so make sure you operate that it is to get which version by was is that basically you're going with anything older than a 5 you can go on and monitor became when you that had a lot of cases where kinds of answers come in and you do performance on of all them and we fix every problem is by going up the web view but another thing that really will hit your mobile more than other platforms is that using too much memory has really negative implications that's thing or where you generally will make sure that your especially your heap sizes and getting bigger than about 25 to 50 next you hear a lot of conservatives say that when when you get 25 major starting in Figure dangers on multi-pass 50 major discover full of Clifton things going break again it very much especially on android android is the was platform for this is the 1 you need to accommodate the most if you know the real reason for this is the garbage collection general requires about 6 times in my memory you're using to actually be effective so as not using 50 makes we're going somewhere between 300 and 350 and that's something really have available on the phone the the interest in reading more and we wanna see a source that is exactly where the so just to talk a little bit more about memory leaks is well again you're probably leaking on desktop if you're finding the sleeping on the floor it's just going to hurt you so much more when you're making on the phone so in the 8 which is your Android sigh would you can't find the 2 types of garbage collection going on your young generation you're old generation most things stay the young generation right they get collected and they go away so that was the get roughly nights and things will never make it to the old generation the old generation collection is very expensive during the defined as you know some collections going take less than 10 ms this you actually if reasons can take a really long time you don't know what's going on probably an old generation collection and what you need to understand is that every time you know declaring a variable you're basically starting to fill up that you socially conscious about not creating variables and so this is an arbitrary leak
example initially 1 that actually happens in member of this would happen in number because obviously a components going to get destroyed when it goes out if you're writing road java script if you do you know about the new version we have a difficult note on the page then we create a 2nd reference to online to you know and then we put you know that we create a body and remove that node from HTML so we issue right now would just completely cleared up a memory that we haven't because we're maintaining references to that node so to even the dome fragments I'm going to be cleaned up and to remove all the references to that node so 9 5 denote equals now was still not going to be garbage collected because we still maintain 1 reference to that node once we do note again equals now reports and cleared up so to show you this example excuse the
crappy code in the fall but basically copied only example from Google that completely blow up a deal with memory on and the reason for this and so I could get a heap size about 50 69 is just a kind of really see the difference of what you're going to see is that at the top here we have you thought people's this P. this is not how it only code by the way this is just a really fast example on a plane the we're going in creating element cold detached and we're setting those on the component right this stuff that he stops at detached we're going to find is given the you've removed that note from the DOM so again you have been cleaned up once to transition away from that screen that is still going to be maintained the heap size but is because it was before you know that's not going to be collected news stories start leaking in leaking and leaking so make sure especially the paranoid about on your component books or whatever you're going through and knowing references things especially you whether such people's if you don't reference say submit button or some you fragmented going keep interacting with the component make sure you knowing that on the way out you might have some troubles so how do we figure this out if you
not familiar I tend to use the from profiling tools most of because again from is the least efficient platform for this we can work for above 1 needs the most help so just pop open you're moment spectrum press profiles and take each snapshot what that's going to do is go on kind of collect what's been going on and give you an output i issue that looks like on the next page or sometimes right to is if I'm actively developed in testing the page over the recorder heap allocation down the bottom that is going to give you a real-time snapshot of what's been going on agenda on developing into screens I just keep my own screens see something spike in a way I don't expect and that's more preventative right not really looking for anything that's wrong but I'm trying to figure it out before it happens the so once we got out
the profile of a journalist which the containment you it doesn't really matter which 1 you're using it just kind of removes all stuff in the you know of you looking at the Seattle and the window click can Taschen have all of these nodes just not being garbage collected at this point they're completely often nodes they're not going to be collected is just going to now what's memory the whole time so going on that he proposed as much as you can and even need to necessarily know how this works here is really should read into it but if you're seeing that right using a lot of detach nodes it means you probably have a serious problem another example of this is probably
binding you all the time if you wanna where again this comes from our love is if you go on you right register constant inquiry was we have japery on the elements life and the Web binding some type of slot handler if you don't actually by atmosphere on your will be story element on some type of cleanup again that this process can be hanging around forever summation of cone of fire that piece of memory you talk isn't going to be cleaned up until somebody completely false closes and real is the act so you could be really careful about stuff like this I 1 easy way to find out
is to go in a new closures for a better profile so adding by that again put sources on the
bottom of the slide if you're interested in reading more you can just click through but you see online for you know viral function that's completely anonymous functions online 11 recorded functional see what that means is inappropriate files is actually show what is L C so we can start to see the impact of I would really encourage you don't start naming everything that's not all that close much is if you're worried that something's maybe not perform until maybe not as sufficient this is a really easy way to identify that no other
really fast point here you pack size does matter a lot but in terms of how big is this new compiled and replication your shipping a year for Android anything you know from 507 50 kilobytes is generally safe once you're getting over that is going to find degrading performance in the especially on the phone on Friday was senseless problem you 2 megabytes is being completely fine for me prior and again if you kind worry more and how that works good on the bottom there the another little to we're going to use all the time and again you're probably realizing the love this is just a standard web based stuff but it's almost like we're using a tool that disrupts website a native application force so when the performance is something you should be using if you don't know what it does is it lets you register timestamps in your kind of see how long things are taking I've seen people do a pattern for what it is getting timestamps would date stamps minimizing them from each other the section on accurate way to measure time because you know if you're spreads busier something else is going on you're always going to get an accurate to the 2nd representations when the performance is built to give you that you can also use you run Windows formants market Cuauhtemoc certain events and see what was happening at this time right you suppress submit use oppressed bulk upload whatever it is we're trying to do know the performance thing it's so important mobile with maybe doesn't he you on desktop that we've gotta make sure your coalescing your requests you obviously using Amber data please make sure you call us fine request is turned on and that's something which just thrashed the before otherwise and polygon I'm pretty quickly you're going to 1 of the the WebSockets because it is a little bit cleaner a special phone anyway you're going to start the push content out I've had very little absolute built were quite hasn't eventually come back perspective I want you to push something back down the foot all the time to start thinking about that ahead of time and use use WebSockets earlier sometimes speedups with noticeable of lost points and what isn't threads again a little workers presentational it's morning so I'm not going to kind of cover too much content here and but would include environment where workers will really help you there are missing completely isolated right they can exercise for the the plug-ins that can access you window objects phase lot from passing operations no good example have recently was we had a spectrum needed to download an entire uses contact book kind of 911 and send it back to a server once we downloaded from the core of a contact will call that mangling and kind of resubmitting the Ajax requests happened in what book that was completely fine I we took the Polish about 45 seconds down to about 8 seconds despite falling onto a new threat so it's completely worth looking at 1 of the most important things is refloat is just a could they get a quick show of hands who here knows what refill again about half so if you didn't know what reflow is 1 of the most expensive operations that you know your phone is going to be throwing but again this happens in your desktop from desktop safari as well if the browser meaning to go through and geometrically recompute you know what's going on where is that what do I need to repaint accepted but it's something you really would be conscious of avoid as much as possible and you know what causes reflow anytime you resize the browser window you the following in a time you computed styles in joules script in times of manually touching the DOM right you change class you add context to add new data and you know any time we change in its classes so the till the yard here is that's not necessarily your going to start refined that's basically impossible but maybe you're going to start looking at cases where you would toppling fossils and realize that that's not what you want to do they're going to realize you told me a cost the company gets destroyed 3 seconds later anyway this list is not cause that double whammy I had we stop reflows well use your CSS transforms you know sometimes he developed this you know they wanted dragon Oman across screens that doing a position absolute top 0 let's 0 then top 10 left-hand 10 where reflowing every single time if you use a translator xt no translate why functions you're going to find that doesn't reflowable so that's why sometimes developers get so excited about that another really good case so you know sometimes also about reflow you find developers to go ahead and put displaying known elements because they don't wanna show them they don't moving because I think will be expensive but you're still causing a reflow displaying on because you change the past visibility hidden is another special case where want to trigger it you're actually not causing a refill 2 in that scenario where you want take something the page you the components going away in the next you 30 seconds couple minutes anyway German-speaking visibility in going to get what you're looking for not going to cause a reflow it's going to go off the page the
so last point if you need to do animations so again I've seen some people do Jake reanimate I've seen people handle before we generally recommend people use velocity JST part of that 1 of the great things have on this front pages of benchmarking tool we can run all the different animations libraries and run the same animation see form so on the front page here what I'm doing is we have 250 samples and what is going on in the in which a query left to right it is next move
that the so what velocity
does is it just a metrics and at what time intervals but a much more efficient when we're on the same animation the way that the so hopefully you just kind of got a
basic overview on how will be square for amplicon applications Anderson basic performance steps that's it thank you very much thank my
Videokonferenz
Momentenproblem
Code
Applet
Mobiles Internet
Zahlenbereich
Gebäude <Mathematik>
Kartesische Koordinaten
Office-Paket
Resultante
Offene Menge
Bit
Punkt
Momentenproblem
Browser
Versionsverwaltung
Datenmanagement
Kartesische Koordinaten
Maschinensprache
Ranking
Eins
Erneuerungstheorie
Client
Softwaretest
Code
Existenzsatz
Fahne <Mathematik>
Datenreplikation
Skript <Programm>
Gleitendes Mittel
Default
Benchmark
Softwaretest
App <Programm>
Lineares Funktional
Schnelltaste
Softwareentwickler
Installation <Informatik>
Gebäude <Mathematik>
Mobiles Internet
Biprodukt
Bildschirmsymbol
Brennen <Datenverarbeitung>
Dienst <Informatik>
Twitter <Softwareplattform>
Verschlingung
Rechter Winkel
Automatische Indexierung
Schwimmkörper
Projektive Ebene
Bildschirmsymbol
Programmierumgebung
Verzeichnisdienst
Repository <Informatik>
Lesen <Datenverarbeitung>
Proxy Server
Maschinenschreiben
Server
Subtraktion
Hyperbelverfahren
Selbst organisierendes System
Mathematisierung
Klasse <Mathematik>
Automatische Handlungsplanung
Content <Internet>
Zahlenbereich
Gebäude <Mathematik>
Dienst <Informatik>
Systemplattform
Term
Code
Datensatz
Stichprobenumfang
Datentyp
Programmbibliothek
Mobiles Internet
Inhalt <Mathematik>
Softwareentwickler
Konfigurationsraum
Touchscreen
Wald <Graphentheorie>
Default
Systemplattform
Einfache Genauigkeit
Gibbs-Verteilung
Plug in
Elektronische Publikation
Hybridrechner
Schnelltaste
Touchscreen
Last
Speicherabzug
Verkehrsinformation
Bit
Punkt
Browser
Versionsverwaltung
Kartesische Koordinaten
Raum-Zeit
Komponente <Software>
Notepad-Computer
Tropfen
Default
App <Programm>
Lineares Funktional
Zentrische Streckung
Schnelltaste
Mobiles Internet
Systemaufruf
Programmierumgebung
Humanoider Roboter
Zeiger <Informatik>
Ein-Ausgabe
Kontextbezogenes System
Bildschirmsymbol
Mustererkennung
Ereignishorizont
Gruppenoperation
Rechenschieber
Dienst <Informatik>
Verbandstheorie
Verschlingung
Rechter Winkel
Maschinenschreiben
Bildschirmsymbol
Programmierumgebung
Fehlermeldung
Standardabweichung
Maschinenschreiben
Hash-Algorithmus
Hausdorff-Dimension
Klasse <Mathematik>
Mathematisierung
Interaktives Fernsehen
Unrundheit
Dienst <Informatik>
Systemplattform
Term
Whiteboard
Viewer
Code
Framework <Informatik>
Informationsmodellierung
Benutzerbeteiligung
Digitale Photographie
Flächentheorie
Hash-Algorithmus
Datentyp
Programmbibliothek
Mobiles Internet
Schwellwertverfahren
Affiner Raum
Zusammenhängender Graph
Spezifisches Volumen
Hybridrechner
Zeiger <Informatik>
Softwareentwickler
Ereignishorizont
Konfigurationsraum
Bildgebendes Verfahren
URL
Modul
Touchscreen
Pixel
Default
Cursor
Systemplattform
Mailing-Liste
Plug in
Elektronische Publikation
Binder <Informatik>
Sichtenkonzept
Summengleichung
Schnelltaste
Gamecontroller
Wort <Informatik>
Personal Area Network
Verkehrsinformation
Humanoider Roboter
Schnelltaste
Bit
Funktion <Mathematik>
Schnelltaste
Menge
Default
Flüssiger Zustand
Indexberechnung
Flüssiger Zustand
Programmierumgebung
Konfigurationsraum
Aggregatzustand
Humanoider Roboter
Bit
Browser
Applet
Mathematisierung
Versionsverwaltung
Schreiben <Datenverarbeitung>
Zahlenbereich
Kartesische Koordinaten
Maschinensprache
ROM <Informatik>
Systemplattform
Homepage
Unendlichkeit
Leck
Knotenmenge
Benutzerbeteiligung
Bildschirmmaske
Variable
Speicherbereinigung
Typentheorie
Datentyp
Programmbibliothek
Skript <Programm>
Kontrollstruktur
Zusammenhängender Graph
Figurierte Zahl
Leck
Einfach zusammenhängender Raum
Bruchrechnung
App <Programm>
Sichtenkonzept
Browser
Programmierumgebung
Humanoider Roboter
Quellcode
Sichtenkonzept
Widerspruchsfreiheit
Dienst <Informatik>
Generator <Informatik>
Rechter Winkel
Festspeicher
Energieerhaltung
Speicherverwaltung
Speicherbereinigung
Innerer Punkt
Ebene
Betriebsmittelverwaltung
Subtraktion
Momentenproblem
Gruppenoperation
Element <Mathematik>
Systemplattform
Punktspektrum
Code
Homepage
Metropolitan area network
Datensatz
Minimum
Skript <Programm>
Zusammenhängender Graph
Touchscreen
Funktion <Mathematik>
Default
Applet
Profil <Aerodynamik>
Gruppenoperation
Echtzeitsystem
Rechter Winkel
Offene Menge
Festspeicher
Speicherverwaltung
Zentraleinheit
Speicherverwaltung
Videospiel
Punkt
Prozess <Physik>
Gewichtete Summe
Element <Mathematik>
IRIS-T
Profil <Aerodynamik>
Element <Mathematik>
Komponente <Software>
Knotenmenge
Benutzerbeteiligung
COM
Festspeicher
Bildschirmfenster
Datentyp
Drucksondierung
Lineares Funktional
Algebraisch abgeschlossener Körper
Funktion <Mathematik>
Existenzaussage
Algebraisch abgeschlossener Körper
Minimum
Profil <Aerodynamik>
Quellcode
Lineares Funktional
Elektronische Publikation
Bit
Punkt
Browser
Selbstrepräsentation
Element <Mathematik>
Maschinensprache
Homepage
Datenreplikation
Minimum
Bildschirmfenster
Mustersprache
Translation <Mathematik>
Skript <Programm>
Zeitstempel
Nichtlinearer Operator
Lineares Funktional
Softwareentwickler
Element <Gruppentheorie>
Abfrage
Humanoider Roboter
Kontextbezogenes System
Ereignishorizont
Arithmetisches Mittel
Betrag <Mathematik>
Forcing
Rechter Winkel
Server
Garbentheorie
Programmierumgebung
Geschwindigkeit
Web Site
Subtraktion
Klasse <Mathematik>
Kombinatorische Gruppentheorie
Term
Punktspektrum
Überlagerung <Mathematik>
Benutzerbeteiligung
Bildschirmmaske
Socket
Perspektive
Stichprobenumfang
Programmbibliothek
Zusammenhängender Graph
Thread
Inhalt <Mathematik>
Integraloperator
Softwareentwickler
Touchscreen
Zwei
Browser
Mailing-Liste
Plug in
Objektklasse
Objekt <Kategorie>
Thread
Mereologie
Speicherabzug
Videokonferenz
Geschwindigkeit
ATM
Kartesische Koordinaten
Dienst <Informatik>
Ereignishorizont
Menge
Geschwindigkeit

Metadaten

Formale Metadaten

Titel Building Mobile Applications with Ember
Serientitel Ember Conf 2016
Autor Blom, Alex
Lizenz CC-Namensnennung - Weitergabe unter gleichen Bedingungen 3.0 Unported:
Sie dürfen das Werk bzw. den Inhalt zu jedem legalen und nicht-kommerziellen Zweck nutzen, verändern und in unveränderter oder veränderter Form vervielfältigen, verbreiten und öffentlich zugänglich machen, sofern Sie den Namen des Autors/Rechteinhabers in der von ihm festgelegten Weise nennen und das Werk bzw. diesen Inhalt auch in veränderter Form nur unter den Bedingungen dieser Lizenz weitergeben.
DOI 10.5446/34689
Herausgeber Confreaks, LLC
Erscheinungsjahr 2016
Sprache Englisch

Inhaltliche Metadaten

Fachgebiet Informatik
Abstract It is possible to create performant mobile applications with Ember and Cordova, and to achieve this with your existing Ember application. But most peoples first hybrid experience is seeing serious performance issues and stop ("It doesn’t feel native"). This talk will serve beginner and intermediate Ember developers looking to extend their application to mobile. It will touch on both the best tools in the Ember ecosystem, and best practices for optimization and performance.

Ähnliche Filme

Loading...
Feedback