Gdzie szukać inspiracji?

Wyjrzyj za okno i zobacz otaczający Cię świat pełen informacji, obrazów, słów i treści, które ma do przekazania. Teraz wyobraź sobie, ze musiałbyś ten widok odświeżać by zobaczyć coś nowego. Gdybyś zapomniał to zrobić życie dalej toczyłoby się swoim torem. Pomyśl więc jak wiele mógłbyś przeoczyć. Podobnie sprawa się ma z serwisami i aplikacjami, z którymi na co dzień mamy styczność w Internecie. Tymi serwisami gdzie szybkość informacji, oraz dostęp do nich ma ogromne znaczenie. Nie trzeba daleko szukać przykładu. Pierwsze z brzegu portale informacyjne, które udostępniają na swoich stronach relacje z ważnych wydarzeń, artykuły, czy komentarze. Dlaczego próbując sprawdzić czy nie pojawiły się nowe informacje musisz odświeżać swoją przeglądarkę? Oprócz nabijania pieniążków z odsłon reklam jest jeszcze jedna ważna przyczyna. Niewiedza, że można inaczej i czym są aplikacje czasu rzeczywistego.

Definicja aplikacji czasu rzeczywistego

Czym są aplikacje czasu rzeczywistego? Definicja obowiązująca w szkolnictwie wyższym jest dość złożona. Prawdopodobnie gdybyśmy dodali do tego parę mądrych wykresów i wzorów to już przestałbyś/łabyś to czytać. Na nasze potrzeby, bo rozmawiamy o Internecie, określimy to jako serwis, który udostępnia treści dla użytkownika automatycznie po wprowadzeniu zmian po stronie serwera. Np. redaktor/administrator dodaje nowy post na blogu, a my od razu go widzimy i możemy w nim wejść w pełną interakcję. Redaktor popełnił w nim literówkę, ale szybko ją zmienił, nasza przeglądarka od razu otrzymała poprawną treść. Dało to duże szanse, że nikt nie zauważył błędów, bo strona sama zmieniła treść bez przeładowywania.

No to dlaczego nie wszystkie serwisy są budowane w ten sposób?

To pytanie jest dość złożone, ale najprostszą przyczyną, jak do tej pory były po prostu koszty. Stworzenie takiej aplikacji samemu wiązałoby się z przygotowaniem wielu warstw logiki w naszej aplikacji (na przykładzie mobilnej):

  • HTML Templates
  • App Login
  • Reactive UI update system
  • Native container
  • Speculative client-side updates
  • Client-side data store
  • Custom data sync protocol
  • Realtime database monitoring
  • Build & update system
  • Language Runtime
  • Database

Jak widać czekałoby nas sporo pracy, a zespół programistów miałby nie lada zajęcie i parę dobrych tygodni wyjętych z życiorysu. Całe szczęście mamy już rok 2016 i z pomocą przychodzą nam znane nie od dziś websockety oraz gotowe rozwiązania takie jak socket.io, MeteorJS i Apollo. Ten ostatni daje duże wsparcie dla takich języków jak np. Ruby On Rails i baz danych Oracle, SQL Server.

W Czarnym Kodzie nie bylibyśmy sobą gdybym nie wziął teraz na tapetę MeteorJS. Jak widzieliście w powyższym przykładzie ilość warstw do zbudowania aplikacji czasu rzeczywistego jest ogromna. Jak to wygląda w przypadku tego frameworka?

  • HTML Templates
  • App Login
  • MeteorJS
  • NodeJS
  • MongoDB

I już. Tak naprawdę wszystko co możliwe dostajemy z paczki i całość działa praktycznie od razu. Skoro wiemy już, że przy wykorzystaniu konkretnych rozwiązań technologicznych koszty stworzenia serwisu działającego w czasie rzeczywistym drastycznie spadają, warto rozważyć taką opcję. Mówiąc śmielej, to nawet nie ma się co zastanawiać.

Jakiś przykład?

Spróbujmy omówić dynamiczny serwis informacyjny, gdzie użytkownik wchodzi na stronę na której znajdują się wiadomości z jego miasta, albo ze świata. Czyta interesujący go artykuł, aż nagle ukazuje mu się nowododany artykuł powiązany. Dzięki temu może od razu przejść do interesującej go treści. Bez tego pewnie albo zamknąłby już stronę albo przeszedł do innego działu nie zauważając ważnej dla niego informacji.

Ten sam użytkownik innego dnia ponownie wchodzi na stronę w celu znalezienia najnowszych informacji na dany temat, ale coś odciąga jego uwagę i na jakiś czas porzuca stronę z otwartym oknem. W tym czasie pojawiło się kilka ciekawych newsów, które użytkownik zobaczy od razu gdy powrócił na stronę. Podobnie gdyby brał udział w ciekawej konwersacji i komentował artykuł. Odpowiedzi innych użytkowników będą pojawiać mu się automatycznie bez konieczności dodatkowych powiadomień.

Podobnie gdy użytkownik wchodzi na stronę w poszukiwaniu relacji z ważnego wydarzenia, czy spotkań. Bardzo często takie relacje można spotkać w formie jednego artykułu, który redaktor co jakiś czas edytuje, a następnie publikuje zmiany. Dzięki takiemu rozwiązaniu tworzy się coś w rodzaju linii czasu, która pozwala nowoprzybyłym użytkownikom doczytać to co przegapili. Ale znów by zobaczyć nowe treści trzeba stronę przeładować. W przypadku aplikacji czasu rzeczywistego nawet zwyczajna edycja artykułu przez redaktora i zapisanie zmian, wiązać się będzie z tym, że przeglądarka sama uaktualnia treści o najnowsze. Dzięki temu nie tylko mamy wrażenie, ale naprawdę mamy do czynienia z relacjami prowadzonymi na żywo, także w formie tekstowej. To tak jakbyśmy oglądali wiadomości na żywo w telewizji z miejsca zdarzenia.

Wyobraźmy sobie do tego jeszcze możliwości włączenia, za zgodą użytkownika, powiadomień na „Pulpicie” naszego komputera, lub włączenie wibracji w telefonie gdy pojawią się nowe treści i mamy serwis idealny. W przypadku gdy korzystamy z takich rozwiązań jak Meteor, nie jest to w żaden sposób problematyczne.

Konkluzja

Jeżeli planujesz budowę serwisu lub portalu internetowego, powinieneś już na tym etapie zastanowić się czy nie warto pójść w kierunku rozwiązań dających dostęp do dynamicznych treści. Wyobraź sobie jakie możliwości daje to rozwiązanie w przypadku kantorów, kalkulatorów, forów, informacji, czy nawet stron, nie wspominając już nawet o aplikacjach mobilnych. Pamiętaj też, że dostęp do treści dynamicznych wpływa bardzo pozytywnie na przyciąganie użytkownika końcowego, a nam daje większą kontrolę nad wyświetlanymi treściami.

Dodaj komentarz

Twój adres email nie zostanie opublikowany.

Bądź na bieżąco

Zaprenumeruj newsletter i otrzymaj e-book w prezencie

Zero niechcianej treści. Tylko dobre materiały na Twojej skrzynce.

Leave this field blank

Administratorem Twoich danych osobowych jest Adam Trojańczyk 
Kliknij i dowiedz się więcej na temat przetwarzania Twoich danych osobowych.

Zobacz także
Internet Of Behaviour
Read more

Internet of Behaviour (Internet Zachowań) – czym jest, dane, prognozy oraz korzyści dla biznesu i zagrożenia dla życia prywatnego

Pod koniec zeszłego roku firma Gartner wydała raport w którym prognozowała, które technologie będą przodować w nadchodzących latach. Jedną z nich jest Internet of Behaviour (IoB) czyli inaczej Internet Zachowań. Twórcy raportu twierdzą, że wykroczyliśmy już poza adaptację tej technologii i zaczęliśmy mierzyć się z jej konsekwencjami. Internet of Behaviour ma być definicją tego co oznacza być człowiekiem w cyfrowym świecie i z czym, jako społeczeństwo, będziemy musieli się zmierzyć w nadchodzących latach.
Trendy w technologi 2021
Read more

Trendy w technologii na 2021 rok

Ludzie na całym świecie, w zasadzie niezależnie od wieku i z każdej grupy demograficznej, absorbują usługi cyfrowe oraz integrują je ze swoim życiem. Robią to szybciej i częściej niż kiedykolwiek wcześniej. Wzrost usług na żądanie, umocnienie rynku e-commerce, edukacja online, rozrywki cyfrowe, gry czy e-sport to tylko nieliczne z nich. Wszystko to spowodowało także zmiany w trendach i kierunkach rozwoju przedsiębiorstw. Jak więc wyglądać będą trendy w technologii na 2021? Co z obecnego roku nadal pozostanie na czasie? Co czeka nas w dziedzinach nowoczesnych technologii, które są tak bliskie mojemu sercu? Zapraszam Was do podróży w niedaleką przyszłość.