чому php

Почнемо з того, що Python, Perl і Ruby - мови загального призначення. Вони створювалися для вирішення загальносистемних завдань. Наприклад написання скриптів для автоматизації процесів адміністрування тощо.

PHP спочатку створювався як встраевиемий мову для розробки динамічних сторінок. Тобто, кажучи простіше, для створення сайтів, в тому розумінні, яке ми вкладаємо в цей процес сьогодні. Тому в даній мові програмування спочатку передбачені можливості для вирішення завдань, пов'язаних з web. Наприклад, той же DomDocument. За допомогою нього можна «розпізнавати» (парсити) HTML. Альтернатива в Python - beautifulsoup. Але, на жаль, порівнювати DomDocument і beautifulsoup за можливостями і зручності використання просто нерозумно. Можна навести ще багато прикладів, але щоб не захаращувати статтю технічними подробицями, пропоную на цьому зупинитися. Отже зрозуміло, що спеціалізований інструмент набагато краще інструменту загального призначення.

Іноді можна зустріти помилкове, на мій погляд, переконання, що серед Perl або Ruby програмістів набагато менше некваліфікованих фахівців. Ну тут і зовсім виходить маячня. Образно кажучи, це все-одно що стверджувати, що серед авангардистів менше поганих художників, ніж серед абстракціонісов. Дурість? Зрозуміло! Я вас запевняю, в процентному співвідношенні і хороших і поганих кадрів рівно стільки ж. PHP розробників набагато більше, ніж взагалі будь-яких, тому і складається хибне враження, що у всьому винен мову програмування. Насправді якість кінцевого продукту на 99% залежить від виконавця, а не від інструменту.

Безумовно PHP не ідеальний. У ньому є свої мінуси, в порівнянні з іншими мовами. Але вони носять більше естетичний характер і нічого крім холіваров (суперечок не мають достатньо вагомих аргументів) не викликають навіть серед дуже кваліфікованих професіоналів.

Але давайте вже перейдемо до доводів, які очевидні і зрозумілі замовнику. Людині, який найчастіше дуже далекий від web програмування, а іноді і взагалі - від комп'ютерів.

По-перше, як вже було сказано вище, кількість розробників на PHP просто величезна. Навіть якщо хорошого фахівця не вийде знайти з першого разу, все-одно залишиться величезний вибір. У випадку з Ruby, наприклад, пошуки можуть стати серйозною і навіть важкою задачею. Навіть якщо закрити очі на якість, просто знайти людину, яка створить / виправить сайт «хоч як-небудь» може бути вкрай непросто. У вас багато розробників на Ruby або Python серед знайомих? А розробник на PHP є майже напевно. Розпитайте через своїх, і я впевнений - знайдеться.

По-друге хостинг. Для тих хто не знає хостинг - це майданчик, де ваш сайт буде розміщений. PHP підтримується буквально всюди. Перед вами відкривається величезний вибір з найрізноманітніших цінами. Спробуйте знайти хостинг для Ruby або Python і ви зрозумієте, що їх практично немає.

Виникає питання: для чого ж тоді використовувати щось ще, замість PHP? На мій погляд відповідь досить простий. Розробники вибирають для себе мову найбільш знайомий. Хтось раніше займався написанням сценаріїв на Python. Його вибір буде очевидним. Ще залишилися розробники з епохи, коли PHP не було. І динамічні сторінки створювалися на мові Perl через CGI. Ці люди швидше за все будуть використовувати фреймворк Mojolicious.

Цілком очевидно, що кожен буде хвалити саме те, що найкраще знає. Засинаючи замовника незрозумілими термінами і полувимишленнимі доводами. Більш того, відкриваються цілі студії, де основну конкурентну перевагу «Не PHP». І до них йдуть люди в надії отримати якісні послуги. Хоча сам факт використання якогось іншої мови робить продукт краще або гірше. На жаль, далеко не всі усвідомлюють настільки простий факт. Очевидно не всі до кінця розуміють, що PHP, Python, Perl - всього лише інструменти.

Схожі статті