W jaki sposób tworzyć procesy, które nie zawodzą? Procesy, które odporne są na awarie, brak prądu. Procesy, które są w stanie wrócić do miejsca w którym zostały przerwane i dalej realizować przeznaczone im zadanie. O tym i o sprytnym budowaniu procesów przy wykorzystaniu async-await w artykule poniżej.
Architektura 1460 dni, 19 godzin, 8 minut temu 45 źrodło rozwiń
Kolejnym krokiem rozwoju biblioteki StegoCore jest implementacja algorytmu ukrywania danych, który będzie odporny na kompresję JPEG. Aby lepiej zrozumieć zasadę jego działania, należy zacząć od przedstawienia samego formatu JPEG. Jak wygląda kodowanie i dekodowanie pliku graficznego w kompresji JPEG? W jaki sposób zmienić plik jpeg, aby umieścić w nim sekretne dane? Odpowiedzi na te inne pytania w poniższym poście.
Daj się poznać 2017 1460 dni, 19 godzin, 8 minut temu 40 źrodło rozwiń
W ostatnim wpisie poświęconym technologii Xamarin.Forms pokazałem, w jaki sposób stworzyć cross-platformową aplikację mobilną na trzy platformy jednocześnie. Wszystko to bez pisania ani jednej linijki natywnego kodu dla Androida, Windowsa, czy iOS’a. Wspominałem też w moim pierwszym wpisie poświęconym tej technologii, że jest to możliwe dzięki temu, że Xamarin podczas komplikacji konwertuje pisany przez nas kod do natywnego dla każdej z platform. Dotyczy to głównie kodu layout’...
Daj się poznać 2017 1460 dni, 19 godzin, 8 minut temu 32 źrodło rozwiń
Dzisiaj bohaterem mojego posta będzie Satellite Assembly. Jeżeli wiesz co to jest i miałeś już okazję z tego korzystać, to być może Cię rozczaruję, ale nie dowiesz się tutaj nic nowego. Jeżeli jednak jeszcze się z tym nie zetknęliście – zachęcam do krótkiej lektury. .Net daje nam możliwość zdefiniowania różnych zasobów, w zależności od kultury w kontekście której działa nasza aplikacja. Najczęściej wykorzystywane jest to w aplikacjach wspierających wiele języków. Tworzy si...
Daj się poznać 2017 1460 dni, 19 godzin, 8 minut temu 88 źrodło rozwiń
Jeśli na co dzień obsługujesz Gita z poziomu konsoli i nie korzystasz z aliasów to popełniasz duży błąd. Aliasy znacząco przyspieszają pracę z Gitem. Zachęcam do zdefiniowania kilku aliasów do najczęściej wykorzystywanych komend i przekonania się, że praca z Gitem może być jeszcze bardziej przyjemna i znacząco szybsza. Pomoże Ci w tym ten wpis, który krótko prezentuje podstawy oraz smaczki aliasów.
Kolejną rzeczą, nad którą pracowałem w ramach mojego projektu Winbot, była edycja różnych obiektów za pomocą interfejsu użytkownika. W aplikacji występuje kilka typów obiektów. Mógłbym przygotować oddzielne kontrolki do edycji każdego typu z osobna, ale takie rozwiązanie mnie nie zadowalało. Za każdym razem kiedy chciałbym wprowadzić nowy typ, musiałbym dodatkowo przygotować nową kontrolkę do edycji. Byłoby to dość niewygodne i denerwujące. Moim celem było przygotowanie gen...
Daj się poznać 2017 1461 dni, 17 godzin, 10 minut temu 29 źrodło rozwiń
This time I want to focus on user authentication. In APIs we can use different methods for user authentication like: -cookie Authentication -basic Authentication (not recommended, slow and insecure) -token Authentication In this post I want to show you how to implement cookie authentication in ASP.NET Core Web API.
Daj się poznać 2017 1461 dni, 17 godzin, 10 minut temu 78 źrodło rozwiń
Entity Framework (and other ORMs) are in general great pieces of software that makes developers lives so much easier by letting us thinking about objects when we’re working with data persisted in some underlying database. This makes development much easier than writing raw SQL queries. But some of us tend to get too comfy and forgetting about things that lies beneath our beautiful, object oriented code. After all we have Entity Framework, we shouldn’t wrap our heads around SQL stuff. But how about actual...
Daj się poznać 2017 1461 dni, 17 godzin, 10 minut temu 190 źrodło rozwiń
Podczas przygotowywania prezentacji na var Sovia = new Tech(); natrafiliśmy na problem który dawał nam miejsce do pastwienia się nad dotnetem i z którego ja bardzo chciałem skorzystać ;) Dobrze, że tego nie zrobiliśmy. Po raz kolejny wyszła na jaw pewna prawda i jeden z podstawowych sposobów analizowania i debugowania aplikacji. Zapraszam do lektury
Nie w rozszerzeniu życia i jego namiętności leży szczęście, ale w wyrzeczeniu się ich. Jakiś losowy cytat o rozszerzaniu z googla, nie mający nic wspólnego z tematem. W dzisiejszym odcinku przyjrzymy się metodom rozszerzającym. Metody rozszerzające, jak większość rzeczy z tej serii, zostały wprowadzone w jednym celu – aby usprawnić LINQ. To, że możemy ich używać w innym celu, to tylko miły dodatek. Są one w zasadzie metodami statycznymi, które można wywoływać jakby były m...
Daj się poznać 2017 1462 dni, 18 godzin, 23 minuty temu 77 źrodło rozwiń
Kilka słów o snippetach. Co to w ogóle są snippety, do czego używać. Spis popularnych snippetów.
In my previous post I wrote about my problem with "empty" projects and Roslyn. The symptom was that in some cases according to Roslyn my C# projects didn't contain any files. For quite a long time, I haven't been able to find a solution. Especially because I couldn't reproduce problem on my local machine. Fortunately, today I noticed exactly the same problem on another computer.
Sztuka programowania 1462 dni, 18 godzin, 23 minuty temu 51 źrodło rozwiń
Pisze do mnie wielu początkujących kierowników projektu z pytaniami na temat przeprowadzania zmian w projekcie – implementacji nowych funkcji. W tym wpisie opisałem jak podzielić ten proces na etapy, które pomogą nam przeprowadzenie udanych zmian na naszym projekcie. Zapraszam do lektury!
Recently at work I’ve been looking into migrating our projects from VS2013 to VS2017. As part of the process we decided to move from C# 5.0 to C# 7.0. It turned out that after the switch some of our projects won’t build anymore. I spent some time investigating the issue and found the outcome interesting so let me share my story with you.
Sztuka programowania 1462 dni, 18 godzin, 23 minuty temu 65 źrodło rozwiń
W ostatnich tygodniach nieco więcej skupiłem się na pisaniu postów na bloga niż na samym projekcie, nie znaczy to jednak że go odłożyłem. Ponieważ udało mi się kilka tygodni temu podgonić trochę tematy związane z komunikacją, nadal z grubsza biorąc mieszczę się w założonych ramach czasowych. Gotowe jest już większość kodu Arduino (poza częścią związaną z autonomią poruszania się robota) i w zasadzie w większości mam g...
Daj się poznać 2017 1462 dni, 18 godzin, 23 minuty temu 22 źrodło rozwiń
Dzisiaj taki dość przyjemny temat na niedzielny wieczór. Mianowicie o tym co lubię robić, kiedy mam chwilę czasu i chęć na poćwiczenie umysłu. Otóż moim ulubionym przedmiotem w szkole była matematyka a algorytmy to jedna z rzeczy, które najbardziej mnie interesowały na studiach. Niestety w pracy w tym momencie nie wykorzystuję zbytnio tych „algorytmów akademickich”, ale staram się by w mojej głowie nie zaśniedziały one za bardzo.Matematyka i algorytmy Już wiele lat temu znalazłam stronę „Project Euler”,...
Daj się poznać 2017 1464 dni, 5 godzin, 39 minut temu 230 źrodło rozwiń
Zapraszam do kolejnego wpisu z cyklu wpisów skupiających się na zasadzie SOLID czyli core zasadzie jeżeli chodzi o programowanie obiektowe.
Daj się poznać 2017 1464 dni, 5 godzin, 39 minut temu 128 źrodło rozwiń
Krótki opis aktualnego stanu ekosystemu JavaScript'u, skąd się wziąła cała sytuacja i jak sobie z nią radzić
Daj się poznać 2017 1464 dni, 5 godzin, 39 minut temu 134 źrodło rozwiń