Уведомления

Группа в Telegram: @pythonsu

#1 Май 10, 2019 18:53:04

Rodegast
От: Пятигорск
Зарегистрирован: 2007-12-28
Сообщения: 2555
Репутация: +  178  -
Профиль   Отправить e-mail  

Какой GUI взять?

> Одной технологией для написания отчетной системы не обойтись. Бизнес-логику средствами графического тулкита никто не реализует…Не нужны 100500 фреймворков, нужен один, например какой-нибудь. И вот хоть убей не понимаю, в каком это виде PySide проще чем кендо.

Допустим нам нужно создать систему учёта какой нибудь хрени. И давай сравним минимальных стек технологий:
GUI - Python + PySide + СУБД
WEB - Python + Django + СУБД + WEB-сервер + CSS + HTML + JS + kendo-ui.
И как бы почувствуй разницу…

> А как же QML? А ничего, что стилизуются Qt-компоненты тем же самым css?

У тебя или виджеты или QML, они вместе не используются. CSS для стилизации виджетов не применяют. Есть похожие стили которые называются QSS, но обычно ими стараются не пользоваться.

> Есть проблемы с ресурсами? Есть личный негативный опыт?

Есть и всего этого как бы дофига.

> Да ерунда это все, на фейсбук ресурсов всем хватает, на Доту, на ютуб, почему не должно хватать на формочку с кнопочками совершенно не ясно.

Если всё это ерунда, то откуда столько негатива в отношении электрона и подобной ему хрени?

> Проблем с кроссбраузерностью ни у кого нет уже лет 8 или когда там jquery появился.

Причём здесь jquery?

> Ну если запуск займет на полсекунды больше времени, думаю бизнес от этого не пострадает.

На многооконных интерфейсах могут и заметить.

> Аналогично. Никаких проблем не возникает.

Возникают проблемы с расходом ресурсов.

> Что значит “дополнительной”? Какой дополнительной? Откуда ей взяться?

Например тратится время на шаблонизацию.

> С принтером никаких проблем нет. А что еще нужно?

А ещё есть торговое оборудование и прочие радости.

> Да и не надо.

А кому “не надо”? Наверное тебе, а куча людей этим пользуются.

> Доступ к данным с любой машины, планшета, телефона, из другой страны в любое время суток. Не надо устанавливать обновления. Мгновенные баг-фиксы, не нужно администрирование на месте. Не нужно думать о пиратстве, лицензиях, элементарная дистрибуция

И конечно же WEB технологии непосредственного отношения к этим ништякам не имеют. Это следствие использования модели SaaS реализовать её и на нормальном GUI можно.

> Если нужен какой-нибудь более-менее нестандартный компонент, придется очень постараться, и питона тут уже не хватит.

Поверь хватит этот момент я же проходил.



С дураками и сектантами не спорю, истину не ищу.
Ели кому-то правда не нравится, то заранее извиняюсь.

Офлайн

#2 Май 10, 2019 20:29:33

FishHook
От:
Зарегистрирован: 2011-01-08
Сообщения: 8190
Репутация: +  563  -
Профиль   Отправить e-mail  

Какой GUI взять?

Rodegast
Допустим нам нужно создать систему учёта какой нибудь хрени. И давай сравним минимальных стек технологий:
Реальный стек будет гораздо больше, тут будут и системы контроля версий, и сборщики, и линтеры, и ПО для управления проектами, и ИДЕшки и тд. Строки на три точно можно растянуть и эффекта от “как бы почувствуй разницу” не получится. От того, что у ты написал больше аббревиатур никаким образом не следует возрастание сложности. Давай писать на ассемблере, стек будет максимально короткий. А еще ты манипулируешь. Во-первых, ты добавил в веб-стек Джангу, но Джанга не является обязательным условием, кроме того, она включает в себя ОРМ, которая тебе в твоем проекте тоже понадобиться, но ты не считаешь нужным включать библиотеки в свой стек. На самом деле понадобится много стороннего кода в любом проекте, и полноценно изучить какой-нибудь pandas стоит не меньших усилий чем kendo-ui. Во-вторых, ты лихо отказываешься от возможностей Qt, в эту игру можно играть вдвоем: объясни, зачем мне CSS в проекте на kendo? Вычеркиваем!
Ну и если мы уже затеяли мериться стеком, то я тоже так умею:
GUI - Python + PySide + СУБД + SQL + QML + QSS
WEB - JS + СУБД + SQL + React + kendo-ui.
И как бы почувствуй разницу…
Если всё это ерунда, то откуда столько негатива в отношении электрона и подобной ему хрени?
Так электрон это как раз про них, про десктопы.
Rodegast
Причём здесь jquery?
При том, что обеспечение кроссбраузерности - один из ключевых мотивов написания jquery.
Rodegast
Например тратится время на шаблонизацию.
Добро пожаловать в будущее!!! Шаблонизация никому не нужна уже лет так…
Rodegast
А кому “не надо”? Наверное тебе, а куча людей этим пользуются.
А еще большая куча не пользуется. Аргументы козырные, конечно, учитывая мощный тренд на отказ от трея вовсе. Напомни, где в моем айпэде искать трей?
Rodegast
Это следствие использования модели SaaS реализовать её и на нормальном GUI можно
Мы только что говорили про неких теоретических даунов, для которых html+js - это сложно, и вот вдруг SaaS на кутях!!! Либо крестик снимите, либо трусы наденьте.
Rodegast
Поверь хватит этот момент я же проходил.
Расходимся, пацаны, он сказал “поверь”.





Офлайн

#3 Май 10, 2019 20:48:33

py.user.next
От:
Зарегистрирован: 2010-04-29
Сообщения: 8569
Репутация: +  764  -
Профиль   Отправить e-mail  

Какой GUI взять?

Web по безопасности очень проседает. Ты просто переходишь с GUI на Web и тебе сразу нужно начать следить на постоянной основе, обновлён ли у тебя браузер и расширения в нём, обновлён ли у тебя фреймворк, всё ли в порядке с хостингом и не утекут ли с него пароли, к какой почте он привязан и хорошо ли она укреплена. Всего этого нет в GUI, поставил и забыл. У GUI тоже есть минусы, хотя бы для каждой системы нужно отдельный GUI делать, даже если это Qt. Взять тот же Gimp на GTK, он очень по-разному работает в лине и в винде, то есть нельзя просто так взять и без каких-либо изменений собрать GUI под каждой системой. Там и тесты отличаются.

А как недавно Firefox накрылся медным тазом. Ты просто однажды открываешь браузер, а он не работает, потому что из-за автоматической системы слетели все расширения, необходимые для защищённого использования веба. Представь просто веб-приложение с важными данными, которое защищено расширением в браузере от утечки на сторону. И тут раз и всю защиту рубануло, а исправлять полдня. И ещё не факт, что через эту же защиту что-нибудь не вытащат, скомпрометировав её саму. Помним эксплоиты для SSH-сервера.



Отредактировано py.user.next (Май 10, 2019 20:50:03)

Офлайн

#4 Май 10, 2019 21:28:07

Rodegast
От: Пятигорск
Зарегистрирован: 2007-12-28
Сообщения: 2555
Репутация: +  178  -
Профиль   Отправить e-mail  

Какой GUI взять?

> Реальный стек будет гораздо больше, тут будут и системы контроля версий, и сборщики, и линтеры, и ПО для управления проектами, и ИДЕшки и тд.

Компутаторы и средства разработки мы в стек не включаем.

> ты добавил в веб-стек Джангу, но Джанга не является обязательным условием

Замени её на любой другой вебфреймворк и будет тоже самое.

> кроме того, она включает в себя ОРМ, которая тебе в твоем проекте тоже понадобиться

Я описывал минимально необходимый стек технологий. А если я к примеру буду использовать MongoDB то ORM мне не будет нужен.

> Во-вторых, ты лихо отказываешься от возможностей Qt, в эту игру можно играть вдвоем: объясни, зачем мне CSS в проекте на kendo?

Не в этом дело, просто на десктопе не принято заниматься кастомизацией. Считается что приложения должны выглядеть однотипно иначе пользователю придётся каждый раз привыкать к их внешнему виду.

> Так электрон это как раз про них, про десктопы.

Электрон это попытка делать десктоп на веб технологиях

> При том, что обеспечение кроссбраузерности - один из ключевых мотивов написания jquery.

Т.е. если мне jquery не нужен, то мне всё равно придётся его тащить?

> Добро пожаловать в будущее!!! Шаблонизация никому не нужна уже лет так…

Отвыкаем говорить за всех

> А еще большая куча не пользуется. …. Напомни, где в моем айпэде искать трей?

Обоснуй. То что у тебя на планшете нет трея ни разу не аргумент.

> Мы только что говорили про неких теоретических даунов, для которых html+js - это сложно, и вот вдруг SaaS на кутях!!!

Ну для меня проще сделать “SaaS на кутях” чем заниматься веб извращениями.



С дураками и сектантами не спорю, истину не ищу.
Ели кому-то правда не нравится, то заранее извиняюсь.

Офлайн

#5 Май 10, 2019 23:24:19

Rodegast
От: Пятигорск
Зарегистрирован: 2007-12-28
Сообщения: 2555
Репутация: +  178  -
Профиль   Отправить e-mail  

Какой GUI взять?

> Расходимся, пацаны, он сказал “поверь”.

Что бы тебе было проще поверить привожу пример диалога выбора символов который я не так давно сделал. Виджеты с символами отрисовываться полностью через методы написанные на питоне. Никаких проблем с этим нет.



С дураками и сектантами не спорю, истину не ищу.
Ели кому-то правда не нравится, то заранее извиняюсь.

Офлайн

#6 Май 10, 2019 23:40:28

doza_and
От:
Зарегистрирован: 2010-08-15
Сообщения: 4127
Репутация: +  252  -
Профиль   Отправить e-mail  

Какой GUI взять?

FishHook
Про десктоп надо давно забыть, особенно если речь идёт про отчетную систему.
Я тоже думаю что вы горячитесь.

Про отчетную/учетную систему я бы посмотрел разные варианты, начиная конечно с веба :)

Но требования бывают разные:

Десктоп однозначно объективно проще если система однопользовательская (такая архитектура проще, а нормальный веб на это не заточен).
Десктоп предпочтителен в системах реального времени (там и десктоп то специфический нужен).
С вебом конечно будут проблемы при работе с локальными ресурсами, тут и по папкам не поелозишь не говоря уж о торговом оборудовании.

Простота и необходимый стек технологий тут примерно одинаковы. Перечень решаемых задач одинаковый, способы решения разные, но примерно одной трудоемкости. JavaScript и методы построения компонент в вебе безумные, зато в десктопе замучаешься выбирать между Qt,wx,GTK,kivi,Tk,C#,Java, SDL,opengl… Делается одно, а диалектов миллион. Потом еще и разработчиков надо найти.

Наконец надо отметить что при разработке приложений которые посложнее есть тенденция к сочинению языков предметной области. Т.е. в приложение кнопочки не зашиты а возникают при обработке программы на этом языке.

Если язык по функциям близок к html/javascript то почему не воспользоваться броузером?

Думаю веб будет в своей нише. А от десктопа мы так быстро не отделаемся.





Офлайн

Board footer

Модераторировать

Powered by DjangoBB

Lo-Fi Version