PHP -- как это мучительно больно за бесцельно потраченные дни...

12
F
На сайте с 15.11.2000
Offline
116
4022

Если кто-то еще использует PHP в серьезных проектах, советую одуматься, пока не поздно.

Маленькая история о PHP 4.0.6.

Написал я относительно небольшую программку, около 500 строк, три класса. Написал, как не трудно догадаться, на PHP. Так вот, времени на отладку ушло уже больше, чем на написание, а конца еще не видно. И дело не в моих навыках -- на C++ я такую программу отладил бы мгновенно. Дело в ошибках интерпретатора PHP.

Постоянно теряются переменные (данные) объектов, приходится заменять их глобальными переменными. Меняю местами две строки с инициализацией двух разных переменных константами -- программа перестает работать. Вызов метода в стиле

MethodA (MethodB ($C));

не работает, в то время как введение временной переменно спасает положение:

$Temp = MethodB ($C);
MethodA ($Temp);

И т.д.

Не говоря уже о том, что сам язык не дает никакой возможности контролировать ситуацию и не имеет нормальных отладочных средств.

В общем, мой совет -- если вы хотите от PHP что-то большее пары форм для опроса пользователей, забудьте. Лучше потратьте свою жизнь на что-то более полезное.

С уважением,

Александр Садовский.

P.S. Одно меня тревожит, а что если и Perl окажется столь же глючным?

Fad
На сайте с 25.09.2001
Offline
124
Fad
#1

Originally posted by funsad:
Если кто-то еще использует PHP в серьезных проектах, советую одуматься, пока не поздно.

А что посоветуешь в плане с MySQL, пока все нормально, только медленно довольно.

С уважением, Фадеичев Андрей, руководитель проекта "Биржа контента eTXT.ru" (http://www.etxt.ru/)
Fad
На сайте с 25.09.2001
Offline
124
Fad
#2

Originally posted by funsad:
P.S. Одно меня тревожит, а что если и Perl окажется столь же глючным? :

Ну язык постарше будет, поэтому менее сырой,но только он затачивался изначально, как язык для разбора больших обьемов текста. Так круто с регулярными выражениями. Хотя и с остальным не плохо... Хотя лучше С++ еще никто не предумал... Желаю удачи в нелегком труде...

NW
На сайте с 10.07.2001
Offline
69
#3

Имхо, для серьёзных проектов или ASP/COM/ISAPI на винде или JSP/JavaBeans на соларисе. Хотя perl неплох, но опять же не слишком тянет на промышленную платформу.

Maxim A. Ralnikovhttp://ralnikov.com
Sergey Petrenko
На сайте с 23.10.2000
Offline
482
#4

Саша, я с тобой не соглашусь. Твоя проблема в том, что ты знаешь C, поэтому отталкиваешься от удобства работы с популярными компиляторами и развитости языка. Я, к примеру, C не изучал, т.е. не знаю его вовсе. Синтаксис perl мне интуитивно не понятен, а вот PHP осваивается нормально, простой и понятный язык.

Для промышленного применения, на примере моей организации, лучше всего подходит C++ или Java вкупе с Oracle SQL. В качестве серверного языка - ASP, просто потому, что, в основном, используются сервера под NT.

VT
На сайте с 27.01.2001
Offline
130
#5

Originally posted by Gray:
Саша, я с тобой не соглашусь. Твоя проблема в том, что ты знаешь C, поэтому отталкиваешься от удобства работы с популярными компиляторами и развитости языка. Я, к примеру, C не изучал, т.е. не знаю его вовсе. Синтаксис perl мне интуитивно не понятен, а вот PHP осваивается нормально, простой и понятный язык.

Вся проблема в том, что Си язык низкоуровневый, а тот же perl или php языки очень высокого уровня. Проще говоря, при программировании на Си приходится самому создавать структуры более высокого уровня, в то время как в perl это все уже сделали за тебя.

Кроме того, в perl'e просто непревзойденная концепция регулярных выражений, не имеющая аналогов ни в каком другом языке (конечно, в PHP regexp тоже есть, но не такие удобные). Например, программу обработки текстов, на которую при реализации на Си можно потратить неделю, на perl (если есть опыт) можно сделать за пару минут. Естественно, работать она будет на несколько порядков медленнее, но более чем часто все же себя оправдывает.

Конечно, для обучения таким языкам нужно дъявольское терпение и огромное желание, но в результате в конце концов иногда чувствуешь себя чуть ли не богом программирования

telsa
На сайте с 24.05.2001
Offline
61
#6

P.S. Одно меня тревожит, а что если и Perl окажется столь же глючным?

Не окажеться. Тут сложности в другом - поиск необходимых библиотек под задачи прогры. Да и сам язык потяжелее пхп.

Когда и впрямь, как помнят из Кратилла,
Прообраз вещи — наименованье,
То Роза спит, уже в её названьи,
Как в слове «Нил» струятся воды Нила...
AiK
На сайте с 27.10.2000
Offline
257
AiK
#7


P.S. Одно меня тревожит, а что если и Perl окажется столь же глючным?

Окажется. Открою страшную тайну - это тоже интерпретируемый язык без строго типизированных переменных, самая эффективная отладка для которого - вывод на печать (ну или просмотр логов).

Кстати, ты стал жертвой моды - PHP не знаю почему стал ну очень популярным в последнее время.

Я бы тебе рекомендовал такой вариант: для разбора форм использовать perl (ну или PHP, смотря что тебе больше ндравиться ), а для более сложых вещей использовать С (не плас плас) - почти у каждого

*nix хостера с поддержкой CGI есть возможность компиляции и запуска gnu C программ. С классами придётся обломаться (100% не уверен, но IMHO это plain C),

и придётся использовать сишные структуры с наборами методов, зато не будет проблем с отладкой и разработкой.

Порекомендовал бы и JSP, но не стану по двум причинам: во-первых хостинг будет существенно дороже, а во-вторых для тебя это скорее всего новая технология.

В место послесловия, несколько фактов: в ASP для сложных конструкций используется COM,

который реализуется на C++ или, в крайнем случае, на VB. В JSP используются все возможности языка Java (не обязательно, кстати, JavaBeans - классы можно напрямую использовать).

А вот в PHP ничего такого, насколько мне известно, не предусмотрено.

Видимо из-за этой простоты PHP и стал таким модным. А простота, как известно хуже воровства.

И ещё один факт: как-то мне достался в наследство web-проект, реализованный на

ASP - надо его оживить было. Одна из страниц содержала что-то около 700 строк кода. Я её сутки оживлял, а больше всего потратил времени на борьбу с сообщением Type missmatch. Это было очень весёлое сообщение, ведь JScript не является строго типизированным языком! Часа через три мучений, я выяснил, что в странице

забыли заинклюдить другую, и ошибка заключалась в том, что интерпретатор не мог

найти определение функции. После этого я зарёкся использовать ASP (и соответсвенно

PHP - на мой взгляд это близницы-братья) и очень сильно проникся рекомендацией о непревышении в единице компиляции интерпретации) полутора-двух сотен строчек кода (и чем меньше - тем лучше).

L
На сайте с 06.09.2001
Offline
67
#8

http://php.jys.js.cn/sites.php - cписок сайтов, работающих на PHP.

Кому лень смотреть, могу перечислить такие конторы, как

Audi, Opel, Mitsubishi, Honda, Mazda, Opel, Subaru, Volvo, C2Net, RedHat, NASA, Mp3.com,

а так-же (!)

Infomak, Euroseek, AlltheWeb (и весь FAST), Lycos media, APACHE.ORG!

и еще вагон и маленькая тележка.

Так что вопрос спорный.

Уверен, что с Perl-ом (моим любимым) та же ситуация.. ну, взять хотябы OReily.

TrafficHolder.com - Buy/Sell Adult Traffic (http://www.trafficholder.com/aff.php?samuelapirrone)
L
На сайте с 06.09.2001
Offline
67
#9

да, как же я забыл - searchengines.ru

D
На сайте с 03.01.2002
Offline
11
dbc
#10

Originally posted by AiK:
... и очень сильно проникся рекомендацией о непревышении в единице компиляции интерпретации) полутора-двух сотен строчек кода (и чем меньше - тем лучше).

Пожалуйста, поделись почему?

12

Авторизуйтесь или зарегистрируйтесь, чтобы оставить комментарий