15 youtube-каналов для начинающих веб-разработчиков
Содержание:
- Содержание
- «Уроки программирования на языке C++» от Ravesli
- «Основы C++ и основы UE4» от Udemy
- Советы новичкам
- Шаг 5. Первый код и повышение квалификации
- XYZ school
- Шаг 8. Онлайн-курсы
- Как выбрать лучший курс по программированию?
- «Основы C#» от LoftSchool
- Обучение веб-программированию
- Шаг 2. Выбор направления и языка программирования
- Как более эффективно учиться по видеокурсам
- Создание виртуальной машины
- Основы основ
- Мобильные приложения
Содержание
Курс состоит из 6 разделов
Введение
В данном разделе Вы узнаете:
Как наиболее эффективно проходить курс?
Как работает язык C++ изнутри? Это очень важно понимать, поскольку такие базовые знания отличают дилетанта от профессионала.
В какой среде разработки лучше писать код на C++? Как её скачать, установить (особенно важно, какие компоненты необходимы) и как настроить?
После просмотра данного раздела Вы уже будете знать, что это за язык, как он работает, а также у Вас уже будет всё готово для написания свои первых программ на C++.
Основы программирования на C++
В этом разделе Вы узнаете:
- Как пишутся программы на C++?
- Как правильно использовать комментарии?
- Что такое переменные, как они создаются и используются?
- Какие типы переменных есть в C++ и чем они отличаются друг от друга?
- Что такое константы и как с ними работать?
- Какие арифметические, логические и побитовые операции есть в C++ и как их использовать?
- Как работать с консолью?
- Как решить проблемы с кодировкой в консоли (не только на вывод, но и на ввод)?
- Что такое условный оператор и как он работает?
- Что такое оператор switch-case и когда его использовать?
- Что такое циклы и какие они есть в C++?
- Что такое цикл for, while и do-while и какая между ними разница?
- Что такое массивы, какие они бывают и, как и когда их использовать?
- Как работать с многомерными массивами?
- Что такое ссылки и для чего они нужны?
- Как создавать функции, как они работают изнутри, как они взаимодействуют со ссылками и многое-многое другое?
- Что такое область видимости переменных?
- Что такое статические переменные
- Что такое пространства имён, для чего нужны и как применяются?
- Что такое макросы?
- Как правильно разбивать код на разные файлы?
- Как собрать проект?
После прохождения этого раздела Вы уже сможете писать несложные программы на языке C++.
Работа с указателями
Указатели – это неотъемлемая часть языка C++. Мне трудно представить серьёзный и грамотно написанный проект, где не использовались бы указатели. Поэтому работать с ними надо уметь обязательно, и как раз в этом разделе этим мы и займёмся.
Посмотрев данный раздел, Вы узнаете:
- Что такое указатели и чем они отличаются от ссылок?
- Как взаимодействуют между собой указатели и массивы?
- Как работают константы и указатели вместе?
- Как работать с массивами в параметрах функций?
- Что такое указатель на функцию, а также как и когда его использовать?
- Что такое динамические объекты?
- Как не допустить утечку памяти?
Объектно-ориентированное программирование
Объектно-ориентированное программирование (ООП) – это самая популярная методика программирования, без которой немыслимо подавляющее большинство проектов не то, что средних и крупных, а даже маленьких. И сам язык C++, если ООП не использовать, становится бессмысленным (уж лучше тогда язык C использовать). Поэтому ООП надо обязательно знать любому, кто работает с C++. И как раз в этом разделе Вы и освоите ООП.
В этом разделе Вы узнаете:
- Что такое объектно-ориентированное программирование и какие парадигмы в нём есть?
- Как создаётся класс в C++?
- Что такое конструкторы и деструкторы?
- Что такое методы (функции класса) и их перегрузка?
- Как правильно использовать .h и .cpp файлы?
- Что такое модификаторы доступа и как правильно их применять?
- Что такое дружественные функции и классы?
- Что такое статические поля и методы?
- Что такое перечисления?
- Что такое структуры?
- Что такое наследование и как его использовать в C++?
- Что такое виртуальные методы?
- Как делать перегрузку операторов?
- Что такое абстрактные классы и методы?
- Что такое шаблоны и как они используются?
После просмотра данного раздела Вы сможете создавать относительно сложные проекты с любой по сложности иерархией классов.
Обработка исключений
В этом разделе Вы узнаете:
- Что такое исключения и почему они так важны?
- Как обрабатываются исключения в C++?
- Как генерировать исключения?
- Как обрабатывать много исключений?
- Как создавать свои собственные исключения?
Просмотрев этот раздел, Вы сможете грамотно обрабатывать самые различные исключительные ситуации, как в чужих библиотеках, так и при написании собственных.
«Уроки программирования на языке C++» от Ravesli
Длительность: 213 уроков плюс дополнительный материал.
Формат обучения: материал для самостоятельного изучения, практические примеры и задачи без обратной связи.
Программа обучения: курс посвящён основам и нюансам языка С++. Он поможет научиться создавать, компилировать и отлаживать программы в популярных средах разработки Visual Studio, Code Blocks, Xcode. Курс подойдёт как новичкам, так и продвинутым программистам, желающим освежить знания и прокачать навыки.
Какие навыки получите:
- Понимание основ языка C++ и программирования в целом.
- Основы разработки ПО.
- Работа с переменными и основными типами данных.
- Применение операторов в C++.
- Перегрузка операторов.
- Работа с переменными.
- Основы ООП.
- Понимание принципов наследования.
- Использование библиотек C++.
- Создание игр на C++.
- Решение типовых проблем, возникающих в процессе программирования на С++.
Плюсы:
- Полезная информация в свободном доступе.
- Качественная подборка материала.
- Каждый урок сопровождается примерами.
- Насыщенная программа для новичков.
- Подборка дополнительных уроков.
Минусы:
«Основы C++ и основы UE4» от Udemy
Длительность: 2 раздела с видеолекциями, общая продолжительность 17,5 часов.
Формат курса: самостоятельный просмотр лекций без общения с преподавателем.
Программа обучения: курс включает видеозаписи лекций для студентов. Он рассчитан на начинающих программистов и разработчиков игр с помощью С++ и UE4.
Что узнаете:
- Основы языка C++.
- Что такое функции, массивы, итераторы в C++.
- Основы работы с UE4.
- Интерфейс и базовые инструменты UE4.
Плюсы:
- Старт в удобное время.
- Объяснение материала на примерах.
- Опытный преподаватель.
Минусы:
- Некоторая информация представлена сжато.
- Много воды.
Советы новичкам
Учитывая поэтапность процесса, нужно создать план обучения.
- В каждом пункте его должно быть прописано, что именно на этом этапе необходимо выучить и какие средства использовать.
- Обучение не должно быть растянутым на всю жизнь, ведь информационные технологии очень быстро развиваются и меняются. Пока Вы будете тщательно изучать какой-то инструмент программирования, к концу обучения он может уже устареть, и в тренде окажется что-то другое, более современное.
- В процессе обучения обязательно используйте наработки других людей, все сервисы и материалы, которые доступны. Тут ничем нельзя пренебрегать. Ищите и налаживайте связи с практикующими программистами, общайтесь с ними как можно больше. Может быть, таким способом Вы найдете себе куратора, который будет находить ваши ошибки и подбрасывать интересные задачки для саморазвития. Это особенно полезно, если начинающий программист занимается самообучением.
- Изучите архитектуру компьютера и английский, потому что большинство самых ценных учебных программ написаны на этом языке. Хороших русскоязычных ресурсов пока еще гораздо меньше. К тому же, самая высокооплачиваемая работа – у англоязычных работодателей, да и на любом языке программирования коды пишутся на латинице с использованием английских слов.
Это совершенно другая, особенная жизнь, в которой люди работают везде – в офисе, в собственном доме. Даже на отдыхе не получается расслабиться, потому что у айтишника все мысли заняты багами и тасками. К тому же, всё что потребуется знать программисту, на курсах не получить, всю жизнь придётся доучиваться.
По факту Вас ждет обучение нон-стоп, и это совершенно особая философия жизни. Начинайте с малого, но действуйте быстро, пока технологический поезд не оставил Вас далеко позади.
Шаг 5. Первый код и повышение квалификации
После пишите первые программы и проводите эксперименты: видоизменяйте код, приведённый в примерах, экспериментируйте, старайтесь набирать его самостоятельно, а не копировать и вставлять.
Заведите конспект, от руки записывайте все известные операторы, типы данных и прочие сведения, касающиеся синтаксиса языка, особенностей использования той или иной его возможности.
После написания первых программ и проведения экспериментов с ними и освоения книги по ЯП для новичков можно делать следующие шаги, такие как:
- переход к иным книгам;
- изучение официального руководства по языку программирования на сайте его поддержки (Python изучать рекомендуется именно из него);
- прохождение онлайн-курсов;
- использование открытых источников для повышения квалификации (бесплатные курсы, уроки, примеры);
- решение простых реальных задач – ищем задания (заказы, работу) для новичков на тематических форумах, их ветках или в соответствующих разделах бирж фриланса и пытаемся выполнить их. Первые задачи можно решать для себя, даже не беря заказ в работу и не связываясь с заказчиком;
- прохождение дальнейшего обучения на таких сервисах, как CodAcademy https://www.codecademy.com/tv https://reddit-marketing.pro/ и десятки им подобных;
- поиск платных курсов или наставника;
- изучение чужого кода, находящегося в открытом доступе его анализ и переписывание.
Документация, примеры, книги и прочие материалы по многим ЯП написаны на английском языке, а потому обязательно владение им на базовом уровне, достаточном для понимания технической документации хотя бы с переводчиком.
XYZ school
Школа обучает программированию и профессиям будущего на основе онлайн игр. Мы рассмотрим только основное, всё что касается программирования. Если вам захочется посмотреть весь спектр курсов школы, то вы можете изучить материалы более детальней на их сайте.
5 курсов
- Основы программирования — обучаться бесплатно
- UNITY — записаться на курс [9 450 в месяц / рассрочка]
- GAME CODE — пройти консультацию [9 450 в месяц / рассрочка]
- INTRO GAME CODE — обучаться бесплатно
- Введение в игровую индустрию — начать обучение
Какое направление в программировании для Вас кажется наиболее актуальным?
Разработка web-приложений 0%
Разработка desktop-приложений 0%
Разработка серверных приложений 0%
Разработка мобильных приложений 0%
Программирование встраиваемых систем 0%
Системное программирование 0%
Разработка игр 0%
Программирование баз данных 0%
Программирование для бухгалтерских и финансовых продуктов 0%
Science 100%
Проголосовало: 1
Шаг 8. Онлайн-курсы
В сети полно материалов и пособий для тех, кто хочет научиться программированию с нуля. И далеко не все они платные.
Мы сделали небольшую подборку наиболее популярных и признанных интернет-сообществом ресурсов.
Увы, большинство из них на английском языке:
- The AI Games – проект, где необходимо создавать ботов, совершенствуя их ИИ с каждым уроком и соревнуясь при этом с другими начинающими разработчиками.
- Codecademy – ресурс для начинающих разработчиков, где собраны курсы по многим языкам программирования и инструментам для создания программного обеспечения. Занятия выполнены в виде задачек. Для их решения необходимо набрать код в интегрированном окне интерпретатора, а сервис проверит синтаксис и истинность результата его выполнения. В случае проблем отладчик даст рекомендации по их устранению. Есть подсказки и форум для поиска ответов.
- Codecombat– локализованный сервис, что является его преимуществом для пользователей, не знающих или плохо владеющих английским языком. Проект рассчитан на изучения языков программирования в игровой форме: для прохождения левелов нужно писать миниатюрные программы, касающиеся как однопользовательского, так и сетевого режима игры.
- Codeschool – учебный процесс основан на просмотре видеороликов и выполнения заданий, материал для которых дан в видео. Доступно более 60 курсов, относящихся не только к программированию.
- CodinGame – платформа для обучения кодингу, где выполнение кода визуализируется. Уровень сложности головоломок растёт с каждым уроком. Сервис поддерживает синтаксис 25 языков.
- Codewars – образовательная площадка для программистов, где задания выполняются в IDE.
- HTML Academy – курсы для будущих верстальщиков и веб-дизайнеров. Рассчитаны на практиков, которые не только книги читают, но и закрепляют теорию на деле. Две десятка курсов доступны всем после прохождения регистрации. Этого хватает, чтобы понять, на своём ли вы месте и подходят ли занятия.
Рис. 10 – Codecademy
Как выбрать лучший курс по программированию?
Для того выбрать достойный онлайн-курс программирования, необходимо знать и понимать несколько критериев отбора. Для каждого ученика они могут быть совершенно разными. А могут совпадать, как частично, так и полностью. Перед тем как определиться с выбором курса, ответьте себе на несколько вопросов.
- Какие цели вы преследуете, изучая основы программирования?
- Сколько времени вы готовы тратить на учебный курс?
- Какое направление программирования вы хотите изучить?
Также, вы можете просмотреть видео Сергея Немчинского, которое сможет вам помочь с выбором направления программирования.
«Основы C#» от LoftSchool
Длительность: 6 уроков.
Формат курса: самостоятельное изучение темы по предоставленным видеоматериалам.
Программа обучения: рекомендована новичкам с минимальными навыками программирования. На уроках рассматриваются базовые принципы C#.
Что узнаете:
- Типы переменных в C#.
- Концепция ООП.
- Принципы наследования и инкапсуляции.
- Что такое полиморфизм и абстракция.
- Как применять массивы C#.
- Как использовать базовые циклы.
Преимущества:
- Нет установленного срока для прохождения курса.
- Короткие информативные уроки.
- Приведение реальных примеров для понимания теории.
- Возможность понять основы языка за короткий период.
Недостатки:
Обучение веб-программированию
Вы хотите создавать собственные веб-сайты и сервисы? Создавать уникальные дизайнерские решения или продавать шаблоны дизайнов? Заниматься доработками для популярных CMS, их интеграцией и техническим обслуживанием? Тогда вам понадобится изучить основы – HTML и CSS, а также изучить инструменты разработки под веб (PHP, JavaScript, Python и др.). Нужно понимать, что такое базы данных и как с ними работать. И только после этого можно сконцентрироваться на углубленном изучении одного или нескольких направлений в этой сфере.
- Основы разработки сайтов и веб-приложений. Базовый курс, где вы познакомитесь с основными принципами web-разработки. Доступен в любой момент времени на сайте Microsoft Virtual Academy.
- Web-технологии. Курс посвящен основным принципам веб-разработки, серверным технологиям и особенностям работы web-приложений. Изучите особенности HTTP протокола, разберетесь с обеспечением безопасности. Изучите технологии node.js, ajax, WebSocket и т.д. Курс доступен в видеозаписи на сайте ИНТУИТ.
- HTML. Подробное изучение особенностей HTML. Вы получите достаточно знаний, чтобы создавать собственные шаблоны или странички. Видео доступны в любой момент времени на сайте HTML Academy.
- CSS. Полноценный и подробный набор уроков по CSS-стилям и их применению. Видео постоянно доступны на страницах HTML Academy.
- HTML5. Основы клиентской разработки. Важные особенности верстки с использованием HTML5. Адаптивная верстка и другие современные возможности. Видео курса доступны в любой момент времени на сайте ИНТУИТ.
- Программирование на Python. Изучение языка программирования с первых шагов. Основные принципы, синтаксис, особенности. Интересные примеры, хитрости и нюансы. Преимущества и важные особенности ЯП. Видео доступны на сайте Stepic.
- Введение в программирование на Python. Еще один базовый курс по изучению ЯП Python, но немного с другим подходом от преподавателей ИНТУИТ. Доступен в любое время в записи.
- JavaScript. Интересный курс по языку программирования, без которого сложно себе представить любую анимацию или интерактивные страницы сайтов. Создатели курса – практикующие разработчики из компании Яндекс. Доступен в видео постоянно.
- PHP/MySQL Интересный интерактивный бесплатный курс от Fructcode. Доступ к видео и заданиям открыт на постоянной основе. Можно соревноваться с другими пользователями по рейтинге достижений. При желании ресурс может выдать сертификат, но за него придется заплатить.
- Базы данных. Изучение принципов работы с базами данных, оптимизация структуры под web, изучение noSQL, работа с большими массивами. Доступен на ресурсе ИНТУИТ в формате видео.
Шаг 2. Выбор направления и языка программирования
В индустрии условно выделяется несколько направлений в программировании:
- Веб-разработка – создание сайтов и веб-приложений – актуальными являются языки PHP, JavaScript, SQL, Python. По умолчанию к списку обязательно прибавляются знание CSS и HTML.
- Пользовательские приложения – все C-подобные ЯП: C, C++, C#. Многие компании создают собственные модификации C для личных нужд, например, Nvidia.
- Мобильные приложения – Java для Android и Swift для платформы iOS. В 2017 был презентован новый язык программирования – Kotlin, который стал вторым официальным для разработчиков под Android после Java.
- Микроконтроллеры – низкоуровневое машинное программирование – для желающих подчинять машины человеку стоит заняться изучением низкоуровневого языка Assembler. Хотя большинство современных микроконтрроллеров и «дружат» с C, знание Ассемблера при работе с «железом» (робототехника, умные дома) обязательно.
Список актуальных в начале 2019 года языков программирования.
Рис. 3 – Перечень наиболее популярных языков программирования в мире в 2018 году
Сначала выбираете платформу – операционную систему, под которую собираетесь писать. В последние годы новички чаще всего выбирают Android, реже – Windows, а потом все остальные.
Опытные же разработчики переходят из этих сфер, веб-разработки и иных платформ в программирование под Linux.
Перед окончательным выбором обязательно изучите тенденции рынка за последние годы (какие языки набирают популярность, какие разработчики становятся менее востребованными).
Список популярных платформ на начало 2019 года. Всё больше компаний отдают предпочтение UNIX-подобным операционным системам, «отворачиваясь» от Windows (в первую очередь – последней её версии).
Программисты под Windows вместе с серверными версиями ОС занимают чуть более трети рынка. Среди мобильных платформ лидерство принадлежит Android.
Рис. 4 – Доля рынка разработчиков в операционных системах
А вот такие специалисты на рынке труда в 2018 году были в дефиците, естественно, опытные и со стажем работы.
Но они приходят со временем и упорным трудом. Веб-разработчиков, как видим, на рынке труда очень много, и конкуренцию они составляют отличную, особенно новичкам.
Рис. 5 – Самые востребованные направления в области в 2018 году
Кроме разработчиков на новом Kotlin, нужны специалисты по Go – многопоточный мультиплатформенный язык программирования – и распространённым средам для написания программного кода.
Python – язык многоцелевого назначения, нередко изучаемый в ВУЗах в качестве первого ЯП. Универсал, владеющий Питоном, сможет работать почти в любой сфере, кроме программирования контроллеров и микроконтроллеров, а также тех отраслях промышленности, где нужны знания C-подобных языков.
Применяется:
- для аналитики, анализа информации, создания отчётов и статистик;
- в веб-разработке – создание современных динамических сайтов и веб-приложений практически любой сложности;
- в образовательной сфере – из-за простоты применяется в ВУЗах, а многие их студенты заказывают практические работы у фрилансеров;
- при создании трёхмерных игр;
- для написания плагинов, библиотек и расширений для приложений.
Для Python существует огромная масса пакетов, библиотек и фреймворков, заточенных под определённые проекты: математические функции, анализ данных.
JavaScript – соперник Python, хотя более популярен для написания серверных и мобильных приложений. Также имеет множество фреймворков, адаптированных для различных случаев.
Go – имеет открытый код и создан для написания программного кода, оптимизированного под выполнение многоядерными процессорами.
C++ и C# — универсальные, но сложные в освоении новичками.
Pascal – во многих учебных заведениях до сих пор применяется в качестве первого языка программирования с целью обучения студентов и учеников алгоритмизации, написанию кода.
Какой бы язык и направление не выбрали, всегда начинайте из языка программирования высокого уровня – JavaScript, Python. Это скриптовые языки, где управление памятью осуществляется автоматически, а работа с указателями для новичка находится в недрах. После понимания каждой строчки кода, освоения работы с памятью и адресацией можно переходить на ЯП среднего уровня.
Как более эффективно учиться по видеокурсам
Допустим, вы только что приобрели онлайн-курс. Он длится шесть часов и разбит на пятнадцатиминутные видео. В итоге, пройдя этот курс, вы должны создать прекрасное приложение. Каким будет наилучший подход к прохождению курса?
Бегло просмотрите курс
Готов поспорить, что вас так и тянет пройти этот курс за пару дней. Там же всего шесть часов, в чем проблема-то? Непременно сделайте это. Просмотрите курс быстро, попрыгайте от одного видео к другому и увеличьте скорость воспроизведения.
Первое, что нужно сделать, — убедиться, что выбранный вами курс стоит вашего времени. Возможно, в ходе этого курса вы не узнаете тех вещей, которые планировали узнать. А может, вам не понравится структура курса или стиль преподавания. Когда по какой-либо причине курс вам не понравился, — откажитесь от его дальнейшего просмотра и попросите вернуть вам деньги, если это возможно.
Ваше время имеет большую ценность, так что принимайтесь за учебу, только если курс соответствует вашим ожиданиям.
Проходите курс медленно
Вы бегло просмотрели курс и остались довольны его содержимым. Теперь пора притормозить. Просмотр 30-60 минут видео в день это много. Изучение программирования — это игра вдолгую, а постепенное продвижение — более надежный способ добиться успеха, чем периодические взрывы энергии.
Чтобы закончить шестичасовой курс, у вас уйдет неделя или две, но так вы усвоите гораздо больше, чем если просмотрите все видео запоем.
Photo by Charles Deluvio on Unsplash
Не пишите код параллельно с учителем
Обычно ведущий курса просит вас писать код параллельно с просмотром видео. Это понятно. Когда вы пишете код вслед за учителем, это гораздо эффективнее безучастного просмотра. Но все равно это не самый оптимальный вариант.
Если вы смотрите видео и пишете код одновременно, вам тяжелее удерживать фокус. Вы все время вынуждены переключать контекст. Также вам часто приходится ставить видео на паузу, чтобы успеть написать код. Все это очень мешает концентрации.
Чтобы выжать всю пользу по максимуму, нужно быть как можно более сконцентрированным. Закройте все вкладки браузера, переведите телефон в беззвучный режим
Все ваше внимание должно быть сосредоточено на видео. Это всего лишь пятнадцать минут, вы сможете
Фокусируйтесь не на синтаксисе, а на проблеме, которую пытается решить учитель, и на концепциях, которые он использует.
Когда закончите смотреть, попробуйте воспроизвести по памяти код, который был в уроке. Восстановление информации по памяти это хорошо зарекомендовавшая себя методика активного обучения. Если вы уверены, что не можете вспомнить какую-то часть кода, попробуйте найти ответ онлайн. И только если другого варианта нет, возвращайтесь к видео.
Пишите код ежедневно
Вы тяжело поработали: просмотрели четыре видео и весь код писали по памяти. Отлично! Но один день ударной учебы это мало. Чтобы достичь долгосрочного эффекта, нужно работать ежедневно.
Вы многое забудете уже на следующий день, и вас потянет пересмотреть видео. Не делайте этого. Посмотрите лучше свой код, который писали вчера, попытайтесь разобраться в нем и восстановить в памяти вчерашнюю тему.
Когда вы хорошенько разберетесь в коде, у вас не будет нужды пересматривать курс, вы сможете просто продолжить с новой серии.
Дополнительные приемы
Многие курсы предлагают простые тесты для закрепления знаний. Никогда не пропускайте их! Тестирование — отличный способ лучше запомнить информацию. Можете также поискать бесплатные тесты онлайн, чтобы еще лучше разобраться в предмете.
Кроме того, имеет смысл поискать товарища или коллегу, которому тоже интересна изучаемая вами тема. Попробуйте рассказать ему, что вы узнали. Когда вы учите других, это помогает лучше понять и усвоить материал, упорядочить знания и выявить возможные пробелы в них.
Последний совет
В интернете полно туториалов. Учитесь отбирать стоящие. Ищите курсы уважаемых преподавателей, сравнивайте их стили подачи материала и то, как они структурируют контент. Если лично вам не нравится, как говорит тот или иной учитель, становится уже совершенно неважным, насколько он хорош. Ищите учителей, которые вам понравятся, и следите за их видео.
Создание виртуальной машины
Категория Программирование
Теги:
- Виртуальная Машина
- Для Начинающих
- Программирование
Создание виртуальной машины – видео курс по программированию на C++, в котором мы будем учиться создавать виртуальную машину.
Часть 1. Описание виртуальной машины, описание уже написанного транслятора и интерпретатора.
Часть 2. Описание виртуальной машины, описание уже написанного транслятора и интерпретатора
Часть 3. Заливаем проект на github, избавляемся от magic numbers, делаем небольшой рефакторинг.
Часть 4. Немного рефакторинга, дописываем умножение, деление, сравнение, безусловный и условные переходы.
Часть 5. Обзор рефакторинга из императивной парадигмы в объектно-ориентированную. Разбиение по файлам. Дописывание прыжков, сравнения, меток.
Часть 6. Ещё немного рефакторинга, юнит-тесты, добавление поддержки данных.
Часть 7. Заключительная часть цикла видео по виртуальной машине. Доделываем подключение файлов и вещественный тип.
Основы основ
Независимо от того, в какую сферу разработки вы стремитесь, основы алгоритмизации, понимание архитектуры компьютеров, математическая логика и другие столь же фундаментальные сведения вам обязательно понадобятся.
- Введение в математическую логику. Курс находится на сайте Hexlet в виде видеозаписей. Вы узнаете базовые понятия математики логики, изучите математические инструменты, познакомитесь с парадоксами, поймете основные принципы работы компьютерной техники.
- Введение в архитектуру ЭВМ. Курс постоянно доступен на сайте Stepic, по окончанию можно сдать экзамен и получить электронный сертификат. Здесь вы узнаете об архитектуре и принципах работы компьютерной техники, начиная от простейших логических схем до сложных мультипроцессорных устройств.
- История ЭВМ и программирования. Курс расположен на сайте Лекториума. Доступен периодически, по мере наполнения группы. Необходимо записаться и ждать уведомления о начале. Длительность – 5 недель. Здесь вы узнаете об истории развития разных ЯП, а также появлению технологий, познакомитесь с разными поколениями компьютерной техники. Также в программе рассматриваются основные принципы работы ЭВМ и существующие типы ЯП.
- Основы программирования. Курс находится на страницах Geek Brains, видео в постоянном доступе. На уроках вы узнаете базовые понятия и терминологию, нужные будущему программисту. Лектор расскажет о том, какие бывают ЯП, поясняет различия между ними, в какой сфере каждый из них применяется. Вы познакомитесь с популярными на сегодня направлениями в программировании, научитесь создавать самые простые программы. Курс поможет понять основы и выбрать язык программирования для последующего изучения.
- Объектно-ориентированное программирование — это мини-курс, постоянно доступный в формате видео на страницах Geek Brains. Весь материал посвящен основам этой парадигмы программирования, описанию важнейших принципов ООП, которые понадобятся разработчику, независимо от выбранной специализации и ЯП.
Мобильные приложения
Вас привлекает создание игр и полезных приложений для мобильных устройств? Значит, вам необходимо изучить особенности программирования для iOS (операционная система устройств Apple) или Android (самая популярная ОС для мобильных). Для работы с ними потребуется изучить не только особые языки, но также понять основные принципы и особенности работы с мобильными. Ведь здесь вас ждет небольшой экран, ограниченные ресурсы, работа с тачпадом и еще много интересного. Вот несколько вводных курсов в эту сферу:
- Разработка приложений для iOS. Курс станет прекрасным решением для поклонников «яблокофонов». Если вы хотите создавать приложения под IPhone или IPad, заходите на сайт ИНТУИТ и смотрите обучающие видео.
- Введение в разработку приложений для ОС Android. Этот вводный курс поможет разобраться с созданием приложений под Андроид – самую популярную ОС, на которой работает огромное количество различных мобильных устройств: смартфоны, планшеты, «умные часы» и другие гаджеты от различных производителей. Видео всегда доступны на сайте ИНТУИТ.
- Введение в разработку приложений для смартфонов на ОС Android. В отличие от предыдущего, в этом курсе делается акцент на работу со смартфонами. Изучают их особенности и рассказывают многие полезные хитрости, которые помогут разобраться с этой сферой деятельности. Доступ – постоянный на страницах ИНТУИТ.
- Разработка приложений для смартфонов на ОС Аndroid. Углубленный курс для Андроид-разработчиков. Рекомендуется к изучению после знакомства с вводными уроками (см. курсы выше). Постоянно доступен на ресурсе ИНТУИТ.