Tytuł tego posta określa wg mnie ten kawałek viżuala: Naszukałem się swego czasu baaardzo sporo, aby odnaleźć sposób na otwarcie tego z klawiatury, głównie dla komendy “open containing folder”. I się nie udało. Znalazłem nawet dedykowane temu problemowi pytanie na SO pozostające bez poprawnej odpowiedzi, więc uznałem, że się nie da. Ale ostatnio całkowicie niechcący… udało się.
by MJ Decorator is a design pattern used to dynamically ”decorate” (e.g. add new actions) another classes. Let’s say that you have class which describes Window. It can be opened or closed. Then, you decide to decorate it with curtains or to clean it – you will do it yourself or hire somebody, who will be a decorator. Let’s create a simple project: 1) First of all, you need to add “Decorator” folder. Inside of this folder please create Window.cs class which will describe our window in the real world...
Architektura 3387 dni, 10 godzin, 34 minuty temu 164 źrodło rozwiń
by MJ Prototype design pattern. You should use it whenever you need to clone model classes. A simple example is when you have 1000 clients and you need to provide them invoices. Then, you only need to change e,g, names, surnames and total amount – you don’t need to create another invoice from the beginning. Again, the same situation is when your class is a parent for other classes – in this situation, it is not easy to create new – you should clone existing instance and then try to modify it. Here is a...
Architektura 3387 dni, 17 godzin, 23 minuty temu 117 źrodło rozwiń
Jeżeli po przeczytaniu tytułu tego wpisu masz mieszane uczucia, bo niby co wspólnego może mieć psychologia z programowaniem, to zanim postanowisz zrezygnować z dalszej lektury, przypomnij sobie o wzorcach projektowych, a dokładnie skąd się one wzięły. Tak, początkowo to nie był pomysł programisty, ale architekta. Okazał się on jednak nie przystawać do tej dziedziny, za to zgrabnie dał się zaadaptować do naszego podwórka. W przypadku psychologii analogia nie jest może aż tak bezpośrednia, niemniej ...
Sztuka programowania 3389 dni, 13 godzin, 12 minut temu 296 źrodło rozwiń
Recently I've passed last exam required to obtain Microsoft Certified Solutions Developer. Now I'm fully certified in web development in .NET framework. That wasn't my first meeting with exams from Microsoft and because of that I want to leave some comments about them. First of all I must say that preparation for some of them took me more time than I thought. That's because exams are testing knowledge in a very detailed way. In my opinion sometimes in too detailed way. Of course they should be diffic...
Ostatnio czytając jedną z książek o programowaniu w Objective-C natrafiłem na sformułowanie o polimorfizmie, które spowodowało u mnie wodę z mózgu. Musiałem się nad nim naprawdę zastanowić, gdyż do tej pory w ogóle o tym w takich kategoriach, a jednak. Po dłuższym zastanowieniu się zrewidowałem swoje pojęcie co to jest polimorfizm. Wszystko zaczęło się od tego zdania:Polymorphism enables programs to be developed so that objects from different classes can define methods that share the same name. Kod w O...
Sztuka programowania 3389 dni, 13 godzin, 12 minut temu 217 źrodło rozwiń
Dane w postaci tekstowej mogą posiadać różnorodne formaty. Poszczególne wartości mogą być w nich odseparowane od siebie w dowolny sposób: albo za pomocą dedykowanego znaku, albo poprzez przyjęcie, że każda wartość zajmuje z góry ustalony obszar, a jeśli nie wypełnia jego całości, to jest on uzupełniany spacjami. Same wartości mogą mieć różną postać, wystarczy chociażby pomyśleć o dacie...
Bazy danych i XML 3389 dni, 13 godzin, 12 minut temu 277 źrodło rozwiń
Wpadłem na pomysł rozwiązania pewnego dręczącego mnie problemu (o którym pewnie wkrótce) w aplikacji webowej. Pomysł ten polega na wstrzyknięciu informacji o aktualnym użytkowniku w postaci JSON do HTMLa zwracanego do przeglądarki. Ot, po prostu żeby strona kliencka wiedziała z kim ma do czynienia. Aplikacja ta powstaje w Nancy – bardzo eleganckim frameworku, o którym chyba kiedyś wspomniałem, ale też którego nigdy w technicznym poście nie poruszyłem. W Nancy ...
We, software developers, are crazy. Surprisingly, that’s what we have been told at the very beginning of the DevDay conference. The speaker, an ABB guy (I didn’t catch his name because I came 5min late) with a strong Slavic accent made his point about passion, self-motivation and personal abilities in the world of software development. At the same time, he compared it to his hobby - running. We are crazy, because we get up early on Saturday and get together to devote the whole day to nerdy IT topics. The...
by MJ Facade is one of design patterns which are used most frequently. To explain what it is and how to use it, we can compare it to a black box. In black box test, tester is only allowed to create the input and get the output. He doesn’t know anything about processing inside of the system. You will meet similar situation in Facade – you don’t want to show out the whole functionality, you need to create some kind of interface which enables user to use the functonality, but he cannot look into the syste...
Architektura 3392 dni, 6 godzin, 6 minut temu 175 źrodło rozwiń
Gdybyś mnie dziś zapytał jakie książki warto przeczytać aby lepiej programować to odpowiedziałbym:Pragmatyczny programista. Od czeladnika do mistrza.Czysty kod. Podręcznik dobrego programisty (Uncle Bob)Agile. Programowanie zwinne: zasady, wzorce i praktyki zwinnego wytwarzania oprogramowania w C# (również Uncle Bob) Ot taki starter. Wszystkie książki czytałem już kilka lat temu więc nie pamiętam dokładnie co w...
Przeładowania metod to podstawy języka. Niestety, nieumiejętnie stosowane, mogą przystworzyć problemów nawet zaawansowanym programistom. Z tego względu, uważam, że należy po prostu unikać tych przeładować, które są zbyt trudne w zrozumieniu – powodują niepotrzebne zamieszanie. Zacznijmy od klasycznego przykładu, który jest zrozumiały dla każdego
Sztuka programowania 3395 dni, 11 godzin, 45 minut temu 241 źrodło rozwiń
Ukrywanie folderów i plików w systemie Windows za pomocą komend cmd.
Nie wiem jak wy, ale od kiedy w FF mogłem pierwszy raz użyć console.x (log etc), zakochałem się w tym czymś od razu. Alert poszedł w niepamięć, zaś by wspierać IE pisało się proste wrappery które wywoływały alert wtedy kiedy trzeba było. Ale sam nie wiem czy to przez moją nieuwagę czy też przez niechęć do czytania niektórych artykułów dłuższych niż dwa akapity (głównie tych w dokumentacji produktu :)) w ogóle nie zauważyłem metody która odmieniła ponownie moje życie :)
Chcemy zaznaczyć, że klasa możemy być użyta w jakiś sposób, jednocześnie nie definiując żadnych metod, które klasa miałaby implementować. Może się wydawać, że takie coś nie powinno mieć miejsca, bo zawsze chcemy wykonać logikę która została zaimplementowana dzięki kontraktowi zwanemu interfejsem. Przykładami, że jednak czasem tak bywa są INamingContainer w ASP.NET oraz Serializable w Javie.
Sztuka programowania 3395 dni, 11 godzin, 45 minut temu 238 źrodło rozwiń
Raz na jakiś czas, od dawna, dość regularnie, szczególnie w okresie około-wakacyjnym, dostaję maile z pytaniami od osób zastanawiających się nad własną, szeroko pojętą, przyszłością. Przyszłością w kontekście zostania słodkim, wymiatającym, wypasionym programistą. Nie wiem właściwie skąd przeświadczenie że ja, “complete-stranger”, mogę posiadać odpowiedź na to pytanie:), ale jako że do mnie jest ono właśnie adresowanie, ...
Opublikowano Wczoraj wyszła nowa wersja NDepend-a, jeszcze ciepła, cieplutka. 5-tka ma dwie rewolucyjne rzeczy, pierwsza to nowe UI, ładniejsze i bardziej “nowoczesne”, druga – i to jest dla mnie killer to dashboard. Zatem po kolej. Mamy nowe logo, które wygląda całkiem całkiem jak na moje średnio wprawne oko. Mamy wygląd czyli nowe menu, graficzki i inne takie. Wprawdzie nie jest to to co daje Visual Studio, to jednak Patric (autor tego cudownego narzędzia) mówił, że będą dalej nad tym pracować, więc ...
Ostatnio zainteresował mnie temat web deploy-a, a dokładnie sposób parametryzowania. W projekcie w którym pracuję wykorzystywane do tego są transformacje Web.Config. Tak więc mamy konfiguracje test.web.config, production.web.config etc... . Do każdej transformacji dodany jest profil publikowania. Transformacje ustawiają wszystkie parametry, oprócz connection stringów które to, są zdefiniowane w profilach publikacji. Wszystko fajnie, tyle że do końca to nie działa...
09.26.13 by MJ Previously I wrote a post about creating a simple ASP.NET MVC 4 application. I have told you, that it is so simple. Today you will see that it can be easier with MVC scaffolding. 1. Open Visual Studio 2012 2. File/New/Project -> select Web/ASP.NET MVC 4 Web Application. Name it MvcCars. 3. When new window appears, please select a template as Internet Application and the vie engine as Razor. For this example, please do not select Create a unit test project. 4. Confirm Your...
Zanim przejdę do tytułowej biblioteki chciałbym, aby czytelnik odpowiedział na następujące pytanie. Dlaczego tworzenie stron internetowych jest trudne? Jakieś pomysły? Moim, zdaniem największą trudnością jest wspieranie wielu różnych przeglądarek, które z kolei w zależności od wersji wpierają lub nie pewne standardy. Króluje tutaj oczywiście IE, w którym wszystko musi być inaczej, na szczęście powoli to się z...