Gdy na rynku dominowały jeszcze tradycyjne telefony komórkowe, wszystkie z grubsza wyglądały tak samo i miały podobne funkcje, chociaż może nieco inne zestawy gier. Każdy jednak zdołał przerobić grę w słynnego węza czy w różnorodne repliki Tetrisa. Z czasem telefony się rozwinęły, a każda firma zaczęła być zdeterminowana, aby wyróżniać się od innych.
Różnorodność mobilek
Gdy na rynku dominowały jeszcze tradycyjne telefony komórkowe, wszystkie z grubsza wyglądały tak samo i miały podobne funkcje, chociaż może nieco inne zestawy gier. Każdy jednak zdołał przerobić grę w słynnego węza czy w różnorodne repliki Tetrisa. Z czasem telefony się rozwinęły, a każda firma zaczęła być zdeterminowana, aby wyróżniać się od innych. Robi się to na różne sposoby: charakterystyczny wygląd zewnętrzny telefonu, charakterystyczne aplikacje dostępne w nim, a także inne funkcje, które są dostępne tylko w danym telefonie, na przykład sposób robienia zrzutów ekranu.
Mobilne OSy
W dzisiejszych czasach, zdominowanych przez zaawansowane technologicznie smartfony, niektóre z nich w paru krajach są wręcz centrum świata i wyparły z rynku tradycyjne komputery osobiste. Jednak, niezależnie od marki, wszystkie telefony mają zasadniczą różnicę: system operacyjny. O ile kiedyś każdy telefon wymagał Javy, o tyle teraz rynek podzielił się na trzy główne systemy: Android, Windows Mobile oraz iOS. Każdy z nich jest wspierany przez inne frakcje i ma inny potencjał, a co za tym idzie, także inny target użytkowników. Co więcej, ze statystyk rynkowych wynika, że Android i iOS mają znaczną przewagę nad swoim konkurentem. Jeśli na rynku pojawia się nowa aplikacja, zazwyczaj pojawia się najpierw albo na systemie Google’a, albo na Apple’a, albo na obojgu na raz. Wersja na Windows Mobile zazwyczaj wychodzi dużo później albo na zawsze pozostaje w planach, bo zawsze jest coś ważniejszego do zrobienia.
Portowanie
Problem z brakiem aplikacji na Windowsa można by prosto rozwiązać, gdyby dostosowywanie kodu aplikacji do systemu było tak łatwe. W praktyce każdy mobilny system operacyjny na tyle się różni od swoich konkurentów, że pisanie każdego z nich to osobny kod w osobnym języku programowania, którego nie można po prostu przerobić na potrzeby kolejnego systemu operacyjnego z uwagi na czasochłonność oraz diametralne różnice w interpretacji kodu przez poszczególne systemy oraz smartfony. W takich przypadkach, gdy planujemy rozwój aplikacji i jej ekspansję na parę rynków mobilnych, warto od razu przemyśleć kwestię tego, w jaki sposób będziemy portować aplikację między systemami (co, jeśli klienci zaczną się domagać wersji na PC?). Im szybciej rozważymy ten problem, tym lepiej dla efektywności późniejszych działań. Jeśli jesteśmy jeszcze na początku produkcji, warto rozważyć wybór modelu proponowanego przez Xamarin – jeden kod na wszystkie systemy. Ułatwia to znacznie sprawę i przede wszystkim sprawia, że nasze działania w kierunku ekspansji na wszystkie trzy systemy operacyjne będą bardzo efektywne.