Specyfika języka Python

2023-02-27

Wiaczesław R.

Często mi zadają pytania: Co to jest Python? Czym się różni od innych języków programowania? Czy jest łatwy i prosty?

Chcę w punktach wyjaśnić specyfikę tego języka.

Punkt 1 zasada "Scope":

Zasadnicza różnica Python od języków od innych języków programowania:

Najważniejszym pojęciem w programowaniu jest pojęcie "Scope" - Zasięg widoczności. To znaczy fragment programu (np. obszar lub blok kodu). Każdy program dzielimy na fragmenty każdy, z których ma swoje zadanie. Na przykład kod sortowania w C++:

Fragment od linijki 4 do 17 to jest fragment kodu, wewnątrz którego są inne fragmenty 5-16 w 5-16 fragment 7-14 w 7-14 fragment 8-13, takich 'wkładów' jeden blok w drugim może być znaczniej więcej. Początek bloku oznaczany znakiem: "{", koniec: "}". To są granicę "scope". Taki sam syntaks występuję w C, C++, C#, Java, Java Script, PHP i td., w większości języków.

Teraz zobaczymy jak to wygląda ten sam algorytm w Python:

Jak widać:

W języku Python nie ma specjalnego znaku dla zaznaczenia początku i końca bloku programowego.

Początek bloku określany jest niewidzialnym i niedrukowanym znakiem Tab na klawiaturze od lewej stronie od Q.

Wystarczy przesunąć komendę, na przykład tak:

I program przestaję działać.

W C++ programista może formować kod w dowolny sposób. Tu tabulator służy tylko do kosmetyki i estetyki i jest dla compilatora nieznaczący. Jak widać:

Ten kod wykonywany tak samo jak jego poprzednia wersja.

Bardzo ważny moment:

Python też niema znaku końca komendy. W C++ to znak: ";" Powoduję to że nie można napisać kilka komend z rzędu

Konkluzja: Brak wyraźnego znaku początek i koniec logicznego bloku obniża czytelność kodu (szczególnie w druku) i sprawia kłopoty przy tworzeniu i modyfikacji kodu.

Punkt 2 "Popularność":

U.S. Department of Education wprowadził język programowania Python jako rekomendowany dla wszystkich uczelni w Stanach Zjednoczonych. Automatycznie powoduję to popularność tego języka we wszystkich uczelniach świata. Chcę zaznaczyć, że szkolnictwo i produkcja to różne rzeczy.

Punkt 3 "Python i aplikacje internetowe":

Wyraz: "Ten portal napisany jest w Python-ie" w zasadzie jest 'częściowo prawdziwy'. Każda aplikacja internetowa składa się z

1) Front-End: po stronie użytkownika: obsługa ekranu, klawiatury, myszki i td.

2) Back-End: po stronie serwera: Dysk serwera i Bazy danych

Front End - obsługiwany jest przez HTML, CSS i Java Script w które uzbrojona jest każda przeglądarka. To jest zestaw standardowy. Bez tej trójki po prostu nic w internecie nie zrobisz. Projektant front end skazany jest na te języki.

Back End - Tu projektant ma do wyboru różne możliwości wyboru języka programowania. C#, Java, PHP, Python. W bazach danych dominuję SQL i jego realizacje (DB2, Oracle, Microsoft SQL, MySQL). (Osobna uwaga będzie dotyczyła Node.js, ale to na później - specjalny temat).

Dla pracy w Back End używane są tak zwane frame worki. Dla Python to: Django, Flask, Bottle, Tornado, CherryPy, Hug.

Żeby używać Pyton po stronie serwera trzeba nauczyć się odpowiedniego framework i w przypadku Django - szablonów które określają znaczniki bloków {% block <nazwa> %} i {% endblock %}. Przykład:

Następnie Python odczytuję lub zapisuję dane na dysk serwera i zapisuję i odczytuję dane z-do Bazy Danych.

W przypadku internetowych aplikacji widzimy że Python nie obejmuję 100%, a część kodu. I zajmuję swoje miejsce w łańcuchu HTML-CSS-JS-Django/Python-(SQL)

Punkt 4 "Python dla nauczania":

Większość młodych ludzi, którzy myślą o wybraniu zawodu programisty pytają o Internetowe aplikacji Front End. O Back End pytają dziesięć procent, o Bazy Danych może każdy trzydziesty.

Jeżeli chodzi o Front End to oczywiste, że w związku z powyższym muszę poradzić nauczenie Java Script, tym bardziej że z niego stosunkowo łatwo (w związku z podobną składnią) przejść na C++, C# i nawet Javę, nie mówić już o Node.js.

Jeżeli chodzi o Back End, to też tu Python zajmuję na pewno nie 100%, bo jest duża rodzina ASP.NET i PHP, nie mówiąc już o Node.js.

Co dotyczy prostoty - nie widzę tego.

Co dotyczy czytelności - też kwestia dyskusyjna.

WR 2023.02.26

Materiał będzie rozbudowywany.

 

Spodobał Ci się artykuł? Oceń go

5

Według opinii 2 użytkowników

Wiaczesław R.

Autor i korepetytor w BUKI: Wiaczesław R.

Korepetycje praktykującego programisty: Front End: HTML5, CSS3, JavaScript Back End: PHP, MySQLi Przedmioty: C++, Python, Java Dla studentów z Ukrainy osobne warunki.

Cena

80 zł/60

Ranking:

5(opinie: 2)

Inne blogi autora

Szukasz korepetytora?

Zgłoszenia do współpracy z korepetytorem wysyłane są do BUKI co 4 minuty. Już ponad 650 000 uczniów znalazło nauczyciela. Chcesz do nich dołączyć?

Dopasuj korepetytora

BUKI

Platforma łącząca nauczycieli i uczniów

Utwórz profil nauczyciela