Анатомия на URL адресите

Уеб дизайна е изпълнен с елементи, които просто остават на заден план или не заемат толкова централна позиция спрямо други. URLs попадат точно в тази категория и ако има някоя част от уеб дизайна, която да е крайно пренебрегвана, то е точно тази.

URL е съкращение от Uniform Resource Locator

Обикновено ние сме свикнали да поглеждаме на тях като на един ред от символи, които ползваме за връзки или уеб адреси към уеб сайтовете като всъщност те са изградени от няколо части. И синтаксиса, който се ползва от тях всъщност служи на сървърите да определят какъв тип файл се търси, къде да се търси и също така може да има приложени един или повече параметри определящи нещо конкретно.

http://www.w3schools.bg – това е началната страница на сайта както можем и да очакваме. Този адрес – URL – се състои от 2 основни части. Да започнем с първата:

“http:”

това оказва ползвания протокол –  в нашия случай браузъра ползва http протокол за тази заявка. Втората част позната още като “ресурс” е останалото:

//www.w3schools.bg

Ресурса, който искаме да получим. Това е почти най-опростения вариант, който можем да срещнем. Всъщност можем да видим кой е най-опростения това е същият този но без www частта. Или само //w3schools.bg. Тази втора част от URL-а се състои от други няколко части. Но преди да ги разгледаме тук е мястото да споменем отново за ролята на сървъра. Сега той влиза “в играта”. Сървъра получава това “парче” текст и започва да си го “раздробява” за да “разтълкува” какво искаме той да ни изпрати. И така, да видим първо:

Двете наклонени надясно черти

Те служат за разделител между името на протокола, който ползваме и останалата част от ресурса, който търсим. Има няколко вида разделители които се срещат в URL-ите. Този е първият и единствен, който не участва пряко в заявката. След това в нашият пример следва www. Това в случая е

Поддомейн

Тези поддомейни служат също като разделители, но не във връзка със самите адреси както казахме по-горе а относно структурата на уеб сайта. Това е друга тема, за която ще говорим по-нататък. Тези под домейни, които можем да наричаме subdomain-и не са задължителна част а се явяват по-скоро като опция. След това следва точка, която също е разделител а след нея вече е същинската част

Основния домейн w3schools

или с други думи нашият основен домейн. Това е основния “наниз” – string от символи указващ “корена” – root-а на уеб сайта. А тук в роля влизат DNS. След това отново имаме точка а след нея следва

TLD домейна

или Top Level Domain. Това са така наречените домейни от високо ниво над които ние нямаме контрол и което всъщност купуваме когато искаме да притежаваме наш домейн. Едни от най-често срещаните са com, org или edu но има и много други. А от съвсем скоро вече има наистина много други – стотици други. За сравнение до преди имаше десетки.

Следва продължение. Ако имате интерес дайте вота си за статията.

Домейн имена

Какво са домейн имената?

С една дума те са имената на уеб сайтовате, които изписваме в адресната лента на браузърите за да достъпим желания сайт. В същността си съчетават две функции – едната е да именуват сайта а другата да указват точния адрес на сайта. Тъй като за адрес на всеки един сайт технически се ползва някакъв IP адрес, който се състои единствено от много числа за удобство са измислени домейн имената. Те на практика представляват IP адрес във вид на символи, които могат да бъдат цифри и букви. Също така към всяко име се прилага и разширение като .com, .net и други. Всяко едно име също както е и при IP-тата е уникално. Не е възможно два уеб сайта да имат еднакви имена с еднакви разширения.

Защо са ни необходими всъщност

Какво е да си Уеб дизайнер в днешно време?

Какво е да си уебдизайнер? Много прост въпрос, нали? Уебдизайнерите правят уеб сайтове – край! Е, истината е такава, че Уебдизайнер означава много и различни неща за различните хора и сферата на уеб дизайна се разширява толкова бързо, че служи по-скоро като универсален образ на множество дисциплини, а не на ясно определена индивидиуалност. Това е и причината поради която е толкова трудно да се дефинира уеб дизайн -обхваща много области. Мрежата(уеб) нарасна до толкова, че обхваща множество устройства, методи за доставка на съдържание, както и типовете съдържание.

Имайте предвид, че съдържанието, създадено от уеб дизайнери вече може да се консумира през браузъри, електронни четци, приложения, телефони, таблети, принтери, RSS четци, както и множество други (все още)нетрадиционни устройства, като коли, часовници и очила.

В това отношение, уеб дизайн вече не е само проектиране за браузъра, но и за всички останали видове потребителски интерфейси.

large_4-JavaScript-Projects-to-Advance-Your-CSS3-Animations

Също така е налице и въпроса за това какъв тип съдържание се създава. Дали това е комбинация от HTML, CSS и JavaScript? Също така включва ли снимки, стрийминг на видео или аудио, вградени уеб шрифтове, използва ли плъгини като Flash, анимират ли се елементи на страницата, или тя е комбинация от всички изброени по-горе? А какво да кажем за функционалностите? Това включва ли електронната търговия, скриптове отговорящи на входните данни на потребителите, извличане на информация от бази данни или друга функционалност от страна на сървъра, или пък се нуждаете от такава за да получи достъп до услуги от други сайтове и услуги като Twitter, Facebook, или Google Maps?

Погледнато така уеб дизайна може да изглежда малко смущаващо.

Много начинаещи уеб дизайнери често са претоварени от многото възможности и от обема на знанието, което те трябва да овладеят. Не веднъж съм чувал, “аз просто искам да направя прост сайт, защо трябва да се учат всички тези неща?”

Е, най-вероятно няма да се наложи да се научи всичко, както и вие може би ще се специализирате в една област или друга.

Въпреки това, е нужно солидно разбиране за това как работи интернет(който се опитваме да достигнем) и какви технологии са включени в създаването на един уеб сайт. В противен случай да си уеб дизайнер няма да се получи, независимо дали сайта който искаш да направиш е прост или не.

Пример: Представете си за момент, че трябва да се построи къща. Но искате само да се научите как да направите само фасадата тъй като това е, което всички всъщност ще виждаме в крайна сметка. Е възможностите са строежа да не се получи. Уеб сайтовете са по същия начин. Без истинско разбиране за всичко, което се случва зад “фасадата” и как правилно да се структурира един сайт, вие изпадате в недостатъчност. Това означава ли, че трябва да се научи всичко преди да започнем да създаваме уеб сайтове? Е, не, не точно. Както се казва, този трик за ядене на слон на един път не върви – яде се по малко, хапка по хапка.

Въпреки че уеб дизайна обхваща широк спектър от дисциплини можем да приемем за по-тясно значение на терминът уеб дизайнер това, което се включва във Front End Design. Този дизайн включва визуалната част на уеб дизайна, планиране и структуриране на обектите, дизайна на потребителския интерфейс, и от страна на клиента – интерактивността. Голяма част от процеса при Front End разработките изисква минимални познания за скриптовете и още по-малко за програмиране. Също така трябва да се отбележи, че много малко уеб дизайнери са в състояние да правят всичко за което вече споменахме по-горе.

Повечето хора специализират в области, които допълват техните знания и умения или просто са им най-интересни. Други умения обикновено се придобиват в съответствие от вида на сайтове, над които работим и функциите от които тези сайтове се нуждаят. Това можем да наричаме обучение във времето и за съжаление, често е единственият вид обучение за повечето уеб дизайнери, което те получават.

какво е да си уеб дизайнер

Така че, няма един ясен набор от умения, който определя какво означава уеб дизайнер.

Очевидно проектирането и изграждането на уеб сайтове е в основата на това какво означава да се наричаш уеб дизайнер, обаче ние ще открием че истинското учене на уеб дизайн започва, когато интереса ни към конкретни области е по-голям спрямо други или проектите над които работим изискват специфични технолгии и умения, които придобиваме в движение за да можем да доведем проекта до край.

Няма нищо грешно в това. Почти всички уеб дизайнери се фокусират върху една или друга група от дисциплини. Въпреки това, посвещавайки себе си на изучаването на повече неща  от широката палитра от дисциплини на уеб дизайна, ще гарантира че сте способни да запазите контрол над целия творчески процес и ще сте запознати с непрекъснато променящия се характер на уеб дизайна.

Вижте още:

Различните области при уеб дизайна

Обичайният метод на работа при уеб дизайна

Различните области при уеб дизайна

Какво представлява уеб дизайна

Уеб дизайна е станал невероятна смесица от области. В средата на 90-те години, всичко което наистина беше необходимо да се знае, е малко HTML, как се създават връзки, и как да се поставят снимки на страницата. Може да ползваме инструмент като Dreamweaver или GoLive и вече сме оборудвани за работа. Сега ние сме изправени пред много по-различен пейзаж. Такъв, в който има толкова много използвани технологии и процеси, че е по-вероятно да се намери уеб дизайнер, който се е специализирал в определена област на уеб дизайн или конкретна технология.

Нека да споделим някои от тези специалности, така че да имаме по-добра представа за специфичните области, над които може да се фокусираме и да имаме по-ясна представа за обема от разнообразието участващо в областта на уеб дизайна.

Какво е общопрактикуващ уеб дизайнер

Първо типа Generalist (общопрактикуващ или още т.н общи специалисти). Този тип са дизайнери, които са силни в основните необходими умения при уеб дизайна и също така се справят сравнително добре с целия процес на създаване на сайтове, от планиране и създаване на прототипи през целия път до изграждане и тестване. Това е лицето, което може да изгради цялият сайт от нулата обикновено без помощта на другите. Ако специфични нужди възникнат извън тяхната област на експертиза, те обикновено се отнасят към друг специалист или предизвикват себе си да добавят нужните умения, като по този начин увеличават своя набор от умения.

Какво е UX дизайнер

На следващо място, ние имаме visual designers (визуални дизайнери). Това са дизайнерите, които се занимават предимно с визуалния аспект     на сайтове и интерфейси. Цветове, оформление, типография, и графики са им типична област нада която се фокусират. Те са склонни да бъдат личности със силни дизайнерски умения и често са графични дизайнери, които в последствие се пренасочват към уеб дизайна. Друга специалност, която се дискутира много напоследък е UX дизайна. UX означава User Experience и по мое мнение етикета UX дизайнер е малко в страни от гледна точка на термина уеб дизайн.

Какво е UX дизайнер и уеб дизайнер

UX се фокусира над потребителското изживяване което означава, че дизайнера  е фокусиран за създаване на сайтове и приложения, като чрез своя дизайн подсилва потребителското преживяване. Ако използвате това общо определение обаче, почти всеки дизайнер е UX дизайнер. Искам да кажа, че всички сме загрижени за преживяването на нашите потребители? Така че, бих искал да се изясни, че UX дизайнер не е визуален дизайнер, който е решил да ползва терминът. А UX дизайнер е някой, който е изучавал човешкото поведение и след това проектира в съответствие с това.

Често UX дизайнерите са без уеб умения като цяло и се използват като консултанти, за да помогнат при създаване на потребителско ориентирано преживяване при изработката на сайтове. Определено се уверете, че наистина разбирате какво означава UX дизайн и така можете да започнете да се приближавате към тази дисциплина правилно. Интерактивните дизайнери – Interactive Designers – правят точно това. Те се фокусират върху изграждането на интерфейси, които създават “безшевни“ взаимодействия между потребители и сайтове. Те са тясно свързани с UX дизайнерите, но също така са склонни да бъдат по-фокусирани върху поведенчески технологии като JavaScript, които им позволяват да модифицират статични HTML интерфейси в завладяващи интерактивни преживявания.

Motion Graphic Designers(без превод на български) се фокусират върху анимацията. В много случаи, това са традиционните аниматори, които са се преместили в интернет средите като средство за реализиране или вече работят по уеб проекти, които изискват анимация. Това също може да бъдат уеб дизайнери, които се интересуват от анимирано съдържание или дизайнери, които работят в разработката на игри. Въпреки че Flash все още се използва широко за анимация и игри в интернет, Motion Graphic Designers все повече използват JavaScript и HTML5 технологии.

Какво е Front End дизайнер

Това е дизайнер, който се фокусира повече върху функционалността на сайтовете, откъм клиентската страна. Възходът на JavaScript и мощта на JavaScript библиотеките е довело до експлозия при разработките, която се движи от обработката на скриптовете на сървъра до това да се извършват операциите директно в браузъра. Това е довело до размиване на границите между дизайнери и разработчици. В миналото, повечето дизайнери биха наели разработчици за контрола на логиката на сайт и поведението чрез сървърърни скриптове. Сега, много от тази функционалност може да се извърши чрез използването на JavaScript.

Front End разработчик ползващ езиците HTML CSS и JavaScript

Понеже дизайнерите обикновено са запознати с JavaScript, мнозина се превърнаха в това, което ние наричаме Front End разработки. Сега, обратното също е валидно. Разработките на толкова много Front End Frameworks прави възможно за разработчиците да изършват голяма част и от дизайнерската работа. Както става ясно вече линиите се размиват.

Има още една специалност и тя е специалист по CMS. CMS като Drupal, Joomla и WordPress позволява на дизайнерите бързо изграждане на уеб сайтове с изключителни функционалности. Много дизайнери са решили да се специализират в конкретна CMS платформа.

Някои са специализирани в изграждането на WordPress теми или разширения, докато други могат да се специализират в разработването на Drupal или Joomla сайтове. Докато тази тенденция да се “връзва“ дизайнера към конкретна платформа, екосистемите на тези платформи са достатъчно големи, за да подкрепят сериозно общността от дизайнери и разработчици. Докато това са само някои сфери от областта на уеб дизайна, в които може да се специализира, искам да подчертая, че в действителност много малко уеб дизайнери са специализирани само в една област. Повечето уеб дизайнери започват с определен набор от умения или с това да се съсредоточат над някои и след това по време на развитието на кариерата си придобиват нови умения или се сливат в нови специалности, когато те възникнат.

Естествено е да се започне с областта, в която е повечето от вашия интерес или тази която е предварително набелязана. Независимо от това как сте решили да се обучавате, не се фокусирайте върху една специалност или технология, която би могла да прикрие това, което се случва в другите. Мрежата се развива бързо и една от отговорностите на уеб професионалистите е да се развиват заедно с нея.

Вижте още:

Какво е да си Уеб дизайнер в днешно време?

Обичайният метод на работа при уеб дизайна

Обичайният метод на работа при уеб дизайна

Всеки дизайнер и агенция си имат “метод на работа” така казано на английски workflow. Тези методи зависят изключително от личните предпочитания и това което работи за един не необичайно да не работи за друг. Тук ще имате възможността да се запознаете с един примерен workflow. Целта е да видите вариант, възможен пример като след това може да нанесете корекции или изцяло да го промените.

Промените може да се наложат и в зависимост от естеството на проектите по които ще работите. С времето нарастват знанията и възможностите от технологична гледна точка и не само. Тези фактори също биха могли да определят начина ни работа. Дори може да се твърди, че непременно го правят.

В повечето случаи може да обособим 4 отделни сегмента по които да работим при всеки проект.

При някои проекти един или дори повече от тези сегменти би могъл да се изпълни от трети лица като в такъв случай той отпада от нашето задание.

Планиране, дизайн, разработка и “пибликуване”/publishing/. Често по време на изпълнението на проекта преминаването между тези етапи би могло да става съвсем плавно или твърде рязко. Така че ние трябва да сме уверени, че методите ни на работа са достатъчно гъвкави за да улавяме прекъсванията, които ги има при всеки проект.

Да ги разгледаме поетапно.

Обзор на проекта/create a project brief/. Това обхваща основните неща при почти всеки проект – какъв е обхвата на проекта и съответно какви са целевите резултати които искаме да достигнем в края му. Извършването на това още в самото начало на проекта ни уверява, че нашите очаквания съвпадат с очакванията на клиента. Това е наистина важно! Ако това ви звучи като нещо излишно, вие може/ще/ да останете много изненадани колко често се получават разминавания в разбиранията между нас и клиента. Следващата стъпка е да направим “обход” или преглед на съдържанието на уеб сайта. Това е изчерпателен списък с цялото съдържание, което ще участва в уеб сайта – проекта. Това не означава, че трябва да разполагаме с въпросното съдържание. Това се прави за да определим типовете съдържание, което ще е необходимо, неговият обем и други. В крайна сметка трябва да добием много ясна представа за това за да можем да преминем към следващият етап. Създаване на стратегия около съдържанието/content strategy/. Определяйки какво съдържание ще има на сайта бихме могли да приоритизираме и планираме как дизайна да доведе потребителите до това да достъпят по възможно най-удобния и лесен за тях начин въпросното съдържание. На този етап е нужно да направим чернови на изначалния план на сайта които включват “скици”, карта на сайта и функционалности/wireframes, sitemaps, and feature lists/. Тук не правим никакъв дизайн! След като приключим с това вече преминаваме към фазата с дизайна. Обикновено най-продуктивния начин за започването на това е със скицник или нещо подобно. Скицирането по този начин се извършва много по-бързо и лесно и нанасянето на корекции също.

Even though I know plenty of designers that actually prefer to sketch directly in code.

Може би най-голямото предимство на този метод е, че така можем да видим възможностите “от птичи поглед” – във вид на наредени скици на плота. В електронен вариант това е твърде трудно осъществимо. Ако проекта го налага след това се прототипизира. Това са визуални елементи, които представят съвсем нагледно какво ще представлява проекта в краен вариант. Това позволява на клиента не само да добие представа за визуализирането на проекта но също така и за функционалността. Прототипите не са непременно задължителни за всеки проект но биха могли да бъдат изключително ефективно средство за “синхронизиране” на идете и вижданията между нас и клиента преди да преминем към същинското изпълнение на проекта. Чак когато сме уверени, че имаме съвсем ясна представа относно заданието и знаем че клиента е удовлетворен до момента преминаваме към същинската разработка. Обикновено това се отнася до започването на изработката на “прилежащите материали/assets/”. Това може да включва изображения, шрифтове, видеа, други графики или други неща които са необходими. Не винаги ще е възможно да се набавят всички нужни асети/assets/ по време на разработката. Всъщност това се случва твърде рядко. Но когато е възможно обикновено това улеснява процеса на разработка. След това вече започваме разработката на сайта.

If I’ve done my planning properly, I already know how the site is going to be structured and what type of functionality is going to need to be programmed.

Now, typically, I’ve got a really good idea of how my code is going to look before I ever start.

За по-големи проекти се налага да се работи в екип. За тези случаи се установяват “стандарти”, които всички да следват за да се улесни процеса и да знаем, че всички са наясно с всичко.

Нещо от изключителна важност е да се съобразява където е възможно кода да бъде такъв, че да може при необходимост да се промени така че да обхване нуждите на сайта при евентуално разрастване.

Разбира се по време на целия този процес кода който пишем трябва да се тества на множество браузъри. ?! Обикновено тестването ни подсигурява за това, че малките грешки/бъгове/ няма да доведат след себе си такива но по-големи. Когато сайта става с все повече и повече функционалности наистина е много добра идеята да извършим така нареченото “тестване за ползваемост/usability testing/”. Особено ако времевите рамки и бюджета на проекта го позволяват това.

И стигаме до края на процеса, на всичките тези 4 сегмента за които говорим до момента. Публикуването на сайта. След този момент в зависимост от договорката с клиента работата може и да продължи. В повечето случаи даже е така. След публикуването на сайта, така че да бъде обществено достъпен и да може да се ползва по предназначение следва да се наблюдава за бъгове и поведение. Какво натоварване издържа и претърпява и други.

В заключение ще завършим с това с което започнахме – а именно за всеки човек и екип работният модел е строго индивидуален – за едни работи едно, за други нещо съвсем различно. Вие трябва да си намерите своят метод на работа, който приляга на вас самите. Да звучи сложно и трудно, но всъщност не е – след като знаете какво търсите то намирането му не е толкова трудно – вече всичко(в това отношение) е общо достъпно. Да и като започнете работа в екип това също ще е в списъка на задълженията но пък по този начин може да ви се отворят врати за много други възможности,  което пък е нещо чудесно.

Вижте още:

Какво е да си Уеб дизайнер в днешно време?

Различните области при уеб дизайна

Как работи уеб всъщност

Като уеб дизайнери е важно да знаем как работи интернет и процесите, които се извършват при хостинга, обслужването и рендерирането на уебсайтовете. Разбирането на технологиите ни позволява да правим по-ефективни сайтове и да имаме конкретни разбирания за това защо въобще правим това което правим.

Как уеб раобти като един цялостен процес

If you could compare learning web design to building a house, consider this the foundation.

Уеб не е същото като интернет.

Интернет е термин, който се ползва за масивната мрежа от /милиони/ компютри по света споделяйки и предавайки информация помежду си. Това се осъществява с помощта на различни протоколи и езици и включва неща като email, SMS messaging, application data, и също така и уеб. Термина World Wide Web, който обикновено е съкратен просто до “уеб” е начин за предаване на данни чрез протокола HTTP и езика HTML. Уеб се заключава в серии от взаимодействия между два вида страни – клиенти и сървъри.

Клиентите

са устройствата, които правят заявките към сървърите и след като получат заявеното съдържание го рендерират. Може би най-популярният клиент, който се ползва в днешно време е уеб браузъра. Други могат да бъдат мобилни приложения, електронни четци и други.

“”” Ние живеем в непрекъснато нарастващ със своята свързаност свят и броят на клиентите които достъпват уеб съдържание нараства значително. Всъщност да останем адекватни спрямо всички нови клиенти, които се появяват и с методите които ползват те за достъпване на съдържание е един от най-предизвикателните аспекти на уеб дизайна. “””

Сървърите

са приложения, които доставят съдържанието на клиента. Има широка гама от уеб сървъри и видове такива, които са специализирани в доставянито на конкретни типове данни или конкретни възможности за обработка. Всички те са ангажирани по някакъв начин в предоставянето на съдържанието, което клиента иска да достъпи или услугите, от които имаме нужда да се изпълнят. Ако сте заинтересувани в аспект на програмиране при уеб дизайна или в хостването/хостинг/ на сайта си, то ще има нужда да се запознаете с различните видове сървъри и как те работят.

HTTP протокола обяснен на кратко

HTTP се отнася до hypertext transfer protocol и е стандартният протокол за трансфер на ресурси през интернет. Сега е момента да разерем, че протокол е просто стандартизиран формат за трансфер на данни между две устройства. В този случай браузъра е HTTP клиента докато уеб сървъра – този който съхранява/хоства/ търсения уеб сайт се явява HTTP сървъра. Браузъра изпраща HTTP заявка, която съдържа информация за търсения ресурс. Тази заявка кара сървъра да върне HTTP отговор, който в повечето случаи се състои от търсените ресурси.

Http протокола за какво служи

Има също така и други протоколи, които се ползват за трансфер на данни в зависимост от типа данни, начина на комуникация между сървъра и клиента, дали и/или кои от данните са компресирани и други. Някои от по-често ползваните протоколи, за които ще чуете още включват FTP, SMTP, и RTP.

FTP се отнася File Transfer Protocol и е най-ползваният протокол за предаване и приемане на файлове по интернет. HTTP се нарича още one-way stateless или еднопосочен протокол без “гражданство”. Тази му черта прави преноса на големи файлове много труден. За сравнение FTP се явява файлов сървър а не уеб сървър, което го прави идеален за трансфер на големи файлове. Поради тези причини дизайнерите много често го полват.

SMTP е Simple Mail Transfer Protocol. Това е стандартен интернет протокол за имейл транзакции в уеб. В повечето имейл клиенти SMTP се ползва за ипращане на имейли докато POP или Post Office Protocol се използва за получаване на имейли. RTP или Real-Time Transfer Protocol е стандартен протокол за доставка на аудио или видео доставяне по интернет. Най-често се използва за гласови услуги по IP и чат приложения.

Във връзка с HTTP и названието stateless протокол. Това се отнася до това, че в момента в който сървъра получи една заявка след като бъде обработена то той я “забравя” или бива изтривана от паметта и съответно вече няма достъп до нея. Същото важи и за клиента и неговата заявка. Това прави HTTP ефикасен и прост протокол, а и това е причината поради която е толкова успешен за уеб.

Нищо в заявката не се запаметява никъде така, че неща като данни за вписване/logins and browsing sessions/ или добавянето на продукти в количка(при магазините) трябва да се записват някъде. Това се случва с помощта на няколко различни метода, за които ще говорим подробно на други места.

cookies, which are small text files that the page writes on the client machine. Scripting languages, such as JavaScript. Variables which are stored on the server, or server based session management

Може да забележите и HTTPS протокола, който е вариация на HTTP. HTTPS се отнася за Hypertext Transfer Protocol Secure и проста надграждащ слой/layer/ с цел повишаване на сигурността при комуникацията между клиента и сървъра.

Анатомия на URL адресите

Уеб дизайна е изпълнен с елементи, които просто остават на заден план или не заемат толкова централна позиция спрямо други. URLs попадат точно в тази категория и ако има някоя част от уеб дизайна, която да е крайно пренебрегвана, то е точно тази.

URL е съкращение от Uniform Resource Locator

Обикновено ние сме свикнали да поглеждаме на тях като на един ред от символи, които ползваме за връзки или уеб адреси към уеб сайтовете като всъщност те са изградени от няколо части. И синтаксиса, който се ползва от тях всъщност служи на сървърите да определят какъв тип файл се търси, къде да се търси и също така може да има приложени един или повече параметри определящи нещо конкретно.

http://www.w3schools.bg – това е началната страница на сайта както можем и да очакваме. Този адрес – URL – се състои от 2 основни части. Да започнем с първата:

“http:”

това оказва ползвания протокол –  в нашия случай браузъра ползва http протокол за тази заявка. Втората част позната още като “ресурс” е останалото:

//www.w3schools.bg

Ресурса, който искаме да получим. Това е почти най-опростения вариант, който можем да срещнем. Всъщност можем да видим кой е най-опростения това е същият този но без www частта. Или само //w3schools.bg. Тази втора част от URL-а се състои от други няколко части. Но преди да ги разгледаме тук е мястото да споменем отново за ролята на сървъра. Сега той влиза “в играта”. Сървъра получава това “парче” текст и започва да си го “раздробява” за да “разтълкува” какво искаме той да ни изпрати. И така, да видим първо:

Двете наклонени надясно черти

Те служат за разделител между името на протокола, който ползваме и останалата част от ресурса, който търсим. Има няколко вида разделители които се срещат в URL-ите. Този е първият и единствен, който не участва пряко в заявката. След това в нашият пример следва www. Това в случая е

Поддомейн

Тези поддомейни служат също като разделители, но не във връзка със самите адреси както казахме по-горе а относно структурата на уеб сайта. Това е друга тема, за която ще говорим по-нататък. Тези под домейни, които можем да наричаме subdomain-и не са задължителна част а се явяват по-скоро като опция. След това следва точка, която също е разделител а след нея вече е същинската част

Основния домейн w3schools

или с други думи нашият основен домейн. Това е основния “наниз” – string от символи указващ “корена” – root-а на уеб сайта. А тук в роля влизат DNS. След това отново имаме точка а след нея следва

TLD домейна

или Top Level Domain. Това са така наречените домейни от високо ниво над които ние нямаме контрол и което всъщност купуваме когато искаме да притежаваме наш домейн. Едни от най-често срещаните са com, org или edu но има и много други. А от съвсем скоро вече има наистина много други – стотици други. За сравнение до преди имаше десетки.

Следва продължение. Ако имате интерес дайте вота си за статията.

Как работят браузърите

Повечето хора ползват уеб браузъра подобно на това както ползват автомобилите си. Тоест те просто завъртат ключа да запали и тръгват. За “обикновения” уеб потребител няма нищо грешно в това. За уеб дизайнерите и разработчиците обаче, това да знаят какво се случва отвътре на техните браузъри е много важно. Първото и най-съществено нещо, с което трябва да сме наясно е:

Всички браузъри са направени по различен начин

Това е от значение за нас понеже тези разлики водят след себе си други разлики, които се виждат – не става въпрос за неща които само ние си знаем и хората които са разработили “модулите” на браузърите. Говорим за крайния потребител на сайтовете ни – човека който стои зад браузъра и пуска заявките.

Браузърите ползват протокола HTTP

за комуникация с уеб сървърите и за получаване на заявеното съдържание. Когато потребителя кликне върху някой линк по уеб страницата или въведе някакъв адрес в адресната лента, браузъра изпраща заявка за да може да достъпи желаните от клиента ресурси. Сървъра в отговор връща заявените ресурси към браузъра. Веднъж когато това стигне до браузъра – обикновено е HTML документ – браузъра използва вградената в него машина за рендериране на такива ресурси. Извършва

Процеса рендериране

с помощта на който съдържанието на документа се изобразява на екрана по точно определен начин. Прилежащите “активи” – файлове от друг тип – като изабражения, аудио или видео файлове и други се заявяват отделно и съответно се рендерират отделно в зависимост от това браузъра какви файлови формати поддържа или ако са такива, които никой браузър не поддържа/например флаш/ дали има инсталирана допълнителна приставка с помощта на която могат да се рендерират.

Скриптовете

се рендерират от друга машина. Тези скриптове, които се изпълняват при клиента са JavaScript скриптовете. Понеже тази рендерираща машина е отделна от тази за HTML документа тя се включва само при нужда. Може да има скриптове, които са пристигнали при клиента след заявка и да не се изпълняват до момента в който не биват извикани в изпълнение.

Потребителския интерфейс

при браузърите се състои от два основи елемента – адресната лента и прозороце в който се зареждат страниците. Всички си имат разни допълнителни – отметкити/bookmarks/, бутони за връщане кам предишната страница и за отиване напред ако сме се връщали, за презареждане и други. Всички тези работят с вътрешната машина на браузъра, която ги управлява и отговаря за комуникацията помежду им.

След пристигането на уеб страницата и прилежащите и ресурси при клиента се състои рендерирането на въпросните ресурси и изпълнението на скриптовете от интерпретатора на скриптове. След този момент следва взаимодействие между потребителя и всички останали машини в браузъра. Например скролирането на страницата е  едно такова взаимодействие за което отговаря отделен компонент на браузъра. Друг пример е запаметяването на някакви данни било то “бисквитки” или друго – за тях отговаря друг компонент. За самата заявка има мрежови компонент. Всичко това ще го разгледаме подробно на друго място.

Уеб сървърите, какво са и какъв да изберем – споделен или частен/виртуален/ хостинг

Уеб сайтовете се съхраняват на уеб сървъри. И въпреки, че повечето дизайнери го знаят това те не отделят много време за да научат тънкостите на това как те работят. И това е ОК. Но съществуват някои основни концепции, с които е нужно да се запознаем и разберем за да може уеб страниците да се доставят коректно до клиента.

Уеб сървъра не е нищо повече от компютър с инсталирани на него специализиран софтуер и компоненти. Компютъра на който работите обикновено или друг, който се ползва в домашни условия за ежедневни нужди би могъл да стане уеб сървър. Дори е твърде вероятно той да има вече такъв на него и да е необходимо само да се включи.

Всички уеб сървъри имат собствен IP адрес

Към този адрес са прилежащи домейн имената които отговарят за сайтовете ни. Услугата, която предлага уеб сървъри под наем се нарича хостинг. Разбира се всеки може и да си закупи

Видовете хостинг обикновено са два. Единият е така нареченият “споделен” хостинг, а другият се нарича “отделен” хостинг. И двата вида са изключително популярни и разпространени. На практика почти няма компания, която да не предлага и двете възможности. Трябва да сме наясно с разликите и да можем да ги отчитаме при избра си.

Споделения хостинг е такъв на който се съхраняват множество акаунти и те споделят един IP адрес. На много други места се определя като такъв на който се съхраняват повече от един уебсайт, но това е малко неточно. Казваме акаунти тъй като отдавна на (почти)всеки хостинг план независимо дали е споделен или частен може да се съхраняват множество сайтове. Една от разликите е, че в единия случай имаме контрол над това какви сайтове да има на един IP адрес а в другия нямаме.

Виртуалния частен хостинг се отнася до това ние да разполагаме със заделени физически ресурси на които да можем да разчитаме по всяко време. Това се явява един вид заместител на цял един компютър заделен за нас. Всъщност на един компютър – по-точно клъстър от компютри – специализиран софтуер разделя цялото на множество отделни виртуални машини със конкретно заделени за тях параметри.

Напр. (днес) един от плановете на ДО се състои от виртуална машина разполагаща с процесор от едно ядро, 512MB RAM и 5GB дисково пространстово за файлове.

Отделените/частните/ хостинг планове обикновено са на по-високи цени. Но вече конкуренцията е твърде голяма а цените на такива услуги постоянно падат и това твърдение относно цените все повече губи тежестта си.