Człowiek uczy się całe życie. Słyszymy, powtarzamy ten truizm. Czasem jest to pochwała, najczęściej pocieszenie.Wiedza, mądrość, inteligencja, czy to synonimy? Na studiach uczymy się czy studiujemy? Po studiach jesteśmy mądrzejsi czy mamy większą wiedzę? Czasami słyszę pytania skąd wiem to co wiem i w jaki sposób dowiaduję się co mam wiedzieć. Oto garść moich przemyśleń (rad?) na ten temat.
Sztuka programowania 3268 dni, 13 godzin, 5 minut temu 418 źrodło rozwiń
W części czternastej kursu Test-Driven Development omówimy technikę testowania zależności za pomocą atrap (jęz. ang. „mock”). Test jednostkowy z definicji testuje zachowanie w izolacji, a więc bez zależności zewnętrznych. Takimi zależnościami są najczęściej inne klasy lub interfejsy, które posiadają zachowanie.
Sztuka programowania 3270 dni, 8 godzin, 41 minut temu 164 źrodło rozwiń
← Kurs MVVM #3 – Galeria obrazów (ObservableCollection, AncestorType i datatemplate)Opublikowano, autor:Tomasz J Wstęp W poprzedniej części kursu dowiedzieliśmy się jak zbindować kolekcję danych. Dzisiaj rozszerzymy sobie to o możliwość bindowania kolekcji, która zawiera różne dane albo zawiera elementy, które chcielibyśmy przedstawić w różny sposób. Do tego posłuży nam DataTemplateSelector. Jeśli mój opis jest zbyt zagmatwany polecam zapoznać się z tym. https://msdn.microsoft.com/pl-pl/library/sys...
Sztuka programowania 3276 dni, 14 godzin, 17 minut temu 142 źrodło rozwiń
C# jest językiem, który był zaprojektowany z nastawieniem na programowanie obiektowe. Ewoluując, z każdą wersją zawiera co raz więcej elementów, które pozwalają na skorzystanie z paradygmatu języków funkcyjnych. Na przykładzie metody budującej listę html’ową pokażę kilka technik, dzięki którym zamienimy typowy kod C# w kod bardziej przypominający kod języka funkcyjnego.
Sztuka programowania 3291 dni, 12 godzin, 53 minuty temu 552 źrodło rozwiń
Po pierwszym wpisie na temat programowanie funkcyjnego w języku C#, dostałem sporo informacji, że końcowy kod jest dużo mniej czytelny od oryginalnego. Faktycznie dla osób, które nigdy nie pisali w języku funkcyjnym może być on trudniejszy do rozczytania. Spróbuję w niniejszym wpisie, pokazać jaka jest idea takiego zapisu. Używając programowania funkcyjnego, pracujemy na danych i funkcjach, które są wyraźnie od siebie oddzielone. Technika Pipeliningu pokazuję po pierwsze naturalny...
Sztuka programowania 3291 dni, 12 godzin, 53 minuty temu 251 źrodło rozwiń
← Kurs MVVM #2 – Konwertery i style w widokuOpublikowano, autor:Tomasz J Wprowadzenie W tej części kursu dowiesz się jak stworzyć prostą galerię obrazów. Co to jest kolekcja ObservableCollection. Jak połączyć kolekcję elementów z kontrolką ListView. Do czego służy AncestorType i jak stworzyć szablon dla elementów na liście. Zaczynamy ! Zadanie Utwórz aplikację WPF, a w niej jeden główny widok oraz połączony z nim viewmodel. W widoku umieść kontrolkę ListView i ustaw jej orientację na horyzontalną. ...
Sztuka programowania 3295 dni, 8 godzin, 25 minut temu 143 źrodło rozwiń
← Kurs MVVM #1 – WprowadzenieOpublikowano, autor:Tomasz J Wprowadzenie Jak dowiedzieliśmy się w pierwszym wpisie kursu istotą wzorca MVVM jest bindowanie. Czasem jednak chcielibyśmy wykorzystać już dostępne dane do zmian w naszym widoku czy ustawić widoczność pewnych elementów, ale zmienne w elemencie widoku mają inny typ niż te które posiadamy. Najpopularniejszy przykład to zmienne typu Visibility po stronie widoku i zmiennej typu bool, które chcielibyśmy do nich przypisać. Pisanie akcesorów do widok...
Sztuka programowania 3298 dni, 13 godzin, 39 minut temu 176 źrodło rozwiń
← Książkowe zapiski #2 – Mistrz czystego kodu (co powinien wiedzieć zawodowy programista)Opublikowano, autor:Tomasz J Schemat wzorca MVVM Przedmowa Co to właściwie takiego jest MVVM ? Na czym polega bindowanie i jakie są jego rodzaje ? Jak walidować przy pomocy MVVM ? Co to logika biznesowa ? Na wszystkie te pytania oraz wiele innych, które pojawią się w trakcie trwania tego kursu postaram się odpowiedzieć i pokazać jak się za nie zabrać w formie prostych przykładów. Jak mówił klasyk „czasem człow...
Sztuka programowania 3300 dni, 13 godzin, 48 minut temu 499 źrodło rozwiń
Zupełnie niedawno miałem okazję napisać dla jednego z moich klientów aplikację, która ze względu na potrzebę wykonania gigantycznej ilości zadań w możliwie jak najkrótszym odcinku czasu musiała korzystać z dostępnych w .NET mechanizmów przetwarzania równoległego. Postanowiłem do tego celu wykorzystać Task Parallel Library (w skrócie TPL), od niedawna oferowany dla programistów tej platformy. Mając w przeszłości spore doświadczenia z wykorzystaniem puli wątków uznałem, że ...
Sztuka programowania 3304 dni, 14 godzin, 23 minuty temu 360 źrodło rozwiń
← Książkowe zapiski #1 – „Czysty kod” (znaczące nazwy)Opublikowano, autor:Tomasz J „Mistrz czystego kodu” Autor: Robert C. Martin, Tłumaczenie: Wojciech Moch, Wydawnictwo: Helion W dzisiejszym, kolejnym już odcinku naszego cyklu „Książkowe zapiski” znowu posłużymy się tym co do przekazania ma nam Robert C. Martin zwany inaczej Wujkiem Bobem (ang. Uncle Bob). To, że autor w naszym cyklu nie jest pierwszy raz, nie znaczy wcale, że jest to jedyny autor, którego czytamy lub którego książki będą tutaj cyt...
Sztuka programowania 3306 dni, 14 godzin, 17 minut temu 235 źrodło rozwiń
What is interception in frontend and how to do this in JavaScript and jQuery
Sztuka programowania 3307 dni, 14 godzin, 39 minut temu 90 źrodło rozwiń
← Wstęp do języka R – co to właściwie jest i jak się za to zabrać ?Opublikowano, autor:Tomasz J „Czysty kod” Autor: Robert C. Martin, Tłumaczenie: Paweł Gonera, Wydawnictwo: Helion Książkowe zapiski #1 – „Czysty kod” (znaczące nazwy) – jest to pierwszy z serii artykułów „Książkowe zapiski”. W każdym z artykułów (tej serii) postaramy się omówić wybrane (przez nas ocenione jako te najbardziej wartościowe) fragmenty książek. Nie będą to ani subiektywne oceny książek, ani próba streszczeń całej książki,...
Sztuka programowania 3314 dni, 11 godzin, 33 minuty temu 296 źrodło rozwiń
Opis metod HTTP, sposobów ich użycia i przykładów zastosowań
Sztuka programowania 3319 dni, 5 godzin, 30 minut temu 217 źrodło rozwiń
From time to time I receive emails with questions “How to become better/awesome developer?”, “Should I go to college?”, “what’s the secret formula to become ultimate programmer?”. Instead of answering the same questions over, and over again – providing only partial response each time – I decided to write this blog post...
Sztuka programowania 3319 dni, 5 godzin, 30 minut temu 155 źrodło rozwiń
Short explanation of difference between expressions and functions in .NET
Sztuka programowania 3319 dni, 5 godzin, 30 minut temu 386 źrodło rozwiń
Jeżeli chcielibyście w projekcie Universal App tworzyć testy jednostkowe to po pierwsze oprócz MSTest niczego innego nie użyjecie. Jeżeli chcielibyście użyć znanego Wam framework do moqowania obiektów, zapomnijcie. Do takich konkluzji doszedłem podczas mojej kolejnej “zabawy” z projektem, który mam w głowie i powoli przenoszę go do świata żywego (nie ważne) Ale po kolei. Ważną rzeczą, na którą musicie zwrócić uwagę przy dodawaniu projektu unit test do to wybranie Unit Test App (Universal Windows) Tr...
Sztuka programowania 3319 dni, 5 godzin, 30 minut temu 155 źrodło rozwiń
Explanation how to use Kendo UI grid in Angular project. Post is focused on data source integration.
Sztuka programowania 3319 dni, 5 godzin, 30 minut temu 84 źrodło rozwiń
Szukanie lokalizacji danej biblioteki może być skomplikowane. W zależności od skonfigurowanego binding’u, inne foldery są przeszukiwanie. Problem stanowi druga część – “or one of its dependencies’. Wyjątek nie zawsze powie nam, której biblioteki brakuje nam. Jeszcze większe problemy natrafimy, gdy użyjemy natywnej referencji.Ostatnio miałem problemy z pewnym kodem i użyłem programu Process Monitor. Aplikacja może nie jest zbyt intuicyjna, ale pozwala w dość szybki sposób prześledzić wszystkie wiązania i ...
Sztuka programowania 3319 dni, 5 godzin, 30 minut temu 174 źrodło rozwiń
Wyobraźmy sobie scenariusz…. Aplikacja spięta z bazą danych, na której pracuje wiele osób, (dzień jak co dzień 😀 kto takiego czegoś nie robił? :D) modyfikować dany rekord, wpis może tylko jedna osoba na raz. Przed rozpoczęciem wprowadzania danych leci do bazy zapytanie czy rekord można zablokować. Jeżeli tak to taki rekord w bazie zostaje zablokowany. Jeżeli dzieje się coś innego, jak na przykład, dostajemy informacje, że rekord został zmodyfikowany ale aktualnie klient nie posiada jego zmian to proszo...
Sztuka programowania 3323 dni, 33 minuty temu 140 źrodło rozwiń
Mając chwilę wolnego czasu doszedłem do wniosku, że pobawię się Universal App. Jakby ktoś nie wiedział to jest taki nowy “twór” Microsoftu umożliwiający tworzenie aplikacji na każde urządzenie z Windows 10. Niby zapowiada się fajnie ale jak zwykle nie ma tak prosto jakby się chciało!! Zamiast siedzieć i testować nowe kontrolki, rozwiązania na emulatorach Windows Phone i Windows 10 to spędziłem kilka ładnych godzin nad rozwiązywaniem problemów. Ale wszystko po kolei. Wcześniejsze wersje produkowania...
Sztuka programowania 3323 dni, 33 minuty temu 233 źrodło rozwiń