Slide 1

Slide 1 text

1 Евгений Ильин Создание desktop-приложений на Python

Slide 2

Slide 2 text

2 План доклада 1. OutWiker. Пример desktop-приложения на Python. 2. Создание графического интерфейса. 3. Сборка. 4. Используемые библиотеки.

Slide 3

Slide 3 text

3 OutWiker Пример desktop-приложения на Python

Slide 4

Slide 4 text

4 Внешний вид OutWiker. Режим просмотра

Slide 5

Slide 5 text

5 Внешний вид OutWiker. Режим викинотации

Slide 6

Slide 6 text

6 Особенности OutWiker ● Каждая заметка — это папка в файловой системе. ● Возможность прикреплять файлы к заметкам. ● Расширение возможностей с помощью плагинов. ● Использование викинотации, HTML или Markdown. ● Проверка орфографии одновременно для нескольких языков. ● Поддержка тем оформления страниц. ● Кроссплатформенность (Windows, Linux). ● Многоязычность. ● Полностью написан на Python. ● ...

Slide 7

Slide 7 text

7 Особенности OutWiker. Стили, раскраска исходников и формулы

Slide 8

Slide 8 text

8 Почему Python? ● Хорошая переносимость между платформами. ● Легкость создания движка для плагинов. ● Легкость расширения API для плагинов.

Slide 9

Slide 9 text

9 Создание графического интерфейса

Slide 10

Slide 10 text

10 Библиотеки для создания пользовательского интерфейса Tkinter (Tcl/Tk) wxPython (wxWidgets) PyGTK (GTK+) PyQt, PySide, PySide2 (Qt)

Slide 11

Slide 11 text

11 Преимущества wxPython • «Родной» внешний вид приложений в разных операционных системах. • Сравнительно небольшой размер. • Большое количество встроенных компонентов. • Легко создаются запускаемые файлы с помощью cx_Freeze или аналогов.

Slide 12

Slide 12 text

12 wxPython. Примеры из документации

Slide 13

Slide 13 text

13 wxPython. Примеры из документации

Slide 14

Slide 14 text

14 wxPython. Примеры из документации

Slide 15

Slide 15 text

15 Недостатки wxPython • Медленное (но не прекращающееся) развитие. • Версия с поддержкой Python 3.x находится в стадии альфа-версии. • Нет в PyPi. • В репозиториях Ubuntu чехарда с версиями. • Нет нормального визуального редактора интерфейсов.

Slide 16

Slide 16 text

16 wxGlade. Редактор интерфейса http://wxglade.sourceforge.net/

Slide 17

Slide 17 text

17 wxGlade. Редактор интерфейса http://wxglade.sourceforge.net/ ● Последняя версия от 5 марта 2016. ● Исходники в репозитории активно обновляются.

Slide 18

Slide 18 text

18 wxFormBuilder. Редактор интерфейса

Slide 19

Slide 19 text

19 wxFormBuilder. Редактор интерфейса https://github.com/wxFormBuilder/wxFormBuilder ● Последняя бета-версия от 6 июня 2014 г. ● Исходники в репозитории активно обновляются.

Slide 20

Slide 20 text

20 OutWiker

Slide 21

Slide 21 text

21 Сборка

Slide 22

Slide 22 text

22 Создание приложений для пользователей cx_Freeze / pyInstaller / py2exe

Slide 23

Slide 23 text

23 Файлы скомпилированного приложения

Slide 24

Slide 24 text

24 Файлы внутри library.zip

Slide 25

Slide 25 text

25 Сравнение библиотек для сборки Библиотека Поддерживаемые версии Python Дата последней версии cx_Freeze 2.7 — 3.6 20.05.2017 pyInstaller 2.7 — 3.5 15.01.2017 py2exe 2.7 — 3.4 21.10.2014

Slide 26

Slide 26 text

31 Другие используемые в OutWiker библиотеки

Slide 27

Slide 27 text

32 Другие используемые в OutWiker библиотеки pyparsing — создание парсера викинотации. http://pyparsing.wikispaces.com/

Slide 28

Slide 28 text

33 Другие используемые в OutWiker библиотеки pyenchant — проверка орфографии. http://pythonhosted.org/pyenchant/

Slide 29

Slide 29 text

34 Другие используемые в OutWiker библиотеки pillow — работа с изображениями.

Slide 30

Slide 30 text

35 Другие используемые в OutWiker библиотеки comtypes — создание COM-объектов для использования движка IE под Windows.

Slide 31

Slide 31 text

36 Другие используемые в OutWiker библиотеки chardet — определение кодировки текста.

Slide 32

Slide 32 text

37 Другие используемые в OutWiker библиотеки beautifulsoup — парсер HTML. https://www.crummy.com/software/BeautifulSoup

Slide 33

Slide 33 text

38 Другие используемые в OutWiker библиотеки pygments — раскраска исходников. http://pygments.org/

Slide 34

Slide 34 text

39 Другие используемые в OutWiker библиотеки jinja2 — создание шаблонного текста. http://jinja.pocoo.org/

Slide 35

Slide 35 text

42 Контакты и ссылки E-mail: [email protected] Сайт: http://jenyay.net Github: https://github.com/Jenyay OutWiker Страница программы: http://jenyay.net/Soft/Outwiker Бета-версии: http://jenyay.net/Outwiker/Unstable Исходники: https://github.com/Jenyay/outwiker Документация: https://outwiker.readthedocs.io

Slide 36

Slide 36 text

43 Спасибо за внимание!