Sunum yükleniyor. Lütfen bekleyiniz

Sunum yükleniyor. Lütfen bekleyiniz

Internet Programcılığı II Sibel Öztan

Benzer bir sunumlar


... konulu sunumlar: "Internet Programcılığı II Sibel Öztan"— Sunum transkripti:

1 Internet Programcılığı II Sibel Öztan

2 Bilinmesi Gerekenler  World Wide Web Consortium   HTML (HyperText Markup Language)   Cascading Style Sheets (CSS)   Temel programla  C, VB, Javascript, ASP vb.  SQL (Structured Query Language)  SqlServer  MySql

3 Ders Programı?  ASP.NET Framework   Java Seam Framework 

4 Temel Web Kavramları  İstemci (Client)  Browser (Tarayıcı)  Web Server  Application Server (Uygulama Sunucusu)  TCP/IP (Transport Control Protocol / Internet Protocol)  HTTP (HyperText Transfer Protocol)  FTP (File Transfer Protocol)  SMTP (Send Mail Transfer Protocol)  POP (Post Office Protocol)

5 Web Nasıl Çalışır?  WWW, Internet üzerinden bağlı birçok istemci ve sunucudan oluşur  Bilgisayarlar birbirleriyle HTTP kullanarak iletişim kurar  Bir istemci bir web kaynağına HTTP formatında bir istek gönderir  Web sayfası  Resim dosyası  Javascript, CSS dosyası  Bir sunucu yanıt verir

6 Bilmecenin Parçaları  Her istemcinin bir tarayıcısı vardır  Kişisel bilgisayarlar (IE, Safari, Firefox, Opera)  Cep telefonları  Diğer araçlar, PDA (Personal Digital Assistant) gibi  Her sunucuda HTTP sunucusu olarak adlandırılan bir yazılımını çalışır  IIS (Internet Information Services) (Windows tabanlı)  Apache (Tüm işletim sistemleri için)

7 Statik Veri Almak (.htm,.html)

8

9 Veri Alma ve Gösterme

10

11 Bilmecenin Parçaları  Her istemcinin bir tarayıcısı vardır  Kişisel bilgisayarlar (IE, Safari, Firefox, Opera)  Cep telefonları  Diğer araçlar, PDA (Personal Digital Assistant) gibi  Her sunucuda HTTP sunucusu olarak adlandırılan bir yazılımını çalışır  IIS (Internet Information Services) (Windows tabanlı)  Apache (Tüm işletim sistemleri için)

12 Olası Dinamik Web Çözümleri  ASP  ASP.NET  PHP  Java-based Servers  Jboss  Oracle Weblogic (önceden BEA Weblogic)  IBM Websphere  Adobe ColdFusion

13 VB ve C# ile MerhabaDunya  Add new item  Place code in a separate file  VB – C#  Dosya adı  80 http  443 https  Protected var1 As String = "VB'den merhaba!"  protected string var1 = "C#'dan Merhaba!";

14 Development Web Server  Properties  ID  Port number :  Use dynamic ports : false

15 Visual Studio – Genel Bakış  File: shift-alt-n New Web Site  Edit : find & replace & bookmark  View – Visual Tools, Error list  Properties window F4  Window – Reset window layout  Toolbox  CSS Properties

16 Veritabanları  Kurumsal Veritabanları (Enterprise Databases)  MySQL (ücretsiz)  Oracle  IBM DB2  SQL Server  Ölçeklenebilir  Sürücü desteği .Net kodlamasına paralel  Kolay kimlik doğrulama için Windows güvenlik modeliyle entegre

17 Sql Server Kurulumu ve Gösterimi  Sql Server Express  MyBookStore  Visual Studio üzerinden Sql Server’ bağlanma  Yeni query çalıştırma  Gridview

18 Page With Code and With Code File  myLabel.Text = “Merhaba…";  On Page Load  if (IsPostBack)…  Panel Control (server side)  Bind Control   Page_Load  Page.DataBind();

19 C# ve VB için veri tipleri SystemC#VB System.StringstringString System.BooleanboolBoolean System.Int32intInteger System.SinglefloatSingle System.DoubledoubleDouble

20 SimpleVars - HTML  Programming in C#      

21 SimpleVars - Code protected void output(String value) { outputText.Text += value + Environment.NewLine; } protected void runButton_Click(object sender, EventArgs e) { string localVar = "My local variable"; output(localVar); } protected void clearButton_Click(object sender, EventArgs e) { outputText.Text = ""; }

22 ComplexVars (Object) - Code protected void output(String value) { outputText.Text += value + Environment.NewLine; } protected void runButton_Click(object sender, EventArgs e) { DateTime dt = new DateTime(); output(dt.ToString()); DateTime nowDt = DateTime.Now; output(nowDt.ToString()); } protected void clearButton_Click(object sender, EventArgs e) { outputText.Text = ""; }

23 Loops (Döngüler) - Code … protected void runButton_Click(object sender, EventArgs e) { int counter; for (counter = 1; counter < 3; counter++) { output("The value of counter is " + counter); } while (counter > 0) { output("The value of counter is " + counter); counter--; } } …

24 Functions - Code protected void output(String value) { outputText.Text += value + Environment.NewLine; } protected void runButton_Click(object sender, EventArgs e) { int total = addValues(5, 3); output("The total is " + total); } protected int addValues(int val1, int val2) { return val1 + val2; } ….

25 Trace Statements- Code protected void output(String value) { outputText.Text += value + Environment.NewLine; } protected void runButton_Click(object sender, EventArgs e) { int counter; for (counter = 1; counter < 3; counter++) { output("The value of counter is " + counter); Trace.Write("The value of counter is " + counter); } } …

26 Commenting - Code … /* This function walks up and down a variable * */ protected void runButton_Click(object sender, EventArgs e) { int counter; for (counter = 1; counter < 3; counter++) { output("The value of counter is " + counter); } //while (counter > 0) //{ // output("The value of counter is " + counter); // counter--; //} } …

27 Custom Controls  Add new item -> Web User control   Registering controls globally in the web.config  Adding public properties to a web control public string heading=“Page Heading”;

28 Dinamik Veri Gösterimi (Presentanting Dynamic Data)  Gridview kontrolu  Gridview paging (sayfa yönetimi) kontrolu  Enable Paging  Gridview ile veri güncelleme  ReadOnly değişkeni  Update statement  DataList kontrolu ile veri gösterimi  Dynamic expression  Bağlama ifadeleri ile veri biçimlendirme (Formatting data with binding expressions)

29 Veri Giriş Sistemi - 1  Belirli bir veritabanı tablosunun önemli sütunlarını içeren liste sayfası  Kullanıcının bu veritabanı tablosuna yeni bir kayıt eklemesine olanak veren linkler  Seçilen bir kaydın detaylarını gösteren ve kullanıcının bu verilerde değişiklik yapmasına olanak sağlayan bir güncelleme sayfası

30 Veri Giriş Sistemi - 2  DetailsView kontrolunun kullanımı (alt-sift-enter tam sayfa)  Auto Format, ItemStyle, HeaderStyle (koddan ve design üzerinden)  DetailsView kontrolü ile veri eklemek  Başlık bilgilerini değiştir  Enable inserting  DetailsView Properties -> DefaultMode (F4)  Sayfa isteklerini yönlendirme  HyperLink kontrolu  DetailsViewInsertedEventArgs  DetailsViewCommandEventArgs  Güncelleme sayfası oluşturmak  SelectParameters asp:QueryStringParameter  Liste sayfasına “add new column” parametre girişi  Veritabanından kayıt silmek  GridView’da “Enable deleting”

31 Veri Giriş Sistemi - 3  Fonksiyon tanımı protected accessmodifier void returntype DetailView_ItemInsert functionname (object sender, DetailsViewInsertedEventArgs e) functionsignature { if (e.AffectedRows numericproperty == 1) { Response.Redirect("~/Authors.aspx"); }  Event handler attribute eklemek OnItemInserted="DetailView_ItemInsert"  İptal işlemi için ItemCommand event handler if (e.CommandName == "Cancel")

32 Veri Giriş Sistemi - 4  SelectCommand="SELECT [au_id], [au_lname], [au_fname], [phone], [address], [city], [state], [zip] FROM [authors] WHERE [au_id]  Parametreyi almak için asp:QueryStringParameter (parametrenin geldiği yer)  DetailsViewUpdatedEventArgs  GridView -> Add New Column (HyperLinkField), Get URL from data field  ~/AuthorUpdate.aspx?au_id={0}  GridView -> Enable deleting  Wrap özelliğini değiştir

33 Bilgi Girişi Doğrulama  Öğe düzenleme şablonları ile form özelleştirme  Edit Columns  Add Template  Bind data -- Text=" “  Bir forma doğrulama kontrolleri eklemek  Validation (doğrulama)  RangeValidator  RequiredFieldValidator  Doğrulama hata mesajını düzenlemek  CSS sınıfı eklemek  Hata mesajını sınıfı tanımlamak  Doğrulama özeti kontrolu kullanılması  Display=“None”  ValidationSummary

34 Birleştirilmiş tablolar ile bir sorgu oluşturma  Titles tablosunu  Publishers ve Authors ile birleştir  au_lname + ‘ ‘ +au_fname  Verileri düzenle ve sırala  Gridview’u düzenle  Başlıklar  Hizalama  Autoformat  Fiyatı döviz kuru olarak göster: {0:C}

35 Kontrol stil özelliklerini CSS ile değiştirmek  Sunum ve basım için farklı CSS belgeleri hazırlamak  RowStyle  HeaderStyle  AlternatingRowStyle  CssClass özniteliği  media özniteliği  Menu kimliğinin belirlenmesi  #myHeader_menuPanel {visibility:hidden;height:0px;width:0px;}  IE ve Firefox ile önizlemek

36 Raporlama için veri seçimi  Publishers SqlDataSource ekle  DropDown List ekle  Query builder üzerinden düzenleme  pub_id alanını ekle (gösterimden kaldır)   Refresh parameters  Parameter source - > Control ->DropDownList1  Set AutoPostBack True  Hepsi seçeneğini ekleyin!

37 Raporlama için veri seçimi  Hepsi seçeneğinin eklenmesi  DropDownList kontrolünde  AppendDataBoundItems=“true”   Select cümlesinde  (titles.pub_id OR

38 Session durumunu yönetmek  ViewState ve geri yollama (postback)  Sayfalar arasında veri alışverişi  ViewState nesnesi dinamik olarak ASP.NET tarafından kullanılıyor  Sayfanın adı ve ilgili veriyi base64 kodlu olarak tutuyor  EnableViewState özelliği ayarlama (tuning) için kullanılabilir

39 Session değişkenleri kullanmak  Session değişkenleri sunucunun belleğinde saklanır Button_click: (yazmak için) Session[“sessionDegiskeni”]=TextBox1.Text; Response.Redirect(“SessionOkuma.aspx”); Button_click: (okumak için) OutputLabel.Text=(String)Session[“sessionDegiskeni”];

40 Form doğrulama ile site güvenliğini sağlamak  Form doğrulamayı açmak  Windows  Forms  Passport  Web.congif ( )   Kullanıcılar girişi için login sayfası hazırlamak  LoginStatus nesnesi -> Logged Out view  Login bileşenini LoginStatus nesnesinin üzerinde bırak  Sayfa çalıştırıldığında veritabanı (sqlserver”) otomatik olarak yaratılıyor (web sitesiyle beraber saklanan bir veritabanı).

41 Form doğrulama ile site güvenliğini sağlamak  Yeni kullanıcı kayıt sayfası hazırlamak  CreateUserWizard  Password (7 karekter, 1 adet alfanümerik olmayan karekter, büyük harf duyarlı)  AutoFormat  Login Form  CreateUserText -> Yeni Kullanıcı Kayıt  CreateUserURL

42 Form doğrulama ile site güvenliğini sağlamak  ASPNETDB.MDF  Users  Username (büyük harf duyarlı değil)  Membership (hashed encoded, karşılaştırma için kullanılabilir fakat okunamaz)  Password (büyük harf duyarlı)  Kullanıcı silmek için önce Membership tablosundan silmek gerekiyor.  web.config  system.web   

43 Form doğrulama ile site güvenliğini sağlamak  Authentication (kimlik doğrulama)  forms  Authorization (yetkilendirme)

44 Form doğrulama ile site güvenliğini sağlamak  Logout sayfası  Header.ascx kontroluna LoginStatus nesnesini ekle  Views: Logged In  menuPanel width özelliğini kontrol et  Login.aspx sayfasından login kontrolu dışındaki ögeleri kaldır (gösterimlerine izin verilmediği için)

45 Form doğrulama ile site güvenliğini sağlamak ...

46 Form doğrulama ile site güvenliğini sağlamak  protection  All, None, Encryption, Validation  timeout  Dakika biriminden

47 Kısaltmalar  WAT Website Administration Tool  LINQ Language Integrated Query

48 ASP.NET web sitesini yayınlamak  IIS (Internet Information Services) – Web sunucusu kurulumu  Add-remove windows components  World Wide Web Publishing services  Virtual directory yaratılması, alias verilmesi  IIS üzerinden anonymous access verilmesi  ASP.NET framework kurulumu  IIS -> Add Application  Veritabanı script’inin hazırlanması 

49 ÖZET.NET Framework, aşağıdaki imkanları sağlayan bir yazılım platformudur:  Yönetilen bir bilgisayar plaformu  Güvenli bir çalışma yürütme ortamı (runtime execution environment)  Dil seçeneği (C#, VB, etc.)  Dağıtık sistemler ile entegrasyon yeteneği (web servisleri)  Nesnel tabanlı programlama ortamı

50 .NET Framework Altyapısı

51  CLR (.NET Framework)  Diller aynı Type System’i kullanıyorlar,  FCL (BCL – Base Class Library) çekirdek sınıflar, dosyalama vs.  Data Access FW (ODBC, OLEDB, etc.)  CLS  Visual Studio (IDE – Integrated Development Environment)

52 ASP.NET Kodunun Derlenmesi

53

54  MSIL (Intermediate Language)  JIT Just in Time Compiler

55 ASP.NET Kodunun Derlenmesi

56 ASP.NET Web Form Özellikleri  Kodların ayrılması ve Page sınıfı  Sayfa yönergeleri ve öznitelikleri (directives and attributes)  Web kontrolları  Kullanıcı girişlerinin doğrulanması (validating user input)  Varsayılan değerleri ayarlamak (setting defaults)  Kullanıcı denetimler oluşturmak (creating user controls)

57 ASP.NET Web Form  ASP.NET Web Form olarak adlandırılan programlanabilir Web sayfası sunar:  HTML hazırlamak (dinamik olarak)  Nesnel-tabanlı (sınıflar,  Page sınıfından türerler  Kontrolları kullanarak veri göstermek, toplamak ve doğrulamak mümkün

58 ASP.NET Web Form Özellikleri  ASP.NET Kontrol Kategorileri  Güvenlik (security)  Login, logout, kayıt (registration), şifre hatırlatma (password reminder)  Veri  Entegrasyon  Navigasyon  Nerdeyim, menü kontrolları, xml site haritaları  Web parçacıkları  Share point, kısmi sayfa gönderileri (postback)

59 ASP.NET Web Form Özellikleri  Anahtar Özellikler  Master sayfalar (şablon)  Siteye bütünlük getirmek  Temalar/Skin’ler (yerleşik – built-in)  Lokalizasyon (Türkçeleştirme)  Uyarlanabilir UI (adaptive user interface)  Tarayıcıya göre kendisini uyarlayan web kontrolleri

60 ASP.NET Web Form Özellikleri  Uygulama Hizmetleri API’ları (uygulama programlama arabirimi)  Üyelik  Rol yöneticisi  Kişiselleştirme (personalization)  Site navigasyonu  Belleğe alma (cashing)  Yönetimsel araçlar

61 Web Formunda Neler Bulunur?  Web Formları bir çok farklı öğe içerebilir  Yönergeler:  Kod blokları (tercih etmiyoruz)..  Gösterim blokları: klasik ASP  Sunucu kontrolları:  Kullanıcı kontrolları:  ASP.NET Expressions:  Data Binding Expressions:

62 Sayfa Yönergeleri ve Öznitelikleri  Sayfa yönergesi, her ASP.NET sayfasının üstüne eklenir  Sayfa yönergesinin anahtar özelikleri:  Sayfanın dilini belirtir  Scrollbar konumlarını korur !!  Kod dosyası yolunu tanımlar  İzlemeyi açar veya kapatır  Sayfa tarafından kullanılan temaları veya ana şablonları belirtir  Hata sayfasını tanımlar

63 Sayfa Yönergeleri ve Öznitelikleri

64 Web Kontrolları (Denetimleri)  ASP.NET, veri toplamak görüntülemek ve doğrulamak için web sunucusu kontrollerine dayanır  Sunucu denetimleri, özellikleri, yöntemleri ve olayları (event) olan sınıflardır  Sunucu denetimleri, dinamik olarak XHTML uyumlu kod üretir

65 ASP.NET Denetim Türleri  ASP.NET kontrolleri Page sınıfı tarafından dinamik html çıktı üretmek için kullanılan önemli bir teknolojidir  Sunucu denetimlerinin dört temel tipi vardır:  Web sunucu denetimleri: Kesin yazımlı (strongly- typed) programlanabilir nesneler. (sınıflar)  HTML sunucu denetimleri: Bilinen html elemanlarına benzerler fakat sunucu tarafında denetlenirler. (etiketler; runat=“server”)  Doğrulama denetimleri: Web Form gönderimlerini doğrulamak için kullanılır. (yerleşik)  Kullanıcı denetimleri: Üstbilgi, altbilgi ve menü gibi özel denetimler.

66 ASP.NET Web Sunucu Denetimleri

67 ASP.NET Web Sunucu Denetimleri …devamı

68 ASP.NET Denetim Örnekleri

69

70

71

72

73

74 protected void Button1_Click(object sender, EventArgs e) { DateTime x; DateTime y = new DateTime(); x = Calendar1.SelectedDate; if (x == y) { CalCheck.IsValid = false; return; } Label1.Text = Ad.Text + " " + Soyad.Text + " " + Calendar1.SelectedDate.Date.ToString(); }


"Internet Programcılığı II Sibel Öztan" indir ppt

Benzer bir sunumlar


Google Reklamları