Strona głównaUżytkownik

PaSkol | użytkownik

PaSkol
PaSkol
5 393,84
2056 dni, 3 godziny, 46 minut temu
1 maja, 2012
dotnetomaniak.pl

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...

Źródło: paskol.robi.to
Dziel się z innymi:
Me z .NET tete-a-tete » Masz tekstowe dane w pliku? Pomyśl o tym sterowniku.

Bazy danych i XML 3838 dni, 12 godzin, 10 minut temu PaSkol 277 źrodło rozwiń

Zgodnie z zapowiedzią pora na kolejną garść "gotowców" – skryptów, które mogą się przydać. Na początek sposób na przetwarzania prostych formuł (jedynie dodawanie i odejmowanie). Załóżmy że mamy takie wyrażenie: A1+A2-A3, a dodatkowo wartości jego składników przechowywane są w tabeli...

Źródło: paskol.robi.to
Dziel się z innymi:
Me z .NET tete-a-tete » Nie zabłądzisz na manowce, gdy pod ręką masz gotowce – część 3

Bazy danych i XML 3872 dni, 12 godzin, 25 minut temu PaSkol 149 źrodło rozwiń

Niedawno opublikowałem zestaw gotowych skryptów SQL, które mogą się przydać w konkretnych sytuacjach lub posłużyć jako wzorzec w innych przypadkach. Ponieważ – w ramach porządków – znowu uzbierało mi się kilka takich skryptów – i je postanowiłem zaprezentować. Tym sposobem samoistnie powstał mi cykl. Na początek przykład ...

Źródło: paskol.robi.to
Dziel się z innymi:
Me z .NET tete-a-tete » Nie zabłądzisz na manowce, gdy pod ręką masz gotowce – część 2

Bazy danych i XML 3878 dni, 16 godzin, 50 minut temu PaSkol 169 źrodło rozwiń

Rozpoczynając korzystanie z edytora Visual Studio bardzo dotkliwie odczuwałem brak wspomagania dość prostej czynności jaką jest otaczanie nawiasami klamrowymi – analogicznie do edytora Delphi, który wspomaganie pisania konstrukcji begin … end realizował wzorcowo. Powodowany niedosytem dostępnych możliwości środowiska, odkryłem wkrótce darmowe narzędzie produkcji Microsoft o nazwie Productivity Power Tools rozszerzające VS o tę umiejętność, jak również o wiele innych. Postaram się przedstawić teraz więks...

Tagi: Narzędzia
Źródło: paskol.robi.to
Dziel się z innymi:
Me z .NET tete-a-tete » Właściwe narzędzie i pracy ubędzie

Narzędzia 3901 dni, 17 godzin, 36 minut temu PaSkol 198 źrodło rozwiń

Wyobraźmy sobie, że mamy jakiś zestaw zmiennych, którym chcielibyśmy nadawać wartości w zależności od kategorii, która je opisuje. Jednocześnie – pomimo przynależności do tej kategorii – jeżeli wartość zmiennej dla owej kategorii nie została zdefiniowana – chcielibyśmy, aby taka zmienna używała wartości domyślnej. Zakładamy też, że wartości domyślne posiadają wszystkie zmienne i jeśli zajdzie potrzeba uzależnienia wartości zmiennej od posiadanej przez nią kategorii, nie ma to oznaczać...

Źródło: paskol.robi.to
Dziel się z innymi:
Me z .NET tete-a-tete » Poszukiwania rozwiązania wiązania bez powiązania

Bazy danych i XML 3941 dni, 9 godzin, 54 minuty temu PaSkol 113 źrodło rozwiń

Ten wpis będzie po trosze prywatą ;). Nazbierało mi się kilka różnych skryptów, zazwyczaj są to pojedyncze polecenia SQL, które warto mieć pod ręką. No właśnie ;). Rzecz w tym, że nie zawsze pod tą ręką są, a tu na blogu praktycznie w 99% przypadków by były. Zatem dzielę się nimi, a przy okazji zapewniam sobie ich większą dostępność dla siebie. Na początek skrypt ...

Źródło: paskol.robi.to
Dziel się z innymi:
Me z .NET tete-a-tete » Nie zabłądzisz na manowce, gdy pod ręką masz gotowce

Bazy danych i XML 3948 dni, 8 godzin, 42 minuty temu PaSkol 218 źrodło rozwiń

Zakładam, że polecenia update języka T-SQL nie trzeba nikomu przedstawiać. Jest to jedno z jego czterech podstawowych poleceń. Służy do aktualizacji zawartości kolumn tabeli. Zakładam jednak, że niewiele osób wie, iż polecenie to potrafi także aktualizować...

Źródło: paskol.robi.to
Dziel się z innymi:
Me z .NET tete-a-tete » Jeśli w „update” wstawisz zmienne, zyska cechy niecodzienne

Bazy danych i XML 3954 dni, 17 godzin, 12 minut temu PaSkol 166 źrodło rozwiń

Tytuł niniejszego wpisu zapożyczyłem z piosenki zespołu „Raz, Dwa, Trzy”. Uważam, że doskonale oddaje sens rozważań, którymi chciałbym się w tym wpisie zająć. Dość dawno temu usłyszałem ciekawą radę, aby nie nazywać spraw problemami, ponieważ słowo to niesie negatywny wydźwięk i podświadomie sprawia, że normalna sprawa rzeczywiście urasta do rangi problemu. Dlatego sprawy, które są zadaniami do zrealizowania nie powinny być problemami do rozwiązania, zadania matematyczne – nie powinny być ...

Źródło: paskol.robi.to
Dziel się z innymi:
Me z .NET tete-a-tete » Nazywaj rzeczy po imieniu, a zmienią się w oka mgnieniu

Inne 3962 dni, 48 minut temu PaSkol 185 źrodło rozwiń

Kiedy wprowadza się reguły? Zazwyczaj wówczas, kiedy zjawiska zachodzące w danym środowisku zaczynają wymykać się spod kontroli. Weźmy np. pojazd komunikacji miejskiej. Jeżeli jest on praktycznie pusty, to można z niego wysiadać w tym samym momencie, w którym ktoś chce wsiąść – ta garstka pasażerów wyminie się w drzwiach w sposób intuicyjny. Jeśli jednak liczba wysiadających jak i wsiadających zwiększy się, to konieczna będzie już jakaś regulacja – np. ...

Me z .NET tete-a-tete » Ma reguła konsekwencje, więc pytam: dlaczego dopatrywać się w nich czegoś niepożądanego?

Architektura 3964 dni, 7 godzin, 46 minut temu PaSkol 105 źrodło rozwiń

Reguły, zasady – przemyślenia na ich temat ostatnio opanowały mój umysł, więc naturalną konsekwencją jego stanu są kolejne moje wpisy. I czuję, że to jeszcze nie koniec. Na blogu ostatnio jest bardziej filozoficznie, ale tak bywa, kiedy dokonuje się retrospekcji. Dziś co nieco o regule nazywania warunków (wywodzącej się z reguły wydzielania metody). Chodzi w niej o to, aby wyrażenia logiczne występujące w kodzie...

Źródło: paskol.robi.to
Dziel się z innymi:
Me z .NET tete-a-tete » To wciąż zasada, czy już przesada?

Sztuka programowania 3970 dni, 4 godziny, 56 minut temu PaSkol 191 źrodło rozwiń

Informatyka z racji swojego sformalizowania kocha się w regułach. Nie można się praktycznie ruszyć, by w jakąś nie wdepnąć. Zaczynam się powoli zastanawiać, czy nie mamy tutaj do czynienia ze zjawiskiem podobnym do eksplozji klas – eksplozją reguł. Bezsprzecznie do tego stanu rzeczy przyczyniają się także blogi. Widywałem na blogach wpisy, w których ...

Źródło: paskol.robi.to
Dziel się z innymi:
Me z .NET tete-a-tete » Owszem, reguły trzeba stosować, ale nie dajmy się im zwariować.

Sztuka programowania 3975 dni, 11 godzin, 30 minut temu PaSkol 219 źrodło rozwiń

Komentarze z reguły są złe, zamiast nich należy pisać czytelny kod (czyli kod, który czytany wyjaśnia swoje działanie). Są złe bo się dewaluują, tj. po jakimś czasie nie korespondują z kodem, opisują go w nieprawdziwy sposób, bo kod się zmienił. Jest to prawda, której obecnie nie trzeba chyba już nikomu tłumaczyć, przynajmniej tym, którzy trzymają rękę na programistycznym pulsie. Czy zatem rezygnując z komentarzy oraz pisząc czytelny kod pozbyliśmy się całego ich zła? Niekoniecznie, ono czeka cierpliwie...

Źródło: paskol.robi.to
Dziel się z innymi:
Me z .NET tete-a-tete » Chociaż pozbyłeś się komentarzy ich zło się w kodzie wciąż może zdarzyć.

Sztuka programowania 3977 dni, 5 godzin, 52 minuty temu PaSkol 199 źrodło rozwiń

SQL Profiler – jak zapewne większość wie – jest narzędziem pozwalającym śledzić pracę SQL Serwera. Chyba najbardziej popularnym jego wykorzystaniem, jest śledzenie poleceń SQL przesyłanych do serwera. Zapewne także większość wie, iż nie jest to narzędzie darmowe. Co zatem zrobić, kiedy posiadamy jedynie wersję Express SQL Serwera? Okazuje się, że wiele zadań SQL Profilera można zrealizować samodzielnie. W tym wpisie ...

Źródło: paskol.robi.to
Dziel się z innymi:
Me z .NET tete-a-tete » Co poradzić, gdy doskwiera brak SQL Profilera

Bazy danych i XML 4004 dni, 10 godzin, 55 minut temu PaSkol 173 źrodło rozwiń

Po odłożeniu kodu na weekend, jego przeglądzie i uwzględnieniu komentarzy, można uznać proces refaktoryzacji za zakończony. Pisząc „proces” mam tu na myśli wykonanie refaktoryzacji o ściśle określonym celu – w tym przypadku było to stworzenie mechanizmu importu, który zastąpi używany obecnie. Nie wchodziły zatem w ten proces...

Me z .NET tete-a-tete » Nadeszła pora na cykl publikacji: „Historia pewnej refaktoryzacji”. Podsumowanie.

Sztuka programowania 4059 dni, 5 godzin, 36 minut temu PaSkol 82 źrodło rozwiń

Ostatnią z czynności refaktoryzacyjnych będzie przystosowanie dotychczasowej klasy MethodObject do używania powstałych w trakcie refaktoryzacji klas. Jak można sprawdzić w części drugiej, klasa ta posiadała cztery publiczne metody: ImportCSV(), ImportTabSeparated(), ImportFixed(), ImportBinary(). Metody te były następnie wykorzystywane przez interfejs użytkownika do wykonywania odpowiednich importów. Te metody muszą zostać zachowane, zmieni się natomiast ich implementacja. Zmianie ulegnie też...

Me z .NET tete-a-tete » Nadeszła pora na cykl publikacji: „Historia pewnej refaktoryzacji”. Część 19.

Sztuka programowania 4067 dni, 16 godzin, 14 minut temu PaSkol 34 źrodło rozwiń

W dotychczasowym procesie refaktoryzacji udało nam się stworzyć elastyczny mechanizm importu – uzyskaliśmy tym samym podstawową funkcjonalność w zadowalającej postaci. Pora zająć się pozostałymi operacjami, które są niezbędne, aby uzyskać kompletną, pierwotną funkcjonalność refaktoryzowanego kodu. Na implementację oczekują przecież: zdefiniowany na początku interfejs IFileSelector i jego pochodna IFilteredFileSelector. Konieczne jest też zaimplementowanie ...

Me z .NET tete-a-tete » Nadeszła pora na cykl publikacji: „Historia pewnej refaktoryzacji”. Część 18.

Sztuka programowania 4068 dni, 23 godziny, 49 minut temu PaSkol 42 źrodło rozwiń

Jak obiecałem – dziś uzupełnimy dotychczasowy zestaw testów o nowe testy. Co będziemy testować? Jeśli ktoś uważnie śledzi ten cykl zapewne oczekuje, że – zgodnie z wcześniejszymi zapowiedziami – przygotujemy test sprawdzający uruchamianie wszystkich metod biorących udział w przetwarzaniu pliku oraz dostosujemy stare testy sprawdzające powiadamianie o postępie przetwarzania. Tak – takie testy zostaną napisane. Ale najpierw utworzymy testy, których do tej pory nie było. Proszę zauważyć, że ...

Me z .NET tete-a-tete » Nadeszła pora na cykl publikacji: „Historia pewnej refaktoryzacji”. Część 17.

Sztuka programowania 4067 dni, 16 godzin, 14 minut temu PaSkol 57 źrodło rozwiń

W tym wpisie zaprezentuję dwie klasy dziedziczące po FileOfValuesReader i realizujące odczyt z plików tekstowych oraz binarnych. Obie klasy będą współpracować z odpowiadającymi im klasami wyodrębniającymi wartości z odczytanej zawartości. A ponieważ dopełnią one całości mechanizmu importu, to przygotuję także odpowiednie testy, które pozwolą upewnić się, że mechanizm importu nadal działa tak samo. Jako pierwszą zaimplementuję ...

Me z .NET tete-a-tete » Nadeszła pora na cykl publikacji: „Historia pewnej refaktoryzacji”. Część 16.

Sztuka programowania 4070 dni, 16 godzin, 43 minuty temu PaSkol 35 źrodło rozwiń

Nadeszła pora, by doprowadzić do współpracy klas odczytujących pliki i klas wyodrębniających z nich dane. Aby ta współpraca była jednak w ogóle możliwa – klasa FileOfValuesReader musi zostać zmodyfikowana, albowiem musi być możliwe „wstrzyknięcie” do niej obiektu implementującego interfejs IValuesExtractor. W rezultacie konstruktor zyska jeszcze jeden, dodatkowy parametr, poprzez który będzie można przekazać odpowiedni interpreter danych. Ponieważ ów interpreter trafia od razu do klasy bazowej ...

Me z .NET tete-a-tete » Nadeszła pora na cykl publikacji: „Historia pewnej refaktoryzacji”. Część 15.

Sztuka programowania 4069 dni, 23 godziny, 47 minut temu PaSkol 43 źrodło rozwiń

W poprzedniej części uczyniliśmy spostrzeżenie, że z dotychczasowych klas można wyodrębnić niezależną funkcjonalność – interpretację odczytywanych danych. Obecnie zajmiemy się jej implementacją. Nie będzie ona specjalnie trudna, ponieważ większość kodu już istnieje – zawierają go metody Extract() klas potomnych klasy FileOfValuesReader. Przypomnijmy je sobie wszystkie...

Me z .NET tete-a-tete » Nadeszła pora na cykl publikacji: „Historia pewnej refaktoryzacji”. Część 14.

Sztuka programowania 4072 dni, 14 godzin, 13 minut temu PaSkol 35 źrodło rozwiń

1 2 3 4

Najaktywniejsi w tym miesiącu