Понедельник , 2 Октябрь 2023

Гарвардский курс CS50 на русском языке

CS50 (Computer Science 50) — вводный онлайн курс по компьютерным технологиям из Гарварда и, начиная с 2015 года, Йельского университета. Основным лектором является Дэвид Малан — один из известнейших преподавателей CS.

Содержание курса CS50:

  • Основы компьютерных наук и программирования. Системы счисления, работа с командной строкой в Linux, циклы, условные переходы и пр.;
  • Концепции алгоритмов и алгоритмичности мышления. Вы узнаете о том, какие задачи можно решать с помощью программирования и каким образом;
  • Концепции абстракции, структуры данных, инкапсуляции, управления памятью. Основы компьютерной безопасности. Процесс разработки ПО и веб-разработка;
  • Основы языка программирования C и визуального языка Scratch. Основные примеры и задания выполняются на языке C;
  • Основы баз данных и SQL;
  • Веб-разработка: основы CSS, HTML, JavaScript и PHP;
  • Основы подготовки презентации проектов по программированию.

CS50 завоевал статус самого популярного курса Гарварда, надеемся, он понравится и Вам. Ниже приведен список всех лекций и их краткое описание.
Ниже представлены все 23 серии Гарвардского курса по основам программирования, который был прочитан осенью 2015 года. Курс переведён на русский язык и озвучен студией Vert Dider по заказу JavaRush.
.
Здесь Вы можете скачать видео и дополнительные материалы по курсу CS50 (на русском языке):

Скачать курс CS50 с Google Drive

 

Лекция №1

Первое занятие является вводным и несет информативный характер. Вы познакомитесь с двоичной системой, ASCII кодом, алгоритмами и множеством различных необходимых понятий.

.

Лекция №2

Вторая серия курса продолжает первую. Из нее вы более подробно узнаете об алгоритмах, о том, для чего они нужны, и как работают. Также вы научитесь работать со Scratch — специальным языком программирования, который в игровой форме поможет Вам писать программы.

.

Лекция №3

Теперь у вас появится новый инструмент — язык программирования C. Знакомство с ним будет проходить легче благодаря уже знакомому Scratch. После лекции вы сумеете работать со своим кодом с помощью командной строки и узнаете некоторые интересные факты.

.

Лекция №4

Из четвёртой лекции вы узнаете о типах данных, еще большем количестве различных определений и научитесь пользоваться библиотеками. В качестве практики будет предложено несколько задач, которые помогут закрепить полученную информацию.

.

Лекция №5

В пятой лекции вы узнаете о том, как устранять баги. Также узнаете про бесконечные циклы и что такое функциональная декомпозиция. Познакомитесь со строками и с понятием «ошибка сегментации».

.

Лекция №6

Шестое занятие будет проведено лектором Робом Боуденом, но Дэвид также будет на месте. Вы поймете, что такое массивы и какими они бывают. А также познакомитесь с криптографией.

.

Лекция №7

Седьмая лекция курса знакомит с основными методами сортировки данных. Дэвид Мэйлен рассказывает о пузырьковой сортировке, сортировках выбором, вставкой и слиянием, а зрители проверяют их на практике.

.

Лекция №8

Рекурсия, сортировка слиянием, компилятор Clang: все это станет понятно вам после восьмой лекции этого курса. Вы узнаете, как применять побитовые операторы, и вообще поймете цель их использования.

.

Лекция №9

Продолжение знакомства с оператором условия — if, введение понятие рекурсии, а также обсуждение скандала концерна Volkswagen и проблемы компьютерной безопасности. Лектор детально рассматривает функцию перестановки — swap, демонстрирует приёмы работы с отладчиком программ и раскрывает структуру и механику оперативной памяти.

.

Лекция №10

Десятая лекция о разных методах составления списков, сохранении информации о программе и использовании указателей и указуемых.

.

Лекция №11

После одиннадцатой лекции Вы сможете свободно работать с указателями и памятью. Узнаете, что такое char* и string, их сходства и различия, а также начнете работать с Valgrind.

.

Лекция №12

Двенадцатая лекция посвящена особенностям стека, очереди и связного списка. Разбор возможных проблем, связанных с доступом к памяти. Тут же рассматривается структура двоичного дерева, префиксного дерева и работа со сжатием файлов.

.

Лекция №13

В этой лекции вы займетесь веб-программированием и познакомитесь с интернет-технологиями. Еще перейдете от командных строк в C к программированию на PHP, JavaScript, познакомитесь с HTML, CSS, SQL и прочим.

.

Лекция №14

Вы закончите изучение HTML и CSS, узнаете как работает веб-сервер Apache, а также увидите реализацию загрузки главной страницы Facebook.

.

Лекция №15

Пятнадцатое занятие глубже введет вас в веб-программирование и познакомит с PHP и HTML.

.

Лекция №16

Ваше знакомство с веб-разработкой продолжается, но теперь вы узнаете и о том, как работать с базами данных и что такое MySQL.

.

Лекция №17

Вы продолжите знакомство с базами данных и с SQL.

.

Лекция №18

Погружение в JavaScript и front-end разработка –темы восемнадцатой лекции.

.

Лекция №19

В девятнадцатой лекции вы продолжите работать с JavaScript, а также узнаете о том, как компьютерные технологии используются в археологии.

.

Лекция №20

Компьютерная безопасность и то, как работать с паролями, что делать с вредоносным программным обеспечением — все то, о чем вы узнаете из двадцатой лекции. Будет также затронута проблема неприкосновенности личных данных.

.

Лекция №21

Эта видеозапись курса будет об искусственном интеллекте. Вы познакомитесь с Элизой. И это не очередной лектор, знакомство вас удивит и надолго останется в памяти. Обработка естественного языка и распознавание речи, невербальное общение также будут объяснены и обсуждены во время лекции.

.

Лекция №22

В этом видео профессор Йельского университета демонстрирует использование искусственного интеллекта в играх. Вы рассмотрите алгоритмы минимакс, альфа-бета-отсечение, а также разберете игру в крестики-нолики.

.

Лекция №23

В двадцать третьей лекции подводятся итоги курса, в игровой форме повторяются некоторые темы, идет непринужденное общение.

.

Надеемся, что данная статья была Вам полезна!
.

Добавить комментарий

Войти с помощью: 

Ваш адрес email не будет опубликован. Обязательные поля помечены *