Что такое программирование?
- Введение: цели и задачи курса
- Цель: сформировать базу знаний и навыков, достаточную для дальнейшего (в т. ч. самостоятельного) изучения Python и программирования
Задача: освоить подмножество ЯП Python, научиться составлять и реализовывать произвольные алгоритмы
- (1)Начинающий ≠ (3)не способный к программированию ≠ (3) не желающий программировать
- (1) Да, (2) возможно, (3) нет
- Дао
- Лучше не знать, чем не понимать
- Лучше понимать, чего именно не знаешь, чем не знать
- Лучше спросить, чем промолчать
- Лучше понять самому, чем спросить
- Лучше попробовать, чем бездействовать
- Лучше сначала понять, а потом пробовать
- …
- Лучше не знать, чем не понимать
Об операционных системах
- Ядро + программы (приложения)
- Программы = файлы, содержащие машинный код
- Интерфейс запуска программ
- Из проводника
- Из командной строки
- Интерфейс командной строки
Текстовый диалог: команда + ответ
- Совмещение управления и данных в одном окне
- Примеры приложений с интерфейсом командной строки
- Командная оболочка (shell, cmd) — запуск программ
Построчный редактор ed (ужос)
- LFTP
- …
- Python
- …
Вообще REPL
- В наших лекциях:
- Как выглядит подсказка shell
- Как выглядят варианты командной строки Python
- Классичсеский
- в IDLE
- bpython/ipython/… тысячи их
Python как командная строка
REPL как он есть:
- Не бояться пробовать: не взорвётся ничего!
Читать все сообщения: они для вас
- Пользоваться историей
- Встроенная помощь (есть также в HTML)
- [[Арифметические операции
- Особенности целочисленной и плавающей арифметики в Python
- А ещё есть комплексные числа и многое другое
- Подключение математических функций
Цикл редактирования / отладки
- Текстовые редакторы VS текстовые процессоры
- Программа как последовательность команд интерпретатора (сценарий)
- Интерпретация программы, запуск интерпретатора из командной строки
- Запуск интерпретатора из редактора (то же самое!)
- Редактирование - запуск - редактирование - запуск - …
Для компилируемых языков, типа Си, Java, Pascal и т. п.:
Редактирование - компиляция - запуск - редактирование - …
- Текстовые редакторы, ориентированные на программирование
IDE и специализированные системы разработки приложений
- Работа с IDLE
- Бонус (если хватит времени): понятие сценария в Linux
Любой свой файл можно сделать исполняемым (установить атрибут x)
- Файл специального вида в машинных кодах (результат компиляции)
Текстовый файл с указанием, чем его интерпретировать (первая строка вида «#!интерпретатор»
Все остальные файлы считаются командными сценариями (исполняется shell-ом)
Так что же такое программирование? :)
- Постановка задачи
- Формализация задачи
- Моделирование предметов и понятий
- Составление алгоритма
- Формализация алгоритма и моделей на ЯП
1. Редактирование
2. Запуск
1. Редактирование
2. Запуск
- …
На самом деле с любого места можно зайти на цикл!
Д/З
- Запустить python в режиме командной строки, убедиться, что работает
- Написать в текстовом редакторе простейший сценарий, запустить его
Желательно использовать редактор IDLE (я его попробую придерживаться в лекциях)
Попробовать запустить программу с помощью команды python3 имя_файла.py из командной строки