Sunum yükleniyor. Lütfen bekleyiniz

Sunum yükleniyor. Lütfen bekleyiniz

HOŞGELDİNİZ  C# 2.0’ A GİRİŞ TAYFUN YİRDEM

Benzer bir sunumlar


... konulu sunumlar: "HOŞGELDİNİZ  C# 2.0’ A GİRİŞ TAYFUN YİRDEM"— Sunum transkripti:

1 HOŞGELDİNİZ  C# 2.0’ A GİRİŞ TAYFUN YİRDEM

2 NEDEN BU EĞİTİMİ DÜZENLEDİK?
Kursların fiyatları oldukça yüksek Kitaplardan çok çektik!!! Bilgiyi paylaşmak  Üniversitelerimizde C# dersi açılmadı Yarışma!!! Bence güzel bir etkinlik 

3 SİZ NEDEN BU EĞİTİME KATILMAK İSTEDİNİZ?
Beklentileriniz Programlama bilginiz Programlamaya olan ilginiz Prog. geleceği hakkındaki düşünceleriniz İngilizce bilginiz İstekleriniz

4 C# 2.0’ A GİRİŞ İÇERİK (kaynakça) Microsoft, IBM,
Sun Microsystem (JAVA), Bell Labs, Google

5 NEDEN C# Microsoft <>Açık Kaynak İş bulma olanakları
Tek bir dil ile “Windows, Web, Mobil, Servis” Linux   MONO projesi Microsoft’ un büyük çaptaki ilk AR-GE ürünü Microsoft’ un AR-GE geçmişi? Geleceğin teknolojileri ???

6 GÜNÜMÜZDE BİLGİSAYARLAR?
Hesaplamalar yapabilr 4 + 5 9 Mantıksal kararlar verebilir A=4, B=5 ise A < B İnsanoğluda bunu yapabilir, Sadece birkaç trilyon kat daha yavaş

7 GÜNÜMÜZDE BİLGİSAYARLAR?
Bilgisayar programları / Yazılımlar Bilgisayarlar aptaldır, onları akıllı kılan komutlardır Bu komutların bütününe de program denir Bilgisayar siz ne derseniz onu yapar Donanım Bir bilgisayar sisteminin fiziksel düzeneği Somut kısım

8 GÜNÜMÜZDE BİLGİSAYARLAR?
Bir bilgisayar 6 temel üniteden oluşur. 1)Veri girişi sağlayan birimler Fare, klavye, mikrofon 2)Veri çıkışı sağlayan birimler Yazıcı, monitör, hoparlör 3)Bellek birimleri RAM  Çalışma sırasında henüz kaydedilmemiş olan verileri saklar

9 GÜNÜMÜZDE BİLGİSAYARLAR?
Bir bilgisayar 6 temel üniteden oluşur. 4) Aritmetik ve mantık birimi  ALU Hesaplamalar yapan, kararlar verebilen birim 5) İşlemci Diğer tüm aygıtların işlemlerini yönetir 6) İkincil bellek birimi Sabit disk, disket sürücü Hard=sağlam, floppy= güçsüz

10 PEKİ YA GEÇMİŞTE?

11 1940larda BİLGİSAYARLAR İlk elektronik bilgisayarlar ortaya çıktı.
Devasa yapıda aygıtlar Hesaplama yapmak ve makinelerin bakımı çok zor “Bug” terimi nasıl ortaya çıktı. Harvard UNIV. Mark II Aiken Calculator? Yoksa debugging ile ilişkisi mi var Makine dili ile programlama

12 1940larda BİLGİSAYARLAR Birinci nesil programlama dilleri yaratıldı.
Makine dili  Bilgisayar bileşenlerinin doğal dili Analog Kesintisiz iletim Ses kayıt bandına kayıt yapmak Dijital Bilgi parçalara ayrılır / kesik kesik 0 ve 1 kullanılır 0  Düşük voltaj 1  Yüksek voltaj CD’ye ses kaydetmek

13 1940larda BİLGİSAYARLAR Birinci nesil programlama dilleri yaratıldı.
Makine dili  Bilgisayar bileşenlerinin doğal dili Her makine kendi makine dilini kullanır Machine dependent, yani onlara bağımlısınız

14 1940larda BİLGİSAYARLAR TEMEL PROBLEMLER
Çok zaman alan ve hata yapma riskinin yüksek olduğu programlama yöntemi Yüksek seviyede donanım bilgisi gerektirir Çok detaylı işlemler yapılır Her bilgisayar ailesi kendi dilini kullanır Standart yok Yeni bir dile adapte olmak güç

15 1940-1950’lerde BİLGİSAYARLAR
2. Nesil programlama dili ASSEMBLY  çevirme İnsan hafızası simgeleri daha kolay saklar Bu nedenle bir çeşit anımsama yöntemi olan mnemonics kullanıldı  ADD, LOAD Çeviriciler tarafından makine diline çevrilirler Her bir komut asgari yapıdadır  Düşük seviyeli dil Assembly de programlamayı yeterince kolaylaştırmadı

16 1955lerde BİLGİSAYARLAR 3. Nesil Diller FORTRAN  ilk yüksek seviyeli dil Assembly diline göre daha anlaşılır ifadeler içerir Programcılar makineden bağımsız olarak çalışabilir hale geldi Öğrenmeyi, yazmayı,ve hataların ayıklanmasını oldukça kolaylaştıran diller. Gereksiz ayrıntılar yerine uygulamaya yoğunlaşma Mühendislikte bilimde birçok sayısal ağırlıklı problemin çözülmesini sağladı

17 1955lerde BİLGİSAYARLAR 3. Nesil Diller FORTRAN  ilk yüksek seviyeli dil Dilin kendi yapısı içinde genel matematiksel hesaplar barındırıldı  “+”, “-”, “/”, “*” Derleyiciler ile makine diline çevrilirler Algol 58 Fortrandan geliştirildi Cobol iş matematiği için kullanılmaya başlandı BASIC programcılığa yeni başlayanlar için yaratıldı LISP yapay zeka uygulamaları için geliştirildi EN ÖNEMLİSİ İnsanlar bilgisayarlar ile inglizce konuşmaya başladı

18 1955lerde BİLGİSAYARLAR 3. Nesil Diller FORTRAN  ilk yüksek seviyeli dil x = a * b + c Hafızanın A adresindeki değeri al, ALU’da bir “register”e yükle; Hafızanın B adresindeki değeri al, yukardaki değerle(“A”) çarp ve sonucu aynı “register”de tut. Hafızanın C adresindeki değeri registerdeki değere (A * B) ekle. Registerdeki değeri (A * B + C) hafızanın X adresine koy.

19 1955lerde BİLGİSAYARLAR X = A * B + C  Makine Diline Çevirelim
(A’daki değeri reg. yükle) Hex: (B’deki değerle çarp) Hex: (C’deki değeri reg. ile topla) Hex: (Registerdeki değeri X’e taşı) Hex: MOV A, ACC MUL B, ACC  ASSEMBLY’ye çevirince ADD C, ACC STO ACC, X

20 1955lerde BİLGİSAYARLAR Structured Programlama kavramı ortaya çıktı
Edsger Dijkstra, Ole-Johan Dahl, CAR Hoare. Niclaus Wirth  Pascal Algol üzerine modellendi Goto kaldırıldı Herşeyin bir türü olması sağlandı Prosedür içinde prosedür mantığı ortaya çıktı Ağırlıklı olarak öğretim programları için tasarlandı

21 1960lerde BİLGİSAYARLAR Structured Programlama kavramı ortaya çıktı
Simula, Dahl, Nygaard ( Norway ) Nesne, sınıf (class), alt sınıflardan ilk defa bahsedildi

22 1970lerde BİLGİSAYARLAR Gelişmeler devam ediyor!!!
Ken Thompson Bell Labs. Da “C” dilini yarattı B dilinin temelleri üzerine kuruldu Yüksek seviyede kurgu, düşük seviyede güç Jean Ichbiah “Ada” dili ortaya çıktı Amerikan Savunma bakanlığı tarafından geliştirildi İlk yazılım geliştirme platformu Sistem programlaması yapmak için tasarlandı Her dilin kendi gücünden faydalanmak amacıyla bu dillerin tamamının desteklendiği bir yapı oluşturulmaya çalışıldı

23 1970lerde BİLGİSAYARLAR Gelişmeler devam ediyor!!!
Alan Key, Adele Goldberg  SmallTalk XEROX Palo Alto Research Center  PARC Grafikler zenginleştirildi Fontlar ortaya çıktı Nesneye dayalı programlamadan bahsedildi Herşeyin bir nesne olarak ifade edilebileceği fikri ortaya çıktı Yüksek seviyede kurgu, düşük seviyede güç Scheme, Gerald Sussman & Guy Steele (MIT) “Static scoping” kavramı ortaya çıktı

24 1980lerde BİLGİSAYARLAR Savulun!!! Nesneye Dayalı Programlama Deliyor
: C++ Bjarne Stroustrop ( Bell Labs) “C with classes” olarak tanıtıldı. Geniş çapta kabul gören ilk OOPL. Tekrar tekrar kullanılabilinen programlama birimi nesne adını aldı. Sadece nesne kütüphanesindeki nesneleri kullanarak programlama yapma olanağı oluştu Prosedürler üzerinde değil nesneler üzerinde yoğunlaştırma gerektirir. En hızlı yazılım geliştirme tekniği

25 1990larde BİLGİSAYARLAR WEB WEB WEB WEB WEB WEB WEB WEB
Tim Berners-Lee (CERN)  HTML Hypertext Markup Language World Wide Web’ in dili Dünyanın en yaygın dili Scripting dilleri ortaya çıktı PERL Javascript, VBscript, PHP, ASP, JSP

26 1990larde BİLGİSAYARLAR 12/1998 – COOL projesi başladı
07/1999 – ilk dahili port First internal ports to COOL 02/2000 – Named changed to C# 07/2000 – First public preview release 02/2002 – VS.NET 2002, C# 1.0 released 05/2003 – VS.NET 2003, C# 1.1 released 06/2004 – Beta 1 of VS 2005, C# 2.0 04/2005 – Beta 2 of VS 2005, C# 2.0 11/2005 – VS 2005, C# 2.0 release

27 1940lar İlk elektronik bilgisayarlar ortaya çıktı
Devasa yapıda aygıtlar Makine dili ile programlama Yazılan kodlar tekrar kullanılamaz Hesaplama yapmak ve makinelerin bakımı oldukça zor. ( Katot tüpleri, “bug” terimi ) Tarihteki ilk “Bug” terimi, 1945 yılında Harvard Üniversitesi'nde geliştirilen bir hesap makinesi olan Mark II Aiken Relay Calculator’da bulunan bir güve nedeniyle kullanılmıştır. “Debugging” terimi de buradan çıkar. Hata ayıklama. Makinenin etrafında yuvalanan böceklere verildi bu isim.

28 1940lar 1. Nesil Makine Dili  Bilgisayar bileşenlerinin “doğal dili”
Analog Kesintisiz ses dalgası Sas kayıt bandına ses kaydetme işlemi Dijital Bilgi parçalara ayrılır, kesik kesik 0 ve 1 kullanılır. 0 – düşük voltaj 1 – yüksek voltaj CD’ye ses kaydetme işlemi Makinelere özgü ( Intel ve AMD farklı makine dili kullanır ). Dolayısıyla da onlara bağımlı

29 1940lar 1. Nesil Makine Dili  PROBLEMLER
Çok zaman alan ve hata yapma riskinin yüksek olduğu programlama şeklidir. Yüksek seviyede donanım bilgisi sahibi olmayı gerektirir. Çok detaylı işlemler yapılır. Her bilgisayar ailesi

30 1940ların sonu ve Nesil Assembly Dili  toplantı anlamındadır. Mnemonics kullanılır “anımsama yöntemi” anlamındadır. Çeviriciler tarafından sonradan makine diline çevrilirler Her bir komut asgari yapıdadır.  Düşük seviyel dil İnsan hafızası simgleri daha kolay saklar  ADD, LOAD Assembly de programlamayı yeterince kolaylaştırmadı.

31 1955 3. Nesil Diller Fortran ilk yüksek seviyeli dil yaratıldı
Mühendislikte ve bilimde birçok sayısal ağırlıklı problem çözülebildi. Assembly diline göre, daha anlaşılır ifadeler vardır. Uygulamaya yoğunlaşmayı sağlar  donanım bilgisi gerektirmez Öğrenmesi yazması , hata ayıklanması çok kolay olan dillerdir. Programcılar makinelerden bağımsız olarak çalışabilir hale geldi

32 1955 3. Nesil Diller Fortran ilk yüksek seviyeli dil yaratıldı
Genel matematiksel hesapları içerir “+”, “-”, “*” Derleyiciler ile makine diline çevrilirler Algol 58 Fortran dan geliştirildi. Cobol iş matematiği için kullanılmaya başlandı. BASIC programcılığa yeni başlayanlar için yaratıldı LISP yapay zeka uygulamaları için geliştirildi İnsanlar bilgisayarlar ile ingilizce konuşmaya başladı

33 1955 3. Nesil Diller Yüksek seviyeli diller
X = A * B + C Hafızanın A adresindeki değeri al, ALU’da bir “register”e yükle; Hafızanın B adresindeki değeri al, yukardaki değerle(“A”) çarp ve sonucu aynı “register”de tut. Hafızanın C adresindeki değeri registerdeki değere (A * B) ekle. Registerdeki değeri (A * B + C) hafızanın X adresine koy.

34 1955 3. Nesil Diller X = A * B + C  Makine Diline Çevirelim
(A’daki değeri reg. yükle) Hex: (B’deki değerle çarp) Hex: (C’deki değeri reg. ile topla) Hex: (Registerdeki değeri X’e taşı) Hex: MOV A, ACC MUL B, ACC  ASSEMBLY’ye çevirince ADD C, ACC STO ACC, X

35 1955 3. Nesil Diller Yüksek seviyeli diller
X = A * B + C Hafızanın A adresindeki değeri al, ALU’da bir “register”e yükle; Hafızanın B adresindeki değeri al, yukardaki değerle(“A”) çarp ve sonucu aynı “register”de tut. Hafızanın C adresindeki değeri registerdeki değere (A * B) ekle. Registerdeki değeri (A * B + C) hafızanın X adresine koy.

36 1955 3. Nesil Diller Yüksek seviyeli diller
X = A * B + C Hafızanın A adresindeki değeri al, ALU’da bir “register”e yükle; Hafızanın B adresindeki değeri al, yukardaki değerle(“A”) çarp ve sonucu aynı “register”de tut. Hafızanın C adresindeki değeri registerdeki değere (A * B) ekle. Registerdeki değeri (A * B + C) hafızanın X adresine koy.

37 1960s Structured Programlama
Edsger Dijkstra, Ole-Johan Dahl, CAR Hoare. Pascal  Niklaus Wirth Algol üzerine modellendi. GOTO kullanımı kaldırıldı. Very strongly typed  Herşeyin bir türü var. İnteger, string vs Prosedür içinde prosedür  “Nesting” Ağırlıklı olarak öğretim programları için tasarlandı Simula, Dahl ve Nygaard (Norway) Nesne, sınıf ve altsınıflardan ilk defa bahsedildi

38 1970s Gelişmeler Sürüyor C  Ken Thompson (Bell Labaratuvarlarında)
B dilinin temelleri üzerine kuruldu Yüksek seviyede kurgu, düşük seviyede güç Ada  Jean Ichbiah (France) Amerikan Savunma Bakanlığı tarafından geliştirildi. (.NET ile aynı yapıda çalışan ilk yapı) Sistem programlaması yapmak için tasarlandı. Her dilin kendi gücünden faydalanmak amacıyla bu dillerin tamamının desteklendiği bir yapı oluşturulmaya çalışıldı.

39 Programming Language History 1970s
Smalltalk  Alan Kay, Adele Goldberg (Xerox PARC) Palo Alto Research Center  PARC Grafikler zenginleştirildi GUI  Graphical User Interface “Font”lar Object-oriented / “Nesneye Dayalı” “Herşey bir nesnedir” mantığı oluştu. Nesneler mesajlar ile konuşur. Scheme, Gerald Sussman & Guy Steele (MIT) LISP “static scope”  Değerin korunması Prolog vs.

40 1980s Savulun!!! Nesneye Dayalı Programlama Geliyor
Object-oriented programming/Nesneye Dayalı Programlama Tekrar tekrar kullanılabilinen programlama birimleri Sadece nesne kütüphenesindeki nesneleri kullanarak dahi programlar üretilebilir.  Hatta Microsoft .NET Framework 2.0 ile bunu biraz abarttı. Nesnelerin özellikleri üzerinde yoğunlaşma gerektirir, prosedürler (yordam) üzerinde değil. En hızlı yazılım geliştirme tekniğidir.

41 1980s Savulun!!! Nesneye Dayalı Programlama Geliyor
Object-oriented programming/Nesneye Dayalı Programlama : C++ Bjarne Stroustrop (Bell Labs) “C with classes” olarak tanıtıldı. Geniş çapta kabul gören ilk nesneye dayalı program.

42 Programming Language History 1980s
Object-oriented programming/Nesneye Dayalı Programlama Tekrar tekrar kullanılabilirn programlama birimleri Sadece nesne kütüphenesindeki nesneleri kullanarak dahi programlar üretilebilir.  Hatta Microsoft .NET Framework 2.0 ile bunu biraz abarttı. Nesnelerin özellikleri üzerinde yoğunlaşma gerektirir, prosedürler ( yordam ) üzerinde değil. En hızlı yazılım geliştirme tekniğidir. : C++ Bjarne Stroustrop (Bell Labs) “C with classes” Geniş çapta kabul gören ilk nesneye dayalı program.

43 Programming Language History 1980s
Functional Programming Extensive list of new concepts Lazy vs. eager evaluation Pure vs. imperative features Parametric polymorphism Type inference (Garbage collection) Hope Clean Haskell SML Caml

44 Programming Language History 1990s
HTML, Tim Berners-Lee (CERN) “Hypertext Markup Language” Language of the World Wide Web. A markup language, not a programming language. Scripting languages PERL. CGI or Apache module Languages within Web pages JavaScript, VBScript PHP, ASP, JSP Java, James Gosling (Sun)

45 C# History 12/1998 – COOL project started
07/1999 – First internal ports to COOL 02/2000 – Named changed to C# 07/2000 – First public preview release 02/2002 – VS.NET 2002, C# 1.0 released 05/2003 – VS.NET 2003, C# 1.1 released 06/2004 – Beta 1 of VS 2005, C# 2.0 04/2005 – Beta 2 of VS 2005, C# 2.0 ? ?/2005 – VS 2005, C# 2.0 release


"HOŞGELDİNİZ  C# 2.0’ A GİRİŞ TAYFUN YİRDEM" indir ppt

Benzer bir sunumlar


Google Reklamları