Czym jest SDK w branży motoryzacyjnej?
Niezależnie od tego, czy korzystamy z zestawów do przygotowania posiłków jak z restauracji, czy z produktów IKEA, aby złożyć modne skandynawskie biurko, wszyscy znamy ideę korzystania z narzędzi, które pomagają nam zbudować coś szybciej i sprawniej niż w przypadku tworzenia tego od podstaw.
Na rynku oprogramowania, na którym liczy się przede wszystkim czas, deweloperzy mogą łatwo pobrać standardowy zestaw SDK (Software Development Kit) i budować nowe aplikacje dla danej platformy.
Na przykład Apple chce zachęcić deweloperów do tworzenia aplikacji mobilnych na iPhone'a, a firma Google chce, aby deweloperzy tworzyli aplikacje mobilne na jej platformę Android. Dlatego każda z tych firm oferuje własny zestaw SDK, który ma w jak największym stopniu ułatwić deweloperom tworzenie aplikacji. Analogicznie, wszyscy wielcy dostawcy oprogramowania (chociażby Microsoft) oraz operatorzy popularnych portali internetowych (na przykład Facebook) tworzą i udostępniają własne zestawy SDK.
Ponieważ architektura pojazdu jest coraz bardziej oparta na oprogramowaniu, a jego obsługa przez użytkownika staje się bardziej spersonalizowana, rośnie zapotrzebowanie na zestawy SDK dla branży motoryzacyjnej. Zamiast wprowadzać funkcje w pojeździe na różnych wyspecjalizowanych elektronicznych jednostkach sterujących rozmieszczonych w całym pojeździe, producenci samochodów konsolidują powiązane funkcje w wydajnych kontrolerach domeny — które prawdopodobnie staną się otwartymi platformami serwerowymi. Taki też cel przyświeca Aptiv w naszym rozwiązaniu Smart Vehicle Architecture™. Tworząc zestaw SDK dla branży motoryzacyjnej, aby ułatwić producentom OEM i innym firmom opracowywanie rozwiązań na te platformy, możemy wywołać lawinę innowacji, która przyniesie korzyści wszystkim stronom.
Co zawiera zestaw?
Ogólnie mówiąc, zestaw SDK zawiera bloki konstrukcyjne, szkielet i narzędzia, za pomocą których deweloperzy tworzą aplikację. Często można w nim znaleźć także dane konfiguracyjne, dokumentację, bibliotekę oprogramowania, fragmenty kodu, narzędzia do automatyzacji kompilacji, debugery, wytyczne i programy do opracowywania aplikacji na daną platformę.
SDK może także zawierać interfejsy programistyczne aplikacji (API). Interfejsy API, nazywane także “hakami”, umożliwiają łatwą komunikację między różnymi programami. Zatem, o ile zestawy SDK ułatwiają deweloperom tworzenie aplikacji, to zawarte w zestawie SDK interfejsy API stanowią mechanizm, za pomocą którego aplikacje komunikują się między sobą i z platformą.
Złożoność rozwiązań sprawia, że zestawy SDK odgrywają coraz większą rolę
Gdyby świat był prostszy, deweloperzy mogliby tworzyć aplikacje, mając jeden SDK, ale dzisiejsze aplikacje są na to zbyt skomplikowane. Wyobraźmy sobie chociażby aplikację e-commerce z kodem działającym w chmurze i innymi komponentami pracującymi lokalnie, które ściągają dane z wielu źródeł, odpytują bazy danych i łączą się z aplikacjami do weryfikacji płatności i realizacji dostaw. Tak złożona aplikacja może wymagać użycia wielu zestawów SDK, z których każdy pozwoli deweloperowi zaoszczędzić nieco czasu i wysiłku w jego pracy.
Architektury pojazdów zmierzają w kierunku takiego samego poziomu złożoności, co oznacza, że oprogramowanie działające w samym pojeździe będzie komunikowało się regularnie z innymi aplikacjami lokalnie, a nawet w chmurze przy użyciu komunikacji bezprzewodowej. Zestawy SDK dla branży motoryzacyjnej będą krytycznymi elementami tej układanki i to od nich będzie zależał rozwój ekosystemu aplikacji mobilności.