User Tools

Site Tools

server_side_script

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revision Previous revision
server_side_script [2017/01/08 17:39]
efox
server_side_script [2017/01/08 18:55] (current)
efox
Line 66: Line 66:
   * nevyžadují striktě typování proměnných   * nevyžadují striktě typování proměnných
   * program zpravidla promíchám s HTML kódem   * program zpravidla promíchám s HTML kódem
-===== JSP (od SUN) ===== 
-===== ASP (od Microsoft) ===== 
 ===== PHP ===== ===== PHP =====
   * skriptovací programovací jazyk, určený především pro programování dynamických internetových stránek   * skriptovací programovací jazyk, určený především pro programování dynamických internetových stránek
Line 73: Line 71:
   * obsahuje: rozsáhlé knihovny fcí pro zpracování textu, grafiky a práci se soubory, přístup k většině databázových serverů (MySQL, ODBC, Oracle, PostfreSQL, MMSQL), podporu celé řady protokolů (HTTP, SMTP, FTP, IMAP, POP3)   * obsahuje: rozsáhlé knihovny fcí pro zpracování textu, grafiky a práci se soubory, přístup k většině databázových serverů (MySQL, ODBC, Oracle, PostfreSQL, MMSQL), podporu celé řady protokolů (HTTP, SMTP, FTP, IMAP, POP3)
   * je dynamicky typový , má heterogenní pole, instalaci PHP na webovém serveru můžu provést buď pomocí přímého modulu (SAPI) pro webový server (APACHE, Netscape,...) nebo přes CGI procesor (php.exe), který zpracovává soubory s php skripty   * je dynamicky typový , má heterogenní pole, instalaci PHP na webovém serveru můžu provést buď pomocí přímého modulu (SAPI) pro webový server (APACHE, Netscape,...) nebo přes CGI procesor (php.exe), který zpracovává soubory s php skripty
 +  * uživatel může obdržet z jednoho HTML dokumentu s PHP skripty pokaždé jiný výsledek, aniž by se dozvěděl, jak je generován
  
 +===== ASP.NET (microsoft) =====
 +  * součást .NET Frameworku pro tvorbu webových aplikací a služeb
 +  * založen na CLR (Common Language Runtime) - sdílen všemi aplikacemi postavenými na .NET Frameworku
 +  * aplikace jsou rychlejší (u skriptovacích stránek jsou stránky při ∀ přístupu znovu a znovu parsovány)
 +  * ASP.NET WebForms - ulehčuje přechod od programování klasických aplikací pro Windows do prostředí webu:
 +        * Controls, Button, Labels
 +        * prvkům lze přiřazovat vlastnosti či zachytávat události
 +        * View State, Session State
 +  * je to lepší verze než ASP, novější!!!
 +        * díky kompilovanému kódu běží aplikace rychleji a více chyb je zachyceno už při vývoji
 +        * uživatelsky definované ovládací prvky lze použít jako šablony => významná redukce duplicity kódu
 +        * můžu si vybrat hodně programovacích jazyků
 +        * 
 +==== ASP ====
 +  * ACTIVE SERVER PAGES
 +  * technologie nezávislá na programovacím jazyce
 +  * od Microsoftu
 +  * kód je vykonáván na straně serveru
 +  * programovací jazyky: VBScript, Jsript
 +  * pomocí ASP lze kombinovat HTML stránky, skripty, COM komponenty -> interaktivní webové stránky nebo výkonné webové aplikace
 +==== DOT NET ====
 +  * soubor technologií v softwarových produktech, které tvoří celou platformu, dostupná pro web, desktop, mobile
 +  * základní komponentou je Microsoft .NET Framework - prostředí potřebné pro běh aplikací a nabízející jak spouštěcí rozhraní, tak potřebné knihovny
 +  * je jedno jaký programovací jazyk použiju (C#, VB.NET)
 +  * protože vždycky si to překládá do mezijazyka
 +  * **CIL (Common Intermediate Language)**
 +        * standardizovaná specifikace jádra .NET
 +        * nezávislý na HW platformě
 +        * specifikace definuje prostředí, které umožňuje používání více vysokoúrovňových programovacích jazyků na různých platformách, aniž by bylo nutné přepisovat jejich překladače s ohledem na zvláštnosti konkrétní architektury
 +  * **CTS (Common Type System)**
 +        * sada datových typů a operací, které se používají v mnoha programovacích jazycích
 +  * metadata
 +        * informace o struktuře programu je popsána jazykově nezávislým způsobem, takže může být zpřístupněna z různých jazyků a prostřednictvím různých nástrojů
 +  * **CLS (Common Language Specification)**
 +        * sada základních pravidel, která by měl splňovat každý jazyk vyhovující specifikaci CIL
 +  * VES (Virtual Execution System)
 +        * používá metadata k tomu, aby zajistil spolupráci samostatně vytvořených kusů kódu za běhu programu
  
 +===== JSP (Sun) =====
 +{{:jsp.png?nolink&500 |}}
 +==== JAVA ====
 +  * platformě nezávislý programovací jazyk
 +  * objektově orientovaný
 +  * je to i platforma
 +        * obsahuje velmi mnoho již hotových knihoven tříd - pro vytváření grafických rozhraní, přes třídy pro přístup k databázím, až po šifrování a kompresi dat
 +        * + knihovny a funkce ve formě API
 +  * VM (Virtual Machine)
 +        * abstraktně definované prostředí spolu s příslušným emulátorem -> pro různé OS pouze jedno rozhraní -> jednotlivá volání za běhu převáděna do skutečné platformy
 +  * **co z toho můžu udělat:**
 +        * **applety (spouští se jako část stránky)**
 +        * **desktop aplikace**
 +        * **CGI aplikace** (spustitelný program, který zpracuje předané parametry a výsledek zapíše jako na standardizovaný výstup)
 +        * **Java Servlety a JavaServer Pages (JSP)** (umožňují na straně serveru dynamické generování dokumentů jako HTML, XML)
  
 +  * platformy
 +        * Standard Edition - pro stolní PC
 +        * Enterprise Edition - pro aplikační servery
 +        * Micro Edition - pro mobily, mp3 apod
 +
 +==== Servlet a JSP ====
 +  * //Java Servlet Pages//
 +  * Servlet = program napsaný v Javě a běžící na straně serveru
 +  * JSP = technologie od SUNu pro tvorbu dynamických webových stránek na platformě Javy. Je to vyšší level abstrakce servletu.
 +  * 1. dokument je při prvním zavolání přeložen do jazyka Java -> vzniká servlet (.java)
 +
 +=== elementy JSP ===
 +  * **skriptovací elementy a proměnné (kód)**
 +      * deklarace, výraz, skriplet :D
 +  * **direktivy**
 +      * instrukce, jejímž prostřednictvím se snažíme kontejneru sdělit, jak má sestavit určité pasáže programového kódu, které se stanou součástí nového servletu
 +      * formát direktivy: <%@ direktiva atribut1=“hotnota1” ... atributN=“hodnotaN” %>
 +      * //Include, Taglib, Page//
 +  * **intrukce (akce)**
 +      * založeny na XML
 +  * **elementy XML**
 +
 +=== implicitní objekty ===
 +  * Určité užitečné objekty, názvy proměnných a metod jsou na stránce JSP tvořeny automaticky - jsou součástí procesu překladu stránky na zdrojový kód (servlet)
 +  * nelze je použít v deklaracích
 +  * .request, response, out, session, application, config
 +
 +== servlety ==
 +  * Servlety implementují princip požadavek-odpověď
 +  * Java Servlet API  - množina tříd definující standardní rozhraní pro obsluhu požadavků a odpovědí mezi klientem a serverem
 +
 +  * **TOMCAT**
 +        * jeden z nejpoužívanějších Servlet/JSP kontejnerů pod Javou
  
  
  
  
Permalink server_side_script.1483893565.txt.gz · Last modified: 2017/01/08 17:39 by efox

oeffentlich