Cześć,
zastanawiam się na wyborem stacku technologii do stworzenia aplikacji. Nie mogę się zdecydować czy pisać w Pythonie (który nawet lubię ale boli mnie brak dobrze widocznych typów danych) czy w Go który mnie interesuje - chciałbym go lepiej poznać. Z tego co udało mi się dowiedzieć w obu tych językach można z powodzeniem stworzyć web aplikacje - w Pythonie cały zestaw frameworków (Django, Flask itd), a Go dostarcza wszystko co potrzebne do budwy takiej apliacji w standardzie. Liczę też na podowiedzi w czym dobrze by było napisać frontend.
- Rejestracja:ponad 9 lat
- Ostatnio:3 miesiące
- Postów:316
- Rejestracja:ponad 9 lat
- Ostatnio:3 miesiące
- Postów:316
lion137 napisał(a):
Co to znaczy: "brak dobrze widocznych typów danych"?
Miałem na myśli coś takiego:
def foo(parm, param1, param2):
pass
Mam taką przykładową funkcję powiedzmy że oczekuje ona typów odpowiednio int, string, json. I później jak chcę z niej skorzystać to zapominam co które jaki ma typ i sam sobie produkuję błędy. Oczywiście zmienne w Pytonie mają typy które nie są trudne do odganięcia. Problem spawiają mi właśnie sytuacje takie jak opisałem - nie jest to problemem jak projekt jest mniejszy ale przy znacznej ilości fukcji nie jest to dla mnie przyjemne.
- Rejestracja:około 7 lat
- Ostatnio:8 miesięcy
- Postów:15
przemyslowiec napisał(a):
lion137 napisał(a):
Co to znaczy: "brak dobrze widocznych typów danych"?
Miałem na myśli coś takiego:
def foo(parm, param1, param2): pass
Mam taką przykładową funkcję powiedzmy że oczekuje ona typów odpowiednio int, string, json. I później jak chcę z niej skorzystać to zapominam co które jaki ma typ i sam sobie produkuję błędy. Oczywiście zmienne w Pytonie mają typy które nie są trudne do odganięcia. Problem spawiają mi właśnie sytuacje takie jak opisałem - nie jest to problemem jak projekt jest mniejszy ale przy znacznej ilości fukcji nie jest to dla mnie przyjemne.
Możesz korzystać z adnotacji typów w Pythonie
https://stackoverflow.com/questions/32557920/what-are-type-hints-in-python-3-5

- Rejestracja:około 8 lat
- Ostatnio:33 minuty
- Postów:4935
Python jest dynamicznie typowany, jak Ci to przeszkadza, to rzeczywiście Pisz w Go. Możesz też spróbować type annotations
- Rejestracja:ponad 9 lat
- Ostatnio:3 miesiące
- Postów:316
Wypróbuję te type hints, jeszcze Go ma dla mnie tę zaletę że dowiem się o tego typu błędach w czasie kompilacji. Może zacznę od zrobienia czegoś mało złożonego w Pythonie i Go i sprawdzę w czym będzie mi wygodniej.
- Rejestracja:ponad 8 lat
- Ostatnio:około 4 lata
- Postów:146
Go ma dla mnie tę zaletę że dowiem się o tego typu błędach w czasie kompilacji
Pro tip Mypy -> http://mypy-lang.org/
A do weba -> https://github.com/tiangolo/fastapi

- Rejestracja:ponad 8 lat
- Ostatnio:około 4 lata
- Postów:607
Type annotations + linters + dobre testy powinny w Pythonie wystarczyć. Nie będzie to to samo co kompilator Go + stado linterów, ale da się żyć.
Zarejestruj się i dołącz do największej społeczności programistów w Polsce.
Otrzymaj wsparcie, dziel się wiedzą i rozwijaj swoje umiejętności z najlepszymi.