REKLAMA

Programista 1/2021 (95) – luty/ marzec 2021 – Dear ImGui – 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

Dear ImGui: pragmatyczne podejście do programowania interfejsów użytkownika (>>więcej o tym artykule<<)

Kiedyś ktoś nieco przekornie stwierdził, że lenistwo jest motorem wszelkiego postępu. Oczywiście jest w tym stwierdzeniu sporo przesady, ale też można w nim znaleźć ziarno prawdy. Otóż istnieje pewna kategoria lenistwa, którą ja nazywam „lenistwem pragmatycznym”. Podstawową zasadą pragmatycznego lenia jest słynna reguła DRY (skrót od angielskich słów „don’t repeat yourself”, czyli: „nie powtarzaj się”). I tutaj należy uczciwie przyznać: ten rodzaj lenistwa często prowadzi do zwiększenia efektywności pracy i do powstawania ciekawych rozwiązań. Dziś chciałbym zaprezentować czytelnikowi Dear ImGui: bibliotekę służącą do tworzenia interfejsów użytkownika, która powstała w duchu tak właśnie postrzeganego lenistwa. Jeśli chcesz się przekonać, co z tego wynikło, to zapraszam do lektury!

Rafał Kocisz

ptrace: implementacja debuggera pod Linuksem

Instrumentacja dynamiczna procesów jest zbiorem technik i narzędzi służących do analizy zachowania programów wykonujących się w określonym środowisku. Narzędziem, któremu przyjrzymy się bliżej w tym artykule, jest debugger. Wiedza na temat podstaw jego działania pozwoli czytelnikowi na lepsze zrozumienie pewnych zależności, które z pewnością umożliwią w pełni wykorzystanie jego potencjału. Wykorzystując m.in. narzędzie ptrace, przyjrzymy się budowie debuggera działającego w środowisku linuksowym pod architekturą x86_64.

Przemysław Samsel

PROGRAMOWANIE URZĄDZEŃ MOBILNYCH

Aplikacje natywne na Ubuntu Touch

Aplikacje tworzone dla systemu Ubuntu Touch można podzielić na dwa rodzaje – webowe i natywne. Pierwsze to strony internetowe renderowane przy pomocy webview Oxide uruchamianego wewnątrz kontenera aplikacji internetowych. Drugie to aplikacje zdolne do pełnego wykorzystania zasobów i możliwości urządzenia, tworzone przy pomocy Qt QML w połączeniu z innymi językami programowania, np. C++, JavaScript czy Python. W poniższym tekście skupimy się na aplikacjach natywnych budowanych za pomocą QML i C++.

Marcin Ławicki

PROGRAMOWANIE SYSTEMOWE

Pszczoła – najlepszy przyjaciel programisty (>>więcej o tym artykule<<)

BPF to technologia, która pozwala na uruchamianie niewielkich programów w odpowiedzi na zdarzenia, na przykład szeroko pojęte operacje wejścia/wyjścia (I/O), nieustannie zachodzące podczas pracy systemu operacyjnego. To coś przypominającego JavaScript, znany osobom zajmującym się programowaniem aplikacji webowych, aczkolwiek to daleko idące uproszczenie.

Tomasz Duszyński

LABORATORIUM EVORAIN

Sieci neuronowe w pigułce  (>>więcej o tym artykule<<)

Sztuczna inteligencja jest obszerną dziedziną, w której sieci neuronowe odgrywają niezwykle istotną rolę. Wiedza na temat ich podstaw pozwoli inaczej spojrzeć na rozwiązanie dotychczas nierozwiązywalnych problemów. W tym artykule przedstawione zostaną również wybrane struktury głębokiego uczenia (ang. deep learning) – dziedziny, która zrewolucjonizowała obszar sieci neuronowych. Deep learning otwiera się na wykorzystanie nowych możliwości inteligentnego przetwarzania danych w sposób równoległy.

Piotr Woldan

LABORATORIUM TEINA

UX w podpisie elektronicznym – co jest ważne z perspektywy użytkownika?

Podpis pieczętuje umowę czy ustalenie. Kojarzy się z rytuałem, ceremonią. Równocześnie jest zobowiązaniem, którego niedopełnienie może wiązać się z konsekwencjami. Moment podpisu jest ważny, gdyż niesie znaczenie. Dlatego też zaprojektowanie elektronicznej wersji jest tak dużym wyzwaniem. Czy w ogóle jest możliwe odwzorowanie tradycyjnego podpisu w wersji cyfrowej? A może zupełnie nie tędy droga i e-podpis powinien być czymś innym, nowym? Dołóżmy do tego kwestie bezpieczeństwa i mamy interesujący temat!

Katarzyna Małecka

PLANETA IT

FPGA pod lupą

Układy FPGA zyskują coraz większą popularność. W poniższym artykule zapoznamy się z ich wewnętrzną budową, a także zastanowimy, do jakich zastosowań mogą być przydatne. Ponadto przyjrzymy się przykładowemu urządzeniu, w których układy te zostały wykorzystane.

Rafał Kozik