REKLAMA

Programista 2/2019 (81) – maj 2019 – Rozwiązywanie problemów z zależnościami DLL – 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

Architecture: GynVM, czyli o rozszerzaniu możliwości radare2 słów kilka
Część 2 – implementacja

W poprzednim numerze opisałem podstawowe dostosowanie środowiska developerskiego oraz wymaganą konfigurację, która umożliwi dodanie wsparcia dla nowej architektury. W drugiej części artykułu przyjrzymy się praktycznej implementacji przykładowej architektury GynVM jako wtyczki projektu radare2. Kod zaprezentowany w niniejszym artykule znajduje się w repozytorium Github [1].

foxtrot_charlie

Rozwiązywanie problemów z zależnościami DLL (>>więcej o tym artykule<<)

„Nie można załadować modułu XYZ.DLL lub jego zależności” – to błąd, który może doprowadzić człowieka do szału. Wszystko wydaje się być na swoim miejscu, nieszczęsny XYZ.DLL ewidentnie znajduje się w katalogu aplikacji, a jednak system protestuje. Za chwilę dowiemy się, z czego wynika ten błąd, w jakich sytuacjach może się pojawić, jak diagnozować jego przyczyny i jak projektować kod, aby go uniknąć.

Wojciech Sura

Vuforia. Wiązanie obiektów cyfrowych z rzeczywistymi w aplikacjach AR

Vuforia to platforma rzeczywistości rozszerzonej (AR), która umożliwia szybkie uzupełnianie aplikacji AR o tak zwane doświadczenia AR. W praktyce oznacza to, że Vuforia udostępnia silnik wizji komputerowej, który rozpoznaje i śledzi wybrane obiekty (cele, ang. targets) w obrazie z kamery. Odnalezione cele mogą być następnie uzupełnione o elementy cyfrowe, które podążają za celami śledzenia. Dzięki temu Vuforia ułatwia szybkie tworzenie aplikacji AR.

Dawid Borycki

Framework K
Prototypowanie języków programowania

Projektowanie nowych języków programowania nie jest zadaniem łatwym. Można też od razu zadać pytanie, czy jest potrzebne, skoro obecnie ich liczbę szacuje się na ponad 10 tyś. Odpowiedź nie jest jednoznaczna, zawsze jednak warto mieć pod ręką nowe narzędzia do tworzenia prototypów, bo w dziedzinie języków programowania, jak się wydaje np. w obszarze języków programowania równoległego, nadal można rozważać kreowanie nowych idei. Tworzenie prototypu języka programowania to trudne przedsięwzięcie, zatem rozwiązania wspomagające to zadanie stanowią duże ułatwienie.

Marek Sawerwain

JĘZYKI PROGRAMOWANIA

C++20 – kolejna rewolucja? (>>więcej o tym artykule<<)

Pod koniec lutego 2019 roku, w dystrykcie Kona na Hawajach, odbyło się kolejne posiedzenie komisji standaryzacyjnej C++. Do robiącej już wrażenie listy nowości takich jak koncepty, kontrakty czy zakresy (ang. ranges) dodano kolejne: od dawna wyczekiwane moduły oraz korutyny (ang. coroutines). Już samo to wystarczy, aby uznać C++20 za rewolucję na miarę C++11, a to tylko niektóre ze zmian, które nas czekają.

Paweł "KrzaQ" Zakrzewski

Korutyny w C++20

Najnowszy standard języka C++ to C++17 opublikowany w grudniu 2017 roku. Wkrótce możemy spodziewać się kolejnego wydania standardu tego języka – C++ 20, w którym mają pojawić się między innymi korutyny, moduły oraz koncepty. Są to trzy zupełnie nowe funkcjonalności. W tym artykule uwagę skoncentrujemy na korutynach i opowiemy sobie o tym, dlaczego ich potrzebujemy oraz jak je implementować.

Dawid Pilarski

PROGRAMOWANIE SYSTEMÓW OSADZONYCH

Co w NANDzie piszczy (>>więcej o tym artykule<<)

Pamięć typu NAND flash jest obecnie szeroko stosowana w sprzęcie elektronicznym. Można ją znaleźć w przenośnych kartach pamięci MMC, pamięci USB, dyskach SSD, jak również w telefonach komórkowych, laptopach i komputerach klasy PC. Jak jest zbudowana i jakie mechanizmy są stosowane, aby zapewnić jej efektywne i niezawodne działanie? Odpowiedź na to pytanie można znaleźć w poniższym artykule.

Grzegorz Jaszczyk

PROGRAMOWANIE APLIKACJI WEBOWYCH

Wprowadzenie do Web Components

Choć pierwsze informacje dotyczące Web Components pojawiły się kilka lat temu, to dopiero od niedawna zaczęło się robić o nich naprawdę głośno. Zaczęły być brakującym puzzlem w układance technologii frontend. Dzięki nim możemy zdefiniować własny tag HTML oraz określić, jak ma wyglądać i jak się zachowywać, a następnie używać wszędzie, gdzie tylko chcemy, niezależnie od frameworka, w którym aktualnie piszemy aplikację. Web Components pozwalają również na osadzenie funkcjonalności, napisanej w nowoczesnej technologii (np. Angular) na stronach, które są napisane w starszych technologiach. Czym są i jakie problemy rozwiązują? Odpowiedź w artykule.

Michał Jawulski

BEZPIECZEŃSTWO

HTTP/2 – czyli szybciej, ale czy również bezpieczniej?

Czy chcemy, by obecne aplikacje webowe mogły działać szybciej bez ponoszenia nakładów na lepsze łącza sieciowe czy infrastrukturę serwerową? Oczywiście, że tak – i taki właśnie główny cel przyświecał twórcom protokołu HTTP/2 (https://tools.ietf.org/html/rfc7540).

Michał Sajdak

KLUB DOBREJ KSIĄŻKI

Misja Python. Utwórz swoją kosmiczną grę!

Mariusz „maryush” Witkowski