Nesspuma
Организатор
- #1
[NFactorial] Программирование на Java для начинающих [Арман Сулейменов]
- Ссылка на картинку
Для кого этот курс
Абсолютных новичков
Успех завершения
Процент завершения курсов «учись сам по себе» - 7%. Процент успешного завершения онлайн-курсов в nFactorial School - 90%.
Дружная тусовка, где можно быть самим собой
Благодаря ежедневным воркшопам и совместным упражнениям группа сильно сближается, становится чуть ли не семьей и с нетерпением ждет вечерней встречи друг с другом.
Соревнования по программированию
Со второй половины потока - каждую пятницу онлайн-соревнования по программированию между участниками курса: 90 минут, 5 задач.
Интересные сокурсники
Благодаря онлайн формату получается по-настоящему разношерстная и интересная группа сокурсников: казахстанцы из ; от старшеклассников до 40-летних профессионалов; от инвесторов, нефтяников и предпринимателей до школьных учителей, PhD студентов и ученых.
Высокая интенсивность
Регулярные интерактивные 90+ минутные воркшопы. 40 воркшопов за 8 недель. Фокус - на практике: за один воркшоп мы пишем и разбираем код от 3-х до 13 задач разной сложности. Впечатляющие еженедельные проекты для закрепления материала.
Имидж ничто, понимание - все
Один из принципов сообщества nFactorial - «Being Good > Looking Good» или «Имидж ничто, понимание - все». Это помогает раскрепостить участников, не стесняться показаться глупым и задавать вопросы, каждый раз когда есть сомнение или непонимание.
Почему Java?
Как опытные менторы и разработчики, мы знаем большинство современных языков, таких как Python, Ruby, JavaScript или Go. Мы выбрали Java, потому что он не такой низкоуровневый, как C (с ненужной сложностью для новичков), но также и не слишком высокоуровневый, как Python (который скрывает много чего 'за кулисами'). Java широко используется, доступна, охватывает полный набор современных абстракций, непрерывно развивается с начала 90-х годов и имеет множество автоматических проверок на наличие ошибок в коде. Это также отличный язык для обучения объектно-ориентированному программированию, который будет полезен в мобильной и полнофункциональной веб-разработке. Как заметил создатель C++ Бьярне Страуструп: «Есть только два типа языков программирования: те, на которые все жалуются, и те, которыми никто не пользуется».
Абсолютных новичков
- Курс разработан для тех, кто хочет научиться программировать с нуля. Вам не нужно быть математиком, одержимым технологиями.
- Вы начинали учить программирование самостоятельно, но так и не закончили свой курс на Codecademy, Udacity или FreeCodeCamp?
- Вы научитесь «мышлению программиста» и создадите сильную базу в компьютерных науках, после которой Вам будет под силу изучение любой новой технологии.
Успех завершения
Процент завершения курсов «учись сам по себе» - 7%. Процент успешного завершения онлайн-курсов в nFactorial School - 90%.
Дружная тусовка, где можно быть самим собой
Благодаря ежедневным воркшопам и совместным упражнениям группа сильно сближается, становится чуть ли не семьей и с нетерпением ждет вечерней встречи друг с другом.
Соревнования по программированию
Со второй половины потока - каждую пятницу онлайн-соревнования по программированию между участниками курса: 90 минут, 5 задач.
Интересные сокурсники
Благодаря онлайн формату получается по-настоящему разношерстная и интересная группа сокурсников: казахстанцы из ; от старшеклассников до 40-летних профессионалов; от инвесторов, нефтяников и предпринимателей до школьных учителей, PhD студентов и ученых.
Высокая интенсивность
Регулярные интерактивные 90+ минутные воркшопы. 40 воркшопов за 8 недель. Фокус - на практике: за один воркшоп мы пишем и разбираем код от 3-х до 13 задач разной сложности. Впечатляющие еженедельные проекты для закрепления материала.
Имидж ничто, понимание - все
Один из принципов сообщества nFactorial - «Being Good > Looking Good» или «Имидж ничто, понимание - все». Это помогает раскрепостить участников, не стесняться показаться глупым и задавать вопросы, каждый раз когда есть сомнение или непонимание.
Программа:
Неделя 1-2
Введение в язык программирования Java. Основные концепции программирования. Анатомия программы. Встроенные типы данных. Преобразование типов. Шаги в разработке программы. Условные выражения: оператор 'if'. Циклы: оператор 'while', цикл 'for'. Вложенный код. Отладка (дебаггинг) программ.
Неделя 3-4
Массивы. Код для обработки массивов. Двумерные массивы. Стандартный ввод и вывод. Графика. Фракталы. Анимация.
Проект - «Симуляция и визуализация солнечной системы: 8 планет, вращающихся вокруг солнца с разными скоростями, ускорениями и силами притяжения, действующими между ними».
Неделя 5
Недельные каникулы, чтобы перевести дух
Неделя 6
Функции и библиотеки. Пример использования: цифровое аудио. Применение: распределение Гаусса. Модульное программирование. Классические примеры. Рекурсивная графика. Оптимизация: предотвращение "экспоненциальной" работы. Динамическое программирование.
Проект - «Фракталы, треугольник Серпинского, множество Мандельброта, плюс создание собственного фрактала / рекурсивной графики (будет конкурс на самый оригинальный фрактал)».
Неделя 7
Объектно-ориентированное программирование. Цвет. Обработка изображения. Обработка строк. Создание новых типов данных. Примеры: электрический заряд, черепашья графика, комплексные числа.
Проект - «Распознавание рукописных цифр с помощью элементарного машинного обучения».
Неделя 8
Скорость алгоритмов. Эмпирический анализ. Математические модели. Асимптотическая сложность. Алгоритмы поиска: последовательный поиск, бинарный поиск. Алгоритмы сортировки: сортировка вставкой, сортировка слиянием, самая длинная повторяющаяся подстрока.
Проект - «Введение в машинное обучение и нейронные сети. Классический метод обучения перцептрона. Собственная реализация перцептрона и мульти-перцептрона для распознавания рукописных цифр».
Неделя 9
Классические структуры данных. API и клиенты. Стеки, очереди, связанные списки и их реализация.
Проект - «Эвристики для решения задачи коммивояжера (классическая задача в комбинаторной оптимизации), где нужно найти самый выгодный маршрут для продавца, чтобы пройти все указанные города и вернуться в исходный город».
Почему Java?
Как опытные менторы и разработчики, мы знаем большинство современных языков, таких как Python, Ruby, JavaScript или Go. Мы выбрали Java, потому что он не такой низкоуровневый, как C (с ненужной сложностью для новичков), но также и не слишком высокоуровневый, как Python (который скрывает много чего 'за кулисами'). Java широко используется, доступна, охватывает полный набор современных абстракций, непрерывно развивается с начала 90-х годов и имеет множество автоматических проверок на наличие ошибок в коде. Это также отличный язык для обучения объектно-ориентированному программированию, который будет полезен в мобильной и полнофункциональной веб-разработке. Как заметил создатель C++ Бьярне Страуструп: «Есть только два типа языков программирования: те, на которые все жалуются, и те, которыми никто не пользуется».
Зарегистрируйтесь
, чтобы посмотреть скрытый авторский контент.