3. Mustafa Haluk YILMAZ
LKD – Linux Kullanıcıları Derneği
Seminer Görevlisi
E-posta Adresim:
haluk_tr@live.com
Web Adresim:
www.halukyilmaz.net.tr
4. Bugün Neler Göreceğiz?
• Kısaca Linux teknolojisi
• .net Teknolojisi ve Bileşenleri
• Nedir bu Mono ?
• Birde Monodevelop
• Neden C# Programlama Teknolojisi
• Cross-Platfrom Programlama Tekniği
• Mono bize ne kazandırır?
• Peki biz Mono’ya ne kazandırırız?
• Açık Kaynak işletim Sistemi
• Katılabileceğimiz Open Source Projeler
5. Linux Teknoloji
Kahramanımız Tux :) LinuX Neydi?
• İşletim Sistemimiz
• Ücretsiz
• Paket Programlarımızda öyle
• Hep Yanımızda
• Açık Kaynak
• Sınırsız Çoğaltma özelliği
• Kişiselleştirebilinir
• Geliştirebilinir
• .net yüklenebilinir
7. Neden .NET Teknolojisi
• Çok yeni bir teknoloji. Gelişen bir teknolojide
• Bir araya getirebilme özelliği
Ada(A#), AsmL, Assemblyi VB.net, Boo, C, C++, Caml(F#),
Fortran, Haskell, Java, Jscript, Lisp, Logo,Pascal, Perl, Php,
Python(!) … 30+ Dahili Yazılım Geliştirme Dili
• İstediğini Geliştir. Özgürlük burada..
• Birkere yaz heryerde Çalıştır !
• Zengin .NET İşlevsel Kütüphaneleri
• Devasa kaynaklar; MSDN Libary ve Open
Source : Codeproject, Codeplex ..
8. .NET Nerede?
• .NET is Everywhere ( Sorry Java :)
• MultiMedia Platforms; XNA, Banshee, F-Spot
• Web Applications; Aspx, Blogs, engines DNN
• Cross Platform Technology; WinNt, Linux, Mac
• Visual Experience Web Applications; SL, Ajax
• Next Generation Platforms : WPF, WCF, CS
• Singularity %100 .NET Operating SyS (C#)
• Micro & Mobil Platforms : G. Android, IPhone
14. C# Programlama Teknolojisi
• MONO Framework , Mono CLR ve hatta Singularity
İşletim Sistemi dahil birçok kompleks Projeler
C# Programlama teknolojisi ile geliştirildi.
• Gelişen, Güçlü ve birçok yazılım geliştirme mimarisini
destekler ( OOP, SOA, RIA vb..)
• Platform bağımsız olsa da bağımlı idi..
• Kolay, Hızlı & Eğlenceli..
• 3.0 ile Entegre database sorgusu..
• 4.0 ile Dynamic özelliği
15. Mono’da Özgür C#
• Mono 2.4 versiyonu ile C# 1.1 , 2.0 & 3.0
versiyonlarını desteklemektedir.
• Artık Mac PC ler hatta IPhone telefonlar için code
yazabiliriz!..
• Linq dahil tüm anonim tipler, metodlar, jenerikler
kısacası tüm .NET kütüphanelerine sahip..
• Peki Performans?
– 10.000 Satır @ 2001 => 17 saniye
– 82.000 Satır şimdi 2.2 saniye
17. Neden Mono?
Platform
Bağımsız
Ekonomi Özgür
Yeni
Performans
Vizyonlar
18. Mono
• Proje Nisan 2001 Yılında Miguel de Icaza tarafından
başlatıldı. Destekci Firma Xiliman & Novell dir
• Tamamen C# ile geliştirildi ve ECMA özgür
standartlarından dolayı sorun yaşanmadı..
• Mono Projesinin en güzel yanı önceki sunumlarda
bahsettiğim teknolojileri zorluk çekmeden Linux
Platformunda geliştirmek demek..
• Mono, Microsoft .NET ile aynı teknik altyapıyı
kullanmaktadır ve birbirleri tarafından derlenmiş .NET
binary birbirlerine ait CLR tarafından
çalıştırılabilmektedir.
• Open Source, tüm versiyonların kodları mevcut..
19. Mono Platformları
• Mono projesi ile,
– Linux, Unix , Solaris, MS Windows , MacOS işletim Sistemlerinde..
– Playstation III, XBOX 360, Wii Oyun Konsollarında..
– IPhone, Google Android gibi mobil ortamlarda sınırsız .net uygulamaları..
• Platform bağımsızlığı geliştiricilere teknoloji ve
özgürlüğü beraberinde getirmektedir..
• Mono ile .net yeni bir vizyon.
• Performans
• Yeni Özellikler
20. Mono Framework işleyişi
• C# / .NET Compiler ile C# 3.0 dahil tüm .NET dillerini
derleyebilme CLI sayesinde ortaklaşa çaluşabilme potansiyeli
• Mono Runtime Derlenen kodu Native( çalıştırabilinir )
makine koduna çeviren katman..
• Base ClassLibrary Mono çatısının geliştiricilere birbaşka
süprizi.. Bu sınıf mimarisi sayesinde geliştiriciler sorunsuz
şekilde .net kütüphanelerini kullanabilmektedirler
• Mono Class Libary Mono sisteminin bir başka süprizi, .NET
kütüphanelerinde olmayan özellik ve güçleri projelerimize
entegre edebilme bu sayede özgür platformlarda
geliştirebilmemiz dahil birçok yeniliği sunuyor!..
Gtk+, Zip files, LDAP, OpenGL, Cairo, Mozilla vb..
21. MonoDevelop
• Geçtiğimiz ay 2.0 versiyonu çıkmıştır..
• C# Java ve diğer .NET dillerini derleyebilir..
• IntelliSense özelliğine sahip.
• Linux’ta Mevcuttur.
• Live CD versiyonları sayesinde gittiğimiz
heryerde C# & .NET uygulamaları
geliştirebiliyoruz!
• Gene Ücretsiz ve gene Kodlarımız Açık..
22. En Kolay Nerede Geliştirim?
• Linux (Debian) Ubuntu Dağıtımında
• OpenSuse Live Mono CD’si ile heryerde yanımızda
• Microsoft Platformunda Sharpdevelop 2.2 ile ve
yakında Monodevelop ile geliştirebilme imkanı
• Microsoft Windows Platformu için gerekenler
– Mono 2.0 & GTK Paketleri
– SharpDevelop 2.2 Geliştirme Aracı
25. Mono ile Geliştirilen Teknolojiler
• Mono Linux’un Artık Bir Parçası..
• Ödül Kazanan 3D geliştirme Ortamı
• MultiMedia Oynatıclar
• Takvim, UML, Yazılım geliştirme Uygulamaları.
• MS Teknolojolieri Linux Entegerasyon projeleri
– Bunlardan bazıları, MoonLight, MoonShine
31. Web uygulamaları
• Mono @ Dinamik Web Uygulamaları
• En güzel yönü Ekonomi..
• Server’da Virüs, malware gibi sorun çıkartan
yazılımlara yer yok
• Ağır .NET kütüphanesi yerine web için
optimize edilmiş Mono kütüphaneleri
36. Mono “Dökümantasyon”
• MonoDoc ile yüzlerce örnek kod satırı sunan
bir sistem sayesinde sıkıntı çekmeden Özgür
Platformlar üzerinde yazılım geliştirebilme.
• MSDN Kütüphanelerini kullanabilme
• Mono Geliştiriciler Topluluğu Kaynakları
• Açık kaynak mono Projeleri SDK Dökümanları
37. Kişisel Gelişim İçin
• Mono Resmi Sitesi & Blog
http://www.go-mono.com/monologue/
• Mono Online Kütüphane Servisi
• http://mono-project.com/Monodoc
• Umarım İşinize yarar
APRESS Yayınlarından
Pro C# 2008
&
Practical Mono
38. Mustafa Haluk YILMAZ
E-posta:
haluk_tr@live.com
Dernek Adresimiz:
www.lkd.org.tr
Web Adresim:
www.halukyilmaz.net.tr