Każda bardziej skomplikowana (niż „hello word”) aplikacja posiada jakąś architekturę. Chyba najbardziej popularna wśród początkujących to spaghetti. Architektura spaghetti charakteryzuje się tym, że różne kawałki kodu są po prostu przemieszane ze sobą. Czasem tak dobrze, że w jednej procedurze i/lub funkcji znajdziemy wszystkie składniki. Na szczęście kilka programów później, prawie każdy zaczyna coraz bardziej myśleć o architekturze. O tym, jak poszczególne elementy aplikacji będą poskładane i jak będą ...
Strona głównaUżytkownik
arek | użytkownik
Architektura 5129 dni, 1 godzinę, 8 minut temu 182 źrodło rozwiń
Testy jednostkowe to proste testy pozwalające na sprawdzanie działania aplikacji na poziomie klas i metod. Ich celem jest wspomaganie pracy programisty. Testów jednostkowych nie należy traktować jak testów aplikacji, które należą do zupełnie innej kategorii. Ciekawą koncepcją jest TDD czyli test driven development. Wg. niej najpierw tworzone zostają testy aby dopiero później stworzyć kod. Dzięki takiemu podejściu zmuszamy umysł do przemyślenia kodu zanim ten zostanie stworzony. Największa moc drzemiąca ...
Jeszcze przed założeniem własnej działalności i przeniesieniem wszelkich operacji związanych z programowaniem na własną maszynę, do własnego gniazda, nieśmiało i powoli badałem przydatność wirtualizacji dla programisty. Z badań owych wyniknął wniosek bardzo jasny - wirtualizacja to dla mnie rozwiązanie IDEALNE i bez niego nie bardzo wyobrażam sobie pracę. Szczególnie jako pseudo-freelancer jakim jestem teraz, gdy zdarza mi się pracować nad więcej niż jednym projektem jednocześnie.
Ten wpis jest kontynuacją tematyki związanej z grafiką trójwymiarową opartej o WPF. Zostanie w nim pokazane jak przy pomocy kodu napisanego w C# narysować proste wielościany.Niniejszy wpis poza prezentacją różnych i niezależnych od konkretnego wykorzystania treści stanowi również opis pewnych zagadnień związanych z projektem Mesh Diagram 3D.Informacje dotyczące projektu oznaczone są etykietą MeshDiagram3D.Poprzedni wypis został zakończony na prezentacji najprostszego obiektu w scenie – czyli trójkąta. Tr...
Dziś chciałbym zaprezentować zastosowanie sieci Hopfielda do rozpoznawania polskich banknotów. Można zastosować takie rozwiązanie w automacie przyjmującym banknoty w celu odgadnięcia właściwego nominału banknotu. Oczywiście zapamiętanie obrazka całego banknotu nie jest dobrym pomysłem gdyż w przyzwoitej rozdzielczości obraz będzie zbyt duży do zapamiętania, poza tym, banknoty mają różną wielkość, postanowiłem pokazać przykład z zapamiętaniem prawego górnego rogu i rozpoznawaniem ...
Programowanie rozproszone 5194 dni, 22 godziny, 22 minuty temu 170 źrodło rozwiń
Aplikacja internetowa czy zwykła strona internetowa nie może obyć się bez określonego tytułu strony. Poniżej zamieszczam prosty przykład jak można selektywnie określać tytuł strony z poziomu kontrolera.
Routing ASP.NET MVC może zrobić sporo zamieszania, jeśli w naszej aplikacji korzystamy z zaawansowanego sterowania pomiędzy kontrolerami i odpowiadającymi im widokami. Dla dużych aplikacji (w obecnej chwili pracuję nad taką, która posiada ponad 120 kontrolerów – i nie ma tu problemów z refaktoryzacją) odpowiednie pokierowanie przepływem żądań to całkiem skomplikowany problem. Są dwie metody debugowania ścieżek:Metoda empiryczna, czyli zmieniamy tabelę ścieżek, klikamy F5, po czym zamykamy oczy. Za pomocą...
Już dwa razy (tu i tu) deklarowałem gotowość do zdawania egzaminów kończących się jakimś certyfikatem. Bardzo długo na "gotowości" się kończyło. Ostatnio jednak, obserwując nieuchronny upływ czasu oraz licznik zdanych egzaminów od pięciu lat wskazujący niezmiennie wartość 1 zadałem sobie pytanie: czy istnieje prawdopodobieństwo większe od zera, że jestem w stanie poświęcić kilka tygodni/miesięcy na NAUKĘ tylko po to, aby podejść do egzaminu? Odpowiedź była prosta: zdecydowanie nie. Jakoś ciężko mi wyobra...
Wspaniały filmik, który poprawił mi humor dzisiejszego dnia.
Rozszerzalność od dawna jest w modzie: praktycznie żadna poważniejsza aplikacja nie obywa się bez jakiegoś systemu pluginów, czyli "wtyczek" zwiększających jej funkcjonalność. Niektóre robią to przy okazji (acz ze słusznych powodów), inne czynią z elastyczności i rozszerzalności swój główny oręż (patrz np. uniwersalne komunikatory w typie Mirandy). Wszystko to kojarzy się trochę linuksiarsko, ...
Architektura 5217 dni, 9 godzin, 20 minut temu 174 źrodło rozwiń
11 rozdziałów książki "Programming Windows Phone 7" autorstwa Charlesa Petzolda do pobrania zupełnie za darmo.
Mobile development 5202 dni, 7 godzin, 12 minut temu 109 źrodło rozwiń
W MVC wyróżniamy 3 główne typy klas: model, widok oraz kontroler. Model stanowi bramkę dostępową do warstwy biznesowej. Przetrzymuje informacje o aktualnym stanie interfejsu. W pewnych przypadkach model może stanowić bezpośrednio klasę z warstwy biznesowej (np. dla wzorca skrypt transakcji jest to możliwe). Zwykle jednak tworzy się osobne modele (albo wrappery) dla warstwy prezentacji. Widok z kolei to interfejs graficzny w czystej postaci. W przypadku Silverlight, WPF jest to po prostu plik zawierając...
Architektura 5265 dni, 6 godzin, 45 minut temu 98 źrodło rozwiń
O Fluent Interface ("płynnym interfejsie"?:) ) jest od jakiegoś czasu dość głośno w światku .NET. Stał się... trendy. Implementują go właściwie wszystkie kontenery IoC, można za jego pomocą skonfigurować NHibernate, coraz więcej innych projektów udostępnia swoje API w ten sposób. Ale dlaczego, czy jest to naprawdę tak fajne? Moim zdaniem: TAK. Fluent Interface jest nawet czymś więcej niż "fajnym bajerem" - pozwala naprawdę bardzo uprościć pracę z naszą biblioteką.
Architektura 5219 dni, 10 godzin, 36 minut temu 172 źrodło rozwiń
UAC, to z j. ang. User Account Controll, czyli technologia wprowadzona w Windows Vista (i dalej utrzymywana w Windows 7) zapobiegająca uruchamianiu aplikacji z podwyższonymi uprawnieniami. Przy uruchamianiu aplikacji, która wymaga zwiększonych uprawnień, użytkownik musi wyrazić jawną zgodę na uruchomienie, a aplikacja powinna zadbać o to by się w odpowiednim momencie o to spytać.
Czy zdarza się wam czasem potrzeba wyłączania/hibernowania/usypiania komputera za jakiś czas, np. po wykonaniu jakiegoś długotrwałego zadania? Mnie tak. Jak więc to zrobić? Niektóre aplikacje taką funkcjonalność posiadają, jednak nie wszystkie. Z pomocą może przyjść systemowe polecenie shutdown, ale nie potrafi ono wszystkiego. „Shutdown /s” - wyłączy system, „Shutdown /h” - system zahibernuje, można dodać jeszcze opóźnienie czasowe np. „Shutdown /s /t 600”, by wyłączyć system po 10 min (600 s). Nieste...
Nie jest to takie do końca intuicyjne :) ale magicznie proste. Z przykładowego plik..
Podczas zapoznawania się z ASP.NET .oraz MVC2 trafiłem na coś, co jest bardzo denerwujące. Mianowicie strony aspx nie są kompilowane podczas kompilacji samego projektu. Jaki jest tego skutek? Dodatkowa robota w poszukiwaniu błędów wynikających z literówek. A zatem zobaczmy zmienić ten żmudny proces poprzez włączenie w visual studio sprawdzania widoków podczas build'a.