Cezary Walenciuk Programowanie

Picasa Jeśli chcemy dodać grupę zdjęć lepiej pomyśleć o możliwości dodania pokazu slajdów do swojego bloggera. Załóżmy ,że jesteś fotografem i chcesz się pochwalić dużą grupą zdjęć. Dodawanie ich pojedynczo może być nieefektowne w prezentacji.

Zapewne jak wiesz wszystkie zdjęcia, które umieszczasz na bloger-a lądują do Google Picasa. Jest to przydatna funkcja i muszę przyznać, że dobrze ona działa  oraz dotycz to też zdjęć, które wysyłam przez "Windows Live Writera", jak i teł i awatarów. Szkoda ,że emotikony za każdym razem muszą być tak wrzucane na bloggera.

Blogger

Jest to krótki wpis w sumie chciałbym powiedzieć ,że ten proces był koszmarny. Na szczęście spodziewałem się problemów i sam dokładnie sprawdziłem jak dokładnie długi musi być obrazek ,aby mógłby być dopasowany idealnie do strony.

 

SCJP

Egzamin SCJP jest to podstawowy egzamin z Javy obejmujący ogólną wiedzę z tego języka. Najprawdopodobniej jest to najczęściej  uczęszczany egzamin przez programistów Java ponieważ jest on w końcu z wiedzy ogólnej o języku ,a nie pod technologię X.


Certyfikat ten nie rozwiąże wszystkich twoich problemów związanych z poszukiwaniem pracy ,ale…

LaTexW poprzednim wpisie ,gdzie omówiłem jak zainstalować LaTex-a na systemie Windows i jak go ustawić aby uniknąć niepotrzebnych frustracji - obiecałem sobie ,że sprawdzę  dostępne darmowe edytory LaTex, które działają pod Windows i wybiorę najlepszego z nich.

 

TexWorks okazał się moim pierwszym programem na liście. Nie jest on skomplikowany i nie ma  dużo funkcji więc ten wpis  będzie krótki.

BloggerOd czasu do czasu zastanawiam się co jeszcze ulepszyć na blogu. Jakiś miesiąc temu sprawdziłem jak blog wygląda w każdej przeglądarce. W każdej przeglądarce wygląd był w miarę podobny. Zauważyłem jednak ,że w przeglądarce Opera wszystkie nagłówki nie mają polskich znaków.

Problem z znakami w Operze

Ustaliłem ,że winna jest czcionka “Consolas” z jakiegoś powodu nie wyświetlała ona polskich znaków w Operze.Postanowiłem zmienić czcionkę z “Consolas” na “Courier New” w końcu jest to też programistyczna czcionka. Myślę ,że teraz blog wygląda jeszcze lepiej niż wcześniej .W przyszłości być może jeszcze zmiennie styl podkreślania kod programistycznego.

Na cóż, jeśli posiadasz bloga nawet z gotowym stylem warto sprawdzić jak blog wygląda na: Operze, Firefox, Chrome i  IE. Zwłaszcza że wytłumaczenie tego faktu jest kłopotliwe. Sam się zdziwiłem, ponieważ nie powinno być żadnych problemów.

MetodyCzęść NR.2Kiedyś komputery były tylko maszynami, które manipulowały wyłącznie wartościami liczbowymi. Pierwsze super komputery obliczały tor lotu pocisków jak i łamały szyfry.

To było kiedyś, komputery dzisiaj, chociaż nikt nie prowadzić statystyk w tym kierunku, pracują w większości nad manipulacją napisów.

Czy to jest dokument tekstowy, czy strona internetowa operacje na napisach powszechnie występują.

WłaściwościCzęść NR.15Hymn właściwości to ważny aspekt. Jak zauważysz pola w klasach .NET są zawsze prywatne natomiast właściwości udostępniają nam zmienne. Chociaż na potrzeby tego kursu na pewno zdarzały się sytuacje, w których pola w klasie czy strukturze były publiczne ,ale nie jest to poprawne zachowanie.

Kiedy chcesz przeczytać bądź zapisać zmienną zazwyczaj używasz symbolu przypisania, czyli znaku równa się ( = ). Dlatego stosowanie metod do wyświetlenia zawartości pól nie jest takim dobry pomysłem. Jest to wykonalne ,ale efekt nie jest taki zadowalający.

Oto przykład. Jak widzisz ilość kodu jest dość duża. Zrobiłem to specjalnie by wykazać ,że to podejście jest również słabe, właśnie z powodu ilości kodu.

NTSF FAT32Dzisiaj musiałem zmienić systemy plików na swoich dyskach przenośnych ,a ma ich aż trzy. .

Dyski przenośne

W sumie wszystkie trzy dyski USB potrafią przechować 1300 GB danych ,ale jak mój kolega zauważył wszystkie dyski mają format plików FAT32. Pliki w tym formacie wolno się zapisują i – co gorsza – pliki powyżej 4 GB nie mogą być zapisane. Jest to kłopotliwe, ponieważ np. obrazy dysków w maszynach wirtualnych czy nawet obrazy płyt blue-ray są na pewno większe niż 4GB.  Żyjemy w 2011 roku i system FAT32 przestały być użyteczne wraz z końcem systemu Windows 98/ME.

InterfejsCzęść NR.13Wcześniej dziedziczyliśmy z klas do klas jednak popularnym mechanizmem w dziedziczeniu są Interfejsy.

Interfejs nie zawiera żadnego kodu użycia natomiast zawiera tylko specyfikacje metod i jej właściwości. 

Interfejsy można traktować jak kontrakt, który gwarantuje ,że dana klasa lub struktura, która po nim dziedziczy obsługuje dane zachowania. .

Kiedy klasa obsługuje dany interfejs musi udostępniać wszystkie elementy tego interfejsu.

Skróty

Skróty klawiszowe w Eclipse na pewno są lepsze niż w Visual Studio. Słyszałem wiele porównań tych dwóch środowisk i co do skrótów klawiszowych nie ma tutaj wątpliwości kto tu wygrywa. Skróty w Visual Studio opisałem tutaj.

Oto jak Eclipse rozwiązuje problemy ze trudnymi kombinacjami

Eclipse doskonale rozwiązał problem ze złożonymi kombinacjami klawiszowymi . W Visual Studio otrzymujemy informacje ,że program oczekuje na dalszy klawisz. Natomiast w Eclipse wyświetla się małe menu ze wszystkim dostępnymi pod kombinacjami. Dlaczego nie ma tego w Visual Studio nie mam pojęcia.

Wydaje się to trochę dziwne, zwłaszcza że od Visual Studio 2010 mamy do dyspozycji pluginy tworzone przez osoby trzecie.

No cóż, zobaczmy jakie skróty klawiszowe oferuje Eclipse.

DziedziczenieCzęść NR.11Jest to kurs obiektowości , a jeszcze nie było mowy o dziedziczeniu w C#. Chociaż dziedziczenie i polimorfizm pojawiały się w niektórych miejscach w innych wpisach.

Dziedziczenie to kluczowy mechanizm obiektowości. Dziedziczenie pozwala na powielanie funkcjonalności wobec różnych klas w ten sposób nie musimy pisać ciągle samego kodu. .

TabliceCzęść NR.9Tablica pozwala na przechowywanie zbioru wartości. W programowaniu mamy wiele sposobów przechowywania kolekcji wartości ,a tablice są jednym z tych sposobów.

Tablice mogą przechowywać tylko jeden określony typ wartości. NP. tablica int będzie mogła przechowywać tylko liczby tego typu.

W teorii tablica typu object może przechowywać wszystkie typy, ale odpakowywanie(unboxing) wartości z takiej tablicy może okazać się dość kłopotliwe.

StrukturaCzęść NR.8 Klasy są typami referencyjnymi i ich zawartość jest zawsze tworzona na stercie. W niektórych wypadkach klasa zawiera tak niewielką ilość danych , że zarządzanie nimi na stercie jest nieopłacalne. W takich wypadkach lepiej użyć struktury.

Struktura jest typem wartościowym, czyli jej miejsce jest na stosie.

Chociaż jeśli struktura jest duża to lepiej stosować klasy.

Dla programistów C++
W C++ struktura to odpowiednik klasy, tylko jej składowe są publiczne (w klasie prywatne). W C# struktury to typ skalarny i podstawowe różnicę pomiędzy klasą i strukturą zostały opisane we wpisie

Podobnie jak klasy struktura może mieć własne pola i metody……oraz w pewnym specjalnym wypadku konstruktor.

Przykładem struktury jest np. Point w WPF i Windows Forms, która przechowuje dwie zmienne X i Y.

Skróty VSSkróty klawiszowe w Visual Studio nie są tak dobrze skonstruowane, jak w Eclipse. Niektóre funkcje wymagają połączenia 2 bądź nawet 3 kombinacji klawiszowych. Zapamiętanie ich może się kojarzyć z głupią bijatyką, gdzie ciosy(combosy)  to kombinacja 5 klawiszy z całej klawiatury. Naprawdę nie dziwi mnie fakt ,że nikt z tego nie korzysta, ponieważ trudno zapamiętać złożone kombinacje klawiszy. Już łatwiej zapamiętać kombinacje do gier konsolowych, jak i słynny Konami Code.

Konami Code jest łatwiejszy do zapmiętania  niż kombinacje z Visual Studio
Mimo to postanowiłem zrobić ten wpis z nadzieją ,że może komuś będzie on pomocny.

Zauważyłem też, że niektóre skróty klawiszowe nie działają już bądź są zajęte przez dodatki w Visual Studio.

Jednak też nie jest , aż tak źle, bo mamy w Visual Studio 2010 do dyspozycji normalne skróty klawiszowe, a nie dziwne kombinacje.

Wybaczcie ten depresyjny wstęp , ale w tak dużym narzędziu złożone skróty klawiszowe są jednak nieuniknione. Na pierwszy rzut oka mogą one wyglądać  dziwnie. 

EnumCzęść NR.7Typ wyliczeniowy, na który często mówię Enum (szkoda , że ta nazwa nie może być przyjęta Puszczam oczko) jest jedną z fajniejszych rzeczy w programowaniu. Dlaczego?

Choćby dlatego , że wyklucza wartości, których nie chcemy. Przykładowo do aplikacji chcemy aby użytkownik podał konkretny miesiąc, ponieważ nasza zmienna byłaby typem wyliczeniowym , a nie np. stringiem .

Nie byłoby mowy o podaniu niewłaściwej wartości, ponieważ sprawnie byśmy je przechwytywali.

Typy wyliczeniowe przydatne są także przy kontrolkach, jak ComboBox, ponieważ z góry wiemy, jakie pola może użytkownik wybrać.

Jednym słowem zamiana niektórych zmiennych z string na typ wyliczeniowy może bardzo usprawnić aplikacje. 

IntellisenseVisual Studio od wersji 2005 posiada Intellisense, który automatycznie wyświetla wszystkie możliwe wyrażenia, jakie mogą być użyte w programie. Nie trzeba pisać całej sentencji by korzystać z tej wygody, wystarczy jedna litera, bądź nawet spacja.

Intelisense w Visual Studio 2010

Od wczoraj uczę się programować w Eclipse i trochę zmartwił mnie fakt ,że Intellisense uruchamia się dopiero po napisaniu jednej sentencji.

BoxingCzęść NR.6 Wszystko jest obiektem i wszystko w C# dziedziczy po System.Object ,tylko co z tego.

Informacje zawarte w tym wpisie będą przydatne również przy dziedziczeniu klas.
Nie mam ochoty pisać wstępu więc od razu przejdźmy do rzeczy.

 

 

System.Object

Wszystkie klasy i struktury dziedziczą po typie object. Możesz też użyć typu object do stworzenia zmiennej, która może referować do każdego typu.

Zasady

Przed pracą praktyczną nad kodem postanowiłem napisać kolejny wstęp do wzorców projektowych.

 

 

 

Powszechne zasady projektowe

Istnieje pewna liczba powszechnych zasad projektowych, z którymi szczerze mówiąc spotkałem się zanim jeszcze rozpocząłem swoją przygodę z programowaniem.
Niektóre zasady mogą wydawać się banalne ,ale moim zdaniem nawet początkujący programista powinien ich przestrzegać.
Jeśli myślisz, że się z nimi nie spotkałeś to możesz się zdziwić .Te zasady możesz znać, tylko nie wiedziałeś ,że mają one swoje określone nazwy. 

Wzorce ProjPraca programistów polega na rozwiązywaniu problemów “X”. Wiele z nich się powiela i zostały one już wcześniej rozwiązane. Przez wiele lat rzemiosło programowania obiektowego się doskonaliło. Powstała duża liczba wzorców i zasad ,a najlepsze z nich doczekały się swoich nazw i kategorii.

Posiadając wiedzę na temat wzorców jak i pospolitych rozwiązań jesteśmy w stanie rozwiązywać złożone problemy.Te rozwiązania są powszechne mamy do nich zaufanie, ponieważ wiemy ,że dużo wcześniej przed nami ktoś te wzorce z powodzeniem stosował.

Fundamentem wzorców projektowych są zasady  S.O.L.I.D (solid object oriented design) i one będą opisane w następnym wpisie ,a na razie trochę wstępu.

StatycznaCzęść NR.2

Przykładem klasy statycznej jest np. klasa Math , która zawiera wszystkie potrzebne funkcje matematyczne jak np. cosinus. Do ich użycia klasa nie musi być zadeklarowana o czym więcej w tym wpisie.

Klasa statyczna Math
Na pewno zauważysz ,że nie wszystkie metody należą do instancji klasy; są to metody, które wykonują swoje cele w sposób niezależny od specyfikacji zainicjalizowanej klasy. To są metody statyczne. Po co one są?

Klasy w C#Część NR.1 Ostatnio skończyłem kurs: podstawy C#.Jednak nie było w nim nic o klasach i obiektach. Do pisania prostych programów rzeczywiście można się obyć bez klas. Jednak nie bez powodu C# jest językiem obiektowym .Nikt też nie da nagrody za napisanie programu, który dodaje dwie cyfry. Poprzedni kurs był dobry jako wstęp ,ale nie zmienia to faktu ,że trzeba jeszcze bardziej poszerzać wiedzę.

C# nie jest trudnym językiem programowania ,więc moim zdaniem nie będziesz miał z tym kursem dużych problemów.

Platforma .NET zawiera tysiące klas i nawet jeśli jesteś początkującym programistą C# na pewno zetknąłeś się z nimi. Klasy tworzą dobry mechanizm w zarządzaniu i modelowaniu encji manipulowanymi przez aplikacje. Encja może reprezentować określony przedmiot jak produkt, bądź pracownika albo nawet transakcjeEncje Klasy.

W zależności od naszego poziomu abstrakcji encje mogą prosto obrazować rzeczywistość bądź tworzyć cały złożony system.
Obiekty klas też mają różną długość życia. Niektóre obiekty służą do przechowywania informacji przez prawie cały proces aplikacji ,a niektóre z nich są usuwana zaraz po ich użyciu.

Co to znaczy?W C# mamy do dyspozycji operatory jednoargumentowe jak inkrementacja i dekrementacja. (i++,i--). Mamy też operatory dwuargumentowe, które głównie wykonują podstawowe operacje arytmetyczne (a+b). Czasami w przykładach kodu z Internetu  spotykałem się z wyrażeniem trójargumentowym. Jest ono trochę nieczytelne ,ale na pewno skraca kod o niepotrzebną  if,else.

Operator wygląda tak.

WyjątkiCzęść NR.7The-Hangover-2-Poster-01Nikt nie jest w stanie przewidzieć działań użytkownika. Gdy tworzymy program zwykle jesteśmy przygotowani na scenariusz absolutnie zgodny z zastosowaniem aplikacji ,jednak co się stanie, jeśli w miejscu Y napiszę X.

Ten X nie ma żadnego zastosowania z punktu widzenia programu ,ale nie zmienia to faktu ,że powoduje on jego blokadę. Gdy w textboxie pobieramy liczby musimy być przygotowani na to ,że użytkownik nie podał wartości liczbowej. Gdy otwieramy w aplikacji plik graficzny musimy być przygotowani na to ,że użytkownik wybrał przez przypadek plik tekstowy i tak dalej.

MetodyCzęść NR.6time_paradoxPętle w programowaniu są powszechne, gdyż wykonywanie jakiejś czynności X razy z innymi parametrami jest na porządku dziennym.

Oczywiście zmorą każdego początkującego programisty jest fakt ,że pętle muszą się kiedyś skończyć.

WarunkiCzęść NR.5Programy służą do rozwiązywania złożonych problemów. W tym celu program nie może działać liniowo. Niczym gra Visual Novel, w której w zależności od podjętej przez nas decyzji na ekranie komputera oglądamy inny tekst.

Myślę ,że jest to najlepszy przykład. W takiej grze istnieją proste zmienne bądź liczniki punktów, które decydują o tym, co później się wydarzy.

Potem za pomocą twierdzeń decyzyjnych zawartych w programie zmienne przekierowują nas do odpowiednich scen w grze.

Na tym przykładzie przedstawionym na ilustracji postać w garniturze o imieniu “Enomoto” pyta, czy słyszałem o kwantowej teleportacji? . Jeśli odpowiem “tak” to zostanie pominięta cała scena (jak nie rozdział) tłumacząca co to jest kwantowa teleportacja.
Twierdzenia decyzjne
Mam nadzieje ,że przykład spodobał się . Każdy program działa w zależności od decyzji użytkownika. Nasz poprzedni przykład aplikacji WPF obliczał wynik w zależności od wciśniętego przycisku ,ale ile musielibyśmy mieć przycisków do każdej operacji matematycznej. Tymczasem każdy wie ,że w kalkulatorze jest jeden przycisk “równa się", który wszystko zatwierdza .

Jednym słowem by nie powielać kodu musimy po prostu poinformować program ,że w danym przypadku musi wykonać inną operację.

To byłoby tyle, jeśli chodzi o wstęp. Teraz pokażę jak można osiągnąć to w kodzie w C#.

MetodyCzęść NR.4W poprzednim wpisie pokazałem jak łatwo i szybko napisać prostą aplikacje graficzną.
Metoda C#
Jednak jak podkreśliłem w poprzednim wpisie, znajomość operacji arytmetycznych to za mało do budowania nawet takich małych programików.

Dzisiaj pokażę jak tworzyć własne metody. Jest to jeden z najprostszych trików do podzielenia kodu na mniejsze części, tak by stał się on bardziej czytelny.

ExceptionNa początku tworzenia wpisu miałem duży zapał ,ale gdy doszedłem do litery ”R” w wyjątkach z przestrzeni nazw System.SystemException to stwierdziłem , że zrobienie tej listy na pewno zajmie mi więcej niż jeden dzień.

Dla usprawnienia pracy podzieliłem wpis na części, ponieważ nie byłem w stanie  zbadać nawet tych wyjątków do litery R.

StartCzęść NR.1 Visual C# jest to obiektowo zorientowany język programowania, który na pewno jest też najpotężniejszym arsenałem dostępnym pod flagą technologiczną Microsoft.

C# odgrywa ważną rolę w platformie .NET ,gdyż język ten, częściowo dla niej powstał.


Jeśli znasz język, taki jak Java znajdziesz tutaj duże podobieństwa w składni, które nawet nie jest przypadkowe.

IkonyKiedy piszesz kod  IntelliSence wyświetla ci dostępne  klasy, metody i tak dalej. Dzięki tym ikonkom   wiemy co jest czym w tym menu. Dodałem prostą tabelkę objaśniającą.

Byłem zbyt leniwy więc skorzystałem z opisu z Wikipedii czyniąc ten wpis o wiele lepszym..

ProgrammerOto lista cech, które powinien posiadać dobry programista, według mnie. Ostatnio zastanawiałem się jakie cechy powinien mieć ? albo jakie już mam, które sprawiają , że jestem dobry w programowaniu.
Pierwszy punkt przyszedł z łatwością. W sumie programowanie polega na rozwiązywaniu problemów ,ale co dalej?. Jakie inne cechy powinien posiadać programista z punktu widzenia programisty?.

BookZwykle w księgarni takiej jak Helion mam do dyspozycji książki dla programistów. Jednak parę dni temu pojawiła się książka dedykowana osobom, które programistów zatrudniają. Od razu poczułem tutaj kontrowersje. Pomyślałem sobie, że to jest tak, jakby to powiedział Michał Wójcik z kabaretu Ani Mru Mru  “chłyt marketingowy”

Linq MethodCzasami do naszego kodu jest potrzebna nowa funkcja do danego typu wartości, która ma nie oddziaływać w żaden sposób na już istniejący kod.

A z drugiej strony pisanie klasy statycznej i użycie jej w kodzie w następujący sposób wydłuża niepotrzebnie kod.

Blogger TitleDziś akurat przeczytałem artykuł o tym jak można do tytułu strony dodać też zawartość każdego wpisu. To naprawdę duża rzeczy, ponieważ teraz każdy tytuł wpisu będzie jeszcze lepiej mapowany.

By to zrobić z edytuj kod HTML i znajdź poniższy kod.

Lublin :)W poniedziałek 9 Maja  odbyły się kolejne “Lubelskie Dni Informatyki”. Postanowiłem na nie pojechać szkoda, że sam, ale też było fajnie. Pojechałem bus-em o 6:10 i byłem na miejscu już o 8:00. Droga okazała się prosta i łatwa więc nie miałem żadnego problemu z dotarciem na miejsce konferencji. Myślę, że każdy dałby sobie radę, nawet jeśli nigdy nie był w Lublinie.  

First NHW poprzednim wpisie o NHibernate chciałem cię szybko wprowadzić w zagadnienia podstawowe. Po co w ogóle jest potrzebna technologia pośrednicząca między aplikacją obiektową a relacyjną bazą danych. Właśnie o tym możesz tutaj poczytać.

 

W Internecie istnieje wiele poradników w języku angielskim do NHibernate . Jednak niektóre z nich wymagają posiadania dużych umiejętności z innych zakresów wiedzy jak np. o NUnit. Ale ja przecież chcę się uczyć NHibernate. Uśmiech z językiem

ContactKażdy poważny blog potrzebuje formularza kontaktowego.  Blogger nie oferuje takiej gotowej funkcji. Ale oczywiście  mamy do dyspozycji serwisy, które za darmo będą pomagały w tym procesie.
Ja skorzystałem z serwisu “EmailMeForm”. Po założeniu konta mogę stworzyć różne formularze niekoniecznie kontaktowe. Serwis oferuje wiele bajerów więc każdy może tutaj stworzyć swój własny formularz jaki tylko chce.

NHibernateTworzenie aplikacji wymaga znajomości technologii , które mają rozwiązywać wszelkie problemy. Jako programiści mamy dostęp do tablicy narzędzi i  właśnie z nich wybieramy tą jedną służącą do rozwiązania konkretnych problemów. Jednym z tych problemów jest sposób zarządzania danymi, aby móc je zapisać,           a potem odczytać.

Culture SLLokalizacja polega na dostosowaniu aplikacji - w zależności od danej kultury bądź państwa. Lokalizacja polega na przetłumaczeniu interface użytkownika na dany język. Lokalizacja aplikacji polega na utworzeniu oddzielnego zestawu zasobów (jak tekst i obrazki). Jak to wygląda w Silverlight.

NUnitTesty jednostkowe służą do walidacji, jak i weryfikacji działania klas i ich metod. W poważnych firmach testy jednostkowe są codziennością, gdyż  ręczne testowanie zajmuje więcej czasu. Także  człowiek jest bardziej omylny niż maszyna, czyli jego proces testowania  może być omylny.

FireFoxFireFox udostępnia wiele dodatków. Dzięki temu, nawet gdybym chciał zmienić przeglądarkę to nie mogę. Istnieje wiele dodatków, bez których nie mogę już żyć.

W tym wpisie opisałem kilka dodatków, które są użyteczne dla każdego grafika bądź programisty web.

Markup Znaczniki rozszerzeniowe! Bardzo ważny aspekt w XAML-u. Znaczniki są krótkimi napisami zazwyczaj zamkniętymi w nawiasach klamrowych, które dodają nową funkcjonalność w XAML-u. W języku XAML stosujemy różne znaczniki takie jak “{StaticResource}”, “{TemplateBinding}”, i “{Binding}” oraz wiele innych. Używam ich przez cały czas. 

Ale co z tego skoro ktoś wymyślił składnie do uzupełniania atrybutów XAML w taki prosty sposób bez użycia kodu pobocznego (code-behind). Ten fakt we własnej osobie jest interesujący. Jednak co jest jeszcze bardziej interesujące, to fakt , że możemy stworzyć swoje znaczniki. Żadnego kodu pobocznego Uśmiech

Tworzenie własnych znaczników jest popularne w różnych wzorcach jak MVVM. Obecnie WPF oraz Silverlight 5 pozwala na stworzenie własnego znacznika. Chociaż w Silverlight 5 beta robi się to zupełnie inaczej niż w WPF. Aplikacja, którą napisałem w WPF nie może być tak po prostu przeniesiona za pomocą “copy/paste” do Silverlight.

Meta TagiNa przykład, jeśli chodzi o imię i nazwisko moje czy kogo innego . Pierwsze co się zgłasza to Facebook . Potem jest grupa, którą utworzyłem na facebook-u. Po tym, co zobaczyłem rozważam zmianę loginu na facebook-u albo usunięcie swojej grupy. Potem zgłasza się GoldenLine. Na końcu dopiero coś bardziej informującego  mojego przyszłego pracodawcę.

A gdzie jest mój blog .No cóż, jest on dopiero na 9 miejscu. Śmieszne ,ale wcześniej są nawet informacje o prezentacjach, które prowadziłem lata temu xD. Dalej są już tylko kolejni znajomi z Facebook-a.
Pomyślałem “, dlaczego”. Blog ma w adresie moje imię nazwisko i inne rzeczy więc o co chodzi. No cóż, może to wymaga czasu kto wie ,ale postanowiłem zbadać swój blog za pomocą dodatku do FireFox-a “SEO Doctor”.

Dodatek ten uświadomił mi , że na moim blogu w ogóle nie ma meta tagów , więc postanowiłem je dodać.

EfektyW poprzednim wpisie opisałem niewielki problem z zapętlaniem dźwięków w Silverlight 4. Obecnie w Silverlight 5 Beta, która pojawiła się niecałe 2 tygodnie temu ten problem został rozwiązany dla plików .wav. Klasa SoundEffect została ściągnięta z frameworku XNA i odpowiednio uproszczona na potrzeby Silverlight. XNA to framework, to budowania gier, więc nic dziwnego, że ta klasa jest wręcz stworzona do właśnie takich efektów.

Simple Któregoś dnia przeglądałem nowości w Silverlight Beta 5. Z wszystkich nowości zaciekawiła mnie możliwość zapętlania dźwięku. Jednak na razie można zapętlać tylko pliki .wav, ale może niedługo się to zmieni. Podczas przeglądania wpadłem na pomysł napisania prostego odtwarzacza muzycznego z możliwością zapętlania dźwięków w Silverlight 4.

Stworzenie aplikacji zajęło mi niecałą godzinę. Aplikacja bardzo mi się spodobała, może niedługo stworzę lepszą wersję i może nawet według wzoru MVVM. Aplikacja wygląda następująco.

SOAP SL4Prawie każda aplikacja nawet Silverlight potrzebuje zbioru danych aby osiągnąć swój cel. Silverlight podobnie jak WPF oferuje możliwość bindowania danych, jak i efektownego wyświetlania. Jednak skąd biorą się te dane. Ponieważ jak wcześniej ustaliliśmy Silverlight działa po stronie klienta. Znajduje się ona jakby po drugiej stronie muru gdzie nie ma bezpośredniego dostępu do danych, jak to jest w ASP.NET.

CSS

Figury Scalable Vector Graphic (SVG) jest to standardowy język zaakceptowany przez W3C służący do opisywania dwuwymiarowej grafiki wektorowej, jak i rastrowej, w niektórych przypadkach za pomocą pliku XML. Firefox 3+, Opera 9+ i Safari 3+ wspierają renderowanie SVG. Jedyną zagubioną przeglądarką jest … oczywiście Internet Explorer w wersji 8 ,ale tą lukę można uzupełnić przy pomocy wtyczek. Chociaż i one odchodzą w zapomnienie.

SVG staje się następnym elementem standardów HTML 5. Wcześniej by użyć SVG trzeba było się posłużyć wspaniałym tagami jak <object> <iframe>. Jak pokazuje ten przykład.

PivotViewer

Wysyłając aplikację PivotViewer na swój serwer DropBox zdałem sobie sprawę, że będzie problem ze ścieżką do kolekcji. Zmienianie statycznej ścieżki, która jest zawarta w pliku .xap nie wydało się takim fantastycznym pomysłem. Za każdym razem, gdybym chciał pokazać swoją aplikacje musiałbym ją edytować?
Nie ma mowy. Jak to można rozwiązać.

PivotViewer Na całym świecie są zbierane niesamowite ilości informacji w tym także graficznej. Szybkość naszych łączy internetowych zwiększa się, jak i możliwości graficzne naszych urządzeń. Teraz powinieneś zadać sobie pytanie jak w przyszłości będziemy oglądać galerie obrazków z Internetu. Obecnie mamy tradycyjne galerie polegające na klikaniu miniatur i oglądaniu obrazków.

Wszystkie Kategorie