Python na stronie www.

0

Witam

Proszę o wyjaśnienie mi możliwości programowania w przeglądarce z pomocą Pythona.
Czytam o tym i jeśli dobrze rozumiem to w grę wchodzą rozwiązania typu Django lub Flask?
I tu potrzebne wyjaśnienie. Jeśli chcę zrobić stronę z formularzami, przyciskami jakąś grafiką i aby była możliwość interakcji ze strony użytkownika.
Po tej "interakcji" strona się odświeża i mamy efekt zmian. Czy powyższe "aplikacje" (nie wiem jak nazwać - frameworki) mi to umożliwią?
I następnie czy to się odbywa po stronie użytkownika czy jest wymagana komunikacja z jakimś serwerem nawet lokalnym (Apache).
Czy da się napisać app w przeglądarce z Pythonem działającą offline na zasadzie wysyłam program Pythona z interfejsem w html i to śmiga np na windows?

Pozdrawiam
Radek Głębicki

0

Chyba mylisz rzeczy i dość mocno brakuje podkładu.
Wymienione przez ciebie framewroki pracują po stronie servera.

Trafiłem na projekt Brython, czyli Python in Browser, ale raczej nie o to Ci chodzi. Traktuj jako ciekawostkę

1

Postaram się wyjaśnić dość prosto, bo widzę że jest tu trochę zamieszania.

Każdą typową aplikację webową na której widzisz jakieś formularze może podzielić na dwie części:

Cześć klienta - to co otwiera Ci się w przeglądarce i z czym możesz prowadzić interakcje (zwana potocznie jako front-end w żargonie). Tu głownie wyróżniamy 3 technologię które się uzupełniają HTML, CSS i JavaScript. To one tworzą interaktywne, kolorowe aplikacje, formularze i wszystko co wyświetla Ci się po wejściu na strone.

Część serwerowa - to co jest wykonywane po stronie serwera, jak odebranie danych z formularza i zapisanie ich do bazy (zwana potocznie jako back-end). Tu masz część aplikacji która wykonuje pewne operacje na serwerze, bazie danych, odpytuje o dane inne serwisy itp. Tu właśnie jest część dla Pythona, Django i Flaska.

Ten podział jest ważny z kilku powodów ale jednym z głownych jest zapewnienie separacji dostępu dla użytkownika. Nie chcesz by każdy użytkownik przykładowo mógł mieć dostęp bezpośrednio do całej twojej bazy, nie możesz po stronie użytkownika (klienckiej) zapisywać hasła do bazy gdzie trzymasz przykładowo prywatne wiadomości wszystkich użytkowników. Dlatego jest ten podział.

Jednak o co tutaj pytasz, że chciałbyś aplikację lokalną która przesyłasz na dany komputer i tam odpalasz jest to jak najbardziej możliwe. Przykładowo chciałbyś stworzyć jakiś kalkulator który coś przelicza, a wyniki nie trzeba zapisywać do bazy gdzieś na serwerrze, ale można przykładowo zapisać do arkusza kalkulacyjnego na dysku. W takim przypadku ta separacja nie jest nam do niczego potrzeba, taką lokalną aplikację można przygotować tylko za pomocą HTML, CSS i JavaScriptu (tu jest kilka technik do wykonywania tego typu aplikacji).

Możesz też stworzyć taką aplikację za pomocą pythona, ale będzie to typowa aplikacja okienkowa jak notatnik czy paint, a nie odpalana w przeglądarce.

0

Brythona polecam. Koduję w nim i dobrze spełnia swoje funkcje.

1 użytkowników online, w tym zalogowanych: 0, gości: 1