Учебна програма:
Въведение1
- Представяне на курса и съпътстващите онлайн ресурси.
- Да подредим бъркотията от понятия: WebDesigner vs. Front-end vs. Back-end vs. Full-stack developer? UI/UX?
- HTML, CSS, JavaScript - какво можем да правим с тях? Live demo.
Настройка на средата.3
- Структура на директориите.
- Инструменти за създаване на Уеб страници.
- Запознаване с VS Code.
- Платформи за споделяне на код. За какво и как ще използваме
codepen.io
? - Качване на файлове в GitHub: HowTo
Основи на HTML2
- Структура на една Уеб страница.
- Какво е HTML и
HTML5
? - Синтаксисът е в основата на всичко.
Doctype
,head
иbody
секции.- Елементи в
head
секцията. Мета информация за документа. - Коментарите, макар и безгласни, могат да бъдат важни.
HTML елементи за структуриране на текст.2
- Работа с параграфи и заглавия.
- Елементи:
b
,strong
,i
,em
,mark
,small
,del
,ins
,sub
,sup
,code
,pre
,kbd
. - Създаване на Уеб документ с разнообразно текстово съдържание.
Хипервръзки (линкове) и изображения.4
- Вмъкване на изображения, разположени върху локален сървър или WWW.
- Създаване на хипервръзки (линкове) към WWW ресурси или ресурси, разположени на сървъра.
- Създаване на връзка към секция (bookmark) в текущия документ.
Iframes2
- Как да "вградим" съдържание от други страници в нашия документ?
- По-голям контрол и безопасност на съдържанието чрез атрибута
sandbox
. - Вмъкване на карта в страницата (GoogleMaps и bgmaps).
- Вмъкване на Пен от codepen.io
Списъци в HTML3
- Създаване на подредени списъци.
- Създаване на неподредени списъци.
- Създаване на вложени списъци? Лесно, ако следваме едно единствено правило.
Таблици в HTML1
- Кога и за какво да използваме таблици?
- Как да създадем таблица в HTML.
- Сливане на клетки (cell span) по редове и колони.
- Някои забележки относно оформлението на таблиците и HTML5.
Клиент-Сървър комуникация. Основи на HTTP. Защо WWW ≠ Internet?4
- Как работи Интернет? Клиент-Сървър комуникация. Основни понятия в HTTP (request/response messages, query methods).
- Какво е
domain
,hosting
,IP адрес
,DNS
? - Преглед на развитието на
WWW
и технологиите зад нея.
HTML5 форми4
- Елементи за въвеждане на информация от потребителя.
- Нови възможности в HTML5 за въвеждане и валидиране на email, дата, телефон и пр.
- HTML5 ColorPicker (без JavaScript).
- HTML5 files upload.
Въведение в CSS2
- Какво е CSS и как допълва HTML.
- Inline, internal или external CSS?
- Структура на CSS правилата.
- Наследяване на CSS правила. Какво е "каскадното" в CSS ?
Стилизиране на елементите в страницата чрез CSS34
- Запознаване с основните CSS свойства за оформление на текст, шрифт, цвят, фон и рамка.
Селектори в CSS3 - Част14
- Селектори за елементи.
- Селектори за class и id.
- Селектори за атрибути.
- CSS комбинатори.
Да влезем в кутията или the CSS box model.4
- HTML елементът разгледан като кутийка.
- Основни CSS свойства за оразмеряване на "кутийките".
- Блокови и поредови елементи.
- Replaced elements? <img>, <object>, <video>...
- Групиране на елементи в блок с елемента div.
- Групиране на елементи в ред с елемента span.
Стойности за цветове и мерни единици в CSS34
- Стойности за цветове (чрез име, RGB,HSL)
- Абсолютни и релативни мерни единици.
Да излезем от кутията или как браузърът подрежда HTML елементите.6
- Накратко за Visual Formatting Model.
- Свойството
display
и новите модели в CSS3. - Позициониране на елементите - свойства
position
иfloat
. - Пренареждане на елементите чрез свойството
z-index
.
Селектори в CSS3 - Част22
- Селектори за псевдо-класове.
- Селектори за псевдо-елементи.
- Създаване на падащи менюта (вертикални и хоризонтални) от списък чрез CSS.
-
Въведение в JavaScript2
- Защо се създава?
- Какво е JavaScript? А EcmaScript?
- Защо не бива да бъркаме JavaScript с Java.
- Какво можем да правим с JavaScript?
- Как и кога браузърът изпълнява JavaScript.
- Къде и как да включим нашия скрипт?
JavaScript - основни синтактични елементи.8
- Структура на програмата.
- Променливи (Variables)
- Прости типове данни (Primitive types)
- Коментари и добри практики за тяхното използване.
- Оператори.
- Условни изрази.
- Цикли.
Javascript: масиви и операции с тях.2
- Дефиниране на масив.
- Достъп до елементите
- Масива като обект
- Основни операции с едномерни и двумерни масиви
JavaScript: функции.6
- Какво са функциите в JS? За какво се използват?
- Дефиниция на функция (function declaration vs function expression)
- Извикване на функция. Предаване на аргументи. Връщане на резултат
- Function Scope. Shadowing.
- Анонимни функции. IIFE.
- Hoisting.
JavaScript - обекти4
- Какво представлява обектът?
- Създаване на единичен обект чрез литерал.
- Достъп до свойствата на обект (dot и square brackets notation).
- Създаване на множество еднотипни обекти чрез Factory и Constructor функция
Стандартни вградени обекти в EcmaScript2
- Primitive object wrappers
- обекта Math
- обекта Date
- обекта Object
- Игра: преди колко дни съм роден?
HTML DOM, BOM - или как JavaScript взаимодейства с браузера.4
- Накратко за
BOM
иDOM
. - Достъпване на HTML елементите чрез JavaScript и
DOM
. - Промяна на съдържанието на елементите.
- Създаване и изтриване на HTML елементи.
- Игра: познай числото!
- Накратко за
JavaScript и HTML DOM Events4
- За какво и как се използват
event handlers.
- Mouse events.
- Keyboard Events
- Frame/Object Events
- Form Events
- Drag Events
- За какво и как се използват
Как да променяме CSS свойствата на елементите чрез JavaScript1
HTML DOM Style Object
- element.style property
- window.getComputedStyle()
- Промяна на стил чрез задаване на предефиниран клас
Tаймери в JavaScript 1
- Синхронен и асинхронен JavaScript - кратко въведение.
- setTimeout()
- setInterval()
- clearTimeout()
- често срещани проблеми и методи за тяхното решаване
Въведение в jQuery1
- DOM манипулации с jQuery
- Предимства и недостатъци на jQuery. Кога да го използваме.
Основи на TypeScript2
- Какво е TypeScript и защо да го използваме?
- Инсталиране и базови настройки. Компилиране на TypeScript до JavaScript.
- Интегриране на TypeScript в VSCode.
- Основни типове в TypeScript
Въведение в Bootsrap (optional topic)1
Класически компоненти при създаване на Уеб Страница/примери от реални проекти1
- Layout на страницата. Подравняване на компонентите.
- Менюта и навигация:
- Smooth Scrolling (със или без анимация)
- Change Header opacity on scroll
- Галерия със снимки и слайд ефекти:
- Image Overlay Effects
- Slider With Interval And Clearing
- Simple Accordion effect with Pure JS and CSS animation
Вместо заключение1
Responsive Web design
.- Тенденции в развитието на Front-End технологиите. Как да продължим към advanced ниво.
Appendix0