PHP, MySQL, Symfony, Doctrine, Javascript, jQuery, Vue.js, Express.js, Socket.io, HTML5, CSS, SASS, RWD, Git, Webpack, Gulp, Vagrant etc., WordPress, Magento, Prestashop, Linux
W klasie implementującej interfejs znaleźć muszą się implementacje wszystkich metod zawartych w tym interfejsie. W przypadku gdy w danej klasie nie potrzebujemy wszystkich metod, pojawia się problem. Przestrzeganie kolejnej z zasad programowania obiektowego SOLID pozwoli nam uniknąć takich kłopotów. Zasada Interface segregation principle mówi nam, że klasa nigdy nie powinna być zmuszana do implementacji metod, których […]
Kolejną z zasad SOLID pozwalających na tworzenie dobrej jakości rozwiązań jest zasada Liskov substitution principle(Zasada podstawiania Liskov). Sformułowana ona została przez Barbarę Liskov w książce Data Abstraction and Hierarch. Definicja prezentuje się w następujący sposób. Let f(x) be a property provable about objects x of type T. Then f(y) should be true for objects y of type S where S is a subtype of T. […]
Kolejną z zasad SOLID pozwalających na tworzenie dobrej jakości rozwiązań jest zasada Liskov substitution principle(Zasada podstawiania Liskov). Sformułowana ona została przez Barbarę Liskov w książce Data Abstraction and Hierarch. Definicja prezentuje się w następujący sposób. Let f(x) be a property provable about objects x of type T. Then f(y) should be true for objects y of type S where S is a subtype of T. […]
Projektując poważny system musimy mieć na uwadze jego przyszłą ewolucję. Kolejną z zasad SOLID, która pozwoli nam w spokoju rozwijać nasz kod jest Open/closed principle. Mówimy nam ona o tym, że kod powinien być otwarty na rozbudowę oraz zamknięty na modyfikację. Co to znaczy? Najprostszym sposobem na ocenienie czy nasz kod jest zgodny z tą […]
Projektując poważny system musimy mieć na uwadze jego przyszłą ewolucję. Kolejną z zasad SOLID, która pozwoli nam w spokoju rozwijać nasz kod jest Open/closed principle. Mówimy nam ona o tym, że kod powinien być otwarty na rozbudowę oraz zamknięty na modyfikację. Co to znaczy? Najprostszym sposobem na ocenienie czy nasz kod jest zgodny z tą […]
Sama umiejętność rozwiązania problemu nie jest wystarczająca, aby było ono dobrej jakości. W celu zapewnienia sobie spokojnej przyszłości w pracy z łatwym w rozwoju oraz utrzymaniu kodzie należy przestrzegać pewnych zasad. SOLID SOLID jest mnemonikiem ułatwiającym zapamiętanie pięciu podstawowych zasad programowania obiektowego. SRP – Single responsibility principle (Zasada pojedynczej odpowiedzialności) OCP – Open/closed principle (Zasada […]
Sama umiejętność rozwiązania problemu nie jest wystarczająca, aby było ono dobrej jakości. W celu zapewnienia sobie spokojnej przyszłości w pracy z łatwym w rozwoju oraz utrzymaniu kodzie należy przestrzegać pewnych zasad. SOLID SOLID jest mnemonikiem ułatwiającym zapamiętanie pięciu podstawowych zasad programowania obiektowego. SRP – Single responsibility principle (Zasada pojedynczej odpowiedzialności) OCP – Open/closed principle (Zasada […]
Wczoraj na blogu opisywałem rozwiązanie zadania „Misja Gynvaela 008”, jednak o ile udało się wygenerować mapę i odczytać hasło, to czas przetwarzania plików był stanowczo zbyt długi. Postanowiłem przyjrzeć się temu ponownie i postarać się coś przyśpieszyć. Profilowanie Pierwszym krokiem będzie sprawdzenie za pomocą narzędzia Blackfire co stanowi tzw. wąskie gardło, czyli jaka czynność trwa najdłużej. […]
Wczoraj na blogu opisywałem rozwiązanie zadania „Misja Gynvaela 008”, jednak o ile udało się wygenerować mapę i odczytać hasło, to czas przetwarzania plików był stanowczo zbyt długi. Postanowiłem przyjrzeć się temu ponownie i postarać się coś przyśpieszyć. Profilowanie Pierwszym krokiem będzie sprawdzenie za pomocą narzędzia Blackfire co stanowi tzw. wąskie gardło, czyli jaka czynność trwa najdłużej. […]
Ostatnio wpadło mi w ręce zadanie podane przez Gynvaela na jednym z ostatnich streamów, które wydało mi się na tyle ciekawe, że postanowiłem je rozwiązać oraz opisać na blogu. Zapraszam więc do dalszego czytania! MISJA 008 goo.gl/gg4QcA DIFFICULTY: █████████░ [9/10] ┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅ Otrzymaliśmy dość nietypową prośbę o pomoc od lokalnego Instytutu Archeologii. Okazało się, iż […]
Ostatnio wpadło mi w ręce zadanie podane przez Gynvaela na jednym z ostatnich streamów, które wydało mi się na tyle ciekawe, że postanowiłem je rozwiązać oraz opisać na blogu. Zapraszam więc do dalszego czytania! MISJA 008 goo.gl/gg4QcA DIFFICULTY: █████████░ [9/10] ┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅ Otrzymaliśmy dość nietypową prośbę o pomoc od lokalnego Instytutu Archeologii. Okazało się, iż […]
IT rozwija się niesamowicie szybko, w związku z tym pracując w branży należy śledzić zmiany, aby po prostu z niej nie wypaść. Jednak czyhają tutaj na nas pewne pułapki, w które samemu niestety udało mi się wpaść. W tym wpisie chciałbym przedstawić swoje przemyślenia na ten temat. Szerokie zainteresowania Zawsze interesowałem się wieloma rzeczami, nie […]
IT rozwija się niesamowicie szybko, w związku z tym pracując w branży należy śledzić zmiany, aby po prostu z niej nie wypaść. Jednak czyhają tutaj na nas pewne pułapki, w które samemu niestety udało mi się wpaść. W tym wpisie chciałbym przedstawić swoje przemyślenia na ten temat. Szerokie zainteresowania Zawsze interesowałem się wieloma rzeczami, nie […]
W obecnych czasach każdy z nas posiada kilka urządzeń elektronicznych podłączonych do internetu. Duża część osób nie rozstaje się ze swoimi smartfonami, nosząc je cały czas przy sobie oraz nie wyłącza w ogóle w nich internetu, co sprawia, że są bez przerwy online. Korzystamy z mnóstwa serwisów ułatwiających nam pracę, edukację czy komunikację ze znajomymi: […]
W obecnych czasach każdy z nas posiada kilka urządzeń elektronicznych podłączonych do internetu. Duża część osób nie rozstaje się ze swoimi smartfonami, nosząc je cały czas przy sobie oraz nie wyłącza w ogóle w nich internetu, co sprawia, że są bez przerwy online. Korzystamy z mnóstwa serwisów ułatwiających nam pracę, edukację czy komunikację ze znajomymi: […]
PHP, MySQL, Symfony, Doctrine, Javascript, jQuery, Vue.js, Express.js, Socket.io, HTML5, CSS, SASS, RWD, Git, Webpack, Gulp, Vagrant etc., WordPress, Magento, Prestashop, Linux
SarvenDev a właściwie Kamil Ruchała jest z Nowego Sącza. Swoją przygodę zaczął jako freelancer pisząc wtyczki do WordPress, Magento czy Prestashop.
Obecnie pracuje jako Backend Developer, ale mimo to nie zamyka się na technologie frontendowe - lubi pisać kod między innymi w Vue.js.