Re: Přístup k C++ DLL z Pythonu

Petr Labaj labaj na volny.cz
Sobota Červen 3 22:00:08 CEST 2023


Ano, na takové jednoúčelové specializované věci je to asi použitelné a 
možná i fajn.
Obzvlášť když daný SW může využít nějakou předchystanou knihovnu.

Nakonec není to nepodobné programování v prostředí Arduino.
Celkový výsledek sice většinou není nic moc, ale pokud můžu využít nějakou
předchystanou knihovnu, tak se jednoduchý "projekt" dá slepit během chvilky.

Ale univerzálně použitelný SW bych v tom určitě nedělal.
A mám pocit, že dnes je moderní v tom dělat i relativně velké projekty.

PL

*******************

Dne 3.6.2023 v 21:36 Zdeněk Aster napsal(a):
> Jenom taková poznámka k Pythonu, já ho bral jako zlo, když v tom někdo 
> něco měl.
> Nicméně teď jsem dělal nějaké moduly na měření k FVE, (ty jsou v C na 
> AVR ) vše to
> komunikuje na modbuse, a hlavní kód mám historicky napsaný v c jede to 
> na raspberry nebo
> klasickém pc.
>
> A teď jsem si dodělával nějak rutiny abych mohl přes bootloader měnít 
> kod v tech zarizeni, pres
> modbus no a tim, že hlavni pc mám windows kde to ladim, ale jinak vse 
> jede na linuxu, tak mam vzdycky problem
> s prenositelnosti kodu, respektive asi nejvetsi problem je seriak, 
> obcas jsem mel knihovny v php,
> obcas neco v cygwinu, ale ten seriak me vzdycky dost prudil.  A ted ta 
> pointa programovaci kod mobusu
> v pythonu je pro windows i linux stejny, zmena je jen v nazvu 
> serioveho portu. A dokonce kdyz tam vradim
> prevodnim modbus tcp na modbus rtu, tak v kodu zmenim jeden radek 
> ktery otevrte tcp misto seriaku a vse
> ostatni mi jede, jasne muze za ta modbus knihovna v pythonu protoze je 
> super napsana...
>
> A na tu servisni cinost mi ten python fakt nevadi, hlavni vycitani dat 
> v behu mam v cecku, nicmene na to
> programovani a ta prenositelnost mezi win/linux serial modbus/tcp 
> modbus je fakt moc super a bez
> starosti takze u me dostal v tomto pripade python milost.......
>
> Zdenek Aster
>
> Dne 03.06.2023 v 18:33 Petr Labaj napsal(a):
>> Protože to píšu jako uživatel, tak mě zajímá rychlost z hlediska 
>> uživatele.
>> A ta "rychlost" znamená v různých situacích různé věci.
>> Pokud napíšu program pro výpis adresáře (něco jako dir nebo ls), tak 
>> hlavně chci, aby rychle startoval.
>> Pokud ale napíšu nějaký CAD, u kterého pak sedím celý den, tak mě 
>> zase zajímají jiné věci, třeba jak rychle to dokáže otáčet objektem atd.
>> Rychlost startu aplikace zde není příliš podstatná.
>> Ale ani v jedné kategorii podle mě Python moc neexceluje. Aspoň podle 
>> vzorku, který jsem měl možnost vidět.
>>
>> Takže je to asi dobré pro rychlé programování jednodušších věcí, kde 
>> můžu intenzívně využít předchystané knihovny.
>> Tedy pro aplikace typu "1x programují, 100x spustím".
>> Ale už ne pro nějaké seriózní dlouhodobé produkty typu "1x 
>> programují, 1000000x spustím".
>>
>> PL
>>
>> *******************
>>
>> Dne 3.6.2023 v 17:46 Jindroush napsal(a):
>>> Existuje neco zvane Cython https://cython.org/
>>>
>>> Rychlost je co? Rychlost algoritmu? Rychlost vyvoje? Rychlost 
>>> ladeni? Rychlost vestavenych knihoven? Atd.
>>>
>>> *.pyc je jen prekompilace, setri se cas opakovaneho prevodu 
>>> zdrojak->bytecode pri spusteni, ale interpretace je stejna.
>>> J.
>>>
>>> On 03.06.2023 17:22, Petr Labaj wrote:
>>>> Když už tady padla otázka na charakteristiku věcí v Pythonu:
>>>> Existuje prosím nějaký SW v Pythonu, který by byl rychlý? Nebo 
>>>> rychlost a Python jsou antonyma?
>>>>
>>>> Python je dneska velice populární. Tak neexistuje k němu něco 
>>>> podobného jako Dalvik u Androidu?
>>>> Tam je taky první spuštění velmi pomalé, ale tím se to (asi) 
>>>> přeloží do nějaké skoro-nativní aplikace a příště už to startuje a 
>>>> běží rychle.
>>>>
>>>> Já Python nepoužívám. Ale mám pocit, že do nějakého toho 
>>>> předžvýkaného formátu *.pyc se třeba hlavní program vůbec nedá 
>>>> zkompilovat. Jen knihovny.
>>>> To má nějaký zásadní důvod?
>>>> A asi i ty *.pyc nejsou o moc rychlejší než normální interpretace, ne?
>>>>
>>>> Díky.
>>>> PL
>>



Další informace o konferenci Hw-list