MATLAB 2022b i APKI – ułatwienie życia programisty?

Tradycyjnie na jesieni każdego roku otrzymujemy edycję „b” MATLABa, Nie inaczej jest teraz. Zobaczmy zatem jakie nowości oferuje nam MathWorks i co można zrobić z wykorzystaniem gotowych aplikacji, tzw. MATLAB Apps.
MATLAB i Simulink 2022b

Z najnowszym MATLABem otrzymujemy dwa nowe produkty: Medical Imaging Toolbox oraz Simscape Battery.

Pierwszy z nich to toolbox, którego narzędzia służą do szeroko rozumianej analizy obrazów biomedycznych. Od wielu lat jest to dynamicznie rozwijająca się dziedzina nauki, wspomagająca pracę lekarzy. Dobrze, że w końcu MATLAB będzie oferował zestaw gotowych narzędzi do analizy obrazów np.: tomografii komputerowej czy rezonansu magnetycznego.

Również drugi nowy produkt środowiska MATLAB i Simulik 2022b wychodzi naprzeciw potrzebom inżynierów. Simscape Battery to zestaw narzędzi umożliwiających projektowanie i analizę pracy baterii oraz magazynów energii. Jest to obecnie "gorący temat" ze względu na coraz większą popularność samochodów elektrycznych i domowych systemów fotowoltaicznych. Narzędzia nowego pakietu umożliwiają analizę nie tylko dynamiki ładowania czy rozładowywania baterii ale również badanie efektów starzenia czy właściwości termicznych.

Reszta nowości w wersji MATLAB i Simulink 2022b dotyczy aktualizacji i rozbudowy istniejących toolboxów. Kilka z nich to mocno specjalizowane funkcje (na przykład AUTOSAR), z których zwykły użytkownik MATLABa nigdy nie będzie korzystał. Jednak część aktualizacji dotyczy bardziej powszechnych funkcjonalności. Lista aktualizacji jest długa i jeśli Was ten temat interesuje zachęcam do samodzielnej eksploracji pod adresem: https://www.mathworks.com/help/matlab/release-notes.html

Aplikacje z interfejsem użytkownika - MATLAB Apps

Od jakiegoś czasu można zauważyć trend w MATLABie polegający na tworzeniu przez inżynierów MathWorks’a interfejsów użytkownika dla poszczególnych funkcji. Tak jest np. w Live Script’ach – interaktywnych „formularzach”, gdzie zamiast kodu, do budowania programu można wykorzystywać slidery, kontrolki, checkboxy, itd. Bardziej złożone operacje, składające się z kilku funkcji są łączone w „zadania” (task). I tak na przykład zamiast programować filtrację dolnoprzepustową sygnału, możemy skorzystać z zadania „Smooth data”, z własnym interfejsem użytkownika:

Jeszcze bardziej złożone zestawy funkcji, realizujące rozbudowane zadania numeryczne są łączone w tak zwane aplikacje (MATLAB Apps). Programy te również posiadają interfejs użytkownika, a więc niejako, zastępują konieczność programowania. MATLAB oferuje szereg aplikacji przyporządkowanych tematycznie do różnych toolboxów: od machine learning przez statistics, automotive po signal processing.

Powyżej aplikacja Curve Fitter, do aproksymacji danych pomiarowych.

Aplikacje to ułatwienie czy zmora życia programisty?

W pewnych przypadkach, jak Curve Fitter, aplikacje ułatwiają nasze życie. Inny przykład to Import Wizard - kiedy importujemy dane do MATLABa, nie zwracamy nawet uwagi, na te aplikację działającą w tle.

Jednak czy korzystanie z aplikacji, czyli zamkniętych, przygotowanych przez innych programistów programów jest zawsze dobre i bezpieczne? Aplikacje z założenia mają upraszczać i skracać czas potrzebny na osiągnięcie danego celu. Często jednak odbywa się kosztem utraty kontroli nad danym procesem. Wynika to z faktu, że aplikacje z interfejsem użytkownika, pozwalają jedynie na realizacje z góry zdefiniowanych zadań – bez elastyczności i parametryzacji kodu, tak jak można to robić kiedy samodzielnie pisze się program.

Pisanie klasycznych skryptów daje nam 100% kontroli nad treścią programu. Ponadto takie podejście niejako „wymusza” na programiście poznanie i zrozumienie działania poszczególnych funkcji, a tym samym zrozumienie stojącej za tymi funkcjami algebry, statystyki, podstaw przetwarzania sygnałów, itd.

Z kolei mając do dyspozycji gotową aplikację z interfejsem użytkownika i wynikiem podanym „na tacy”, nasze działanie zaczyna mieć charakter odtwórczy i bezrefleksyjny. Wprowadzamy dane -> dostajemy wynik i rzadko zastanawiamy się nad jego poprawnością.

Podsumowując nie jestem przeciwnikiem używania gotowych aplikacji w MATLABie. Jednak, jak z każdego narzędzia należy z nich korzystać świadomie, czytać dokumentację, a otrzymane wyniki poddawać weryfikacji. Gdyż często się okazuje, że aplikacja jednak wcale „nie wie lepiej” – lepiej samemu napisać program.

(Visited 144 times, 1 visits today)

Dodaj komentarz

Twój adres e-mail nie zostanie opublikowany. Wymagane pola są oznaczone *