Dalsza droga w języku Python

Odpowiedz Nowy wątek
2019-06-10 20:43
0

Cześć,
postanowiłem przerzucić się na Pythona z Ruby. Chciałbym się dowiedzieć, w jakich dziedzinach informatyki jest stosowany Python. Chodzi mi co można robić znając ten język. Kończę powoli kurs odnośnie Pythona, podstawowe pojęcia oraz OOP. Nie wiem czym można po takich podstawach się potem zająć.

Python jest bardziej funkcyjny i mniej rozwlekły. Można robić to samo co w Rubim plus data science i ml. - siloam 2019-06-10 20:48
@siloam: Python jest funkcyjny? Który interpreter, bo chyba coś przespałem... - TurkucPodjadek 2019-06-10 22:11
Na pewno nie bardziej funkcyjny niz Ruby. - lion137 2019-06-11 08:42

Pozostało 580 znaków

2019-06-11 01:09
5

Python jest językiem ogólnego przeznaczenia. Można w nim stworzyć praktycznie wszystko, poza pewnym, raczej wąskim gronem zastosowań, do których kompletnie się nie nadaje i do których nie był projektowany. Niemniej jednak znając Pythona, możemy tworzyć aplikacje desktopowe, gry, aplikacje webowe, skrypty, emulatory, interpretery, kompilatory, aplikacje do obliczeń naukowych, aplikacje do wizualizacji danych i ich scrapowania z sieci, uczenie maszynowe i tak dalej. Lista jest naprawdę długa.

Oczywiście, do jednych zadań Python jest lepszy, do innych gorszy, bo na przykład rzadko zdarza się, że aplikacje desktopowe czy gry tworzy się w Pythonie, gdyż są do tego lepsze języki, ale w każdym razie, jest to możliwe i niezbyt trudne tak szczerze.

Python nie istnieje w świecie mobile - chcesz pisać appki na andka/ios? Nie ten jezyk.
Jedno jest jasne – jeśli chodzi o kwestie ściśle wydajnościowe, Pythonowi daleko do miana króla. Ogółem fajny ten Python, taki nie za szybki można powiedzieć.

Oczywiście, obecnie się to zmienia, ale sama natura Pythona jako języka interpretowanego sprawia, że nigdy nie będzie on tak szybki, jak kompilowany do natywnego kodu, C, czy inne języki tego typu. Trzeba się z tym pogodzić i już.

A jak już o wydajności mówimy to i o rozmiarach wspomnę – wymagania sprzętowe Pythona sprawiają, że na niektórych platformach go po prostu nie uruchomimy. Są pewne obszary świata embedded, gdzie króluje C czy Assembly, Python tam nie istnieje i nie ma co z tym dyskutować.

Czyli jeśli chcesz pisać wysoce wydajne gry z piękną grafiką, czy też może wielowątkowe aplikacje, które w rzeczywistym czasie obsługują ogromne ilości obliczeń, albo może malutkie mikro-kontrolery, to cóż, Python nie jest raczej zbyt dobrym wyborem w takim razie. Ewentualnie używany jako język skryptowy w niektórych silnikach.

W innych przypadkach Python sobie poradzi i nie trzeba przejmować się szybkością wykonania/zasobami.

Kto używa Pythona?

W tym wypadku lepiej byłoby zapytać o to, kto Pythona nie używa.

Dla przykładu jednak podam kilka mniej lub bardziej znanych firm, które z Pythona korzystają, są to: ILM, Google, Facebook, Instagram, Spotify, Quora, Netflix, Dropbox, Reddit, NASA, NSA, Red Hat, Nokia, IBM, Nasdaq, Sephora, Citi, Toyota, Gartner, Atlassian, Evernote, Lego, WebMD, Telefonica.

Cały YouTube w zasadzie stoi na Pythonie. W Google mówi się: ‘Tam, gdzie możemy – Python, tam, gdzie musimy – C++’.

czym się zająć
Wracając do pytania. Czym możesz się zająć? Zależy od ciebie. Najprawdopodobniej jednak: backend development - czyli django+drf, data science, machine learning, ai. Pick your poison.

Jak chcesz lepiej poznać pythona po podstawach to polecam: learning python 5th edition (pythonowa biblia), effective python, tdd with django (obey the testing goat) - to jeśli idziesz w backend dev, fluent python

  • do tego oczywiście cs50+ cs50 web chociażby

Ja osobiście poleciłbym pobawić się trochę właśnie w backend, w międzyczasie poznać język troche lepiej - do teo polecam learning python 5th edition, zaznaczam, że to trochę encyklopedia i nie każdemu może podejść, ale jest po prostu super jak dla mnie. Ogrom wiedzy
Na początku django + drf, pewnie jakaś celery do async tasków
potem coś asynchronicznego typu sanic, żeby zamoczyć stopy w temacie async frameworków w Pythonie itd, bo celery to tak nie do końca wprowadzi cię w temat pisania asynchronicznego kodu

Myślę, że fajny stack

edytowany 3x, ostatnio: grski, 2019-06-11 01:13
Dobrze znasz Pythona? - Silv 2019-06-11 02:58
@Silv sam bym tak nigdy nie powiedział, bo jest bardzo dużo ważnych rzeczy, które znam tylko pobieżnie albo wcale, ale ogółem piszę w nim już jakiś czas - grski 2019-06-11 09:17

Pozostało 580 znaków

Odpowiedz
Liczba odpowiedzi na stronę

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