Who Am i?
• My name is Ben Bishop (Twitter: @benjamminstl)
• I grew up in a small rural town of Indiana
• Went to Purdue University
• Now lives in Saint Louis
• Been independent for 4+ years
• Worked at an agency for 5 years, 1 year at TMG
WHAT IS A XAMARIN?
“The best damn mobile team,
building the best damn mobile platform.”
What is Mono?
Mono 1.0 was released on June 30, 2004
“The Mono runtime contains a code execution engine that
translates ECMA CIL byte codes into native code and supports a
number of processors: ARM, MIPS SPARC, PowerPC, S390 , x86,
x86-64 and IA-64 for 64-bit modes.”
Also has support for LLVM
Runs on Linux, OSX, Windows, PS3,
XBox 360, Wii
How does Mono Work?
“Xamarin compiles your
app to a native binary, not
cross-compiled, and not
ART (Android RunTime) is an experimental runtime that
could replace Dalvik. ART uses Ahead of Time compilation
instead of JIT (like iOS)
By only having to write core code once, more time can be
spent tuning the UI per platform.
must have components
Components that keep you from having to write platform
A component that helps abstract your code for location,
photos, and contacts across all platforms.
A component that helps abstract your code for App.Net,
Twitter, Facebook, and Flickr
More value resource types
XML resource that carries a boolean value.
XML resource that carries a color value.
XML resource that carries a dimension value.
XML resource that carries an integer value.
XML resource that provides an array of integers.
XML resource that provides a TypedArray (which you can use for
an array of drawables).
Units of measure
Pixels - corresponds to actual pixels on the screen.
Inches - based on the physical size of the screen.
Millimeters - based on the physical size of the screen.
Points - 1/72 of an inch based on the physical size of the screen.
Density-independent Pixels - an abstract unit that is based on the physical density of the screen. These units are
relative to a 160 dpi screen, so one dp is one pixel on a 160 dpi screen. The ratio of dp-to-pixel will change with the
screen density, but not necessarily in direct proportion. Note: The compiler accepts both "dip" and "dp", though "dp"
is more consistent with "sp".
Scale-independent Pixels - this is like the dp unit, but it is also scaled by the user's font size preference. It is
recommend you use this unit when specifying font sizes, so they will be adjusted for both the screen density and
- The Android SDK is substantially more robust
(complicated?) than iOS
- Device fragmentation is challenging (TestCloud)
- Emulators suck. Use a device instead.
- Not as prescriptive in UX/Design
- The more innovative (but not as polished)