5 Dkda değişir bütün işler...

Çarşamba, 29 Ekim 2008 11:17 by ikivanc
Yazmaya fırsat bulamadığım ve son zamanlarda büyük ses getiren teknolojik gelişmeler... Şimdi buradan duyurayım, test ettikten sonra tecrübelerimi paylaşırım :)

Visual Studio 2010 .NET 4.0 CTP
Visual Studio'nun 2010 versiyonu sanal makinede duyuruldu
http://www.microsoft.com/downloads/details.aspx?FamilyID=922b4655-93d0-4476-bda4-94cf5f8d4814&DisplayLang=en

IronPython 2.0 Visual Studio 2010 CTP

http://www.codeplex.com/IronPython/Release/ProjectReleases.aspx?ReleaseId=18448
IronPython
IronPython'ın yeni logosu

Silverlight Dynamic Languages SDK 0.4.0
http://www.codeplex.com/sdlsdk

IronPython 2.0 RC1
http://www.codeplex.com/IronPython/Release/ProjectReleases.aspx?ReleaseId=17404

ASP.NET MVC Beta
http://www.microsoft.com/downloads/details.aspx?FamilyId=A24D1E00-CD35-4F66-BAA0-2362BDDE0766&displaylang=en

Windows Azure
http://www.microsoft.com/azure/windowsazure.mspx

OSLO

http://msdn.microsoft.com/en-us/oslo/default.aspx

OSLO'nun Intellipad'ı IronPython ile kodlandı
http://blogs.msdn.com/intellipad/

PDC Konferansına gidemedim diye üzülmeyin :)
http://notatpdc.com/

Los Angeles'ta olması itibariyle bir de konferans için gang sign geliştirmişler ki çok güldüm :)
PDC Gang Sings

Parameter name: utcDate

Salı, 28 Ekim 2008 11:17 by ikivanc
Geçen günlerde karşılaştığım bir sorunun çözümünü buradan paylaşayım.

Sitemin RSS feed'ine tıkladığı zaman

Specified argument was out of the range of valid values.
    Parameter name: utcDate

hatasını veriyordu.

Bu problemin çözümü, blogengine ayarlarınızda saat diliminizin 0'dan farklı olması. Bu sorunda saat dilimini 0 yapmak sorunu gideriyor.
Tags:  
Categories:   Syntax Error
Actions:   E-mail | del.icio.us | Permalink | Yorumlar (1) | Comment RSSRSS comment feed

NBA Başlıyor... + Fener Geri Döndü...

Salı, 28 Ekim 2008 05:21 by ikivanc

Bu gece şampiyonların ilk maçları ile macera yeniden başlıyor :)

Seattle Supersonics’i satın alarak Oklahoma City’ye taşıyan Clay Bennet takımın logosunu ve adını değiştirdi. Artık Seattle yok, Oklahama City Thunders var. Takımda 2007-08 sezonu en iyi caylagi kevin durant'ın yanı sıra, desmond mason ve joe smith'ten baska goze batan oyunculari yok su an.

Umarım bu seneki çekişmeler geçen seneden daha iyi olur ve geceleri maç izlemek için uykusuz kaldığımıza değer :)

Son zamanlarda alınan çok kötü sonuçlar ve fenerbahçenin vasat futbolu yüzünden önümüzdeki birkaç yıldan ümidimi kesmiştim. Fakat Bursaspor maçındaki istekli ve güzel futbolu özellikle de futbolcuların gözündeki hırs bi nebze beni rahatlattı.

O maçta "Lugano'nun gözündeki o hırsı gördüm" ...

Biraz daha sabır...

Tags:   ,
Categories:   Fenerbahçe | NBA
Actions:   E-mail | del.icio.us | Permalink | Yorumlar (1) | Comment RSSRSS comment feed

İnceden Hatırlarım...

Pazartesi, 27 Ekim 2008 06:31 by ikivanc
İnceden Hatırlarım...

İnceden hatırlarım,
O eski dostlukları...
Şimdi herkes ayrı uçta,
Kaderini inkar eder...

Kimi yerer, kimi över...
her biri ilgi bekler...
aman abi, bulaşılmaz;
yalnızlık paylaşılmaz,
herkesle kaynaşılmaz...

         Duman - Yalnızlık Paylaşılmaz...
Tags:  
Categories:   FotoRoman
Actions:   E-mail | del.icio.us | Permalink | Yorumlar (2) | Comment RSSRSS comment feed

IronPython WPF Entegrasyonu

Pazar, 26 Ekim 2008 01:20 by ikivanc

IronPython Studio da veya Visual Studio da WPF geliştirmek istediğiniz zaman;

"Unknown build error, 'Object reference not set to an instance of an object.'"

hatasını alırsınız bunun çözümü:

%SystemRoot%\Microsoft.NET\Framework\v2.0.50727\CONFIG\machine.config

dosyasını istediğiniz text editörü ile açarak ya da direkt çalıştır'a yazıp çalıştırarak <configuration> kök dizininin içerisine;

<system.codedom>
  <compilers>
    <compiler language="py;IronPython" extension=".py" type="IronPython.CodeDom.PythonProvider, IronPython, Version=1.1.0.0, Culture=neutral, PublicKeyToken=4afbdc4d950a9602" />
  </compilers>
</system.codedom>

kodunu kopyalıp yapıştırın ve kaydedin.

Şimdi Projelerinizi tekrar denediğinizde WPF uygulamanız sorunsuzca çalışacaktır.

Bu işlemi yaptıktan sonra IronPythonda, ASP.NET projeleriniz derlenirken başka bir hata daha alıyoruz. Bunu düzeltmek için de bu eklenen kodun çıkarılması gerekiyor.:) böyle de bir muamma söz konusu şimdilik. Umarım yakın zamanda bu sorunu çözerler ve sizlerle paylaşırım.

WPF Çalışmalarınızda kolay gelsin...

IronPython ASP.NET Entegrasyonu

Pazar, 26 Ekim 2008 01:02 by ikivanc
Daha önceki yazılarımdan da hatırlayabileceğiniz gibi Ironpython'ın pek çok kullanım alanı vardı. Bunlardan Asp.Net entegrasyonunu inceleyeceğiz.
 
Öncelikle http://www.asp.net/downloads/futures/default.aspx adresinden siteye erişerek Asp.net'in eklenebilir özellikleri hakkında buradan bilgi alabilirsiniz.
buradan da Asp.net'te IronPython entegresyonu için gerekli olan eklentiyi indirebilirsiniz.
 
IronPython'ı Asp.net ile kullanmak çok büyük avantajlar elde etmemizi sağlayacak. Bunlardan en önemlisi zaman/performans. Özellikle küçük scriptler için atayacağımız eventları kısa python kodları ile daha hızlı bir şekilde hazırlayabileceğiz.
 
Solution Explorerde projelerimizde neler var onları inceleyelim şimdi de

                  IRONPYTHON                                                             C#
IronPython projemiz açıldıktan sonra proje klasörümüzde "bin" klasörü "default.aspx" sayfamız "Global.py" dosyamız ve "Web.config" dosyalarımız otomatik olarak oluşturulmakta

"bin" Klasörü
Web uygulumamazın IronPython ile sorunsuzca çalışması için geresinim duyduğu dll kütüphaneleri bulunmakta ve sunucudan bunlardan faydalanarak Asp.net uygulamasını göstermeye yardımcı olur.

Default.aspx
Asp.Net web uygulamamızın anasayfasını oluşturur. Code-Behind şekilde çalıştığı için arka plandaki kodlar Default.aspx.py dosyasında bulunur.

Global.py

Web Uygulamamızın bazı durumlarda sergileyeceği tavırları belirler. İçerisinde aşağıdaki durumlar tanımlıdır.

def Application_Start(): #Uygulama başladığında çalışan kod
    ' Code that runs on application startup'
    pass
def Application_End(): #Uygulama sonlandırıldığında çalışan kod
    ' Code that runs on application shutdown'
    pass

def Application_Error(app, e): #hata oluştuğunda çalışan kod
    ' Code that runs when an unhandled error occurs'
    pass

def Application_BeginRequest(app, e): #istem yapıldığında çalışan kod
    ' Code that runs at the beginning of each request'
    pass

def Application_EndRequest(app, e): #istem sonlandığında çalışan kod
    ' Code that runs at the end of each request'
    pass

web.config
Asp.Net Sayfalarında bulunan ve web uygulamamıza ait tüm özelliklerin ve ayarların bulunduğu sistem dosyasıdır.
 
C# Asp.Net projesi ile aralarındaki farklar neler?
C# projesinde bulunamayan bin klasörü ve global.py dosyası bulunmakta. DLL. kütüphaneleri ve global.py 'da uygulama kodlarının bulunması dikkat çekiyor

Genellikle yapılır IronPython - C# kod karşılaştırmaları ve C#'ın süslü parantezleri her biri birer satıra yazılarak aralarındaki satır farkından/ kod uzunluğundan bahsedilir fakat benim buradaki örnekleri yazmamda temel amaç kodlar arasındaki farkı görmeniz ve C#'ı bildiğinizi farz edip bu sayede python dilinin yapısını kavramanızı kolaylaştırmak.

Şimdi de basit birer örnekle başlayalım:
Sayfamızda bir label ve bir buttonumuz var ve sayfa yüklenirken buttonun text'i "tikla" diye değişiyor sayfanın başlığı da hangi dilde ise onun deneme başlığını atıyor ve button'a da tıklandığında label'ın text'i "tiklandi" diye değişiyor.

C#
public partial class _Default : System.Web.UI.Page
{
    protected void Page_Load(object sender, EventArgs e)
    {
        Button1.Text = "Tikla";
        this.Page.Title = "C# Deneme";
    }
   
    protected void Button1_Click(object sender, EventArgs e)
    {
        Label1.Text = "Tiklandi";
    }
}
 
IronPython
def Page_Load(sender, e):
    Button1.Text = 'Tikla'
    Page.Title = 'IronPython Deneme'
   
def Button1_Click(sender, e):
    Label1.Text = 'Tiklandi'

Ayrıca IronPython projesinde kodlarda standart kütüphaneleri import etmeye gerek kalmıyor. C#ta hepsini tek tek yazmamız gerekiyor. IronPythonla uğraştıkça daha çok seveceksiniz kod yazmayı. Bu yazımızda Visual Studio 2008'e IronPython nasıl entegre edilir onu gördük ve C# asp.net projesi ile aralarındaki farklar nelerdir onlardan bahsettik. Sormak istediğiniz ve düzeltmek istediğiniz yerleri ibrahim.kivanc@msakademik.net  mail adresine iletebilirsiniz.

Tags:   ,
Categories:   Asp.Net | IronPython
Actions:   E-mail | del.icio.us | Permalink | Yorumlar (0) | Comment RSSRSS comment feed

IronPython Studio Kurulumu

Perşembe, 23 Ekim 2008 15:29 by ikivanc
IronPython Studio, IronPython kodlarını derlemek için kullanılan ,Tıpkı "Visual Web Developer 2008 Express" gibi spesifik ihtiyaç için üretilmiş bir geliştirme programıdır. Visual Studio Tabanına çalışan ve ücretsiz olan bu sürüm sayesinde rahatlıkla temel geliştirmeleri yapabiliyoruz.

IronPython hakkında çok fazla kaynak olmaması , genellikle yapılan yükleme sıralama hatalarından dolayı, yüklenen IPy Studio'yu açmaya çalıştığımızda
"Cannot find one or more components. Please reinstall the application" hatasını alırız. Bu sorunun çözümü için;
 
Visual Studio 2008 'e ilk önce VS Shell isolation'ı indirip kurmanız gerekmekte burada yaklaşık 380 MB büyüklüğünde bir dosya VS Shell eklentisini kurduktan sonra kurulum yaptığı dizini açın
 
Yüklenen dizinde bulunan "vs_shell_isolated.enu" kurulum dosyasını çalıştırarak sisteminizi IronPython Studio için hazır hale getirin.
 
VisualStudio için yüklenen bu eklentiden sonra şimdi IronPyton'ı kurabiliriz.
Bunun için:
http://www.codeplex.com/IronPythonStudio adresinden isolated kurulum dosyasını indirip bilgisayarımıza kuralım.

Bu sıra ile kurduktan sonra hata mesajı almadan rahatlıkla çalıştırabiliriz IronPython Studioyu.

 Daha önceden de visual studio ile geliştirme yaptıysanız çok rahatlıkla kullanabilirsiniz.

Burada
Windows Application
Class Library
Console Application
WPF Application  geliştirmeleri yapabiliriz.

Yalnız "WPF Application" geliştirmeye çalıştığımızda yine bir hata mesajı alıyoruz. Bunun çözümü ve IronPython'ın kullanımını sonraki yazılarımda detaylarına ineceğim.

ÖZETLE 
Burada IronPython Studio kurulumunu gördük,takıldınız yerleri ve düzeltmek istediğiniz yerleri  ibrahim.kivanc@msakademik.net mail'imden bana ulaşabilirsiniz.

IronPython Giriş

Perşembe, 23 Ekim 2008 14:16 by ikivanc
Öncelikle ironpython (bundan sonra bazı yerlerde IPy kısaltmasını kullanacağım) hakkında yeterli bilginiz yoksa, Buradan ilk ironPyhton tanıtım makalemi incelemenizi tavsiye ederim. Bir python programlama temelinizin var olduğunu varsayarak konulara devam edeceğim ve python konularındaki temel makalelerim için

Python Programlama I - Giriş
Python Programlama II - Temel Yapılar  
Python Programlama III - Fonksiyonlar
Python Programlama IV - GUI
Python Programlama V - Döngüler
yazılarımı inceleyerek bu işe başlayabilirsiniz.
Öncelikle IronPython'ın Visual Stuido ya entegre edildikten sonra nasıl göründüğüne bakalım. Entegrenin nasıl yapılacağını buradan inceleyebilirsiniz.


Gördüğünüz gibi projede IronPyhton sekmesi bulunmakta.
Daha önce Visual Studioda çalışmışlığınız varsa, normal proje oluşturur gibi bir proje oluşturacağız ve .Net platformunda Python kodları ile geliştirme yapacağız. Windows altında Python kodlama yapanlar için cennet müjdesi gibi bir olay bu çünkü, bire bir grafik arayüzlü geliştirme python programlama dilinde çok sıkıntı verici bir iş. Hele bunu Qt ile , BOA isminde IDE'siyle ya da konsolda tkinter kütüphanesi, wx kütüphanesi kullanarak yapmak çok sıkıntı verici; Özelikle de uygulamalarınızı .exe uzantılı dosyalara çevirirken ve diğer son kullanıcıların kullanımına sunarken gerçekten de çok sıkıntılı bir iş...
Artık son buldu... Şimdi başlayalım:
Öncelikle daha önce visual studio kullanmayanlar için bir proje nasıl açılır nelere dikkat edilmesi gerekiyor onları inceleyelim.
File>New>Project'ten gelecek ekranda göreceğeniz gibi IronPython sekmesi gelecek;





Bu sekme altında
Windows Application
Class Library
Console Application
WPF Application olmak üzere bölümler oluşacak. IronPythonla ayrıca Silverlight, ASP.NET sayfalarında da çalışıyor ve ileriki yazılarda da bu entegrasyonlar nasıl yapılır ve nasıl çalışır bunları da göreceğeniz.
Buradan Windows Application'ı seçiyoruz ve Adını ikivanc_Ders1 olarak değiştiriyoruz. Ve Devam ediyoruz.
Temel olarak aşağıdaki görüntüde görebileceğiniz gibi Solution Explorerda projemiz görünmekte. "From1.py" ve "Program.py" den oluşmakta temel olarak.

Gördüğünüz gibi VS2008(Visual Studio 2008) de bir form ortada ve diğer bölümleriyle birlikte bulunmakta. Öncelikle VS2008'i tanıyalım

ToolBox
GUI Bileşenlerin Bulunduğu ve sürükleyip form üzerine bıraktığımızda eklenen componentlar.
(Ctrl+Alt+X) Tuş kombinasyonu kısa yoludur, bunu tıklayarak ekrana getirebilirsiniz.

Solution Explorer

Projede bulunan kaynak kodları ve gereksinim duydukları diğer kodlar burada yer alır ve çift tıklanılarak düzenlenebilir.
(Ctrl+Alt+S) Tuş Kombinasyonu kısa yoludur.


Properties
Componentların, Form ve Formdaki nesnelerin özelliklerini değiştirebileceğiniz, direkt codebehindda tanımladan buradan hızlıca tanımlayabilmenizi sağlayan paneldir.
(F4) tuşu kısa yolu tuşudur.

Server Explorer
Veritabanına ulaşmak için kullanılan birimdir. Veritabanıyla alakalı işlemlerinizi, tablo oluşturma, stored procedure oluşturma ve buna benzer veritabanı işlemlerini(Ctrl+Alt+S) Tuş Kombinasyonu kısa yoludur.

Programımızı çalıştırmak için:
(F5) kısayol tuşu ile veya Debug>Start Debugging menüsünden uygulamanızı çalıştırabilirsiniz.



Programı çalıştırdıktan sonra otomatik olak uygulamanın exesi, proje klasöründe oluşturulur. Proje Klasörünün içerisinde "bin" klasör ve onun içersindeki "Debug" klasörü içersinde exe dosyamız oluşturulmuş durumda.
 

Bu yazıda ironpython'ın genel yapısını, visual studiodan erişimini ve visual studio'nun temel kullanımını gördük. Özellikle visual studio'yu daha önce kullanmamış python kullanıcıları için mümkün mertebe basit ve geliştirme için gerekli bilgileri adım adım görüntülü vermeye çalıştım. Takıldınız yerleri ve düzeltmek istediğiniz yerleri  ibrahim.kivanc@msakademik.net mail'imden bana ulaşabilirsiniz.

IronPython Kullanım Alanları

Çarşamba, 22 Ekim 2008 07:29 by ikivanc
IronPython, python'un .net'e geçmesiyle nerelerde kullanıldığına bir göz atalım.

    * Silverlight
    * WPF
    * ASP.NET
    * The Microsoft Robotics Kit
    * XNA
    * SharePoint

Silverlight
Silverlight'ın Dinamik programalama dillerine destek vermesi ile IronRuby ve IronPythonkodlarını kullanarak rahatlıkla web browserlarda geliştirme yapmanıza yardımcı oluyor.
 
WPF
XAML teknolojisi sayesinde görsel tasarım ve kodlamanın birbirinden ayrılmasıyla tanınan WPF'te de kod kısmında IronPython kodları çalışmakta.
 
Asp.Net
Asp.Net ile web development kısmında ironpython kodlarını kullanabilir. Bu sayede hem kısa hemde çok basitçe hızlı projeler geliştirebilirsiniz.
 
The Microsoft Robotics Studio
Microsoft'un çeşitli donanım platformalarının robotik alanında uygulamalar geliştirilmesine yardımcı olan bir geliştirme platformudur. IronPython , Robotic Studio'da da geliştirme sağlamaktadır.
 
XNA
XNA 3D ve oyun geliştirme ortamında da kullanılan IronPython Dinamik bir dil olmasının avantajını kullanarak ileriki zamanlarda bu oyun geliştirme platformunda göz bebeği olmaya aday.
 
SharePoint
IronPython, yeni çıkan ve çok büyük bir geleceği olacağı şimdiden görülen SharePoint ile de geliştirme imkanı sağlamaktadır.

"C#, visual Basic varken IronPython'ı neden kullanayım ki?"
Bu aklınıza geliyorsa bunun için pek çok sebep var... Python Programlama dili dinamik bir dildir. C# ve VB ise statik.Dinamik bir programalama dili olması bazı projelerde size çok çok büyük avantajlar sağlamakta,örneğin tip tanımlaması yapmanıza gerek kalmamakta fakat statik dillerde ilk başta tanımlamak zorundasınız. Daha pek çok artısı var dinamik dillerin. Buna bize sağlayacağı somut faydaları sonraki yazılarımda bulabileceksiniz.
 
Yukarıdaki tüm alanlarda IronPython örneklerini ve uygulamalarını burada bulabileceksiniz.

IronPython v2.0 Beta 5

Pazartesi, 20 Ekim 2008 16:11 by ikivanc

IronPython'ın versiyon 2.0 Beta 5 duyuruldu. Bu yeni sürümünde, önceki sürümünde bulunan yüzlerce bug düzeltilerek indirmeye sunuldu. Beta 5 IronPython 2.0 için planlanan son beta versiyonu ve bundan sonra RC1 (Relase Candidate 1) hazır olacak ve bizi kararlı halinde hoş yenilikler karşılıyacak.

Bazı değişiklikler IronPythonda gözlemleniyor; System namespaces'inde bulunan tüm DLR tipleri Microsoft içerisine taşındı bu sayede .Net 3.5 Framework C# içerisine gömülen IronPython kodları sorunsuzca çalışacabilecek. IPy kodlarını derlerken çoğu zaman aldığınız CS1685 kod hatası da düzeltilen sorunlar arasında. .Net 2.0 SP1 üzerinde de çalışmaya devam edecek... Bunlar ilk planda göze takılanlar.

Eğer IPy 2.0 Beta 4 kurulu ise bunu kaldırıp daha sonra beta 5'i kurmanız kurulumunuz için daha sağlıklı olur.

IPy 2.0 Beta 5'i buradan indirebilirsiniz.
Tags:  
Categories:   IronPython
Actions:   E-mail | del.icio.us | Permalink | Yorumlar (0) | Comment RSSRSS comment feed