BETA

Обучения
Изграждане на модерни уеб приложения с  PHP, MySQL и JavaScript




Изграждане на модерни уеб приложения с PHP, MySQL и JavaScript


Нов курс от Pragmatic, стартиращ на 18.02.2015.

Целта на курса е да даде детайлни познания по програмиране използвайки езика PHP. Също така ще бъдат представени добри практики за планиране и реализация на софтуер независимо от използваните технологии.

Ще се разгледат в детайли основите на езика PHP, като синтаксис, както и работата с HTML, CSS, Уеб Сървъри, MySQL, Обектно Ориентираното Програмиране(ООП), Unit testing с PHPUnit, MVC архитектурни шаблони, JavaScript и въведение в Web 2.0.

За кого е предназначен

Курсът е предназначен за хора с минимални или никакви познания в сферата на софтуернатa уеб разработка. Целта на този курс е да даде на един начинаещ, всички необходимите познания и умения, с които би могъл да потърси работа, като Junior PHP програмист.

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

Продължителност на курса

Курсът е вместен в 18 лекции, всяка с продължителност 3 часа. Занятията се провеждат два пъти седмично, като общата продължителност на курса е 10 седмици. След всяко занятие ще има домашна работа, която е задължителна. След края на курса ще има изпит.

Занятията ще са смесени (лекции и упражнения) поради практическата насоченост на материала. В края на курса ще бъде проведен и тест върху материала на целия курс.

Практическа част по време на занятия

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

Цена на курса

Цената за цялата продължителност на курса е 700 лева. Като предоставяме възможност за разсрочено плащане – 2 вноски по 350 лева в началото на всеки от месеците от курса.

В кои дни се провежда курса, кога ще започнат нови групи и как може да се запиша?

Разписанието се публикува в График, а за записване, моля използвайте Записване за курс.


КОГА: 18.02.2015

МЯСТО: Pragmatic, ул. Йордан Йосифов 8, гр.София, кв.Студентски град

1. Обзор на екосистема LAMP/WAMP

  • Приложения от тип клиент/сървър
  • Роля на PHP в уеб приложенията
  • Запознаване и конфигурация на Apache Web Server
  • Запознаване и конфигурация на MySQL Database Server
  • Конфигурация на PHP
  • Базов синтаксис в PHP

2. Основи на PHP

  • Променливи и константи в PHP
  • Аритметични оператори в PHP
  • Работа с числа с плаваща запетая
  • Логически оператори
  • Контрол на изпълнението в PHP ( Условни конструкции, Цикли )

3. Основи на PHP

  • Работа със символни низове
  • Разширена обработка на символни низове (sprinf, PCRE)
  • Работа с масиви в PHP
  • Работа с файлове в PHP

4. Основи на процедурното програмиране в PHP

  • Функции в PHP
  • Рекурсивни функции
  • Област на видимост на променливите
  • Глобални и супер глобални променливи в PHP

5. Бърз курс по HTML и CSS

  • Въведение в HTML
  • Форматиране на документи с HTML
  • Стилизиране на HTML
  • HTML Форми

6. Обработка на HTTP Заявки

  • Комуникация между клиент и уеб сървър ( Разглеждане на протокола HTTP )
  • HTTP Методи
  • Суперглобални променливи за работа с HTTP заявки
  • Обработка на данни от HTML форми
  • Работа със сесии

7. Основи на MySQL

  • Основи на RDBMS и MySQL като такава
  • Преглед на инструменти за работа с MySQL (phpMyAdmin, HeidiSQL, MySQL WorkBench)
  • Архитектура на БД (ERD Diagrams)
  • Създаване на БД и таблици
  • Типове данни в MySQL
  • Съхранение и манипулиране на данни в MySQL
  • Извличане на данни от MySQL
  • PHP Библиотеки за работа с MySQL

8. Работа с релационни БД

  • Видове engines в МySQL
  • Ползване на индекси
  • Ползване на външни ключове
  • Съединение на данни от различни таблици (JOIN)
  • Агрегационни функции
  • Работа с транзакции

9. Обектно ориентирано програмиране в PHP

  • Пространства от имена
  • Класове и обекти
  • Жизнен цикъл на обектите (конструктори и деструктори)
  • Свойства и методи на обектите
  • Свойства и методи на класовете
  • Видимост на свойства и методи

10. Основи на OOP

  • Унаследяване и класови йерархии
  • Абстрактни класове
  • Интерфейси
  • Презаписване на методи
  • Магически методи

11. Управление на изключения

  • Какво е изключение
  • Класът Exception
  • Хвърляне на изключения
  • Обработване на изключения

12. Добри практики при OOP

  • Автоматично зареждане на дефиниции в PHP
  • 5 основни принципа за добра OOP архитектура ( SOLID )
  • Какво са шаблони и антишаблони
  • Шаблoни за създаване
  • Структурни шаблони
  • Шаблони за поведение
  • Архитектурни шаблони

13. Подобряване на качеството на приложенията

  • Запознаване с PHPUnit
  • Основни концепции при unit testing
  • Намиране и отстраняване на бъгове ( Използване на XDebug )
  • Намиране и отстрняване на бавни части в приложенията ( Profiling с XDebug )

14. Въведение в MVC

  • Какво представлява MVC
  • Изглед ( View )
  • Контролер ( Controller )
  • Модел ( Model )
  • Рамки на комуникацията между слоевете
  • Ограничения на MVC и как да се справим с тях

15. Бърз курс по Javascript

  • Променливи, масиви и обекти
  • Контрол на изпълнението ( цикли, условни конструкции )
  • Функции
  • Манипулация на символни низове
  • Запознаване с JQuery
  • Обработване на събития
  • Претърсване и манипулация на DOM

16. Сигурност

  • Най-често срещани атаки
  • Сигурна комуникация между клиент/сървър
  • Сигурно съхранение на данни
  • Видове XSS атаки и как да се предпазим от тях
  • Предотвратяване на MySQL injection
  • Похвати за защита на сесии
  • Защита от неоторизирано изпълнение на файлове

17. Въведение в Web 2.0

  • Какво е Web 2.0
  • Запознаване с AJAX
  • Запознаване с REST
  • Архитектура на RESTful API
  • Форматиране на данни (JSON и XML)

18. Тест

  • Теоретична част – тест
  • Практическа част – разработване на приложение

 

Светлозар Димитров

Светлозар Димитров

• Бакалавърска степен по „Компютърни науки“ към университета в Дортмунд
• 15+ години професионален опит в софтуерната разработка
• Многогодишен опит с различни технологии и езици за програмиране
• Работил в компании като: Atrient, ICDSoft, XS Software
• В момента системен архитект в SevOne Inc.

Води: Изграждане на модерни уеб приложения с
PHP, MySQL и JavaScript