Porijeklo web tehnologije
Kada Tim Berners Lee izumio web je tražio sistem objavljivanje naučnih dokumenata daljinski dostupne, vizualno atraktivan, lako se kod i jednostavan za korištenje za ne-tehničke osobe.
U naučnom dokumentu, vanjski navodi na druge dokumente neophodan, kako bi čitalac može po želji razviti temu u pitanje.
Iz tih razloga, World Wide Web je zamišljena kao stranica (dokument) sistem baziran s hipervezama.
U početku je Web bio svijet statičkih stranica i linkova, ali je ubrzo generacija dinamičkih stranica i općenito korištenja web kao podrška za dizajniranje web-based aplikacija komplikovano sve.
Dolazak web aplikacija
Dugi niz godina je došlo do velike napore da se prilagode web paradigma stranice i linkove na razvoj aplikacija. U web aplikaciji Berners ‘pogled statičkih dokumenata i jednostavne veze ne postoje.
Različiti pristupi razvoj aplikacija su događa:
- Model 1: direktan prevod originalnog modela stranica i linkova, gdje se stranice dinamički generiran.
- Model 2 o MVC: Sada linkovi nisu direktno ukazuje na konkretne ciljne stranice, u ovom slučaju kontrolor odluči šta sljedećoj stranici se ovisno o poslovanju došlo u stranici tranziciji.
- MVC zasnovan na komponentama (model 3?): Je sofisticirana verzija modela 2 simulira kako desktop aplikacija rad. Ona se zasniva na komponente i događaje, tako da bilo koji korisnik akcija podrazumijeva potpuno obnovljen i ponovo stranice djelomično mijenja jedan dio u skladu sa akcijom izvršena. Stranicu i stranicu tranzicija je sada upravlja komponentama koje šta sad mijenja se održati prema događaju, simulirajući kako komponente rade na desktop GUI programiranje.
U posljednjih nekoliko godina uveden je AJAX tehniku, ova tehnika uz pomoć JavaScripta omogućuje parcijalne promjene stranicama dobivanje novih podataka sa servera bez pretovara. Uprkos parcijalne tehnike Promijeni je davno prije uvođenja XMLHttpRequest u Internet Exploreru (baza AJAX programiranje), što je to bio poticaj njegove masovne upotrebe.
Sada milijune web stranica i web aplikacija koristi AJAX pružiti bolje iskustvo krajnjim korisnicima, zahvaljujući više sluha korisnički interfejs djelomično izbjegavanje dosadnih stranicu ponovno učitavanje.
Uprkos masovne upotrebe AJAX, možemo reći Web prati razvojni model mogli bismo navesti kao “Model 2 (MVC) obogaćena AJAX”. Kada se koristi AJAX, “Model 3” nema mnogo smisla jer AJAX u velikoj mjeri smanjuje potrebu upravljanja stranice baziran na komponentama. Jer AJAX se obično koristi zajedno komponente (ne nužno predstaviti u model 2), možemo klasificirati trenutno stanje umjetnosti web razvoja kao model 3.5, gdje se navigacije djelomično izbjegavati u slučaju manjih državnih prijelaza obavlja AJAX i JavaScript.
Koji su nedostaci na temelju stranice navigacije i razvoj?
Svaki web developer zna kako je problematično stranice navigacija u web aplikaciji, osim bandwith rasipanja i dugotrajan proces obnove cijele stranice više problema napraviti web razvoj bolnih poput neželjene caching, natrag/naprijed dugmad, desynchronized forme uzrokovane “oblik auto-fill” karakteristika pojedinih pretraživačima i tako dalje. Nije neuobičajeno da vidi web aplikacije koje skrivaju menija i dugmad pretraživača ili pomoću okvira ili okvira (npr banke) da se izbjegne problem Natrag/Naprijed tipke.
Razvoj zasnovan Page forsira stil kodiranja čudno, ponavljaju (dosta obuhvata) i neefikasne (i propusnosti i procesorske snage) nije pronađen u razvoju desktop.
Šta je ono što sprečava intenzivno korištenje AJAX?
U oblasti web razvoja smo navikli razlikovati dve vrste web rješenja: web aplikacija i web stranica.
U prvom slučaju AJAX je sve više i više koristi, jer ova vrsta aplikacija ne dijele neke rekvizite koje se izriču za web stranice. U web stranice intenzivnog korištenja AJAX je problem.
U javnim web stranice krajnjih korisnika koriste se za koncept stranice, vezan na stranice neke rekvizite i usluge su potrebne u bilo kojoj web stranice kao što su:
- Bookmarking: Svaka web stranica ima drugačiji URL, ovaj URL može biti sačuvana kao marker. Jer AJAX može djelomično promijeniti stranice URL je isti, krajnji korisnik ne može spasiti kao marker konkretan pogled (država) stranice.
- Search Engine Optimization (SEO): Svaka web stranica želi da bude u potpunosti indeksirane od strane tražilice poput Google Search. Trenutni crawlers pogledajte Web kao Web 1.0, to jest, JavaScript kod se potpuno ignoriše, čime bilo parcijalne promjene vrši preko AJAX učitati sa servera se ne izvršava onda ne indeksirane od strane pretraživači poprijeko web stranice.
- Usluge na strani posjeta: Na primjer reklama usluga kao što su Google AdSense i strani posjetu praćenje kao što je Google Analytics, u oba slučaja je broj stranica učita je važno. Stoga, bilo parcijalne promjene obavlja AJAX ne računa kao novi posjet.
- Povremene potrebe pop-pup prozora
Jer ovi rekviziti intenzivne AJAX je obeshrabrena u web stranicama.
Međutim, razlika između “web stranice” i “web aplikacije” postaje manji, jer je skoro bilo kojoj web stranice je neka vrsta “web aplikacije” …
Trebamo li odustati AJAX-intenzivne aplikacije?
NO.
Postoje tehnička rješenja za sve gore navedene rekvizite.
Izrada web sajtova na osnovu jednog Web stranica (SPI), da li je moguće?
DA!
Ovo je vrijeme za početak ove tranzicije, programeri i krajnji korisnici sve nas dobiti. Imamo tehnologiju i modernih pretraživača osposobljeni su za postizanje tog cilja.
Da bi uspjeli u ovom “novom” način web razvoja moramo ostvariti sve prethodne rekvizite bilo koje web stranice.
Zbogom stranica, dobrodošli država
U web aplikacije bez JavaScript, država sekvenca je ekvivalent stranice, u SPI aplikacija bilo parcijalne promjene podrazumijeva nova “država” na “strani”. Među državama možemo razlikovati dvije kategorije stanja:
- fundamentalna država
- srednje države
Razlikovanje između oba stanje vrste je vrlo važno, jer će fundamentalna država postati web stranice kada je to potrebno. Temeljnih i srednje diferencijacija ovisi web stranice.
Da bi bolje razumjeli oba tipa država možemo proučavati pravi primjer: prijaviti validacije.
U klasičnom stranice aplikacije bazirane tipičan prijava je izgrađen pomoću dvije stranice, jedan za korisnika i lozinku i jedan pokazuje korisničkih opcija ako prijava validacija je bio u pravu; login stranica će biti reloaded prikazuje neke poruke o greškama uz prijavu obrazac kada ulazak prijava nije u redu.
U SPI web, početni prijava i na strani opcije korisnik može biti temeljni država, i poruke o greškama uz prijava može biti sekundarna stanja.
Još jedan primjer, web stranice zasnovane na stranicama koji treba pretvoriti u SPI, u ovom slučaju će fundamentalna država biti strana i srednje države će biti strana država sa manjim promjenama, nije dovoljno važno za bookmarking ili da se prolaze pretraživači.
Jednoj stranici Interfejs i Bookmarking
Različitim stranicama imaju različite URL-ova, nakon SPI rutu kako možemo promijeniti stanje i istovremeno URL bez pretovara da bi ovo novo stanje može markiranom krajnji korisnici ?
Postoji trik, koristeći “referenca” dio URL-ova ( “hash fragment”, stvar ili hashbang), ovo je posljednji dio, ako je prisutan, nakon # karakter. Ova referenca se koristi za listanje stranicu na konkretne lokacije navedene neke <a name=”ref”> </a> znak. Ova referenca deo ako promijenjen ne ponovo učitava stranicu, pa ako je referentna URL je promijenjen pomoću window.location
uz državu stranu (u ovom slučaju nove države je “fundamentalna”) sa JavaScript i AJAX, onda ne reload obavlja. Jer URL i temeljnih države su se promijenile, krajnji korisnici mogu spasiti ovaj URL, na neki način sadrži nove države informacija, kao marker.
Kada krajnji korisnik želi da se vrati ponovo na markirane stranice, meta država je navedeno u referentnom deo URL, server će se tražiti, nažalost referentni deo se ne šalje na server jer referentni ulogu ima veze sa udaljene lokacije preko HTTP, pa će nam trebati proces nakon opterećenja.
Server će se vratiti u početni strana u kojoj se nije naveden ciljne države, međutim, window.location
predmet sadrži originalni URL, uključujući i referentne dijela. Prilikom ubacivanja ciljne stranice možemo otkriti s JavaScript da li window.location
sadrži referencu dijelu i da li je to referenca ima potrebne ciljane države info, ako je istinita možemo prepisati URL dodajući neku vrstu normalnog parametar da navedete ciljnu državu za učitavanje. Jer URL zapravo promijenjen novi zahtjev serveru se izvršava, ovaj put država za učitavanje je u parametar i server vraća novu stranicu sa potrebnom države.
Druga opcija, bolje nego hashbangs, nastaje sa pojavom HTML 5, na History API HTML 5.
Jednoj stranici Interfejs i Search Engine Optimization (SEO)
Najlakši način da se našoj web stranici obrađuje pretraživači pretraživač je da ponudi dva različita režima plovidbe, SPI za krajnje korisnike, stranice za web pretraživači.
Narednih primjer pokazuje vezu sa ovom idejom:
<a href=”URL page” onclick=”return false”> … </a>
Ovaj link će učiniti ništa u pregledniku sa JavaScript jer je navigacija onemogućena ” return false
” od onclick
atributa, ali kada bot indeksi ovaj link zanemaruje onclick
atribut jer JavaScript kod se ne izvršava i da će obraditi naveden URL kao sljedeću stranicu za obradu.
U oblasti SPI aplikacije, URL-ove koji se koristi za stranicu / država plovidbi mora sadržavati ciljane države, isti tip URL-ova koristi u SPI bookmarking koji koristi referentni dijelom ukazuje na ciljane države, ili je cilj direktno piše kao normalan parametar, kasnije se preferira jer se izbjegava zahtjev serveru, naravno “prilično URL-ovi” se može koristiti.
Trenutno Google već puzi “AJAX URL-ova”, to jest, URL-ove koji sadrže meta države u referentnom dijelu sljedeće #!
kao što je navedeno u Making Ajax aplikacije Crawlable, u ovom slučaju web stranica / aplikacija mora vratiti očekivanog stranice se traži sa _escaped_fragment_
parametrom.
Istovremeno SPI web okvir može dodati specifičan kod u onclick kontejnera prije return false
ili može vezati događaj slušatelja na link koji se koristi za državne / navigacije, na evidenciji addEventListener
ili attachEvent
u zavisnosti od pretraživača. Ovaj događaj slušalac će izvršiti neku akciju da komanduje server, obično koristeći AJAX, promijeniti stanje stranici. Kada se klikne na link ovo stanje promjene nisu novu stranicu, jer je atribut onclick="... return false"
izbjegava default ponašanje.
Tehniku prije opisana je najjednostavniji i neposredno putem vidljive veze kompatibilan sa robota i SPI. Možete ikad razdvojiti obje funkcije, na primjer pomoću skrivene linkove za krajnje korisnike, ali ne i za robota zajedno sa drugim kliknuti elemente promijeniti SPI država pomoću JavaScript nevidljiv za robota.
Najvažnija karakteristika sposobnog okvir SPI je stranica generacija kao HTML sa potrebnom države na vrijeme utovara i istovremeno ista promjena država mora izvesti JavaScript i parcijalne stranice ažuriranje. Ove rekviziti su osnova za pružanje SPI i simulacije stranici.
SPI and Back/Naprijed tipke
Natrag/Naprijed tipke su izvor problema na konvencionalnim zasniva stranici web stranice i treba ih izbjegavati što je prije moguće. Uprkos korisnika koriste se izbjegli natrag i naprijed dugmad prilikom podnošenja obrazac sa korisničkim podacima (jer nosi rizik kupovine dva puta u istom avionu označeno ili knjige), upotreba Back/Forward tipke je vrlo raširena.
Izgleda da je SPI paradigma razbija tradicionalni način plovidbe web stranice, jer u teoriji Natrag/Naprijed tipke nema smisla u SPI (bez stranica) i web-preglednika ne daju dobru kontrolu ovih dugmadi.
To nije u potpunosti istina, Natrag/Naprijed ponašanje može se simulirati, umjesto navigacije Natrag/Naprijed (i povijesti plovidbe u cjelini) može se koristiti za promjenu trenutnog stanja na prethodno/naprijed stanje. U ovom slučaju JavaScript kôd može otkriti kada je referentna deo URL promjene i traži prijavu promijeniti stanje u skladu s tim. Jer browser ne mijenja stranicu vaše aplikacije je sada u potpunosti odgovoran Back/Forward ponašanje izbjegavanje tipične probleme neočekivanih Natrag/Naprijed upotrebu krajnjih korisnika prilikom podnošenja obrasca, sada u SPI postoji takav oblik ne i ne nekontrolisanog stranice navigaciju aplikacija/web stranice web.
SPI i usluge na strani posjeta
Aplikacije usluge i na strani posjeta brojači su bazirani na koliko stranica su utovar. U oba slučaja možete koristiti skrivene <iframe> elementi koji sadrže prazne web stranice sa potrebnim skripte da izvrši ovu vrstu usluga.
U slučaju reklama usluga kao što su Google AdSense, dinamičan umetanje <iframe> podrazumijeva od nove oglase stoga svaka promjena država bi moglo da znači novi pretovar <iframe> s oglasima. Google AdSense izgleda otkriti kada se AdSense skripta izvršava unutar <iframe> i uzima u obzir sadržaj stranice kontejnera. Može biti poželjno dodati neki parametar koji identificira temeljne države koja učitava <iframe>.
U slučaju posjete brojila, možemo ih koristiti za praćenje korisničkih posjeta osnovnih stanja našeg SPI web stranice. U tom slučaju potrebna nam je sakriven <iframe> sadrži praznu web stranice sa skriptama za praćenje. Uz jednostavan parametar možemo ukazati na fundamentalno stanje posjećuju. Naša <iframe> bi trebao biti globalni (uvek isti na stranici). Kada je stranica prvi put učita, temeljni država se učitava (navedeno u URL-u) treba navesti na <iframe> sa parametrom. Nakon učitavanja stranice, svaka fundamentalna promena stanja mogao biti obaviješten <iframe> mijenja URL putem JavaScript u skladu sa novim fundamentalnim države, ova promjena URL će izazvati pretovar <iframe> (što ukazuje na novi posjet).
SPI i pop-up prozora
Kada se kreira prozor novu stranicu model SPI je slomljena. Fundamentalizam je loše, nema problema ako se stanje ovog novog prozora nema nikakve veze sa stanjem prozora roditelja, u ovom slučaju pop-up prozora su u redu.
Problem nastaje kada bilo kakve akcije izvode na pop-up prozor (modalni ili ne modalne) ima utjecaj na prozoru roditelja, koordinacija između stranica je komplikovano. Na primjer ne postoji web standard za stvaranje modalnih prozora jer je koncept stranica je tradicionalno uvijek bila nezavisna elementa i zbog toga se njegov životni ciklus je teško koordinirati sa druge strane.
Srećom, ovaj problem ima rješenje za neko vrijeme u SPI, možete simulirati modalni ili ne modalni prozori unutar iste web stranice, ne novi prozor pravi strana je stvorio. U slučaju ne-modalni prozori, HTML element s apsolutno pozicioniranje može biti “ne-modalni prozor” i možete stvoriti modalni prozori pomoću apsolutno pozicioniranje, kontroliranje z-indeksa i neprozirnost elemenata “na vrhu” stranice ( “modalne slojevi”). Ova rješenja važeći u SPI kontekstu su.
Uz malo truda, pa čak i država koja pokazuje modalni prozor može biti fundamentalno stanje i stoga plovnog od robota tražilice.
Kulturni pomak za web programere
Većina web programera (i web okvira) smatra Web kao zasnovan na stranicama, smanjenje stranice na jednu stranu podrazumijeva radikalne promjene uma i kako napraviti web stranice i aplikacije. Ova promjena nije toliko radikalan zahvaljujući AJAX, AJAX je danas mainstream i smanjen broj stranica tipičnih web sajtova, ukratko nam je donio u blizini tog “novog” razvoj SPI model.
U novom SPI web na <form> tag nestaje i općenito potrebu sesija koristi kao menadžeri podataka sljedeću stranicu sekvenci. Sada je protagonist je strana klijent s nekim simetrije u server (na strani u server). U stvari, jer smo riješi koordinacije stranice sa sesijama smo oslobođeni izvor problema kao što je loša praksa nekih korisnika koji otvoriti nekoliko prozora s iste stranice, ova praksa obično razbija sjednicu i primjenu u cjelini.
SPI programiranje se temelji na događaje isti kao u desktop, jer je u desktop većini aplikacija radi u istom prozoru okvir i kada postoje dijete prozore te su u potpunosti upravlja glavni prozor i iskreno modalni.
Nakon paradigma razvoja web razvoj, ovaj “novi” pristup bi se mogao nazvati Model 4.
Kulturni pomak za krajnje korisnike?
Nije puno, sa bookmarking i natrag/naprijed kraj simulacije korisnici neće razlikovati web stranice SPI i na istoj stranici na bazi, nadalje SPI stranice će biti više sluha i tipične treperenje i pomicanje stranice navigacije je uklonjen.
Tehnička održivosti danas
Ovaj manifest nije izjava o namjerama, ali je izraz želje da promoviše “novi” način izgradnje web stranice koje su već pravi. Gore tehnička studija je uvijek imala Java web framework ItsNat kao tehnološke osnove SPI razvoj web stranice. Uprkos ItsNat zamišljen je od prvog dana na ovu vrstu aplikacije/lokaliteta, prethodne tehnike može primijeniti s drugim web okvirima ili ovim okvirima mogao evoluirati da obezbijedi sredstva za ovu vrstu SPI web stranice sa zahtjevima stranici simulacije.
Neki zahtjevi tih SPI web stranice kako bi mogli zamjene tradicionalnih zasnovan stranici web stranice, kao što je stranica simulacija temeljnih država na vrijeme učitavanja, samo su moguće sa serverom centric web okvire jer HTML renderiranje mora biti urađeno u server na vrijeme opterećenja. HTML renderiranje na vrijeme opterećenja i isto dinamički opterećenih i ubačena sa JavaScriptom su ključne karakteristike web okvira spremni da grade SPI web stranice. Klijent centric okviri može imati veliku ulogu za realizaciju takozvane sekundarne država.
Dva stvarnom svijetu primjera
Web innowhere.com/jnieasy
Napravljena je sa ItsNat u server i dobar primjer SPI web stranice jer sumira sve zahtjeve web stranice SPI, objasnio je u ovom dokumentu, da bude zadovoljavajući zamjena tradicionalnog stranice. U stvari, novi SPI verzija zamijeniti, bez koji označava estetski funkcionalnih promjena, prethodne verzije na osnovu stranicama. Ona se zasniva na hashbangs.
Karakteristike
- Jedna stranica Sučelje: Back i Forward tipke su simulirane mijenja na prethodnu ili naprijed posjetio države.
- Fundamentalne države mogu biti sačuvana kao markere.
- SEO kompatibilan: fundamentalna stanja su dostupni sa JavaScript onemogućen uključujući modalni prozor.
- Je hashbang
#!
format se koristi, to jest, Google SEO kompatibilan “AJAX URL-ova”, na stranici se takođe traži sljedeće Google konvencije_escaped_fragment_
parametara. Na primjer ovo stanje se zavukao Google traži ovaj URL.
- Radovi sa JavaScript onemogućen.
- Pokazuje oglasi baner na osnovu Google AdSense
- Uprkos tome što je SPI, listati osnovnih stanja prati Google Analytics pomoću skrivene <iframe> koji URL mijenja kada je trenutni temeljnih promjena stanja.
- A simulirani modalni prozor izbjegava stvaranje novog prozora stranice, ovo simulirani prozor je također dostupan sa direktnim URL ili hashbang verzija sa tekstom već u markup na vrijeme opterećenja samim SEO kompatibilni.