Writing tests in GoZhivko AngelovBuilt-in testing capabilities of Go's standard library. Techniques for measuring test coverage and keeping it satisfactory and go through some mock-up techniques.
Как се става програмист?Svetlin NakovПърви стъпки в програмирането: всичко, което трябва да знаеш, за да стартираш към професията "софтуерен инженер"
Четирите умения на програмиста:
- Писане на код (coding skills) – 20%
- Алгоритмично мислене – 30%
- Фундаментални знания запрофесията – 25%
- Езици за програмиране и софтуерни технологии – 25%
Езици за програмиране и софтуерни технологии
- C# / .NET
- Java
- JavaScript
- Pyhton
- PHP
Пътят към програмирането през системата на СофтУни: https://softuni.bg/curriculum
Как да стана програмист?
https://softuni.bg/university/developersguide
Професия QA инженер - SoftUniConf June 2015Peter SabevQA инженерите се занимават с осигуряване на качеството на софтуера, тестване и цялостно управление на процеса на разработка. Освен да търсят бъгове, да ги описват и да ги проследяват до отстраняването им, QA инженерите се занимават и с програмиране на автоматизирани инструменти за тестване, които осигуряват повторяемост на тестовете и осигуряват качество в дългосрочен план. В лекцията ще поговорим за всичко това с много примери от реалния живот на един QA инженер.
Курс по програмиране на C# 2013 - 6. Обектно-ориентирано програмиране. Класов...DAVID AcademyЗанятие №6 на курса по програмиране на C# 2013 провеждан от ДАВИД академия в ПМГ "Никола Обрешков" - Казанлък. Включва темите:
- Обектно-ориентирано програмиране
- Класове и обекти
- Членове
- Видимост и капсулиране
Демо урок по програмиране със Светлин НаковSvetlin NakovВ този демо урок д-р Светлин Наков разказва за програмирането и дава възможност на присъстващите да напишат няколко реда код, да напишат първите си програмки с Python и други езици и показва, че писането на код е лесно и забавно. За запалилите се по програмирането лекторът разкрива възможности да продължат да се занимават в СофтУни или по свой собствен път.
[Dev.bg] CI from scratch with JenkinsBorislav TraykovHow to implement Continuous Integration processes using Jenkins .. and staying sane while doing so!
Курс по уеб програмиране (2015), занятие №1 - HTMLDAVID AcademyKурс по уеб програмиране (2015)
Занятие №1: HTML
--
Въведение в HTML
Елементи и тагове
Мета съдържание
Структуриране на текст
Хипервръзки
Изображения
Таблици
Списъци
Форматиране на таблици
Форми
Въведение в HTML 5
Структуриране на страница
Форми и валидиране
Аудио и видео
Училищен курс по програмиране на C# (2013/2014), занятие №11DAVID AcademyУчилищен курс по програмиране на C# (2013/2014)
Занятие №11: Полиморфизъм (част 1): Презаписване на членове. Презаписване на оператори. Предефиниране на членове
Въведение в PerlKrasimir Berov (Красимир Беров)Това е превод на български от Теодора Берова на първият урок от поредицата уроци, които водих преди време за QA-отдела на голяма международна компания, по покана на Светлин Наков.
Искам да го споделя с всеки, който търси непреходни знания за Perl.
Обновяванията след 1ви юни 2014 и преводът са направени с подкрепата на Chain Solutions (http://chainsolutions.net/).
Таблица със съдържанието на курса може да бъде намерена на http://i-can.eu/ .
Изходният код на примерите и уроците в ODP формат се намират на адрес https://github.com/kberov/PerlProgrammingCourse/ .
Безмилостно тестване на уеб приложения със Seleniumsvilen.ivanovАудиторията ще бъде запозната с проекта OpenQA (http://www.openqa.org/), обединяващ инструменти с отворен код за подпомагане и/или автоматизиране тестването на приложения. Ще бъде обърнато специално внимание на Selenium – изключително полезен инструмент за създаване на функционални тестове за уеб и AJAX приложения, както и изпълнението им без намесата на човек върху множество браузъри (Firefox, Internet Explorer) и платформи (Linux, Windows). Ще бъдат показани примерни тестове, начини за създаването им (ръчно или чрез приставка към Firefox), както и възможности за разширяване на Selenium за специфични задачи.
Освен практическата страна - запознаване със Selenium - лекцията насърчава разработчиците да създават софтуер изчистен от грешки като представя достъпни и качествени инструменти за автоматизиране на рутинни (и най-вече скучни) задачи при тестването софтуера. Selenium може да се използва като алтернатива на „затворени“ продукти за функционално тестване в съвременните, гъвкави и тестово-ориентирани методологии за разработка на софтуер (Agile Development, Test-Driven Development, Extreme Programming).
Hear My Thoughts - ServerGeorgi MirchevA project helping deaf people to communicate with others
Html presentation can be found at: http://slides.com/georgimirchev/deck
HearMyThoughts - Android app for helping deaf peopleGeorgi MirchevThis document discusses an app that aims to help deaf people learn through translations, chat features, and material sharing between teachers and students. It outlines the app's architecture, including its use of events, network requests, local database, social login, speech recognition, and syncing capabilities. Libraries like Otto, Realm, and Picasso are also mentioned. Project files are located in different directories. The app aims to provide educational help through various interactive features and tools.
Професия QA инженер - SoftUniConf June 2015Peter SabevQA инженерите се занимават с осигуряване на качеството на софтуера, тестване и цялостно управление на процеса на разработка. Освен да търсят бъгове, да ги описват и да ги проследяват до отстраняването им, QA инженерите се занимават и с програмиране на автоматизирани инструменти за тестване, които осигуряват повторяемост на тестовете и осигуряват качество в дългосрочен план. В лекцията ще поговорим за всичко това с много примери от реалния живот на един QA инженер.
Курс по програмиране на C# 2013 - 6. Обектно-ориентирано програмиране. Класов...DAVID AcademyЗанятие №6 на курса по програмиране на C# 2013 провеждан от ДАВИД академия в ПМГ "Никола Обрешков" - Казанлък. Включва темите:
- Обектно-ориентирано програмиране
- Класове и обекти
- Членове
- Видимост и капсулиране
Демо урок по програмиране със Светлин НаковSvetlin NakovВ този демо урок д-р Светлин Наков разказва за програмирането и дава възможност на присъстващите да напишат няколко реда код, да напишат първите си програмки с Python и други езици и показва, че писането на код е лесно и забавно. За запалилите се по програмирането лекторът разкрива възможности да продължат да се занимават в СофтУни или по свой собствен път.
[Dev.bg] CI from scratch with JenkinsBorislav TraykovHow to implement Continuous Integration processes using Jenkins .. and staying sane while doing so!
Курс по уеб програмиране (2015), занятие №1 - HTMLDAVID AcademyKурс по уеб програмиране (2015)
Занятие №1: HTML
--
Въведение в HTML
Елементи и тагове
Мета съдържание
Структуриране на текст
Хипервръзки
Изображения
Таблици
Списъци
Форматиране на таблици
Форми
Въведение в HTML 5
Структуриране на страница
Форми и валидиране
Аудио и видео
Училищен курс по програмиране на C# (2013/2014), занятие №11DAVID AcademyУчилищен курс по програмиране на C# (2013/2014)
Занятие №11: Полиморфизъм (част 1): Презаписване на членове. Презаписване на оператори. Предефиниране на членове
Въведение в PerlKrasimir Berov (Красимир Беров)Това е превод на български от Теодора Берова на първият урок от поредицата уроци, които водих преди време за QA-отдела на голяма международна компания, по покана на Светлин Наков.
Искам да го споделя с всеки, който търси непреходни знания за Perl.
Обновяванията след 1ви юни 2014 и преводът са направени с подкрепата на Chain Solutions (http://chainsolutions.net/).
Таблица със съдържанието на курса може да бъде намерена на http://i-can.eu/ .
Изходният код на примерите и уроците в ODP формат се намират на адрес https://github.com/kberov/PerlProgrammingCourse/ .
Безмилостно тестване на уеб приложения със Seleniumsvilen.ivanovАудиторията ще бъде запозната с проекта OpenQA (http://www.openqa.org/), обединяващ инструменти с отворен код за подпомагане и/или автоматизиране тестването на приложения. Ще бъде обърнато специално внимание на Selenium – изключително полезен инструмент за създаване на функционални тестове за уеб и AJAX приложения, както и изпълнението им без намесата на човек върху множество браузъри (Firefox, Internet Explorer) и платформи (Linux, Windows). Ще бъдат показани примерни тестове, начини за създаването им (ръчно или чрез приставка към Firefox), както и възможности за разширяване на Selenium за специфични задачи.
Освен практическата страна - запознаване със Selenium - лекцията насърчава разработчиците да създават софтуер изчистен от грешки като представя достъпни и качествени инструменти за автоматизиране на рутинни (и най-вече скучни) задачи при тестването софтуера. Selenium може да се използва като алтернатива на „затворени“ продукти за функционално тестване в съвременните, гъвкави и тестово-ориентирани методологии за разработка на софтуер (Agile Development, Test-Driven Development, Extreme Programming).
Hear My Thoughts - ServerGeorgi MirchevA project helping deaf people to communicate with others
Html presentation can be found at: http://slides.com/georgimirchev/deck
HearMyThoughts - Android app for helping deaf peopleGeorgi MirchevThis document discusses an app that aims to help deaf people learn through translations, chat features, and material sharing between teachers and students. It outlines the app's architecture, including its use of events, network requests, local database, social login, speech recognition, and syncing capabilities. Libraries like Otto, Realm, and Picasso are also mentioned. Project files are located in different directories. The app aims to provide educational help through various interactive features and tools.
Optical storagеGeorgi MirchevThe document defines optical storage and discusses optical disc drives. It explains that optical drives use lasers to read and write data to optical discs by detecting light reflections from bumps and areas on the disc's surface. The document outlines different types of optical media like CDs, DVDs, and Blu-rays, as well as read-only, rewritable, double-sided, and double-layer media. It also describes how optical drives spin and move discs to read data and how recorders encode data onto discs using lasers.
Основи на АндроидGeorgi MirchevСлайдовете представляват информация относно андроид събрана от различни източници. Събрана е информация и за другите мобилни операционни системи.
Основи на програмирането за андроидGeorgi MirchevФайлът съдържа основите на програмирането за андроид с обобщена информация взета от сайта: deveolper.android.com
2. Това е framework за тестване на парчета от
код(класове или методи) за Java, който
също така се използва в много други езици
като:
C# (NUnit) Адрес:
C++ (CPPUnit)
Fortran (fUnit)
Delphi (DUnit)
Free Pascal (FPCUnit)
JavaScript (JSUnit)
Objective-C (OCUnit)
Perl (Test::Class and Test::Unit)
PHP (PHPUnit)
Python (PyUnit)
R (RUnit)
3. Цели:
- При правилно планиране да улесни живота на
програмиста
- Бързо и качествено писане на код
- Лесно установяване и поправяне на възникналите
грешки
- По-малка вероятност за изскачане на неочаквани
грешки по време на изпълнение на кода
4. Как работи JUnit?
Като се създават тестови класове, в които се:
- Създават тестови случаи на дадени методи
- Извикват някои от вградените функции на JUnit като
(assertEquals(), fail(), suite(), setUp(), tearDown())
- Извикват методи на други тестови класове
- Създават т.нар. Фалшиви обекти
5. Какво да тестваме?
Принципът Right-BICEP:
- Right – резултатите правилни ли са ?
-B(boundary) – всички гранични условия правилни ли са ?
-I(inverse) – можете ли да проверите връзките между класовете в обратен
ред ?
-C(cross-check) – можете ли да проверявате резултатите по различен
начин ?
-E(error) – може те ли да предизвиквате възникването на грешки ?
-P(performance) – производителността в границите ли е ?
6. По какво да познаем добрите
тестове?
Принципът A-TRIP:
- A – automatic – автоматичен
-T – Thorough – обстоен
-R – Repeatable – лесно повторяем
-I – Independent - независим
-P – Professional – професионално написан
7. Допълнителни неща
Тестовият код при по-големите проекти е КОЛКОТО кодът на самия
проект.
Тестват се само функциите, които съдържат в себе си много сметки или които
могат да върнат неочакван резултат.
Обичайна практика е при Test-Driven дизайна тестовите методи да биват
създавани преди методите, които тестват.