Структура и интерпретация на компютърни програми - безплатен курс от Hexlet, обучение 9 часа, дата 27 ноември 2023 г.
разни / / November 28, 2023
- 17 урока (видео и/или текст)
- 4 упражнения в симулатора
- Допълнителни материали
- Помощ в "Дискусии"
Какво ще научите
- Работа с езика за програмиране Scheme (Lisp).
- Създавайте абстракции
- Внедрете най-голям общ делител, тестване за простота и други алгоритми
- Правете рекурсивни изчисления
Ще научите повече за примитивните изрази, комбинации и абстракции, процедури и абстракциите, които генерират. В резултат на това ще научите как да прилагате алгоритми за намиране на най-голям общ делител и проверка за първичност, изграждайте процедури с помощта на Lambda, правете рекурсивни изчисления и намирайте корена с помощта на метод Нютон. Този курс е полезен, ако искате да придобиете по-задълбочено разбиране на основите на програмирането. Знанията от този курс помагат на разработчиците да развият уменията си за програмиране. Този курс е подходящ както за опитни разработчици, така и за тези, които тепърва започват да учат програмиране. За да го издържите са необходими само знания по математика и програмиране от училищната програма.
SIKP: Какво е компютърна наука?
Запознайте се с понятието информатика.
SIKP: Примитивни изрази, комбинация и абстракция
Запознайте се с езика Lisp, разгледайте примитивни изрази, комбинации, процедури и абстракции.
SIKP: Процедурите като абстракции
Помислете за важен подход към програмирането: процедурите като абстракции.
SICP: Процедури и процеси, генерирани от тях 1
Преглед на процедури и процеси, линейна рекурсия и итерация.
SICP: Процедури и процеси, генерирани от тях 2
Преглед на процедури и процеси, линейна рекурсия и итерация.
SIKP: Дървовидна рекурсия
Като пример за дървовидна рекурсия, помислете за изчисляване на поредица от числа на Фибоначи, в която всяко число е сбор от предходните две.
SIKP: Поръчки на растеж
Запознайте се с концепцията за ред на нарастване, която дава обща оценка на ресурсите, необходими на даден процес, когато входните му данни се увеличават.
SIKP: степенуване
Обмислете проблема с повишаването на число на степен, за да разберете по-добре редовете на нарастване
GICP: Най-голям общ делител
Помислете за алгоритъм за намиране на най-големия общ делител и го приложете на езика за програмиране Scheme (LISP).
SICP: Тест за простота
Приложете алгоритъм за проверка на число за първичност в езика за програмиране Scheme (LISP).
SICP: Процедури като аргументи
Помислете за важна характеристика на езика: способността да предавате процедура като аргумент на друга процедура.
SIKP: Процедури за изграждане с помощта на ламбда
Научете се да създавате процедури в движение с помощта на ламбда.
SICP: Създаване на локални променливи
Научете се да създавате локални променливи в процедурите.
SICP: Метод на половин разделяне
Помислете за прилагане на метода на половин интервал, прост, но мощен начин за намиране на корените на уравнението f(x) = 0, където f е непрекъсната функция.
SIKP: Намиране на фиксирани точки на функции
Помислете за намиране на фиксирани точки на функции. Число x се нарича неподвижна точка на функция f, ако удовлетворява уравнението f (x) = x.
SIKP: Процедури като връщани стойности
Постигнете още по-голяма изразителна сила чрез създаване на процедури, чиито връщани стойности сами по себе си са процедури.
SICP: Метод на Нютон
Разгледайте и приложете общия случай на намиране на корен по метода на Нютон.
Допълнителни материали
Статии и видеоклипове, курирани от екипа на Hexlet. Ще ви помогне да се потопите по-дълбоко в темата на курса