REKLAMA

Programista 5/2025 (120) – październik/listopad 2025 – Total Commander – wtyczka obsługująca własny format archiwum – SPIS TREŚCI

Zapraszamy do zamówienia magazynu w >>prenumeracie<<. Miesięcznik jest dostępny w formie papierowej, PDF, EPUB i MOBI oraz AZW3. Do prenumeraty papierowej zawsze dołączamy wydania elektroniczne.

BIBLIOTEKI I NARZĘDZIA

Total Commander – wtyczka obsługująca własny format archiwum (>>więcej o tym artykule<<)

W tym artykule zaprojektujemy własny format pliku, który pozwala spakować i skompresować wiele plików do jednego archiwum, podobnie jak format ZIP czy 7Z. Używając języka C++ i środowiska Visual Studio pod Windows, napiszemy następnie wtyczkę do managera plików Total Commander, który pozwoli na tworzenie i manipulowanie takim archiwum, w tym swobodne dodawanie i usuwanie plików w jego wnętrzu.

Adam Sawicki

Kontrola generatywnej sztucznej inteligencji
Charakterystyka rozwiązania NVIDIA NeMo Guardrails (>>więcej o tym artykule<<)

Duże modele językowe zaskakują swoimi zdolnościami konwersacyjnymi i coraz częściej stają się integralną częścią systemów sztucznej inteligencji. Jednak wraz z ich rosnącą popularnością pojawia się pytanie: jak nad nimi zapanować? Modele te potrafią generować fałszywe informacje, a użytkownicy nierzadko ufają im bezkrytycznie. W niniejszym artykule przedstawiamy jedno z narzędzi, które pozwala skutecznie kontrolować ich działanie – NVIDIA NeMo Guardrails.

Łukasz Górski

PROGRAMOWANIE URZĄDZEŃ MOBILNYCH

Aplikacje samochodowe Android Auto. Sensory i sterowanie głosowe

Ostatnia część tego cyklu skupia się na dwóch aspektach aplikacji samochodowych: dostępie do informacji o pojeździe oraz sterowaniu głosowym. Pracując nad projektem, można było zauważyć, że mimo podkreślania, jak ważne w projektowaniu tego typu aplikacji jest uwzględnienie komunikacji i sterowania głosowego, biblioteka Car App nie ma gotowego rozwiązania. Trzeba więc było zaimplementować tę funkcjonalność, korzystając ze standardowej biblioteki Androida i funkcji nagrywania dźwięku z mikrofonu pojazdu.

Maja Cichowicz, Jacek Matulewski

Małpy przy maszynopisie. Czyli piszemy programy na zegarki firmy Garmin (>>więcej o tym artykule<<)

Miniaturyzacja komputerów jest procesem, który postępuje nieubłaganie od momentu powstania pierwszych cyfrowych maszyn. Te mechaniczne monstra, pierwotnie zajmujące jedno lub nawet kilka pomieszczeń, najpierw zmalały do poziomu pudełka, które można było ustawić na biurku, a potem udało się przekształcić je w zgrabne urządzenie, które można było swobodnie przenosić. Niedługo potem w pełni funkcjonalny komputer zamknięto w urządzeniu mieszczącym się w kieszeni, by wreszcie procesor, płyta główna, pamięć oraz układ graficzny i dźwiękowy zmalały do tego stopnia, że zmieściły się nawet w zegarku.

Wojciech Sura

PROGRAMOWANIE SYSTEMÓW OSADZONYCH

Droga przez mękę, czyli testowanie systemów wbudowanych

Testowanie systemów wbudowanych różni się znacząco od testowania „tradycyjnego” oprogramowania. Weryfikacja funkcjonalności i niezawodności urządzenia o ograniczonych zasobach, działającego w realnych, często ekstremalnych warunkach stanowi dla programistów i testerów unikalne wyzwanie. W niniejszym artykule przyjrzymy się kluczowym problemom wynikającym z ograniczeń sprzętowych, możliwości debugowania, wymagań czasu rzeczywistego, złożoności integracji różnorodnych komponentów sprzętowych i programowych, współzależności między hardware i software oraz technikom stosowanym, by radzić sobie z tymi trudnościami.

Maciej Norberciak

Z ARCHIWUM CVE

Logiczne błędy w sudo

O tym, że historia pisze się na naszych oczach, chyba nie trzeba nikogo przekonywać. Również ta „teleinformatyczna”, a w szczególności z zakresu cyberbezpieczeństwa. Bezpardonowe ataki APT na dużą skalę, podatności, które mogą dotknąć wielu systemów (jak chociażby najświeższe podatności określone mianem ToolShell w SharePoint) naraz, i dostawcy, którzy usiłują nadążyć z wydawaniem łatek. Są takie elementy infrastruktury IT lub systemów operacyjnych, które rzutują w stopniu znacznym na bezpieczeństwo całego systemu. Jednym z nich jest program sudo (czytane su-du), który wykorzystywany jest w systemach z rodziny GNU/Linux, Unix czy macOS. Dzisiaj przyjrzymy się dwóm nowym, można powiedzieć „historycznym” (ze względu na skutki), podatnościom dotykającym sudo, które zostały określone identyfiakatorami CVE-2025-32462/CVE-2025-32463.

foxtrot_charlie

PLANETA IT

MERA-400. Sequel, który się udał

Minikomputer K-202 był pionierską konstrukcją, zwłaszcza biorąc pod uwagę realia PRL-u, w którym powstawał, oraz burzliwe czasy komputeryzacji tuż przed wprowadzeniem pierwszych mikroprocesorów. Pod wieloma względami był konstrukcją udaną, lecz jednocześnie zbyt ambitną, wymagającą zbyt wiele od mało dynamicznej, centralnie sterowanej gospodarki państwowej. Jego następca, MERA-400, był już znacznie lepiej dostosowany do istniejących realiów. Czerpiąc garściami z doświadczeń projektu K-202, stanowił jego twórcze rozwinięcie, pozbawione większości błędów poprzednika. Miał przy tym ulepszoną i jednocześnie zoptymalizowaną architekturę.

Robert Jaremczak