1.asp.net baslangic web programlama
TRANSCRIPT
8/16/2019 1.ASP.net Baslangic Web Programlama
http://slidepdf.com/reader/full/1aspnet-baslangic-web-programlama 1/27
BİL 458 Web Programlama dersi
Yrd. Doç. Dr. Murat YEŞİ[email protected]
8/16/2019 1.ASP.net Baslangic Web Programlama
http://slidepdf.com/reader/full/1aspnet-baslangic-web-programlama 2/27
• ANA KAYNAK :
• ASP .NET Web Developer's GuideLee, Wei Meng Ortiz, Jonothon Garrett, Chris Syngress Publishing,
ISBN:9781928994510
• C# ile ASP.NET 4.0, Zafer Demirkol, Kodlab Yayınları,ISBN:9786054205011
8/16/2019 1.ASP.net Baslangic Web Programlama
http://slidepdf.com/reader/full/1aspnet-baslangic-web-programlama 3/27
Bu dersten geçmek için :
Ödev/Proje/Sunum 5 % 20
Kısa Sınav (Quiz) 2 % 10
Ara Sınav 1 % 30
Yarıyıl Sonu Sınavı 1 % 40
8/16/2019 1.ASP.net Baslangic Web Programlama
http://slidepdf.com/reader/full/1aspnet-baslangic-web-programlama 4/27
İstemci
İstemci
İstemci (Client)
Sunucu (Server)
Sunucu İnternet
INTERNET PROGRAMCILIĞI:Internet programcılığında bir istemci sunucu kavramı karşımıza çıkmaktadır..
8/16/2019 1.ASP.net Baslangic Web Programlama
http://slidepdf.com/reader/full/1aspnet-baslangic-web-programlama 5/27
INTERNET PROGRAMCILIĞI:Internet programcılığında bir istemci sunucu kavramı karşımıza çıkmaktadır..
8/16/2019 1.ASP.net Baslangic Web Programlama
http://slidepdf.com/reader/full/1aspnet-baslangic-web-programlama 6/27
INTERNET PROGRAMCILIĞI:
İnternet dünyası sunucu - istemci mimarisine göre çalışır.Buna göre web sitelerini barındıran bilgisayarlara sunuculara (WEB SERVER),sunuculardan web sitelerini isteyen bilgisayarlara ise istemci adı verilir.
Bu anlamda web sitelerini de ikiye ayırabiliriz:
1. Statik siteler
2. Dinamik siteler.
Statik siteler HTML ile yapılan ve kullanıcı ile etkileşime girmeyen kullanıcıyasadece içerik sunulan, kullanıcının içeriğe müdahale edemediği sitelerdir.
Dinamik siteler ise kullanıcıya içerik sunulduğunda etkileşime geçebildiği sitelerdirÖrn: Yorum yazar, oy kullanır, içerik ekler, arama yapar, vs.
8/16/2019 1.ASP.net Baslangic Web Programlama
http://slidepdf.com/reader/full/1aspnet-baslangic-web-programlama 7/27
INTERNET PROGRAMCILIĞI:
İnternet Programcılığında kullanılan Diller:
1. Çeşitli markup (HTML, CSS, XHTML, XML) diller : Yani biryorumlayıcıya ihtiyaç duyan işaret dilleri demektir.
2. Scripting (PHP, ASP, JavaScript, Perl gibi) diller: Hazır kod parçalarıdır.
3. Web Programlar için önemli bir sunucuda kullanılan diller:(PHP/C#/ASP.NET veya Servlets/JSP/JSF/Java/JEE) kullanılır.
4. Veri tabanı dilleri: SQL, ODBC, ADO.NET veya JDBC.
5.Zengin içerikli internet uygulamaları geliştirmek için kullanılan diller: Ajax,Flash vs..
8/16/2019 1.ASP.net Baslangic Web Programlama
http://slidepdf.com/reader/full/1aspnet-baslangic-web-programlama 8/27
INTERNET PROGRAMCILIĞI:
WEB SUNUCU:
HTML, ASP.Net, JSP gibi dinamik veya statik sayfaları HTTP protokolü üzerinden sunan sunucudur.
IIS (Internet Information Services):Windows işletim sisteminin web sunucusu ( windows server kurulu bir
bilgisayarın web servis hizmetini sunan sunucusu) bileşenidir. Webuygulamalarının barındırılıp sunulması için bu uygulamanın olmasıgereklidir. (IIS ile ISS farklıdır !).
İstemci sunucudan bir istekte bulunduğunda bunu IIS sayesinde yapacaktır.
8/16/2019 1.ASP.net Baslangic Web Programlama
http://slidepdf.com/reader/full/1aspnet-baslangic-web-programlama 9/27
INTERNET PROGRAMCILIĞI:
IIS (Internet Information Services):
İlk olarak Windows NT (1993 yılında çıkmış 32 bitlik multi tasking bir sunucumimarisi olarak çıkmıştır.. Kişisel bilgisayarlar için olan Windows işletimsistemlerinden ayrıdır.) ile birlikte çıkmıştır ve IIS 1.0 olarak adlandırılmıştır.
Daha sonra Windows NT ile birlikte IIS 4.0 sürümüne kadar güncellenmiştir.
Windows 2000 ile IIS 5.0 Windows XP ile IIS 5.1
Windows Server 2003 ile IIS 6.0 ile yenilenmiştir ki asıl atılımı buradayapmıştır. 64 bit mimariye geçiş olmuştur ve ilk defa Ipv6’yı desteklemektedir.
8/16/2019 1.ASP.net Baslangic Web Programlama
http://slidepdf.com/reader/full/1aspnet-baslangic-web-programlama 10/27
INTERNET PROGRAMCILIĞI:
IIS (Internet Information Services):
Windows Server 2008 ile birlikte tamamen yeniden yazılan IIS 7.0 gelmiştir vegüvenlik en önemli öğe olmuştur.Failed Request Tracing (isteklerdeki hata izlenmesi)
Windows 7 ve Windows Server 2008 R2 ile birlikte gelen IIS 7.5 gelmiştir.(IPSec (IP security TCP/IP protokolünün güvenliğini sağlamak için kullanılırkimlik doğrulama ve veri akışı her IP paket şifrelemesi) ve Requesting Filtering isteklerin filtrelenmesi özelliği )
Windows Server 2012 ile birlikte tamamen yeniden yazılan IIS 8.0 gelmiştirSSL sertifika desteği ASP.NET 4.5 Desteği Windows Server 2012 R2 ve W indows 8.1 ile sunulan IIS 8.5 sunulmuştur..
8/16/2019 1.ASP.net Baslangic Web Programlama
http://slidepdf.com/reader/full/1aspnet-baslangic-web-programlama 11/27
8/16/2019 1.ASP.net Baslangic Web Programlama
http://slidepdf.com/reader/full/1aspnet-baslangic-web-programlama 12/27
Windows 10 için IIS ayarı.
8/16/2019 1.ASP.net Baslangic Web Programlama
http://slidepdf.com/reader/full/1aspnet-baslangic-web-programlama 13/27
INTERNET PROGRAMCILIĞI:
.NET yapısı:
Yazılan bir program için en büyük sorun yazılan programın her işletimsistemi ve konfigürasyonunda kullanılamamasıdır.Bunun için .NET yapısı en iyi çözüm sunan platformdur.
Birçok dil seçeneği tarafından desteklenir.
Bu nedenle aslında ASP.Net bir programlama dili değil ASP dili üzerinebina edilmiş bir .NET platformudur. ASP:NET ile birlikte birçok dil kullanılabilmektedir.
.
8/16/2019 1.ASP.net Baslangic Web Programlama
http://slidepdf.com/reader/full/1aspnet-baslangic-web-programlama 14/27
Operating System + Hardware
.NET Framework
.NET Application
INTERNET PROGRAMCILIĞI:
.NET yapısı:
8/16/2019 1.ASP.net Baslangic Web Programlama
http://slidepdf.com/reader/full/1aspnet-baslangic-web-programlama 15/27
.Net Framework’ün Yapısı
• Java’dan önce, geliştirilen yazılımlar direkt olarak makine koduna çevrilirdi. Java
ile program kodu önce byte code’a çevrilir. JVM (Java virtual machine) bukodu işletim sisteminin istediği koda çevirir. .Net içinde çalışma mantığıbenzerdir .NET kodu ilk önce IL’ ye (Intermediate Language-Ara dil-veya
MSIL) derler, bu IL kodu çalıştırılmak istendiğinde CLR, JIT derleyicilerinikullanarak kodu makine diline çevirir.
C++ C#Basic J#
MSIL
Makine Dili
Derleyici
8/16/2019 1.ASP.net Baslangic Web Programlama
http://slidepdf.com/reader/full/1aspnet-baslangic-web-programlama 16/27
..NET İLE KODU DERLEME VEÇALIŞTIRMA
• .Net Framework’ün Yapısı ile bir C# kodunun çalıştırılması
C#
MSIL
Makine Dili
CLR
8/16/2019 1.ASP.net Baslangic Web Programlama
http://slidepdf.com/reader/full/1aspnet-baslangic-web-programlama 17/27
• MSIL (Microsoft Intermediate Language)
Normalde bir program derlendiğinde doğrudan makine koduna çevrilirken,
.NET uyumlu bir dil ile derleme yapıldığında program kodu makinekoduna değil de MSIL (Microsoft Intermediate Language)'e çevrilir.
MSIL işlemciden bağımsız komut setinden oluşmaktadır. Bu komut setiiçerisinde nesnelerin yüklenmesi, depolanması ve başlatılması sağlayankomutların yanı sıra aynı zamanda nesneler üzerinde metot çağrımını sağlayankomutlar da yer almaktadır. .NET Framework ile yazılmış bir kaynak kodunderlenmesi sonucu MSIL kodu oluşmaktadır. MSIL, NET dilleri arasında bir
bütünleşme sağlamaktadır. MSIL kodun çalıştırılmasından önce var olan MSILkodu, doğal makine koduna (native code) dönüştürülmektedir. Buradainterpretation dediğimiz yorumlama işlemi yapılmaz.
8/16/2019 1.ASP.net Baslangic Web Programlama
http://slidepdf.com/reader/full/1aspnet-baslangic-web-programlama 18/27
8/16/2019 1.ASP.net Baslangic Web Programlama
http://slidepdf.com/reader/full/1aspnet-baslangic-web-programlama 19/27
Base Class Library
Common Language Specification
Common Language Runtime
ADO.NET: Data and XML
VB VC++ VC#
V i s u al S t u d i o.NE T
ASP.NET: Web Services
and Web Forms
JScript …
Windows
Forms
INTERNET PROGRAMCILIĞI:.NET Mimarisi
8/16/2019 1.ASP.net Baslangic Web Programlama
http://slidepdf.com/reader/full/1aspnet-baslangic-web-programlama 20/27
.NET MİMARİSİ:
• ASP.NET
Web forms
Yönetilebilir Kod ( Manageable code (non spaghetti))
Mantıksal örgülü yapısı ( Logical evolution of ASP (compiled))
Güçlü web Form yapısı (The power of Web Forms with ademonstration)
Web Services
İnternetin taşıyıcı gücü olarak adlandırılır. ( Programming theInternet to leverage the "power at the edge of the cloud« ).
ADO.NET, Veritabanı (e.g., DataSets, Datareader)
Visual Studio.NET
8/16/2019 1.ASP.net Baslangic Web Programlama
http://slidepdf.com/reader/full/1aspnet-baslangic-web-programlama 21/27
ASP.NET MİMARİSİ:
ASP.NET Microsoft tarafından geliştirilen bir teknolojidir. ASP (Active Server Pages) Etkin Sunucu Sayfaları. anlamına gelir.
ASP.NET, klasik ASP'den çok daha üstün özelliklere sahiptir.
ASP'de oluşturulan dosyaların uzantısı .asp iken, ASP.NET dosyalarının
uzantısı .aspx'tir.
ASP.NET sayfaları oluşturabilmek için bir programlama dili bilmemiz
gerekiyor. Burada Microsoft'un bize sağladığı kolaylık, herhangi bir
programlama dilini seçme şansını bize vermesidir. Fakat en çok VisualBasic ve CSharp(C#) dilleri kullanılır.
ASP.NET 1.0 versiyonu ile çıktı ve günümüze kadar 1.1, 2.0, 3.5, 4.0
versiyonları yayınlandı. Şu anki en son ASP.NET versiyonu ise 4.5 dur.
8/16/2019 1.ASP.net Baslangic Web Programlama
http://slidepdf.com/reader/full/1aspnet-baslangic-web-programlama 22/27
ASP.NET MİMARİSİ:
Gelişmiş web uygulamaları oluşturmak için kullanılır.
:NET Framework üzerinde uygulamalar geliştirilmesini sağlar.
Nesne tabanlıdır. Dilden bağımsızdır. (.NET destekli diller kullanılabilir.)
Yapısında bir çok hazır ( class) yapı ve kontrol barındırır.
Hızlı ve yüksek performans gerektiren uygulamalar için kullanılırlar.
8/16/2019 1.ASP.net Baslangic Web Programlama
http://slidepdf.com/reader/full/1aspnet-baslangic-web-programlama 23/27
ASP.NET MİMARİSİ:
Çalışma modeli olarak istemci ve sunucu çalışma modelini kullanır.
İstemci tarafında .aspx sayfalar bulunur .Bu sayfalar HTML ve KOD
kısmı olarak 2 bölümden oluşur.
HTML kısmında bildiğimiz HTML bileşenleri ve ASP.NET sunucu
kontrolleri bulunur.
KOD kısmında .NET destekli bir dil ile yazılan ve sunucu tarafı için
geliştirilen bölüm yer alır. Kod kısmındaki uzantılar .aspx.cs olur (C#
için)
Oluşturulan her sayfa bir CLASS dır.
8/16/2019 1.ASP.net Baslangic Web Programlama
http://slidepdf.com/reader/full/1aspnet-baslangic-web-programlama 24/27
ASP.NET MİMARİSİ:
İstemciden bir istek geldiğinde IIS bu isteği alır ve aspnet_Isapi.dll
dosyasına oradan da .NET Framework aktarır. Bu istek sunucunun belleğinde kaydedilir. İsteğe göre C# kodu çalıştırılır.
Ve HTML çıktı olarak tekrar IIS tarafından istemciye gönderilir.
IIS Aspnet_Isapi.dll
.NET Framework
(Common Language Runtime)
C#kodu çalıştıHTML
8/16/2019 1.ASP.net Baslangic Web Programlama
http://slidepdf.com/reader/full/1aspnet-baslangic-web-programlama 25/27
8/16/2019 1.ASP.net Baslangic Web Programlama
http://slidepdf.com/reader/full/1aspnet-baslangic-web-programlama 26/27
ASP.NET MİMARİSİ:
ASP.NET sayfalarının görsel kısmı HTML,CSS ve JAVASCRIPT olabilir.Buna ek olarak asp veya asp.net kodları da bu belgeye eklenebilir. ASP.NETsayfaları bildirim satırı ile başlar. Bu bildirim @Page ile başlar. Bu satıraSayfa Direktifide denir.
<%@Page Title="Home Page" Ana sayfa tarayıcı BaşlığıLanguage="C#" : Kullanılan Programlama diliMasterPageFile="~/Site.Master" : Ana sayfa dosyası AutoEventWireup="true" : varsayılan olaylara method arası bağlantı kur
CodeBehind="Default.aspx.cs" Kod sayfasıInherits="WebApplication1._Default" Uygulamamamızın Anasayfası
(çalıştırılacak sayfa)%>
8/16/2019 1.ASP.net Baslangic Web Programlama
http://slidepdf.com/reader/full/1aspnet-baslangic-web-programlama 27/27
ASP.NET MİMARİSİ:
ASP.NET sayfası ilk oluşturulduğunda runat="server" parametresi
yazılıdır.
<asp:Content runat="server" >
Bu parametre yanlızca form için değil, sunucuda çalışacak tüm kontrolleriiçin gereklidir. Yani kodların sunucuda çalışmasını sağlar.Bu arada tüm sunucu kontrolleri <asp: ile başlar ardından kontrolün türü ve özellikleri gelir.
<asp:Content runat="server"ID="FeaturedContent" ContentPlaceHolderID="FeaturedContent">
http://www.bilimsel.com.tr/04-04-ilk-asp-net-programim/