Python и shareware
От: Mihal9  
Дата: 11.05.24 04:51
Оценка: :)
Скажите, а возможно ли питоновскую программу завернуть в shareware-продукт под Windows и продавать?
Re: Python и shareware
От: undo75  
Дата: 11.05.24 04:53
Оценка:
M>Скажите, а возможно ли питоновскую программу завернуть в shareware-продукт под Windows и продавать?

а че нет? лицензию вываливай при установке да вперед. те, кто ее не блюдут — будут нарушать закон чей-нить )
Re: Python и shareware
От: velkin Удмуртия https://kisa.biz
Дата: 11.05.24 07:06
Оценка: +1 -1 :)
Здравствуйте, Mihal9, Вы писали:

M>Скажите, а возможно ли питоновскую программу завернуть в shareware-продукт под Windows и продавать?


Возьми для примера какую-нибудь программу. Мне в голову приходит Zim.

Написана на
Python
Интерфейс
GTK
Операционные системы
Linux, Windows и macOS

Следующей ссылкой меня бросает на
PyGTK.
#!/usr/bin/env python
#-*- coding: UTF-8 -*-

import gtk

def button_clicked(button):
    print('Hello World!')

def main():
    window = gtk.Window()
    window.set_default_size(240, 180)
    window.set_title('Hello World!')
    window.connect('destroy', lambda w: gtk.main_quit())

    button = gtk.Button('Press Me')
    button.connect('clicked', button_clicked)
    button.show()

    window.add(button)
    window.present()

    gtk.main()

if __name__ == '__main__':
    main()

Но лично я против использования питона. А всё потому, что давайте вспомним как он стал популярным.

1. Питон это встраиваемый скриптовый язык для программ на C/C++.
2. Питон имеет множество обёрток для библиотек C/C++.

Когда открываешь репозиторий Debian просто поражаешься количеству пакетов являющихся обёртками для библиотек C/C++. С программами это менее очевидно, только я и сам знаю в каких есть поддержка питона.

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

Эта библиотека как правило написана на C/C+. Внимание вопрос: Зачем писать на языках .NET и использовать, если найду обёртки, а можно ведь и не найти, когда можно сразу писать на C/C++?

Тоже самое и с питоном. Зачем нужен питон, когда можно сразу использовать C/C++. Разработчику не нужна интерпретируемость, так как он и так имеет полную власть над программой.

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

Питон не нужен потому, что не имеет никаких явных преимуществ против C/C++, зато является лишним элементом в цепи, который можно удалить и станет только лучше.

Стратегия присосаться к величию C/C++ действительно дала результат, но что дальше? Да, можно использовать питон, но смысл?

И самое главное некоторые написав прототип на питоне и взлетев потом ищут разработчиков на C/C++, чтобы те переписали код с питона на C/C++.

А вообще те кто пишут, что C/C++ устарели, и живут только благодаря старым маразматикам не желающих учиться новому сами забывают, что огромное количество языков провалилось.

Есть объективные факторы успеха, такие как производительность, эффективное управление памятью, кроссплатформенность, в случае с Си ещё и простота освоения и использования.

В случае с питоном фактор успеха — успешно подсосались к C/C++.
Re[2]: Python и shareware
От: Mihal9  
Дата: 11.05.24 07:56
Оценка:
Здравствуйте, velkin, Вы писали:


V>Возьми для примера какую-нибудь программу. Мне в голову приходит Zim.

V>[q]
V>Написана на
V>Python


А возможно ли в standalone EXE-файл запихнуть не только свой Python-скрипт, но и Python-библиотеки типа NLTK и др.?
Re[2]: Python и shareware
От: gress Россия  
Дата: 11.05.24 08:08
Оценка: +1
Здравствуйте, velkin, Вы писали:


V>Питон не нужен потому, что не имеет никаких явных преимуществ против C/C++, зато является лишним элементом в цепи, который можно удалить и станет только лучше.


V>Стратегия присосаться к величию C/C++ действительно дала результат, но что дальше? Да, можно использовать питон, но смысл?


Ты как-то одним махом отмел все фрэймворки питона для искусственного интеллекта, а их огромное количество и заменить их нечем.

А искусственный интеллект — это далеко не только генеративный интеллект. Уже множество различных моделей с обучением и без работают в сервисах и приносят пользу.
Такое впечатление, что ты деталями применения питона никогда не интересовался, но очень уверенно рассуждаешь об этом.
Re[2]: Python и shareware
От: Michael7 Россия  
Дата: 11.05.24 09:22
Оценка: 3 (1) +1 :)
Здравствуйте, velkin, Вы писали:

V>В случае с питоном фактор успеха — успешно подсосались к C/C++.


Нет, совершенно другой фактор. Как-то так получилось, что питон легче изучить чем C/C++ (его стали давать даже в школах как первый яп, хотя это и неправильно на мой взгляд) и на нем можно очень быстро написать программу, которая будет и не большой по размеру и делать что-то серьезное. Оно будет работать сильно медленнее C++ — реализации, иногда и в 100 раз медленее, но часто скорость написания работающего кода важнее скорости работы самого кода. Особенно в исследовательских задачах, в том же машинном обучении и датасайенс. Пришла в голову какая-то идея, быстренько накидал код на питоне и проверил ее.

Например, в начале года проскочил "1 биллион челлендж", в этой теме подробнее и многие там приводили примеры кода, вообще любопытно почитать https://www.linux.org.ru/forum/development/17473464

Даётся CSV файл с температурой от метеостанции и названием локации. Таких записей миллиард. Нужно найти максимальную, минимальную и среднюю температуру по каждой локации за минимальное время. Подробнее https://www.morling.dev/blog/one-billion-row-challenge/


Срок до 31 января


Пишем на джаве (но там вроде и другие ЯП участвовали)


Приз имя на доске почёта

Предоставленные реализации на текущий момент https://github.com/gunnarmorling/1brc?tab=readme-ov-file#results

Реализации и челленджи на других ЯП https://github.com/gunnarmorling/1brc/discussions/categories/show-and-tell


Быстро накоденный, "не приходя в сознание", как выражается автор (не я) код на питоне https://www.linux.org.ru/forum/development/17473464?cid=17474816

import os, sys
table = {}

for line in open(sys.argv[1]):
    name, val = line.split(';'); val = float(val)
    data = table.setdefault(name, [val,val,0,0])
    data[0] = min(data[0], val)
    data[1] = max(data[1], val)
    data[2] += val
    data[3] += 1

for name, data in table.items(): 
    print(name, data[0], data[2]/data[3], data[1])


Всего 15 строчек. Работает 13 минут, хотя реализации на C++ или Java минуту-другую, а правильные вообще 20-30 секунд (видимо если диск быстрый), рекордные — несколько секунд. Но вот писать этот код ты будешь сильно дольше, а с питоном понадобилось решить что-то подобное, написал код за пять минут, запустил, сходил чайку/кофейку попить — результат готов. Причем, если нужно побыстрее, можно и питоновский код ускорить, но это уже дополнительные силы и время на кодирование.
Отредактировано 11.05.2024 9:24 Michael7 . Предыдущая версия .
Re[2]: Python и shareware
От: Nuzhny Россия https://github.com/Nuzhny007
Дата: 11.05.24 09:52
Оценка:
Здравствуйте, velkin, Вы писали:

V>1. Питон это встраиваемый скриптовый язык для программ на C/C++.

V>2. Питон имеет множество обёрток для библиотек C/C++.

1. Питон — это язык, который создавался на замену bash, а не в качестве скриптового для С++, он — это не lua
2. Да. Но и свои собственные библиотеки в том числе. Именно поэтому на нём проще писать, поскольку библиотек в разы больше, чем просто у С++
Re[3]: Python и shareware
От: m2user  
Дата: 11.05.24 12:19
Оценка:
N>1. Питон — это язык, который создавался на замену bash, а не в качестве скриптового для С++, он — это не lua

Но ведь bash shell и python почти ровесники. Работа над обоими началась в 1988-89 гг.
И на тот момент уже был Perl (версия 1.0 вышла в 1987) — вполне себе замена скриптов на posix shell.
Re[4]: Python и shareware
От: wl. Россия  
Дата: 11.05.24 12:59
Оценка:
Здравствуйте, m2user, Вы писали:

N>>1. Питон — это язык, который создавался на замену bash, а не в качестве скриптового для С++, он — это не lua


M>Но ведь bash shell и python почти ровесники. Работа над обоими началась в 1988-89 гг.

M>И на тот момент уже был Perl (версия 1.0 вышла в 1987) — вполне себе замена скриптов на posix shell.

Perl это какое-то мертворожденное чудовище. Ему бы совместно в ChatGPT работать, пописывать нечитаемые регулярные выражения
Re[5]: Python и shareware
От: m2user  
Дата: 11.05.24 13:11
Оценка:
wl.>Perl это какое-то мертворожденное чудовище. Ему бы совместно в ChatGPT работать, пописывать нечитаемые регулярные выражения

синтаксис Perl определенно содержит слишком много конструкций и как следствие трудоемок для изучения. Однако скрипты на нем писали и до сих пор пишут.
Между Perl и всякими posix shell я бы наверное выбрал Perl. Хорошо, что передо мной такого выбора не стоит
Re: Python и shareware
От: Anton Batenev Россия https://github.com/abbat
Дата: 11.05.24 21:53
Оценка: +1 :)))
Здравствуйте, Mihal9, Вы писали:

M> Скажите, а возможно ли питоновскую программу завернуть в shareware-продукт под Windows и продавать?


Ты выбрал из двух возможных зол оба.
Re[2]: Python и shareware
От: Mihal9  
Дата: 11.05.24 22:03
Оценка:
Здравствуйте, Anton Batenev, Вы писали:



AB>Ты выбрал из двух возможных зол оба.



Поясни
Re: Python и shareware
От: mauzer_tim Верблюд  
Дата: 14.05.24 12:45
Оценка: +1
Здравствуйте, Mihal9, Вы писали:

M>Скажите, а возможно ли питоновскую программу завернуть в shareware-продукт под Windows и продавать?


Если твоя софина будет решать какую-то проблему пользователя и делать это лучше конкурентов, то какая разница для пользователя на чем она написана? Или ты собрался чужую опенсорсную софтину продавать?
Отредактировано 14.05.2024 12:47 mauzer_tim . Предыдущая версия .
Re[2]: Python и shareware
От: m2user  
Дата: 14.05.24 13:00
Оценка: +1
_>Если твоя софина будет решать какую-то проблему пользователя и делать это лучше конкурентов, то какая разница для пользователя на чем она написана?

В сисреках разница: для работы софта нужен питон версии х.х.х, которого под Вашу версию MS Windows нет и т.п.
Re[3]: Python и shareware
От: mauzer_tim Верблюд  
Дата: 14.05.24 13:23
Оценка:
Здравствуйте, m2user, Вы писали:
M>В сисреках разница: для работы софта нужен питон версии х.х.х, которого под Вашу версию MS Windows нет и т.п.

Не надо усложнять усложнять задачу. 99% пользователей шароварных программ сидят под Win7-Win11, что-то сомневаюсь, что под эти ОС нет питонов.
Re[4]: Python и shareware
От: m2user  
Дата: 14.05.24 13:42
Оценка:
_>Не надо усложнять усложнять задачу. 99% пользователей шароварных программ сидят под Win7-Win11, что-то сомневаюсь, что под эти ОС нет питонов.

Смотря какую версию питона требует софт. ТС же не сообщил.
https://pythondev.readthedocs.io/platforms.html#windows

Windows 7 support dropped in Python 3.9

Windows Vista support dropped in Python 3.7

Windows XP support dropped in Python 3.5

Windows 2000 support dropped in Python 3.4

bpo-23451, 2015-03: “Python 3.5 now requires Windows Vista or newer”. See change1 and change2.

Python 3.7 supports Windows Vista and newer

Python 2.7 supports Windows XP and newer

Re[4]: Python и shareware
От: icezone  
Дата: 14.05.24 13:51
Оценка: 1 (1)
Здравствуйте, mauzer_tim, Вы писали:

_>Не надо усложнять усложнять задачу. 99% пользователей шароварных программ сидят под Win7-Win11, что-то сомневаюсь, что под эти ОС нет питонов.


Питон — это DLL-hell возведенный в бесконечность. Всегда найдется несовместимая либа, поэтому под каждый скрипт надо отдельную копию среды создавать.

Благодаря Питону я узнал что одна DLL может весить больше 1 ГБ...
Re: Python и shareware
От: icezone  
Дата: 14.05.24 13:56
Оценка: :))
Здравствуйте, Mihal9, Вы писали:

M>Скажите, а возможно ли питоновскую программу завернуть в shareware-продукт под Windows и продавать?


видел у китайцев что-то для обработки фоток с инсталлятором на 100Мб, во время установки он качает Питон со всеми либами прямо в корень диска C
через полчаса получается папка на 2.5 ГБ, дальше оно у меня грохнулось
Re: Python и shareware
От: FR  
Дата: 14.05.24 16:37
Оценка:
Здравствуйте, Mihal9, Вы писали:

M>Скажите, а возможно ли питоновскую программу завернуть в shareware-продукт под Windows и продавать?


Возможно вполне, раньше участвовал в разработке шараварных игр на питоне + свой движок на C++, все это паковалось тогда кажется Py2exe. Позже делал утилитки (не шараварные) уже на чистом питоне, паковал уже с помощью PyIstaller, все вполне нормально работало, для пользователя ничем от нативных exe не отличимо. Что сейчас актуально для упаковки не в курсе, но теперь вроде есть и полноценные компиляторы питона например nuitka.
Re[2]: Python и shareware
От: Mihal9  
Дата: 14.05.24 17:52
Оценка:
Здравствуйте, FR, Вы писали:


FR>Возможно вполне, раньше участвовал в разработке шараварных игр на питоне + свой движок на C++, все это паковалось тогда кажется Py2exe. Позже делал утилитки (не шараварные) уже на чистом питоне, паковал уже с помощью PyIstaller, все вполне нормально работало, для пользователя ничем от нативных exe не отличимо. Что сейчас актуально для упаковки не в курсе, но теперь вроде есть и полноценные компиляторы питона например nuitka.



А как защищали EXE-шники от взлома? ASProtect?
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.