Witam ponownie! Dziś, tak jak zapowiadałem w ostatnim wpisie, znów powraca temat „Testowanie z Jasmine” Powoli robi się z tego taki mini kurs (czy jak to nazwać) no ale temat zdecydowanie wymaga kontynuowania… Zatem dziś kolejne aspekty frameworka Jasmine, a konkretniej matchery czyli odpowiedniki asercji znanych z innych frameworków testowych; ponadto „setup” oraz „teardown” czyli sposób na inicjowanie testów i sprzątanie po nich; wspomnę także o metodach w...
Tyle się mówi o rozwoju programistów. Ba, sam o tym często gadam. Że to dobre, że trzeba, żeby nie stać w miejscu a iść do przodu… Ale powiedzcie mi: jak ma się rozwijać programista w typowym programistycznym polskim (i pewnie nie tylko) dev-kołhozie? Przychodzi do roboty, siada do projektu, po 8h wstaje i wychodzi. Niby normalka, ale… niekoniecznie. Moim zdaniem kluczowe jest pytanie: do jakiego projektu ten pr...
Powiadomienia mailowe bezpośrednio z poziomu serwera bazodanowego, to niezwykle przydatna funkcjonalność. W artykule zaprezentowane są możliwości, architektura Database Mail w SQL Server oraz opis najczęściej pojawiających się problemów z rozwiązaniami
Bazy danych i XML 3783 dni, 15 godzin, 13 minut temu 165 źrodło rozwiń
TortoiseSVN has a function named simply “rename” which allows you to change the file name and keep the file history as well. But what if we change the file name for example during refactoring using Visual Studio? Are we fated to lose file history?
Przez ostatnie kilka tygodni miałem okazję pracować nad dość nietypowym projektem - stroną promocyjną działu IT, w którym pracuję. Projekt okazał się niezwykle ciekawą odskocznią od tworzonych na co dzień serwisów biznesowych, a przy okazji było to spore wyzwanie na wielu polach ...
Ostatnio programując w javie (sic!) spodobała mi się jedna rzecz, którą chciałem wprowadzić do swoich projektów w .NET, a mianowicie Interceptor. Pozwala on w prosty sposób udekorować metodę własną logiką i to wszystko za pomocą jednej adnotacji...
Potrzebowałem pewien czas temu uzyskać taki w gruncie rzeczy prosty efekt. Po kliknięciu lewym przyciskiem myszki na butonie otwiera się menu z którego wybieramy interesującą opcję. Niby nic trudnego, ale ja przekombinowałem (nie pierwszy zresztą raz i nie ostatni). Na początek może jak wyglądałby kod takiego buttona: Nic niezwykłego jak sądzę. Teraz tylko tak to zaimplementować aby otwierało się na lewy przycisk a nie na prawy. Najpierw może pokaże jak zrobiłem to w code-behind. Pierwsze co m...
This post is part of the series: iOS for C# Developer. C# developers works with Visual Studio. Recently, some are trying to switch to SublimeText. However, I will assume that you, as C# Developer are familiar with VS. To write iOS applications, you need Xcode. I haven’t heard about nobody who created an working app in a different editor (more advanced than Hello World)...
Poprzedni wpis dotyczył cyklu życia strony w ASP.NET. Był związany z pytaniem, które trafiło mi się na jednej z rozmów kwalifikacyjnych. Po ukończeniu tamtego posta, zaczęły mi się przypominać również inne pytania. Stwierdziłem, że przez następne kilka tygodni będę tutaj na blogu zadawał jedno z takich pytań i starał się je rozwiązać, rozwiewając wszelkie wątpliwości. Pytanie brzmiało: jaka jest różnica pomiędzy słowem new, a słowem override? Zaczynając od przykładu: class Program { stat...
Sztuka programowania 3788 dni, 9 godzin, 47 minut temu 452 źrodło rozwiń
Kompresja gZIP czyli najprostszy (chyba) sposób na odchudzenie strony. Wiadomo, że należy stosować odpowiednie podejście do tworzenia layoutów, jednak kiedy zdarzy się już tak rozbudowany widok, a nie można z niego po prostu wyrzucić danych czy podielić ich na kilka innych widoków to warto się tym rozwiązaniem zainteresować. W sumie warto się nim zainteresować tak czy tak.
Sztuka programowania 3788 dni, 9 godzin, 47 minut temu 169 źrodło rozwiń
Zgodnie z obietnicą pora na przekazywanie danych pomiędzy oknami(widokami). Jak możemy zaimplementować taką bądź co bądź podstawową funkcjonalność (na razie nie myślmy w ogóle o WPF a tym bardziej o Caliburn.Micro).Public Property Najprostszym sposobem (nie znaczy, że złym) może być zastosowanie jakiejś publicznej property np. w takim stylu: private void GetAddress_Click(object sender, EventArgs e) { AddressForm addressForm=new AddressForm (); addressForm.ShowDialog(); string ad...
W dzisiejszym wpisie pokażę dosyć mało znaną konstrukcję TOP…WITH TIES. Muszę przyznać, że sam trafiłem na nią całkiem niedawno mimo, iż była ona dostępna już w SQL Server 2000.
Bazy danych i XML 3790 dni, 16 godzin, 23 minuty temu 293 źrodło rozwiń
Jakiś czas temu opisałem jak utowrzyć instalator dla uslugi Windows w środowisku Visual Studio. Jest to sposób dość skomplikowany i czasochłonny. Z drugiej strony daje duże możliwości konfiguracyjne i rozszerzające. Nie o tym jednak. W niniejszym artykule opisuję jak zainstalować usługę Windows wyłącznie za pomoca kodu.
Sztuka programowania 3790 dni, 16 godzin, 23 minuty temu 247 źrodło rozwiń
W dotychczasowo opisanych częściach cyklu na temat MVVM (z wykorzystaniem Caliburn.Micro) wszystko było pokazane na przykładzie aplikacji mającej wyłącznie jedno okno. W rzeczywistym świecie takie aplikacje należą do mniejszości. Programy mają zwykle kilka okien i tym właśnie teraz się zajmiemy.Podejście klasyczne W klasycznie zbudowanej aplikacji jeśli chcemy wejść np. opcje aplikacji to otwiera się nam nowe okno. Spróbujmy zmodyfikować aplikację z ostatniego przykładu. Modyfikacja View jest pr...
Hej, sorry za tę przerwę! Dopadło mnie chyba to samo o czym pisał ostatnio procent… No ale nic to, oto jestem z powrotem z nowymi siłami do blogowania! A dzisiejszym wpisem postanowiłem kontynuować temat testowania kodu napisanego w JavaScript. Ostatnio zrobiłem krótki wstęp do frameworka Jasmine – jeśli jesteś nowicjuszem w temacie testów jednostkowych w JavaScript lub nie wiesz zupełnie nic na temat frameworka Jasmine, to zachęcam do przeczytania tego wpis...
Google Charts to świetne rozwiązanie, jeżeli potrzebujecie wykresów w swojej aplikacji. Właściwie spodobało mi się od razu po pierwszym użyciu i póki co nie szukam alternatywy (chociaż jeżeli korzystacie z jakiś przyjemnych bibliotek to chętnie poznam :-)). Integracja we własnym systemie jest w sumie prosta, chociaż trochę się nagimnastykowaliśmy, żeby odpowiednio do naszych potrzeb skonfigurować bardziej rozbudowane wykresy. Po przez bardziej rozbudowane mam na myśli np.. liniowy i kolumnowy na jednym ...
Sztuka programowania 3791 dni, 11 godzin, 37 minut temu 147 źrodło rozwiń
Nie jestem specjalistą od WCF – właściwie to nawet nie za bardzo lubiłem tę technologię. Było w niej dużo konfigurowania i XMLi, a ja jednak wolę pisać kod. Serwis w WCF Popełniłem kiedyś Serwis, który potem trzeba było utrzymywać. Wszystko było dobrze dopóki inne .NETowe końcówki się z nim łączyły. Dodaje się referencję poprzez „Add service reference” — generują się wszystkie potrzebne klasy — można od...
Ostatnio znalazłem fajny przykład pokazujący jak można nieoczekiwanie pogorszyć wydajność aplikacji. Załóżmy, że mamy metodę, która jako parametr wejściowy przyjmuje funkcję...
Sztuka programowania 3794 dni, 16 godzin, 17 minut temu 391 źrodło rozwiń
This post is part of the series: iOS for C# Developer. Previous parts: part 1 (Classes and creating objects), part 2 (strings). The most typical scenario to use multithreading is to maintain responsive UI when we do some resource-consuming computation.C# Let’s consider simple button click action in C#...
Czasami są takie dni w życiu człowieka (a nawet programisty), że wszystko idzie zgodnie z planem. Każde zadanie, które dostaje jest banalne albo (lepsza opcja) zrobione już wcześniej. Miałem kiedyś taki dzień. Jakby to powiedział Skipper dzień idealny. Niestety w moim przypadku to się nie sprawdziło. W moim przypadku sprawdza się raczej “jeśli wszystko idzie zgodnie z planem to znaczy, że to zasadzka”. No ale wracając do meritum dostałem kiedyś “banalne” zadanie musiałem wymienić tło w głównym okni...