mono teknolojileri seminerim 2009

40
{ LinuX } Development .NET Technology with Mono Framework on Linux Mustafa Haluk YILMAZ [Seminars Online Version]

Upload: haluk-yilmaz

Post on 20-Jul-2015

457 views

Category:

Technology


0 download

TRANSCRIPT

Page 1: Mono Teknolojileri Seminerim 2009

{ LinuX }Development .NET Technologywith Mono Framework on Linux

Mustafa Haluk YILMAZ[Seminars Online Version]

Page 2: Mono Teknolojileri Seminerim 2009

Mono Teknolojileri Seminerine

Seminerimiz Başlıyor

Page 3: Mono Teknolojileri Seminerim 2009

Mustafa Haluk YILMAZLKD – Linux Kullanıcıları DerneğiSeminer Görevlisi

E-posta Adresim:

[email protected]

Web Adresim:

www.halukyilmaz.net.tr

Page 4: Mono Teknolojileri Seminerim 2009

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

Page 5: Mono Teknolojileri Seminerim 2009

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

Page 6: Mono Teknolojileri Seminerim 2009

MONO FRAMEWORK

Page 7: Mono Teknolojileri Seminerim 2009

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 OpenSource : Codeproject, Codeplex ..

Page 8: Mono Teknolojileri Seminerim 2009

.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

Page 9: Mono Teknolojileri Seminerim 2009

Mimarisi

Çekirdek Mimari

Page 10: Mono Teknolojileri Seminerim 2009

Mono Mimarisi

Mono CORE .NET CORE

Page 11: Mono Teknolojileri Seminerim 2009

Farklı Kültürler Zenginliktir

Page 12: Mono Teknolojileri Seminerim 2009
Page 13: Mono Teknolojileri Seminerim 2009
Page 14: Mono Teknolojileri Seminerim 2009

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

Page 15: Mono Teknolojileri Seminerim 2009

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 codeyazabiliriz!..

• 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

Page 16: Mono Teknolojileri Seminerim 2009

ve Mono Framework Teknolojisi

Page 17: Mono Teknolojileri Seminerim 2009

Neden Mono?

Platform Bağımsız

Özgür

PerformansYeni

Vizyonlar

Ekonomi

Page 18: Mono Teknolojileri Seminerim 2009

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..

Page 19: Mono Teknolojileri Seminerim 2009

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

Page 20: Mono Teknolojileri Seminerim 2009

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şkasü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..

Page 21: Mono Teknolojileri Seminerim 2009

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..

Page 22: Mono Teknolojileri Seminerim 2009

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ı

Page 23: Mono Teknolojileri Seminerim 2009

Mono Live

Mono Live-CD & Monodevelop 2.0

Page 24: Mono Teknolojileri Seminerim 2009

Mono Uygulamaları Nerde Çalışır?

Mono Framework

Desktop Web Mobile

Page 25: Mono Teknolojileri Seminerim 2009

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

Page 26: Mono Teknolojileri Seminerim 2009

Unity Technologies

Page 27: Mono Teknolojileri Seminerim 2009

Masaüstü Uygulamaları

Banshee Multimedia Oynatıcı

Page 28: Mono Teknolojileri Seminerim 2009
Page 29: Mono Teknolojileri Seminerim 2009

F-Spot

Page 30: Mono Teknolojileri Seminerim 2009
Page 31: Mono Teknolojileri Seminerim 2009

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

Page 32: Mono Teknolojileri Seminerim 2009
Page 33: Mono Teknolojileri Seminerim 2009
Page 34: Mono Teknolojileri Seminerim 2009

Zengin İçerikli Web Uygulamaları

Page 35: Mono Teknolojileri Seminerim 2009

MultiMediaMono

Page 36: Mono Teknolojileri Seminerim 2009

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ı

Page 38: Mono Teknolojileri Seminerim 2009

Mustafa Haluk YILMAZ

E-posta:[email protected]

Dernek Adresimiz:www.lkd.org.tr

Web Adresim:www.halukyilmaz.net.tr

Page 39: Mono Teknolojileri Seminerim 2009

Teşekkürler...

Soru - Cevap

Page 40: Mono Teknolojileri Seminerim 2009

Linux Kullanıcıları Derneği

Pamukkale Üniversitesi 2009

Mustafa Haluk YILMAZ© 2009 ..

www.HalukYILMAZ.net.tr