Tag: ux

26
Cze

Korzyści technologii Xamarin: Łatwiejsze utrzymanie aplikacji

Często menedżerowie podejmują decyzję o inwestowaniu w niezależnie opracowane aplikacje na iOS i Androida. Nie uwzględniają jednak zasobów, które pozwolą skutecznie zarządzać tymi osobnymi wersjami w czasie – poprawki błędów, aktualizacje systemu operacyjnego i nowe funkcje wymagają równoległych ścieżek rozwoju.
W artykule tym zajmiemy się jedną z najważniejszych zalet technologii Xamarin: dzięki zastosowaniu jednej podstawy kodu i platformy programistycznej zespoły programistyczne mogą znacznie wydajniej zarządzać i utrzymywać aplikację wieloplatformową przez cały cykl jej „życia”.

Jako zespół programistów Xamarin używamy Xamarin i Xamarin.Forms, aby zaoszczędzić wiele czasu w projektach dla naszych klientów. Tworząc pojedynczą bazę kodu w języku C #, jesteśmy w stanie zaoszczędzić szacunkowo 25% wstępnego czasu rozwoju dla pierwszego wydania. A czas to pieniądz. Krótko mówiąc: Szybsze cykle programowania kolejnych wersji oszczędzają pieniądze naszych klientów.

Ale oszczędność czasu, to nie jedyna zaleta płynąca z wykorzystania technologii Xamarin.

Naprawianie błędów jest prostsze w przypadku technologii Xamarin

xamarin-debugJeśli niezależnie korzystasz z aplikacji na iOS i Androida, zastanów się, co się stanie, gdy zgłoszony zostanie błąd. Tak, błędy pojawiają się nawet w przypadku najlepszych programistów i procesu testowania aplikacji. Jeśli błąd dotyczy zarówno wersji na Androida, jak i iOS, nie jest to jeden błąd, ale dwa. Oznacza to dwa różne działania związane z zapewnieniem stabilności aplikacji oraz co najmniej dwóch programistów, aby znaleźć problem w dwóch bazach kodu. Tworzone są dwie różne poprawki, a następnie dwie nowe wersje są kompilowane, testowane ponownie i testowane pod kątem pełnego zestawu funkcji. Dopiero wtedy aplikacje są publikowane.

Jeśli aplikacja została zbudowana w Xamarinie, jej kod napisany jest jeden raz. Następnie możemy wypuścić nowe wersje na każdą natywną platformę. Oczywiście nawet jeśli korzystamy z Xamarina, w każdym wydaniu należy wykonać pewne zadania specyficzne dla danej platformy. Szacujemy, że podstawowa poprawka w Xamarinie zajmuje około 75% czasu potrzebnego na naprawienie niezależnych błędów w systemie iOS i Android.

W trakcie cyklu życia aplikacji może to przynieść znaczące oszczędności. Jeśli nasz zespół programistów poświęci jeden miesiąc na utrzymanie aplikacji, to biorąc pod uwagę naszą szacunkową oszczędność czasu, możemy zyskać więcej niż cały tydzień – siedem dni cennego czasu, który można poświęcić na tworzenie nowych funkcji.

Nowe funcjonalnosci

Dzięki technologii Xamarin poprawki błędów na różnych platformach można uprościć. Ale co z nowymi funkcjami? Po pierwsze, zastanówmy się, skąd pochodzą nowe pomysły na funkcje. Często wynikają z analizowania wydajności za pomocą narzędzia ‘profilera’ i narzędzi do centralnej analizy UX (User Experience). Jeśli ta analiza może być przeprowadzona w aplikacji wieloplatformowej dla systemu Android i iOS – zamiast oddzielnie – może to być duża oszczędność czasu.

Profilowanie aplikacji w Xamarin

W Akanzie używamy Xamarin Profiler do profilowania aplikacji Xamarin i sprawdzania kodu, który wymaga poprawy z punktu widzenia wydajności. Można także użyć Android Studio lub Xcode Instruments do analizy wydajności aplikacji – ale przewaga Xamarin Profiler pozwala spojrzeć na wydajność w różnych aplikacjach.

User Experience – doświadczenie użytkownika

xamarin-uxPo pierwszym wydaniu aplikacji zespół programistów prawdopodobnie spędza dużo czasu na analizie, której celem jest zrozumieć komfort użytkownika – i to, jak UX aplikacji realizuje pierwotne cele biznesowe. Na przykład, jeśli jest to aplikacja e-commerce, będziemy analizować każdy etap procesu zakupu i określać, gdzie użytkownicy mogą porzucić swoje koszyki.

Podobnie jak w przypadku ‘profilera’, bardziej wydajne jest przeprowadzanie tej analizy na różnych platformach, dzięki czemu możemy zobaczyć trendy UX w aplikacjach na iOS i Androida. Dzięki Xamarin możemy zaimplementować kod dla wielu narzędzi analitycznych (np. Mixpanel, Google Analytics lub AppsFlyer) tylko raz, we współużytkowanej warstwie abstrakcji – zamiast dodawać je natywnie do każdej aplikacji. W zależności od narzędzia analitycznego, możemy wciąż napisać kilka linii kodu na każdej platformie, aby skopiować kod do warstwy współdzielonej. Jednak ogólny wysiłek na rzecz rozwoju jest nadal ograniczony. Zespół marketingu / produktu będzie miał możliwość analizowania UX na różnych platformach w jednym widoku.

Ten sam język – back-end

Podczas pracy z wieloplatformowymi aplikacjami Xamarin koncentrujemy się na ilości kodu współdzielonego między systemem Android i iOS, a w niektórych przypadkach na platformie Universal Windows Platform (UWP).

Jednak większość aplikacji mobilnych pobiera dane z back-endu. W wielu projektach istnieje spora szansa, że back-end używa Microsoft Azure. Jeśli nie wiesz, firma Xamarin została przejęta przez Microsoft w 2016 r. W dość krótkim czasie Xamarin został złożony w Visual Studio i jest również częścią nowego Centrum aplikacji Microsoft Visual Studio. Wszystkie narzędzia w App Center dobrze integrują się z Azure Microsoft.

Tak więc Microsoft ma kompletny zestaw narzędzi do tworzenia aplikacji, starszej platformy dla przedsiębiorstw w .NET i wielu usług w chmurze na platformie Azure – a wszystko to oparte jest na języku programowania C#. Wszystkie te elementy Microsoftu sprawiają, że korzystanie z Xamarin jest efektywnym sposobem na rozwijanie oraz zarządzanie aplikacjami mobilnymi.

Podsumowanie

Xamarin to świetny sposób na zwiększenie wydajności tworzenia aplikacji mobilnych – potencjalnie oszczędzając koszty i czas. Ale nie wszystkie elementy kodu i funkcje można łatwo udostępniać między różnymi platformami. Powiadomienia push to jeden z przykładów funkcji, w której Android i iOS różnią się. Konieczne jest napisanie niestandardowych rozwiązań na platformach natywnych – jednak nadal możemy stosować wspólną logikę w warstwie udostępnionej. Innymi słowy, możliwe jest zarządzanie powiadomieniami push za pośrednictwem Xamarin na wielu platformach, gdy zaimplementujemy natywny kod w odpowiednim miejscu.

Istnieją inne przykłady funkcji, które muszą być obsługiwane w macierzystym systemie operacyjnym – ale wraz z rozwojem systemów Android i iOS stają się one coraz bardziej do siebie podobne. Xamarin, pod kontrolą Microsoftu, nieustannie dodaje nowe możliwości korzystania z funkcji na różnych platformach.

27
Paź

Jak używać breadcrumbs?

Wielu internautów oczekuje od stron internetowych, że będa miały wdrożone „breadcrumbs”.

Te z pozoru niezauważalne elementy nawigacji dają nam uproszczoną możliwość przeglądania serwisów www bez utraty świadomości gdzie się znajdujemy.

Niektóre breadcrumbs wpływają pozytywnie na odbiór stron przez użytkowników (UX), gdzie z kolei inne, powodują komplikację w nawigowaniu po serwisie www. Zbadajmy zatem jak breadcrumbs wpływa na UX oraz optymalizację SEO.

Czym są breadcrumbs?

Breadcrumbs – czyli okruszki chleba. Termin ten, został zaczerpnięty z bajki braci Grimm o Jasiu i Małgosi. Macocha głównych bohaterów porzuciła je w lesie mając nadzieję, że nigdy więcej ich nie zobaczy. Inteligentny Jaś jednak zostawiał po sobie ślad używając okruszków chleba. W ten sposób stworzył ścieżkę dzięki której dzieci mogły znaleźć drogę powrotną do domu. Okruszek po okruszku. Breadcrumbs na stronach internetowych opisują, ścieżkę “podróży” użytkownika.

Wielu programistów tworzy serwisy internetowe używając strony głównej jako punkt wyjściowy. Strona główna z kolei linkuję do kolejnych podstron takich jak np. strona kontaktowa, strona “o nas”, czy do podstron poszczególnych produktów. Każda z tych stron ma swoje miejsce w hierarchii serwisu. Breadcrumbs pomaga zwizualizować ten schemat i umożliwia poruszanie się wewnątrz niego. Nawigacja za pomocą breadcrumbs może wyglądać następująco:

Strona główna > Elektronika > AGD i RTV > TelewizorySony Trinitron 27

Jeżeli klientów nie interesuje telewizor sony, ale chcą kontynuować poszukiwania swojego upragnionego telewizora to jednym kliknięciem mogą dostać się się do kategorii zawierającej wszystkie telewizory. Natomiast gdy okaże się, że potrzebujemy czegoś więcej z działu elektroniki to wystarczy ponownie jedno kliknięcie i przenosimy się do sekcji związanej z elektroniką. Intuicyjne, prawda?

Nawigowanie po breadcrumbs zapewnia użytkownikom pewien kontekst, dzięki czemu mogą odpowiedzieć sobie na pytania:

  • Gdzie obecnie jestem w odniesieniu do całej witryny?
  • Jakie mam dostępne wybory do poruszania się po stronie? Breadcrumbs sprawiają, że każda sekcja jest łatwa do znalezienia.
  • Czy chcę tam przejść? Breadcrumbs sugerują eksplorowanie stron internetowych, zachęcając użytkowników do przechodzenia do kolejnych miejsc.

Korzyści ze stosowania Breadcrumbs

Breadcrumbs ułatwia nawigację po witrynach internetowych w celu ulepszenia wrażeń użytkowników (UX) w następujący sposób:

  • Odwiedzający wykonują mniej kroków.
    Jeśli użytkownicy poszukują ciekawych treści a nie chcą opuszczać strony na której się znajdują mogą użyć breadcrumbs w celu pozyskania kolejnych treści (zamiast np. wrócić do strony głównej).
  • Breadcrumbs wyjaśniają nawigowanie po stronie.
    Często użytkownicy nie są pewni, czego szukają, ale czują, że będą wiedzieli, kiedy to zobaczą. Dopóki mogą przejść płynnie przez poszczególne pozycje strony internetowej, każdy krok przybliża ich do celu. Jeśli muszą pójść w danym kierunku, mogą stracić ścieżkę by następnie zdecydować, że jednak nie są zainteresowani danym obszarem strony. Breadcrumbs pomaga odnaleźć drogę powrotną.
  • Efektywnie wykorzystują przestrzeń.
    Breadcrumbs to prosty tekst z poziomymi liniami, które nie przyczyniają się do przeciążenia treści na stronach internetowych.

Kiedy używać breadcrumbs?

Decydując się na użycie breadcrumbs musisz pamiętać, że Twoja strona musi być podzielona na sekcje i podsekcje. Poszczególne podstrony powinny być zgrupowane według powiązanych kategorii, dzięki czemu zadbamy o poprawne UX. Breadcrumbs nie są przydatne przy w witrynach, których podstrony nie są w żaden sposób zgrupowane, np blogi z niepowiązanymi tematami itd.

Typy breadcrumbs

Breadcrumbs może określać pozycję, ścieżkę lub charakterystykę strony:

  • Pozycja.
    Jeśli strony internetowe posiadają więcej niż dwa poziomy, breadcrumbs wskazują położenie każdej podstrony w stosunku do pozostałych. Na przykład jeśli użytkownicy wyszukują „dywan w kolorze turkusowym” i wybiorą link, który przeniesie ich do określonego produktu, mogą zdać sobie sprawę, że chcieliby zobaczyć inne produkty tego samego sprzedawcy. Być może nigdy nie byli na innych podstronach w serwisie, a breadcrumbs sugerują, że mogą poznać kolejne elementy serwisu. Każdy link tekstowy breadcrumbs przenosi użytkowników o jeden poziom wyżej.
  • Ścieżka nawigacyjna.
    Pokazuje, że każdy krok użytkownika przybliżył go do celu. Jeśli chodzi o historię ścieżki po której poruszał użytkownik, breadcrumbs stają się mniej użyteczne jeśli użytkownicy przejdą na stronę bezpośrednio z wyszukiwarki.
  • Elementy zgrupowane według właściwości.
    Serwisy ecommerce często używają tego rodzaju ścieżki nawigacyjnej do grupowania podobnych produktów.

Twórcy stron internetowych mogą mieszać powyższe typy breadcrumbs aby ułatwić odwiedzającym nawigowanie. Na przykład ścieżka nawigacji dla witryny hipermarketu może wyglądać następująco:

Strona główna > Ubrania > Odzież Damska > Piżamy i Szlafroki > Koszulki Spodenki > Koszulki z długim rękawem

Pierwsze trzy kategorie są oparte na lokalizacji. Ostatnie trzy elementy są podzielone ze względu podobne cechy charakterystyczne dla każdego poziomu.

Breadcrumbs a SEO

Od kiedy wyszukiwarki nieustannie rozwijają swoje reguły określające pozycję stron internetowych w wynikach wyszukiwania to, specjaliści od SEO nie są zgodni jak duże znaczenie ma stosowanie breadcrumbs w optymalizacji stron www pod kątem wyszukiwarek. Jednakże większość z nich zgadza się, że breadcrumbs może pomóc. Należy pamiętać, że ich podstawową funkcją jest poprawa UX.