- •Математические операции.
- •Сложение, Вычитание, Умножение, Деление
- •Возведение в степень
- •Скалярные типы данных.
- •С оставные типы данных.
- •Операторы if/elif/else, for, while, in, for/else.
- •Последовательности и функции работы с ними.
- •Булевый тип данных.
- •Множества и функции работы с ними.
- •Отображения (словари) и функции работы с ними.
- •Строки и операции над строками.
- •5) S[start:top:step] (Срез)
- •Примеры использования функций форматного ввода-вывода (f, format, %).
- •Функции.
- •Управление памятью.
- •Виртуальная среда и менеджер пакетов.
- •Открытие и закрытие файлов.
- •Понятия ооп: класс, объект, наследование, переменные класса. Ооп по алан кей
- •Три вида наследования.
- •Переменные класса
- •Метод __init__, понятие self.
- •Протокол итерации.
- •Ctypes: пример использования.
- •Виды интерфейсов.
- •Графический интерфейс: ui/ux, этапы построения интерфейсов, золотое сечение.
- •Основы библиотеки tkinter.
- •Преимущества статического анализа кода
- •Недостатки статического анализа кода
- •Методы обеспечения качества по. Основные методы обеспечения качества по
- •Основы библиотеки pytest.
- •Алгоритмы поиска.
- •Прямой поиск (o(n))
- •Бинарный поиск (o(log n))
- •Алгоритмы сортировки.
- •Пузырьковая
- •Сортировка слиянием
Метод __init__, понятие self.
В Python начальные данные про объект указываются в методе __init__. Метод __init__ выполняется после того как Python создал новый экземпляр и, при этом, методу __init__ передаются аргументы с которыми был создан экземпляр. Важной особенностью метода __init__ является то, что он не должен ничего возвращать. Python сгенерирует исключение, если попытаться это сделать. Self используется для представления экземпляра класса. Благодаря ему можно получить доступ к атрибутам и методам своего класса.
Протокол итерации.
Итерируемый объект (iterable) - это объект, который способен возвращать элементы по одному. Для Python это любой объект, у которого есть метод __iter__ или метод __getitem__.
Если у объекта есть метод __iter__, итерируемый объект превращается в итератор вызовом iter(name), где name - имя итерируемого объекта. Если метода __iter__ нет, Python перебирает элементы используя __getitem__.
Варианты взаимодействия с C++.
ctypes - встроенная в стандартную поставку библиотека:
Представляет собой совместимые с языком C типы данных и позволяет вызывать функции в библиотеках DLL или совместно используемых библиотеках.
Модуль можно использовать для обертывания этих библиотек на чистом Python.
Можно подключать любую уже скомпилированную библиотеку языка C
В коде Python нужно описывать, что C-функции возвращают и принимают в качестве аргументов.
Библиотека pybind11.
Разработана специально для работы с C++.
Установка: pip3 install pybind11
C API для создания модуля.
Библиотека cffi.
Использование cffi:
Только С
CFFI генерирует поверх нужной библиотеки свою обвязку и компилирует её в библиотеку, с которой затем работает.
Установка: pip3 install cffi
Плюсы:
простой синтаксис при использовании в Python
не нужно перекомпилировать исходную библиотеку
Минусы:
не удобная сборка, нужно прописывать пути до всех заголовочных файлов и библиотек
создается еще 1-на динамическая библиотека, которая использует исходную
не поддерживает некоторые директивы
Ctypes: пример использования.
Виды интерфейсов.
-Командный:
1. Взаимодействие с ЭВМ посредством командной строки, в которую вводятся команды
определённого формата, а затем передаются к исполнению.
2. Самый эффективный и быстрый способ
-Графический:
1. Более понятный для пользователя
2. Общность интерфейса программ
3. Диалог – двусторонний обмен информацией между пользователем и персональным
компьютером (меню, команда, естественный язык)
-SILK-интерфейс:
1. Speech, Image, Language, Knowledge – речь, образ, язык, знание
2. Ввод голосом – самый быстрый способ
-Биометрическая технология:
1. Радужная оболочка глаза, отпечатки пальцев, распознавание голоса применяется для
аутентификации
-Процедурно-ориентированные интерфейсы:
1. Пиктограммы представляют приложение, окна или операции
2. Содержание папок или справочников отражается с помощью таблицы-списка
Графический интерфейс: ui/ux, этапы построения интерфейсов, золотое сечение.
UX (User Experience) - опыт/впечатление получает пользователь от работы с вашим интерфейсом. Удаётся ли ему достичь цели и на сколько просто или сложно это сделать. (структуризация, простота, обратная связь, толерантность, повторное использование)
UI (User Interface) — как выглядит интерфейс и то, какие физические характеристики приобретает. Определяет, какого цвета будет ваше «изделие», удобно ли будет человеку попадать пальцем в кнопки, читабельным ли будет текст и тому подобное (пиктограммы, содержание папок с помощью таблицы-списка, цвета, шрифты)
Этапы создания интерфейса:
• Исследование (сбор информации, аналоги, статистика текущего интерфейса, устройства ЦА)
• Пользовательские сценарии (список задач пользователей, списки шагов решения задач)
• Структура интерфейса (количество экранов из списка шагов)
• Прототипирование интерфейса (черновой и финальный)
• Определение стилистики (мудборды)
• Дизайн концепция (1-3 экрана интерфейса на нескольких устройствах)
• Оформление всех экранов
• Анимация интерфейса
• Тестирование
Золотое сечение
• Весь отрезок относится к большей его части так, как большая часть, относится к меньшей.
• ширина 900px делим на 1.62, получаем ~ 555 px, это блока с контентом.
• От 900 отнимаем 555, получаем 345 px. Это ширина меньшей части