<?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>Çağdaş&#039;ın Günlüğü &#187; cagdas</title>
	<atom:link href="http://www.cagdastopcu.com/author/cagdas/feed" rel="self" type="application/rss+xml" />
	<link>http://www.cagdastopcu.com</link>
	<description>THE GNU HARDWARE DEVELOPER</description>
	<lastBuildDate>Tue, 04 Oct 2011 14:50:51 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.3.1</generator>
		<item>
		<title>Linux BackTrack 5 Kitabı Çıktı</title>
		<link>http://www.cagdastopcu.com/linux-backtrack-5-kitabi-cikti.html</link>
		<comments>http://www.cagdastopcu.com/linux-backtrack-5-kitabi-cikti.html#comments</comments>
		<pubDate>Tue, 04 Oct 2011 14:50:51 +0000</pubDate>
		<dc:creator>cagdas</dc:creator>
				<category><![CDATA[GNU]]></category>
		<category><![CDATA[programlama]]></category>
		<category><![CDATA[backtrack]]></category>
		<category><![CDATA[güvenlik]]></category>
		<category><![CDATA[hack]]></category>
		<category><![CDATA[inceleme]]></category>
		<category><![CDATA[kitap]]></category>
		<category><![CDATA[linux]]></category>
		<category><![CDATA[metasploit]]></category>
		<category><![CDATA[nmap]]></category>
		<category><![CDATA[penetration]]></category>
		<category><![CDATA[test]]></category>

		<guid isPermaLink="false">http://www.cagdastopcu.com/?p=486</guid>
		<description><![CDATA[Kemal Demirez&#8217;in yeni kitabı Linux BackTrack 5 çıktı. Bugün aldım çok merak ettiğim konular var içerisinde. Fiyatı kitapçılarda 20 lira. Ancak yazarına ulaşarak incelemek için ücretsiz olarak temin eden ubuntu-tr kullanıcısı da var. Kitap daha çok nereden başlayacağını bilmeyen güvenlikle alakalı konuları merak eden insanlar için yazılmış. Bölüm bölüm içindekileri aktarmaya çalışacağım: 1- Tanımlar Güvenlik &#8230; </p><p><a class="more-link block-button" href="http://www.cagdastopcu.com/linux-backtrack-5-kitabi-cikti.html">Continue reading &#187;</a>]]></description>
			<content:encoded><![CDATA[<!-- Start Shareaholic LikeButtonSetTop --><!-- End Shareaholic LikeButtonSetTop --><p><img class="alignnone" title="BackTrack Logo" src="http://upload.wikimedia.org/wikipedia/commons/0/09/Backtrack_logo.png" alt="" width="647" height="152" /></p>
<p>Kemal Demirez&#8217;in yeni kitabı Linux BackTrack 5 çıktı. Bugün aldım çok merak ettiğim konular var içerisinde. Fiyatı kitapçılarda 20 lira. Ancak yazarına ulaşarak incelemek için ücretsiz olarak temin eden ubuntu-tr kullanıcısı da var. Kitap daha çok nereden başlayacağını bilmeyen güvenlikle alakalı konuları merak eden insanlar için yazılmış.</p>
<p>Bölüm bölüm içindekileri aktarmaya çalışacağım:<br />
<strong><br />
1- Tanımlar</strong></p>
<p>Güvenlik ve internetle ilgili temel tanımlar var. Porttan Buffer Overflow&#8217;a kadar bir çok terim kısa kısa açıklanmış.</p>
<p><strong>2- BackTrack 5 Kurulumu</strong></p>
<p>Vmware üzerine kurulumu anlatılmış ve genel olarak BackTrack 5 dağıtımı hakkında bilgiler verilmiş.</p>
<p><strong>3- Linux Shell ve Konsol</strong></p>
<p>Basit shell komutları, genel olarak penetrasyon ve test methodları ile izlenen yollar anlatılmış.</p>
<p><strong>4- BackTrack Araçları<br />
</strong></p>
<p>En güzel bölüm bu sanırım. WireShark&#8217;tan Metasploit&#8217;e bir çok program giriş seviyesinde anlatılmış.</p>
<p><strong>5- Forensics</strong></p>
<p><strong>6- Raporlama Araçları</strong></p>
<p>Güvenlikle alakalı konuları merak edenler için güzel bir giriş kaynağı. Okudukça yorumlarımı paylaşacağım.</p>
<div class="shr-publisher-486"></div><!-- Start Shareaholic LikeButtonSetBottom --><!-- End Shareaholic LikeButtonSetBottom --><div style="float: right; margin-left: 10px;"><a href="http://twitter.com/share?url=http://www.cagdastopcu.com/linux-backtrack-5-kitabi-cikti.html&via=cagdastopcucom&text=Linux BackTrack 5 Kitabı Çıktı&related=cagdastopcu.com:official twitter of cagdastopcu.com&lang=en&count=horizontal" class="twitter-share-button">Tweet</a><script type="text/javascript" src="http://platform.twitter.com/widgets.js"></script></div>]]></content:encoded>
			<wfw:commentRss>http://www.cagdastopcu.com/linux-backtrack-5-kitabi-cikti.html/feed</wfw:commentRss>
		<slash:comments>4</slash:comments>
		</item>
		<item>
		<title>Arm Cortex Programlama &#8211; 1</title>
		<link>http://www.cagdastopcu.com/arm-cortex-programlama-1.html</link>
		<comments>http://www.cagdastopcu.com/arm-cortex-programlama-1.html#comments</comments>
		<pubDate>Mon, 03 Oct 2011 15:01:23 +0000</pubDate>
		<dc:creator>cagdas</dc:creator>
				<category><![CDATA[elektronik]]></category>
		<category><![CDATA[GNU]]></category>
		<category><![CDATA[programlama]]></category>
		<category><![CDATA[Robotik]]></category>
		<category><![CDATA[arm]]></category>
		<category><![CDATA[board]]></category>
		<category><![CDATA[cortex]]></category>
		<category><![CDATA[embedded]]></category>
		<category><![CDATA[freertos]]></category>
		<category><![CDATA[lpc1114]]></category>
		<category><![CDATA[lpcxpresso]]></category>
		<category><![CDATA[m0]]></category>
		<category><![CDATA[real time]]></category>
		<category><![CDATA[real time programming]]></category>
		<category><![CDATA[rtos]]></category>
		<category><![CDATA[task]]></category>
		<category><![CDATA[thread]]></category>

		<guid isPermaLink="false">http://www.cagdastopcu.com/?p=474</guid>
		<description><![CDATA[Arm Cortex M serisi ile maceram yeni başladı. Arm Cortex programlama hakkında öğrendiklerimi yazı dizisi halinde yayınlamayı düşünüyorum. Bu ilk yazım bir nevi hello world yazısı olacak. Taskler ve onların tanıtılıp yaratılması ile real time programlamaya giriş yapılacak. Kullandığım Araçlar: Kit (Donanım): LPC 1114 LPCXpresso kiti. Üzerinde Arm Cortex M0 var. Usb kablo ile enerjilenebiliyor &#8230; </p><p><a class="more-link block-button" href="http://www.cagdastopcu.com/arm-cortex-programlama-1.html">Continue reading &#187;</a>]]></description>
			<content:encoded><![CDATA[<!-- Start Shareaholic LikeButtonSetTop --><!-- End Shareaholic LikeButtonSetTop --><p><a href="http://www.cagdastopcu.com/wp-content/uploads/2011/10/arm_cortex-m0_cagdas_topcu_design.jpg"><img class="size-medium wp-image-481 alignleft" title="arm_cortex-m0_cagdas_topcu_design" src="http://www.cagdastopcu.com/wp-content/uploads/2011/10/arm_cortex-m0_cagdas_topcu_design-300x267.jpg" alt="" width="300" height="267" /></a></p>
<p>Arm Cortex M serisi ile maceram yeni başladı. Arm Cortex programlama hakkında öğrendiklerimi yazı dizisi halinde yayınlamayı düşünüyorum. Bu ilk yazım bir nevi hello world yazısı olacak. Taskler ve onların tanıtılıp yaratılması ile real time programlamaya giriş yapılacak.</p>
<p><strong>Kullandığım Araçlar:</strong></p>
<p>Kit (Donanım): LPC 1114 LPCXpresso kiti. Üzerinde Arm Cortex M0 var. Usb kablo ile enerjilenebiliyor ve programlanabiliyor.</p>
<p>İşletim Sistemi: Ubuntu 11.04 Gnome Classic</p>
<p>LPCXpresso (IDE): Programları yazıp, derleyip kitimize yükleyebildiğimiz eclipse tabanlı IDE.</p>
<p>FreeRTOS: Küçük boyutlarda Real Time (gerçek zamanlı) işletim sistemi. LPC 1114 için oluşturulmuş hazır proje örneğini direkt atabiliyorsunuz kitinize.</p>
<p><strong>Başlamadan Önce Önemli Not:</strong> Yazdığınız kodları kitinize atmanız zaman alabilir veya atarken donmalar olabilir, bazen de haza verebilir. Bunun gibi şeylerle karşılaştığınızda LPCXpresso&#8217;yu kapatın. Cihanızın USB kablosunu ayırın ve LPCXpressoyu yeniden çalıştırıp yükleme işlemini tekrarlayın. Yılmayın kodunuzda hata olmadığı sürece tekrar deneyin. Üçüncü denemenizde muhtemelen olacaktır. FreeRTOS&#8217;u içine gömdüğünüz için biraz uzun sürüyor ve hata verebiliyor.</p>
<p>Gerçek Zamanlı sistemleri basitleştirmek için aynı anda bir çok işi yapabilme olarak düşünebiliriz. Daha düzgün bir tanımı için belki bir yazı daha yazabilirim. Böylece ufacık kitinizde bir program parçası sensörden veri okurken diğer bir program parçası da internetten gelebilecek istekleri bekler konumda tutulabilir. Bu program parçacıklarına Task diyoruz.</p>
<p><strong>Task / Thread Nedir, Neden Gereklidir?</strong></p>
<p>Task aslında programcıların bildiği threaddir. Ancak gömülü sistemlerde task terimi daha çok kullanılmaktadır. Task nedir sorusunun yanıtı aslında neden kullanılır sorusunun yanıtıdır. Diyelim iki sonsuz döngünüz var kodunuzun içinde ve çalıştırdınız. Programınız birinci döngüye girer ve döngüyü kırmadığınız sürece oradan çıkamaz. Ancak elimizde iki tane sonsuz döngü var ve biz bu iki işlemin de sürekli olarak yapılmasını istiyoruz! İşte burada thread / task kavramı ortaya giriyor. İki task oluşturuyoruz ve işlemcinin bu ikisini de yapabilmesini sağlıyoruz.</p>
<p><strong>FreeRTOS</strong></p>
<p>Kendi seçimim olmayan hazır örneği olduğu için başlangıçta kullanıp real sistemlerini öğrenmeyi hedeflediğim işletim sistemi. Open-Source ve küçük boyutlarda olması en büyük artısı ancak kullanım klavuzu 60 dolar. İnternette bulmama rağmen hiç de hoşnut değilim. 170 sayfalık kitapçığın 60 dolara satılması gereksiz. En azından sitede başlangıç için bir iki makale olmasını isterdim o da yok. En kısa zamanda linux tabanlı veya açık kaynaklı daha düzgün bir RT sistemine geçmeyi planlıyorum.</p>
<p>FreeRTOS&#8217;un en güzel yanı ise elimizde src/ dizininin altında bir main.c dosyası olması ve onunla istediğimiz gibi oynayabilmemiz. Ayrıca ayarlamalar için diğer kütüphane dosyalarında oynamalar yapmamız gerekecektir ileride ancak başlangıç için hiçbir ayar yapmadan kodunuzu yazabiliyorsunuz.</p>
<p><strong>Task / Thread Tanımlama</strong></p>
<p>Açıkçası çok kolay geldi. Generik bir pointerla void olarak fonksiyonumuzu tanımlamamız yeterli. Elbette içinde bir sonsuz döngü olması mantıklı. Yoksa neden task kullanalım <img src='http://www.cagdastopcu.com/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> </p>
<p>Aşağıdaki kodda iki task oluşturduk. Bunun gibi bir çok taski kolayca oluşturabiliriz. Aşağıdaki kodda debug_puts fonksiyonu ile LPCXpresso&#8217;nun konsoluna hello world&#8217;umuzu yazdırmış oluyoruz.</p>

<div class="wp_syntax"><div class="code"><pre class="c" style="font-family:monospace;"><span style="color: #993333;">void</span> vTaskDebuggerHeartbeat1<span style="color: #009900;">&#40;</span><span style="color: #993333;">void</span> <span style="color: #339933;">*</span>pvParameters<span style="color: #009900;">&#41;</span>
<span style="color: #009900;">&#123;</span>
	<span style="color: #b1b100;">while</span><span style="color: #009900;">&#40;</span><span style="color: #0000dd;">1</span><span style="color: #009900;">&#41;</span>
	<span style="color: #009900;">&#123;</span>
		debug_puts<span style="color: #009900;">&#40;</span><span style="color: #ff0000;">&quot;Merhaba Dunya! &amp;gt;&amp;gt; Task1&quot;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
		vTaskDelay<span style="color: #009900;">&#40;</span>configTICK_RATE_HZ<span style="color: #339933;">*</span><span style="color: #0000dd;">3</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
	<span style="color: #009900;">&#125;</span>
<span style="color: #009900;">&#125;</span>
&nbsp;
<span style="color: #993333;">void</span> vTaskDebuggerHeartbeat2<span style="color: #009900;">&#40;</span><span style="color: #993333;">void</span> <span style="color: #339933;">*</span>pvParameters<span style="color: #009900;">&#41;</span>
<span style="color: #009900;">&#123;</span>
	<span style="color: #b1b100;">while</span><span style="color: #009900;">&#40;</span><span style="color: #0000dd;">1</span><span style="color: #009900;">&#41;</span>
	<span style="color: #009900;">&#123;</span>
		debug_puts<span style="color: #009900;">&#40;</span><span style="color: #ff0000;">&quot;Merhaba Dunya! &amp;gt;&amp;gt; Task2&quot;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
		vTaskDelay<span style="color: #009900;">&#40;</span>configTICK_RATE_HZ<span style="color: #339933;">*</span><span style="color: #0000dd;">3</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
	<span style="color: #009900;">&#125;</span>
<span style="color: #009900;">&#125;</span></pre></div></div>

<p><strong>Task / Thread Yaratma</strong></p>
<p>Sıra geldi tanıttığımız taskleri kullanmaya: bunun için C API&#8217;nin xTaskCreate() methodunu kullanıyoruz. Bu fonksiyonları tahmin edilebileceği gibi main methodunun içinde kullanmalıyız.</p>

<div class="wp_syntax"><div class="code"><pre class="c" style="font-family:monospace;">xTaskCreate<span style="color: #009900;">&#40;</span> vTaskDebuggerHeartbeat1<span style="color: #339933;">,</span> <span style="color: #009900;">&#40;</span><span style="color: #993333;">const</span> <span style="color: #993333;">signed</span> portCHAR <span style="color: #339933;">*</span> <span style="color: #993333;">const</span><span style="color: #009900;">&#41;</span><span style="color: #ff0000;">&quot;ping&quot;</span><span style="color: #339933;">,</span> configMINIMAL_STACK_SIZE<span style="color: #339933;">,</span>
			NULL<span style="color: #339933;">,</span> <span style="color: #0000dd;">3</span><span style="color: #339933;">,</span> NULL<span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
xTaskCreate<span style="color: #009900;">&#40;</span> vTaskDebuggerHeartbeat2<span style="color: #339933;">,</span> <span style="color: #009900;">&#40;</span><span style="color: #993333;">const</span> <span style="color: #993333;">signed</span> portCHAR <span style="color: #339933;">*</span> <span style="color: #993333;">const</span><span style="color: #009900;">&#41;</span><span style="color: #ff0000;">&quot;ping1&quot;</span><span style="color: #339933;">,</span> configMINIMAL_STACK_SIZE<span style="color: #339933;">,</span>
			NULL<span style="color: #339933;">,</span> <span style="color: #0000dd;">3</span><span style="color: #339933;">,</span> NULL<span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span></pre></div></div>

<p>Ardından FreeRTOS Scheduler&#8217;ı başlatılır:</p>

<div class="wp_syntax"><div class="code"><pre class="c" style="font-family:monospace;">vTaskStartScheduler<span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span></pre></div></div>

<p>Eğer tek bir işlemci vsadarsa, işlemci üzerinde anlık olarak sadece bir task çalışabilir. Ardından başka bir taske geçilir. Bu sebeple taskin iki durumundan sözedebiliriz: Running ve not running. Not running&#8217;de başka şeyler de var. Ama kolaylık olsun diye şimdilik böyle ayırdık. Not running kısmında taskin durumu kaydedilir ve resume olması beklenir. Aşağıdaki şekil daha açıklayıcı olabilir:</p>
<p>&nbsp;</p>
<div class="mceTemp mceIEcenter">
<dl id="attachment_475" class="wp-caption aligncenter" style="width: 310px;">
<dt class="wp-caption-dt"><a href="http://www.cagdastopcu.com/wp-content/uploads/2011/10/cagdas_task_life_cycle_embedded_free_rtos.png"><img class="size-medium wp-image-475" title="cagdas_task_life_cycle_embedded_free_rtos" src="http://www.cagdastopcu.com/wp-content/uploads/2011/10/cagdas_task_life_cycle_embedded_free_rtos-300x189.png" alt="" width="300" height="189" /></a></dt>
</dl>
</div>
<p>&nbsp;</p>
<p>Task geçişi not running kısmından running kısmına geçince “switching in” veya “swapped in” denilir. Tam tersi için ise “switched out” veya “swapped out” denilir. FreeRTOS Schedulerı bu switch in ve out işini yapan tek birimdir.</p>
<p><strong>Pragramın Çalıştırılması</strong></p>
<p>Eklediğimiz kısımlarla kodumuzu kaydediyoruz ve freertos projesine sağ tıklayıp run diyerek kodumuzu atıyoruz. Sonuç olarak LPCXpresso konsolunda aşağıdakine benzer bir çıktı aldım.</p>

<div class="wp_syntax"><div class="code"><pre class="c" style="font-family:monospace;">Merhaba Dunya<span style="color: #339933;">!</span> <span style="color: #339933;">&amp;</span>gt<span style="color: #339933;">;&amp;</span>gt<span style="color: #339933;">;</span> Task1
Merhaba Dunya<span style="color: #339933;">!</span> <span style="color: #339933;">&gt;&gt;</span> Task2
Merhaba Dunya<span style="color: #339933;">!</span> <span style="color: #339933;">&gt;&gt;</span> Task1
Merhaba Dunya<span style="color: #339933;">!</span> <span style="color: #339933;">&gt;&gt;</span> Task2
Merhaba Dunya<span style="color: #339933;">!</span> <span style="color: #339933;">&gt;&gt;</span> Task1
Merhaba Dunya<span style="color: #339933;">!</span> <span style="color: #339933;">&gt;&gt;</span> Task2</pre></div></div>

<p><strong> Sonuç</strong></p>
<p>Başka bir programlama dilinde thread kavramına hakimseniz çok da zorlanıcağınızı düşünmüyorum. Çalışmalarıma devam edip yeni şeyler öğrendikçe buradan yazmaya devam edeceğim. Ayrıca RTOS için önerilere açığım. Kendi sistemim için herhangi bir RTOS&#8217;u nasıl uygun hale getireceğim konusunda bilgi ve tecrübe eksikliğim var. Yardımcı olabilicekler varsa buradan yazabilirlerse sevinirim.</p>
<div class="shr-publisher-474"></div><!-- Start Shareaholic LikeButtonSetBottom --><!-- End Shareaholic LikeButtonSetBottom --><div style="float: right; margin-left: 10px;"><a href="http://twitter.com/share?url=http://www.cagdastopcu.com/arm-cortex-programlama-1.html&via=cagdastopcucom&text=Arm Cortex Programlama - 1&related=cagdastopcu.com:official twitter of cagdastopcu.com&lang=en&count=horizontal" class="twitter-share-button">Tweet</a><script type="text/javascript" src="http://platform.twitter.com/widgets.js"></script></div>]]></content:encoded>
			<wfw:commentRss>http://www.cagdastopcu.com/arm-cortex-programlama-1.html/feed</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>Java ile Thread Kullanarak Socket Programlama</title>
		<link>http://www.cagdastopcu.com/java-ile-thread-kullanarak-socket-programlama.html</link>
		<comments>http://www.cagdastopcu.com/java-ile-thread-kullanarak-socket-programlama.html#comments</comments>
		<pubDate>Fri, 30 Sep 2011 13:32:42 +0000</pubDate>
		<dc:creator>cagdas</dc:creator>
				<category><![CDATA[GNU]]></category>
		<category><![CDATA[Java]]></category>
		<category><![CDATA[programlama]]></category>
		<category><![CDATA[java]]></category>
		<category><![CDATA[network]]></category>
		<category><![CDATA[programming]]></category>
		<category><![CDATA[socket]]></category>

		<guid isPermaLink="false">http://www.cagdastopcu.com/?p=469</guid>
		<description><![CDATA[Bu yazımda çok işlevsel olmasa da Android için telnet client&#8217;ı yazarken kullandığım echo server kodlarını anlatacağım. NIO paketini kullanmadığım için aslında çok da sağlıklı değil ve her bağlantı için ayrıca bir thread oluşturulmaktadır. Bu nedenle çok fazla yüklenmelere dayanamayacak bir server olacak bizimkisi. Önce Java&#8217;da socket işleri nasıl yürüyor ona bakalım. Javada ServerSocket ve Socket &#8230; </p><p><a class="more-link block-button" href="http://www.cagdastopcu.com/java-ile-thread-kullanarak-socket-programlama.html">Continue reading &#187;</a>]]></description>
			<content:encoded><![CDATA[<!-- Start Shareaholic LikeButtonSetTop --><!-- End Shareaholic LikeButtonSetTop --><p>Bu yazımda çok işlevsel olmasa da Android için telnet client&#8217;ı yazarken kullandığım echo server kodlarını anlatacağım. NIO paketini kullanmadığım için aslında çok da sağlıklı değil ve her bağlantı için ayrıca bir thread oluşturulmaktadır. Bu nedenle çok fazla yüklenmelere dayanamayacak bir server olacak bizimkisi.</p>
<p>Önce Java&#8217;da socket işleri nasıl yürüyor ona bakalım. Javada ServerSocket ve Socket olmak üzere kullanıma hazır iki socket türü var(Aslında LocalSocket de var). Server sürekli bekleme işini yaptığımız ve dışardan birisi bağlanırsa ona gereken cevabı verdirttiğimiz makinede sürekli çalışmak zorunda olan programımız. ServerSocket sınıfının constructoru ile hangi porttan bu server hizmetini vereceğimizi belirlememiz gerekiyor.</p>
<p><strong>Olay ise şundan ibaret:</strong></p>
<p>1- ServerSocket&#8217;imiz bir portu izler durur.</p>
<p>2- Client bir Socket yardımıyla bizim Server&#8217;ımızın portuna naber der.</p>
<p>3- ServerSocket bu bağlantıyı accept() static methoduyla aldıktan sonra bir socket oluşturur.</p>
<p>4- Bu oluşturulan socket ile haberleşirler. Ve mutlu son <img src='http://www.cagdastopcu.com/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> </p>
<p><strong>Neden Thread Kullanmalıyım?</strong></p>
<p>Çok basit! Server&#8217;a birden fazla client&#8217;ın bağlanabilmesi için bu yapılır. Client tarafından gelen verinin ne kadar sürede geleceği belli değildir. Bu sebeple o verilerin alınma işlemleri bir thread&#8217;ın run methodunun içine gömülür. Ardından serverda start() static methodu ile thread çalıştırılır.</p>
<p><strong>Server&#8217;ımızın Kodu:</strong></p>
<p>&nbsp;</p>

<div class="wp_syntax"><table><tr><td class="line_numbers"><pre>1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
</pre></td><td class="code"><pre class="java" style="font-family:monospace;"><span style="color: #000000; font-weight: bold;">package</span> <span style="color: #006699;">com.cagdas.network</span><span style="color: #339933;">;</span>
&nbsp;
<span style="color: #000000; font-weight: bold;">import</span> <span style="color: #006699;">java.io.IOException</span><span style="color: #339933;">;</span>
<span style="color: #000000; font-weight: bold;">import</span> <span style="color: #006699;">java.net.InetAddress</span><span style="color: #339933;">;</span>
<span style="color: #000000; font-weight: bold;">import</span> <span style="color: #006699;">java.net.ServerSocket</span><span style="color: #339933;">;</span>
<span style="color: #000000; font-weight: bold;">import</span> <span style="color: #006699;">java.net.Socket</span><span style="color: #339933;">;</span>
&nbsp;
<span style="color: #000000; font-weight: bold;">public</span> <span style="color: #000000; font-weight: bold;">class</span> EnterpriseEchoServer <span style="color: #009900;">&#123;</span>
&nbsp;
	<span style="color: #008000; font-style: italic; font-weight: bold;">/**
	 * @param args
	 */</span>
	<span style="color: #000000; font-weight: bold;">public</span> <span style="color: #000000; font-weight: bold;">static</span> <span style="color: #000066; font-weight: bold;">void</span> main<span style="color: #009900;">&#40;</span><span style="color: #003399;">String</span><span style="color: #009900;">&#91;</span><span style="color: #009900;">&#93;</span> args<span style="color: #009900;">&#41;</span> <span style="color: #009900;">&#123;</span>
		<span style="color: #003399;">ServerSocket</span> ss<span style="color: #339933;">;</span>
&nbsp;
		<span style="color: #000000; font-weight: bold;">try</span> <span style="color: #009900;">&#123;</span>
			ss <span style="color: #339933;">=</span> <span style="color: #000000; font-weight: bold;">new</span> <span style="color: #003399;">ServerSocket</span><span style="color: #009900;">&#40;</span><span style="color: #cc66cc;">23</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
			<span style="color: #003399;">System</span>.<span style="color: #006633;">out</span>.<span style="color: #006633;">println</span><span style="color: #009900;">&#40;</span><span style="color: #003399;">InetAddress</span>.<span style="color: #006633;">getLocalHost</span><span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span> <span style="color: #339933;">+</span> <span style="color: #0000ff;">&quot; hazir&quot;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
			<span style="color: #000000; font-weight: bold;">while</span> <span style="color: #009900;">&#40;</span><span style="color: #000066; font-weight: bold;">true</span><span style="color: #009900;">&#41;</span> <span style="color: #009900;">&#123;</span>
&nbsp;
				<span style="color: #003399;">Socket</span> s <span style="color: #339933;">=</span> ss.<span style="color: #006633;">accept</span><span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
				<span style="color: #003399;">System</span>.<span style="color: #006633;">out</span>.<span style="color: #006633;">println</span><span style="color: #009900;">&#40;</span>s.<span style="color: #006633;">getInetAddress</span><span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span>.<span style="color: #006633;">getHostName</span><span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span> <span style="color: #339933;">+</span> <span style="color: #0000ff;">&quot; &quot;</span>
						<span style="color: #339933;">+</span> s.<span style="color: #006633;">getInetAddress</span><span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span>.<span style="color: #006633;">getHostAddress</span><span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span> <span style="color: #339933;">+</span> <span style="color: #0000ff;">&quot; baglandi&quot;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
				<span style="color: #000000; font-weight: bold;">new</span> EESThreadPart<span style="color: #009900;">&#40;</span>s<span style="color: #009900;">&#41;</span>.<span style="color: #006633;">start</span><span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
			<span style="color: #009900;">&#125;</span>
		<span style="color: #009900;">&#125;</span> <span style="color: #000000; font-weight: bold;">catch</span> <span style="color: #009900;">&#40;</span><span style="color: #003399;">IOException</span> e<span style="color: #009900;">&#41;</span> <span style="color: #009900;">&#123;</span>
			<span style="color: #666666; font-style: italic;">// TODO Auto-generated catch block</span>
			e.<span style="color: #006633;">printStackTrace</span><span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
		<span style="color: #009900;">&#125;</span><span style="color: #666666; font-style: italic;">// Telnet hizmeti</span>
&nbsp;
	<span style="color: #009900;">&#125;</span>
&nbsp;
<span style="color: #009900;">&#125;</span></pre></td></tr></table></div>

<p>Burada 23 numaralı telnet portunu seçtim. Kodda görüldüğü üzere s socketi serversocketinin accept metodu ile gelen isteği kabul edilip oluşturuluyor. getInetAdress() methodu ile bağlanan kişinin bilgileri HostName ve HostAdress gibi bilgileri alınabiliyor. Ardından s socketi thread&#8217;li kısma gönderiliyor.</p>
<p>&nbsp;</p>
<p><strong>Thread kullanılan Sınıf</strong></p>
<p>&nbsp;</p>

<div class="wp_syntax"><table><tr><td class="line_numbers"><pre>1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
</pre></td><td class="code"><pre class="java" style="font-family:monospace;"><span style="color: #000000; font-weight: bold;">package</span> <span style="color: #006699;">com.cagdas.network</span><span style="color: #339933;">;</span>
&nbsp;
<span style="color: #000000; font-weight: bold;">import</span> <span style="color: #006699;">java.io.IOException</span><span style="color: #339933;">;</span>
<span style="color: #000000; font-weight: bold;">import</span> <span style="color: #006699;">java.io.PrintStream</span><span style="color: #339933;">;</span>
<span style="color: #000000; font-weight: bold;">import</span> <span style="color: #006699;">java.net.Socket</span><span style="color: #339933;">;</span>
<span style="color: #000000; font-weight: bold;">import</span> <span style="color: #006699;">java.util.Scanner</span><span style="color: #339933;">;</span>
&nbsp;
<span style="color: #000000; font-weight: bold;">public</span> <span style="color: #000000; font-weight: bold;">class</span> EESThreadPart <span style="color: #000000; font-weight: bold;">extends</span> <span style="color: #003399;">Thread</span> <span style="color: #009900;">&#123;</span>
&nbsp;
	<span style="color: #000000; font-weight: bold;">private</span> <span style="color: #003399;">Socket</span> s<span style="color: #339933;">;</span>
&nbsp;
	<span style="color: #000000; font-weight: bold;">public</span> EESThreadPart<span style="color: #009900;">&#40;</span><span style="color: #003399;">Socket</span> s<span style="color: #009900;">&#41;</span> <span style="color: #009900;">&#123;</span>
&nbsp;
		<span style="color: #000000; font-weight: bold;">this</span>.<span style="color: #006633;">s</span> <span style="color: #339933;">=</span> s<span style="color: #339933;">;</span>
	<span style="color: #009900;">&#125;</span>
&nbsp;
	<span style="color: #000000; font-weight: bold;">public</span> <span style="color: #000066; font-weight: bold;">void</span> run<span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span> <span style="color: #009900;">&#123;</span>
		<span style="color: #003399;">PrintStream</span> pr<span style="color: #339933;">;</span>
		<span style="color: #000000; font-weight: bold;">try</span> <span style="color: #009900;">&#123;</span>
			pr <span style="color: #339933;">=</span> <span style="color: #000000; font-weight: bold;">new</span> <span style="color: #003399;">PrintStream</span><span style="color: #009900;">&#40;</span>s.<span style="color: #006633;">getOutputStream</span><span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
			Scanner sc <span style="color: #339933;">=</span> <span style="color: #000000; font-weight: bold;">new</span> Scanner<span style="color: #009900;">&#40;</span>s.<span style="color: #006633;">getInputStream</span><span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
			pr.<span style="color: #006633;">println</span><span style="color: #009900;">&#40;</span><span style="color: #0000ff;">&quot;Server'a baglandiniz. Cikmak icin bye yazin.&quot;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span> <span style="color: #666666; font-style: italic;">// Client'a</span>
			<span style="color: #003399;">String</span> gelen<span style="color: #339933;">;</span> <span style="color: #666666; font-style: italic;">// gonderiliyor</span>
			<span style="color: #000000; font-weight: bold;">while</span> <span style="color: #009900;">&#40;</span><span style="color: #000066; font-weight: bold;">true</span><span style="color: #009900;">&#41;</span> <span style="color: #009900;">&#123;</span> <span style="color: #666666; font-style: italic;">// sonsuz dongu</span>
				gelen <span style="color: #339933;">=</span> sc.<span style="color: #006633;">nextLine</span><span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span> <span style="color: #666666; font-style: italic;">// client'dan geliyor</span>
				<span style="color: #000000; font-weight: bold;">if</span> <span style="color: #009900;">&#40;</span>gelen.<span style="color: #006633;">trim</span><span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span>.<span style="color: #006633;">equalsIgnoreCase</span><span style="color: #009900;">&#40;</span><span style="color: #0000ff;">&quot;bye&quot;</span><span style="color: #009900;">&#41;</span><span style="color: #009900;">&#41;</span>
					<span style="color: #000000; font-weight: bold;">break</span><span style="color: #339933;">;</span>
				<span style="color: #003399;">System</span>.<span style="color: #006633;">out</span>.<span style="color: #006633;">println</span><span style="color: #009900;">&#40;</span><span style="color: #0000ff;">&quot;Client:&quot;</span> <span style="color: #339933;">+</span> gelen<span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
				pr.<span style="color: #006633;">println</span><span style="color: #009900;">&#40;</span><span style="color: #0000ff;">&quot;Echo:&quot;</span> <span style="color: #339933;">+</span> gelen<span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
			<span style="color: #009900;">&#125;</span>
			s.<span style="color: #006633;">close</span><span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
			<span style="color: #003399;">System</span>.<span style="color: #006633;">out</span>
					.<span style="color: #006633;">println</span><span style="color: #009900;">&#40;</span>s.<span style="color: #006633;">getInetAddress</span><span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span>.<span style="color: #006633;">getHostName</span><span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span> <span style="color: #339933;">+</span> <span style="color: #0000ff;">&quot; &quot;</span>
							<span style="color: #339933;">+</span> s.<span style="color: #006633;">getInetAddress</span><span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span>.<span style="color: #006633;">getHostAddress</span><span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span>
							<span style="color: #339933;">+</span> <span style="color: #0000ff;">&quot; serverdan cikti!&quot;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
		<span style="color: #009900;">&#125;</span> <span style="color: #000000; font-weight: bold;">catch</span> <span style="color: #009900;">&#40;</span><span style="color: #003399;">IOException</span> e<span style="color: #009900;">&#41;</span> <span style="color: #009900;">&#123;</span>
			<span style="color: #666666; font-style: italic;">// TODO Auto-generated catch block</span>
			e.<span style="color: #006633;">printStackTrace</span><span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
		<span style="color: #009900;">&#125;</span>
&nbsp;
	<span style="color: #009900;">&#125;</span>
&nbsp;
<span style="color: #009900;">&#125;</span></pre></td></tr></table></div>

<p>Burada PrintStream kullanılarak Client&#8217;a veri gönderilmiş ve ondan gelenler de Scanner yardımıyla sonsuz döngü içerisinde beklenmiştir. Bye yazıca client ile bağlantıyı sağlayan socket sonlandırılmakta.</p>
<p><strong>Server&#8217;ımızı Nasıl Deneriz?</strong></p>
<p>Telnet portunu (23) kullanmamızın bir nedeni vardı <img src='http://www.cagdastopcu.com/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' />  Herhangi bir telnet clientı ile programınız çalışıyorken denemelerinizi yapabilirsiniz. Mesela ubuntuda şöyle kullanılabilir:</p>
<p>cagdas@cagdas-K53SV:~$ telnet<br />
telnet&gt; open localhost<br />
Trying 127.0.0.1&#8230;<br />
Connected to localhost.<br />
Escape character is &#8216;^]&#8217;.<br />
Server&#8217;a baglandiniz. Cikmak icin bye yazin.</p>
<div class="shr-publisher-469"></div><!-- Start Shareaholic LikeButtonSetBottom --><!-- End Shareaholic LikeButtonSetBottom --><div style="float: right; margin-left: 10px;"><a href="http://twitter.com/share?url=http://www.cagdastopcu.com/java-ile-thread-kullanarak-socket-programlama.html&via=cagdastopcucom&text=Java ile Thread Kullanarak Socket Programlama&related=cagdastopcu.com:official twitter of cagdastopcu.com&lang=en&count=horizontal" class="twitter-share-button">Tweet</a><script type="text/javascript" src="http://platform.twitter.com/widgets.js"></script></div>]]></content:encoded>
			<wfw:commentRss>http://www.cagdastopcu.com/java-ile-thread-kullanarak-socket-programlama.html/feed</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>My First Design Pattern in Java : Singleton</title>
		<link>http://www.cagdastopcu.com/my-first-design-pattern-in-java-singleton.html</link>
		<comments>http://www.cagdastopcu.com/my-first-design-pattern-in-java-singleton.html#comments</comments>
		<pubDate>Wed, 29 Jun 2011 19:13:36 +0000</pubDate>
		<dc:creator>cagdas</dc:creator>
				<category><![CDATA[Java]]></category>
		<category><![CDATA[programlama]]></category>
		<category><![CDATA[design patterns]]></category>
		<category><![CDATA[english]]></category>
		<category><![CDATA[java]]></category>
		<category><![CDATA[singleton]]></category>

		<guid isPermaLink="false">http://www.cagdastopcu.com/?p=382</guid>
		<description><![CDATA[I learned my first design pattern at my oop based java lesson. If you need to create only one instance  and reuse this instance forever (or some classes need only one instance who knows?) you can use this pattern. This pattern was published by GoF. Where we can use? Some application need unique items. For &#8230; </p><p><a class="more-link block-button" href="http://www.cagdastopcu.com/my-first-design-pattern-in-java-singleton.html">Continue reading &#187;</a>]]></description>
			<content:encoded><![CDATA[<!-- Start Shareaholic LikeButtonSetTop --><!-- End Shareaholic LikeButtonSetTop --><p>I learned my first design pattern at my oop based java lesson. If you need to create only one instance  and reuse this instance forever (or some classes need only one instance who knows?) you can use this pattern. This pattern was published by GoF.</p>
<p>Where we can use?</p>
<p>Some application need unique items. For example, my company use unique billing system in crm program because we need a unique reference.</p>
<p>How can I use?</p>
<p>First we add private constructor at our claas. It means that we can not use &#8220;new&#8221; operator at other class. Because when we use &#8220;new&#8221; operator, it calls class&#8217;s constructor for creating instance. Actually, if I can not use new operator at other class and how can I create new instance? Static keyword is the answer of the question. I write a static and public method for getting a new object and then I can create new objects. Then we can count creating of instances via a static integer field (I call it count in my piece of code).  Finally, I use if statement for creating my instance in static getCagdasSingleton() method.</p>
<p>Blueprint of CagdasSingleton class:</p>
<p>&nbsp;</p>
<p style="text-align: center;"><a href="http://www.cagdastopcu.com/wp-content/uploads/2011/06/CagdasSingleton.jpg"><img class="size-medium wp-image-396 aligncenter" title="CagdasSingleton Blueprint UML Diagram" src="http://www.cagdastopcu.com/wp-content/uploads/2011/06/CagdasSingleton-300x300.jpg" alt="" width="300" height="300" /></a></p>
<p>&nbsp;</p>
<p>and finally simple java code of my singleton class:</p>
<p>&nbsp;</p>

<div class="wp_syntax"><table><tr><td class="line_numbers"><pre>1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
</pre></td><td class="code"><pre class="java" style="font-family:monospace;"><span style="color: #008000; font-style: italic; font-weight: bold;">/**
 *
 */</span>
<span style="color: #000000; font-weight: bold;">package</span> <span style="color: #006699;">com.cagdastopcu.designpatterns</span><span style="color: #339933;">;</span>
&nbsp;
<span style="color: #008000; font-style: italic; font-weight: bold;">/**
 * @author cagdas
 *
 */</span>
<span style="color: #000000; font-weight: bold;">public</span> <span style="color: #000000; font-weight: bold;">class</span> CagdasSingleton <span style="color: #009900;">&#123;</span>
&nbsp;
	<span style="color: #000000; font-weight: bold;">private</span> <span style="color: #000000; font-weight: bold;">static</span> <span style="color: #000066; font-weight: bold;">int</span> count<span style="color: #339933;">;</span>
	<span style="color: #000000; font-weight: bold;">private</span> <span style="color: #000066; font-weight: bold;">int</span> nediryani<span style="color: #339933;">;</span>
	<span style="color: #000000; font-weight: bold;">private</span> <span style="color: #000066; font-weight: bold;">int</span> index<span style="color: #339933;">;</span>
	<span style="color: #000000; font-weight: bold;">private</span> <span style="color: #000000; font-weight: bold;">static</span> CagdasSingleton single<span style="color: #339933;">;</span>
&nbsp;
	<span style="color: #000000; font-weight: bold;">private</span> CagdasSingleton<span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span> <span style="color: #009900;">&#123;</span>
&nbsp;
		index <span style="color: #339933;">=</span> count<span style="color: #339933;">;</span>
	<span style="color: #009900;">&#125;</span>
&nbsp;
	<span style="color: #000000; font-weight: bold;">public</span> <span style="color: #000000; font-weight: bold;">static</span> CagdasSingleton getCagdasSingleton<span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span> <span style="color: #009900;">&#123;</span>
		<span style="color: #666666; font-style: italic;">// if (single == null)</span>
		<span style="color: #000000; font-weight: bold;">if</span> <span style="color: #009900;">&#40;</span>count<span style="color: #339933;">++</span> <span style="color: #339933;">==</span> <span style="color: #cc66cc;">0</span><span style="color: #009900;">&#41;</span> <span style="color: #666666; font-style: italic;">// Is it the first creation?</span>
			single <span style="color: #339933;">=</span> <span style="color: #000000; font-weight: bold;">new</span> CagdasSingleton<span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span> <span style="color: #666666; font-style: italic;">// if yes we create our instance</span>
		<span style="color: #000000; font-weight: bold;">return</span> single<span style="color: #339933;">;</span><span style="color: #666666; font-style: italic;">// if no we use old instance :)</span>
	<span style="color: #009900;">&#125;</span>
&nbsp;
	<span style="color: #000000; font-weight: bold;">protected</span> <span style="color: #000066; font-weight: bold;">void</span> setNediryani<span style="color: #009900;">&#40;</span><span style="color: #000066; font-weight: bold;">int</span> i<span style="color: #009900;">&#41;</span> <span style="color: #009900;">&#123;</span>
		nediryani <span style="color: #339933;">=</span> i<span style="color: #339933;">;</span>
	<span style="color: #009900;">&#125;</span>
&nbsp;
	<span style="color: #000000; font-weight: bold;">protected</span> <span style="color: #000066; font-weight: bold;">int</span> getLan<span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span> <span style="color: #009900;">&#123;</span>
		<span style="color: #000000; font-weight: bold;">return</span> nediryani<span style="color: #339933;">;</span>
	<span style="color: #009900;">&#125;</span>
&nbsp;
	<span style="color: #000000; font-weight: bold;">protected</span> <span style="color: #000066; font-weight: bold;">int</span> getIndex<span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span> <span style="color: #009900;">&#123;</span>
		<span style="color: #000000; font-weight: bold;">return</span> index<span style="color: #339933;">;</span>
	<span style="color: #009900;">&#125;</span>
&nbsp;
<span style="color: #009900;">&#125;</span></pre></td></tr></table></div>

<p>&nbsp;</p>
<p>This is the test class:</p>
<p>&nbsp;</p>

<div class="wp_syntax"><div class="code"><pre class="java" style="font-family:monospace;"><span style="color: #000000; font-weight: bold;">package</span> <span style="color: #006699;">com.cagdastopcu.designpatterns</span><span style="color: #339933;">;</span>
&nbsp;
<span style="color: #000000; font-weight: bold;">public</span> <span style="color: #000000; font-weight: bold;">class</span> CagdasSingletonDriver <span style="color: #009900;">&#123;</span>
&nbsp;
	<span style="color: #000000; font-weight: bold;">public</span> <span style="color: #000000; font-weight: bold;">static</span> <span style="color: #000066; font-weight: bold;">void</span> main<span style="color: #009900;">&#40;</span><span style="color: #003399;">String</span><span style="color: #009900;">&#91;</span><span style="color: #009900;">&#93;</span> args<span style="color: #009900;">&#41;</span> <span style="color: #009900;">&#123;</span>
&nbsp;
		CagdasSingleton mySingleton1 <span style="color: #339933;">=</span> CagdasSingleton.<span style="color: #006633;">getCagdasSingleton</span><span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
&nbsp;
		<span style="color: #003399;">System</span>.<span style="color: #006633;">out</span>.<span style="color: #006633;">println</span><span style="color: #009900;">&#40;</span>mySingleton1.<span style="color: #006633;">getIndex</span><span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
&nbsp;
		CagdasSingleton mySingleton2 <span style="color: #339933;">=</span> CagdasSingleton.<span style="color: #006633;">getCagdasSingleton</span><span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
&nbsp;
		<span style="color: #003399;">System</span>.<span style="color: #006633;">out</span>.<span style="color: #006633;">println</span><span style="color: #009900;">&#40;</span>mySingleton2.<span style="color: #006633;">getIndex</span><span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
&nbsp;
		CagdasSingleton mySingleton3 <span style="color: #339933;">=</span> CagdasSingleton.<span style="color: #006633;">getCagdasSingleton</span><span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
&nbsp;
		<span style="color: #003399;">System</span>.<span style="color: #006633;">out</span>.<span style="color: #006633;">println</span><span style="color: #009900;">&#40;</span>mySingleton3.<span style="color: #006633;">getIndex</span><span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
&nbsp;
		CagdasSingleton mySingleton4 <span style="color: #339933;">=</span> CagdasSingleton.<span style="color: #006633;">getCagdasSingleton</span><span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
&nbsp;
		<span style="color: #003399;">System</span>.<span style="color: #006633;">out</span>.<span style="color: #006633;">println</span><span style="color: #009900;">&#40;</span>mySingleton4.<span style="color: #006633;">getIndex</span><span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
&nbsp;
		<span style="color: #003399;">System</span>.<span style="color: #006633;">out</span>.<span style="color: #006633;">println</span><span style="color: #009900;">&#40;</span>mySingleton1<span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
		<span style="color: #003399;">System</span>.<span style="color: #006633;">out</span>.<span style="color: #006633;">println</span><span style="color: #009900;">&#40;</span>mySingleton2<span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
		<span style="color: #003399;">System</span>.<span style="color: #006633;">out</span>.<span style="color: #006633;">println</span><span style="color: #009900;">&#40;</span>mySingleton3<span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
		<span style="color: #003399;">System</span>.<span style="color: #006633;">out</span>.<span style="color: #006633;">println</span><span style="color: #009900;">&#40;</span>mySingleton4<span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
&nbsp;
	<span style="color: #009900;">&#125;</span>
&nbsp;
<span style="color: #009900;">&#125;</span></pre></div></div>

<p>&nbsp;</p>
<p>Output:</p>
<p>&nbsp;</p>

<div class="wp-terminal">cagdas@zanpakutou:$ <br/><br/>1<br/>1<br/>1<br/>1<br/>com.cagdastopcu.designpatterns.CagdasSingleton@30c221<br/>com.cagdastopcu.designpatterns.CagdasSingleton@30c221<br/>com.cagdastopcu.designpatterns.CagdasSingleton@30c221<br/>com.cagdastopcu.designpatterns.CagdasSingleton@30c221<br/></div>

<p>&nbsp;</p>
<p>I tested my singleton design pattern with print reference fields. They point to same heap adress.</p>
<div class="shr-publisher-382"></div><!-- Start Shareaholic LikeButtonSetBottom --><!-- End Shareaholic LikeButtonSetBottom --><div style="float: right; margin-left: 10px;"><a href="http://twitter.com/share?url=http://www.cagdastopcu.com/my-first-design-pattern-in-java-singleton.html&via=cagdastopcucom&text=My First Design Pattern in Java : Singleton&related=cagdastopcu.com:official twitter of cagdastopcu.com&lang=en&count=horizontal" class="twitter-share-button">Tweet</a><script type="text/javascript" src="http://platform.twitter.com/widgets.js"></script></div>]]></content:encoded>
			<wfw:commentRss>http://www.cagdastopcu.com/my-first-design-pattern-in-java-singleton.html/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Android Geliştirme Araçlarının Kurulumu</title>
		<link>http://www.cagdastopcu.com/android-gelistirme-araclarinin-kurulumu.html</link>
		<comments>http://www.cagdastopcu.com/android-gelistirme-araclarinin-kurulumu.html#comments</comments>
		<pubDate>Fri, 20 May 2011 06:43:21 +0000</pubDate>
		<dc:creator>cagdas</dc:creator>
				<category><![CDATA[Kategorilenmemiş]]></category>
		<category><![CDATA[adt]]></category>
		<category><![CDATA[android]]></category>
		<category><![CDATA[development]]></category>
		<category><![CDATA[Eclipse]]></category>
		<category><![CDATA[GNU]]></category>
		<category><![CDATA[programlama]]></category>
		<category><![CDATA[sdk]]></category>
		<category><![CDATA[ubuntu]]></category>

		<guid isPermaLink="false">http://www.cagdastopcu.com/?p=373</guid>
		<description><![CDATA[Uzun zamandır yazmamışım. Unutmamak adına kendime hazırladığım dökümanı paylaşmak istedim. Belki çoğu kişi kolayca halletmiştir ancak kurarken karşılaşabileceğimiz sorunları da içerdiğinden gerekli olduğunu düşündüm. Öncelikle eclipse&#8217;imiz kurulu olmalı ve javamız sun&#8217;ın olmalı. İlk olarak android sdk şu adresten indirelim: &#160; http://developer.android.com/sdk/index.html &#160; ben ubuntuda olduğum için linux&#8217;u seçtim. Kullanıcı klasörümüze açalım bu android sdk dosyasını: &#8230; </p><p><a class="more-link block-button" href="http://www.cagdastopcu.com/android-gelistirme-araclarinin-kurulumu.html">Continue reading &#187;</a>]]></description>
			<content:encoded><![CDATA[<!-- Start Shareaholic LikeButtonSetTop --><!-- End Shareaholic LikeButtonSetTop --><p><a href="http://www.cagdastopcu.com/wp-content/uploads/2011/05/honeycombdroid.png"><img class="alignleft size-full wp-image-376" title="honeycombdroid 3.0 Android" src="http://www.cagdastopcu.com/wp-content/uploads/2011/05/honeycombdroid.png" alt="" width="300" height="240" /></a></p>
<p>Uzun zamandır yazmamışım. Unutmamak adına kendime hazırladığım dökümanı paylaşmak istedim. Belki çoğu kişi kolayca halletmiştir ancak kurarken karşılaşabileceğimiz sorunları da içerdiğinden gerekli olduğunu düşündüm.</p>
<p><!-- 		@page { margin: 0.79in } 		P { margin-bottom: 0.08in } 		H6 { margin-bottom: 0.08in } 		H6.cjk { font-family: "DejaVu Sans" } 		H6.ctl { font-family: "DejaVu Sans" } 		A:link { so-language: zxx } -->Öncelikle eclipse&#8217;imiz kurulu olmalı ve javamız sun&#8217;ın olmalı. İlk olarak android sdk şu adresten indirelim:</p>
<p>&nbsp;</p>
<p><span style="color: #000080;"><span style="text-decoration: underline;"><a href="http://developer.android.com/sdk/index.html">http://developer.android.com/sdk/index.html</a></span></span></p>
<p>&nbsp;</p>
<p>ben ubuntuda olduğum için linux&#8217;u seçtim. Kullanıcı klasörümüze açalım bu android sdk dosyasını:</p>
<p>&nbsp;</p>
<h6><em><span style="color: #383838;"><span style="font-family: Arial, Helvetica, sans-serif;"><span style="font-size: x-small;">tar xvfz android-sdk_r11-linux_86.tgz</span></span></span></em></h6>
<h6><em><span style="color: #383838;"><span style="font-family: Arial, Helvetica, sans-serif;"><span style="font-size: x-small;">rm android-sdk_r11-linux_86.tgz</span></span></span></em></h6>
<p>&nbsp;</p>
<p>Burada ilk olarak oyunlar oynayacağımız android emulatörünü oluşturacağız fakat bazı güncellemeler yapmak lazım. Android SDK&#8217;sını çalıştırmak için şunları yapalım:</p>
<p>&nbsp;</p>
<p>cagdas@zanpakutou:~$ cd android-sdk-linux_x86/</p>
<p>&nbsp;</p>
<p>cagdas@zanpakutou:~/android-sdk-linux_x86$ cd tools/</p>
<p>&nbsp;</p>
<p>cagdas@zanpakutou:~/android-sdk-linux_x86/tools$ ./android</p>
<p>&nbsp;</p>
<p>&nbsp;</p>
<p style="text-align: center;">yani o dosyanın içindeki tools klasörüne geçip orada ./android&#8217;i çalıştırdık. Ben androidimi oluşturduğum için şöyle bir ekran geldi:</p>
<p style="text-align: center;">&nbsp;</p>
<p style="text-align: center;"><a href="http://www.cagdastopcu.com/wp-content/uploads/2011/05/sdk.jpg"><img class="aligncenter size-medium wp-image-374" title="android sdk ve adt yöneticisi" src="http://www.cagdastopcu.com/wp-content/uploads/2011/05/sdk-300x174.jpg" alt="" width="300" height="174" /></a></p>
<p><!-- 		@page { margin: 0.79in } 		P { margin-bottom: 0.08in } --></p>
<p>Burada ilk önce available packages kısmından hangi android sdk&#8217;sına ihtiyacımız varsa onu indiriyoruz başta. Eğer https sıkıntı çıkarıyorsa settings bölümünden force https diye bir sekme var  onu tiklememiz lazım.</p>
<p>&nbsp;</p>
<p>Sonra available packages sekmesinden istediğimizi seçiyoruz. Third party dediği kısım telefonunuz samsungsa ona özel bir arayüz yayınlamış samsung ve oradan bunu indirebiliyoruz.</p>
<p>&nbsp;</p>
<p>Gerekli olan arayüzü indirdikten sonra virtual devices sekmesinden New diyoruz. Burada yazılanlar gibi boşlukları dolduruyoruz. Ancak platformu Android 1.5 ve yukarısında hangi platformda çalışmak istersek onu seçebiliriz.</p>
<p>&nbsp;</p>
<p><a href="http://www.cagdastopcu.com/wp-content/uploads/2011/05/olusturma.png"><img class="aligncenter size-medium wp-image-375" title="Android SDK Emulatör oluşturulması" src="http://www.cagdastopcu.com/wp-content/uploads/2011/05/olusturma-194x300.png" alt="" width="194" height="300" /></a></p>
<p>&nbsp;</p>
<p><!-- 		@page { margin: 0.79in } 		P { margin-bottom: 0.08in } 		A:link { so-language: zxx } --><span style="font-family: Arial, sans-serif;"><span style="font-size: small;">Bu tamamsa sıra geldi eclipse pluginini kurmaya. Android için olan eclipse plugin&#8217;inin adı ADT. Onu eclipse&#8217;in içinden kuruyoruz.</span></span></p>
<p>&nbsp;</p>
<p><span style="font-family: Arial, sans-serif;"><span style="font-size: small;">Eclipse&#8217;de help&gt;install new software seçiyoruz ve karşımıza gelen kısma aşağıdaki linki kopyalıyoruz:</span></span></p>
<p>&nbsp;</p>
<p><span style="color: #000080;"><span style="text-decoration: underline;"><span style="font-family: Arial, sans-serif;"><span style="font-size: small;"></span></span></span></span></p>
<p>&nbsp;</p>
<p><span style="color: #383838;"><span style="font-family: Arial, sans-serif;"><span style="font-size: small;">Add dedikten sonra aşağıdaki developer tools&#8217;u kuruyoruz. </span></span></span></p>
<p>&nbsp;</p>
<p><span style="color: #383838;"><span style="font-family: Arial, sans-serif;"><span style="font-size: small;">Eclipse restart isteyecektir. Restart&#8217;tan sonra Eclipse&#8217;deki Window menüsünden Android SDK and AVD manager&#8217;e gelip daha önceden oluşturduğumuz android emülatörünü start&#8217;a basarak çalıştırıyoruz. Burada önemli olan boyutu. Starta bastıktan sonra scale display to real size&#8217;ı seçip screen size (n)= 6 monitor dip 119 yapıyoruz. Neden çalıştırdık ki daha kod yok ortada diyebilirsiniz. Android emülatörü çok yavaş açıldığından bir dafa başta görünüm boyutunu da ayarlayarak açıyoruz ve yazdığımız kodları proje sekmesinde üzerlerine sağ tıklayıp run&#8217;a basarak o çalıştırıyoruz. Böylece her defasında o açılışşı beklememiş oluyoruz.</span></span></span></p>
<p>&nbsp;</p>
<p><span style="color: #383838;"><span style="font-family: Arial, sans-serif;"><span style="font-size: small;">Şimdi new android projectle direkt denemenizi yapabilirsiniz. Hello World uygulaması içinde hazır olarak var zaten.</span></span></span></p>
<p>&nbsp;</p>
<div class="shr-publisher-373"></div><!-- Start Shareaholic LikeButtonSetBottom --><!-- End Shareaholic LikeButtonSetBottom --><div style="float: right; margin-left: 10px;"><a href="http://twitter.com/share?url=http://www.cagdastopcu.com/android-gelistirme-araclarinin-kurulumu.html&via=cagdastopcucom&text=Android Geliştirme Araçlarının Kurulumu&related=cagdastopcu.com:official twitter of cagdastopcu.com&lang=en&count=horizontal" class="twitter-share-button">Tweet</a><script type="text/javascript" src="http://platform.twitter.com/widgets.js"></script></div>]]></content:encoded>
			<wfw:commentRss>http://www.cagdastopcu.com/android-gelistirme-araclarinin-kurulumu.html/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Java BlackBerry Eclipse Plugin</title>
		<link>http://www.cagdastopcu.com/java-blackberry-eclipse-plugin.html</link>
		<comments>http://www.cagdastopcu.com/java-blackberry-eclipse-plugin.html#comments</comments>
		<pubDate>Wed, 20 Apr 2011 22:14:25 +0000</pubDate>
		<dc:creator>cagdas</dc:creator>
				<category><![CDATA[programlama]]></category>
		<category><![CDATA[BlackBerry]]></category>
		<category><![CDATA[download]]></category>
		<category><![CDATA[Eclipse]]></category>
		<category><![CDATA[indir]]></category>
		<category><![CDATA[java]]></category>
		<category><![CDATA[Plugin]]></category>
		<category><![CDATA[yükle]]></category>

		<guid isPermaLink="false">http://www.cagdastopcu.com/?p=365</guid>
		<description><![CDATA[Kendi sitesinden indirmek sürekli donmalar olduğu için biraz sıkıntılıydı. İkinci bir link olmasını istedim. Java BlackBerry Eclipse Plugin 1.3 versiyonunu şu linkten indirebilirsiniz: Java BlackBerry Eclipse Plugin 1.3 Maalesef linux versiyonu olmadığından BlackBerry için ubuntuda kod yazmak sıkıntılı. Virtual Machine üzerinden bu tarz atraksiyonlara girilebilir ancak. Gereksinimleri: Eclipse 3.6 Helios 32-bit Windows® XP, Windows Vista® &#8230; </p><p><a class="more-link block-button" href="http://www.cagdastopcu.com/java-blackberry-eclipse-plugin.html">Continue reading &#187;</a>]]></description>
			<content:encoded><![CDATA[<!-- Start Shareaholic LikeButtonSetTop --><!-- End Shareaholic LikeButtonSetTop --><p><a href="http://www.cagdastopcu.com/wp-content/uploads/2011/04/blackberryicon.jpg"><img class="alignleft size-medium wp-image-366" title="blackberryicon" src="http://www.cagdastopcu.com/wp-content/uploads/2011/04/blackberryicon-300x300.jpg" alt="" width="180" height="180" /></a></p>
<p>Kendi sitesinden indirmek sürekli donmalar olduğu için biraz sıkıntılıydı. İkinci bir link olmasını istedim.</p>
<p>Java BlackBerry Eclipse Plugin 1.3 versiyonunu şu linkten indirebilirsiniz:</p>
<p><a title="Java BlackBerry Eclipse Plugin 1.3 indir download" href="http://hotfile.com/dl/115225891/c37be37/BlackBerry_JDE_PluginFull_1.3.0.201102031007-19.exe.html">Java BlackBerry Eclipse Plugin 1.3</a></p>
<p>Maalesef linux versiyonu olmadığından BlackBerry için ubuntuda kod yazmak sıkıntılı. Virtual Machine üzerinden bu tarz atraksiyonlara girilebilir ancak.</p>
<p>Gereksinimleri:</p>
<ul>
<li>Eclipse 3.6 Helios</li>
<li>32-bit Windows® XP, Windows Vista® veya Windows 7 (<strong>Note:</strong> 64-bit versionlar 32-bit Java® ve Eclipse&#8217;e ihtiyaç duyar)</li>
<li>Java SE Development Kit (JDK) 6, update 10 veya daha üstü</li>
</ul>
<p>Programlama manueli:</p>
<p><a href="http://www.blackberry.com/developers/docs/6.0.0api/">http://www.blackberry.com/developers/docs/6.0.0api/</a></p>
<div class="shr-publisher-365"></div><!-- Start Shareaholic LikeButtonSetBottom --><!-- End Shareaholic LikeButtonSetBottom --><div style="float: right; margin-left: 10px;"><a href="http://twitter.com/share?url=http://www.cagdastopcu.com/java-blackberry-eclipse-plugin.html&via=cagdastopcucom&text=Java BlackBerry Eclipse Plugin&related=cagdastopcu.com:official twitter of cagdastopcu.com&lang=en&count=horizontal" class="twitter-share-button">Tweet</a><script type="text/javascript" src="http://platform.twitter.com/widgets.js"></script></div>]]></content:encoded>
			<wfw:commentRss>http://www.cagdastopcu.com/java-blackberry-eclipse-plugin.html/feed</wfw:commentRss>
		<slash:comments>9</slash:comments>
		</item>
		<item>
		<title>Android XML Uygulaması</title>
		<link>http://www.cagdastopcu.com/android-xml-uygulamasi.html</link>
		<comments>http://www.cagdastopcu.com/android-xml-uygulamasi.html#comments</comments>
		<pubDate>Sun, 03 Apr 2011 15:04:24 +0000</pubDate>
		<dc:creator>cagdas</dc:creator>
				<category><![CDATA[GNU]]></category>
		<category><![CDATA[programlama]]></category>
		<category><![CDATA[android]]></category>
		<category><![CDATA[izleme]]></category>
		<category><![CDATA[java]]></category>
		<category><![CDATA[parse]]></category>
		<category><![CDATA[parsing]]></category>
		<category><![CDATA[rss]]></category>
		<category><![CDATA[xml]]></category>

		<guid isPermaLink="false">http://www.cagdastopcu.com/?p=357</guid>
		<description><![CDATA[Android işletim sistemi üzerine çalışırken working with xml on android makalesine denk geldim. XML parsing üzerine yazılmış çok güzel bir yazı. Buradaki proje dosyasını indirip bazı geliştirmeler yaparak kısa sürede internetten xml dosyasını çekip bunun üzerinde işlemlerinizi yapabilirsiniz. XML parsing internet sitelerinde kullanılabileceği gibi bir endüstriyel otomasyon sistemlerinden verilerin anlık olarak android telefon üzerinden izlenmesini &#8230; </p><p><a class="more-link block-button" href="http://www.cagdastopcu.com/android-xml-uygulamasi.html">Continue reading &#187;</a>]]></description>
			<content:encoded><![CDATA[<!-- Start Shareaholic LikeButtonSetTop --><!-- End Shareaholic LikeButtonSetTop --><p>Android işletim sistemi üzerine çalışırken <a href="http://www.ibm.com/developerworks/opensource/library/x-android/index.html?ca=dgr-lnxw82Android-XML&amp;S_TACT=105AGX59&amp;S_CMP=grlnxw82">working with xml on android</a> makalesine denk geldim. XML parsing üzerine yazılmış çok güzel bir yazı. Buradaki proje dosyasını indirip bazı geliştirmeler yaparak kısa sürede internetten xml dosyasını çekip bunun üzerinde işlemlerinizi yapabilirsiniz. XML parsing internet sitelerinde kullanılabileceği gibi bir endüstriyel otomasyon sistemlerinden verilerin anlık olarak android telefon üzerinden izlenmesini de mümkün hale getiriyor. Yani uygulama alanı sınırsız bir konu =)</p>
<p>Projede FeedParserFactory.java ve string.xml dosyalarını değiştirerek hızlıca çalışıp çalışmadığını kontrol edebilirsiniz. Kendi sitemin /feed.xml dosyasını çektim ve aşağıdaki rss beslemesini elde ettim. Ayrıca konu başlıklarına tıklayarak sitenin kendisine bağlanmak da mümkün.</p>
<p><a href="http://www.ibm.com/developerworks/apps/download/index.jsp?contentid=398121&amp;filename=AndroidXml.zip&amp;method=http&amp;locale=worldwide">Android XML parsing apisini</a> indirip sizde xml işlemlerine başlayabilirsiniz.</p>
<p><a href="http://www.cagdastopcu.com/wp-content/uploads/2011/04/xmlonandroid.png"><img class="aligncenter size-medium wp-image-358" title="xmlonandroid" src="http://www.cagdastopcu.com/wp-content/uploads/2011/04/xmlonandroid-260x300.png" alt="" width="260" height="300" /></a></p>
<p>Basit bir şekilde renk ve tema değişikliğiyle biraz şeffaf, esc tuşuyla ana ekrana hızlıca geçilen daha kullanışlı bir hale getirebiliriz.</p>
<p>AndroidMainfest.xml dosyasında şu değişikliği yapmak lazım temayı değişirmek için:</p>
<blockquote><p>&lt;activity android:name=&#8221;.MessageList&#8221;<br />
android:label=&#8221;@string/app_name&#8221;<br />
android:theme=&#8221;@android:style/Theme.Dialog&#8221;&gt;</p></blockquote>
<p>Sonuç çok güzel <img src='http://www.cagdastopcu.com/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> </p>
<p><a href="http://www.cagdastopcu.com/wp-content/uploads/2011/04/androidxml1.png"><img class="aligncenter size-medium wp-image-362" title="androidxml1" src="http://www.cagdastopcu.com/wp-content/uploads/2011/04/androidxml1-184x300.png" alt="" width="184" height="300" /></a></p>
<div class="shr-publisher-357"></div><!-- Start Shareaholic LikeButtonSetBottom --><!-- End Shareaholic LikeButtonSetBottom --><div style="float: right; margin-left: 10px;"><a href="http://twitter.com/share?url=http://www.cagdastopcu.com/android-xml-uygulamasi.html&via=cagdastopcucom&text=Android XML Uygulaması&related=cagdastopcu.com:official twitter of cagdastopcu.com&lang=en&count=horizontal" class="twitter-share-button">Tweet</a><script type="text/javascript" src="http://platform.twitter.com/widgets.js"></script></div>]]></content:encoded>
			<wfw:commentRss>http://www.cagdastopcu.com/android-xml-uygulamasi.html/feed</wfw:commentRss>
		<slash:comments>18</slash:comments>
		</item>
		<item>
		<title>İlk Android Programım</title>
		<link>http://www.cagdastopcu.com/ilk-android-programi.html</link>
		<comments>http://www.cagdastopcu.com/ilk-android-programi.html#comments</comments>
		<pubDate>Thu, 24 Mar 2011 22:51:35 +0000</pubDate>
		<dc:creator>cagdas</dc:creator>
				<category><![CDATA[GNU]]></category>
		<category><![CDATA[programlama]]></category>
		<category><![CDATA[android]]></category>
		<category><![CDATA[google]]></category>
		<category><![CDATA[java]]></category>
		<category><![CDATA[xml]]></category>
		<category><![CDATA[yazılım]]></category>

		<guid isPermaLink="false">http://www.cagdastopcu.com/?p=348</guid>
		<description><![CDATA[Sonunda ilk kodumu çalıştırmayı başardım. Google Android SDK ile gelen emulatör 15 dakikada açılıyor ve programlarımı çalıştıramıyordum. Biraz araştırınca bu sorunun herkeste olduğunu gördüm. Ardından bilgisayarımı yedekleyip formatı çaktım Daha hızlandı mı dersiniz? Eh 15 dakika olmasa da 5 dakikada açılıyor artık android oyuncağım. İşin püf noktası emulatörü sadece bir defa açıp uygulamaları modifiye ettikçe &#8230; </p><p><a class="more-link block-button" href="http://www.cagdastopcu.com/ilk-android-programi.html">Continue reading &#187;</a>]]></description>
			<content:encoded><![CDATA[<!-- Start Shareaholic LikeButtonSetTop --><!-- End Shareaholic LikeButtonSetTop --><p><a href="http://www.cagdastopcu.com/wp-content/uploads/2011/03/ilkandroid.png"><img class="aligncenter size-medium wp-image-349" title="ilkandroid" src="http://www.cagdastopcu.com/wp-content/uploads/2011/03/ilkandroid-300x278.png" alt="Android İlk Projem" width="300" height="278" /></a></p>
<p>Sonunda ilk kodumu çalıştırmayı başardım. Google Android SDK ile gelen emulatör 15 dakikada açılıyor ve programlarımı çalıştıramıyordum. Biraz araştırınca bu sorunun herkeste olduğunu gördüm. Ardından bilgisayarımı yedekleyip formatı çaktım <img src='http://www.cagdastopcu.com/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> </p>
<p>Daha hızlandı mı dersiniz? Eh 15 dakika olmasa da 5 dakikada açılıyor artık android oyuncağım. İşin püf noktası emulatörü sadece bir defa açıp uygulamaları modifiye ettikçe onda uygulamakmış. Eclipse&#8217;e o kadar da hakim olmamamdan kaynaklanan bir durum aslında bu. Projenin üzerine sağ tıklayıp run as android application&#8217;u tıklamamız yeterliymiş <img src='http://www.cagdastopcu.com/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> ) top komutuyla aldığım çıktıda cpu %23 bellek de %16 çıktı. Bu da benim eski bilgisayarım için yeterli bir değer <img src='http://www.cagdastopcu.com/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> )</p>
<p>cagdas    20   0  403m 158m 7640 R   23 16.0   5:44.53 emulator</p>
<p>SDK&#8217;nın kurulumunda kullandığım belgeler:</p>
<p>http://www.helloandroid.com/tutorials/how-set-eclipse-android-sdk-ubuntu-linux-904910-updated</p>
<p>Hello World Programı:</p>
<p>http://developer.android.com/resources/tutorials/hello-world.html</p>
<p>Android Emulatörün Eclipse ile kullanımını anlatan güzel bir video:</p>
<p><object width="590" height="357"><param name="movie" value="http://www.youtube.com/v/SVZ1P35xgNQ?version=3"></param><param name="allowFullScreen" value="true"></param><param name="allowscriptaccess" value="always"></param><embed src="http://www.youtube.com/v/SVZ1P35xgNQ?version=3" type="application/x-shockwave-flash" width="590" height="357" allowscriptaccess="always" allowfullscreen="true"></embed></object></p>
<p>&nbsp;</p>
<p>Devamında XML öğrenmem gerektiğini farkettim. XML ile şöyle bir arayüzü yapmamız bir iki dakikalık iş <img src='http://www.cagdastopcu.com/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> )</p>
<p><a href="http://www.cagdastopcu.com/wp-content/uploads/2011/03/deneme1.png"><img class="aligncenter size-medium wp-image-353" title="deneme1" src="http://www.cagdastopcu.com/wp-content/uploads/2011/03/deneme1-185x300.png" alt="android gui arayüz tasarımı xml" width="185" height="300" /></a></p>
<div class="shr-publisher-348"></div><!-- Start Shareaholic LikeButtonSetBottom --><!-- End Shareaholic LikeButtonSetBottom --><div style="float: right; margin-left: 10px;"><a href="http://twitter.com/share?url=http://www.cagdastopcu.com/ilk-android-programi.html&via=cagdastopcucom&text=İlk Android Programım&related=cagdastopcu.com:official twitter of cagdastopcu.com&lang=en&count=horizontal" class="twitter-share-button">Tweet</a><script type="text/javascript" src="http://platform.twitter.com/widgets.js"></script></div>]]></content:encoded>
			<wfw:commentRss>http://www.cagdastopcu.com/ilk-android-programi.html/feed</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>Google Android SDK Tehlikelidir Yasaktır</title>
		<link>http://www.cagdastopcu.com/google-android-sdk-tehlikelidir-yasaktir.html</link>
		<comments>http://www.cagdastopcu.com/google-android-sdk-tehlikelidir-yasaktir.html#comments</comments>
		<pubDate>Tue, 22 Mar 2011 21:20:15 +0000</pubDate>
		<dc:creator>cagdas</dc:creator>
				<category><![CDATA[GNU]]></category>
		<category><![CDATA[programlama]]></category>

		<guid isPermaLink="false">http://www.cagdastopcu.com/?p=344</guid>
		<description><![CDATA[Saçmalık ancak Android&#8217;in sitesi birçok google hizmeti gibi yasaklanmış. Android için yazılım geliştirmede kullanılan SDK&#8217;yı ubuntuda kurmak istiyorsanız önce haysiyetsiz beyinciklerce yasaklanmış olan google sitelerini açıyoruz. Bunun için komut satırına sudo gedit /etc/hosts yazın ve çıkan dosyaya aşağıdakileri kopyalayıp kaydedin. Böylece rahatça sdk&#8217;nızı indirip programlamaya başlayabilirsiniz. 72.14.221.100 maps.google.com 72.14.221.100 earthserver.google.com 72.14.221.100 maps.gstatic.com 72.14.221.100 picasaweb.google.com 74.125.43.103 &#8230; </p><p><a class="more-link block-button" href="http://www.cagdastopcu.com/google-android-sdk-tehlikelidir-yasaktir.html">Continue reading &#187;</a>]]></description>
			<content:encoded><![CDATA[<!-- Start Shareaholic LikeButtonSetTop --><!-- End Shareaholic LikeButtonSetTop --><p>Saçmalık ancak Android&#8217;in sitesi birçok google hizmeti gibi yasaklanmış. Android için yazılım geliştirmede kullanılan SDK&#8217;yı ubuntuda kurmak istiyorsanız önce haysiyetsiz beyinciklerce yasaklanmış olan google sitelerini açıyoruz. Bunun için komut satırına</p>
<p>sudo gedit /etc/hosts</p>
<p>yazın ve çıkan dosyaya aşağıdakileri kopyalayıp kaydedin. Böylece rahatça sdk&#8217;nızı indirip programlamaya başlayabilirsiniz.</p>
<p><span id="more-344"></span></p>
<pre>72.14.221.100 maps.google.com
72.14.221.100 earthserver.google.com
72.14.221.100 maps.gstatic.com
72.14.221.100 picasaweb.google.com
74.125.43.103 docs.google.com
74.125.43.103 translate.google.com
74.125.43.103 code.google.com
74.125.43.103 pages.google.com
74.125.43.103 video.google.com
74.125.43.103 translate.google.com.tr
74.125.43.103 docs.google.com
74.125.43.103 sites.google.com
74.125.43.103 books.google.com
74.125.43.103 chrome.google.com
74.125.43.103 sketchup.google.com
74.125.43.103 froogle.google.com
74.125.43.103 labs.google.com
74.125.43.103 mars.google.com
74.125.43.103 moon.google.com
74.125.43.103 notebook.google.com
74.125.43.103 toolbar.google.com
74.125.43.103 browsersync.google.com
74.125.43.103 catalog.google.com
74.125.43.103 codesearch.google.com
74.125.43.103 dir.google.com
74.125.43.103 earth.google.com
74.125.43.103 groups.google.com.tr
74.125.43.103 shopping.google.com
74.125.43.103 sky.google.com
74.125.43.103 support.google.com
74.125.43.103 tools.google.com
74.125.43.103 wap.google.com
74.125.43.103 answers.google.com
74.125.43.103 google-analystics.com
74.125.43.103 clients2.google.com
74.125.43.103 https://dl-ssl.google.com/android/repository/repository.xml
74.125.43.103 youtube.com
74.125.43.103 www.youtube.com
74.125.43.103 docs.google.com
209.85.229.99 youtube.com
209.85.229.99 www.youtube.com
209.85.227.101 translate.google.com
209.85.227.105 maps.google.com
209.85.227.101 code.google.com
209.85.227.113 pages.google.com
209.85.227.100 video.google.com
209.85.227.138 docs.google.com
209.85.227.101 sites.google.com
209.85.227.100 books.google.com
209.85.227.101 chrome.google.com
209.85.227.113 sketchup.google.com
209.85.227.102 froogle.google.com
209.85.227.102 labs.google.com
209.85.227.102 mars.google.com
209.85.227.139 moon.google.com
209.85.227.113 notebook.google.com
209.85.227.101 toolbar.google.com
209.85.227.102 catalog.google.com
209.85.227.113 codesearch.google.com
209.85.227.113 dir.google.com
209.85.227.138 earth.google.com
209.85.227.139 groups.google.com
209.85.227.100 groups.google.com.tr
209.85.227.139 shopping.google.com
209.85.227.138 sky.google.com
209.85.227.139 support.google.com
209.85.227.139 tools.google.com
209.85.227.102 wap.google.com
209.85.227.100 answers.google.com
74.125.43.103 docs.google.com
74.125.43.103 translate.google.com
74.125.43.103 code.google.com
74.125.43.103 pages.google.com
74.125.43.103 video.google.com
74.125.43.103 translate.google.com.tr
74.125.43.103 docs.google.com
74.125.43.103 sites.google.com
74.125.43.103 books.google.com
74.125.43.103 chrome.google.com
74.125.43.103 sketchup.google.com
74.125.43.103 froogle.google.com
74.125.43.103 labs.google.com
74.125.43.103 mars.google.com
74.125.43.103 moon.google.com
74.125.43.103 notebook.google.com
74.125.43.103 toolbar.google.com
74.125.43.103 browsersync.google.com
74.125.43.103 catalog.google.com
74.125.43.103 codesearch.google.com
74.125.43.103 dir.google.com
74.125.43.103 earth.google.com
74.125.43.103 groups.google.com.tr
74.125.43.103 shopping.google.com
74.125.43.103 sky.google.com
74.125.43.103 support.google.com
74.125.43.103 tools.google.com
74.125.43.103 wap.google.com
74.125.43.103 answers.google.com
74.125.43.103 google-analystics.com
74.125.43.103 clients2.google.com
72.14.213.136 khm0.google.com
72.14.213.91 mt0.google.com
72.14.213.136 khm1.google.com
72.14.213.136 mt1.google.com
72.14.213.93 lh4.ggpht.com
74.125.53.139 gg.google.com
72.14.213.136 khm0.google.com
72.14.213.91 mt0.google.com
72.14.213.136 khm1.google.com
72.14.213.136 mt1.google.com
72.14.213.93 lh4.ggpht.com
74.125.53.139 gg.google.com
72.14.213.93 kh.google.com
72.14.213.103 maps.google.com
72.14.213.113 auth.keyhole.com
74.125.43.105 earth.google.com
209.85.229.99 www.youtube.com
209.85.229.99 youtube.com
209.85.229.99 www3.l.google.com
209.85.229.99 youtube-ui.l.google.com
209.85.229.99 ns1.google.com
209.85.229.99 ns2.google.com
209.85.229.99 ns3.google.com
209.85.229.99 ns4.google.com
209.85.229.99 uk.youtube.com
209.85.229.99 de.youtube.com
209.85.229.99 translate.google.com
209.85.229.99 suggestqueries.google.com
209.85.229.99 earth.google.com
209.85.229.99 books.google.com
209.85.229.99 code.google.com
209.85.229.99 code.l.google.com
209.85.229.99 dl.google.com
209.85.227.106 dl-ssl.google.com
74.125.93.121 developer.android.com</pre>
<p>&nbsp;</p>
<div class="shr-publisher-344"></div><!-- Start Shareaholic LikeButtonSetBottom --><!-- End Shareaholic LikeButtonSetBottom --><div style="float: right; margin-left: 10px;"><a href="http://twitter.com/share?url=http://www.cagdastopcu.com/google-android-sdk-tehlikelidir-yasaktir.html&via=cagdastopcucom&text=Google Android SDK Tehlikelidir Yasaktır&related=cagdastopcu.com:official twitter of cagdastopcu.com&lang=en&count=horizontal" class="twitter-share-button">Tweet</a><script type="text/javascript" src="http://platform.twitter.com/widgets.js"></script></div>]]></content:encoded>
			<wfw:commentRss>http://www.cagdastopcu.com/google-android-sdk-tehlikelidir-yasaktir.html/feed</wfw:commentRss>
		<slash:comments>3</slash:comments>
		</item>
		<item>
		<title>Ücretsiz Arm Cortex Geliştirme Kiti</title>
		<link>http://www.cagdastopcu.com/ucretsiz-arm-cortex-gelistirme-kiti.html</link>
		<comments>http://www.cagdastopcu.com/ucretsiz-arm-cortex-gelistirme-kiti.html#comments</comments>
		<pubDate>Tue, 15 Mar 2011 10:30:38 +0000</pubDate>
		<dc:creator>cagdas</dc:creator>
				<category><![CDATA[elektronik]]></category>
		<category><![CDATA[GNU]]></category>
		<category><![CDATA[Güç Elektroniği]]></category>
		<category><![CDATA[programlama]]></category>
		<category><![CDATA[Robotik]]></category>

		<guid isPermaLink="false">http://www.cagdastopcu.com/?p=340</guid>
		<description><![CDATA[Geçenlerde ücretsiz arm boardları var mı diye araştırırken hackaday&#8217;de karşıma ilginç bir ilan çıktı. İlana göre kendi 8-16 bitlik mikrodenetleyicimizi parçalayıp video veya fotoğrafını yollarsak Arm Cortex M0 işlemcili NXP firmasının ürettiği LPCXpresso kitlerinden yollayacaklardı. NXP philips firmasının elektronik eleman üreten firması bu arada. Türkiye&#8217;ye yollamazlar ama şansımı deneyeyim diye yolladım ben de kendi 16f628a &#8230; </p><p><a class="more-link block-button" href="http://www.cagdastopcu.com/ucretsiz-arm-cortex-gelistirme-kiti.html">Continue reading &#187;</a>]]></description>
			<content:encoded><![CDATA[<!-- Start Shareaholic LikeButtonSetTop --><!-- End Shareaholic LikeButtonSetTop --><p><a href="http://www.cagdastopcu.com/wp-content/uploads/2011/03/board.jpg"><img class="aligncenter size-full wp-image-341" title="LPCXpresso board" src="http://www.cagdastopcu.com/wp-content/uploads/2011/03/board.jpg" alt="" width="480" height="436" /></a></p>
<p>Geçenlerde ücretsiz arm boardları var mı diye araştırırken <a href="http://hackaday.com/2011/02/19/free-as-in-free-beer-arm-kit/">hackaday&#8217;de</a> karşıma ilginç bir ilan çıktı. İlana göre kendi 8-16 bitlik mikrodenetleyicimizi parçalayıp video veya fotoğrafını yollarsak Arm Cortex M0 işlemcili NXP firmasının ürettiği <a href="http://ics.nxp.com/lpcxpresso/">LPCXpresso</a> kitlerinden yollayacaklardı. NXP philips firmasının elektronik eleman üreten firması bu arada.</p>
<p>Türkiye&#8217;ye yollamazlar ama şansımı deneyeyim diye yolladım ben de kendi 16f628a içeren fotoğrafımı ve vola şöyle bir mail döndüler dün gece:</p>
<p>Dear contributor,</p>
<p>Your video has been approved! We will send you a free LPCXpresso as soon as possible.</p>
<p>Kind regards,<br />
NXP Semiconductors</p>
<p>Forumlardan araştırdığım kadarıyla 20 gün içerisinde yollayacaklar kitimi. Hackaday.com sitesinde yüzlerce yorum yapılmış bu yarışmaya. Vandallıkla suçlayanlar bile olmuş ancak 2011 yılında hala 8-bitlik işlemcileri bize reva gören karaköy esnafının bu çılgınlıkta hiç mi suçu yok ha?  Karaköy pasajında her gidişimizde 50 liralık alışveriş yaptığımız bahadır abinin, bahadır abinin toptancısının hiç mi suçu yok sorarım sizlere <img src='http://www.cagdastopcu.com/wp-includes/images/smilies/icon_razz.gif' alt=':P' class='wp-smiley' />  8 bitlik kullandığım en son alet tetrisimdi. Neden hala 8 bit diye kasıyorlar anlamıyorum. Daha pahalı da değil aslında 8 bitlik PIC&#8217;lere göre.. Arm Cortex&#8217;lerle, Armın geliştiricileri dünya 32-bit olsun bitsin artık bu çile dedi sanıyorum.</p>
<p>Yapacaklarımız çok kolay:</p>
<p><a href="http://www.nxp.com/campaigns/cortex-m0/index.php?sub=gallery">Ücretsiz LPCXpresso</a> sitesine girin, sağ tarafta get it for free butonu var ona tıklayın. Karşınıza gelen formu gerçek bilgilerinizle doldurun. Çünkü evinize buranın aracılığıyla yollayacaklar. İş mailinizi istese de ben kişisel gmailimi kullandım. Malum kişisel tarihim pek da iyiye gitmiyor, işsizlik açlık sefalet durumları. Ardından video veya fotoğraf gönderebileceğiniz bir bölüme geçeceksiniz. Burada upload ederken parçalama işlemini nasıl yaptığınızı da anlatmanız gerekiyor.</p>
<p>Eğer elime ulaşırsa LPCXpresso LPC1114 boardı yollayacaklar. Umut, heyecan, gözyaşı her şey var elbette ptt ile gelen ürünlerde.</p>
<p>Sabırsızlanıyorum <img src='http://www.cagdastopcu.com/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> </p>
<blockquote><p><strong>Edit: Sonunda geldi beleş boardım. Bu yazıyı 15 martta yazmıştım ve 6 mayısta elime geçti. Eve bir süredir uğramadığımdan hadi 3 mayısta gelmiş olsun. 50 gün sonra ulaştı elime arm cortex kiti. Dökümanlarını okuyup geliştirmeye başlayacağım. Mutlu son ancak insanın hevesi kırılıyor o kadar bekleyince <img src='http://www.cagdastopcu.com/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> </strong></p></blockquote>
<p>&nbsp;</p>
<div class="shr-publisher-340"></div><!-- Start Shareaholic LikeButtonSetBottom --><!-- End Shareaholic LikeButtonSetBottom --><div style="float: right; margin-left: 10px;"><a href="http://twitter.com/share?url=http://www.cagdastopcu.com/ucretsiz-arm-cortex-gelistirme-kiti.html&via=cagdastopcucom&text=Ücretsiz Arm Cortex Geliştirme Kiti&related=cagdastopcu.com:official twitter of cagdastopcu.com&lang=en&count=horizontal" class="twitter-share-button">Tweet</a><script type="text/javascript" src="http://platform.twitter.com/widgets.js"></script></div>]]></content:encoded>
			<wfw:commentRss>http://www.cagdastopcu.com/ucretsiz-arm-cortex-gelistirme-kiti.html/feed</wfw:commentRss>
		<slash:comments>5</slash:comments>
		</item>
		<item>
		<title>Yeni Yıl Makyajı</title>
		<link>http://www.cagdastopcu.com/yeni-yil-makyaji.html</link>
		<comments>http://www.cagdastopcu.com/yeni-yil-makyaji.html#comments</comments>
		<pubDate>Mon, 27 Dec 2010 08:43:40 +0000</pubDate>
		<dc:creator>cagdas</dc:creator>
				<category><![CDATA[hayat]]></category>

		<guid isPermaLink="false">http://www.cagdastopcu.com/?p=326</guid>
		<description><![CDATA[Sitemin temasından sıkılmıştım artık ve tema geliştiricisi arkadaş bu sıralar pek güncelleme yapma niyetinde değildi. WordPress&#8217;in önerdiklerinden suffusion 200 bine yakın indirme ve yüzlerce iyi geribildirimle dikkatimi çekmişti. İlk başta web tasarımcılar için çalışma alanı sağladığını düşündüğüm tema aslında kod yazmadan kendi temamızı oluşturmamızı sağlayan bir sistemmiş. WP kontrol panelinde suffusion sekmesine gelip favicondan istediğimiz &#8230; </p><p><a class="more-link block-button" href="http://www.cagdastopcu.com/yeni-yil-makyaji.html">Continue reading &#187;</a>]]></description>
			<content:encoded><![CDATA[<!-- Start Shareaholic LikeButtonSetTop --><!-- End Shareaholic LikeButtonSetTop --><p>Sitemin temasından sıkılmıştım artık ve tema geliştiricisi arkadaş bu sıralar pek güncelleme yapma niyetinde değildi. WordPress&#8217;in önerdiklerinden <a href="http://www.aquoid.com/news/themes/suffusion/" target="_blank">suffusion</a> 200 bine yakın indirme ve yüzlerce iyi geribildirimle dikkatimi çekmişti. İlk başta web tasarımcılar için çalışma alanı sağladığını düşündüğüm tema aslında kod yazmadan kendi temamızı oluşturmamızı sağlayan bir sistemmiş. WP kontrol panelinde suffusion sekmesine gelip favicondan istediğimiz header resmine kadar herşeyi özelleştirebilmek mümkün. Kullanımı da oldukça kolay. Başta yaptığım değişiklikler neden olmuyor diye sorgularken sitemin cache sistemi yüzünden olduğunu anladım ve anasayfadan olmasa da altsayfalardan yaptığım değişiklikleri anında görebildim. Yeni yıl yeni tema mutlu parmaklar <img src='http://www.cagdastopcu.com/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' />  en mutluları da ayak parmakları <img src='http://www.cagdastopcu.com/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> )</p>
<p>not: öef bu ne mavi mavi karman çorman pok gibi diyen varsa daha güzel resimlere açığım. Estetik yoksunu değilim fotoşop/gimp özürlürlüyüm <img src='http://www.cagdastopcu.com/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> </p>
<div class="shr-publisher-326"></div><!-- Start Shareaholic LikeButtonSetBottom --><!-- End Shareaholic LikeButtonSetBottom --><div style="float: right; margin-left: 10px;"><a href="http://twitter.com/share?url=http://www.cagdastopcu.com/yeni-yil-makyaji.html&via=cagdastopcucom&text=Yeni Yıl Makyajı&related=cagdastopcu.com:official twitter of cagdastopcu.com&lang=en&count=horizontal" class="twitter-share-button">Tweet</a><script type="text/javascript" src="http://platform.twitter.com/widgets.js"></script></div>]]></content:encoded>
			<wfw:commentRss>http://www.cagdastopcu.com/yeni-yil-makyaji.html/feed</wfw:commentRss>
		<slash:comments>6</slash:comments>
		</item>
		<item>
		<title>Latex Türkçe Kullanımı</title>
		<link>http://www.cagdastopcu.com/latex-turkce-kullanimi.html</link>
		<comments>http://www.cagdastopcu.com/latex-turkce-kullanimi.html#comments</comments>
		<pubDate>Mon, 13 Dec 2010 08:37:59 +0000</pubDate>
		<dc:creator>cagdas</dc:creator>
				<category><![CDATA[bilim]]></category>
		<category><![CDATA[GNU]]></category>
		<category><![CDATA[programlama]]></category>
		<category><![CDATA[akademik]]></category>
		<category><![CDATA[kullanım]]></category>
		<category><![CDATA[kullanım notları]]></category>
		<category><![CDATA[latex]]></category>
		<category><![CDATA[türkçe]]></category>
		<category><![CDATA[ubuntu]]></category>

		<guid isPermaLink="false">http://www.cagdastopcu.com/?p=315</guid>
		<description><![CDATA[akademik makalelerin yazımında kullanılan standartlaşmış bir dildir. Matematiksel gösterimleri ve yazımı akademik dergilerin standartlarına uygun yazmak için kullanabileceğimiz tek araçtır. Ubuntu kullanıyorsak aşağıdaki paketleri direkt synaptic paket yöneticisinden bulup indirelim. dblatex texlive-lang-other ardından aşağıdaki başlıkları ekleyelim dosyamıza ve deneme.tex diye kaydedelim. \documentclass[12pt]{article} \usepackage[english,turkish]{babel} \usepackage[utf8]{inputenc} \usepackage[T1]{fontenc} \selectlanguage{turkish} \begin{document} \section*{Denemeı} \large içüğşıöÜŞÇÖİ \begin{equation} \sqrt{\pi} \end{equation} \end{document} Bir &#8230; </p><p><a class="more-link block-button" href="http://www.cagdastopcu.com/latex-turkce-kullanimi.html">Continue reading &#187;</a>]]></description>
			<content:encoded><![CDATA[<!-- Start Shareaholic LikeButtonSetTop --><!-- End Shareaholic LikeButtonSetTop --><p><img src='http://s.wordpress.com/latex.php?latex=%5CLaTeX&#038;bg=ffffff&#038;fg=000000&#038;s=0' alt='\LaTeX' title='\LaTeX' class='latex' /> akademik makalelerin yazımında kullanılan standartlaşmış bir dildir. Matematiksel gösterimleri ve yazımı akademik dergilerin standartlarına uygun yazmak için kullanabileceğimiz tek araçtır.</p>
<p>Ubuntu kullanıyorsak aşağıdaki paketleri direkt synaptic paket yöneticisinden bulup indirelim.</p>
<p>dblatex<br />
texlive-lang-other</p>
<p>ardından aşağıdaki başlıkları ekleyelim dosyamıza ve deneme.tex diye kaydedelim.</p>
<p>\documentclass[12pt]{article}<br />
\usepackage[english,turkish]{babel}<br />
\usepackage[utf8]{inputenc}<br />
\usepackage[T1]{fontenc}<br />
\selectlanguage{turkish}<br />
\begin{document}<br />
\section*{Denemeı}<br />
\large<br />
içüğşıöÜŞÇÖİ<br />
\begin{equation}<br />
\sqrt{\pi}<br />
\end{equation}</p>
<p>\end{document}</p>
<p>Bir terminal açın<br />
Kaydettiğimiz dosyanın olduğu konuma cd komutuyla geçin.<br />
Örneğin cd /home/cagdas/belgeler/texbelgeleri<br />
tex dosyamızı direkt pdf&#8217;e çevirmek için<br />
pdflatex deneme.tex<br />
yazmamız yeterli.</p>
<p>Eğer dvi formatında istiyorsak<br />
latex deneme.tex<br />
postscript olarak istiyorsak dvi&#8217;a dönüştürdüğümüz dosyayı<br />
dvips deneme.dvi ile postscript haline getirmiş oluruz.</p>
<div class="shr-publisher-315"></div><!-- Start Shareaholic LikeButtonSetBottom --><!-- End Shareaholic LikeButtonSetBottom --><div style="float: right; margin-left: 10px;"><a href="http://twitter.com/share?url=http://www.cagdastopcu.com/latex-turkce-kullanimi.html&via=cagdastopcucom&text=Latex Türkçe Kullanımı&related=cagdastopcu.com:official twitter of cagdastopcu.com&lang=en&count=horizontal" class="twitter-share-button">Tweet</a><script type="text/javascript" src="http://platform.twitter.com/widgets.js"></script></div>]]></content:encoded>
			<wfw:commentRss>http://www.cagdastopcu.com/latex-turkce-kullanimi.html/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>MySQL Kullanım Notları</title>
		<link>http://www.cagdastopcu.com/mysql-kullanim-notlari.html</link>
		<comments>http://www.cagdastopcu.com/mysql-kullanim-notlari.html#comments</comments>
		<pubDate>Sun, 05 Dec 2010 11:32:45 +0000</pubDate>
		<dc:creator>cagdas</dc:creator>
				<category><![CDATA[GNU]]></category>
		<category><![CDATA[pragramlama]]></category>
		<category><![CDATA[SQL]]></category>
		<category><![CDATA[database]]></category>
		<category><![CDATA[kod]]></category>
		<category><![CDATA[kullanım notları]]></category>
		<category><![CDATA[mysql]]></category>
		<category><![CDATA[notlar]]></category>
		<category><![CDATA[notları]]></category>
		<category><![CDATA[programlama]]></category>

		<guid isPermaLink="false">http://www.cagdastopcu.com/?p=307</guid>
		<description><![CDATA[C++ ve libmysqlclient kütüphanesi ile database uygulamalarına başladım. Buna başlamadan önce temel bir MySQL bilgisi gerekmektedir. MySQL tutorial&#8217;ını çalışırken kendime çıkardığım notlardır. Çok kapsamlı olmasa da ilk giriş dersi olabilir. mysql&#8217;i başlatma kod $ sudo /etc/init.d/mysql start kod$ mysql&#8217;e bağlanma kod $ mysql -u root -p kod $ Eğer kurulumu düzgün olmuşsa aşağıdaki gibi bir &#8230; </p><p><a class="more-link block-button" href="http://www.cagdastopcu.com/mysql-kullanim-notlari.html">Continue reading &#187;</a>]]></description>
			<content:encoded><![CDATA[<!-- Start Shareaholic LikeButtonSetTop --><!-- End Shareaholic LikeButtonSetTop --><p><img class="alignleft" title="mysql tasarım" src="http://lh5.ggpht.com/_gVfZHGgf5LA/Sn9FwCWpCgI/AAAAAAAAAto/oTCPwV8WCI0/planet_mysql_voting2.jpg" alt="" width="333" height="259" /></p>
<p>C++ ve libmysqlclient kütüphanesi ile database uygulamalarına başladım. Buna başlamadan önce temel bir MySQL bilgisi gerekmektedir.</p>
<p>MySQL tutorial&#8217;ını çalışırken kendime çıkardığım notlardır. Çok kapsamlı olmasa da ilk giriş dersi olabilir.</p>
<div>mysql&#8217;i başlatma</div>
<div>kod $</div>
<div>sudo /etc/init.d/mysql start</div>
<div>kod$</div>
<div>mysql&#8217;e bağlanma</div>
<p>kod $</p>
<p>mysql -u root -p</p>
<p>kod $</p>
<p>Eğer kurulumu düzgün olmuşsa aşağıdaki gibi bir şey göreceğiz.</p>
<p>Enter password: Welcome to the MySQL monitor.  Commands end with ; or \g.Your MySQL connection id is 52Server version: 5.1.41-3ubuntu12.7 (Ubuntu)</p>
<p>Type &#8216;help;&#8217; or &#8216;\h&#8217; for help. Type &#8216;\c&#8217; to clear the current input statement.</p>
<p>mysql&gt;<br />
mysql db oluşturma<br />
kod mysql&gt;</p>
<p>CREATE DATABASE dbadi;</p>
<p>kod mysql&gt;</p>
<p>kullanılacak db&#8217;yi seçmek</p>
<p>kod mysql&gt;</p>
<p>USE dbadi;</p>
<p>kod mysql&gt;</p>
<p>kullanılacak db&#8217;yi mysql açılırken seçmek</p>
<p>kod $</p>
<p>mysql -h host -u user -p dbadi</p>
<p>kod $</p>
<p>örnek localhost ve root kullanıcısı için</p>
<p>kod $</p>
<p>mysql -h localhost -u root -p dbadi</p>
<p>kod $</p>
<p>Table&#8217;ları göstermek</p>
<p>kod mysql&gt;</p>
<p>SHOW TABLES;</p>
<p>kod mysql&gt;</p>
<p>bunun için USE komutu ile bir DB&#8217;yi seçmiş olmamız gerekiyor.eğer table yoksa</p>
<p>cikti mysql&gt;</p>
<p>mysql&gt; SHOW TABLES;Empty set (0.00 sec)</p>
<p>cikti mysql&gt;</p>
<p>sonucunu verir.</p>
<p>Table oluşturmak</p>
<p>kod mysql&gt;</p>
<p>CREATE TABLE tableadi (name VARCHAR(20), owner VARCHAR(20),species VARCHAR(20), sex CHAR(1), birth DATE, death DATE);</p>
<p>kod mysql&gt;</p>
<p>burada tabloda tutulacak bilgiler de belirtilmiştir. VARCHAR uzunluğunubelirleyebildiğimiz karakter alanı açar. DATE ise tarih bilgisini saklamakiçindir.</p>
<p>oluşturduğumuz table&#8217;a bakmak</p>
<p>kod mysql&gt;</p>
<p>DESCRIBE tableadi;</p>
<p>kod mysql&gt;</p>
<p>Bu kod table&#8217;daki değişkenlerin türünü gösterir.</p>
<p>Tabloya veri göndermek</p>
<p>iki türlü yapılabilir:</p>
<p>a- Bir dosyadan veriyi almak</p>
<p>Dosyamıza verilerimizi sırasıyla tab ile boşluklar bırakarak yazıp txt uzantısıyla kaydediyoruz.<br />
örnek olarak</p>
<p>Badem	Cagdas	kopek	m	1996-06-06	/N</p>
<p>Arnould	Cagdas	kaplumbaga	m	1999-08-08	/N</p>
<p>Mavis	Abla	kus	m	1995-06-06	/N</p>
<p>Yesim	Abla	kus	m	1995-07-07	/N</p>
<p>Rocky	Cagdas	horoz	m	1993-04-04	1995-01-01</p>
<p>yazıp kaydettim.</p>
<p>Verileri istediğimiz tabloya şu şekilde göndeririz:</p>
<p>kod mysql&gt;</p>
<p>LOAD DATA LOCAL INFILE &#8216;/home/zanpakutou/dosyaadi.txt&#8217; INTO TABLE pet LINES TERMINATED BY &#8216;\n&#8217;;</p>
<p>kod mysql&gt;</p>
<p>burada dosyanın yerinin gösterimi önemli. Ben kullanıcı klasarümekaydetmiştim o yüzden bu şekilde yazdım.</p>
<p>b- komut satırından tek tek verilerin girilmesi<br />
kod mysql&gt;</p>
<p>INSERT INTO pet VALUES (&#8216;Minik&#8217;,'Cagdas&#8217;,'hamster&#8217;,'f&#8217;,&#8217;1999-03-30&#8242;,NULL);</p>
<p>kod mysql&gt;</p>
<p>Burada girdiğimiz NULL ve /N değerleri veri yok anlamında kullanılır.<br />
Tablodaki bütün verileri çekmek</p>
<p>kod mysql&gt;</p>
<p>SELECT * FROM tableadi;</p>
<p>kod mysql&gt;</p>
<p>+&#8212;&#8212;&#8212;+&#8212;&#8212;&#8211;+&#8212;&#8212;&#8212;&#8212;+&#8212;&#8212;+&#8212;&#8212;&#8212;&#8212;+&#8212;&#8212;&#8212;&#8212;+</p>
<p>| name    | owner  | species    | sex  | birth      | death      |</p>
<p>+&#8212;&#8212;&#8212;+&#8212;&#8212;&#8211;+&#8212;&#8212;&#8212;&#8212;+&#8212;&#8212;+&#8212;&#8212;&#8212;&#8212;+&#8212;&#8212;&#8212;&#8212;+</p>
<p>| Badem   | Cagdas | kopek      | m    | 1996-06-06 | 0000-00-00 |</p>
<p>| Arnould | Cagdas | kaplumbaga | m    | 1999-08-08 | 0000-00-00 |</p>
<p>| Mavis   | Abla   | kus        | m    | 1995-06-06 | 0000-00-00 |</p>
<p>| Yesim   | Abla   | kus        | m    | 1995-07-07 | 0000-00-00 |</p>
<p>| Rocky   | Cagdas | horoz      | m    | 1993-04-04 | 1995-01-01 |</p>
<p>+&#8212;&#8212;&#8212;+&#8212;&#8212;&#8211;+&#8212;&#8212;&#8212;&#8212;+&#8212;&#8212;+&#8212;&#8212;&#8212;&#8212;+&#8212;&#8212;&#8212;&#8212;+</p>
<div>
<div>Tabloyu temizlemek</div>
<div>DELETE FROM pet;</div>
<div>Veriyi değiştirmek</div>
<div>kod mysql&gt;</div>
<div>UPDATE pet SET birth = &#8217;1999-04-21&#8242; WHERE name = &#8216;Arnould&#8217;;</div>
<div>kod mysql&gt;</div>
<div>Burada pet tablosunda name bölgesindeki Arnould isimli dizinin</div>
<div>birth bölgesi değiştirilmiştir. birth verisi tarih olarak tanımlı</div>
<div>olduğundan tarih şeklinde girdik veriyi.</div>
<div>Sıralı veri alma</div>
<div>kod mysql&gt;</div>
<div>SELECT Name,owner FROM pet ORDER BY Name;</div>
<div>kod mysql&gt;</div>
<div>Burada owner bölgesindeki verileri isimlerin sırasına göre beraber çektik.</div>
<div>Çıktısı şu şekilde olacaktır:</div>
<div>+&#8212;&#8212;&#8212;+&#8212;&#8212;&#8211;+</div>
<div>| Name    | owner  |</div>
<div>+&#8212;&#8212;&#8212;+&#8212;&#8212;&#8211;+</div>
<div>| Arnould | Cagdas |</div>
<div>| Badem   | Cagdas |</div>
<div>| Mavis   | Abla   |</div>
<div>| Rocky   | Cagdas |</div>
<div>| Yesim   | Abla   |</div>
<div>+&#8212;&#8212;&#8212;+&#8212;&#8212;&#8211;+</div>
<div>5 rows in set (0.58 sec)</div>
<div>Latex Denemesi:</div>
<img src='http://s.wordpress.com/latex.php?latex=e%5E%7B%5Ci%20%5Cpi%7D%20%2B%201%20%3D%200&#038;bg=ffffff&#038;fg=000000&#038;s=0' alt='e^{\i \pi} + 1 = 0' title='e^{\i \pi} + 1 = 0' class='latex' />
<div><span style="font-family: 'Lucida Grande', Verdana, Arial, 'Bitstream Vera Sans', sans-serif; line-height: 18px; color: #333333;"></p>
<p></span></div>
</div>
<div class="shr-publisher-307"></div><!-- Start Shareaholic LikeButtonSetBottom --><!-- End Shareaholic LikeButtonSetBottom --><div style="float: right; margin-left: 10px;"><a href="http://twitter.com/share?url=http://www.cagdastopcu.com/mysql-kullanim-notlari.html&via=cagdastopcucom&text=MySQL Kullanım Notları&related=cagdastopcu.com:official twitter of cagdastopcu.com&lang=en&count=horizontal" class="twitter-share-button">Tweet</a><script type="text/javascript" src="http://platform.twitter.com/widgets.js"></script></div>]]></content:encoded>
			<wfw:commentRss>http://www.cagdastopcu.com/mysql-kullanim-notlari.html/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Plazma Teorisi ve Simulasyon Grubunun Programlarının Kurulumu</title>
		<link>http://www.cagdastopcu.com/plazma-teorisi-ve-simulasyon-grubunun-programlarinin-kurulumu.html</link>
		<comments>http://www.cagdastopcu.com/plazma-teorisi-ve-simulasyon-grubunun-programlarinin-kurulumu.html#comments</comments>
		<pubDate>Wed, 24 Nov 2010 09:24:56 +0000</pubDate>
		<dc:creator>cagdas</dc:creator>
				<category><![CDATA[bilim]]></category>
		<category><![CDATA[Elektrik]]></category>
		<category><![CDATA[enerji]]></category>
		<category><![CDATA[fizik]]></category>
		<category><![CDATA[GNU]]></category>
		<category><![CDATA[programlama]]></category>
		<category><![CDATA[berkeley]]></category>
		<category><![CDATA[grup]]></category>
		<category><![CDATA[plasma]]></category>
		<category><![CDATA[plazma]]></category>
		<category><![CDATA[simulasyon]]></category>
		<category><![CDATA[simulation]]></category>
		<category><![CDATA[teorisi]]></category>
		<category><![CDATA[theory]]></category>
		<category><![CDATA[ubuntu]]></category>
		<category><![CDATA[X Plasma Device Planar 1-D]]></category>
		<category><![CDATA[xgrafix]]></category>
		<category><![CDATA[xpdp1]]></category>

		<guid isPermaLink="false">http://www.cagdastopcu.com/?p=301</guid>
		<description><![CDATA[Berkeleyde çalışmalarını sürdüren The Plasma Theory and Simulation Group tarafından üretilip açık kaynaklı olarak dağıtılan simulasyon programlarının ubuntu 10.04 linux dağıtımına kurulumunu yaptım. Grubun sitesinde bir çok program bulunmaktadır. Bunlardan xgrafix programı diğerlerini kullanabilmek için önceden kurulmalıdır. xgrafix linkinden son versiyonunu indiriniz. buradan indirdiğiniz xgrafix-2.70.2.tar.gz dosyasını aşağıdaki kodlar yardımıyla istediğiniz yere açın. Ben kendi kullanıcı &#8230; </p><p><a class="more-link block-button" href="http://www.cagdastopcu.com/plazma-teorisi-ve-simulasyon-grubunun-programlarinin-kurulumu.html">Continue reading &#187;</a>]]></description>
			<content:encoded><![CDATA[<!-- Start Shareaholic LikeButtonSetTop --><!-- End Shareaholic LikeButtonSetTop --><p style="text-align: center;"><a href="http://www.cagdastopcu.com/wp-content/uploads/2010/11/plasma.jpg"><img class="aligncenter size-full wp-image-302" title="plasma" src="http://www.cagdastopcu.com/wp-content/uploads/2010/11/plasma.jpg" alt="" width="544" height="399" /></a></p>
<p>Berkeleyde çalışmalarını sürdüren <a href="http://ptsg.eecs.berkeley.edu/" target="_blank">The Plasma Theory and Simulation Group</a> tarafından üretilip açık kaynaklı olarak dağıtılan simulasyon programlarının ubuntu 10.04 linux dağıtımına kurulumunu yaptım.</p>
<p>Grubun sitesinde bir çok program bulunmaktadır. Bunlardan xgrafix programı diğerlerini kullanabilmek için önceden kurulmalıdır.</p>
<p><a href="http://ptsg.eecs.berkeley.edu/pub/codes/xgrafix/">xgrafix</a> linkinden son versiyonunu indiriniz.</p>
<p>buradan indirdiğiniz <a href="http://ptsg.eecs.berkeley.edu/pub/codes/xgrafix/xgrafix-2.70.2.tar.gz">xgrafix-2.70.2.tar.gz</a> dosyasını aşağıdaki kodlar yardımıyla istediğiniz yere açın. Ben kendi kullanıcı alanıma açtım.</p>
<p>gunzip xgrafix-2.70.2.tar.gz</p>
<p>tar xvf xgrafix-2.70.2.tar</p>
<p>Bunları yaparken gunzip yazıp ardından ilk bir iki harfini yazıp tab tuşuna basarsak dosyanın adını kendisi tamamlayacaktır.</p>
<p>Sıkıştırılmış dosyaları açtıktan sonra cd xgrafix komutuyla o klasörün içine girin.</p>
<p>./configure dediğimiz anda default ayarlarla konfigure etmiş oluruz. Bu komutu kullandıktan sonra sistem hata verebilir. Eğer aradığı dosyayı bulamıyorsa genelde dev paketlerinin kurulu olmamasındandır. Ben tcl ve tk paketlerinin dev eklentilerini de kurarak bu problemi aştım. Yalnız bu ubuntuda böyle. Diğer linux dağıtımlarında dev paketleri kendiliğinden gelebilir.</p>
<p>ardından make ve make install komutlarıyla programımızı kuruyoruz. make install komutunu kullanabilmek için root kullanıcı olmamız gerekiyor. Bunu da su komutu ve şifremizi girerek yapıyoruz.</p>
<p>Xgrafix programı plazma simulasyonları için grafik altyapısını sağlamaktadır. Kurulumu yaptıktan sonra test etmeye geldi sıra:</p>
<p>cd ctest komutu ile ctest klasörüne geçiyoruz ardından</p>
<p>./xtest komutu ile programımızı çalıştırıyoruz.</p>
<div id="_mcePaste">
<div id="_mcePaste">zanpakutou@dark-side:~/xgrafix/ctest$ ./xtest</div>
<div id="_mcePaste"></div>
<div id="_mcePaste">XGrafix version 2.70.2</div>
<div id="_mcePaste">(c) Copyright 1991-2010 The Regents of the University of California</div>
<div id="_mcePaste"></div>
<div id="_mcePaste">XGrafix is running on The X.Org Foundation version 10706000 of the X Window System, X11 R0</div>
<div id="_mcePaste">Display name &#8230;&#8230;&#8230;&#8230;.. :0.0</div>
<div id="_mcePaste">Display width &#8230;&#8230;&#8230;&#8230;. 1280</div>
<div id="_mcePaste">Display height &#8230;&#8230;&#8230;&#8230; 800</div>
<div id="_mcePaste">Color plane depth &#8230;&#8230;&#8230; 24</div>
</div>
<div></div>
<div>şeklinde bir çıktı verip arayüzümüz çalışmaya başlıyor.</div>
<div></div>
<div><a href="http://www.cagdastopcu.com/wp-content/uploads/2010/11/xgrafix.png"><img class="aligncenter size-full wp-image-303" title="xgrafix" src="http://www.cagdastopcu.com/wp-content/uploads/2010/11/xgrafix.png" alt="" width="410" height="310" /></a></div>
<p>Bunun ardından kullanacağımız simulasyon programını kuracağız. Ben örnek olarak XPDP1 yazılımını kurdum. Diğerlerinin kurrlumu da buna benzemektedir. XDPD1, X Plasma Device Planar 1-D&#8217;in kısaltmasıdır. Bu yazılımı şu linkten çekebilirsiniz: <a href="http://ptsg.eecs.berkeley.edu/pub/codes/xpdp1/" target="_blank">xpdp1</a></p>
<p>Buradan çekilen sıkıştırılmış dosya xgrafix&#8217;de kullanılan yöntemle açılabilir. Burada farklı olarak bazı değişiklikler yapmalıyız.</p>
<p>src klasörünün içindeki makefile dosyası açılıp aşağıdaki satır şu şekilde değiştirilmelidir</p>
<p>XGPATH = /home/kullanıcıadınız/xgrafix</p>
<p>Ardından aşağıdaki satırlar eklenmeli ve bu satırlara halihazırda benzeyen satırlar da başına # (diyez) konularak işlevsiz hale getirilmelidir.</p>
<p>CFLAGS= -O2 -I/usr/local/include -I$(XGPATH)/include -I$(XGPATH)/src -DPDP1PATH=\&#8221;$(HOME)/xpdp1/src\&#8221;</p>
<p>ve</p>
<p>LIBS = -L$(XGPATH) -L$(XGPATH)/lib -L$(XGPATH)/src -L/usr/local/lib -L/usr/X11R6/lib -lXGC250 -ltk -ltcl -lXpm -lX11 -lm -ldl</p>
<p>Buralarda hata verirse kodun mantığından siz de gerekli klasör yollarını ekleyebilirsiniz. Ben normal kurulum klavuzundan farklı olarak bu eklemeleri yaptım. Çalıştıktan sonra sorun yoktur <img src='http://www.cagdastopcu.com/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> </p>
<p>Ardından yine root kullanıcı olup</p>
<p>make</p>
<p>komutunu cd src ile geçtiğimiz src klasöründe çalıştırın.</p>
<p>Büyük bir ihitimalle yine hata verecektir <img src='http://www.cagdastopcu.com/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> </p>
<p>Mesela bende</p>
<p>/usr/bin/ld: cannot find -lXpm</p>
<div>hatasını vermişti. Bu sorunu libxpm-dev paketini kurarak çözdüm.</div>
<div></div>
<div>En sonunda programımızı aşağıdaki komutla test edebiliriz:</div>
<div></div>
<div>
<div>zanpakutou@dark-side:~$ &#8216;/home/zanpakutou/xpdp1/xpdp1&#8242; -i &#8216;/home/zanpakutou/xpdp1/inp/maxwello.inp&#8217;</div>
<div></div>
<div>Bunun ardından şu çıktıyı verdi ve programım çalıştı.</div>
<div></div>
<div>XPDP1 Version 4.11</div>
<div>Copyright (C) 1988-2002</div>
<div>Regents of the University of California</div>
<div>Plasma Theory and Simulation Group</div>
<div>University of California &#8211; Berkeley</div>
<div></div>
<div></div>
<div>Input file is &#8216;/home/zanpakutou/xpdp1/inp/maxwello.inp&#8217;</div>
<div></div>
<div>XGrafix version 2.70.2</div>
<div>(c) Copyright 1991-2010 The Regents of the University of California</div>
<div></div>
<div>XGrafix is running on The X.Org Foundation version 10706000 of the X Window System, X11 R0</div>
<div>Display name &#8230;&#8230;&#8230;&#8230;.. :0.0</div>
<div>Display width &#8230;&#8230;&#8230;&#8230;. 1280</div>
<div>Display height &#8230;&#8230;&#8230;&#8230; 800</div>
<div>Color plane depth &#8230;&#8230;&#8230; 24</div>
</div>
<div></div>
<div>Bu komutları yazmadan xpdp1 klasörünün içindeki xpdp1 dosyasını sürükleyip bırakıp ardından -i yazıp istediğimiz input dosyasını da inp klasörünün altında bulup sürükle bırak şeklinde komut satırına tanıttıktan sonra deneme programımız çalışmış olur. Bir sürü hata vermişti ben kurarken. Uykusuz bir halde çözmeye çalışmak can sıkıcıydı. Ama yılmayın hata kodlarını googleladıkça ve deneme yanılma yoluyla sorunlarınız çözülecektir. Buradan da sorabilirsiniz kafanıza takılan yerleri. Yardımcı olmaya çalışacağım.</div>
<div class="shr-publisher-301"></div><!-- Start Shareaholic LikeButtonSetBottom --><!-- End Shareaholic LikeButtonSetBottom --><div style="float: right; margin-left: 10px;"><a href="http://twitter.com/share?url=http://www.cagdastopcu.com/plazma-teorisi-ve-simulasyon-grubunun-programlarinin-kurulumu.html&via=cagdastopcucom&text=Plazma Teorisi ve Simulasyon Grubunun Programlarının Kurulumu&related=cagdastopcu.com:official twitter of cagdastopcu.com&lang=en&count=horizontal" class="twitter-share-button">Tweet</a><script type="text/javascript" src="http://platform.twitter.com/widgets.js"></script></div>]]></content:encoded>
			<wfw:commentRss>http://www.cagdastopcu.com/plazma-teorisi-ve-simulasyon-grubunun-programlarinin-kurulumu.html/feed</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Prensesin Uykusu&#8217;na Eleştiri</title>
		<link>http://www.cagdastopcu.com/prensesin-uykusuna-elestiri.html</link>
		<comments>http://www.cagdastopcu.com/prensesin-uykusuna-elestiri.html#comments</comments>
		<pubDate>Sun, 21 Nov 2010 20:44:15 +0000</pubDate>
		<dc:creator>cagdas</dc:creator>
				<category><![CDATA[hayat]]></category>
		<category><![CDATA[sanat]]></category>
		<category><![CDATA[çağan ırmak]]></category>
		<category><![CDATA[eleştiri]]></category>
		<category><![CDATA[film]]></category>
		<category><![CDATA[prensesin uykusu]]></category>
		<category><![CDATA[redd]]></category>
		<category><![CDATA[sinema]]></category>

		<guid isPermaLink="false">http://www.cagdastopcu.com/?p=293</guid>
		<description><![CDATA[Rastlantısal bir şekilde gittiğim Prensesin Uykusu filmi patlamış mısırla beraber güzel zaman geçirmemi sağladı. Mutlu bir akşam geçirdim. Filmden çıkınca en çok Pan tasvirini düşündüm. Pan ucu bucağı açık bir derya. Pan&#8217;ın Labirenti filmini anımsatan filmde neden acaba Pan bu kadar sönüktü bilmiyorum. Ama Türk sinemasında böyle fantastik ögelerin olması gerçekten çok mutlu ediyor beni. &#8230; </p><p><a class="more-link block-button" href="http://www.cagdastopcu.com/prensesin-uykusuna-elestiri.html">Continue reading &#187;</a>]]></description>
			<content:encoded><![CDATA[<!-- Start Shareaholic LikeButtonSetTop --><!-- End Shareaholic LikeButtonSetTop --><p><a href="http://www.cagdastopcu.com/wp-content/uploads/2010/11/prensesin-uykusu-fotograflar-32.jpeg"><img class="aligncenter size-medium wp-image-294" title="prensesin uykusu fotograf genco erkal alican yücesoy" src="http://www.cagdastopcu.com/wp-content/uploads/2010/11/prensesin-uykusu-fotograflar-32-300x168.jpg" alt="" width="300" height="168" /></a></p>
<p>Rastlantısal bir şekilde gittiğim Prensesin Uykusu filmi patlamış mısırla beraber güzel zaman geçirmemi sağladı. Mutlu bir akşam geçirdim. Filmden çıkınca en çok Pan tasvirini düşündüm. Pan ucu bucağı açık bir derya. Pan&#8217;ın Labirenti filmini anımsatan filmde neden acaba Pan bu kadar sönüktü bilmiyorum. Ama Türk sinemasında böyle fantastik ögelerin olması gerçekten çok mutlu ediyor beni. Az kullanılsa bile çok mutlu oldum.</p>
<p>Issız Adam filmine gitmediğim yönetmenin kalitesinin üzerinde bir film olmuş diyebiliriz. Tek kaygısı gişe olduğunu düşündüğüm Çağan Irmak bu kaygılarından biraz olsun kurtulup filme gerçeküstü fantastik yaratıklar ekleyerek felsefi bir altyapı kazandırmaya çalışmış. Çok da güzel olmuş. Doğa tanrısı Pan ve dev ahtapotla Anka Kuşu gerçekten de çok güzeldi. Bu efekleri teknik olarak inceleyebilecek kadar iyi bir bilgisayar oyuncusu değilim ancak güzellerdi. Bunu söylememin nedeni artık oyunların filmlerde kullanılan efektlerden daha yüksek bir teknolojiyle üretilmeleri. Matrix filmini yıllar sonra izlediğimizde bazı dövüş sahneleri yeni teknolojiye sahip bilgisayar oyunlarının yanında çizgi film gibi durmakta. Bu yaratıkların filme yerleştirilmesi biraz daha karanlık olabilirdi. Yani herşeyin çok açık farkında olma halinden biraz daha halüsinatifliğin korunması filme biraz olsun gizem ve okuyucuya bırakılacak boşluklar bırakılması filmi kalıcı bir eser haline getirebilecekken, ne yazık ki ıskalanmıştır. Film boyunca doğa sevgisiyle dolmamızı sağlayan güzel insan Aziz&#8217;in Pan ile karşı karşıya kalması ise çok üzücüydü. Doğa tanrısı Pan neden korkunç bir canavar olarak resmedilir anlayabilmiş değilim. Doğa sevgisi insanın işine geldiği yere kadar mıydı? Pan dengeyi sağlayan biri konumundaysa neden canavardı?</p>
<p>Oyunculuk genel olarak iyiydi. Tek sıkıntılı nokta dramatik sahnelerin dizi kalitesinde olması. Sinemada sahneler onlarca defa çekilir ve en sonunda belki de en mükemmeli yavaş yavaş süzüle süzüle ortaya çıkarılır. Dizi gibi bu bölüm kötü çektik ama sonraki bölümlerde düzeltiriz deme lüksümüz yok. Elbette sinemada filmler kalıcı olmak için yapılır. Diziler ise televizyon yayınının o saatleri arasında iyi bir reklam getirisi olması için çekilir. Stalker filmini Stalker yapan belki de ikinci defa çekilmiş olmasıydı. Çağan Irmak&#8217;ı niye sevmiyorumun cevabı da burada saklı. Televizyon haber bültenlerinde bir cıvık haber bir ağlamalı haber sırasıyla haberleri verip insanları tepkisizleştirmek için kullanılan yöntemi iyi öğrenmiş olan Çağan Irmak, Babam ve Oğlum filminde bir ağlatıp bir güldürerek insanların duygularından para kazanmanın yolunu bulmuştu. Prensesin Uykusu filminde de daha filmin adını duyar duymaz içindeki gizli dramı hissediyordum. Dünyalar tatlısı Prenses uykusunda uyurken annesinin yaşadığı dram filmin üzerine sonradan eklenmiş duyguydu. Gişede inşallah bu sahnelerin getirisi iyi olur sayın yönetmene ancak neden zorla eklendiğini anlamıyorum. Çocukla beraber Aziz bu gizemli dünyaya dalsalar da masalların içinde uyansaydık modern bir Alice Harikalar Diyarında uyarlaması olsaydı daha güzel olmaz mıydı?</p>
<p>Doğa aşığı Aziz hafif safdildi. Bir doğa aşığının olması gerektiği gibi yani. Sadece çıkarını düşünerek yaşayan bir insandan doğayı anlamasını onunla nefes alıp vermesini beklemek  ahmaklık olur. Çok sevdim bu karakteri. Ağaçlara sarılması hayal dünyasında yaşaması çok güzeldi. Küçük kız bu dünyaya açılan bir kapı olabilirdi. Az kullanılmış bu geçit ama yine de vardı. Müzikleri zaten sevdiğim Redd grubu tarafından başarıyla konulmuş. Sadece bazı sahnelerde canlı performanslarını görmeyi isterdim. Hastahanenin ortasında davul sesi anlamsız kaçabiliyor. Bu da filmi dizilere daha çok yaklaştıran bir detay. Oldukça önemli ama izleyici için. Genco Erkal hakkında yorum yapabileceğimi sanmıyorum. Muhteşem bir insan, muhteşem bir tiyatrocu.</p>
<p>Sonuç olarak gidip hoşça vakit geçirebilirsiniz. Kalıcı bir eser midir? Sanmıyorum ancak güzeldi. Özellikle çocukların götürülebileceği hayal dünyasına ufak adımlar atılan bir film olmuş.</p>
<div class="shr-publisher-293"></div><!-- Start Shareaholic LikeButtonSetBottom --><!-- End Shareaholic LikeButtonSetBottom --><div style="float: right; margin-left: 10px;"><a href="http://twitter.com/share?url=http://www.cagdastopcu.com/prensesin-uykusuna-elestiri.html&via=cagdastopcucom&text=Prensesin Uykusu'na Eleştiri&related=cagdastopcu.com:official twitter of cagdastopcu.com&lang=en&count=horizontal" class="twitter-share-button">Tweet</a><script type="text/javascript" src="http://platform.twitter.com/widgets.js"></script></div>]]></content:encoded>
			<wfw:commentRss>http://www.cagdastopcu.com/prensesin-uykusuna-elestiri.html/feed</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
	</channel>
</rss>

<!-- Dynamic Page Served (once) in 1.249 seconds -->

