График защиты курсовой 4 семестр

Дни защиты курсовых работ:

8 мая - Поселеннов Илья - защитил
15 мая - Тушин Илья, Александровский Артем (Во время пары)
19 мая - Уржунцев Юрий, Сафонов Алексей (Защита в 12 часов)

Подробнее о курсовой "для девочек" (так спросили в WhatsApp)

Для популяризации нашего образовательного направления профессиональной подготовки 38.03(04).05 Бизнес-информатика мы открыли два новых он-лайн проекта:

Читать далее «Подробнее о курсовой "для девочек" (так спросили в WhatsApp)»

План перевода для студентов в феврале 2020

Python REST APIs With Flask, Connexion, and SQLAlchemy

  1. Python REST APIs With Flask, Connexion, and SQLAlchemy‑Part 1

    Если вы писали web‑приложения, то, наверняка знаете, как сделать HTTP‑запрос на сервер (программное обеспечение) для получения данных и заполнения динамических частей своего приложения.

    Цель этой статьи — показать, как использовать Python 3, Flask и Connexion для создания полезных API REST, которые могут включать проверку ввода и вывода. В качестве бонуса — ссылка на документацию Swagger. Кроме того, мы создадим простое, но полезное одностраничное web‑приложение, которое продемонстрирует возможности API с JavaScript при обновлении Document Object Model — DOM.

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

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

  2. Python REST APIs With Flask, Connexion, and SQLAlchemy‑Part 2

    В первой части этой серии вы использовали Flask и Connexion для создания REST API, обеспечивающего операции CRUD для простой структуры в памяти, называемой PEOPLE. Это помогло продемонстрировать, как модуль Connexion помогает вам создавать хороший REST API вместе с интерактивной документацией.

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

    SQLAlchemy предоставляет объектно-реляционную модель (ORM), которая хранит объекты Python для представления данных объекта в базе данных. Это может помочь вам продолжать мыслить на Pythonic и не беспокоиться о том, как данные объекта будут представлены в базе данных.

    Marshmallow обеспечивает функциональность для сериализации и десериализации объектов Python по мере их поступления в наш REST API на основе JSON. Marshmallow преобразует экземпляры класса Python в объекты, которые можно преобразовать в JSON.

  3. Python REST APIs With Flask, Connexion, and SQLAlchemy‑Part 3

    Во второй части этой серии вы добавили возможность сохранять изменения, сделанные с помощью API REST, в базу данных с помощью SQLAlchemy и узнали, как сериализовать эти данные для API REST с помощью Marshmallow. Соединение REST API с базой данных, чтобы приложение могло вносить изменения в существующие данные и создавать новые, прекрасно и делает приложение намного более полезным и надежным.

    Однако это только часть возможностей, предоставляемых базой данных. Еще более мощная особенность — это часть R систем СУБД: отношения. В базе данных отношения — это способность соединять две или более таблицы осмысленным образом. В этой статье вы узнаете, как реализовать отношения и превратить свою базу данных Person в веб-приложение для мини-блогов.

  4. Python REST APIs With Flask, Connexion, and SQLAlchemy‑Part 4

    В третьей части этой серии вы добавили связи к REST API и к базе данных, которая его поддерживает. Это дало вам мощный инструмент, который вы можете использовать для создания интересных программ, которые отправляют постоянные данные, а также отношения между этими данными в систему базы данных. Наличие REST API дает вам возможность создать одностраничное приложение (SPA) с HTML, CSS и JavaScript. Это хорошая отправная точка перед переходом к более мощным интерфейсным фреймворкам, таким как Angular или React.

Пример скрипта с новым плагином:

def read_one(person_id):
    """
    This function responds to a request for /api/people/{person_id}
    with one matching person from people

    :param person_id:   ID of person to find
    :return:            person matching ID
    """
    # Get the person requested
    person = Person.query \
        .filter(Person.person_id == person_id) \
        .one_or_none()

    # Did we find a person?
    if person is not None:

        # Serialize the data for the response
        person_schema = PersonSchema()
        return person_schema.dump(person).data

    # Otherwise, nope, didn't find that person
    else:
        abort(404, 'Person not found for Id: {person_id}'.format(person_id=person_id))

Первый этап научной работы

Список распределений Фреймворков Python для разработки Web-Приложений.

Django - Сверчков Яков;
TurboGears - Мартын-Назаров Кирилл;
Tornado - Уржунцев Юрий;
Web2py - Еловсков Лев;
Zope - Тушин Илья;
Grok - Спиридонова Надежда;
CherryPy - Черняк Екатерина;
Flask - Александровский Артём;
Quixote - Белайчук Денис;
Bottle - Свистунов-Рейвах Филипп;
Sanic - Абдрахманов Руслан;
Pyramid - Ворончихина Евгения;
Dash - Поселеннов Илья;
CubicWeb - Поселеннов Илья;
Divmod Nevow - Салихов Эльдар;
BlueBream - Швырков Михаил;
Giotto - Мартын-Назаров Кирилл;
Pylon - Чумакова Оксана;
Falcon - Сурин Данил;
Bobo - Салихов Эльдар;
Web.py - Артюшкина Надежда;
Muffin - Копытов Дмитрий;
Ray - Сафонов Алексей;
Vibora - Баталова Регина;
WebCore - Волков Егор;
Bokeh - Гайфулина Кристина;

Методические указания к самостоятельной работе по курсу "Технологии разработки Web‑приложений"

Веб‑приложение состоит из двух частей: клиентской и серверной. Клиентская часть — это, в основном, HTML, CSS и Javascript и рассматривается она, как способ представления информации пользователям. Серверная часть, как правило, является наиболее сложной и описывает всю бизнес-логику приложения. Веб‑разработку серверной части можно выполнить на многих языках, таких как Java, .Net, PHP, Ruby on Rails, Javascript и т. д. Сегодня Python с его веб‑фреймворками также служит основой серверной части приложений.
Читать далее «Методические указания к самостоятельной работе по курсу "Технологии разработки Web‑приложений"»

Олимпиада "Прометей" по информатике

Отборочный тур Олимпиады «Прометей» по дисциплине «Информатика» проводится в институтах и высших школах с ноября 2019 г. по 18 февраля 2020 г.

Отборочный тур проводится на практических занятиях в течение одной пары для студентов 1 и 2 курсов обязательно, для студентов старших курсов – по усмотрению преподавателя. Использование калькуляторов, сотовых телефонов и любой справочной литературы запрещено.
Читать далее «Олимпиада "Прометей" по информатике»