Programista 1/2023 (106) – luty/marzec 2023 – Wzorce projektowe a praktyka – SPIS TREŚCI

programistamag.pl 1 rok temu

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

Kompilacja, instalacja i testy jednostkowe z CMake

W pierwszej części artykułu omówiliśmy podstawy użycia narzędzia CMake: utworzyliśmy przykładowy projekt oraz bibliotekę, którą następnie w nim wykorzystaliśmy. Dzisiaj rozszerzymy naszą bibliotekę o testy jednostkowe oraz zainstalujemy ją w systemie w sposób ustandaryzowany.

Paweł "Krzaq" Zakrzewski

Bot Framework Composer
Nowy sposób tworzenia inteligentnych botów

Kiedy zapytamy naszych rodziców, rodzeństwo czy znajomych, z czym kojarzy im się słowo „czatbot”, wielu z nich odpowie, iż z botem od fotowoltaiki – słynną Klaudią Sobieraj. Dla sporej grupy osób czatboty, inaczej zwane wirtualnymi asystentami, to skomplikowana technologia, którą znają tylko nieliczni. choćby najwięksi przeciwnicy botów nie mogą jednak zaprzeczyć faktowi, iż czatboty szturmem przejęły świat marketingu, obsługi klienta, a często także nasze życie codzienne. Czatboty są na Facebooku i Messengerze. Gdy chcemy dowiedzieć się, gdzie jest nasza paczka, to też pomoże nam czatbot. Program pozwoli nam też zamówić pizzę, zapytać o bilety do kina i znaleźć odpowiedź na pytania choćby w środku nocy.

Beata Zalewa

JĘZYKI PROGRAMOWANIA

PHP 8.2 – kilka małych kroków naprzód

Twórcy popularnego „pehapa” nie próżnują i w grudniu 2022 roku wypuścili kolejną wersję tego popularnego języka programowania, w której zrobiono kilka małych kroków do przodu i wykonano jeden całkiem spory skok.

Piotr Jaworski

INŻYNIERIA OPROGRAMOWANIA

Wzorce projektowe a praktyka

Każdy programista wcześniej czy później zderza się z tematem wzorców projektowych. Najczęściej widnieją one jako jedno z wymagań w ofertach pracy, czasem pojawiają się na rozmowach kwalifikacyjnych, a chyba jeszcze rzadziej rozmawia się o nich w czasie realizacji programistycznych projektów. Czym są? Czy warto zaprzątać sobie nimi głowę po zakończeniu procesu rekrutacyjnego? Czy nadają się tylko do akademickiej dysputy, czy też może da się zastosować je w prawdziwych scenariuszach? Spróbujmy zmierzyć się z tym ciekawym tematem.

Wojciech Sura

BEZPIECZEŃSTWO

HTTP Request Smuggling – podatność złożonych systemów

Błędy bezpieczeństwa w oprogramowaniu są wypadkową wielu zdarzeń intencjonalnych zaniedbań narastających przez lata, priorytetyzacji rozwoju biznesowego czy losowych zdarzeń w postaci tykających bomb istniejących w otwartoźródłowych bibliotekach. Mogą one także wynikać ze zbyt luźnej interpretacji dokumentacji bądź standardu. W poniższym artykule przyjrzyjmy się przykładom podatności zgłoszonych w ostatnich latach i postaramy się odpowiedzieć na pytanie, czy jesteśmy w stanie ich uniknąć.

Przemysław Samsel

STREFA CTF

SekaiCTF 2022 – writeup Symbolic Needs

SekaiCTF 2022 to dwudniowe wydarzenie Capture the Flag (CTF), które odbyło się między 30 września a 2 października 2022 r. Na uczestników czekały zadania z różnych kategorii: od webowych, przez tzw. pwn i kryptograficzne łamigłówki, aż do zadań typu forensics, czyli informatyki śledczej. Autor tego artykułu grał z drużyną justCatTheFish – zwycięzcą tego turnieju – a poniżej opisane zostanie jedno z ciekawszych zadań ze wspomnianej kategorii forensics – dwuetapowy Symbolic Needs.

Paweł Kusiński

Z ARCHIWUM CVE

Błąd w ping(8)

W artykułach z tej serii piszemy o tym, iż oprogramowanie, które miało być bezpieczne, w rzeczywistości okazywało się podatne na ataki. Niektóre narzędzia, takie jak ping(8), istnieją w systemach operacyjnych od bardzo wczesnych lat. Podatność w tym programie może wywołać wiele emocji, ale czy każdy błąd oznacza kompromitację systemu?

Mariusz Zaborski

KLUB LIDERA IT

Czy warto inwestować czas i pieniądze w rozwój kompetencji miękkich?

„A same soft-skille to ściema, pic na wodę i zajęcie dla osób z HR, które bez tej czarnej magii nie miałyby co robić”. Takie i inne soczyste określenia nierzadko można usłyszeć na temat kompetencji miękkich. No i klasyk, czyli „nie po to studiowałem informatykę, żeby rozmawiać z ludźmi”. Czy kompetencje miękkie to nikomu niepotrzebne farmazony?

Anita Przybył

Nowy produkt i nowe środowisko. Jak sobie poradzić z niepewnością i chaosem?

Na początku tego artykułu chciałbym postawić czytelnika w niekomfortowej dla większości osób sytuacji. Otóż wyobraźmy sobie, iż rozpoczynamy pracę w nowym miejscu. Często takie zmiany są trudne. Wymagają od nas zapoznania się z nowym otoczeniem, pozyskania nowych kontaktów, poznania nowych obowiązków i nauczenia się wykonywania pewnych znanych już nam czynności w trochę inny sposób niż robiliśmy to do tej pory.

Michał Cichy

PLANETA IT

Szklana forteca – złudne cyfrowe bezpieczeństwo

Spróbujcie zgadnąć, jak dawnym wynalazkiem jest klucz i zamek. Może średniowiecze? Mało. Więc czasy początków naszej ery? Dalej mało. Wzmianki o kluczu znalazły się choćby w dziełach Homera, więc mówimy tu o IX-VIII wieku przed naszą erą, a być może choćby jeszcze wcześniej. Historia zabezpieczeń sięga więc bardzo dawnych czasów. I choć wydawałoby się, iż kilka tysiącleci po wynalezieniu klucza, w erze błyskawicznego rozwoju technologii, zabezpieczenia powinny stawać się coraz trudniejsze do złamania, niejednokrotnie zdarza się, iż dzieje się zupełnie na odwrót…

Wojciech Sura

Idź do oryginalnego materiału