• Artykuły
  • Forum
  • Ciekawostki
  • Encyklopedia
  • ASP.NET



    Podstrony: [1] 2 [3]
    Przeczytaj także...
    W programowaniu komputerowym framework albo platforma programistyczna jest szkieletem do budowy aplikacji. Definiuje on strukturę aplikacji oraz ogólny mechanizm jej działania, a także dostarcza zestaw komponentów i bibliotek ogólnego przeznaczenia do wykonywania określonych zadań. Programista tworzy aplikację, rozbudowując i dostosowując poszczególne komponenty do wymagań realizowanego projektu, tworząc w ten sposób gotową aplikację.C# (C Sharp, dosłownie "C-krzyżyk", "cis") – obiektowy język programowania zaprojektowany przez zespół pod kierunkiem Andersa Hejlsberga dla firmy Microsoft.
    Charakterystyka[ | edytuj kod]

    Pliki[ | edytuj kod]

    Pliki zawierające treść stron internetowych ASP.NET posiadają rozszerzenie .aspx. Dokumenty tego typu zawierają statyczną treść (X)HTML. Dodatkowo w ramach kodu statycznego istnieje możliwość dodania fragmentów dynamicznych np. <% -- dynamic code -- %> podobnie jak to się ma w przypadku technologii PHP lub JSP. Dodatkowo wraz z wprowadzeniem ASP.NET Framework 2.0 Microsoft postanowił rozdzielić warstwę prezentacji od logiki, umieszczając obie części w osobnych plikach. Dane udogodnienie zostało określone nazwą „Code-Behind” i charakteryzuje się tym, że plik z treścią statyczną nazwiemy przykładowo MyPage.aspx, zaś dokument z logiką (w Microsoft Visual Studio stanowiący jednocześnie podwęzeł pliku .aspx) analogicznie MyPage.aspx.cs lub MyPage.aspx.vb (rozszerzenie zależne od języka, w którym programujemy np. C# lub Visual Basic). W praktyce separacja warstw oznacza większą przejrzystość kodu oraz możliwość wielokrotnego wykorzystania implementowanych klas oraz ich zawartości.

    PHP – obiektowy język programowania zaprojektowany do generowania stron internetowych i budowania aplikacji webowych w czasie rzeczywistym.XML (ang. Extensible Markup Language, w wolnym tłumaczeniu Rozszerzalny Język Znaczników) – uniwersalny język formalny przeznaczony do reprezentowania różnych danych w strukturalizowany sposób.

    Dyrektywy[ | edytuj kod]

    Dyrektywy są informacją dla ASP.NET, w jaki sposób przetworzyć daną stronę internetową. Przykładową dyrektywą może być <%@ Page Language="C#" %>, która mówi o tym, jaki język programowania został użyty i – odpowiednio – w jaki sposób należy interpretować kod.

    Inline-code vs. Behind-code[ | edytuj kod]

    Inline-coding oznacza pisanie statycznego kodu, w ramach którego jako skrypt umieszczany jest kod dynamiczny. Przykład prezentowany jest poniżej.

    HTML (ang. HyperText Markup Language) – hipertekstowy język znaczników, obecnie szeroko wykorzystywany do tworzenia stron internetowych..NET Core – wolne i otwarte oprogramowanie pozwalające tworzyć i uruchamiać wysoce wydajne aplikacje na platformach Windows, Linux, macOS. Framework ten umożliwia programowanie aplikacji przeznaczonych dla chmury obliczeniowej oraz IoT, a także back-endu aplikacji internetowych z użyciem wzorca MVC. Programy na .NET Core mogą być pisane przy pomocy języków C#, F# oraz Visual Basic.
    <%@ Page Language="C#" %>
    <!DOCTYPE html PUBLIC "---//W3C//DTD XHTML 1.0 //EN"
     "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
    <script runat="server">
      protected void Page_Load(object sender, EventArgs e)
      {
        // Assign the datetime to label control
        lbl1.Text = DateTime.Now.ToLongTimeString();
     
      }
    </script>
     
    <html xmlns="http://www.w3.org/1999/xhtml">
    <head runat="server">
      <title>Sample page</title>
    </head>
    <body>
      <form id="form1" runat="server">
        <div>
          The current time is: <asp:Label runat="server" id="lbl1" />
        </div>
      </form>
    </body>
    </html>
    

    W przykładzie zauważmy kontrolkę Label, zaimplementowaną w ramach treści statycznej, jednakże logika strony, a mianowicie przypisanie kontrolki Label i jej właściwości Text aktualnego czasu odbywa się dynamicznie, poprzez funkcję Page_Load umieszczoną między znacznikami <script>. W przypadku posługiwania się code-behind treść statyczną oraz dynamiczną rozdzielamy między osobne pliki. Na początku pliku z treścią statyczną (.aspx) umieszczamy znacznik <%@ Page %> przykładowo:

    Visual Basic .NET (VB.NET) – obiektowy język programowania zaprojektowany przez firmę Microsoft. Program napisany w tym języku kompilowany jest do kodu pośredniego wykonywanego w maszynie wirtualnej zgodnej z .NET. Oznacza to, że do uruchomienia programu napisanego w języku VB.Net w systemie Windows wymagana jest (zwykle bezpłatna) biblioteka uruchomieniowa taka jak .NET Framework lub Mono.Kaskadowe arkusze stylów (ang. Cascading Style Sheets, w skrócie CSS) to język służący do opisu formy prezentacji (wyświetlania) stron WWW. CSS został opracowany przez organizację W3C w 1996 r. jako potomek języka DSSSL przeznaczony do używania w połączeniu z SGML-em. Pierwszy szkic CSS zaproponował w 1994 r. Håkon Wium Lie.
    <%@ Page Language="C#" CodeFile="SampleCodeBehind.aspx.cs" Inherits="Website.SampleCodeBehind" AutoEventWireup="true" %>
    

    Dyrektywa @Page oznacza, że istnieje dodatkowy plik(code-behind) z treścią odpowiedzialną za logikę programu. Obydwa pliki, analogicznie do poprzedniego przykładu mogłyby wyglądać następująco: MyPage.aspx

    Windows Server 2003 – wersja systemu Windows, oparta na edycji XP, przeznaczona do zastosowań serwerowych (NT Server). System wydany został 24 kwietnia 2003, a podstawowe wsparcie techniczne zakończyło się 13 lipca 2010.XSL (ang. Extensible Stylesheet Language, w wolnym tłumaczeniu Rozszerzalny Język Arkuszy Stylów) – funkcyjny język programowania opisujący sposób prezentacji i przekształceń dokumentów zapisanych w formacie XML. W języku tym operuje się na znacznikach i ich ewaluacji, na podobnej zasadzie, co we wszystkich językach operujących na makrach.
    <%@ Page Language="C#" %>
    <!DOCTYPE html PUBLIC "---//W3C//DTD XHTML 1.0 //EN"
     "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
     
    <html xmlns="http://www.w3.org/1999/xhtml">
    <head runat="server">
      <title>Sample page</title>
    </head>
    <body>
      <form id="form1" runat="server">
        <div>
          The current time is: <asp:Label runat="server" id="lbl1" />
        </div>
      </form>
    </body>
    </html>
    

    oraz MyPage.aspx.cs czyli nasz code-behind:

    Garbage collection (zbieranie nieużytków, odśmiecanie) – jedna z metod automatycznego zarządzania dynamicznie przydzieloną pamięcią, w której za proces jej zwalniania odpowiedzialny jest nie programista, lecz programowy zarządca nazwany garbage collector. Pierwsza metoda odśmiecania została opracowana w 1959 roku przez Johna McCarthy’ego w celu rozwiązania problemu ręcznego zarządzania pamięcią w Lispie. Mechanizm ten następnie został szeroko rozpowszechniony i jest wykorzystywany w wielu wysokopoziomowych językach programowania, takich jak: Smalltalk, Python, Ruby, Java, C# czy D.Microsoft Visual Studio – to zintegrowane środowisko programistyczne firmy Microsoft. Jest używane do tworzenia oprogramowania konsolowego oraz z graficznym interfejsem użytkownika, w tym aplikacje Windows Forms, WPF, Web Sites, Web Applications i inne. Aplikacje mogą być pisane na platformy: Microsoft Windows, Windows Phone, Windows CE, .NET Framework, Microsoft Silverlight oraz konsole XBOX.
    using System;
    using System.Collections.Generic;
    using System.Linq;
    using System.Web;
    using System.Web.UI;
    using System.Web.UI.WebControls;
    
    namespace Website
    {
      public partial class _MyPage : System.Web.UI.Page
      {
        protected void Page_Load(object sender, EventArgs e)
        {
          // Assign the datetime to label control
          lbl1.Text = DateTime.Now.ToLongTimeString();
        }
      }
    }
    

    Jak widać, drugie rozwiązanie wydaje się być o wiele bardziej klarowne.

    JSP (ang. JavaServer Pages) to technologia umożliwiająca tworzenie dynamicznych dokumentów WWW w formatach HTML, XHTML, DHTML oraz XML z wykorzystaniem języka Java, wplecionego w kod HTML danej strony. W tym aspekcie, jest to rozwiązanie podobne do PHP.Uniwersytet Duke’a (ang. Duke University) – amerykański uniwersytet niepubliczny w Durham w stanie Karolina Północna, w Akademickim Rankingu Uniwersytetów Świata z 2018 umieszczony na 26. miejscu.

    Zarządzanie stanem[ | edytuj kod]

    Aplikacje ASP.net są hostowane przez serwer webowy oraz udostępniane dzięki bezstanowemu protokołowi HTTP, co oznacza, że każde kolejne żądanie nie jest kojarzone z żadnym poprzednim. W takim wypadku zarządzanie stanem sesji musi być dokonywane przez samą aplikację. Tu natomiast ASP.net posiada kilka rodzajów zarządzania stanem, które możemy podzielić ze względu na zasięg, czas życia oraz rozmiar przechowywanych danych i tego, po jakiej stronie są one przechowywane.

    .NET Framework, w skrócie .NET (wym. dot net) – platforma programistyczna opracowana przez Microsoft, obejmująca środowisko uruchomieniowe (Common Language Runtime – CLR) oraz biblioteki klas dostarczające standardowej funkcjonalności dla aplikacji. Technologia ta nie jest związana z żadnym konkretnym językiem programowania, a programy mogą być pisane w jednym z wielu języków – na przykład C++/CLI, C#, F#, J#, Delphi 8 dla .NET, Visual Basic .NET. Zadaniem platformy .NET Framework jest zarządzanie różnymi elementami systemu: kodem aplikacji, pamięcią i zabezpieczeniami. W środowisku tym można tworzyć oprogramowanie działające po stronie serwera internetowego (IIS) oraz pracujące na systemach, na które istnieje działająca implementacja tej platformy. Z racji jej pochodzenia najpełniej obsługiwane są systemy z rodziny Microsoft Windows, jednak ponieważ zasadnicza część platformy została zgłoszona jako standard ECMA, powstają także jego niezależne wdrożenia, np. Mono i dotGNU.Wireless Markup Language (WML) – standardowy język używany do tworzenia oraz kodowania stron i serwisów Internetowych wyświetlanych na urządzeniach przenośnych korzystających z (WAP). WML jest aplikacją języka XML i został zaprojektowany z myślą o urządzeniach o niewielkiej mocy obliczeniowej, niewielkiej pamięci operacyjnej i powolnym dostępie do Internetu – przykładem są tu telefony komórkowe.

    Stan aplikacji[ | edytuj kod]

    Utrzymanie stanu aplikacji jest możliwe dzięki klasie HttpApplicationState. Zawiera ona mechanizm kolekcji par zmiennych typu klucz-wartość. Zmienne te są widoczne w czasie całego trwania aplikacji ASP.NET. Tworzenie zmiennych stanu aplikacji jest możliwe dzięki obiektowi Application. Przykładowo:

    Definicja intuicyjna: Java (wym. „dżawa”) to język programowania. Programy napisane w Javie można uruchamiać na wielu urządzeniach, takich jak telefony komórkowe lub komputery oraz pod różnymi systemami operacyjnymi, przy użyciu Wirtualnej maszyny Javy, która musi być w danym środowisku zainstalowana.Aplikacja internetowa, (ang.) web application – zwana również aplikacją webową, to program komputerowy, który pracuje na serwerze i komunikuje się poprzez sieć komputerową z hostem użytkownika komputera z wykorzystaniem przeglądarki internetowej użytkownika, będącego w takim przypadku interaktywnym klientem aplikacji internetowej.
    Application["Rower"]="Pojazd dwukołowy";
    

    tworzy klucz „Rower” i przypisuje mu wartość „Pojazd dwukołowy”. Pobieranie tak utworzonej zmiennej może wyglądać następująco:

    string infoRower = (string) Application["Rower"];
    

    Stan sesji[ | edytuj kod]

    W przypadku chęci przechowywania zmiennych na zasadzie koszyka sklepu internetowego potrzebne nam będą zmienne stanu sesji. Za ich implementację oraz przechowywanie jest odpowiedzialny obiekt Session. Przykładowe wykorzystanie:

    Session["Rower"] = "Pojazd dwukołowy";
    string infoRower = (string)Session["Rower"];
    

    Poza typami prostymi można również przechowywać obiekty złożone, czyli przykładowo wspomniana przez nas instancja klasy Koszyk:

    Usługa internetowa (ang. web service) – realizowana programistycznie usługa świadczona poprzez sieć telekomunikacyjną, a w tym sieć komputerową, w szczególności przez Internet.Internet Information Services (IIS) – jest zbiorem usług internetowych dla systemów rodziny Microsoft Windows. Obecnie pełni funkcje serwera FTP, HTTP, HTTPS, NNTP oraz SMTP.
    Koszyk koszyk = new Koszyk();
    Session["NaszKoszyk"] = koszyk;
    koszyk = (Koszyk) Session["NaszKoszyk"];
    

    Stan widoku[ | edytuj kod]

    Stan widoku (View state) nawiązuje do zachowania informacji w ramach pojedynczego formularza. Dodatkowym wymogiem jest aby formularz zawierał atrybut runat="server". W sytuacji gdy przeładujemy stronę, dane stanu poprzedniej sesji zostają utracone. W takiej sytuacji należy skorzystać z innego mechanizmu – przykładowo wyżej wspomnianego obiektu Session. W przypadku stanu widoku przechowywanie zmiennych odbywa się na zasadzie analogicznej do poprzednio omawianych stanów. Używanym tutaj obiektem jest ViewState, a jego wykorzystanie może wyglądać następująco.

    HTTP (ang. Hypertext Transfer Protocol – protokół przesyłania dokumentów hipertekstowych) to protokół sieci WWW (ang. World Wide Web). Obecną definicję HTTP stanowi RFC 2616. Za pomocą protokołu HTTP przesyła się żądania udostępnienia dokumentów WWW i informacje o kliknięciu odnośnika oraz informacje z formularzy. Zadaniem stron WWW jest publikowanie informacji – natomiast protokół HTTP właśnie to umożliwia.
    ViewState["Rower"] = "Pojazd dwukołowy";
    

    Możliwe jest również przechowywanie obiektów złożonych np:

    ViewState["Rower"] = new Rower();
    

    Jednak warunkiem jest umieszczenie atrybutu [Serializable] przed nazwą klasy Rower, której instancja będzie wykorzystywana jako wartość pary klucz-wartość .

    Bibliografia[ | edytuj kod]

  • Randy Connolly, ASP.NET 2.0. Projektowanie aplikacji internetowych, marzec 2008, Helion, ​ISBN 978-83-246-1128-7​.


  • Podstrony: [1] 2 [3]



    w oparciu o Wikipedię (licencja GFDL, CC-BY-SA 3.0, autorzy, historia, edycja)

    Reklama

    Czas generowania strony: 0.853 sek.