331

Гарвардский курс CS50 на русском: четырнадцатая лекция

Привет, Пикабу! Мы продолжаем публиковать лекции легендарного Гарвардского курса CS50, которые мы переводим и озвучиваем специально для JavaRush.

Представляем новую, 14-ю серию. Напомним, что всего в курсе 24 лекции, постепенно мы переведём все.


Список переведённых лекций:


1-я лекция: http://pikabu.ru/story/osnovyi_programmirovaniya_lektsiya_0_...
Вступительная серия цикла знакомит зрителей с общими понятиями языков программирования, а также с командой преподавателей и системой предстоящих занятий.


2-я лекция: http://pikabu.ru/story/garvardskiy_kurs_cs50_na_russkom_vtor...

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


3-я лекция: http://pikabu.ru/story/garvardskiy_kurs_cs50_na_russkom_tret...

Третья серия цикла знакомит зрителей с понятием и функциями компилирования и рассказывает, каким образом в программах появляются баги (начиная с самого первого «компьютерного жучка»), как их распознать и чем они могут быть вызваны.


4-я лекция: http://pikabu.ru/story/garvardskiy_kurs_cs50_na_russkom_chet...

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


5-я лекция: http://pikabu.ru/story/garvardskiy_kurs_cs50_na_russkom_pyat...

Пятая серия цикла продолжает знакомить зрителей с багами, раскрывает понятие структуры программы, объясняет, зачем нужны функции внутри кода, в чём важность области действия значений, и вводит функцию strlen. Также из неё вы узнаете, как в CS50 борются с любителями списывать, и научитесь экономить оперативную память компьютера во избежание ошибки сегментации.


6-я лекция: http://pikabu.ru/story/garvardskiy_kurs_cs50_na_russkom_shes...

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


7-я лекция: http://pikabu.ru/story/garvardskiy_kurs_cs50_na_russkom_sedm...

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


8-я лекция: http://pikabu.ru/story/garvardskiy_kurs_cs50_na_russkom_vosm...

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


9-я лекция: http://pikabu.ru/story/garvardskiy_kurs_cs50_na_russkom_devy...

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


10-я лекция: http://pikabu.ru/story/garvardskiy_kurs_cs50_na_russkom_desy...

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


11-я лекция: http://pikabu.ru/story/garvardskiy_kurs_cs50_na_russkom_odin...

Одиннадцатая серия цикла продолжает изучение указателей, разбирает структуру функций библиотеки CS50, знакомит зрителей с утечкой памяти, вводит понятие linked list и других структур данных с детальной демонстрацией.


12-я лекция: http://pikabu.ru/story/garvardskiy_kurs_cs50_na_russkom_dven...

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


13-я лекция: http://pikabu.ru/story/garvardskiy_kurs_cs50_na_russkom_trin...

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


Подробнее о CS50


На кого рассчитан курс?


Если вы — новичок, пройдите CS50. Если кто-то из ваших знакомых приглядывается к ИТ и программированию, советуйте CS50 не глядя. Я серьезно.


CS50 подойдет любому человеку, кто решил стать «айтишником». Пожалуй, его можно рекомендовать и способным 12-летним, и умудренным опытом «перебежчикам» из других профессий. Идеально — старшеклассникам и студентам.


Курс очень прогрессивный и обновляется из года в год. При этом в отличие от большинства подобных университетских обучающих программ (например, MIT 6.00X) от слушателя не требуются знания университетской математики, достаточно школьного уровня.


Что изучают на CS50?


— Основы компьютерных наук и программирования. Системы счисления, работа с командной строкой в Linux, циклы, условные переходы и прочие радости;


— Концепции алгоритмов и алгоритмичности мышления. Вы узнаете о том, какие задачи можно решать с помощью программирования и каким образом. О бинарном поиске, простом по сути, но очень эффективном и требующем тщательности в реализации, Дэвид Малан расскажет сходу, прямо на нулевой лекции. И попробуйте потом забыть сцену с разрывом телефонного справочника, а вместе с ней — и полученные знания! Вообще, курс охватывает все основные алгоритмы, которые нужно знать и понимать «айтишникам»;


— Концепции абстракции, структуры данных, инкапсуляции, управления памятью. Основы компьютерной безопасности. Процесс разработки ПО и веб-разработка;


— Основы языка программирования C и визуального языка Scratch. Собственно, все основные примеры и задания студенты делают на языке C;


— Основы баз данных и SQL;


— Веб-разработка: основы CSS, HTML, JavaScript и PHP. Естественно, только самые азы;


— Основы подготовки презентации проектов по программированию.


Поддержите нас плюсом и подписывайтесь на нас и сообщество «Наука».  

Наука | Научпоп

9.1K постов82.4K подписчика

Правила сообщества

Основные условия публикации

- Посты должны иметь отношение к науке, актуальным открытиям или жизни научного сообщества и содержать ссылки на авторитетный источник.

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

- Научные статьи должны сопровождаться описанием исследования, доступным на популярном уровне. Слишком профессиональный материал может быть отклонён.

- Видеоматериалы должны иметь описание.

- Названия должны отражать суть исследования.

- Если пост содержит материал, оригинал которого написан или снят на иностранном языке, русская версия должна содержать все основные положения.


- Посты-ответы также должны самостоятельно (без привязки к оригинальному посту) удовлетворять всем вышеперечисленным условиям.

Не принимаются к публикации

- Точные или урезанные копии журнальных и газетных статей. Посты о последних достижениях науки должны содержать ваш разъясняющий комментарий или представлять обзоры нескольких статей.

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

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


Наказывается баном

- Оскорбления, выраженные лично пользователю или категории пользователей.

- Попытки использовать сообщество для рекламы.

- Фальсификация фактов.

- Многократные попытки публикации материалов, не удовлетворяющих правилам.

- Троллинг, флейм.

- Нарушение правил сайта в целом.


Окончательное решение по соответствию поста или комментария правилам принимается модерацией сообщества. Просьбы о разбане и жалобы на модерацию принимает администратор сообщества. Жалобы на администратора принимает @SupportComunity и общество Пикабу.