Author Archives: rhryniewski

Przyspieszamy Regexy – prekompilacja

By | December 13, 2016

Ostatnio musiałem trochę popracować z ukochanymi przez niektórych regexami. Nie mogę o sobie powiedzieć, że klepię z pamięci skomplikowane patterny, ale wyrażenia regularne są naprawdę świetną i użyteczną funkcjonalnością. Zupełnym przypadkiem zetknąłem się ze sposobem na przyspieszenie ich działania za pomocą metody Regex.CompileToAssembly(). Na potrzeby testów korzystam z czterech sposobów używania klasy Regex. W każdym z nich… Read More »

ToList(), or not ToList()…

By | November 23, 2016

…oto jest pytanie! Po długiej przerwie w pisaniu postaram się Wam na nie odpowiedzieć. Co dzieje się w momencie użycia tej metody? Kiedy powinniśmy z niej korzystać, a kiedy możemy to sobie odpuścić? Oczywiście nie będę w stanie przeanalizować każdej możliwej sytuacji, ale mam nadzieję, że po dzisiejszej lekturze będziecie korzystać z tej metody w… Read More »

Trzy słowa o optymalizacji LINQ

By | October 8, 2016

Kontynuując wątek LINQ, który podjąłem jakiś czas temu, poruszę dziś temat optymalizacji operacji jakie wykonujemy na kolekcjach. Na starcie muszę się przyznać, że tytuł nie jest do końca zgodny z prawdą, bo trzy słowa to o wiele za mało, by wejść w głębiej w temat optymalizacji zapytań. Są jednak 3 metody, które można wykorzystać do znacznego… Read More »

Obsługa wyjątków w LINQ

By | September 18, 2016

Jak już wspominałem, uwielbiam LINQ. Z każdym razem gdy go używam odrobinę bardziej. Ale nie każdy pała do LINQ równie wielką miłością co ja i pojawiają się różne argumenty przemawiające przeciw korzystaniu z tej funkcjonalności w wielu przypadkach, również w takich gdzie znacznie ułatwiłoby to nam życie. Jednym z takich argumentów jest trudność w debugowaniu długich… Read More »

Deferred execution w LINQ – kiedy wywoływane jest zapytanie?

By | August 30, 2016

LINQ jest funkcjonalnością, która zainteresowała mnie w C# praktycznie od początku mojej styczności z tym językiem. Jest to narzędzie naprawdę potężne i w odpowiednich rękach może bardzo usprawnić działanie aplikacji i zwiększyć czytelność kodu. Sęk w tym, że o ile łatwo pisze się wszelkiego rodzaju Selecty, Whery i ToListy, to fajnie byłoby jeszcze wiedzieć co,… Read More »

SignalR i AngularJS – Związek doskonały

By | August 6, 2016

Mniej więcej 3 miesiące temu zainteresowałem się biblioteką SignalR i bardzo szybko stała się ona jednym z moich ulubionych narzędzi. Z mojego polecenia skorzystało z niej kilka osób i każdy chwalił ją za bardzo szybkie widoczne efekty i banalną implementację. O czym nie wspomniałem w poprzednich postach, to połączenie SignalR z jednym z najpopularniejszych obecnie frameworków… Read More »

Nauka na własnych błędach z NDepend

By | July 23, 2016

O ReSharperze słyszał niemalże każdy, kto zajmuje się programowaniem w .NET. I o ile jest to rozszerzenie bardzo przydatne, to dziś chciałbym Wam opowiedzieć o nieco innym narzędziu, które co prawda nie odwali tyle roboty za Ciebie, ale jest w stanie zrobić bardzo wiele dla Ciebie. Mowa o NDpend, który jest w stanie przeanalizować nasz kod… Read More »

Dlaczego jeszcze nie blogujesz?

By | July 4, 2016

Dosyć często w rozmowach z innymi ludźmi przewija mi się temat bloga i zawsze polecam tą formę dodatkowej aktywności. Znaczna większość moich rozmówców nie chce jednak nawet spróbować postawić pierwszego kroku na tej ścieżce. Co jest bardzo interesujące to fakt, że ich argumentacja jest każdorazowo niemalże identyczna i moim zdaniem błędna. Dlatego też pozwolę sobie założyć,… Read More »

Tworzymy kanał RSS w ASP.NET MVC

By | July 1, 2016

Ostatnio stanąłem oko w oko z zadaniem stworzenia kanału RSS. Spodziewałem się czegoś trudniejszego, a zadanie okazało się o wiele prostsze niż myślałem. Być może sposób ten się komuś przyda, więc na wszelki wypadek się nim podzielę. Po szybkim researchu zdecydowanie najprzyjemniejszym i najprostszym rozwiązaniem wydało mi się stworzenie klasy RSSResult dziedziczącej po ActionResult, czyli klasie,… Read More »

Dynamiczne tworzenie zapytań do Entity Framework

By | June 22, 2016

Czasem może nas spotkać sytuacja, że bardzo potrzebujemy stworzyć zapytanie do Entity Framework, które musi dynamicznie reagować na nasze wymagania i w jednym konkretnym przypadku będzie potrzebowało dodatkowego Where(). Oczywiście, możemy napisać oddzielne zapytania i warunek, ale istnieje odrobinę sprytniejszy sposób. Zacznijmy od nakreślenia prostego kontekstu sytuacji. Załóżmy, że coś sprzedajemy i na przykład w poniedziałki nie… Read More »

Wrażenia z Gali Finałowej Daj Się Poznać 2016

By | June 20, 2016

Przedwczoraj odbyła się długo wyczekiwana Gala Finałowa Daj Się Poznać 2016 i miałem przyjemność na niej być jako uczestnik, finalista i prelegent. Miałem trochę czasu na poukładanie sobie tego wszystkiego w głowie i co nieco o tym napiszę. Wstawanie rano zdecydowanie nie zależy do moich ulubionych czynności, zwłaszcza jeśli rano == 4:00. Planowałem zaliczyć drzemkę w… Read More »

Daj Się Poznać 2016 – Finały

By | June 8, 2016

Nadszedł TEN dzień. Dzień w którym poznaliśmy osoby, które znalazły się w ścisłym finale konkursu Daj Się Poznać. I … jestem wśród nich. Bardzo dziękuję wszystkim, którzy na mnie głosowali. Sporą część projektów pozostałych finalistów przejrzałem i muszę powiedzieć, że znalazłem się w naprawdę bardzo, ale to bardzo zacnym gronie. Dla osób, które planują oddać głos… Read More »

Jak zacząć naukę programowania w C# (i nie tylko)?

By | May 30, 2016

Bardzo często spotykam się z pytaniem “jak rozpocząć naukę programowania”. Jako, że jestem samoukiem i jeszcze pamiętam swoje początki, a w podsumowaniu konkursu gorąco zachęcałem do brania udziału w inicjatywach takich jak Daj Się Poznać nawet jeśli ktoś dopiero zaczyna swoją przygodę z programowaniem, to postanowiłem podsumować swoje przemyślenia na temat rozpoczęcia samego procesu nauki,… Read More »

Podsumowanie konkursu Daj Się Poznać 2016

By | May 23, 2016

Został raptem tydzień do końca maja, a co za tym idzie oficjalnego zakończenia konkursu Daj Się Poznać 2016. Nie będę oryginalny, ale ostatni z wymaganych postów będzie krótkim podsumowaniem tego co działo się przez 3 ostatnie miesiące. Ale najpierw cofnijmy się jeszcze do czasów przed konkursem, kiedy to niepewny swoich umiejętności zastanawiałem się czy w… Read More »

Powiadomienia o statusie realizacji zamówienia w czasie rzeczywistym – SignalR

By | May 19, 2016

W swoim projekcie umieściłem funkcjonalność, na którą czekałem już od jakiegoś czasu. Chodzi o informowanie klienta o statusie jakie ma jego zamówienie i szacowanym terminie realizacji w czasie rzeczywistym i bez przeładowywania strony. Wszystko za pośrednictwem pojedynczej strony, na którą klient jest przekierowywany po wykonaniu zamówienia i kilku linijek kodu w SignalR. Póki co znajduje się ona… Read More »

Integracja z Payu – Wysyłanie zamówień

By | May 15, 2016

Integracja systemu płatności PayU i ASP.NET MVC jest naprawdę prosta. Z ich dokumentacją i podstawową wiedzą na temat klienta REST API można rozpocząć wysyłanie zamówień w jeden wieczór. A dziś pokażę Wam jak wygląda to w moim projekcie. W tym poście pokryję tylko temat tworzenia nowych zamówień, wysyłania ich do API PayU i otrzymania linku… Read More »

Powiadomienia o nowych zamówieniach w czasie rzeczywistym – pierwsze kroki z SignalR

By | May 8, 2016

Chciałbym, aby po złożeniu zamówienia przez klienta obsługa restauracji była automatycznie powiadamiana o nowym zamówieniu i mogła rozpocząć jego realizację od razu. Bez odświeżania okna, szukania nowości na liście zamówień. Chcemy mieć wielki komunikat na środku ekranu niezależnie od tego gdzie w panelu administracyjnym właśnie się znajdujemy (przyjąłem założenie, że realizacja zamówienia ma najwyższy priorytet)… Read More »

Nieudana próba integracji z PayU

By | May 7, 2016

Od jakiegoś czasu bezskutecznie walczę z integracją systemu płatności PayU. Niestety, ale utknąłem praktycznie na starcie, bo nie udało mi się wyjść nawet poza przykład podany w dokumentacji, nie mówiąc już o wysyłaniu realnych danych. Stoję w miejscu i przydałoby mi się popchnięcie w odpowiednim kierunku. PayU wystawia REST API, które chciałem wykorzystać do integracji.… Read More »

Inicjowanie i wypełnianie bazy danych w Entity Framework Code First

By | May 4, 2016

Podczas pracy nad projektem lubię dysponować zestawem poglądowych danych, na których mogę operować podczas postępujących prac, spojrzeć jak prezentują się po odpaleniu aplikacji itd. Dziś opowiem o szybkim, łatwym i w pełni zgodnym z ideą Code First sposobie na wypełnienie bazy różnego rodzaju danymi podczas uruchamiania aplikacji i strategiami inicjalizacji bazy podczas każdego startu. Kiedy powinna być tworzona na… Read More »

Dodawanie WebAPI do istniejącego projektu

By | May 3, 2016

Niestety, ale bardzo poważnie zaciąłem się przy integracji z PayU, w związku z tym dzisiaj post o tym co zrobiłem jakiś tydzień temu. Mianowicie – odkryłem, że na śmierć zapomniałem dodać do projektu elementy WebAPI w momencie jego tworzenia. Nie wszystko stracone, bo dodanie API do projektu nie jest co prawda tak banalne jak zaznaczenie… Read More »