User Tools

Site Tools


mag:ds2

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revisionPrevious revision
Next revision
Previous revision
mag:ds2 [2024/04/17 19:51] eugeneaimag:ds2 [2024/04/17 20:44] (current) eugeneai
Line 1: Line 1:
-  -  +====== Распределенные системы ====== 
-  -  +===== Лекционный материал ===== 
-  - + 
 +Идея курса рассмотреть процесс перехода от сложной программной системы к простой за счет использования компонентного подхода, затем, к распределенной. Первый переход позволяет реорганизовать систему, сделать подсистемы слабосвязанными, стандартизировать взаимодействие. Второй переход - "ассимиляция" новых ресурсов, как памяти, так и вычислительных. 
 + 
 +  - [[https://www.youtube.com/watch?v=KF8uVqd8nTU&list=PLDmve33tqgovKgP1t5m5Oi7uawof1VSmZ&index=7&ab_channel=%D0%95%D0%B2%D0%B3%D0%B5%D0%BD%D0%B8%D0%B9%D0%A7%D0%B5%D1%80%D0%BA%D0%B0%D1%88%D0%B8%D0%BD|Современные подходы к реализации сложных систем (доклад на семинаре)]] 
 +  - [[https://youtu.be/IRM4gWdwWWE|Компонентное проектирование на примере Zope: Интерфейсы, Адаптеры]]
   - [[https://www.youtube.com/watch?v=hwBbitCVHyM&list=PLDmve33tqgovKgP1t5m5Oi7uawof1VSmZ&index=2&ab_channel=%D0%95%D0%B2%D0%B3%D0%B5%D0%BD%D0%B8%D0%B9%D0%A7%D0%B5%D1%80%D0%BA%D0%B0%D1%88%D0%B8%D0%BD|Zope, адаптеры, мультиадаптеры (2023)]]   - [[https://www.youtube.com/watch?v=hwBbitCVHyM&list=PLDmve33tqgovKgP1t5m5Oi7uawof1VSmZ&index=2&ab_channel=%D0%95%D0%B2%D0%B3%D0%B5%D0%BD%D0%B8%D0%B9%D0%A7%D0%B5%D1%80%D0%BA%D0%B0%D1%88%D0%B8%D0%BD|Zope, адаптеры, мультиадаптеры (2023)]]
   - [[https://www.youtube.com/watch?v=FY-Hm61j31Y&list=PLDmve33tqgovKgP1t5m5Oi7uawof1VSmZ&index=2&ab_channel=%D0%95%D0%B2%D0%B3%D0%B5%D0%BD%D0%B8%D0%B9%D0%A7%D0%B5%D1%80%D0%BA%D0%B0%D1%88%D0%B8%D0%BD|Zope, Подписчики (2023)]]   - [[https://www.youtube.com/watch?v=FY-Hm61j31Y&list=PLDmve33tqgovKgP1t5m5Oi7uawof1VSmZ&index=2&ab_channel=%D0%95%D0%B2%D0%B3%D0%B5%D0%BD%D0%B8%D0%B9%D0%A7%D0%B5%D1%80%D0%BA%D0%B0%D1%88%D0%B8%D0%BD|Zope, Подписчики (2023)]]
 +  - [[https://www.youtube.com/watch?v=VYbgzzSPmQ8&list=PLDmve33tqgovKgP1t5m5Oi7uawof1VSmZ&index=3&t=76s&ab_channel=%D0%95%D0%B2%D0%B3%D0%B5%D0%BD%D0%B8%D0%B9%D0%A7%D0%B5%D1%80%D0%BA%D0%B0%D1%88%D0%B8%D0%BD|Введение в REST-архитектуру]]
 +  - [[https://www.youtube.com/watch?v=ebRYs_1MsbQ&list=PLDmve33tqgovKgP1t5m5Oi7uawof1VSmZ&index=5&t=12s&ab_channel=%D0%95%D0%B2%D0%B3%D0%B5%D0%BD%D0%B8%D0%B9%D0%A7%D0%B5%D1%80%D0%BA%D0%B0%D1%88%D0%B8%D0%BD|Продолжение REST, реализация]]
 +  - [[https://www.youtube.com/watch?v=QUOwCP7snGo&list=PLDmve33tqgovKgP1t5m5Oi7uawof1VSmZ&index=5&ab_channel=%D0%95%D0%B2%D0%B3%D0%B5%D0%BD%D0%B8%D0%B9%D0%A7%D0%B5%D1%80%D0%BA%D0%B0%D1%88%D0%B8%D0%BD|REST, реализация клиента]]
 +  - [[https://www.youtube.com/watch?v=s1vmVWCKefM&list=PLF-NY6ldwAWqjBkanP1Tl50kDpIYXJBna&index=1&ab_channel=DjangoSchool%7C%D0%9E%D0%BC%D0%B5%D0%BB%D1%8C%D1%87%D0%B5%D0%BD%D0%BA%D0%BE%D0%9C%D0%B8%D1%85%D0%B0%D0%B8%D0%BB|Менеджер задач Celery. Введение. Обзор использованных технологий]]
 +  - Задача - разработать proxy-адаптер при помощи REST.
 +  - [[https://www.youtube.com/watch?v=9RTZP16rvkQ&list=PLF-NY6ldwAWqjBkanP1Tl50kDpIYXJBna&index=3&t=158s&ab_channel=DjangoSchool%7C%D0%9E%D0%BC%D0%B5%D0%BB%D1%8C%D1%87%D0%B5%D0%BD%D0%BA%D0%BE%D0%9C%D0%B8%D1%85%D0%B0%D0%B8%D0%BB|Celery: настройка системы, создание задачи, конфигурация на запуск различными способами]]
 +  - [[https://www.youtube.com/watch?v=BuK6jxqsvOE&list=PLF-NY6ldwAWqjBkanP1Tl50kDpIYXJBna&index=3&ab_channel=DjangoSchool%7C%D0%9E%D0%BC%D0%B5%D0%BB%D1%8C%D1%87%D0%B5%D0%BD%D0%BA%D0%BE%D0%9C%D0%B8%D1%85%D0%B0%D0%B8%D0%BB|Настройка утилиты Flower. Сцепленные задачи и т.п.]]
 +
 +===== Лабораторные работы =====
 +
 +Перечень заданий
 +
 +  - Реализовать две компоненты, адаптер интерфейса одной к другой, контейнер (компоненту, по примеру из лекций).
 +  - Реализовать прокси-адаптер для интерфейса компоненты, хранимой в контейнере.
 +  - В контейнере организовать "длительную обработку" хранимых компонент.
 +
 +Варианты систем программирования
 +
 +  - Python / Zope (ZTK, не путать с Zope2!)
 +  - C#
 +  - COM/DCOM + OLE2 
 +  - Java EJB
 +  - Java Spring framework (Тут не совсем компонентная архитектура, но можно остаться в рамках plug-in-интерфейсов)
 +  - Logtalk с использованием композиционного проектирования
 +  - Разработайте свой аналог для любимого языка программирования (были попытки для JavaScript)
 +
 +Если будете использовать тестирование - респект и уважуха!
 +
 +И
 +
 +Если есть возможность совместить с другими задачами (по другим предметам, например, Семантический Веб) - уважуха вдвойне.
 +
 +
 +
 +
mag/ds2.1713354700.txt.gz · Last modified: 2024/04/17 19:51 by eugeneai