All streams
Search
Write a publication
Pull to refresh
38
0
Александр Шульман @developer

Развиваю ИТ

Send message
а я считаю, что статья крайне полезная, нужно знать как это делается и уметь читать, не вижу что б автор заставлял вас использовать эти методы, не хотите не используйте, но знать о их существовании вы обязанны если хотите считать себя хорошим хотябы кодером.

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

$res = mysql_connect(…);
if (!$res) die();

Аналогично:

$res = mysql_connect(…) or die();

выбор как и что использовать, конечно, остается на совести программиста
простите у вас тут дискуссия длинная.. затяжная. я даже прочел. у меня даже вопросы появились, но я решил их не задавать. Возможно немного эгоистично, но выскажу просто мнение свое:

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

лично я пока не представляю как использовать замыкания буду, потому что до этого использовал их в событийных языках только широко (пример JavaScript).
ну я понимаю что напихал то и напихал
Имхо идея не плохая, даже хорошая, но есть трудности которые нужно решить чтоб этот подход позволил накапливать опыт в библиотеках:
1. сложность наследования сервисов таких, разделение прав и прочего. не представляю как осуществлять наследуемость в таких структурах
2. как было сказано выше прохая инкапсулируемость.


$functions=json_decode($_REQUEST['method'],TRUE);
$UImethod->run($functions);
echo json_encode($UImethod->result);

мне кажется в этих строках сложно сделать прозрачным ограничение на разрешенные и запрешенные методы класса..

а в целом для маленьких задачь с маленьким кол-вом функций очень даже удобно. коротко и вызовы прозрачные впринципе

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

вот я, например, пришел другу страничку править хочу там какой-то эффект MooTools так я ж не должен теперь качать,ставить я просто могу ему написать эффект и показать "вот мол смотри, нравится или нет".

конечно для продакшион проджектов такое использовать не рекоменуется.
вот у меня сразу вопрос.. они конечно сосут статистику, можно даже посмотреть какую, а вот влияет ли это как-то на TRUST сайта, задержку перед началом индексирования нового сайта, продвижение его в песочнице? думаю что нужно поставить эксперимент. вопросов много.. насколько этот сервис интегрирован с другими. наверняка обратная связь есть, только как она работает?
да уж диковатая история действительно. Автору спасибо за рассказ
а презентации показать можете?
Написали всего много, давайте теперь обратимся к теории

Что делает PHP интерпретатор когда встречает include?
ответ:
1. парсит код
2. строит дерево связей сущностей (мапинг адресов переменных и констант, деклараций классов и функций)
3. изменяет дерево исполнения.
4. исполняет.

что происходит при повторном подключении?
PHP смотрит на адреса при смене контекста и исполняет байт код собранный ранее. (если файл не меняли)

что происходит при повторном исполнении инклюда?
дерево связий есть, таблица адресов тоже, байт код даже есть, так что копируется кусок байт кода, подготовленного ранее и все (кстати в PHP4 глюки на этой почве народ ловил ^_^).

Теперь что произойдет при eval ??
тоже самое что и в случае с инклюдом, тока откроется внутренний поток ошибок.

что же происходит при повторном вызове eval ??
интерпритатор не может строить предполодений на природу кода который передан в eval поэтому проводит ВСЕ шаги заново.

Как меняет ситуацию акселератор?
в случае если у вас в подключаемом файле есть например такая конструкция echo "this"." my "." file" акселератор может заменить это на константу, убрать операции контененации, т.е. все стандартные фишки акселерации. В случае с eval код через акселератор не пропускается.

теперь по поводу эксперимента привыкайте писать условия: какая машинка, какая ось, а то странный и не воспроизводимый результат. и число измерений повысить ИМХО стоит ибо тысячные секунды могут встять из-за таких факторов как процессорная оптимизация, влезло или нет в кеш проца и прочие.
Из практики.
Есть люди, которые просто не могут писать код на ООП, ну не могут некоторые говорить в терминах "объект", "сделал", "умеет", "обладает". И в то же время это высококлалифицированные проффесионалы, которые хорошо решают поставленные задачи. Заставлять таких людей работать в принципах ООП не оправданно. Нужно понимать, что иногда заставляя программиста писать на ооп вы можете заставить писать его хуже или разойтись с ним.

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


Плюс в сравнении с Java, например:
нет утечек памяти и сложно накасячить так чтоб были
проще писать многие задачи WEB

Минусы:
много доп работы для обеспечения стабильности.

Хотел сказать что PHP уже вырос и решает далеко не только "ссесионные" задачи
Ура!! свершилось! как часто приходилось извращаться чтоб решать эти проблеммы! теперь реально многие, очень многие вещи можно будет делать по-человечески! Спасиб огромное автору - отличная новость!
итак пользователям VAIO которые хотят слезть с висты:
на примере ноута: VGN-FE890 (http://esupport.sony.com/US/perl/swu-list.pl?mdl=VGNFE890)

драйверы с офф.сайта не работают под ХР, но есть места, где они лежат:
ftp://ftp.vaio-link.com/pub/Vaio/Original/
для рассматриваемой модели VGN-FE890 серии VAIO скачать FE3.ZIP (95м) и FE3_UTILITIES.ZIP (75м) файлы. ставим все по разумному (тоесть сначала драва из FE3.ZIP, потом утилиты, притом сначала библиотеки VAIO потом тока сами утилиты)

значит на примере этого ноута возникла проблемма о том как ставить камеру.
драйвер отдельно найден (ставим виставский после всего и работает): http://esupport.sony.com/US/perl/swu-download.pl?mdl=VGNFE890&upd_id=2410&os_id=28

Да, возможно гемор, но решение. Надеюсь кому-то помог, если у кого-то такой ноут и он хочет ХР. До высты толи я не созрел, то ли она еще до меня.

эх.. карма..карма..
не давно ко мне в руки попал ноутбук Vaio из штатов, новый на нем стоит виста и лицензии на ХР типа нет, дров тоже. Так вот решил поставить ХР:
первое дрова нашел и все установил.
второе есть такая услуга даунграйд - звоним в майкрософт и просим ключик на ХР, дают тока в случае если у вас бизнес или профешеонал лицензия на Висту.
Все ноуты IBM можно даунгрейдить (но туда линух встает и генту и что угодно)
круто видеть такие достижения.. начинаешь опять верить в нашу цивилизацию. Нобеля дают вроде за фундоментальные исследования, но награды ребята, сделавшие такую штуку, я не сомневаюсь, получат!
Большое спасибо автору. Причина вовсе не в спаливании тем, об этом все и так знают, причина в другом. Чтоб отбеливать рынок нужно дать публике понять остроту проблеммы. ВСЕ обсуждения и сообщества, что я видел направленны на умаление опасностей от XSS тогоже что влечет за собой популяноть хреновых и дешевы прогеров. Светя такие темы автор реально подчеркивает, а не усугубляет проблемму. Мои благодарности.
12 ...
55

Information

Rating
Does not participate
Location
Санкт-Петербург, Санкт-Петербург и область, Россия
Date of birth
Registered
Activity

Specialization

Chief Executive Officer (CEO)
Lead
From 3,000,000 ₽
Project management
Negotiation
Development of tech specifications
Agile
Development management
Optimization of business processes
Organization of business processes
Building a team
Strategic planning
Business development