Създаването на една средно сложна уеб страница изисква комплексни познания от набор от езици – от HTML до JavaScript.
Учени от Масачузетския технологичен институт (Massachusets Institute of Technology, MIT) са решили да разчупят сегашното положение в областта на уеб разработката, създавайки унифициран език, който ще обедини нужните за разработката на интернет страници куп езици.
Целта на Ur/Web е не само обединението на технологиите с цел да улесни разработчиците, но и ускоряване процеса по разработката на съдържание за Мрежата, а така също и осигуряването на по-добра защитеност на ресурсите от атаки.
„Мисля, че този език има потенциала за всеобщо разпространение и намаляване на разходите за уеб-разработка“, споделя Адам Чипала, автор на новия език и професор по компютърни науки в MIT.
Очаква се Чипала да представи своята разработка следващия месец пред участниците в Симпозиума относно принципите на програмните езици, организиран от Асоциацията по компютърно оборудване.
Знаете, че HTML служи за основа при форматирането на една интернет страница, но заедно с него се използват и ред уеб технологии, като CSS, който позволява оформянето на вида на една страница, или XML, който помага за структуриране на информацията, класификация и допълнителна обработка а с помощта на JavaScript, разработчикът осигурява основата за определянето на бизнес логиката за начина, по който потребителят взаимодейства с ресурса, а ако трябва информацията да бъде запазена в база данни, то той трябва да има познания по SQL.
Според автора на Ur/Web, езикът съчетава всички тези способности изброените езици и още доста, като след това крайният продукт бива компилиран в изпълняем машинен код.
Именно възможността за компилиране е една главните причини за това той да е по-ефективен за изпълнение, отколкото код, който е продукт от използването на стандартните езици за уеб разработка.
„В Ur/Web всичко се подчинява на транзакции, при които заявката на един-единствен клиент бива обработена от това, което на пръв поглед изглежда като непрекъснатото изпълнение на една-единствена функция“, споделя Чипала, допълвайки, че разработчикът ще има възможност да оптимизира допълнително своя продукт като езика поддържа паралелната обработка множество заявки, на реални сървъри.
Освен, че улеснява значително разработчиците, вертикалният подход на Ur/Web предлага някои защитни механизми, които могат да помогнат за обезопасяването на изгражданите ресурси. Езикът също така забранява случайното взаимодействие между различните елементи по страниците. Това гарантира да речем, че придружаващата страници реклами няма да могат да си взаимодействат с календарния уиджет някъде по страницата, пише Джоуб Джаксън от страниците на TechWorld.
Също така – подобно на традиционни програмни езици, като C и Java, и за разлика от езици за уеб програмиране като JavaScript – Ur/Web е строго типизиран, което означава, че всички променливи и функции трябва да бъдат съобразени с предварително обусловени типове данни, което ограничава възможността на атакуваща страна да изпрати към ресурса умишлено изготвени зловредни данни посредством уеб форма. Езикът поддържа също така строго дефинирани правила за обхват на променливите (variable scoping) или ограничаване на местата в програмата, където дадена променлива може да бъде извикана.
Разбира се има и някои подводни камъни тук. За средностатистическия уеб разработчик, новия език може да е сериозно предизвикателство по отношение на заучаването му. Това е така, тъй като Ur/Web спада към групата на функционалните компютърни езици – стил в програмирането, който третира програмите като серии от функциим което макар и по-ефективно по за целите на изчислениети и обработката, но по-труден за заучаване от програмист, свикнал с процедурните или обектно-ориентираните езици.
Самият автор сравнява Ur/Web с Haskell, програмен език недолюбван от не един разработчик, но с достатъчно фенска маса, които го харесват, заради неговата