Author name: Damian

Szyfrowanie – podstawy

Szyfrowanie polega na zamianie tekstu jawnego na szyfrogram (ang. ciphertext): TEKST JAWNY -> SZYFROGRAM Proces szyfrowania TEKST JAWNY -> ALGORYTM SZYFRUJĄCY(KLUCZ) -> SZYFROGRAM Zapis techniczny Proces odszyfrowywania SZYFROGRAM -> ALGORYTM ODSZYFROWUJĄCY(KLUCZ) -> TEKST JAWNY Zapis techniczny

Wersjonowanie semantyczne – MAJOR.MINOR.PATCH

Wersjonowanie semantyczne wykorzystuje trzy sekwencje liczb oddzielone kropką. Z czego:MAJOR – wprowadzamy głównie wtedy gdy mamy niekompatybilność pomiędzy wersjamiMINOR – gdy dodajesz nową funkcjonalnośćPATCH – gdy wrzucasz poprawki (nie zrywając kompatybilności wstecznej) Więcej na temat wersjonowania semantycznego można przeczytać tutaj https://semver.org/lang/pl/ .

Jak zmienić kodowanie znaków tekstu? I czy zawsze jest to możliwe?

Aby zmienić kodowanie z jednego na drugie należy najpierw odczytać tekst przy pomocy kodowania źródłowego i później zapisać z kodowaniem docelowym. Czyli trzeba zamienić numerki z jednego kodowania na odpowiedniki z drugiego kodowania (bo na końcu znaki są zapisywane za pomocą liczb). Tyle teorii. Krok po kroku Załóżmy, że mamy następujący tekst: I załóżmy, że …

Jak zmienić kodowanie znaków tekstu? I czy zawsze jest to możliwe? Czytaj dalej »

Czym jest code page?

Code page to po prostu sposób kodowania znaków (czasami także nazywany encoding). Jak odczytać aktualne kodowanie znaków? Windows – linia komend Aby sprawdzić aktualnie używane kodowanie znaków, można użyć polecenia chcp (change code page), które to w wersji bez-argumentowej zwraca aktualnie używane kodowanie: Gdzie znaleźć opis dla code page? – https://en.wikipedia.org/wiki/Code_page– https://learn.microsoft.com/en-us/windows/win32/intl/code-page-identifiers [tylko dla systemu …

Czym jest code page? Czytaj dalej »

Kubernetes – podstawy komunikacji sieciowej w ramach klastra

Kubernetes pozwala na komunikację w ramach klastra, zarówno pomiędzy kontenerami, podami jak i serwisami. Komunikacja między kontenerami w ramach jednego poda Kubernetes pozwala na użycie locolhost w celu komunikacji pomiędzy dwoma kontenerami w ramach jednego poda. Pod-Pod Z racji tego, że każdy pod w ramach klastra Kubernetes posiada adres IP, możemy wykorzystać te adresy do …

Kubernetes – podstawy komunikacji sieciowej w ramach klastra Czytaj dalej »

Poziomy abstrakcji w kodzie

Dobre zarządzanie poziomami abstrakcji kodu sprawia, że kod jest łatwiejszy do zrozumienia i w wielu przypadkach do utrzymania. Lecz nie jest to łatwe zadanie 🙂 Jak sobie pomóc? Opowiadanie o kodzie Jednym ze sposób jest opowiadanie o swoim kodzie. Rzeczy na najwyższym poziomie abstrakcji powinniśmy być w stanie wytłumaczyć osobom kompletnie nietechnicznym – znającym tylko …

Poziomy abstrakcji w kodzie Czytaj dalej »

Kubernetes – wolumeny

Kubernetes wspiera różne typy wolumenów (jest to odpowiednik wolumenów Docker w świecie Kubernetes). Główny podział to na te efemeryczne (związane mocno z cyklem życia podów) oraz trwałe (persistent volumes). Efemeryczne wolumeny (ephemeral volumes) Wolumeny efemeryczne bardzo przypominają standardowe mechanizmy wolumenów Dockerowych – istnieją przez czas życia instancji Dockera (silnika Docker) czyli dopóki ta instancja nie …

Kubernetes – wolumeny Czytaj dalej »

Kubernetes – Persistent Volume (Claim) – czyli jak wydzielić konfigurację wolumenów

Persistence Volume to definicja wolumenu jako oddzielnego zasobu – czyli jaki to wolumen, ile ma mieć pamięci itd. A Persistent Volume Claim pozwala na, zdefiniowanie żądania wolumenu – czyli coś w stylu „Hej, chcę taki i taki wolumen, posiadający tyle i tyle pamięci”: Czyli zastosowana jest tutaj znana już zasada rozdzielania odpowiedzialności (w tym wypadku …

Kubernetes – Persistent Volume (Claim) – czyli jak wydzielić konfigurację wolumenów Czytaj dalej »

Kubernetes – Quality of Service – czyli definiowanie wymagań

W nomenklaturze Kubernetes Quality of Service (QoS) mówi o definiowaniu wymagań z poziomu poda przykładowo ile potrzebuje RAMu lub zasobów procesora. Przy tym Kubernetes wyróżnia trzy klasy Quality of Service: Guaranteed, Burstable, BestEffort. Definiowanie wymagać (Quality of Service) Quality of Service (czyli wymagania) definiowane są w sekcji resources i dotyczą tego czego oczekujemy oraz limitu: …

Kubernetes – Quality of Service – czyli definiowanie wymagań Czytaj dalej »

Wzorzec projektowy Mediator

Wzorzec projektowy Mediator pomaga w w utrzymaniu luźnych powiązań pomiędzy klasami. Polega to najczęściej na wprowadzeniu swojego rodzaju menedżera (mediatora), który to będzie obsługiwał komunikację pomiędzy obiektami, tak aby uniknąć powiązań każdy do każdego. Przykładem takiego systemu mógłby być system inteligentnego domu. Załóżmy, że mamy w nim kilka komponentów takich jak na przykład czujnik temperatury, …

Wzorzec projektowy Mediator Czytaj dalej »