JS, Node.js, Vue, React, PHP, MongoDB, Wordpress, MySQL, HTML, CSS
Start projektu to jeden z najważniejszych etapów na jego osi czasu. W związku z tym kluczowe jest to, aby podczas tego etapu popełnić jak najmniej błędów. Popełnienie istotnego błędu na samym początku projektu może spowodować, że jego konsekwencje będą odczuwalne przez bardzo długi czas, a w skrajnych przypadkach przez cały cykl życia projektu. W tym …
Nie ma na świecie programisty, który wiedziałby wszystko. Duża część pracy programistów poświęcona jest poszukiwaniu dobrych i optymalnych rozwiązań. Często jednak nie udaje się odnaleźć zadowalającej odpowiedzi. W takim przypadku konieczne staje się zadawanie pytań. Ten wpis pokaże Ci jak zadawać dobre pytania techniczne, bo wbrew pozorom nie jest to takie łatwe. Przed zadaniem pytania …
Ten wpis jest kolejnym wpisem z serii wpisów o wzorcach projektowych. Po przeczytaniu tego wpisu, zachęcam Cię do zapoznania się z innymi wpisami z tej serii: Wzorzec projektowy Factory (Fabryka) Wzorzec projektowy Singleton Wzorzec projektowy Command (Polecenie) Tym razem omówię strukturalny wzorzec projektowy Proxy (Pełnomocnik). Proxy jako serwer pośredniczący Często pierwszym skojarzeniem ze słowem proxy …
W tym wpisie poruszam temat normalizacji relacyjnych baz danych oraz omawiam postaci normalne, do których można sprowadzić bazę danych. Do omówionych zagadnień przygotowane zostały również przykłady. Czym jest normalizacja? Zgodnie z definicją zamieszczoną w Encyklopedii PWN, normalizacja może być rozumiana jako: […] działalność mająca na celu uzyskanie optymalnego w danych okolicznościach stopnia uporządkowania w określonym …
Tematowi komentarzy w kodzie poświęciłem kiedyś wpis, w czasach gdy blog nie istniał w obecnej formie i pod obecną nazwą. Niestety, nie posiadam treści zawartej w tamtym wpisie, ale pamiętam, że wywołał on dyskusję, co pozwoliło na wymianę poglądów i punktów widzenia. Temat wydaje mi się na tyle ciekawy, że warto do niego wrócić. Ponowne …
Inversion of Control jest bardzo wartościowym wzorcem postępowania podczas pisania programów pisanych w oparciu o programowanie zorientowane obiektowo. W tym artykule dowiesz się, na czym polega Inversion of Control (lub też swojskie – odwrócenie sterowania), a także poznasz jedną z najczęściej spotykanych form zastosowania odwrócenia sterowania czyli Dependency Injection (wstrzyknięcie zależności). W artykule wykorzystuję przykłady …
Ten wpis będzie dość nietypowy w kontekście innych wpisów z mojego bloga. Temat obrony pracy dyplomowej spędzał mi przez jakiś czas sen z powiek. Na szczęście obrona pracy dyplomowej jest już za mną, a do następnej mam jeszcze sporo czasu. W tym wpisie chciałbym się z Tobą podzielić moimi przemyśleniami i spostrzeżeniami odnośnie stresu przed …
Fabryka jest bardzo powszechnie używanym i łatwym w zastosowaniu wzorcem projektowym. Mówiąc o wzorcu projektowym Fabryka można wyróżnić cztery rodzaje fabryk – Factory (fabryka), Factory Method (metoda wytwórcza), Static Factory (fabryka statyczna) oraz AbstractFactory (fabryka abstrakcyjna). Głównym założeniem fabryki, tak jak w rzeczywistym świecie, jest wytwarzanie obiektów. Dzięki wykorzystaniu fabryki, można ukryć szczegóły implementacyjne tworzenia …
W tym wpisie chciałbym przedstawić popularną metodę debugowania – Duck Debugging, czyli metodę debugowania gumowej kaczki. Metoda ta wielokrotnie pomogła mi rozwiązać skomplikowane problemy oraz znajdować błędy w istniejącym już kodzie. Metoda gumowej kaczki – Duck Debugging Nazwa metody gumowej kaczki, jak nietrudno się domyślić, pochodzi od gumowej kaczki. Tej samej gumowej kaczki, która jest …
SOLID, KISS i DRY to jedne z najpopularniejszych pojęć/skrótów wśród programistów. Są to na tyle kluczowe zagadnienia oraz przydatne w zadaniach programisty, że nie mogło ich zabraknąć na moim blogu. Wszystkie przykłady w tym artykule zostały napisane w TypeScripcie. Jeśli jednak TypeScript jest Ci obcy, to przykłady w dalszym ciągu powinny być dla Ciebie zrozumiałe. …
Niedawno, w ramach projektu na studia, miałem okazję brać udział w swoim pierwszym konkursie Capture The Flag (CTF). Z uwagi na to, że było to niesamowicie ciekawe doświadczenie, postanowiłem podzielić się w tym wpisie swoimi przemyśleniami i spostrzeżeniami odnośnie konkursów Capture The Flag. Czym jest Capture The Flag? Capture The Flag, w skrócie CTF, to …
Tym razem będzie nieco o bazach danych, a dokładniej mówiąc o zasadach transakcyjności, czyli ACID. Czym jest transakcja? W kontekście relacyjnych baz danych transakcja to mechanizm, który oczekuje zestawu operacji do wykonania. Do zaistnienia transakcji konieczne jest pomyślne wykonanie wszystkich operacji. W przeciwnym wypadku wszystkie operacje są odrzucane. Załóżmy, że mamy transakcję składającą się z …
Jest to kolejny wpis z serii wpisów z pytaniami rekrutacyjnymi na stanowisko web developera. Listę wszystkich poprzednich wpisów z tej serii znajdziesz poniżej. Zachęcam Cię do zapoznania się jeśli jeszcze nie miałeś/aś okazji: Web developer – pytania rekrutacyjne cz. 1 Web developer – pytania rekrutacyjne cz. 2 Web developer – pytania rekrutacyjne cz. 3 Web …
Jest to kolejny wpis z serii wpisów z pytaniami rekrutacyjnymi na stanowisko web developera. Listę wszystkich poprzednich wpisów z tej serii znajdziesz poniżej. Zachęcam Cię do zapoznania się jeśli jeszcze nie miałeś/aś okazji: Web developer – pytania rekrutacyjne cz. 1 Web developer – pytania rekrutacyjne cz. 2 Web developer – pytania rekrutacyjne cz. 3 Web …
Tematowi testów jednostkowych poświęciłem kilka artykułów na swoim blogu: Podstawy testów automatycznych oprogramowania O Test Driven Development Jeśli jeszcze się z nimi nie zapoznałeś/aś to serdecznie zachęcam. Tym razem poruszę temat zasad, którymi warto się kierować w trakcie pisania testów jednostkowych. Zasady te zostały zebrane pod akronimem FIRST. Owy skrótowiec możemy rozszyfrować jako: Fast Isolated …
JS, Node.js, Vue, React, PHP, MongoDB, Wordpress, MySQL, HTML, CSS
Hej,
Jestem młodym, prężnie rozwijającym się developerem. Interesuję się głównie JavaScriptem, a w szczególności Vue i Reactem. Z technologii backendowych moim konikiem jest node.js. Oprócz tego potrafię tworzyć zaawansowane witryny internetowe oparte na Wordpressie. Prowadzę bloga gdzie poruszam zagadnienia związane z programowaniem i szeroko pojętą informatyką.