<?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>CETURK &#187; Visual Studio 2008 for Oxygene</title>
	<atom:link href="http://www.ceturk.com/etiket/visual-studio-2008-for-oxygene/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.ceturk.com</link>
	<description>Türkiye&#039;nin Bilişim Platformu</description>
	<lastBuildDate>Wed, 25 Jan 2012 10:19:17 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.2.1</generator>
		<item>
		<title>Delphi Prism İle Çalışmaya Başlamak</title>
		<link>http://www.ceturk.com/delphi-prism-ile-calismaya-baslamak/</link>
		<comments>http://www.ceturk.com/delphi-prism-ile-calismaya-baslamak/#comments</comments>
		<pubDate>Mon, 09 Nov 2009 19:22:30 +0000</pubDate>
		<dc:creator>Memik</dc:creator>
				<category><![CDATA[Delphi/Kylix]]></category>
		<category><![CDATA[Dersler]]></category>
		<category><![CDATA[Programlama]]></category>
		<category><![CDATA[Delphi Prism]]></category>
		<category><![CDATA[Install Delphi Prism]]></category>
		<category><![CDATA[InstallAware]]></category>
		<category><![CDATA[Interbase]]></category>
		<category><![CDATA[Memik YANIK]]></category>
		<category><![CDATA[Microsoft Visual Studio 2008]]></category>
		<category><![CDATA[Oxygene]]></category>
		<category><![CDATA[Rad Studio 2010]]></category>
		<category><![CDATA[Visual Studio 2008 for Oxygene]]></category>

		<guid isPermaLink="false">http://www.ceturk.com/?p=4292</guid>
		<description><![CDATA[Bir önceki makalemizde Oxygene’in Delphi Prism olmadan önceki hali hakkında kısaca bilgi verdik. Şimdi sırada Delphi Prism üzerinde konuşmak var. Bu amaçla embarcadero.com’dan Delphi Prism’in en son sürümün deneme kopyasını indirip Install.exe adlı programı çalıştırdım. Aşağıda verilen ekran görüntüsünden fark edeceğiniz gibi Delphi Prism paketinden ayrıca Interbase veritabanı ve InstallAware adlı setup programı çıkmaktadır. Bu [...]]]></description>
			<content:encoded><![CDATA[<p>Bir önceki makalemizde Oxygene’in <strong>Delphi Prism</strong> olmadan önceki hali hakkında kısaca bilgi verdik. Şimdi sırada Delphi Prism üzerinde konuşmak var. Bu amaçla embarcadero.com’dan Delphi Prism’in en son sürümün deneme kopyasını indirip <strong>Install.exe</strong> adlı programı çalıştırdım. Aşağıda verilen ekran görüntüsünden fark edeceğiniz gibi Delphi Prism paketinden ayrıca <strong>Interbase</strong> veritabanı ve <strong>InstallAware</strong> adlı setup programı çıkmaktadır.</p>
<p><a href="http://www.ceturk.com/images/delphi_prism_makale_1_resim_11.jpg"><img class="alignnone size-full wp-image-4293" src="http://www.ceturk.com/images/delphi_prism_makale_1_resim_11.jpg" alt="delphi_prism_makale_1_resim_1" width="600" height="425" /></a></p>
<p>Bu penceredeki <strong>Install Delphi Prism</strong> seçeneği tıklandığında birkaç klasik sorudan sonra kurulum tamamlanmaktadır. Delphi Prism’i kurduktan sonra, ister Visual Studio kurulurken Başlat menüsünde hazırlanan komutu verin ister Delphi Prism’e ait komutu verin Visual Studio başlatılmaktadır. Visual Studio 2008’i başlatıp yeni bir Delphi Prism projesi hazırlamak üzere ekrana <strong>New Project</strong> diyalog kutusunu getirdik.</p>
<p><a href="http://www.ceturk.com/images/delphi_prism_makale_1_resim_2.jpg"><img class="alignnone size-full wp-image-4294" src="http://www.ceturk.com/images/delphi_prism_makale_1_resim_2.jpg" alt="delphi_prism_makale_1_resim_2" width="583" height="344" /></a></p>
<p>Aşağıda verilen ekran görüntüsünden fark etmiş olacağınız gibi <strong>Windows Application</strong> şablonu ile yeni bir proje hazırlayınca bu projeye <strong>Program.pas</strong> ve <strong>Main.Pas</strong> adında 2 kod dosyası hazırlanmaktadır. Program.pas dosyasında uygulamanın başlangıç noktası olan <strong>Main</strong>() metodu bulunurken, Main.pas dosyasında .NET Framework ile gelen <strong>Form</strong> sınıfının mirasçısı bir Class hazırlanıp bu Class’ın yani formun uygulamanın başlangıç formu olması sağlanmaktadır.</p>
<p><a href="http://www.ceturk.com/images/delphi_prism_makale_1_resim_3.jpg"><img class="alignnone size-full wp-image-4295" src="http://www.ceturk.com/images/delphi_prism_makale_1_resim_3.jpg" alt="delphi_prism_makale_1_resim_3" width="700" height="395" /></a></p>
<p>Ancak bu makalelerde sizlere işin özünü anlatmayı hedeflediğim için Visual Studio 2008’den yararlanarak hazırladığım bu projeyi bir tarafa bırakıp Not Defteri ile en kısıtlı özelliklere sahip ve konsolda çalışan bir Delphi Prism uygulaması hazırlayacağız. Bunu yaparken yani en kısıtlı özelliklere sahip konsol uygulamasını hazırlarken konunun hemen anlaşılmasını sağlamak için kodu parça parça vereceğiz. En kısıtlı özelliklere sahip Delphi Prism uygulaması bile <strong>namespace</strong> olarak düzenlendiği için aşağıdaki gibi bir namepace hazırladık.</p>
<p><a href="http://www.ceturk.com/images/delphi_prism_makale_1_resim_4.jpg"><img class="alignnone size-full wp-image-4296" src="http://www.ceturk.com/images/delphi_prism_makale_1_resim_4.jpg" alt="delphi_prism_makale_1_resim_4" width="388" height="123" /></a></p>
<p>Namespace’in sonunu işaret eden <strong>end</strong> deyiminin sonuna noktalı virgül(;) yerine nokta konulması gerekiyor. Tabi bu şekilde düzenlenen Delphi Prism kodu derlendiğinde hata meydana gelir. Çünkü tıpkı Delphi uygulamalarında olduğu gibi Delphi Prism kodunun en azından <strong>interface</strong> ve <strong>implementation</strong> bölgelerine sahip olması gerekiyor. Bu nedenle koda ekleme yapıp interface ve implementation bölgelerine yer verdik.</p>
<p><a href="http://www.ceturk.com/images/delphi_prism_makale_1_resim_5.jpg"><img class="alignnone size-full wp-image-4297" src="http://www.ceturk.com/images/delphi_prism_makale_1_resim_5.jpg" alt="delphi_prism_makale_1_resim_5" width="373" height="156" /></a></p>
<p>Delphi Prism uygulamasının mutlaka gerek duyduğu interface ve implementation bölgelerine bu şekilde yer verilse bile bu kod derlenirse hata meydana gelir. Çünkü uygulamanın başlangıç noktası olan <strong>Main(</strong>) metoduna sahip olması gerekiyor. Bu nedenle bu koda ekleme yapıp Main() metoduna yer verdik.</p>
<p><a href="http://www.ceturk.com/images/delphi_prism_makale_1_resim_6.jpg"><img class="alignnone size-full wp-image-4298" src="http://www.ceturk.com/images/delphi_prism_makale_1_resim_6.jpg" alt="delphi_prism_makale_1_resim_6" width="407" height="189" /></a></p>
<p>Bu şartlarda bu kod hatasız derlenip çalıştırılır. Bu kodu yakında incelediğinizde Delphi Prism’de Delphi’den farklı olarak geriye değer göndermeyen metotlar <strong>method</strong> anahtar kelimesiyle başlayabilmektedir. Yok eğer ben eski alışkanlıklarımı sürdürüp geriye değer göndermeyen metotları hazırlarken <strong>procedure</strong> anahtar kelimesinden yararlanacağım diyorsanız bu kodu aşağıdaki gibi değiştirebilirsiniz.</p>
<p> namespace ilk_uzay;<br />
 interface<br />
 implementation<br />
 <strong> procedure Main;<br />
</strong>    begin<br />
     Console.WriteLine(&#8216;wwww.memikyanik.com&#8217;);<br />
   end;<br />
end.</p>
<p>Not Defteri ile veya başka bir editörle hazırladığınız Delphi Prism kodunu konsolda derlemek istiyorsanız aşağıda yeri ve adı işaret edilen exe dosyadan yani <strong>Oxygene.exe</strong> adlı derleyiciden yararlanmanız gerekir.</p>
<p><a href="http://www.ceturk.com/images/delphi_prism_makale_1_resim_7.jpg"><img class="alignnone size-full wp-image-4299" src="http://www.ceturk.com/images/delphi_prism_makale_1_resim_7.jpg" alt="delphi_prism_makale_1_resim_7" width="516" height="229" /></a></p>
<p>Bu dosya kurulum sırasında arama yoluna dahil edildiği için PAS uzantılı kod dosyaları istenen klasöre kaydedilip istenen klasörde iken derleme yapılabilir. “ilk.pas” adını verdiğim kod dosyasını derlemek için DOS penceresinde önce derleyicinin, ardından derlemek istediğimiz PAS dosyasının adını yazdık.<a href="http://www.ceturk.com/images/delphi_prism_makale_1_resim_9.jpg"></a><a href="http://www.ceturk.com/images/delphi_prism_makale_1_resim_10.jpg"></a><a href="http://www.ceturk.com/images/delphi_prism_makale_1_resim_8.jpg"></a></p>
<p><a href="http://www.ceturk.com/images/delphi_prism_makale_1_resim_8.jpg"><img src="http://www.ceturk.com/images/delphi_prism_makale_1_resim_8.jpg" alt="delphi_prism_makale_1_resim_8" width="452" height="143" /></a></p>
<p>Bu şekilde yapılan derleme sonucu “ilk.exe” adında bir çalışabilir .NET uyumlu dosya hazırlanır. Bu exe uzantılı dosya çalıştırıldığında ise Console sınıfının <strong>WriteLine</strong>() metoduna parametre olarak verilen sabit bilgi konsola yazılır. Delphi Prism’in bazı özelliklerini ortaya çıkarmak için yukarıda verdiğim kodu aşağıdaki gibi değiştirdik.</p>
<p><a href="http://www.ceturk.com/images/delphi_prism_makale_1_resim_9.jpg"><img src="http://www.ceturk.com/images/delphi_prism_makale_1_resim_9.jpg" alt="delphi_prism_makale_1_resim_9" width="390" height="224" /></a></p>
<p>Bu kodda tıpkı Delphi’de olduğu gibi Main() metodu içinde <strong>var</strong> bloğuna yer verip “yil” adında ve integer tipinde bir değişken tanımladık. Devamında Console sınıfının <strong>Read</strong>() metodu sayesinde konsola yazılan bilgiyi bu değişkene aktardık. Delphi Prism’de değişken tanımlamak için metodun asıl işlem yapan satırlarının dışında <strong>var</strong> bloğuna yer vermek şart olmadığı için bu kodu aşağıdaki gibi düzenlemek mümkündür. </p>
<p>namespace ilk_uzay;<br />
 interface<br />
 implementation<br />
  procedure Main;<br />
  begin<strong>  <br />
  var yil : integer;<br />
</strong>    Console.Write(&#8216;Hangi Yıldayız :&#8217;);<br />
    yil := Console.Read();<br />
  end;<br />
end. </p>
<p>Açıkçası Delphi Prism’de <strong>var</strong> anahtar kelimesiyle istenen yerde değişken tanımlanabilmektedir. Şimdi bu Delphi Prism koduna ekleme yapıp kullanıcıdan istenip “yıl” adını verdiğimiz değişkene aktarılan bilgiyi <strong>WriteLine</strong>() metodu ile tekrar ekrana yazacağız. </p>
<p>namespace ilk_uzay;<br />
 interface<br />
 implementation<br />
  method Main;<br />
   begin<br />
     var yil : integer;<br />
     Console.Write(&#8216;Hangi Yıldayız :&#8217;);<br />
     yil := Console.Read();<br />
     Console.WriteLine();<br />
     Console.Write(&#8220;Girdiğiniz Yıl :&#8221;);<br />
     Console.WriteLine(yil);<br />
   end;<br />
end. </p>
<p> Bu şekilde düzenlenen Delphi Prism kodu derlenirken hata vermediği gibi çalıştırıldığında da hata vermez ama girilen yıl bilgisi ile sonradan WriteLine() metodu ile ekrana yazılan yıl bilgisi birbirinden farklı olur. Aşağıda verdiğim ekran görüntüsünü bu Delphi Prism kodunu derleyip çalıştırdıktan sonra aldım.</p>
<p><a href="http://www.ceturk.com/images/delphi_prism_makale_1_resim_10.jpg"><img src="http://www.ceturk.com/images/delphi_prism_makale_1_resim_10.jpg" alt="delphi_prism_makale_1_resim_10" width="396" height="143" /></a></p>
<p>Yukarıda verilen koda dikkat ederseniz konsoldan bilgi okuma işlemi <strong>Read</strong>() metodu ile yapılmaktadır. Read() metodu konsoldan okuma yaparken girilen bilginin ilk karakterinin ASCII kodunu geriye göndermektedir. Console sınıfının <strong>Realline</strong>() metodu ise farklı bir şekilde çalışmaktadır ve konsoldan yani DOS penceresinden okuduğu bilginin String tipte olduğunu varsaymaktadır. Bu nedenle yukarıda verdiğimde örnekte değişiklik yapıp okuma işlemini Read() yerine <strong>Realline</strong>() metodu ile yapmaya çalıştık. </p>
<p>namespace ilk_uzay;<br />
 interface<br />
 implementation<br />
  method Main;<br />
   begin<br />
     var yil : integer;<br />
     Console.Write(&#8216;Hangi Yıldayız :&#8217;);<br />
<strong>      yil := Console.Realline();<br />
</strong>     Console.WriteLine();<br />
     Console.Write(&#8220;Girdiğiniz Yıl :&#8221;);<br />
     Console.WriteLine(yil);<br />
   end;<br />
end. </p>
<p>Bu şekilde değiştirdiğimiz Delphi Prism kodunu derlemek istersek derleyici hata rapor eder. Çünkü Console sınıfının <strong>Realline</strong>() metodu tarafından okunup geriye gönderilen bilgi String tipte olmasına rağmen burada integer tipindeki değişkene aktarmaya çalışıyorum. Bu hatanın önüne geçmek için String tipte bir değişken tanımlayıp kullandık. Bu hali ile programımız istediğimiz sonucu verir. </p>
<p>namespace ilk_uzay;<br />
 interface<br />
 implementation<br />
  method Main;<br />
   begin<br />
     var yil : string;<br />
     Console.Write(&#8216;Hangi Yıldayız :&#8217;);<br />
     yil := Console.Realline();<br />
     Console.WriteLine();<br />
     Console.Write(&#8220;Girdiğiniz Yıl :&#8221;);<br />
     Console.WriteLine(yil);<br />
   end;<br />
end.</p>
<p>Her ne kadar Delphi Prism %100 nesne yönelimli bir programlama dili olsa bile sizi <strong>Class</strong> hazırlamak zorunda bırakmıyor. Deneysel uygulamalar hariç Class hazırlamak gerekeceği için şimdi yukarıda verilen kodda değişiklik yapıp bir Class’a sahip olmasını sağlayacağız.</p>
<p><a href="http://www.ceturk.com/images/delphi_prism_makale_1_resim_112.jpg"><img src="http://www.ceturk.com/images/delphi_prism_makale_1_resim_112.jpg" alt="delphi_prism_makale_1_resim_11" width="441" height="280" /></a></p>
<p>Delphi ve Delphi Prism’de Class’lar <strong>interface</strong> bölgesinde <strong>type</strong> ile <strong>end</strong> anahtar kelimelerinin arasında <strong>class</strong> anahtar kelimesiyle tanımlanır. Burada “ilk_sinif” adını verdiğimiz Class’ın henüz metodu, özelliği, alanı vs yoktur. Class’ın <strong>public</strong> üyeleri public bloğunda, <strong>private</strong> üyeleri ise private bloğunda tanımlanmaktadır. Şimdi bu konsol uygulamasındaki <strong>Main</strong>() metodunun “ilk_sinif” adını verdiğim Class’ın public bir üyesi yani metodu olmasını sağlayacağız. Bu amaçla namespace’in <strong>interface</strong> bölgesindeki <strong>type</strong> bloğunda aşağıdaki gibi değişiklik yaptık. </p>
<p>namespace ilk_uzay;<br />
 interface<br />
  type<br />
    ilk_sinif = class<br />
   public<br />
      <strong>class method Main;<br />
</strong>   private<br />
  end;<br />
 implementation<br />
  method Main;<br />
   begin<br />
     Console.WriteLine(&#8216;wwww.memikyanik.com&#8217;);<br />
     Console.Write(&#8216;Çıkmak İçin Bir Tuşa Basın&#8217;);<br />
     Console.ReadKey();<br />
   end;<br />
end.</p>
<p>Bu şekilde düzenlenen Delphi Prism kodu derlenmek istenirse hata meydana gelir. Çünkü bu sınıfın Main() adında ve herhangi bir parametreye sahip olmayan bir metoda sahip olduğu işaret edilmekle birlikte namespace’in <strong>implementation</strong> bölgesinde bu sınıfla ilişkilendirilen bir metot yoktur. Mevcut Main() metodunun başına <strong>class</strong> ve <strong>method</strong> anahtar kelimesinden sonra class adı aşağıdaki gibi yazılırsa sorun çözülür. </p>
<p>namespace ilk_uzay;<br />
interface<br />
  type<br />
    ilk_sinif = class<br />
   public<br />
      class method Main;<br />
   private<br />
  end;<br />
 implementation</p>
<p>  <strong>class method ilk_sinif.Main;<br />
</strong>   begin<br />
     Console.WriteLine(&#8216;wwww.memikyanik.com&#8217;);<br />
     Console.Write(&#8216;Çıkmak İçin Bir Tuşa Basın&#8217;);<br />
     Console.ReadKey();<br />
   end;<br />
end.</p>
<p>Bu kodda method anahtar kelimesi yerine <strong>procedure</strong>’yi kullanabileceğinizi biliyorsunuz. Bir sonraki makalemizde Delphi Prism anlatmaya kaldığımız yerden devam edeceğiz.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.ceturk.com/delphi-prism-ile-calismaya-baslamak/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	<enclosure url="http://www.ceturk.com/images/delphi_prism_makale_1_resim_11.jpg" length="48165" type="image/jpg" />	</item>
		<item>
		<title>Delphi Prism İle Tanışmak</title>
		<link>http://www.ceturk.com/delphi-prism-ile-tanismak/</link>
		<comments>http://www.ceturk.com/delphi-prism-ile-tanismak/#comments</comments>
		<pubDate>Sun, 08 Nov 2009 18:26:18 +0000</pubDate>
		<dc:creator>Memik</dc:creator>
				<category><![CDATA[Delphi/Kylix]]></category>
		<category><![CDATA[Programlama]]></category>
		<category><![CDATA[Delphi Prism]]></category>
		<category><![CDATA[Embarcadero]]></category>
		<category><![CDATA[Memik YANIK]]></category>
		<category><![CDATA[Microsoft Visual Studio 2008]]></category>
		<category><![CDATA[Oxygene]]></category>
		<category><![CDATA[Rad Studio 2007]]></category>
		<category><![CDATA[Rad Studio 2010]]></category>
		<category><![CDATA[RemObjects]]></category>
		<category><![CDATA[Visual Studio 2008 for Oxygene]]></category>

		<guid isPermaLink="false">http://www.ceturk.com/?p=4230</guid>
		<description><![CDATA[Varsayalım ki daha önce Delphi ile az çok program yazdınız. Konu Web uygulamaları olduğunda Delphi’nin geri kaldığını düşünüyorsanız imdadınıza Delphi Prism yetişiyor. Öncelikle 1 yıl önce kişisel sitemde sizinle paylaştığım Delphi Prism’le ilgili kısa makaleyi küçük ekleme ve değişikliklerle tekrar size sunacağım. Devamında birkaç makale boyunca Delphi Prism’den söz edeceğim. Yakın bir zamanda(yani 2008 yılı [...]]]></description>
			<content:encoded><![CDATA[<p><a href="http://www.ceturk.com/images/oxygene_31.jpg"></a><a href="http://www.ceturk.com/images/oxygene_65.jpg"></a>Varsayalım ki daha önce Delphi ile az çok program yazdınız. Konu Web uygulamaları olduğunda Delphi’nin geri kaldığını düşünüyorsanız imdadınıza <strong>Delphi Prism</strong> yetişiyor. Öncelikle 1 yıl önce <a href="http://www.memikyanik.com/">kişisel sitemde</a> sizinle paylaştığım Delphi Prism’le ilgili kısa makaleyi küçük ekleme ve değişikliklerle tekrar size sunacağım. Devamında birkaç makale boyunca Delphi Prism’den söz edeceğim.</p>
<p>Yakın bir zamanda(yani 2008 yılı içinde) <strong>Delphi Prism</strong> adında yeni bir uygulama geliştirme aracı daha doğrusu bir derleyici programcıların istifadesine sunuldu. Bu ürün vesilesi ile öncelikle bir Delphi tarihi özeti geçeceğim. Microsoft’un ilk .NET Framework sürümünü hazırladığı günlerde Delphi’nin kullanıma sunulmuş en son sürümü Delphi 7 idi. Masaüstü uygulamalar geliştirmek için o günlerin en iyi programlama dili ve uygulama geliştirme aracıydı. Derken Microsoft firması .NET Framework teknolojisini ve .NET uyumlu programlama dillerini kullanıma sundu. Bir süre sonra Borland firması Delphi 8 adıyla Delphi&#8217;nin .NET uyumlu sürümünü piyasaya vermekle birlikte Microsoft’un Visual Studio’su ve yeni programlama dilleri(Visual Basic .NET ve C#) kadar programcılardan ilgi görmedi. İşin özü konu Web uygulamaları geliştirmek olduğunda programcılar ağırlıklı olarak tercihlerini Microsoft ürünü araçlardan yana yaptılar. Kişisel görüşüme göre asıl sorun Borland’ın .NET Framework desteği konusunda Microsoft’u çok geriden takip etmesiydi. Örneğin Delphi ile Web uygulaması geliştiren programcılar .NET Framework 2.0 desteği için uzun süre beklemek zorunda kaldılar. Şu günlerde(2008 yılı içinde) Microsoft firması Visual Studio 2008 ile .NET Framework 3.5 desteğini sunarken Borland(artık CodeGear demek gerek) ürünü <strong>Rad Studio 2007</strong> ile gelen .NET uyumlu Delphi 2007 ile ancak .NET Framework 2.0 uyumlu ASP.NET uygulamaları geliştirmek mümkün olabildi. Bir süre önce <strong>Embarcadero</strong> firması(Delphi ve C++ Builder’ın yeni sahibi firma) <strong>RemObjects</strong> firmasının <strong>Oxygene</strong> adlı Object Pascal derleyicisinin haklarını satın alıp <strong>Delphi Prism</strong> adıyla piyasaya verdi. </p>
<p>Konunun uzmanlarının bildiği gibi C#, C++ ve Visual Basic programlama dilleri ile .NET uyumlu uygulamalar geliştirmek için kullanılan bilgisayara ilgilenilen .NET Framework sürümünü kurmak yeterli olmaktadır. Çünkü Microsoft firması sözünü ettiğim derleyicileri .NET Framework ile birlikte ücretsiz olarak dağıtmaktadır. Programcı kodunu istediği dilde Not Defteri veya başka bir editörle yazıp .NET Framework ile gelen derleyici ile derleyip kullanabiliyor. Tabii Not Defteri gibi bir editörle .NET uyumlu uygulama geliştirmek zahmetli olduğu için programcılar Visual Studio&#8217;yu veya yukarıda saydığım dillere özel ücretsiz <strong>Express Edition</strong>&#8216;ları kullanıyorlar.</p>
<p>Gelelim Delphi Prism&#8217;e. Yukarıda anlatılanlara göre Microsoft&#8217;un .NET Framework ile birlikte verdiği derleyiciler .NET ile gelen sınıfları kullandıkları için .NET Framework kurulu olmayan bilgisayarda C# veya Visual Basic derleyicilerinden yararlanmak mümkün değildir. Bu durumda .NET uyumlu Delphi kodunu derleyebilmek için eski adı <strong>Oxygene </strong>olan<strong> Delphi Prism</strong> derleyicisini kurmamız gerekiyor. Bu amaçla CodeGear.com&#8217;dan veya RemObjects.com<strong>&#8216;</strong>dan<strong> </strong>deneme sürümünü indirip kurduğunuzda Delphi dilinin kurallarına göre .NET uyumlu uygulama geliştirmek mümkün hale geliyor.</p>
<p>Tabii programcılar Rad Studio veya Visual Studio gibi IDE&#8217;lere alışalı yıllar olduğu için IDE desteği olmayan derleyicilere dönüp bakmıyorlar. Bu nedenle <strong>RemObjects </strong>firması<strong> Oxygene</strong> adlı Object Pascal derleyicisini hazırlarken Visual Studio desteğini verdi. Başka bir deyişle <strong>RemObjects </strong>firması .NET Framework ile gelen derleyicilerin sayısını bir arttırıp Visual Studio ile Object Pascal kodu yazabilme imkanını Delphi programcılarına sundu.</p>
<p>Yani işin özü şudur: Daha önce Delphi ile masaüstü uygulamalar geliştirdiniz; sonra baktınız ki Delphi&#8217;nin .NET uyumlu sürümü .NET uyumlu Web uygulamalarını geliştirmede yetersiz kalıyor. Ötesi Visual Basic veya C# gibi yeni bir programlama dili öğrenmek istemiyorsunuz. Bu durumda imdadınıza <strong>Oxygene</strong> adlı <strong>Object Pascal</strong> derleyicisi yetişiyor. Ne mi yapmak gerekiyor? Kullandığınız bilgisayara önce .NET Framework, sonra Visual Studio&#8217;yu kuruyorsunuz. Devamında RemObjects.com&#8217;dan Oxygene&#8217;i indirip kuruyorsunuz. Sonra ekrana Visual Studio&#8217;nun <strong>New Project</strong> diyalog kutusunu getirdiğinizde tıpkı Visual Basic gibi tıpkı C# gibi <strong>Oxygene</strong> adlı Object Pascal derleyicisinin listelendiğini görüyorsunuz.</p>
<p><a href="http://www.ceturk.com/images/oxygene_14.jpg"><img class="alignnone size-full wp-image-4231" src="http://www.ceturk.com/images/oxygene_14.jpg" alt="oxygene_1" width="601" height="336" /></a></p>
<p><strong>Oxygene</strong> programcılardan ilgi görünce Delphi ve C++ Builder&#8217;ın yeni sahibi <strong>Embarcadero</strong> firması <strong>RemObjects</strong> firması ile anlaşıp Oxygene&#8217;e <strong>Delphi Prism</strong> adını verip dağıtmaya başladı. Tekrar etmek gerekirse Delphi Prism ile uygulama geliştirebilmek için kullandığınız bilgisayara önceden .NET Framework ve Visual Studio’yu kurmanız gerekiyor. Çünkü Delphi Prism, Visual Studio ile entegre çalışıyor. Yani Visual Studio’dan yararlanıyor.</p>
<p>Delphi Prism kimler için sorusuna şu cevap verilebilir: Visual Studio ile Delphi programlama dilini kullanarak masaüstü ve web uygulamaları geliştirmek isteyenler tercih edebilir. Tabii Visual Studio ortamında kullanılan Delphi Prism %100 klasik Delphi uyumlu değildir. Çünkü Oxygene yani Delphi Prism ile Delphi diline yapılmış eklemeler ve geliştirmeler bulunmaktadır. Örneğin Procedure ve Function yerine, yani her ikisinin yerine <strong>Method</strong> anahtar kelimesi kullanılabilmektedir.</p>
<p>Yakın bir zamanda piyasaya verilen <strong>Rad Studio 2010</strong> paketinden çıkan Delphi sürümü ile ASP.NET uygulaması geliştirmek mümkün değildir. Akla hemen şu soru geliyor : Delphi Prism, <strong>Embarcadero</strong> firmasının Rad Studio’su ile entegre çalışabiliyor mu? Cevap: Hayır. Belki bir süre sonra Delphi Prism&#8217;in Rad Studio ile çalışan versiyonu hazırlanır.</p>
<p>Kısaca özetlemek gerekirse Delphi Prism, .NET Framework ve Visual Studio&#8217;dan yararlanıp Delphi dilini kullanarak masaüstü ve ASP.NET uygulamaları geliştirmenize imkan sağlıyor. Burada yayınlamak istediğim makale dizisini hazırlarken .NET Framework 3.5 ve Visual Studio 2008 kurulu bir makineden yararlanacağım. Delphi Prism&#8217;in deneme sürümünü aşağıda verilen adresten indirebilirsiniz.</p>
<p><a href="https://downloads.embarcadero.com/free/delphi_prism">https://downloads.embarcadero.com/free/delphi_prism</a> </p>
<p>Konuyu adım adım anlatmak için Oxygene&#8217;nin henüz Delphi Prism olmadan önceki halini RemObjects.com’dan indirip kuracağım. RemObjects.com’dan indirdiğim exe dosyayı çalıştırınca ekrana ilk olarak aşağıda verdiğim diyalog kutusu geldi.</p>
<p><a href="http://www.ceturk.com/images/oxygene_21.jpg"><img class="alignnone size-full wp-image-4232" src="http://www.ceturk.com/images/oxygene_21.jpg" alt="oxygene_2" width="500" height="380" /></a></p>
<p>Oxygene, Visual Studio’nun hem 2008 hem de 2005 sürümünü desteklemektedir. Başka bir deyişle Oxygene&#8217;i kurmak istediğiniz bilgisayarda Visual Studio 2005 varsa bundan yararlanabiliyor. Kurma işlemine devam etmek üzere <strong>Next</strong> düğmesini tıkladığınızda ekrana önce lisans haklarıyla ilgili diyalog kutusu gelmektedir. Devamında Oxygene’nin kurulacağı klasörün seçildiği diyalog kutusuyla karşılaşılmaktadır.</p>
<p><a href="http://www.ceturk.com/images/oxygene_32.jpg"><img class="alignnone size-full wp-image-4234" src="http://www.ceturk.com/images/oxygene_32.jpg" alt="oxygene_3" width="500" height="380" /></a></p>
<p>Verilen ekran görüntüsünden fark edeceğiniz gibi Oxygene, Delphi Prism olarak paketlenmeden önceki halinde varsayım olarak <strong>RemObjects Software\Oxygene</strong> klasörüne kurulmaktadır. Kurma işlemine devam etmek üzere Next düğmesini tıkladığınızda ekrana Visual Studio ile ilgili diyalog kutusu gelmektedir.</p>
<p><a href="http://www.ceturk.com/images/oxygene_41.jpg"><img class="alignnone size-full wp-image-4235" src="http://www.ceturk.com/images/oxygene_41.jpg" alt="oxygene_4" width="500" height="380" /></a></p>
<p>Verilen ekran görüntüsünden fark etmiş olacağınız gibi Oxygene ile birlikte ayrıca Visual Studio 2008’ın SP1’li kopyası gelmektedir. Bu sırada Oxygene kurmak istediğim bilgisayarda Visual Studio’nun 2008 sürümü olsaydı bu diyalog kutusundaki <strong>Install Visual Studio 2008 for Oxygene</strong> onay kutusu seçilemez durumda olurdu. </p>
<p>Verilen bu ekran görüntülerini dikkatlice incelediğinizde Oxygene’in .NET Framework’ün 3.5 sürümüne gerek duyduğunu fark ederseniz. Bu nedenle Oxygene kurmak istediğiniz bilgisayara önceden .NET Framework 3.5 kurmanız önerilir.</p>
<p><a href="http://www.ceturk.com/images/oxygene_53.jpg"><img class="alignnone size-full wp-image-4236" src="http://www.ceturk.com/images/oxygene_53.jpg" alt="oxygene_5" width="500" height="380" /></a></p>
<p>İşleme devam etmek üzere Next düğmesi tıklandığında ekrana aşağıdakine benzer bir diyalog kutusu gelmektedir. Bu ekran görüntüsünü aldığım sırada kullandığım bilgisayarda Visual Studio 2008 kuruluydu. Bu sırada kullandığım bilgisayarda Visual Studio 2005 kurulu olsaydı bu Visual Studio sürümünü temsil eden onay kutusu seçilebilir durumda olurdu. Oxygene uygulamalarını hangi Visual Studio sürümüyle geliştirmek istiyorsanız o sürümü veya sürümleri seçmelisiniz.</p>
<p><a href="http://www.ceturk.com/images/oxygene_65.jpg"><img src="http://www.ceturk.com/images/oxygene_65.jpg" alt="oxygene_6" width="500" height="380" /></a></p>
<p>Oxygene’i ile uygulama geliştirirken Visual Studio’nun 2008 sürümünden yararlanmak istediğim için bu diyalog kutusundaki <strong>Microsoft Visual Studio 2008</strong> onay kutusunu seçip işleme devam etmek üzere Next düğmesini tıkladım. Bir sonraki adımda konsolda derleme yapılırken kullanılacak derleyicinin arama yoluna dahil edilmesi ve pas uzantılı kod dosyalarının Oxygene’le açılması konusunda ayarlamalar yapılmaktadır.</p>
<p><a href="http://www.ceturk.com/images/oxygene_7.jpg"><img class="alignnone size-full wp-image-4238" src="http://www.ceturk.com/images/oxygene_7.jpg" alt="oxygene_7" width="500" height="380" /></a> </p>
<p>Kurma işlemine devam etmek üzere Next düğmesini tıkladığınızda size birkaç soru daha yöneltildikten sonra kurma işlemi kısa sürede tamamlanır. Oxygene kurulduktan sonra Başlat menüsüne Visual Studio 2008’i başlatan bir komut eklenmektedir. Daha önce işaret edildiği gibi Oxygene veya Delphi Prism kurulduktan sonra Visual Studio’nun <strong>New Project</strong> diyalog kutusuna Oxygene’le ilgili seçenekler olmaktadır. Oxygene uygulamalarını hazırlarken Visual Studio’dan yararlanmak istemiyorsanız kodunuzu Not Defteri gibi bir editörle hazırlayıp komut satırı derleyicisi ile derleme yapabilirsiniz. Bu derleyicinin yerini aşağıda görebilirsiniz.</p>
<p><a href="http://www.ceturk.com/images/oxygene_8.jpg"><img class="alignnone size-full wp-image-4239" src="http://www.ceturk.com/images/oxygene_8.jpg" alt="oxygene_8" width="491" height="253" /></a></p>
<p>Bu makalelerde Oxygene yerine elden geçirilip <strong>Delphi Prism 2010</strong> adıyla piyasaya verilen sürümü kullanmak istediğim için embarcadero.com’dan deneme sürümü indirip kurdum. Bir sonraki makalede temelden Delphi Prism’den söz etmeye başlayacağız.</p>
<p>Memik YANIK<br />
<a href="mailto:memikyanik@hotmail.com">memikyanik@hotmail.com</a><br />
<a href="http://www.memikyanik.net">www.memikyanik.net</a></p>
]]></content:encoded>
			<wfw:commentRss>http://www.ceturk.com/delphi-prism-ile-tanismak/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	<enclosure url="http://www.ceturk.com/images/oxygene_14.jpg" length="46987" type="image/jpg" />	</item>
	</channel>
</rss>

