План на курса
QA/CI
- Какво е QA? Какво е CI? Разходите за разработка на софтуер, рефакторинг и коригиране на грешки Идентифициране и разбиране на проекта Печалба за организацията
DDD
- Разработка на софтуер въз основа на бизнес изисквания, допускания DDD Проблеми в комуникацията IT-Business Domain Model
Най-добри практики
- Принцип на KISS и стандарти за DRY кодиране Създаване на многократно използваем код чрез ООП и дизайнерски модели Идентифициране и намаляване на цикломатичната сложност
Софтуерни показатели
- Тегло Метод на клас Отговор за клас Дълбочина на наследяване Дърво на свързване между обекти Липса на кохезия на методите Брой деца Цикломатична сложност Метрика Клас Модел Метрика Метрика за използване
Software Testing
- Какво, кога и как да тестваме? Методът на "бялата кутия" и "черната кутия" Ролята на тестването в гъвкавите методологии TDD само потенциално увеличение на цената на проекта Единично тестване с JUnit (Java), PHPUnit (PHP) Поведенчески тестове на JBehave ( Java), Behat и Mink (PHP) Функционални тестове
Рефакторинг
- Какво е рефакторинг? Дългова технология Модели за преработване на миризма на код
Documentation
- Ролята на документацията в гъвкавите методологии Какво да документираме? Видове документация Документация и гъвкави методологии, или можете да се обадите (Работещ софтуер върху изчерпателна документация)? Стандартен XMI Автоматично генериране на документация от Javadoc (Java), ApiGen (PHP)
Инструменти и среда CI
- Инструменти и среда CI PMD (Java), phpmd (PHP) CPD (Java), phpcpd (PHP) Брояч на редове от код (Java), phploc (PHP) UCDetector (Java), phpdcd (PHP ) Jdepend (Java), phpdepend (PHP)
Планиране и постепенно развитие Възприемане на промяната Кратки етапи Интердисциплинарен екип Екстремен Programming, Преглед на кода Индивиди и взаимодействия върху процеси и инструменти
- Сумиране
Въпроси за дискусия Как започвате процеса на внедряване?
Изисквания
Познаване на процесите на разработка на софтуер
Oтзиви от потребители (5)
Треньорът има задълбочен опит и добре разказан на дело. Дълбочината на знанията и страстта към преподаването са високо оценени.
Anup Kumar - SMR Automotive Mirrors Stuttgart
Курс - Jenkins 2: Building CI/CD Pipelines
Машинен превод
The trainer was very well organized. He explained about all the tools required for the training in the beginning. The trainer happily clarified all the doubts and practical use cases were discussed.
Vivek Verma - Global Knowledge Network Training Ltd
Курс - DevOps Practical Implementation and Tools
Very detailed, trainer knows the subject very well and has covered a lot of topics
Gabriel Kelly Navarro - Opswerks
Курс - Advanced Spinnaker
Luke was very knowledgeable, patient, and very open to satisfy my curiosity, for example I asked him to generate errors to see how system will response, etc. He would go above and beyond to answer questions or demonstrate the functionalities, even some of my questions were out of the class scope. He gave me a real experience with the system. I definitely will take another class with him and recommend him as a teacher for others. Thank you Luke!.
Tina Henderson
Курс - Test Automation with Selenium and Jenkins
All of it. Having had no previous exposure to Jenkins, I was a little concerned about my ability to keep up. IPad provided appropriate coaching/support, when I asked for help, so that I was able to follow the presentation at a level I was happy with.