<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>Dawid Pośliński &#187; poradniki</title>
	<atom:link href="http://blog.poslinski.net/kategoria/poradniki/feed/" rel="self" type="application/rss+xml" />
	<link>http://blog.poslinski.net</link>
	<description>Code is poetry.</description>
	<lastBuildDate>Mon, 06 Sep 2010 18:23:14 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.0.1</generator>
		<item>
		<title>iPhone: przechwytywanie UITextField i UITextView</title>
		<link>http://blog.poslinski.net/iphone-przechwytywanie-uitextfield-i-uitextview/</link>
		<comments>http://blog.poslinski.net/iphone-przechwytywanie-uitextfield-i-uitextview/#comments</comments>
		<pubDate>Mon, 06 Sep 2010 18:19:50 +0000</pubDate>
		<dc:creator>Dawid Pośliński</dc:creator>
				<category><![CDATA[iPhone]]></category>
		<category><![CDATA[poradniki]]></category>
		<category><![CDATA[uitextfield]]></category>
		<category><![CDATA[uitextfielddelegate]]></category>
		<category><![CDATA[uitextview]]></category>
		<category><![CDATA[uitextviewdelegate]]></category>

		<guid isPermaLink="false">http://blog.poslinski.net/?p=625</guid>
		<description><![CDATA[W każdej aplikacji, w której ma pojawić się klawiatura, szczególnie gdy zaczyna się swoją przygodę z programowaniem na platformę Apple, dochodzi do sytuacji, że trzeba przechwycić zakończenie edycji. Najlepiej, jeśli pole, przycisku go, będzie ustawione na &#8222;Done&#8221;, wtedy widać ładny przycisk &#8222;Gotowe&#8221;, jednak jego standardowe zachowanie, nie jest tym czego potrzeba. Należy je dopiero zaprogramować. [...]]]></description>
			<content:encoded><![CDATA[<p><a href="http://blog.poslinski.net/wp-content/uploads/2010/09/iphone_uitextfield_uitextview.png"><img class="aligncenter size-full wp-image-626" title="iphone_uitextfield_uitextview" src="http://blog.poslinski.net/wp-content/uploads/2010/09/iphone_uitextfield_uitextview.png" alt="" width="620" height="150" /></a>W każdej aplikacji, w której ma pojawić się klawiatura, szczególnie gdy zaczyna się swoją przygodę z programowaniem na platformę Apple, dochodzi do sytuacji, że trzeba przechwycić zakończenie edycji. Najlepiej, jeśli pole, przycisku go, będzie ustawione na &#8222;Done&#8221;, wtedy widać ładny przycisk &#8222;Gotowe&#8221;, jednak jego standardowe zachowanie, nie jest tym czego potrzeba. Należy je dopiero zaprogramować.</p>
<h2><span id="more-625"></span>UITextField</h2>
<p>W przypadku, UITextField, sprawa jest dość prosta i ogranicza się do dodania protokołu w pliku nagłówkowym (*.h), klasy w której potrzebujemy przechwycić zdarzenie klawiatury. Należy dodać zaraz po nazwie klasy lub klasie po której ona dziedziczy, następujący kod:</p>
<pre class="objective-c" name="code">&lt;UITextFieldDelegate&gt;</pre>
<p>Protokół ten, wprowadza <a href="http://developer.apple.com/iphone/library/documentation/uikit/reference/UITextFieldDelegate_Protocol/UITextFieldDelegate/UITextFieldDelegate.html" target="_blank">kilka ciekawych metod</a>, które można nadpisać. W wyżej opisanym przypadku, aby ukryć klawiaturę wystarczy w pliku nagłówkowym wprowadzić następujący kod:</p>
<pre class="objective-c" name="code">- (BOOL)textFieldShouldReturn:(UITextField *)theTextField {

[naszTextField resignFirstResponder];

return YES;
}</pre>
<p>Przykład ten zakłada, że w widoku znajduje się tylko <strong>naszTextField</strong>.</p>
<h2>UITextView</h2>
<p>W przypadku UITextView, wystarczy zmienić w pliku nagłówkowym protokół na:</p>
<pre class="objective-c" name="code">&lt;UITextViewDelegate&gt;</pre>
<p>a w metodzie, która przechwytuje kliknięcie, które w przypadku <strong>UITextView</strong>, tworzy nową linię w polu tekstowym, zastosować następujący kod:</p>
<pre class="objective-c" name="code">- (BOOL)textView:(UITextView *)textView shouldChangeTextInRange:(NSRange)range replacementText:(NSString *)text;
{
if ( [text isEqualToString: @"\n"] ) {
[textView resignFirstResponder];
return NO;
}
return YES;
}</pre>
<h2>UITextView z zaokrągloną ramką jak w UITextField?</h2>
<p>Czemu nie? Wystarczy zaimportować odpowiednią klasę:</p>
<pre class="objective-c" name="code">#import  &lt;QuartzCore/QuartzCore.h&gt;</pre>
<p>dzięki czemu otworem staną nowe właściwości w UITextView, pozwalające definiować kolor, grubość i zaokrąglenie ramki. Nic nie stoi na przeszkodzie, żeby UITextView wyglądał tak samo jak UITextField.</p>
<pre class="objective-c" name="code">self.naszTextView.layer.borderWidth = 1;
self.naszTextView.layer.cornerRadius = 8;
self.naszTextView.layer.borderColor = [[UIColor lightGrayColor] CGColor];</pre>
<h2>Na koniec</h2>
<p>Nie ma problemu, aby w widoku występowało wiele TextField&#8217;ów oraz TextView, wtedy wystarczy zastosować if&#8217;y w metodach przechwytujących lub switch&#8217;e jak kto woli.</p>
<p>Sponsor foto: <a href="http://www.flickr.com/photos/4yas/1464567142/">link</a></p>
]]></content:encoded>
			<wfw:commentRss>http://blog.poslinski.net/iphone-przechwytywanie-uitextfield-i-uitextview/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>jQuery: unselect w WebKit?</title>
		<link>http://blog.poslinski.net/jquery-unselect-w-webkit/</link>
		<comments>http://blog.poslinski.net/jquery-unselect-w-webkit/#comments</comments>
		<pubDate>Fri, 14 May 2010 20:04:56 +0000</pubDate>
		<dc:creator>Dawid Pośliński</dc:creator>
				<category><![CDATA[ciekawostki]]></category>
		<category><![CDATA[jquery]]></category>
		<category><![CDATA[poradniki]]></category>
		<category><![CDATA[unselect]]></category>
		<category><![CDATA[webkit]]></category>

		<guid isPermaLink="false">http://blog.poslinski.net/?p=599</guid>
		<description><![CDATA[Pod przeglądarkami bazującymi na silniku WebKit w przypadku ustawienia .focus na polu, pojawia się problem zaznaczonego tekstu. Jak w łatwy sposób sobie z nim poradzić, aby np. kliknięcie na dowolny klawisz nie wyczyściło nam inputa? Rozwiązanie Cała sztuczka polega na pobraniu wartości inputa, za pomocą metody val(); var content = $("input[name=nazwaPola]").val(); Oraz po wykonaniu .focus, [...]]]></description>
			<content:encoded><![CDATA[<p><a href="http://blog.poslinski.net/wp-content/uploads/2010/05/unselect_w_webkit.png"><img src="http://blog.poslinski.net/wp-content/uploads/2010/05/unselect_w_webkit.png" alt="jQuery unselect w Webkit" title="unselect_w_webkit" width="620" height="150" class="aligncenter size-full wp-image-602" /></a>Pod przeglądarkami bazującymi na silniku WebKit w przypadku ustawienia .focus na polu, pojawia się problem zaznaczonego tekstu. Jak w łatwy sposób sobie z nim poradzić, aby np. kliknięcie na dowolny klawisz nie wyczyściło nam inputa?<span id="more-599"></span></p>
<h2>Rozwiązanie</h2>
<p>Cała sztuczka polega na pobraniu wartości inputa, za pomocą metody val();</p>
<pre name="code" class="javascript">var content = $("input[name=nazwaPola]").val();</pre>
<p>Oraz po wykonaniu .focus, nadpisaniu wartości ponownie do pola, co odznaczy tekst w polu.</p>
<pre name="code" class="javascript">$("input[name=nazwaPola]").focus.val(content);</pre>
<p>Prawda, że proste?</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.poslinski.net/jquery-unselect-w-webkit/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Jak posprzątać HTML?</title>
		<link>http://blog.poslinski.net/jak-posprzatac-html/</link>
		<comments>http://blog.poslinski.net/jak-posprzatac-html/#comments</comments>
		<pubDate>Mon, 03 May 2010 14:18:19 +0000</pubDate>
		<dc:creator>Dawid Pośliński</dc:creator>
				<category><![CDATA[ciekawostki]]></category>
		<category><![CDATA[php]]></category>
		<category><![CDATA[poradniki]]></category>
		<category><![CDATA[bezpieczeństwo]]></category>
		<category><![CDATA[htmlpurifier]]></category>
		<category><![CDATA[strip_tags]]></category>

		<guid isPermaLink="false">http://blog.poslinski.net/?p=589</guid>
		<description><![CDATA[Każdy programista webowy, stanął lub stanie przed zadaniem zablokowania możliwości wprowadzania kodu HTML do jego aplikacji przez użytkownika, który nie jest do tego uprawniony. Czasami jednak zdarza się tak, że chcemy dać możliwość użytkownikowi na wprowadzania formatowania, a nie, żeby było jak najprostsze wykorzystujemy do tego HTML. Do tego zadania, świetnie nadaje się biblioteka do [...]]]></description>
			<content:encoded><![CDATA[<p><a href="http://blog.poslinski.net/wp-content/uploads/2010/05/jakposprzatachtml1.png"><img src="http://blog.poslinski.net/wp-content/uploads/2010/05/jakposprzatachtml1.png" alt="" title="jakposprzatachtml" width="620" height="150" class="aligncenter size-full wp-image-596" /></a>Każdy programista webowy, stanął lub stanie przed zadaniem zablokowania możliwości wprowadzania kodu HTML do jego aplikacji przez użytkownika, który nie jest do tego uprawniony. Czasami jednak zdarza się tak, że chcemy dać możliwość użytkownikowi na wprowadzania formatowania, a nie, żeby było jak najprostsze wykorzystujemy do tego HTML.<br />
<span id="more-589"></span><br />
Do tego zadania, świetnie nadaje się biblioteka do której korzystania chciałbym zachęcić. <strong>HTMLPurifier</strong> bo o niej mowa, potrafi nie tylko wyciąć zbędne tagi (co również można wykonać za pomocą wbudowanej w PHP funkcji strip_tags), ale również wyciąć zbędne atrybuty CSS (znajdujące się w atrybucie style znacznika), czy też konkretne atrybuty wewnątrz tagu.<br />
HTMLPurifier znajduje również znaczniki bez treści, zamienia adresy ftp, http, https itd. na linki, a nawet linki do serwisu YouTube kod embeddujący player Google&#8217;a. Stara się również poprawić niepoprawny kod np. poprzez samodzielne domykanie, niezamkniętych znaczników itp.<br />
Posiada również rozbudowany mechanizm cache&#8217;owania.</p>
<h2>Gdzie szukać?</h2>
<p>Polecam odwiedzić <a href="http://htmlpurifier.org">stronę projektu</a>, a w szczególności dział <a href="http://htmlpurifier.org/demo.php">demo</a>, który przedstawia namiastkę możliwości tej biblioteki. Bardzo dobrze skonstruowana dokumentacja, opisuje wszystkie funkcjonalności dostępne w tej bibliotece.</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.poslinski.net/jak-posprzatac-html/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Problemy z TinyMCE i Ajax?</title>
		<link>http://blog.poslinski.net/problemy-z-tinymce-i-ajax/</link>
		<comments>http://blog.poslinski.net/problemy-z-tinymce-i-ajax/#comments</comments>
		<pubDate>Sun, 02 May 2010 11:37:22 +0000</pubDate>
		<dc:creator>Dawid Pośliński</dc:creator>
				<category><![CDATA[ciekawostki]]></category>
		<category><![CDATA[poradniki]]></category>
		<category><![CDATA[ajax]]></category>
		<category><![CDATA[javascript]]></category>
		<category><![CDATA[tinymce]]></category>

		<guid isPermaLink="false">http://blog.poslinski.net/?p=580</guid>
		<description><![CDATA[Przyszło mi ostatnio spotkać się w systemie którym piszę, z problemem, który nie mógł pozostać nierozwiązany. Chodziło dokładnie o to, iż w przypadku inicjowania TinyMCE w containerze otrzymanym z zapytania Ajaxowego, w przypadku, ponownej próby inicjowania pojawiał się komunikat: g.win.document is null Problem ten wynika z próby ponownego utworzenia instancji TinyMCE w miejscu, w którym [...]]]></description>
			<content:encoded><![CDATA[<p><a href="http://blog.poslinski.net/wp-content/uploads/2010/05/tinymceiajax.png"><img src="http://blog.poslinski.net/wp-content/uploads/2010/05/tinymceiajax.png" alt="" title="tinymceiajax" width="620" height="150" class="aligncenter size-full wp-image-586" /></a>Przyszło mi ostatnio spotkać się w systemie którym piszę, z problemem, który nie mógł pozostać nierozwiązany. Chodziło dokładnie o to, iż w przypadku inicjowania TinyMCE w containerze otrzymanym z zapytania Ajaxowego, w przypadku, ponownej próby inicjowania pojawiał się komunikat:</p>
<p><span id="more-580"></span></p>
<pre name="code" class="javascript">g.win.document is null</pre>
<p>Problem ten wynika z próby ponownego utworzenia instancji TinyMCE w miejscu, w którym już istnieje jedna instancja, jednak ponieważ zawartość html została przeładowana, a Tiny nie usuwa automatycznie &#8222;siebie&#8221;, należy to robić ręcznie.</p>
<p>Aby to zrobić, należy w ustawieniach uruchamiających Tiny, zmienić &#8216;mode: &#8222;textareas&#8221;&#8216; na &#8222;none&#8221;.</p>
<pre name="code" class="javascript">tinyMCE.init({
....
mode : "none",
...
});</pre>
<h2>Dodawanie</h2>
<p>Następnie po tym bloku kodu, należy wywołać dla każdego elementu, który chcemy zamienić na nasz edytor, następującą linie kodu:</p>
<pre name="code" class="javascript">tinyMCE.execCommand("mceAddControl", false, "'idElementu");</pre>
<p>Gdzie &#8222;idElementu&#8221; wskazywać będzie na element (może to być zarówno div, jak i textarea jak i niemalże dowolny element DOM).</p>
<h2>Usuwanie</h2>
<p>Pozostało jeszcze usuwanie. Aby je zrealizować, wystarczy przed dodaniem sprawdzić czy istnieje już w pamięci instancja TinyMCE przypisana do określonego idElementu. Wystarczy zatem przed wcześniej wymienioną linią kodu odpowiedzialną za dodawanie instancji Tiny, dodać następujący fragment kodu:</p>
<pre name="code" class="javascript">if (tinyMCE.getInstanceById('idElementu'))
{
tinyMCE.execCommand('mceFocus', false, 'idElementu');
tinyMCE.execCommand('mceRemoveControl', false, 'idElementu');
}</pre>
<h2>Pobieranie zawartości</h2>
<p>Z przydatnych metod, warto jeszcze wiedzieć, jak pobierać w dowolnej chwili zawartość (html) z naszego edytora. Realizuje się to przez następujące polecenie, które zwraca zawartość:</p>
<pre name="code" class="javascript">tinyMCE.get('idElementu').getContent()</pre>
<p>W przypadku, jeżeli na jednej stronie, mamy wiele instancji TinyMCE równocześnie, wystarczy stworzyć obiekt pełniący rolę listy i przechowywać w nim kolejne id edytora. W ten sposób, wykorzystując foreach, będziemy mogli w łatwy i szybki sposób usuwać wiele instancji Tiny jednocześnie.</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.poslinski.net/problemy-z-tinymce-i-ajax/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>XNA: Czarne/białe meshe ze Skinned Model Processorem?</title>
		<link>http://blog.poslinski.net/xna-czarnebiale-meshe-ze-skinned-model-processorem/</link>
		<comments>http://blog.poslinski.net/xna-czarnebiale-meshe-ze-skinned-model-processorem/#comments</comments>
		<pubDate>Sat, 03 Oct 2009 18:45:21 +0000</pubDate>
		<dc:creator>Dawid Pośliński</dc:creator>
				<category><![CDATA[.net]]></category>
		<category><![CDATA[c#]]></category>
		<category><![CDATA[poradniki]]></category>
		<category><![CDATA[xna]]></category>
		<category><![CDATA[csharp]]></category>
		<category><![CDATA[microsoft]]></category>
		<category><![CDATA[modelowanie]]></category>

		<guid isPermaLink="false">http://blog.poslinski.net/?p=474</guid>
		<description><![CDATA[Okazuje się, że użycie skinned model processora stworzonego w samplu Microsoftu, może przysparzać pewne problemy. Jakie? W zależności od karty graficznej meshe, które nie posiadają tekstury (a np. mają kolor zlinkowany do modelu w programie do grafiki 3d), renderowane są na czarno lub biało. Mimo, iż w przypadku BasicEffecta wszystko wyświetla się prawidłowo.Nie wyglądało to [...]]]></description>
			<content:encoded><![CDATA[<p><a href="http://blog.poslinski.net/wp-content/uploads/2009/10/skinned-model-processor.jpg"><img class="aligncenter size-full wp-image-478" title="skinned-model-processor" src="http://blog.poslinski.net/wp-content/uploads/2009/10/skinned-model-processor.jpg" alt="skinned-model-processor" width="620" height="150" /></a>Okazuje się, że użycie skinned model processora stworzonego w <a href="http://creators.xna.com/en-US/sample/skinnedmodel" target="_blank">samplu</a> Microsoftu, może przysparzać pewne problemy. Jakie? W zależności od karty graficznej meshe, które nie posiadają tekstury (a np. mają kolor zlinkowany do modelu w programie do grafiki 3d), renderowane są na czarno lub biało. Mimo, iż w przypadku BasicEffecta wszystko wyświetla się prawidłowo.<span id="more-474"></span>Nie wyglądało to za ciekawie, dlatego postanowiłem poszukać rozwiązań problemu. Gotowych rozwiązań problemu, które nie wymuszałyby modyfikacje modelu, nie udało mi się znaleźć, więc zapytałem na oficjalnym forum XNA.</p>
<p>W odpowiedzi, jeden z twórców XNA <a href="http://blogs.msdn.com/shawnhar/" target="_blank">Shawn Hargreaves</a>, polecił mi przeczytanie <a href="http://blogs.msdn.com/shawnhar/archive/2008/08/22/basiceffect-a-misnomer.aspx" target="_blank">tego artykułu</a>. W skrócie ujmując, są 2 możliwości rozwiązania tego problemu:</p>
<ol>
<li>napisanie własnego Shadera nie mniej skomplikowanego, co ten w BasicEffectcie, który uwzględnia pobieranie koloru z vertexa (a nie tylko textury)</li>
<li>drugie rozwiązanie, które jest moim zdaniem zdecydowanie prostsze &#8211; oteksturowanie całego modelu, co w sumie w grach jest standardem, bo łatwo można uzyskać bardzo ciekawie wyglądający model + dodatkowo bump&#8217;em zwiększyć poziom szczegółowości modelu.</li>
</ol>
<p>Wpis reprezentuje <a href="http://www.flickr.com/photos/mikebaird/552461441/sizes/l/" target="_blank">surfujący pies</a>.</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.poslinski.net/xna-czarnebiale-meshe-ze-skinned-model-processorem/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Nowa strona: visual.wsi.edu.pl</title>
		<link>http://blog.poslinski.net/nowa-strona-visualwsiedupl/</link>
		<comments>http://blog.poslinski.net/nowa-strona-visualwsiedupl/#comments</comments>
		<pubDate>Fri, 13 Feb 2009 20:04:03 +0000</pubDate>
		<dc:creator>Dawid Pośliński</dc:creator>
				<category><![CDATA[asp.net]]></category>
		<category><![CDATA[moje strony]]></category>
		<category><![CDATA[poradniki]]></category>
		<category><![CDATA[projekty]]></category>
		<category><![CDATA[asp]]></category>
		<category><![CDATA[c#]]></category>
		<category><![CDATA[csharp]]></category>
		<category><![CDATA[microsoft]]></category>
		<category><![CDATA[visual studio]]></category>

		<guid isPermaLink="false">http://blog.poslinski.net/?p=110</guid>
		<description><![CDATA[Kolejna strona dołącza do listy realizacji, tym razem wykonana w ASP.NET. Główna tematyka witryny, to nauka podstaw Visual Studio 2008 z wykorzystaniem języka C#. Łączny czas obecnie zawartych prezentacji, wynosi około 100 minut, lecz nie ukrywam, że ta forma przekazywania wiedzy, wydaje mi się, szczególnie ostatnio stawać się coraz bardziej popularną, głównie ze względu na [...]]]></description>
			<content:encoded><![CDATA[<p style="text-align: center;"><a href="http://blog.poslinski.net/wp-content/uploads/2009/02/witrynavs22.jpg"><img class="aligncenter size-full wp-image-120" title="Witryna edukacyjna Visual Studio 2008 C#" src="http://blog.poslinski.net/wp-content/uploads/2009/02/witrynavs22.jpg" alt="" width="620" height="301" /></a></p>
<p>Kolejna strona dołącza do listy realizacji, tym razem wykonana w ASP.NET.</p>
<p><span id="more-110"></span></p>
<p style="text-align: left;">Główna tematyka witryny, to nauka podstaw Visual Studio 2008 z wykorzystaniem języka C#.</p>
<p style="text-align: left;">Łączny czas obecnie zawartych prezentacji, wynosi około 100 minut, lecz nie ukrywam, że ta forma przekazywania wiedzy, wydaje mi się, szczególnie ostatnio stawać się coraz bardziej popularną, głównie ze względu na dużo większą dostępność łącz szerokopasmowych, które pozwalają na komfortowe odtwarzanie filmu, bez konieczności czekania, aż się zbufforuje.</p>
<p style="text-align: left;">Jako odtwarzacz, wykorzystałem open source&#8217;owy <a title="Open Source'owy flv player" href="http://www.longtailvideo.com" target="_blank">JW Player</a>, który doskonale nadaje się do tego, ze względu na prostotę, dość dobrą dokumentację (w języku angielskim), oraz możliwość dodawania pluginów, modułów i skórek, z czego wiele gotowych jest dostępnych do pobrania, bez opłat. Do komercyjnych zastosowań wymagane jest wykupienie licencji.</p>
<h2>ASP.NET &#8211; czy warto?</h2>
<p>Może zanim odpowiem na pytanie czy warto, odpowiem czy przekonał mnie do siebie ten framework. Powiem krótko, dużo zalet, ale również sporo wad. Jedną z największych jest wydajność. Odradzam korzystanie z ASP.NET do tworzenia prostych stron, bowiem mija się to z celem i jest to moim zdaniem zbędne marnowanie zasobów serwera. Z zalet, wymienię jedną &#8211; IDE. Wersje Express Edition są dostępne do pobrania <strong>za darmo</strong> i świetnie nadają się do nauki. To niewątpliwie bardzo zachęca, do spróbowania i jest słusznym krokiem <strong>Microsoftu</strong>, który ma na celu przyciągnięcie jak największej liczby studentów.</p>
<p>Visual Studio, działa bardzo sprawnie i bardzo korzystny jest fakt zintegrowania, chyba wszystkich narzędzi do tworzenia witryny www (oprócz programu graficznego), w jednym miejscu. Mamy tutaj edytor WYSIWYG, czy też narzędzie do zarządzania bazą danych, a nawet tworzenie diagramów ERD.</p>
<p><strong>InteliSense</strong> (podpowiadanie poleceń, zmiennych, nazw klas, parametrów funkcji i metod) i <strong>snippet&#8217;y</strong> (skróty poleceń), czy też <strong>edycja css&#8217;a</strong> to nie problem, bowiem te funkcjonalności również zostały zawarte w aplikacji.</p>
<p>Kwestie serwerowe, wymagają nowszych maszyn, aby działanie witryny było naprawdę przyzwoite, szczególnie, że już wymagania aplikacji takich jak np. <strong>MSSQL Server 2008</strong> określają, czy nasz sprzęt się nadaje czy nie. Oczywiście w przypadku prawdziwych serwerów, nie ma z tym problemów, ale w naszym przypadku, do dyspozycji był naprawdę skromny sprzęt &#8211; jak widać, też się da, co prawda z wykorzystaniem starszych wersji <strong>MSSQL</strong> i <strong>Windows Server</strong>, ale jednak.</p>
<p>Zatem, odpowiadając na pytanie czy warto &#8211; każdy musi zdecydować sam, bilansując plusy i minusy tego rozwiązania i decydując się na nie, bądź też rezygnując. Dobrze jest je poznać, aby przekonać się czy ta filozofia tworzenia witryn, zaoferowana przez <strong>Microsoft</strong>, jest atrakcyjna dla danego programisty czy też nie.</p>
<p>Zachęcam do podzielenia się opiniami dotyczącymi witryny, w komentarzach do tego wpisu, a sama witryny dostępna jest pod adresem:</p>
<p><a title="Witryna Edukacyjna Visual Studio 2008 C#" href="http://visual.wsi.edu.pl">http://visual.wsi.edu.pl</a></p>
]]></content:encoded>
			<wfw:commentRss>http://blog.poslinski.net/nowa-strona-visualwsiedupl/feed/</wfw:commentRss>
		<slash:comments>4</slash:comments>
		</item>
		<item>
		<title>Warto odwiedzić</title>
		<link>http://blog.poslinski.net/warto-odwiedzic/</link>
		<comments>http://blog.poslinski.net/warto-odwiedzic/#comments</comments>
		<pubDate>Sat, 07 Feb 2009 15:32:49 +0000</pubDate>
		<dc:creator>Dawid Pośliński</dc:creator>
				<category><![CDATA[ciekawostki]]></category>
		<category><![CDATA[inne]]></category>
		<category><![CDATA[poradniki]]></category>
		<category><![CDATA[film]]></category>
		<category><![CDATA[tutorial]]></category>

		<guid isPermaLink="false">http://blog.poslinski.net/?p=100</guid>
		<description><![CDATA[Zbiór kilku najciekawszych miejsc w sieci, które odwiedziłem w przeciągu ostatniego miesiąca. Programowanie / Webdesign / SEO Świetny tutorial nt. projektu graficznego witryny. CSS3, z czym to się je? Praktyczne przykłady wykorzystania jQuery. Programowanie obiektowe .bat Google rozgryzione? Spory zbiór darmowych paczek z wektorami. Z przymrużeniem oka &#8222;Dlaczego korzystasz z Avasta? &#8211; Bo jest darmowy, [...]]]></description>
			<content:encoded><![CDATA[<p>Zbiór kilku najciekawszych miejsc w sieci, które odwiedziłem w przeciągu ostatniego miesiąca.<br />
<span id="more-100"></span></p>
<h2>Programowanie / Webdesign / SEO</h2>
<p><a href="http://psdtuts.com/tutorials/interface-tutorials/create-a-magic-night-themed-web-design-from-scratch-in-photoshop/" target="_blank">Świetny tutorial nt. projektu graficznego witryny.</a></p>
<p><a href="http://www.smashingmagazine.com/2009/01/08/push-your-web-design-into-the-future-with-css3/" target="_blank">CSS3, z czym to się je?</a></p>
<p><a href="http://nettuts.com/articles/web-roundups/the-20-most-practical-and-creative-uses-of-jquery/" target="_blank">Praktyczne przykłady wykorzystania jQuery.</a></p>
<p><a href="http://gynvael.coldwind.pl/?id=123&amp;lang=pl" target="_blank">Programowanie obiektowe .bat </a></p>
<p><a href="http://www.sprawnymarketing.pl/artykuly/patent-google-pozycjonowanie/" target="_blank">Google rozgryzione?</a></p>
<p><a href="http://www.smashingmagazine.com/2009/01/16/the-ultimate-collection-of-free-vector-packs/" target="_blank">Spory zbiór darmowych paczek z wektorami.</a></p>
<h2>Z przymrużeniem oka</h2>
<p><a href="http://webhosting.pl/Sonda.z.jakiego.programu.antywirusowego.korzystasz" target="_blank">&#8222;Dlaczego korzystasz z Avasta? &#8211; Bo jest darmowy, dobry, jak wchodze na pornusy to mi nie ściąga różnych wirusów&#8221; &#8230;</a></p>
<p><a href="http://www.metacafe.com/watch/2231262/boooooob_edddddddd/" target="_blank">Hmm, ja rozumiem ewolucję, ale to jest wręcz rewolucja.</a></p>
<p><a href="http://vimeo.com/2047190" target="_blank">Na koniec film prezentujący co się dzieje z naszymi głowami, gdy za dużo siedzimy przy komputerze </a>(polecam w HD).</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.poslinski.net/warto-odwiedzic/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>
