Co jest lepsze, PHP czy Python? Dlaczego?

Najlepsza odpowiedź

Odpowiedź Oluwaseguna jest obiektywna i dobra, ale krótka. Odpowiedź Bobsyego, choć ma kilka ważnych punktów, jest wysoce stronnicza i uparta. Pozwól więc, że zrobię co w mojej mocy, aby dać ci coś, co nie jest stronnicze, jasno określa, co jest / nie jest opinią, i przedstawia obie strony tej „historii”. Poniższe dotyczy tylko tworzenia stron internetowych, a nie oprogramowania (co przy okazji można zrobić w obu przypadkach).

Najpierw zdefiniuj „lepsze ”? To niezwykle subiektywne określenie, które zależy całkowicie od tego, czego szukasz. Masz na myśli szybciej? Szersze zastosowanie? Łatwiej? Oferuje większe perspektywy zatrudnienia? Większa dostępność frameworków i bibliotek? Mógłbym kontynuować.

PYTHON

Co to są Mocne strony Pythona?

  • Szeroka gama wbudowanych i zewnętrznych bibliotek / modułów specjalnie do tworzenia stron internetowych i zarządzania serwerami (zarządzanie serwerem dotyczy również tworzenia stron internetowych).
  • Te biblioteki innych firm są dobrze zaprojektowane, dobrze utrzymane, łatwe w instalacji i potężne.
  • Łatwość programowania. Jeśli kiedykolwiek programowałeś w Pythonie, wiesz, jakie to proste.
  • Django jest bardzo potężne. Pomaga zastąpić JavaScript i PHP.
  • [ OPINIA ] Osobiście nienawidzę PHP i JavaScript. Ich używanie jest frustrujące, a oba są podatne na luki. PHP bardziej z powodu błędów w języku; JavaScript z powodu błędów w dziwnej jak diabli specyfikacji, które prowadzą do słabej interpretacji tego, jak powinien być implementowany silnik JS.
  • W pełni zorientowany obiektowo.
  • Świetne do manipulacji danymi i maszyn uczenie się (może być ważne, jeśli zapewniasz ukierunkowane reklamy na swojej platformie).
  • Dzięki odpowiedniej strukturze i modułom (w standardzie) możesz prawidłowo i ładnie zintegrować się z serwerem bazy danych i automatycznie generować zapytania do swojej witryny.
  • np Jeśli użytkownik szuka na swoim koncie określonego klucza licencyjnego, platforma obsługuje to, tłumacząc czynności użytkownika na zapytanie SQL.
  • np. # 2: Jeśli administrator szuka klienta na podstawie adresu e-mail, framework przetłumaczy to na zapytanie SQL, a następnie przetłumaczy wyniki z powrotem i wyświetli je w formacie HTML w formacie CSS.

Jakie są słabości Pythona?

  • Wolno. Naprawdę wolno. Wolniej niż fani Pythona lubią to przyznać. Jak powiedział Oluwasegun, PHP jest do 3 razy szybsze (czasami więcej, czasami mniej, zależy).
  • Kiedy używasz go do programowania, nie możesz o nim myśleć tak, jak o Pythonie: Używam frameworka (np. Django). Więc nauka Pythona nie wystarczy, musisz też nauczyć się frameworka.
  • Python nie jest tak szeroko stosowany jak PHP, więc jego współczynnik zatrudnialności, szczególnie w odniesieniu do tworzenia stron internetowych, jest znacznie bardziej ograniczony. Słyszałem statystyki, że ~ 80\% wszystkich witryn używa PHP – nie mogę zweryfikować statystyk, ale to by mnie nie zdziwiło.
  • To idzie w parze z powolnością, ale należy zająć się osobno: wykorzystanie zasobów. Python hogs zasoby znacznie więcej niż PHP. Można by pomyśleć, że gdyby wykorzystywał tak dużo dostępnych zasobów, może to faktycznie pomogłoby w jego przyspieszeniu… Nie, nie, nie działa.
  • [ Opinia ] Aspekt OOP w Pythonie jest fatalny. Jeśli kiedykolwiek robiłeś jakieś OOP w języku takim jak Java, C # lub C ++, zrozumiesz, dlaczego go nienawidzę. Żaden język, który opiera się na this i super(), nie zrobił tego prawidłowo. To sprawia, że ​​kod wygląda na mylący jak diabli, zaciemnia cały proces i sprawia, że ​​programista jest podatny na błędy. To po prostu nie jest konieczne – cały aspekt języka wydaje się (jak myślę, że powiedziałem w innym miejscu na tej stronie) tak, jakby był przykręcony , z młotkiem przez ślepą rybę…. jako refleksja. I zgadnij co? To było! W porządku, nie został przykręcony młotkiem przez rybę. Ale to była refleksja i początkowo nie miało być częścią języka (początkowo nie było uwzględnione).
  • Jest to kiepska i restrykcyjna implementacja OOP. Ponownie Opinia . Niektórym się to podoba, ale to zwykle ci, którzy mówią, że C i C ++ są trudne i zagmatwane.

Podsumowując, to nie jest straszne, prawda? Osobiście uważam, że największym problemem w powyższym jest „udział w rynku” w porównaniu z PHP, w każdym razie z punktu widzenia możliwości zatrudnienia.

PHP

Jakie są mocne strony PHP?

  • Bardzo szybko.
  • W pełni zorientowany obiektowo .
  • Używany w zdecydowanej większości usług sieciowych zaplecza i funkcji stron internetowych „za kulisami”.
  • Dobrze integruje się z serwerami SQL i praktycznie wszystkimi ich odmianami.
  • Automatycznie generuje zapytania do bazy danych (zobacz sekcję poświęconą Pythonowi, na której pokazano, co to oznacza)
  • Cudownie zróżnicowana wbudowana funkcjonalność, która została zaprojektowana do użytku w sieci.
  • Dostępnych jest wiele internetowych API PHP, które dodatkowo rozszerzają możliwości.
  • Wiele z nich zostało zaprojektowanych specjalnie do użytku z PHP i nie można ich używać z Pythonem i Django.
  • np. Wiele interfejsów API e-Commerce

Jakie są słabości PHP?

O rany. Jest kilka prawdziwych humdingerów:

  • [ Opinia ] Składnia jest cholernie okropna. Tak, to opinia, ale jest to bardzo powszechna opinia. Każdy programista PHP, z którym kiedykolwiek rozmawiałem, również podziela tę opinię. Jeśli jeszcze tego nie znasz, sprawdź to.
  • Ataki typu SQL injection. Zobacz poniższy link, aby uzyskać szczegółowe wyjaśnienie, co to jest, dlaczego tak się dzieje i jak rozwiązać ten problem za pomocą PHP:
  • Zapobiegaj lukom w iniekcjach SQL w aplikacjach PHP i napraw je
  • Zdalne wykonanie kodu:
  • Błąd w aplikacji PHP może akceptować dane wejściowe użytkownika i oceniać je jako kod PHP.
  • Krzyż -Site Scripting (XSS [X = Cross]):
  • Przechowywane XSS i odbite XSS
  • Pomijanie uwierzytelniania – Technicznie błąd programisty, ale sam język sprawia, że ​​jest to naprawdę, bardzo łatwe popełnić ten błąd.
  • Mógłbym kontynuować, ale zamiast tego jest link:
  • https://www.wordfence.com/learn/understanding-php-vulnerabilities/
  • [ Opinia ] OOP jest tak samo zły jak w Pythonie. Prawdopodobnie gorzej ze względu na składnię. Nadal używa this (ale w rzeczywistości jest to $this)

Podsumowując, te luki są dość cholernie okropne, ale głównie z powodu błędu programisty. Poznaj dobrze PHP i zbadaj nie tylko „ Jak tworzę PHP” , ale także „pułapki programowania PHP” i „luki w zabezpieczeniach PHP”. bądź takim problemem.

Teraz wszyscy razem

Jaki jest więc ostateczny wniosek, jaki należy tu wyciągnąć? Cóż, pomimo tego, co lubią mówić fani Pythona, Python nie może w pełni zastąpić PHP, ze względu na obecność powszechnych interfejsów API tylko dla PHP i dominację PHP w branży.

Wiem, że już poszedłem od wieków, ale to jest moja ostatnia uwaga i naprawdę ważne jest, aby stwierdzić: Pomysł, że programiści powinni wybierać „jeden najlepszy język, ponieważ jest najlepszy”, jest ogromną porażką zarówno współczesnego systemu edukacji, jak i młodszych [młodych] programistów. Aby być naprawdę biegłym w dowolnej dziedzinie programowania, być internetem, aplikacjami lub oprogramowaniem, musisz znać wiele języków. To samo dotyczy niezawodnego zatrudnienia.

ANECDOTE : Pamiętam, że kiedy zaczynałem w branży, byłem pod wielkim wrażeniem, gdy zapytałem, a programiści w pracy powiedzieli mi, że znają asembler, C, C ++, C #, JavaScript, binarny i szesnastkowy.

I Jestem teraz pod mniejszym wrażeniem, ponieważ znam C, C ++. trochę C # (więcej informacji), JavaScript, Python, Java, HTML, CSS, trochę PHP (więcej informacji), SQL, binarne, szesnastkowe… Czuję, że brakuje mi niektórych, ale nie mogę sobie przypomnieć. Nadal są znacznie bardziej doświadczeni i biegli niż ja, ale teraz rozumiem, że znajomość wielu języków jest po prostu normalna i trzeba to zrobić.

Podsumowując, nie chodzi o to, co jest lepsze, chodzi o zrozumienie, gdzie i kiedy ich używać. A jeśli chodzi o tworzenie stron internetowych, NAGŁE MINIMUM, których powinieneś się nauczyć, to:

  • HTML
  • CSS
  • JavaScript
  • PHP
  • JSON (zastąp XML)
  • SQL (MySQL, Oracle, MS SQL to 3 główne) – uważaj na różne „smaki”
  • Python

Powyższe nie podlegają negocjacjom w przypadku kariery. Opcjonalnie naucz się też języka Java. Jest to przydatne w aplikacjach internetowych.

Edycja: Dowód braku uprzedzeń? Nienawidzę zarówno Pythona, jak i PHP; tak jak w rzeczywistości, naprawdę nie lubię obu z nich.

Odpowiedź

Python VS PHP : w jakim języku powinieneś wybrać? To pytanie ma ogromne znaczenie dla nowych programistów i start-upów. Odpowiedź na to pytanie nie jest tak prosta, ponieważ oba języki są popularne. Są używane na całym świecie w Internecie ze względu na budżetowanie i inne problemy programistyczne.

Problemy początkujących przy wyborze między PHP a Pythonem:

  • Dla programistów, którzy dopiero rozpoczynają tworzenie stron internetowych w PHP, wybór między językami jest trudny.
  • Początkujący mają trudności z wyborem między językami tworzenia stron internetowych, ponieważ mają różne wymagania.
  • Ponadto napotykają dwa problemy podczas obsługi dowolnych języków.Po pierwsze – muszą nauczyć się konstruowania programistycznego, a następnie nauczyć się implementować je w wybranym języku. Po drugie – wymagają znajomości składni, która nie ma dla nich sensu.
  • Te problemy, z którymi borykają się nowi deweloperzy, wynikają z tendencyjnych rad, które otrzymują od Pythona i Programiści PHP . Jeśli porozmawiasz z programistą Pythona, wymieni wszystkie zalety języka, ale nie ma wad. Tak samo jest w przypadku programistów PHP, którzy twierdzą, że nie ma lepszego języka.

Jak więc wybrać jeden z dwóch języków? Aby ułatwić Ci pracę, na tym blogu zamieściliśmy cztery punkty dotyczące porównania Python VS PHP . Po tym łatwo będzie Ci wybrać jeden z dwóch języków.

Zanim przejdziemy do trzech punktów, spójrzmy na statystyki dotyczące używanie obu języków do tworzenia stron internetowych.

Punkty porównania dla Python VS PHP

1. Frameworki

Framework to społeczność, która opracowuje kody i zajmuje się kompilacją kodu. Pomaga programistom w szybkim tworzeniu aplikacji internetowych bez tworzenia czegokolwiek od zera.

Framework oferuje wiele funkcji, które programiści mogą dodawać zgodnie ze swoimi potrzebami w celu dodania funkcjonalności do aplikacji.

Frameworki Pythona są potężne i wszechstronne, ale oferują ograniczone opcje. Język Python oferuje szeroką gamę frameworków, które zasadniczo wykonują tę samą funkcję, co PHP. Liczba frameworków Pythona stale rośnie ze względu na zwiększone wykorzystanie języka w projektach. Flask i Django to popularne frameworki używane przez deweloperów na całym świecie.

Frameworki PHP są również ogromne w liczbie, oferując programistom opcję tworzenie aplikacji branżowych. Popularne frameworki PHP to symfony i Laravel, które są używane przez wiele popularnych aplikacji, z których korzystają miliony użytkowników.

2. CMS

CMS to platforma oprogramowania oferująca wszechstronne rozwiązanie dla projektów tworzenia aplikacji. Oferuje rozwiązanie dla blogów, handlu elektronicznego i tym podobne, zapewniając programistom możliwość skupienia się na uzasadnieniu biznesowym. Najpopularniejszym CMS jest WordPress, który jest zbudowany przy użyciu PHP. Inne popularne systemy CMS to Magento i WooCommerce, popularne w tworzeniu witryn e-commerce. Są one również zbudowane przy użyciu PHP.

Python ma platformę CMS Django, która ma ograniczone zastosowanie.

PHP jest tutaj wyraźny zwycięzca, ponieważ jest to lepsza platforma CMS, z której korzysta wielu użytkowników.

3. Popularność

Oba języki tworzenia stron internetowych są popularne, ale obecnie PHP dominuje na 80\% rynku. PHP jest używane przez wiele popularnych witryn internetowych, takich jak Yahoo, Wikipedia, Tumblr i tak dalej. Facebook również używał PHP początkowo przed przejściem na framework PHP.

Python jest jednym z najlepszych wyborów programowania zaplecza. PHP jest na rynku już od jakiegoś czasu i nadal jest używany do celów zaplecza.

Język Python jest również dość popularny, zwłaszcza że Google wybrał go do niektórych swoich słynnych projektów. Reddit, Pinterest, YouTube, Instagram i Spotify to niektóre platformy, które używają języka Python.

Jeśli chodzi o popularność, obie języki dają sobie nawzajem silną konkurencję. Nowe projekty są ogłaszane codziennie, w tych językach.

4. Krzywa uczenia się

Krzywa uczenia się języków programowania oznacza biegłość programisty w zakresie składni języka. Oznacza to również zrozumienie, jakie deweloper posiada w zakresie używania narzędzi do tłumaczenia projektów internetowych na kod funkcjonalny.

Python jest wyraźnym zwycięzcą, ponieważ początkującym łatwo się go nauczyć i zrozumieć. PHP jest trudny i ma niewiele miejsca na błędy, przez co nie jest przyjazny dla początkujących.

Python ma więcej miejsca na błędy, a kod nie pęka z powodu małych błędów. Właśnie z tego powodu szkoły uczą języka internetowego Python do podstaw programowania.

Framework PHP i eksperci dokładają wszelkich starań, aby język był łatwy i bardziej przyjazny dla użytkownika.

Wniosek:

Python VS PHP to nigdy – kończąca się debata, ale oba języki oferują programistom wiele możliwości uczenia się. Dzięki gotowej do użycia składni, narzędziom i funkcjom, zarówno programiści Python, jak i PHP mają dużo pracy.

Zaleca się wypróbowanie obu języków. Powinieneś wybrać taki, który pasuje do Twojego projektu i jest łatwy w użyciu. PHP najlepiej nadaje się do projektów technicznych, podczas gdy Python jest łatwy dla nowych programistów i start-upów.

Dodaj komentarz

Twój adres email nie zostanie opublikowany. Pola, których wypełnienie jest wymagane, są oznaczone symbolem *