Breaking the Kubernetes Kill Chain: Host Path Mount
Lessons Learned From Applications That Kicked Titanium's Ass
1. Lessons Learned from apps that kicked Titanium’s ass Kevin Whinnery @kevinwhinnery
2. Agenda Some Cool Titanium Applications Problems we saw (and how we fixed them) Titanium application structure: CommonJS modules and Custom Components Demo and code walkthrough Q&A
3. Some Cool Titanium Applications NBC iPad Application Late Night with Jimmy Fallon GetGlue Wunderlist Many many more
8. “WORE” Fallacy Don’t aim for 100% code re-use, because it’s not going to happen (not even on the web) For many apps, you can get by with branching logic For complex experiences, re-use components, not your entire set of UI code Custom components offer the best cross-platform re-use If your app is made up of small chunks, each chunk will be easier to maintain cross-platform
9. Cross-Platform Parity/Compatibility Probably the most annoying thing about our platform - We’re writing specs to drive testing/implementation for 2.0 - First spec implementation will be with layouts in 1.8 Cross-platform testing essential Should plan on platform differences, however – check NavigationController demo for one example
10. Memory Management No explicit memory management API Lots of views (images especially) === lots of memory Unsure when Titanium cleans up
15. Dealing with slow load times JavaScript evaluation is the slowest part of your application Defer script loading until absolutely necessary Don’t load the same script over and over again in a context
16. Multiple Contexts Kitchen Sink model Data sharing is hard When was code run?
21. Code structure Many ways to skin that cat Appcelerator will have a more formal solution soon Your best bet is to build a suite of components Demo/Code Walkthrough