[W tej lekcji porozmawiamy
o synchronizacji urządzeń mobilnych i o tym, jak
można synchronizować
dane z różnych aplikacji na różnych urządzeniach
lub w chmurze.
Ale zanim to zrobimy, porozmawiajmy
najpierw o dwóch głównych systemach operacyjnych dla urządzeń
mobilnych.
Są to systemy Android i iOS.
Jeśli chodzi o mobilne systemy operacyjne,
tablety i smartfony, to tak naprawdę
na rynku jest tylko dwóch dominujących graczy.
Pierwszym z nich jest system operacyjny Android.
Android zdobył duży udział w rynku, ponieważ
oferuje otwartą bazę kodu źródłowego
zamiast zamkniętej lub zastrzeżonej bazy kodu.
Android jest sponsorowany i rozwijany przez Google.
Ma bardzo dużą dystrybucję kodu systemu
operacyjnego i jest szeroko
dostępny na smartfonach i tabletach, a także innych inteligentnych
urządzeniach, takich jak dekodery
telewizji strumieniowej i niezliczone inne urządzenia
Internetu rzeczy.
Ze względu na otwarty charakter
bazy kodu źródłowego Androida,
który tworzy ten system operacyjny, każdy
producent tabletu lub smartfona może faktycznie zmienić
sposób, w jaki system operacyjny
wygląda i działa przed wdrożeniem go na
swoich urządzeniach.
Na przykład, jeśli spojrzysz na tablet Amazon Kindle Fire, nie
wygląda on jak normalny
tablet z Androidem, ale pod spodem
faktycznie działa system operacyjny
Android, ale na jego wierzchu
znajduje się dostosowany interfejs.
Ponieważ ten system operacyjny jest open-source,
producenci mogą zaoszczędzić sporo czasu i pieniędzy,
nie musząc wymyślać na nowo własnego systemu operacyjnego
dla swoich tabletów lub smartfonów, a zamiast
tego mogą używać Androida jako podstawy.
Obecnie drugim dominującym mobilnym systemem operacyjnym jest iOS.
iOS został opracowany przez
Apple do użytku na iPhone'ach i iPadach,
ale obecnie iOS jest używany tylko na iPhone'ach, a
iPadOS, który jest jego odmianą, jest używany
na iPadach.
Teraz ten system operacyjny, który
będziemy wspólnie nazywać iOS, opiera się na zamkniętym
kodzie źródłowym, który został opracowany
i sponsorowany przez Apple.
Ze względu na zastrzeżoną
i zamkniętą naturę tego systemu operacyjnego, jedynymi
osobami, które mogą z niego korzystać, są Apple, ponieważ
są właścicielami własności intelektualnej
i w tym momencie licencjonowali go tylko
do użytku na sprzęcie Apple.
Teraz, gdy mówię o otwartym i zamkniętym źródle, jest
to ważne rozróżnienie,
gdy mówimy o oprogramowaniu.
Kiedy mówimy o systemie oznaczonym jako open-source, oznacza
to, że oprogramowanie i jego oryginalny kod źródłowy
są swobodnie dostępne dla
każdego dewelopera, który chce je pobrać, zmodyfikować
i redystrybuować tę bazę kodu.
Pozwala to producentom na wykorzystanie kodu bez konieczności
uiszczania wysokich opłat licencyjnych na rzecz
producenta oryginalnego oprogramowania.
Ponadto mogą modyfikować system operacyjny lub kod, aby robić z nim,
co chcą, niezależnie od tego, czy chodzi
o umieszczenie go na smartfonie, tablecie czy innym
inteligentnym urządzeniu.
Oprogramowanie open-source pozwala im na dużą kreatywność w produkcji
swoich urządzeń, a także możliwość współpracy
z innymi osobami, które pomagają tworzyć więcej
aplikacji dla używanego przez nich
systemu operacyjnego.
Jest to jeden z powodów,
dla których system operacyjny
Android zyskał tak dużą popularność wśród producentów, ponieważ
mają oni niższe koszty usług dzięki wykorzystaniu
tej platformy open-source jako bazy
kodu dla swojego systemu operacyjnego.
I odwrotnie, system iOS firmy Apple należy do kategorii zamkniętego
oprogramowania.
Kiedy korzystasz z oprogramowania o zamkniętym
kodzie źródłowym, zazwyczaj robisz to z oprogramowaniem zastrzeżonym,
a to oprogramowanie komputerowe jest licencjonowane
na podstawie wyłącznego prawa właściciela praw autorskich, w tym przypadku Apple, i może licencjonować je innym osobom do korzystania
na ich warunkach.
Teraz licencjobiorca, który zamierza licencjonować swoje
oprogramowanie, będzie ograniczony do
innych zastosowań, więc nie będzie mógł go modyfikować,
udostępniać, studiować, redystrybuować ani odtwarzać kodu.
Kiedy masz do czynienia z oprogramowaniem o zamkniętym
kodzie źródłowym, otrzymujesz tylko produkt, nie
możesz zobaczyć, w jaki sposób został on faktycznie
stworzony ani jaki kod oprogramowania leży u jego podstaw.
Lubię myśleć o otwartym i zamkniętym oprogramowaniu w ten sposób, powiedzmy,
że chcesz dziś zjeść ciasto na deser, jeśli pójdziesz do lokalnej
piekarni, aby kupić ciasto, nie dadzą ci przepisu,
to jest jak oprogramowanie o zamkniętym
kodzie źródłowym.
Zapłacisz za ciasto,
możesz je zjeść, możesz się nim delektować,
ale nie dowiesz się, jak je zrobiono.
Z drugiej strony, załóżmy,
że poszedłeś do sklepu spożywczego i mieli
tylko placki z jabłkami, ale chciałeś
placek z jagodami.
Cóż, szkoda, że sklep sprzedaje tylko szarlotki, więc
będziesz musiał zjeść tę szarlotkę
na deser zamiast jagód.
Dzieje się tak dlatego, że nie masz
metody na zmianę receptury ciasta,
ponieważ nie wiesz, jak to ciasto zostało zrobione.
Porównajmy to z pójściem do domu
przyjaciela i otrzymaniem od niego ciasta.
Teraz może to bardziej przypominać rozwiązanie open-source,
twój przyjaciel, zamiast dawać ci szarlotkę, może
dać ci przepis na samodzielne zrobienie ciasta.
Tak właśnie dzieje się
ze społecznością oprogramowania open-source.
Możesz mieć produkt końcowy,
po prostu pobierając system operacyjny Android i używając
go w takiej postaci, w jakiej istnieje,
lub w tym przypadku możesz pójść do domu znajomego
i wziąć szarlotkę, którą dla ciebie przygotował,
lub możesz faktycznie pobrać kod źródłowy i zmodyfikować
go na własny użytek.
W przykładzie z szarlotką, dostałeś
przepis od swojego przyjaciela i zamieniłeś
jabłka na jagody, dzięki czemu możesz zrobić
ciasto, które faktycznie chcesz zjeść.
Na tym polega piękno otwartego oprogramowania,
że można w nim uwzględnić kreatywność i zmiany, podczas gdy
w przypadku oprogramowania zamkniętego lub własnościowego
nie jest to możliwe.
Właśnie zakończyliśmy dyskusję
na temat otwartego oprogramowania i zamkniętego
oprogramowania, i choć wszystko
to jest ważne, użytkownik końcowy rzadko będzie
zaangażowany w tworzenie systemu operacyjnego lub samego kodu,
zamiast tego użytkownik końcowy chce po prostu móc kupować, pobierać
i używać aplikacji na swoim urządzeniu.
Aplikacje na urządzenia z systemem Android
można pobrać z kilku różnych miejsc.
Na pierwszym miejscu znajduje się oficjalny
rynek, znany jako Sklep Google Play.
Jest to zdecydowanie najczęściej używane
i najłatwiejsze miejsce do pozyskiwania nowych aplikacji.
Ale w przypadku Androida,
ponieważ mamy do czynienia z systemem operacyjnym typu
open source, nie jesteś
ograniczony tylko do oficjalnego sklepu
Google Play, a zamiast tego możesz pobrać
oprogramowanie lub aplikacje z różnych źródeł.
Na przykład, możesz przejść do Amazon Appstore, GetJar,
SlideME lub wielu innych sklepów
z aplikacjami innych firm, aby pobrać oprogramowanie
na swój smartfon lub tablet, jeśli korzystasz z systemu
operacyjnego Android.
Z drugiej strony Apple
woli stosować podejście "walled garden", co
oznacza, że aplikacje można pobierać tylko bezpośrednio od Apple.
Nie oznacza to, że Apple jest jedynym deweloperem,
ale oznacza to, że możesz pobierać aplikacje tylko z ich sklepu z aplikacjami,
który nazywa się App Store.
Obecnie App Store to aplikacja na urządzeniu z systemem
iOS, która umożliwia dostęp
do sklepu, zakup i pobieranie aplikacji.
Zgodnie z warunkami świadczenia
usług Apple, nie możesz pobierać aplikacji
z dowolnego miejsca na świecie, możesz
to zrobić tylko z App Store.
Urządzenie z systemem iOS nie zezwala na instalowanie na nim aplikacji
zewnętrznych bez uprzedniego złamania
zabezpieczeń, a ponieważ oprogramowanie Apple
jest oprogramowaniem zamkniętym, użytkownik
końcowy musi zaakceptować warunki korzystania z usługi przed
rozpoczęciem korzystania z urządzenia,
więc jest teraz zablokowany w App Store, gdy chce pobrać
oprogramowanie.
Teraz zarówno w Google Play Store, jak i Apple App Store,
można znaleźć aplikacje
od wielu różnych deweloperów.
Każdy może stworzyć aplikację dla tego oprogramowania,
ale musi ją zatwierdzić i opublikować w sklepie z
aplikacjami, aby można ją było pobrać i zainstalować
na urządzeniu mobilnym.
Aby utworzyć aplikację na urządzenie z systemem iOS, należy
użyć języka programowania Swift i programu Xcode
firmy Apple, który jest zintegrowanym
środowiskiem programistycznym do tworzenia
kodu tworzącego tę aplikację.
Z drugiej strony, jeśli chcesz stworzyć aplikację na Androida,
będziesz pisać ją w
języku programowania Java i będziesz
używać Android Studio jako zintegrowanego
środowiska programistycznego, które
może działać w systemach Linux, Windows
i macOS.
Teraz, po zainstalowaniu aplikacji na urządzeniu, potrzebny
jest sposób na synchronizację danych
przechowywanych przez te aplikacje na
wielu urządzeniach, w tym laptopach, komputerach stacjonarnych, smartfonach
i tabletach.
Obecnie jednym z najprostszych sposobów synchronizacji
danych na wielu urządzeniach jest
korzystanie ze współdzielonego konta w sieci opartej na chmurze.
Istnieje trzech głównych dostawców w tym
obszarze: Microsoft, Google i Apple.
Microsoft korzysta z produktu znanego jako Microsoft 365, który
daje możliwość posiadania
oprogramowania biurowego,
a także dużej ilości przestrzeni
dyskowej w chmurze pod nazwą OneDrive.
Użytkownicy platformy Microsoft 365 zwykle otrzymują powiązane
z nią konto e-mail przy użyciu ogólnej domeny
programu Outlook. com lub posiadając zarejestrowaną
domenę strony trzeciej, taką jak nazwa domeny własnej firmy,
jeśli firma korzysta z 365 na poziomie
przedsiębiorstwa, na przykład, jeśli zdecyduję się użyć Microsoft
365 dla mojej firmy,
będziemy mieli adresy e-mail @diontraining.
com
i będzie hostowana i dostarczana przez serwery Microsoft
przy użyciu usługi 365.
Drugą opcją jest skorzystanie z Google Workspaces udostępnianych
przez Google.
Teraz Google Workspaces wymaga konta Google,
co oznacza konto Gmail lub
posiadanie konta firmowego w Google
i własnej domeny.
Moja firma korzysta z Google Workspace dla wszystkich naszych
programów zwiększających produktywność.
Daje nam to możliwość korzystania z Dokumentów
Google, Arkuszy, Prezentacji i Dysku Google do przechowywania w chmurze, a także zapewnia
pocztę e-mail dla wszystkich członków naszego zespołu
w Dion Training.
Po wysłaniu wiadomości e-mail na adres deontraining. com, w rzeczywistości
przechodzi przez serwer Google i to
oni hostują dla nas naszą pocztę e-mail
w ramach Google Workspace.
Trzecią opcją jest opcja Apple,
znana jako iCloud.
Jeśli masz konto Apple w usłudze iCloud, Twój
adres e-mail to @icloud. com lub @me. com.
Jest to bezpłatna usługa, do której może zapisać się
każdy, a po zarejestrowaniu się w iCloud dostępny
jest bezpłatny poziom pamięci
masowej, który działa wyjątkowo dobrze,
jeśli używasz iPhone'a lub iPada jako urządzenia mobilnego.
Poza poziomem darmowym, iCloud
oferuje również poziom płatny, który zapewnia
dodatkową przestrzeń dyskową w chmurze.
Teraz, gdy konfigurujesz swoje urządzenie,
wybierzesz, z której
z tych trzech usług zamierzasz korzystać
lub z innej opcji, a to pozwoli ci zsynchronizować
informacje i dane z twoich urządzeń z innymi urządzeniami
na wielu urządzeniach mobilnych oraz komputerach stacjonarnych i laptopach za
pomocą tych usług opartych na chmurze.