13. CS50 на русском: Лекция #13 [Гарвард, Основы программирования, осень 2015 год]
Доп. материалы и задачи к лекции - javarush.com/s/level_6
Весь курс CS50 - javarush.com/s/course_cs50
13-я лекция Гарвардского курса по основам программирования CS50 (введение в программирование).
В этой лекции мы с вами займемся веб-программированием и познакомимся с интернет-технологиями. Мы перейдем от командных строк в C к программированию на PHP, JavaScript, познакомимся с Html, CSS, SQL и многим другим.
Начинается самое интересное, наслаждайтесь.
Пікірлер: 80
2022, смотрю с первого выпуска, спасибо за перевод, а количество лайков с каждым видео падает, я так полагаю из за того что по началу есть понимание происходящего, а дальше кажется что всё не понятно и прочее, но стоит учесть задачники, они слушают лекцию, а дальше в течение 5 дней могут практиковать навыки, от того и понимают что происходит. Как по мне главное просто смотреть вдумчиво, что то не понятно - ничего страшного. Делать акцент нужно на том что понятно) ещё раз спасибо
@devillefort9283
Жыл бұрын
Отлично подмечено!
@artyomzolotoverkhov8468
Жыл бұрын
я смотрю уже в 2023)))
@wexman-
2 ай бұрын
2024 🎉
Офигенные лекции и подача материала, офигенный перевод. Спасибо большое.
Тайм-коды: хэш-таблицы, trie префиксное дерево, интернет, packet, IP адрес, DHCP, DNS, router, TCP/IP протокол, port, FTP, firewall, VPN, HTTP, запрос, GET, POST 0:00 заставка 3:51 мульт протокол передачи данных 4:49 переход от командных строк в С к программированию в PHP, HTML, CSS, SQL, JavaScript 7:19 Хэш-таблица. Гибрид массива и связного списка. Для хеширования обычно требуется некое среднее количество времени. Получается, на основе вводных данных ( например имени или даты рождения) уже заданы выходные данные. Например, точное число дат рождения от 1 до 31 9:30 trie (префиксное дерево) более сложная организация данных. Каждый узел в трае может быть массивом с размером (например, по числу букв алфавита - 26 -в меру большое число) для поиска по имению. За сколько шагов определяется подходящее место для определённого имени ( сколько букв) - примерно 8. Если имён много ( триллион) одно имя всё также найдётся за эти 8 шагов. Итог - равная затрата времени. Платить приходится памятью - уйма указателей 11:36 идея хеширования 12:00 функция SHA1 (используется например в сфере безопасности) алгоритм криптографического хеширования 16:01 интернет 16:51 каждому компьютеру в сети нужен свой уникальный адрес. Нужен способ указать свой адрес. Когда надо связаться с другим компьютером, первый отправляет сообщение второму и сообщает куда слать ответ. Как получить обратный адрес 17:27 DHCP - сервер. Когда мы включаем компьютер ( или подключаемся к wi-fi) мы сталкиваемся с DHCP - сервером. Протокол динамической конфигурации сетевого узла, который говорит нашему компьютеру - вот твой адрес 18:09 IP адрес Internet Protocol address. Наш адрес - набор цифр. Набор десятичных чисел через точку. Каждое число: 0-255 (8 бит). В IP-адресе 32 бита. 4 млрд IP адресов в мире (2**32) 19:38 4-ая версия IP адресов. 6-ая версия IP адресов (128 бит) 20:35 индивидуальный IP адрес private IP-s 10; 172.16. - 172.31; 192.168 21:47 фильм 22:55 DNS доменское имя. Веб хостинг 24:44 у ДНС сервера есть таблица с 2 (или более столбцами). В 1 из них - имена, 2-ом - IP адреса 26:47 IP - адрес сервера DNS, которым пользуется ваш ноутбук. Сообщает ноуту его IP. DHCP сообщает ему какой DNS-сервер использовать. DNS просто предлагает более понятный людям адрес 28:15 Routers Маршрутизатор. Как данные попадают из одного места в другое 29:39 в памяти роутера таблица. Со столбцами IP-адресов. Если IP начинается с такой-то цифры - данные отправляются туда 36:58 в каком виде передаются данные, может даже без проводов packets 40:45 TCP/IP протокол ( 2 протокола). IP - способ обратиться к компьютеру в интернете, а TCP - протокол - его обычно используют в связи с IP. TCP замечает, если что-то не дошло. Он: если ты что-то не получил, скажи мне, какого фрагмента не хватает, я найду его и пришлю тебе 42:42 ports когда компьютер получает информацию, как он понимает, где (какой программой) её открывать ( в браузере, в чате, в мессенджере ВК или еще где-то). Есть данные ( номер порта) который определяет нужный сервис( есть стандартные) 21 - FTP - протокол передачи файлов (файл, а не имейл) 25 - SMTP - протокол передачи почты (имейл), сервис, который отправляет электронные сообщения. Акронимы POP, IMAP - два метода доступа к электронной почте 53 - DNS 80 - HTTP - сеть 443 - HTTPS сеть с шифровкой 45:39 firewall как работают межсетевые экраны. IP и TCP - для, например, блокировки доступа к чему-то. Например, для этого поменять настройки DNS 51:17 доступ можно перекрывать не только на уровне DNS. firewall может работать еще проще - без изменения сервера DNS. firewall - преграда между нами и внешним миром, может блокировать любой исходящий запрос ( ports 21, 25, 53, 80, 443...). firewall может определить адрес на открываемом сайте и порт 52:00 VPN если есть блокировка. Не запаролен. Нет логинов. VPN - виртуальная частная сеть, которая позволяет устанавливать зашифрованной подключение 54:46 при VPN -шифровании скорость меньше. Серверы Йеля access.yale.edu и Гарварда vpn.harvard.edu 55:33 HTTP - протокол передачи гипертекста (свод принятых стандартов). Компьютер запрашивает у сервера какую-то информацию (двунаправленная операция) сервер отвечает запрашиваемой страницей. Компьютер (клиент) - сервер. Запрос GET (получить). request: GET/HTTP/1.1 Host: www.google.com . Ответ response: HTTP/1.1 200 OK 58:21 Ответы response 59:00 типы содержимого: html, jpg, gif, видео-файлы, аудио-файлы 59:11 status-codes: 200 - ok; переадресация: 301 - moved permanently, 302 - found; 401 - unauthorized; 403 - forbidden (доступ запрещён); 404 - not found (файл не найден); 500 - internal server error (ошибка в коде) 1:00:00 как понять запросы: query strings. GET/search?q=cats HTTP/1.1 Host: www.google.com. Сеть состоит из многих компьютеров, принимающих входные данные. web-серверы принимают входные данные: например, через UPL-адреса. За ? идут пары: ключ=значение&ключ=значение. При GET- запросе - запрос прямо навиду в адресной строке 1:02:31 POST - запрос. Второй способ отправить информацию. request POST/login.php HTTP/1.1 Host: www.facebook.com. email = malan@... = 1234 . При POST запросе данные ниже, не видны 1:04:50 HTTPS - зашифрован 1:04:55 в запросах язык разметки HTML5 .... 1:05:45 CSS язык на следующем уроке
00:00 Вступление. Анонс об оценках для очных студентов. 04:47 Переходим в веб-программированию. 05:30 Повторяем структуры данных. 14:13 Анонсы. 16:01 Веб-программирование. 30:05 Traceroute. 35:30 Видео: кабели, которые переносят наши данные. 36:58 TCP/IP. 55:30 HTTP-запросы. 1:04:55 HTML.
ребята, спасибо большое за работу, делаете хорошее дело. Перевод очень качественный, голос приятный.
Молодцы ,лайк вам за перевод!
Отличная лекция для начинающих,прекрасный перевод.Спасибо.
Спасибо! Жду дальнейший перевод:)
Отличная лекция!)
Спасибо вам JavaRush
Даже не сабы а озвучка! Круто, даже очень!
Спасибо за труд!
Спасибо за перевод!
шикарная лекция)
классный курс, очень интересно рассказывает
Прекрасно!
Спасибо, Молодцы!
Спасибо.
Спасибо
Нормальный курс (хотя по-началу казался хренью). Видно, что за кадром остается многое: уроки, практические занятия, общение с преподавателями и т.д. Что и естественно, ведь каждая лекция - это всего-лишь введение в предстоящее. Так что, если кто-то подумал, что просмотрев курс видеолекций, он получит знания, упс!!! Учиться надо на практике. Записывайтесь на онлайн курс, изучайте, получайте... И помните: Главное - мотивация.
@AsdAsd-yo5xk
7 жыл бұрын
Так точно капитан!
спасибо
ааааа топчег))
40:01 учитесь как раздавать интернет если оператор блокирует раздачу.
спс
Подскажите,как открыть окно терминала(хочу попробывать)? Спасибо)
@Thebarbosss
3 жыл бұрын
Или как сказали выше, или поставить виртуалку и на неё образ какого-нибудь Kali, и вдоволь играться хоть бесконечно. Это займет 15 минут.
А где методичка с заданиями?
#LIKE
тем временем там уже новый курс начался 2016-2017 года. и вот если сравнивать курс 2014 и 2015 годов то разница есть не столько в самом преподавании потому что рассказывают одно и тоже сколько в новых фичах которые облегчают жизнь. Например отдельная ide cs50
@00pingvin00
7 жыл бұрын
кстати да курс 2016 очень даже отличается там на 10 видео уже учат sql, а так же в курсе есть основы pyton, git, библиотек js и многое другое И кстати на том же cs50 tv или на ютуб cs50 канале есть эти видео переведенные на русский но только субтитрами. Зачем студия "верт дайдер" переводит? если можно только озвучить? что будет и дешевле и быстрее.
@NickOnYT
7 жыл бұрын
Субтитры там больше похожи на машинный перевод и что самое плохое, допускают много ошибок в терминологии.
@oOcitizenOo
7 жыл бұрын
можете линку дать на новый курс с питоно-гитами?)
@00pingvin00
7 жыл бұрын
oOcitizenOo как на счет воспользоваться поиском?!
@oOcitizenOo
7 жыл бұрын
00pingvin00 ноу)
в конце видос прикольный)) про хакеров
как найти задачники?
ого уже час
Там Линус Торвальдс пофиксил проблему с wi-fi?)
ПроиSHAствие 🙂
@clst756
2 жыл бұрын
чел ты топ я подписан на тебя скачай каллофдюти мобайл будем вместе играть
@clst756
2 жыл бұрын
чел ты топ я подписан на тебя скачай каллофдюти мобайл будем вместе играть
Где можно взять задачник?
@0xMorgan
5 жыл бұрын
найди курс на edx и зарегайся.
что за задачник?
с каждыйм видео все меньше народу, пророчу что за неделю 6к не наберет
@user-vv3ue7rg8h
7 жыл бұрын
Я тебе скажу что так всегда проиходит,многие хотят стать прогерами,думают легко,а потом сдуваются и покида.т эту сферу
@RealBitumok
7 жыл бұрын
Я, например, не смотрю с ютуба, а качаю на комп или планшет. В этом случае, просмотр, наверное, не засчитывается.
@user-vv3ue7rg8h
7 жыл бұрын
+RealBitumok врядли)
37:44 мне показалось что его зовут Голум =)
Что же они парня обрезают диджея (
@JavaRushVideo
7 жыл бұрын
Tre Диджей использует музыку защищенную авторским правом, поэтому эту часть приходится вырезать. Но этот никак не влияет на саму лекцию)
что та зал в Гарварде пустоват.Наверное все побежали на экономистов или юристов учиться.
@heartborne123
7 жыл бұрын
лекции прогуливают
@mRelby13
7 жыл бұрын
эмм... ну как бы эта лекция проходила в Йеле, а не Гарварде.
@_Smith_and_Wesson_
3 жыл бұрын
Денег просто не хватает чтобы поступить)
у меня такое чувство что я был бы самым лучшим учеником Гарварда....
@user-ks6mg1of3z
5 жыл бұрын
у меня тоже
Учить низкоуровневой работе с памятью и указателями, чтоб потом писать на html и css. Забавно
@NickOnYT
7 жыл бұрын
"Computer Science"
@kalobyte
7 жыл бұрын
вся суть быдловузов такое в пту надо давать, о чем я уже и писал каком-то каменте к этим роликам сам учился в платном пту и халявном быдловузе гермашки, могу сравнить
@kalobyte
5 жыл бұрын
Qwerty а зачем гуманитариям все это? это все равно как если бы я занимался ит и мне бы рассказывали историю или экономику
@kalobyte
5 жыл бұрын
Qwerty чтобы работать в ит - надо еще со школы этим УЖЕ заниматься, а не интересоваться, когда уже люди дипломы пишут
@kalobyte
5 жыл бұрын
Qwerty а что ты делал в школе? я думал люди еще до школы знают, кем хотят быть я кем хотел - тем и стал в 17 лет, потом дальше пошел, а компутер у меня с 12 лет был, хотят огдашние школьники его только в американских фильмах видели кто "входит в ит", то 95% это просто те, кому мамка сказала идти на программиста, потому что им много платят так было с юристами в 90х и можеш видеть сейчас этих юристов за кассами
бла-бла-бла создать проверку орфографии
скучно, потому что все уже знаю :(
Перевод великолепный. В самих курсах много воды, болтовни, хороводов с табличками, дебильные мультики итп
@vindastris4982
4 жыл бұрын
Есть курс в котором нет воды? Вот и я не вижу альтернатив. А так первые мысли тоже были таковыми, мультики и песенки, одним словом бредятина, которая отнимает время.
Не очень понимаю зачем переходить от высокого уровня С++ до ... HTML, CSS? Да и зачем начинающим прогерам разбираться в маршрутизации? К чему вообще на веб переходить ...
@user-vf5hw8nx5l
7 жыл бұрын
LiguidCool это общий курс компьютерных наук с применением языка си :)
@olegperov6395
7 жыл бұрын
Потому что в итоге они планируют писать веб -сервер, и начали с самого низкого уровня, весьма прискорбно было бы его писать не имея понятия о html,css,js php и маршрутизации. Потому что веб униварсален, пишешь одно приложение и оно работает на любых платформах.
@eugeneborovoy7713
7 жыл бұрын
malloc хотя это C