W tym tygodniu zajmiemy się loaderem zależności RequireJS (ładowanie dynamiczne plików które są w danej chwili potrzebne a nie wszystkich bo tak) zgodnym ze specyfikacją AMD (Asynchronous Module Definition), która jest modyfikacją formatu transportu z CommonJS, której jedna z wersji jest zaimplementowana w Node. Różnica pomiędzy RequireJS i CommonJS jest taka, że jedno implementuj...
Strona głównaUżytkownik
rroszczyk | użytkownik
Zwykle programiści korzystają z podstawowych typów dostarczonych przez C#, takich jak String, Int32 czy Double. W świecie programowania obiektowego można jednak pójść o krok dalej i budować własne typy danych. Przeważnie programiści korzystają z nich wyłącznie, gdy do zaimplementowania jest jakaś logika. Dlaczego nie tworzyć ich nawet w sytuacjach, gdy mają one przechowywać wyłącznie dane? Problem z podstawowymi typami takimi jak String Czy Int32 t...
Sztuka programowania 3173 dni, 9 godzin, 55 minut temu 217 źrodło rozwiń
EXPECTEXCEPTION oraz EXPECTNOEXCEPTION. SQL Server oczywiście nie ma jako takich wyjątków, znanych ze świata C#. Mamy za to pojęcie Severity Level. Określa one jak bardzo dany błąd jest poważny. Stwórzmy procedurę, która próbuje użyć nieistniejącej tabeli: CREATE PROCEDURE DoSomething AS BEGIN SELECT * FROM NOTEXISTINGTABL...
Bazy danych i XML 3174 dni, 8 godzin, 57 minut temu 41 źrodło rozwiń
Kiedy korzystamy z EF należy pamiętać o tym, aby zawsze wyłączyć leniwe ładowanie (lazy loading) w przeciwnym wypadku za każdym razem gdy będziemy sięgać po dane które leżą w innej tabeli niż ta, która została początkowo zaciągnięta z bazy danych EF zrobi to za nas. Brzmi fajnie, ale gdy pomyślicie że taka operacja może wykonać się w pętli, pomysł szybko przestaje być tak miły. N wykonań pętli N pojedynczych zapytań do bazy danych. Minusem wyłączenia lenia w EF jest to, ...
Daj się poznać 2016 3173 dni, 9 godzin, 55 minut temu 278 źrodło rozwiń
Chyba omówiliśmy już prawie wszystkie takie paczki około developmentowe – których wykorzystanie jest dodatkowe i nie wypływa na to jak będziemy kod pisać – czy musimy tutaj zastosować X, Y i Z, a tutaj A, B i C bo inaczej to nie ma prawa nam zadziałać. Tak będzie ze wszystkimi pozostały paczkami które będę omawiał. Ostatnią zaś z paczek około dev, jest Yeoman, w skrócie Yo :)Yeoman Jest on t...
NavigationStrona głównaO MniePrelekcjeGutek7th March, 2016pro , cykl, javascript, node.js, npm, yeoman, yo W ostatniej części omówiliśmy co to jest i do czego służy Yeoman. W tej części skoncentrujemy się na stworzeniu prostego szablonu. Głównie chodzi o pokazanie, że nie jest to rocket science, i da się to dość szybko opanować. Naszym celem będzie stworzenie generatora który:Wyświetli coś fajnego na ekranieUdostępni nam wybór pomiędzy dwoma opcjamiDa możliwość stworzenie pojedynczego elementu (pliku) ...
W 30. odcinku DevTalka zagłębiamy się w… kontenery! I to nie takie znane z Dependency Injection. Chodzi o kontenery na zupełnie innym poziomie. Docker? Rings a bell? Moim Gościem jest Michał Dudak. Michał to trochę-więcej-niż-programista :). Może poczytać go na blogu i pooglądać w roli prelegenta na różnych konferencjach. Na Twitterze: @michaldudak. Nie ma co przedłużać, temat jest ciekawy, a materiału sporo! Enjoy! http://traffic.libsyn.com/devtalk/DevTalkE30-MichalDudak-Containers.mp3Zasubskrybu...
Architektura 3178 dni, 17 godzin, 36 minut temu 89 źrodło rozwiń
Jakiś czas temu, postanowiłem się doszkolić ze znajomości algorytmów. Częściowo było to spowodowane tym, że na studiach miałem dosyć okrojone algorytmy (mieliśmy różne sortowania, różne sposoby podziału, ale do grafów już nie doszliśmy) i o ile przez długi czas ta wiedza była wystarczająca, z czasem jednak codility rosło w popularność. O ile obecnie swój "peak" zapewne ma już za sobą, to podczas przykładowej rozmowy kwalifikacyjnej lub zgłaszania swojego uczestnictwa do darmowego szkolenia lub hakatonu z...
Ostatnie lata w świecie developmentu, to ogromny rozwój technologii frontendowych oraz dynamiczny rozwój sektora mobilnego, w którym wciąż jeszcze liczą się trzy systemy. No dobra - tak naprawdę to Windows Phone, tudzież Windows Mobile, trochę juz dogorywa. Świat WWW ma swoje problemy, a jednym z największych jest oczywiście wsparcie dla różnych przeglądarek. W świecie mobile, mamy za to zgoła inną sytuację. Z grubsza możemy spodziewać się wynikowego efektu na różnych urządzeniach z jednym systemem (choc...
Mobile development 3183 dni, 2 godziny, 40 minut temu 433 źrodło rozwiń
W tym wpisie poruszę kwestię tego, czy możemy stwierdzić, że dana metodyka/metodologia działa lub nie. Dowiesz się dlaczego robiąc niewłaściwe rzeczy poprawnie oraz właściwe rzeczy niepoprawnie możesz nie osiągnąć zamierzonego celu. Jeśli poprzednie zdanie jest dla ciebie „masłem maślanym” tym bardziej zachęcam do przeczytania wpisu by zrozumieć temat doboru metod i ich właściwego użycia. Zapraszam ...
Sztuka programowania 3185 dni, 8 godzin, 2 minuty temu 397 źrodło rozwiń
Gdy przychodzi odpowiedzieć na pytanie czym się zajmujemy, każdy z Nas dość automatycznie i dumnie odpowiada, że jest programistą. Co poniektórzy dodają jeszcze z coś z zakresu swoich umiejętności. Programuje w .NET-cie, Java-wie, Web-ach itd. Ale czy mówiąc, że jesteśmy programistami to czy naprawdę rozumiemy kim jesteśmy? Czy rozumiemy różnicę pomiędzy programistą a programistą .NET-owym? Co daje Nam zmiana sposobu ...
To już ostatnia część dot. gulpa :) Tydzień temu opisałem ogólnie jak działa gulp. W tej zaś przejdziemy przez proces automatyzacji pracy. By nie komplikować sobie życia, wykorzystamy ten sam przykład który był w Co to jest Grunt.js? Część 3. UWAGA: to jest przykład, nie twierdzę że najlepiej napisany, chodzi głównie o pokazanie co można zrobić.Krok 0 – przygotowanie środowiska W aplikacji będziemy...
Pamiętam dobrze moją pierwszą grę platformą. Powstała w czasach kiedy Delphi było popularnym językiem do tworzenia aplikacji windowsowych. Było to także moje pierwsze podejście do języka obiektowego, poprzedzone dłuższym pisaniem w proceduralnym Pascalu. Nie rozumiałem wtedy do końca idei tworzenia obiektów, dlatego cały kod gry znajdował się w głównym obiekcie Main. Nie wiedziałem jak powinno się animować elementy gry, ale zauważyłem, że można poruszać kontrolką Image poprzez zmianę marginesów. Każdy...
TSQLT – IZOLACJA TABEL Jedną z największych korzyści z tSQLt jest moim zdaniem izolacja danych. Załóżmy, że mamy na następującą tabelę...
Bazy danych i XML 3188 dni, 5 godzin, 56 minut temu 98 źrodło rozwiń
W poprzednich częściach poruszałem kwestię braku zarządzania buforami czasu w zadaniach, marnowaniem marginesów czasowych oraz złej definicji projektu, która również przyczynia się do opóźnień. Przed przeczytaniem tej części polecam ci rzucić okiem na część pierwszą o buforach bezpieczeństwa w łańcuchu krytycznym oraz część drugą, kontynuacje opisu łańc...
Za dokończenie cyklu zbierałem się z 2 lata… no ale pora go dokończyć i mieć to z głowy :) W poprzedniej części po krótce napisałem czym jest gulp, w tej części skoncentrujemy się na tym jak mniej więcej (naprawdę mniej więcej) działa gulp i czym on się różni od grunta. Główną i najważniejszą rzeczą w gulpie jest to, że działa on na strumieniach danych. Od czasu powstania *nix, strumienie są je...
Zamień bóla na enuma. Dlaczego zamienić? Moim zdaniem czytelniej i jasno sformułowana myśl i łatwiej zrozumieć. Nie chodzi o prosty przypadek, gdzie zamiana polegałaby na zamianie true/false na MyEnum.True/MyEnum.False – nie nie, to byłoby szaleństwem. Ale może od razu do kodu, bo czas nagli dzisiaj. Pierwszy przypadek, wszystko działa jak należy...
Sztuka programowania 3193 dni, 8 godzin, 50 minut temu 336 źrodło rozwiń
Często logika zawarta w procedurach jest dość skomplikowana. W zależności od projektu, może okazać się, że potrzebujemy testów jednostkowych. Dzięki tSQLt możemy testować tSQL w analogiczny sposób do nUnit+moq, czyli:Dane po wykonaniu testu są usuwane. Każdy test jest wykonywany w transakcji. Nie musimy się zatem martwić, że testując coś będziemy zaśmiecać bazę danych.Każdy element może być odizolowany, czyli możemy stworzyć mock dla tabeli, procedury lu...
Bazy danych i XML 3196 dni, 4 godziny, 57 minut temu 211 źrodło rozwiń
W .NET istnieją dwie przydatne klasy do logowania wszelkich informacji: Trace oraz Debug. Często różnica nie jest jasna oraz klasy są ze sobą mylone. Co się dokładnie dzieje, gdy napiszemy następujący fragment kodu? Trace.WriteLine("Trace test"); Debug.WriteLine("Debug test"); Efekt wydaje się podobny, w okienku debug zobaczymy wykonane logi: Najlepiej zajrzeć do źródeł powyższych klas. Debug.WriteLine wygląda następująco: [System.Diagnostics.Conditiona...
Następny wpis, tym razem już na nowym systemie i nowej własnej domenie. Zobaczymy czy będzie tak jak z samochodami, gdzie wizyta na myjni daje dwa konie mechaniczne więcej. Ostatnio pisałem więcej filozoficznie, dzisiaj powrót do twardej rzeczywistości. Obejrzałem nie dawno na pluralsightfajny i krótki kurs o OWIN i Katana i częścią wiedzy chce się z wami podzielić. Kto z was zaczynał projekt ASP MVC z włączonymi indywidualnymi kontami użytkowników? Ja na pewno! Także ja, gdy pat...