Результати пошуку за запитом: c starter
Вивчай React Advanced безкоштовно
Автор: Редакція ITVDN
Друзі, привіт!
4 квітня (4.04) – День вебмайстрів. Ми вітаємо зі святом усіх, хто обрав напрямок веброзробки, і маємо для вас подарунок!
З 4 до 11 квітня на ITVDN проходить акція – ви можете отримати доступ до нового відео курсу “React Поглиблений” безкоштовно, а також – сертифікат, який буде підтвердженням ваших знань.
React – найпопулярніша FrontEnd-бібліотека для побудови користувацьких інтерфейсів. Її використовують розробники Facebook, Instagram, Netflix, Dropbox, GitHub, Discord, Uber та інші.
Про курс “React Поглиблений”
Автор курсу – Андрій Полевий, Software Developer у MindK. Сертифікований розробник Microsoft, 11+ років досвіду, включаючи роботу в компаніях лідерів української ІТ-індустрії – SoftServe та Intellias. Професійний стек: JavaScript, React, C#, SQL, Azure, ASP.NET Core.
Тривалість відео уроків – 10 годин 5 хвилин.
Під час проходження курсу ви розроблятимете вебзастосунок на основі публічного API, використовуючи різноманітні техніки, які пропонує React та його суміжні бібліотеки.
Ви навчитеся впроваджувати роутинг за допомогою бібліотеки React Router, використовувати CSS-препроцесори та UI бібліотеки, публічні API для отримання даних. Також ви будете використовувати Redux Toolkit для спрощеного написання коду та розв’язання багатьох проблем, реалізуєте можливість логіну через сторонній identity provider та багато іншого.
Структура курсу:
Створення проєкту. TypeScript. Типізація в React.
Стилізація. Частина 1.
Стилізація. Частина 2.
Практика 1. Робота з API і стилізація.
Хуки useContext, useRef, портали.
Кастомні хуки та memory leak.
Робота з формами.
Мемоізація.
Оптимізація.
Redux Toolkit, RTK Query.
Практика 2. Міграція на RTK Query.
GraphQL.
JWT token, авторизація, приватні та публічні маршрути.
Server-side Rendering.
Тестування компонентів.
Чого ви навчитеся на даному курсі:
Будувати state management за допомогою Redux і Redux Toolkit.
Розуміти основи популярних CSS-фреймворків для стилізації.
Використовувати бібліотеку Material UI і її компоненти замість ручної стилізації.
Використовувати React hooks і створювати власні (кастомні) хуки.
Досліджувати проблеми швидкодії React-застосунку.
Використовувати React Developer Tools для дослідження дерева компонентів та профайлингу.
Розв’язувати проблеми з memory leak.
Використовувати React.lazy та Suspense для динамічного завантаження модулів, React Router для динамічного завантаження маршрутів.
Використовувати RTK Query для звертання до API.
Додавати автентифікацію для застосунку на основі OAuth2.
Використовувати мову запитів GraphQL для здійснення запитів та зміни даних на сервері.
Працювати з концепцією Server-side Rendering (SSR).
Дізнаєтеся про Jest Testing Framework та його альтернативи, навчитеся тестувати компоненти за допомогою React Testing Library.
Попередні вимоги
Для проходження курсу потрібно мати знання та практичні навички роботи з React на рівні курсу “React Базовий”. Зміст курсу розрахований на веброзробників, котрі вже знайомі з даною бібліотекою і хочуть розширити свої знання.
Терміни акції
Акція проходить з 4 до 11 квітня 2024 року включно. Доступ до курсу відкривається на 10 днів.
Лети в IT. Супер знижки на всі IT-спеціальності
Автор: Редакція ITVDN
Друзі, дуже часто ми зазнаємо регулярних блекаутів через відверто терористичні дії зі сторони росії. Вони хочуть, аби ми поринули у повну темряву та холод, але їм не допетрати, що найголовніше світло ми тримаємо у голові, а тепло – у серці кожного українця. Це наша головна зброя і саме вона допоможе нам вистояти і перемогти.
Ми маємо бути сильніші та вищі за нашого ворога, активно працювати на благо держави і підтримувати українську армію. І наразі максимально задовольнити ці потреби може саме ІТ-галузь, оскільки це:
велика кількість престижних професій на різний смак;
можливість віддаленої зайнятості або релокейт;
робота з крутими фахівцями над проєктами, які роблять наш світ краще;
гарні кар’єрні перспективи;
висока ЗП.
Ми хочемо вас підтримати у ці нелегкі часи, тому оголошуємо супер знижки на всі ІТ-спеціальності протягом трьох днів – 21, 22 та 23 грудня – до -50% на навчання!
НАВЧАННЯ ЗА ВІДЕО КУРСАМИ
Акційні ціни на спеціальності:
Python Developer (доступ на 6 місяців) – 54 USD
FrontEnd Developer (7 міс.) – 52 USD
Верстальник сайтів (4 міс.) – 42 USD
JavaScript Developer (3 міс.) – 31 USD
React Developer (4 міс.) – 42 USD
Angular Developer (4 міс.) – 42 USD
.NET Developer (8 міс.) – 60 USD
ASP.NET Core Developer (6 міс.) – 54 USD
ASP.NET MVC Developer (5 міс.) – 52 USD
Unity / Game Developer (6 міс.) – 63 USD
Java Developer (7 міс.) – 52 USD
Android Developer (5 міс.) – 45 USD
PHP Developer (5 міс.) – 45 USD
C++ Developer (3 міс.) – 31 USD
Ruby Developer (4 міс.) – 42 USD
Що ви отримуєте, купуючи пакет підписки за спеціальністю?
Доступ до всіх відео курсів з обраного напрямку
Доступ до Інтерактивних практикумів
Вихідний код навчальних проектів
Презентації, опорний конспект, ДЗ
Консультації з тренером
Онлайн тестування та сертифікати за пройденими курсами
Диплом зі спеціальності у разі успішного складання фінального екзамену
Доступ до нових курсів, які виходитимуть під час дії підписки.
Навчання за відео курсами – це найбільш вигідна пропозиція. Вивчайте програмування у комфортному темпі та у зручний час.
В залежності від обраної спеціальності відрізняється кількість відео курсів і термін доступу до них. Але кожний із пакетів дозволяє пройти повну підготовку з нуля до рівня спеціаліста!
Усі ІТ-спеціальності
НАВЧАННЯ В ФОРМАТІ LIVE ONLINE
Також з 20 по 28 грудня включно діють таючі знижки до 35% на Live Online навчання в групах з ментором:
20, 21 та 22 грудня – знижка 35% на всі спеціальності Live Online
23, 24 та 25 грудня – знижка 30%
26, 27 та 28 грудня – знижка 25%
Навчання за цими знижками відбувається за такими напрямками:
Python Developer – старт навчання 12 січня
FrontEnd Developer – 10 січня
Java Developer – 17 січня
.NET Developer – 16 січня
Live Online чудово підійде тим, кому подобається живе онлайн спілкування та навчання в групі з іншими студентами під керівництвом досвідченого ментора, який має досвід комерційної розробки.
Усі уроки записуються і додатково студенти отримують також доступ до всіх курсів ITVDN за обраною спеціальністю включно з можливістю проходити тестування, отримувати сертифікати, використовувати інтерактивні практикуми і т. д.
Знижка 30% надається при повній оплаті усієї спеціальності в період дії акції. При цьому почати навчання ви можете у листопаді або протягом 3-х наступних місяців.
Дуже рекомендуємо користуватися послугою “Оплата частинами” від Монобанку або ПриватБанку – це дозволить вам отримати велику знижку і розбити виплати на декілька місяців без додаткових комісій.
Групи до 25 осіб. Поспішайте зайняти місце!
Детальніше про онлайн навчання з ментором
P.S. Громадяни росії та білорусі не можуть брати участь в акції. Ми не надаємо ніяких послуг окупантам і тим, хто їх підтримує
Шалені знижки на всі ІТ-спеціальності
Автор: Редакція ITVDN
Друзі, 17 листопада - День студента. І ми вітаємо вас з цим святом! Якщо ви вивчаєте нові технології, то певною мірою усі ви – студенти, незалежно від віку і набутого досвіду. Тож давайте святкувати!
З 15 до 20 листопада для усіх, хто хоче вивчати програмування – знижки до 50% на навчання!
Акція поширюється як навчання за відео курсами, так і Live Online навчання у групі з ментором. Деталі нижче.
НАВЧАННЯ ЗА ВІДЕО КУРСАМИ
Акційні ціни на спеціальності:
Python Developer (доступ на 6 місяців) – 54 USD
FrontEnd Developer (7 міс.) – 52 USD
Верстальник сайтів (4 міс.) – 42 USD
JavaScript Developer (3 міс.) – 31 USD
React Developer (4 міс.) – 42 USD
Angular Developer (4 міс.) – 42 USD
.NET Developer (8 міс.) – 60 USD
ASP.NET Core Developer (6 міс.) – 54 USD
ASP.NET MVC Developer (5 міс.) – 52 USD
Unity / Game Developer (6 міс.) – 63 USD
Java Developer (7 міс.) – 52 USD
Android Developer (5 міс.) – 45 USD
PHP Developer (5 міс.) – 45 USD
C++ Developer (3 міс.) – 31 USD
Ruby Developer (4 міс.) – 42 USD
Що ви отримуєте, купуючи пакет підписки за спеціальністю?
Доступ до всіх відео курсів з обраного напрямку
Доступ до Інтерактивних практикумів
Вихідний код навчальних проектів
Презентації, опорний конспект, ДЗ
Консультації з тренером
Онлайн тестування та сертифікати за пройденими курсами
Диплом зі спеціальності у разі успішного складання фінального екзамену
Доступ до нових курсів, які виходитимуть під час дії підписки.
Навчання за відео курсами – це найбільш вигідна пропозиція. Вивчайте програмування у комфортному темпі та у зручний час.
В залежності від обраної спеціальності відрізняється кількість відео курсів і термін доступу до них. Але кожний із пакетів дозволяє пройти повну підготовку з нуля до рівня спеціаліста!
Усі ІТ-спеціальності
НАВЧАННЯ В ФОРМАТІ LIVE ONLINE
Також з 15 до 20 листопада діє знижка 30% на Live Online навчання в групах з ментором за такими напрямками:
Python Developer – старт навчання 16 листопада
FrontEnd Developer – 22 листопада
Java Developer – 24 листопада
.NET Developer – 28 листопада
Live Online чудово підійде тим, кому подобається живе онлайн спілкування та навчання в групі з іншими студентами під керівництвом досвідченого ментора, який має досвід комерційної розробки.
Усі уроки записуються і додатково студенти отримують також доступ до всіх курсів ITVDN за обраною спеціальністю включно з можливістю проходити тестування, отримувати сертифікати, використовувати інтерактивні практикуми і т. д.
Знижка 30% надається при повній оплаті усієї спеціальності в період дії акції. При цьому почати навчання ви можете у листопаді або протягом 3-х наступних місяців.
Дуже рекомендуємо користуватися послугою “Оплата частинами” від Монобанку або ПриватБанку – це дозволить вам отримати велику знижку і розбити виплати на декілька місяців без додаткових комісій.
Групи до 25 осіб. Поспішайте зайняти місце!
Детальніше про онлайн навчання з ментором
P.S. Громадяни росії та білорусі не можуть брати участь в акції. Ми не надаємо ніяких послуг окупантам і тим, хто їх підтримує
Супер знижки на ІТ-навчання до Дня Знань
Автор: Редакція ITVDN
Доброго дня!
День знань – це велике свято для всіх, кому подобається постійно дізнаватися нове, прокачувати свої знання та розвиватися. Водночас це гарна нагода почати вивчати щось потрібне та цікаве. А у випадку із програмуванням це ще й дуже перспективно.
Незважаючи на кризи, ковід та війну, IT-сфера стабільно зростає і показує гарну динаміку. Рівень оплати праці програмістів вже такий, як у топ-менеджерів в інших сферах бізнесу і при цьому попит на фахівців постійно зростає.
ITVDN святкує День знань разом з усіма, а тому 1 та 2 вересня ми влаштовуємо святкові знижки до 50% на всі підписки на ITVDN!
Що обрати?
Якщо ви хочете мати доступ до всіх відео курсів, обирайте один із універсальних пакетів:
"Стартовий" (3 місяці) – 35 USD (замість 49,99)
"Базовий" (6 місяців) – 60 USD (замість 89,99)
"Преміум" (12 місяців) – 85 USD (замість 169,99)
“Преміум” – найбільш вигідний пакет, оскільки крім доступу до усіх курсів на рік, ви отримуєте можливість пройти 24 онлайн тести і отримати сертифікати, використати 120 хвилин на консультації з ментором, відправити на перевірку 20 домашніх завдань, а також отримаєте доступ до всіх нових курсів, які будуть створені протягом дії підписки.
Якщо ж ви хочете пройти навчання за певною спеціальністю, обирайте одну з 15 комплексних програм навчання.
Акційні ціни на IT-спеціальності:
Верстальник сайтів (доступ на 4 місяці) — $39 (замість $59.99)
FrontEnd Developer (7 місяців) — $63 (замість $104.99)
JavaScript Developer (3 місяці) — $63 (замість $104.99)
React Developer (4 місяці) — $39 (замість $59.99)
Angular Developer (4 місяці) — $39 (замість $59.99)
.NET Developer (8 місяців) — $72 (замість $119.99)
ASP.NET MVC Developer (5 місяців) — $49 (замість $74.99)
ASP.NET Core Developer (6 місяців) — $58 (замість $89.99)
Python Developer (6 місяців) — $58 (замість $89.99)
Java Developer (7 місяців) — $63 (замість $104.99)
Android Developer (5 місяців) — $49 (замість $74.99)
PHP Developer (5 місяців) — $49 (замість $74.99)
Ruby Developer (4 місяці) — $39 (замість $59.99)
C++ Developer (3 місяці) — $31 (замість $44.99)
Unity/Game Developer (6 місяців) — $58 (замість $89.99)
Що входить до пакету за спеціальністю:
покроковий план навчання з нуля до рівня спеціаліста;
відео курси з обраної спеціальності;
навчальні матеріали, вихідні файли програмного коду, опорний конспект, презентації до уроків;
інтерактивні практикуми для формування навичок написання коду;
консультації з тренером;
онлайн тестування та сертифікати за всіма технологіями;
диплом зі спеціальності у разі успішного фінального тестування після навчання.
Подарункові сертифікати на навчання для рідних і друзів!
Якщо у вас є друг, який хоче опанувати IT-професію або розширити свої знання у програмуванні, ви можете порадувати його – вручити подарунковий сертифікат із доступом до всіх відео курсів. Під час акції подарункові сертифікати також будуть продаватися зі знижками, а активувати їх можна будь-коли протягом року.
Нехай ваше навчання буде легким та приємним на ITVDN!
Знижки, що тануть на IT навчання
Автор: Редакція ITVDN
Дорогие друзья! Для всех, кого интересует программирование, мы создаем отличные условия для легкого старта в освоении новых знаний и новой специальности.
С 22 по 29 июля 2021 года на ITVDN большие скидки на обучение программированию.
Чему можно научиться на ITVDN
В Каталоге ITVDN более 200 видео курсов по всем языкам программирования и информационным технологиям. Вы можете изучать все, что хотите в любой последовательности.
Пакет Стартовый – это доступ ко всем курсам и сервисам ITVDN сроком на 3 месяца. Его чаще всего выбирают новички, которые еще не определились со специальностью и хотят попробовать себя в нескольких направлениях, а также программисты, которые хотят изучить новые технологии по своей специальности.
Во время акции стоимость Пакета Стартовый:
22, 23 и 24 июля – 32,5 USD (вместо 49,99 USD)
25, 26 и 27 июля – 35 USD
28 и 29 июля – 37,5 USD
Купить пакет Стартовый по акционной цене
16 IT специальностей на ITVDN со скидкой 30%
Frontend Developer - 49 USD - 40 курсов на 7 мес.
React Developer – 35 USD - 15 курсов на 5 мес.
Angular Developer - 28 USD - 10 курсов на 3 мес.
Верстальщик сайтов - 28 USD - 22 курса на 4 мес.
JavaScript Developer - 28 USD - 9 курсов на 3 мес.
PHP Developer - 28 USD - 19 курсов на 4 мес.
Ruby Developer – 42 USD - 18 курсов на 6 мес.
Python Developer - 42 USD - 18 курсов на 6 мес.
C#/.NET Developer - 56 USD - 54 курса на 8 мес.
ASP.NET Core Developer – 42 USD - 20 курсов на 6 мес.
ASP.NET MVC Developer - 35 USD - 23 курсов на 5 мес.
Java Developer - 49 USD - 28 курсов на 7 мес.
Android Developer- 35 USD - 21 курс на 5 мес.
iOS Developer – 28 USD - 7 курсов на 3 мес.
С++ Developer – 28 USD - 8 курсов на 3 мес.
Unity/Game Developer – 42 USD - 27 курсов на 6 мес.
Программы обучения ITVDN разработаны профессионалами и соответствуют требованиям IT компаний к начинающим разработчикам. А система обучения на ITVDN - теория, практика, общение, тестирование и сертификация – позволяет достичь отличных результатов в короткие сроки.
Как проходит обучение по специальности?
Вы смотрите видео уроки
Вы выполняете практические задания к каждому уроку.
Вы учитесь писать код в интерактивном тренажере.
Вы проходите тесты после каждого урока, чтобы проверить, как усвоен материал.
Если что-то осталось не понятым – смотрите видео уроки повторно или обращаетесь за помощью к тренеру.
Вы проходите курс за курсом, изучая все технологии, который должен знать специалист.
После изучения всех обязательных технологий Вы сдаете финальный экзамен по специальности и получаете диплом.
Обратите внимание! Подарочные сертификаты во время акции тоже можно приобрести со скидкой!
Пусть ваш путь в программирование будет легким и успешным с ITVDN!
Купить подписку по акционной цене
Вивчай Тестування ASP.NET Core MVC додатків безкоштовно
Автор: Редакція ITVDN
С 4 по 11 марта 2021 года на ITVDN проходит акция — вы можете пройти обучение по курсу “Тестирование ASP.NET Core MVC приложений” бесплатно!
Чем примечательно тестирование ASP.NET Core MVC приложений?
ASP.NET Core — это кроссплатформенная среда с открытым исходным кодом для создания современных корпоративных приложений на языке C#. Разработанные в данной среде приложения имеют богатые возможности для тестирования и сопровождения. Модель MVC (Model—View—Controller) позволяет реализовать архитектурное решение, которое отделяет графический интерфейс от бизнес логики, а бизнес логику от данных.
Чтобы создавать качественное ПО с применением ASP.NET Core MVC, необходимо знать техники тестирования, обеспечивающие минимальное количество багов и уязвимостей, появляющихся в ходе разработки столь комплексных приложений. Именно для успешного решения таких задач вам пригодятся знания, изложенные в данном курсе.
О курсе “Тестирование ASP.NET Core MVC приложений”
Автор видео курса — Юрий Науринский, .NET Developer.
Курс состоит из 8 видео уроков общей длительностью 4 часа 52 минуты.
Курс «Тестирование ASP.NET Core MVC приложений» позволит вам на практических примерах изучить применение Unit-тестирования, интеграционного и функционального тестирования веб-проектов.
Создавая свой проект с нуля, вы научитесь быстро и корректно определять тестовые случаи, поймете практическую разницу между видами тестирования, а также, какой вид тестирования наиболее целесообразно применять для тестирования модели приложения, его представлений и контроллеров. Как один из важных итогов курса — вы поймете, как правильно проектировать архитектуру приложения, чтобы она была наиболее пригодна для дальнейшего тестирования.
Программа курса:
Введение. Обзор тестового проекта.
Unit-тестирование бизнес-логики.
Unit-тестирование Controller & Middleware
Интеграционное тестирование компонентов ASP.NET Core MVC.
Интеграционное тестирование View.
Интеграционное тестирование базы данных.
Функциональное тестирование: наивный подход.
Функциональное тестирование: BDD.
Для кого этот курс
Курс предназначен для .NET разработчиков, которые используют платформу .NET Core и ориентированы на разработку приложений с применением модели MVC.
Курс входит в комплексную программу обучения по специальности ASP.NET Core Developer.
Чему вы научитесь на этом курсе:
Понимать, с чего начинать и как продолжать тестирование ASP.NET Core MVC приложений.
Понимать ситуации, в которых стоит применять различные виды тестирования.
Понимать структуру пирамиды тестирования.
Понимать, что такое Unit-тесты, интеграционные и функциональные тесты, а также вы узнаете признаки, которые должны присутствовать у хорошего теста.
Понимать структуру разного вида тестов.
Производить тестирование базы данных и бизнес логики.
Узнаете, как тестировать View и нужно ли это делать разработчику.
Применять разные типы функционального тестирования.
Узнаете типичные ошибки функционального тестирования и научитесь их избегать.
Понимать концепцию BDD (Behavior Driven Development) — разработки на основе поведения и ее отличие от TDD.
Узнаете основы языка Gherkin и его применения при составлении тестов.
Научитесь использовать фреймворк SpecFlow для реализации BDD концепции в своем коде.
Сроки акции
Акция проходит с 4 по 11 марта 2021 года. Доступ к курсу открывается на 10 дней.
Як проходить онлайн навчання за курсом .NET Developer у CyberBionic Systematics.
Автор: Армен Маїлян
<p>В 2020 году все учебные центры, школы и ВУЗы перешли на онлайн обучение. Но вариантов онлайн обучения очень много. И их эффективность, конечно, разная. Как новичку не ошибиться с выбором? Мы приглашаем вас познакомиться ближе с учебным центром, тренером и программой курса.</p>
<p>CyberBionic Systematics совместно с ITVDN предлагает уникальный формат «живого» онлайн обучения, позволяющий использовать преимущества общения с наставником, работы в группе и доступ к огромной базе дополнительных знаний по выбранному направлению.</p>
<p>На встрече, которая состоится 13 апреля, мы расскажем о том, как проходит онлайн обучение в CyberBionic Systematics по специальности .NET Developer. Вы узнаете, какие технологии изучаются на курсе, какие программы и сервисы используются для проведения занятий, общения, проверки знаний, совместной работы над курсовыми проектами и многое другое.</p>
<p>Вы сможете задать вопросы тренеру, который ведет обучение в группах по .NET и получите ответы в прямом эфире.</p>
<p><strong>Программа:</strong></p>
<ol>
<li>Коротко об учебном центре CyberBionic Systematics. Авторские программы обучения, видео курсы, тестирование, центр международной сертификации.</li>
<li>Как проходит онлайн обучение
<ol style="list-style-type:lower-alpha;">
<li>План специальности</li>
<li>График занятий, структура занятия</li>
<li>Помощник тренера, проверка ДЗ, общение между занятиями</li>
<li>Курсовые проекты</li>
<li>Поддержка HR специалиста, помощь в трудоустройстве</li>
</ol>
</li>
<li>Специальность .NET Developer
<ol style="list-style-type:lower-alpha;">
<li>Кто такой .NET разработчик</li>
<li>Что нужно знать и уметь</li>
<li>Что будете разрабатывать</li>
<li>Какие перспективы</li>
</ol>
</li>
<li>С чего начать? Бесплатный пробный урок, консультация по выбору курса и специализации.</li>
<li>Вопросы и ответы. Розыгрыш скидок на обучение.</li>
</ol>
<p><strong>Целевая аудитория:</strong></p>
<p>Начинающие IT специалисты, желающие пройти комплексное обучение по специальности .NET разработчик, а также те, кто хочет научиться создавать современные веб-приложения на языке программирования C# с нуля.</p>
<p>Условия участия – <strong>бесплатно</strong>. Для получения ссылки-приглашения на вебинар зарегистрируйтесь.</p>
<p> </p>
<p><strong>Организаторы:</strong></p>
<p><a href="https://edu.cbsystematics.com/ru" target="_blank">CyberBionic Systematics</a> – сертифицированный учебный центр, партнер Microsoft, авторизованный центр международной IT сертификации VUE Pearson. С 2007 года CyberBionic Systematics предоставляет услуги по профессиональной подготовке и повышению квалификации IT специалистов в форме <strong>очно</strong><strong>го</strong><strong> обучения</strong> в современных учебных центрах в Киеве или на территории компании-заказчика, <strong>on-line </strong>и <strong>видео</strong> обучения. На конкурсе IT Education Awards 2015 был признан лучшим в номинации <strong>Complex IT Education, получил награду </strong><strong>За инновации в IT образовании<strong> на конкурсе </strong></strong>IT Biz Awards 2015. По данным рейтингов <a href="https://dou.ua/lenta/articles/it-schools-rankings-2016/" target="_blank" rel="nofollow">DOU.UA</a> CyberBionic Systematics входит в тройку лидеров IT обучения в Украине.</p>
<p><a href="https://itvdn.com/ru">ITVDN</a> – это онлайн платформа для изучения программирования по видео курсам. В каталоге ITVDN более 200 видео курсов по 20 IT специальностям, наиболее популярные среди них: FrontEnd, Java, Python, .NET, мобильная разработка и создание игр на Unity. Авторы курсов – практикующие разработчики, сертифицированные специалисты из IT компаний. </p>
ITVDN для корпоративних клієнтів Інтерв'ю із Дмитром Охріменком.
Автор: Редакція ITVDN
Дмитрий Охрименко – один из создателей ITVDN, автор видео курсов, консультант по построению распределенных и веб-ориентированных приложений, сертифицированный специалист Microsoft (MCTS, MCPD, MCT). Более 10 лет Дмитрий проводит корпоративные тренинги для IT специалистов в таких компаниях как 3Shape, GlobaLogic, Ciklum, Terrasoft, Simcorp и других.
Мы попросили Дмитрия ответить на ряд вопросов, связанных с обучением IT специалистов и о том, в какой мере ITVDN может помочь в решении этих задач.
Как HR-специалисту узнать, какие новые технологии нужно изучить разработчику?
Для этого есть много инструментов, которыми можно воспользоваться для определения действительно важных для разработчика тем. Так как бизнес должен зарабатывать деньги, то неправильно будет идти только на поводу у разработчика. Если говорить о мотивации, то все люди любят платить деньги за то, что приносит пользу, либо за то, что приносит удовольствие. Если брать разработчиков, то пользу им приносит все то, что может помочь в решении их повседневных задач. Если компания, например, разрабатывает какие-то веб-приложения, то, возможно, стоит обратить внимание на изучение их популярных библиотек, которые используются в проектах, на изучение разработки BackEnd-части. Это то, что можно отнести к пользе, которую получит разработчик. Если говорить об удовольствии, то все разработчики любят говорить, что они знают все самые последние технологии, что они имели опыт с последними версиями: C#, JavaScript, C++ и т.д. Поэтому мотивация может заключаться в том, чтобы проводить обучение, может, не совсем полезное для проекта, но зато - это новые технологии, и разработчик будет чувствовать себя частью передовых технологий.
Также необходимо проводить обучение для поднятия общего уровня знаний специалистов в проекте. По сути, как узнать, что нужно разработчикам? Лучше всего на этот вопрос ответит не сам разработчик, а тимлид или человек, который занимается организацией всей команды. Потому что четко понятно, что у этих ребят не хватает опыта работы с таким-то языком, инструментом и необходимо подтянуть именно эти навыки.
Можно сделать, например, общий опросник для всех разработчиков и узнать, что они хотят. Как показывает практика, это обычно разбросанные требования: хочу учить С#, хотя человек пишет на Java, или хочу учить Python, хотя в проекте он не будет вообще использоваться.
Для того, чтобы обучение мотивировало разработчиков и было полезно для самой компании, то HR-специалисту нужно собрать информацию не только от конкретных разработчиков, а еще и уточнить, что действительно необходимо для реализации тех задач, которые стоят перед командой в целом. Чтобы команда смогла поставить действительно качественный продукт.
Как происходит процесс построения корпоративного тренинга?
Чаще всего компания понимает, что ей не хватает каких-то знаний в определенных направлениях. По своему опыту, если возникает какая-то задача у HR-специалиста или у тимлида, что команду нужно подтянуть по знаниям, например, по JavaScript, то мы просто приезжаем от Учебного центра CyberBionic Systematics и предоставляем перечень тех курсов и материалов, которые уже существуют. Если компании необходимо подготовить, допустим, Frontend-разработчиков, то мы приезжаем с теми наработками, которые уже есть. Также предварительно готовим конкретное предложение, если от компании уже поступили рекомендации, что, например, нужно сделать больший акцент на объектно-ориентированное программирование, на библиотеку, на определенные инструменты. То есть, мы подготавливаем предложение таким образом, чтобы высветлить те проблемы, которые возникают перед разработчиками и дополнительно добавляем какие-то материалы, которые могут поспособствовать дальнейшему росту специалистов.
Мы проводим встречу с компетентными лицами. Собираемся с тимлидерами, с senior-разработчиками, они высказывают свои пожелания, они корректируют эту программу, и мы берем время на доработку дополнительных материалов. У нас очень много опыта по работе с киевскими компаниями. Очень часто компания Terrasoft заказывала именно абсолютно новую, индивидуальную программу. Они смотрели на то, что у нас есть, но вносили корректировки, которые требовали разработки 30-40 часов, под свои проекты.
Чтобы обучение было действительно качественным и эффективным, чтобы компания получила из этого выгоду, специалистам компании необходимо озвучить, какие проблемы есть и в каком направлении нужно учить команду. В большинстве случаев тимлид и senior-разработчик понимают, что у его 10-ти мидлов, джуниоров и других специалистов не хватает опыта в определенных заданиях. Обычно это знания выборочные и их нужно подтянуть, или их просто нет, тогда нужно донести до слушателей.
Наша задача понять, чего не хватает для того, чтобы специалисты были действительно продуктивными, и их работа была результативная. Для этого нужно подготовить программу, которая принесет пользу компании и специалисты будут удовлетворены. Мы расскажем им, что нужно знать и как нужно работать. Задачи компании будут решатся, а рабочих проблем должно стать меньше после того, как тренинг успешно закончится.
Какие формы обучения наиболее подходят для IT-специалиста?
Чтобы обучение было максимально эффективным, я думаю, его необходимо комбинировать. Использовать обучение вместе с тренером, когда он будет своим примером мотивировать разработчика, заставлять что-то новое учить и двигаться дальше. Также комбинировать обучение необходимо с добавлением онлайн-составляющих, дополнительной литературы. Если брать корпоративное обучение, то максимально эффективное будет очное и онлайн, когда приезжает тренер или обучает через скайп и подобные ресурсы. Непосредственно взаимодействуют все группы слушателей и дополнительно к этому добавляется обучение в видеоформате.
Для большинства проектов не всегда есть возможность оторвать людей от производственного процесса, есть определенные часы, в которые тренеру можно пообщаться с коллективом, рассказать теоретическую часть, но не всегда у разработчиков есть возможность полностью переключиться на подобного рода обучение. Обучения, когда в течение 5 дней в неделю по 5 часов учат определенную технологию, я считаю не очень эффективным, потому что информации очень много, не хватает времени, чтобы её освоить и закрепить. Я считаю, что обучение должно быть постоянным, интенсивным, но при этом в меру, чтобы была возможность переварить саму информацию.
Чтобы был максимальный эффект, необходимо комбинировать очное и онлайн-обучение, когда тренер рассказывает материал и добавлять видеоформат обучения. Конечно, в идеале было бы перевести все на видеоформат и сделать так, чтобы слушатели только смотрели видеоматериалы, но у многих часто возникают вопросы.
Если брать, например, проект ITVDN, то корпоративное обучение подразумевает еще и консультации, то есть команда может взять себе набор видеоуроков.
Создатели и авторы курсов ITVDN хорошо понимают, что именно и в какой последовательности учить и какой эффект будет максимально достигнут. Мы можем составить индивидуальную программу, сделать временные метки и консультировать команду уже по ходу обучения, чтобы они смотрели все в видеоформате и не отрывались от рабочего процесса, при этом мы будем проверять результаты тестирования и отвечать на возникшие вопросы в ходе обучения.
Мы открыты для диалога с компаниями, которые хотят мотивировать своих разработчиков и организовывать для них обучение. Наша команда готова разрабатывать индивидуальные программы, создавать индивидуальный график и подход к каждой компании в отдельности. У каждой компании свои собственные бизнес-процессы, своя корпоративная культура и всех под одну гребенку поставить не выйдет, поэтому мы готовы свои процессы подстроить под график конкретной организации.
Как ты посоветуешь "расшаривать" знания, делиться опытом внутри команды?
Я считаю, что лучшего всего организовывать мастер-классы, когда сама команда для себя что-то полезное рассказывает. В команде всегда есть разработчики, у которых больше опыта. Неплохо было бы организовать день мастер-классов, составить график, где каждый разработчик должен выступить в течение 10-20-ти минут, рассказать о чем-то новом, показать технологию, сделать минимальную презентацию и просто поделиться знаниями, которые он получил на последнем проекте или вычитал, например, в статье. Польза в этом всем в том, что все понимают, над чем они работают, с какими сталкиваются задачами и технологиями, поэтому такие мастер-классы могут быть максимально эффективными для команды.
Если компания пишет, например, используя Angular, то все мастер-классы нужно заточить под Angular и культивировать освоение тех частей этой библиотеки, которые необходимы для работы в проекте. Тимлидер может составить список докладов, и каждый сможет их проводить, будет общая копилка тех тем, по которым разработчик может провести мастер-класс и сделать расписание – это будет наиболее эффективный способ поделиться знаниями в команде.
Также как способ - экстремальное программирование, вместе работать с одной задачей. Кто-то один знает процесс и диктует, а второй набирает код. Экстремальное программирование никто не отменял, но не в каждом проекте оно может примениться, чтобы более опытный специалист смог передать свои знания.
Введення в розробку програм під iOS. Частина 0.
Автор: Volodymyr Bozhek
Здравствуйте, дорогие читатели. Меня зовут Владимир.
Любая технология рано или поздно приедается и рост себя как специалиста затрудняется. Было принято решение что то кардинально поменять в своей жизни. А так как писать различные интересные проекты я просто обожаю, было принято решение начать изучение в корне другой платформы, среды разработки и языка программирования. Поиск этой платформы оказался достаточно прост для меня. Я решил, что это будет мобильная платформа.
У меня было много разных телефонов с разными операционными системами. Но свой выбор я сделал в пользу iOS, так как при железе слабее, чем у других телефонов, софт работает намного быстрее, чем на других платформах. Это не все преимущества этой платформы, но о других я рассказывать я не буду, дабы не раздувать дискуссию на эту тему. Скажу лишь одно, что телефон c iOS меня ни разу не подвел, даже в самые нужные моменты.
Разумеется, что для разработки под iOS необходим mac, и я его купил. Перед покупкой, разумеется, пробовал разработку под мобильные платформы в гибридных платформах типа Xamarin, Ionic, но на то время функционал в них был не так совершенен, как сейчас, да и пользуясь ими, я бы остался на платформе Windows, это нарушало цель, которую я перед собой поставил по поводу другой платформы.
В течение отпуска, где то за месяц я разобрался, как писать под iOS приложения и сразу начал искать проект, на котором смогу потренироваться. Друг предложил такой проект и я взялся.
За 9 месяцев написал серьезное приложение, купил учетную запись разработчика, выкладывал сборки на Test Flight, их тестировали тестировщики, прошел валидацию в App Store и выложил приложение в App Store.
А теперь по сути. Я постараюсь написать серию статей, в которых распишу простым языком, что надо делать, чтобы у вас тоже это получилось и вы таки выложили свое приложение в App Store.
Касаемо разработки под iOS, то это просто мое хобби во вне рабочее время (надо же как то развлекаться), основной хлеб приносит разработка под Windows/Web платформу с технологиями Microsoft.
Итак, приступим.
Включите свой мак, найдите на панели задач иконку App Store и нажмите на нее.
Выглядит эта иконка вот так:
Затем введите в поле поиска, текст “xcode”, вы должны увидеть следующее:
У меня Xcode уже установлен, поэтому на скриншоте отображается кнопка “Open”, у вас будет отображаться кнопка “Install”. Установите Xcode себе на компьютер, версия Xcode с которой мы будет работать с вами в этом примере, будет 8, на текущий момент это последняя версия этой среды разработки.
Язык программирования, который мы будем использовать, называется Swift, по синтаксису он больше похож на JavaScript и где-то даже на C# местами.
Синтаксис языка Swift в этих статьях мы разбирать не будем, в сети интернет есть полно руководств на эту тему. Сам синтаксис языка не сложно изучить, это делается за день, сложность как раз возникнет при попытке разработки приложения под iOS.
Вот именно эту сложность, мы с вами и постараемся одолеть.
Чтобы серия статей была как-то взаимосвязана, мы с вами напишем проект под названием “Warehouse” (склад), в котором можно будет добавлять товары, заполнять их атрибуты, редактировать и удалять товары. Данные будут сохраняться в настройки телефона.
Вы уже установили Xcode 8? Если да, тогда запускайте его, вы увидите следующее:
Нажмите кнопку “Create a new Xcode project”. Вы увидите такой экран:
Выделите проект “Single View Application” и нажмите кнопку “Next”. Вы попадете на экран задания названия проекта:
На данном скриншоте виден пример того, как заполнить название приложения. В поле “Product Name“, введите “Warehouse”, так будет называться наше приложение.
В поле “Organization Name”, введите свои имя и фамилию, или название вашей компании.
В поле “Organization Identifier”, вводится уникальный идентификатор приложения, который будет использоваться как ключ при регистрации данного приложения в iTunes, чтобы была возможность подписывать сборки и отправлять на бета сервер Test Flight для тестирования, но об этом позже. Вкратце “com” - это сокращенно “company”, “bozhek” это название компании, у вас это будет другое название.
В поле Bundle identifier видно полное название вашего приложения в iTunes.
В поле Language, оставьте Swift. В поле Devices, выберите iPhone.
Нажмите кнопку “Next”. Откроется проект, который мы создали:
Обратите внимание на красный кружок в поле Status: “Signing for Warehouse reguires a development team”. Это сообщение говорит нам о том, что приложение надо подписать сертификатом, без сертификата мы не соберем и не запустим это приложение.
Давайте это исправим. В поле Team, откройте выпадающий список и выберите в нем пункт “Add an Account...”, откроются свойства среды разработки Xcode, с предложением ввести логин и пароль от
вашей учетной записи в App Store, под которой вы устанавливаете приложения себе на телефон:
Если же у вас по каким то причинам нет этой учетной записи, создайте ее, нажав на кнопку “Create Apple ID”. Создание этой учетной записи я не буду рассматривать в данной статье, поскольку она создается очень легко и в сети интернет есть полно информации на эту тему.
Итак, вы ввели в поля Apple ID и Password свои данные, нажмите кнопку “Sign In”. После этого красный круг с ошибкой пропадет и вы увидите следующее:
Теперь вы сможете собрать и запустить свой проект.
Заметьте, я рассказываю чисто практически как и что делается, особо не вникая в детали.
Если вам нужна более подробная информация, вбейте в гугл WWDC, и посмотрите официальные видео сессии от компании Apple, в их двухчасовом видео много воды, но зато есть теория, которая будет вам нужна. Я даю только суть.
Нажмите на иконку приложения в проекте:
Выберите симулятор “iPhone 7”.
Затем нажмите на кнопку Собрать и запустить приложение:
Будет запущена сборка проекта и запущен симулятор “iPhone 7”, в котором откроется наше приложение:
Сейчас мы видим только белый экран и больше ничего, так как мы еще ничего не делали.
Чтобы выйти на рабочий стол в симуляторе, выполните сочетание клавиш Shift + Command + H, это сочетание означает нажатие кнопки Home:
Вы увидите на рабочем столе наше приложение "Warehouse".
Теперь давайте остановим выполнение приложения, для этого в Xcode нажмите кнопку:
Теперь давайте посмотрим, что у нас есть внутри проекта.
Выделите в левой панели среды разработки файл “Main.storyboard”, в этом файле содержится представление приложения.
В панели справа отображаются свойства представления.
Разработка под iOS строится через паттерн MVC (Model View Controller), файл Main.storyboard, содержит View, которые вы будете использовать в своем приложении для создания визуального
интерфейса. Теперь давайте выделим в панели свойств вкладку Class:
В поле Class , мы видим класс контроллера, привязанный к данному представлению.
Теперь выделите вкладку Size:
На данной вкладке задаются размеры представления.
Выделите вкладку Events:
На данной вкладке задаются обработчики событий в представлении с привязкой к методам в контроллере.
Теперь выберите в левой панели файл ViewController.swift :
На 9 строке подключено пространство имен UIKit.
На 11 строке объявляется класс с именем ViewController, который наследуется от базового класса контроллера UIViewController.
На 13 строке мы переопределяем метод, загрузки представления, этот метод вызывается когда представление начинает свою загрузку. В этом методе необходимо предварительно проинициализировать данные элементов управления, используемых на вашем представлении.
На строке 14, вызывается метод базового класса ViewController.
Код на строке 18 нам пока не интересен, мы его рассматривать не будем, чтобы не путаться.
На этом урок завершается.
На следующем уроке, в первой части, мы рассмотрим с вами, как пользоваться элементами управления, как привязывать к ним обработчики событий и как взаимодействовать с ними.
Використання HTML Agility Pack та CSS Selectors
Автор: Редакція ITVDN
Введение
В следующих примерах используется HTML Agility Pack (НАР), чтобы загрузить HTML в объект модели документа (DOM) и разбить на узлы. Дополнительно есть случаи, когда приходилось анализировать документ об элементах, которые не являются действительно узлами, такие как комментарии.
В дополнение к наблюдениям около HAP в целом будут указаны методы расширения, предоставляемые пакетом HAP.CSSSelectors, что позволяет значительно проще выбирать.
Задний план
Был успешно использован Html Agility Pack для клиента, проанализированы HTML документы, чтобы извлечь необходимую информацию. Расширения CSSSelector будет добавлять новый мощный уровень абстракции, чтобы собрать необходимые данные.
Использование кода
Пакеты для примера нужно будет импортировать с помощью NuGet. Описания пакетов будут загружены в проекте, но нужно будет установить менеджер пакетов NuGet для восстановления библиотек.
В проект был включен очень простой HTML файл с примерами вопросов, которые необходимы для решения своих проектов.
Чтобы проверить без лишних изменений, необходимо скопировать файл HTML в следующем дисководе и каталоге - C: \ TestData.
HtmlAgility имеет ряд классов, доступных для его добавляемых классов и перечисления, которые представляют различные части DOM, эти классы включают HtmlAttribute, HtmlAttributeCollection, HtmlCommentNode и так далее.
Первый класс, который мы будем изучать, это HTMLDocument класс. Этот класс имеет методы для загрузки и анализа документа в его соответствующих частях.
В исходном коде вызывается каждая секция кода, использующая номенклатуру (часть X), где X представляет собой число.
Чтобы использовать, следующая строка должна быть реализована:
HtmlAgilityPack.agpack = new HtmlAgilityPack.HtmlDocument();
Следующий метод вызывает метод для загрузки документа. Вы можете загрузить его из строки:
agpack.LoadHtml(Html string)
//or from a resource –
agpack.Load(@"c:\testdata\testdat.htm");
Файл в себя включает недостающий закрывающийся тег шрифта и неуместный закрывающий тег. Он прекрасно работает в браузере, не выдает ошибку в HAP, но может быть проверенным на это.
var errors = agpack.ParseErrors;
ParseErrors будет возвращать коллекцию и подсчет ошибок. Достаточно интересная вкладка, закрытие шрифта не выдаст ошибку.
После того, как документ был загружен, двумя основными способами для поиска являются:
SelectNodes(string XPath) // from the DocumentNode
GetElementbyId(string Id) // from the HtmlDocument
Поскольку может быть только один ID, getElementById вернет один узел и SelectNodes вернет коллекцию узлов, потому что с помощью XPath он может соответствовать одному или нескольким элементам.
Находим приложение, где будет добавляться несколько файлов вместе, ограничивающее каждый документ с начальным и конечным комментариями. Ниже показано, как обрабатывать разделения этого документа обратно в его составную часть. Файл, который включен, имеет секцию, которая очерчена с комментариями:
HTML Body
Вы можете использовать следующую команду, чтобы получить комментарий:
var comment = agpack.DocumentNode.SelectNodes("//comment()[contains(., 'Start Table:')]");
Это говорит от всего документа ("//") выбор комментариев, что содержат от текущего местоположения (.) слово Начало табл.
Так как это является комментарием, то не имеет дочерних узлов и внутреннего текста, только текст самого комментария. Это полезно, если то, что вы хотите сделать - это разобрать комментарий, чтобы определить значение в комментарии (номер счета в данном случае), но на самом деле не поможет, если вы хотите видеть текст между комментариями. Чтобы достичь этого, возвращаемся обратно в регулярные выражения и группировки.
var html = Regex.Match(agpack.DocumentNode.InnerHtml,@"(?.*)",RegexOptions.Singleline).Groups[1];
Теперь в html.Value имеется текст между двумя тегами.
Переходим к нахождению элементов в DOM, первый пример находит узел, используя getElementById. Есть три таблицы, но только два идентификатора возложены на них. Одним из них является ID = "abc", другой ID = "table3".
Начнем с таблицы ID = "abc":
var node = agpack.GetElementbyId("abc");
Это вернет один узел, представляющий таблицу. InnerHtml будет содержать весь текст между тегами.
Он также будет содержать набор узлов, представляющих DOM структуру таблицы.
Один из подходов к получению узла строк заключается в использовании Linq, чтобы обнаружить их:
var rownodes = node.ChildNodes.Where(w => w.OriginalName == "tr");
Если проверить подсчет, вы увидите, что у вас есть три строки. Однако, на самом деле существует четыре ряда, первый записанный не будет найден.
Другой подход заключается в использовании SelectNodes на узле, чтобы обнаружить элементы tr.
rownodes = node.SelectNodes("tr");
Но это также проблема - найти все строки, проще найти элементы управления.
Как насчет node.SelectNodes ("/ tr")? Это ничего не возвращает.
Как насчет node.SelectNodes ("// tr")? Хорошая новость состоит в том, что он нашел недостающую строку вместе со всеми строками (12) в документе.
После небольшого углубления нашлись следующие два рабочих решения:
rownodes = node.SelectNodes(node.XPath + "//tr");
//or
// http://www.w3schools.com/xsl/xpath_axes.as
rownodes = node.SelectNodes("descendant::tr");
это возвращает все четыре. Возможно, HAP делал бы SelectNodes от текущего узла "//tr" и работал бы, увы "//" - говорит искать от корня документа. Но второй вариант работает, как потолок от выбранного узла.
Аналогичным образом мы можем найти все td элементы, используя те же процедуры. Отметим, что для таблицы нужно 3 вернуть двенадцать td элементов, даже если они являются дочерними.
node = null;
node = agpack.GetElementbyId("table3")
nodes = node.SelectNodes("descendant::td");
Переходим к HAP.CssSelectors.
Это находится на вершине HtmlAgility пакета и будет на самом деле обеспечивать установку в качестве части пакета NuGet.
Это позволяет выбрать элементы, используя CssSelectors, нежели XPath. Например:
rownodes = agpack.QuerySelectorAll("#abc tr");
В этом случае не нужно искать в узле, просто, выбрав из всего документа, он вернет ожидаемых 4 ряда.
listTDNodes = agpack.QuerySelectorAll("#table3 td");
Ниже приведен пример получения только s (три) во втором ряду.
listTDNodes = agpack.QuerySelectorAll("#table3 tr:nth-child(2) td");
Это вернуло двенадцать пунктов, четыре ряда из 3 колоноки. Одно замечание. Способ QuerySelectorAll возвращается, как список <узлов>, а не коллекция узлов. Это важно знать, если планировать смешивать и сочетать.
В дополнение к выбору по идентификатору (#) можно выбрать по классам (.), это гораздо проще, чем искать атрибут с классом, используя XPath.
listTDNodes = agpack.QuerySelectorAll(".table");
Возвращаем первую и третью таблицу с классом table.
Точки интереса
В заключении скажем, что продление CssSelectors - это еще один полезный инструмент для легкого выбора элементов, без необходимости копать вглубь XPath или перебирать коллекции.
Источник: http://www.codeproject.com/Articles/1038320/Using-HtmlAgility-pack-and-CssSelectors