• Недоступный веб: как мы развели такой бардак
    0
    Я не говорю, что это норма.

    Но эти люди молодцы, это чудо. Помню читал у Короленка «Слепой музыкант».

    Я просто интересуюсь, пытаясь лучше понять, как могу адаптировать контент и есть ли в этом смысл.
    Чтобы это не был Сизифов труд.
  • Недоступный веб: как мы развели такой бардак
    +1
    > И стили и позиционирование должно быть грамотное и последовательное.

    Ну другие требования диктуют поисковики. :)
    Вверху исходника часто помещается текст, предназначенный для тупого робота, а потом он или опускается вниз или совсем не показывается. :)

    Я тоже против абсолютного позиционирования не к месту с позиции разработчика, которому с этим кодом потом работать.
    Но часто без него никак. Особенно relative + absolute.

    Из-за адаптации под особых людей не должны страдать обычные люди.

    П.С.
    О парсере.
    Предпросмотром многие не пользуются, полагаясь на логичность парсера. :)
    Да и толку от предпросмотра, если баг случился и его можно исправить в отведенное для редактирования время.
    А если в отведенное время нельзя исправить или вообще нельзя исправить. :)
    Я хотел не разметку использовать а тег article написать, надеясь, что умный парсер его обработает, как следует, а он взял тупо удалил его.

    Да и глупый запрет на разметку при отрицательной карме. Баньте вообще пользователей.

    Вот такое отношение к обычным пользователей. А вы хотите, чтобы думали об особых. :)
  • Недоступный веб: как мы развели такой бардак
    +3
    Можете, пожалуйста перевести на русский?

    Многие пункты выполнять вместе немного тупо.

    Многие (если не большинство) пункты выполнять нужно и для обычных пользователей.

    Многие пункты трудно (или бессмысленно) выполнимы, так как явно это или не ЦА или те же титры.

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

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

    Некоторые пункты спорные: не использовать italic underline capital. (но ссылки должны быть подчеркнутыми...)
  • Недоступный веб: как мы развели такой бардак
    +8
    Этот рисунок как бы неудобно читаемый и для обычных пользователей… :)
  • Недоступный веб: как мы развели такой бардак
    0
    И как этот пользователь ввел запрос в поисковик, звуком?
  • PHP: неправильный путь
    0
    Зачастую спрашивают откровенный бред.
    Потому что говнокодеров заманили на фреймворки.

    Ну или спрашивают, как обойти подводные камни фреймворка.
    А в грамотной самописи их не будет (этих камней).

    Поэтому многие задачи приходится решать порывшись в исходниках.
  • PHP: неправильный путь
    0
    Я не понимаю, с чем Вы спорили.
    Я говорю, что на фреймворках нет из коробки «добавить новое вложенное меню», об этом и в статье (и многом другом, чего тоже нету).
    Вы говорите, что нет и не нужно.

    Спорьте тогда с предыдущими ораторами.
    Или они используют какие-то неправильные фреймворки? :)
  • PHP: неправильный путь
    0
    Не только yii, но в основном. О причинах этого я написал.

    >Model вы рассматриваете только как ActiveRecord

    Лично я рассматриваю шире.
    А фреймворки примерно так (ну или иную конкретную реализацию хождения в БД).

    МВЦ в:
    https://ru.wikipedia.org/wiki/Symfony
    https://ru.wikipedia.org/wiki/Laravel

    Об остальных смысла говорить нету.
  • Недоступный веб: как мы развели такой бардак
    0
    >Например, нечитаем скринридером (из-за несоответствия последовательности текста в коде с отображением, например).

    Скринридер читает текст с начала страницы и до конца, каждый раз все пункты меню, шапку, рекламу?

    Как правило, текст в отображении не совсем такой, как в коде.
    Часто это сделано для СЕО.
    Ну и CSS поменял блоки. Не лезть же в html, если для этого предназначен CSS.
    А также абсолютное/фиксированное позиционирование.

    И это скорее всего глупый скринридер, пускай правильно рендерит у себя, а потом думает, что читать.

    Интересно, как пользователь знал куда кликнуть в ПС по скринридеру. Или можно типа кликнуть в момент чтения?

    Мне кажется, проблема легко решаемая тегом article, лишь бы его не стали использовать где не попадя.

    Разработчикам будет выдаваться скринридер?

    Вот нам мне выдают эплы/андроиды, я под них и не оптимизирую. :)

    П.С.
    До чего же у хабра дибилоидный парсер.
    П.П.С.
    Пользователи уже не раз на него жаловались, но всем не до этого, а вы говорите о людях с ограниченными возможностями.
  • Недоступный веб: как мы развели такой бардак
    0
    Пользуясь случаем:
    разработчики, пожалуйста, не используйте веб-шрифты или проверяйте их в Опере 12, а то ваши сайты часто нечитаемы
  • Недоступный веб: как мы развели такой бардак
    0
    +2 позиции они не дадут.
    Это может быть как 1 из 100500 факторов.
  • Недоступный веб: как мы развели такой бардак
    +1
    Что значит нечитаем?
    Можно подкрутить масштаб.
    Каким образом пользователь попал на этот сайт, если 99+% сайтов нечитаемы?
    Если ему посоветоваль обычный пользователь, то пусть он напишет пожелание.
  • Недоступный веб: как мы развели такой бардак
    +1
    А ИЕ7/8?
    Старые ИЕ могут использовать бедные люди.
    У людей с ограниченными возможностями есть родственники. Оффтоп: ИЕ заставляет использовать работодатель-дурак якобы из-за безопасности, хотя это решето еще то.
    Я иногда прошу помочь разобрать каптчу. :)
    Не знаю, но возможно есть сайты специально для таких людей.

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

    Много телеканалов имеют сурдоперевод или титры?

    Напишите список основных пунктов, которые нужно поддерживать, а то тот талмуд, что предоставил оратор снизу вряд ли многие будут придерживаться (собственно и не придерживаются :) )

    Вы и все плюсующие сколько процентов выполняете предписаний?
    Или вы так называемые диванные воины?

    Вы сравниваете с позиции пользователя. Но чтобы пользователь на что-то влиял он должен за это платить или быть ЦА, чтобы за него заплатил бизнес, а потом отбивал затраты.

    Я же сравнивал с позиции разработчика/бизнеса.
    Они не поддерживают что ИЕ6, что то, о чем мы говорим.

    Разве я не прав или не об этом статья?
    Не понимаю меня минусующего и Вас плюсующих. :)

    Или они живут в параллельной вселенной?
  • Недоступный веб: как мы развели такой бардак
    –1
    Хитростей как с ИЕ-то может и не нужно, но там целый талмуд.
    А за это никто не будет платить (тратить время), как и в случае с ИЕ6.
    Вот Вы поддерживаете сколько процентов от того, что там написано?

    Пишу жестоко, но правду.
  • PHP: неправильный путь
    0
    Эсли Вы принимаете правила фреймворков, то да, для Вас это все будет необъективным.

    А также Вы можете добавить объективности статье:
    Желающие могут указать свои трудности, с которыми пришлось столкнутся. Они будут добавлены в статью.


    О каких подменных понятиях Вы говорите? :)
  • Недоступный веб: как мы развели такой бардак
    –5
    Вы поддерживаете ИЕ6?
    Это то же самое.
  • PHP: неправильный путь
    0
    Ну, в принципе, это видно. Как по комментариям, так и по коду ;). Но например я не готов ехать в другой город на стуле, спать на машине и т.д.

    Хотите — плодите сущности. Я в этом смыла не вижу.

    И да, у вас не контроллерами решаются задачи, а как-раз виджетами. Контроллер у вас всегда один — index.php ;)

    О-ло-ло. :)

    Чего?!?! Фреймворк вызывает статику?! Или все-таки приложение?

    То есть у Вас по коду раскиданы голые подключения скриптов:
    <link href="//habracdn.net/habr/styles/1472830295/_build/global_main.css" rel="stylesheet" media="all" />
    

    Ну ок.

    А на простых кешировать статику не имеет смысла. Хватит кеша в браузере + get-параметр.

    Так я как раз о гет-параметре и говорю. Чтобы его не вручную менять, а он сам менялся и не парится.

    И это минус. Чтобы поправить хедер — мне править ядро? Бред…

    304 ответ. Зачем его править?
    Вы как узнаете, что страничка не изменилась?

    Но, вы не показали, как это проще сделать на вашем фреймворке))))

    Я этим не парюсь.
    Этим занимается ядро.
  • PHP: неправильный путь
    0
    Сочувствую). Но тут зависит от программиста, фреймворк не принуждает ;)

    Вот в первую очередь из-за дебилов у меня такое отношение к фреймворкам.
    Говорят, фреймворк дисциплинирует, все пишите на фреймворках.
    А нифига. Это только привело говнокодеров.

    И чем это отличается от вызова функции рендера?))))

    Но это не функция рендера.

    Тогда нафига авторендер?))

    Чтобы не заморачиваться рендерингом. :)

    И нафига они тогда в фреймворке?)))

    Чтобы все сторонние решения имели один интерфейс для добавления пунктов меню и хлебных крошек. А не как вздумается разработчику…
    Потом налеплять говна и разбирайся с ним.

    в некоторых фреймворках виджет может содержать контроллеры, модели, вьюхи.

    На самом деле это лишняя сущность.
    Выходит каша. Фиг поймешь, где что искать.

    Пруф?)))

    Зачем пруф? Это разве не ясно, что виджеты пятое колесо? А все из-за того что в неверном понимании MVC возможен вызов только одного контроллера.

    Для большинства разработчиков, index.php — это некий лоадер приложений

    Но по сути это контроллер.
    Ведь туда поступает запрос.

    Получается, любая php-функция — это часть модели, верно?

    Это Вы слишком далеко копнули.

    Именно так. Меню — это дизайн+верстка, а не код.

    Я не о html+css, а интерфейсе для построения массива пунктов меню…

    Ясен-красен, что каждый будет использовать свой шаблон :)

    Это заголовок поста.

    По сути это хлебные крошки, так как показывает иерархию.
  • PHP: неправильный путь
    0
    Уточнение — предполагается вами, а не фреймворком.

    Перечитайте еще раз ссылку на документацию.
    На предыдущих работах так и было.

    Не вижу ни в документации, ни в коде запрета реализовывать иначе.

    А я говорил о запрете реализовать иначе? Я говорил о бестпрактис…

    Через какое-то время появляется контроллер top_comments или fb_comments, например, который обладает своей логикой, но вывод должен быть идентичен. Варианты? Копи-паст?

    А при чем тут авторендеринг?
    Указывайте в вызове контроллера шаблон, который нужно подхватить.

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

    Я тоже за явность.
    Но во фреймворках неявности и магии побольше :)
    А если что-то и явно, то оно спрятано в тумане в куче абстракций.

    С чего-бы?))) Вот меню или хлебные крошки в фреймворке — это да, лишние сущности. А виджет — это расширение функционала.

    Меню и хлебные крошки сущности не архитектурные, а прикладные.
    А виджеты и контроллеры дублируют друг друга.
    Также это дублирование кода самого фреймворка.

    Мдя…

    Туда поступает запрос и там решаем что делать.
    Этот контроллер может вызвать другой контроллер для обработки запроса.
    Я ж говорю, у фреймворков своеобразное понимание МВЦ.

    Чего?! Vendor = model?! Т.е. js/css/cli у вас в моделях? И документация тоже?

    Для меня модель — весь код, на который я опираюсь и вызываю.
    А js тоже делится на MVC, но с точки зрения бекэнда — это V
    css — V
    документация — это документация.

    Я вам больше скажу — в php всегда можно вызвать любой код откуда угодно ;)


    Ну да, глобалы рулят :)
    Хотя не любой, goto не везде можно вызвать.

    Зачем плодить сущности? :)

    У меня большинство задач решается контроллерами и я не парюсь, взять стул, машину или кровать :)
    Я говорю, возьми и сделай.

    Какое-то подобие плагинов есть, но сильно не используется.

    Т.е. скрипт зависит от используемого веб-сервера. Прелестно)))

    Не зависит.
    Раньше работало на nginx+apache, сейчас на nginx.
    Скрипты при переезде не правил.
    Фреймворки тоже зависят от веб-сервера, чтобы тот указал точку входа на /index.php.

    Приехали… Одна из задач любого деплоера — пересобрать/изменить параметры вызова статики…

    У нас это делает gulp.
    И статику кто вызывает? Фреймворк. Значит деплоер должен подсунуть ему эту информацию.
    Но деплоеры используются на более сложных проектах (как и упомянутый выше gulp).

    header(...) / $this-response->setHeader('...') — не вижу где сложность в фреймворке, но простота в нативе.

    У меня поддержка на уровне ядра.
    А любые сторонние «компоненты» будут выпадать из этого функционала.

    вообще не понял.

    Допустим перевода на русский нету, тогда используем переводы в порядке наличия из языков фоллбеков: украинский, английский.

    filemtime. при чем тут вообще фреймворки?))))

    То есть Вы все таки будете дописывать ко всем файлам filemtime вместо деплоера? :)

    Память/скорость работы.

    Это понятно.
    Я имею в виду какую задачу реализовывать.

    Большинству не нужны меню и хлебные крошки.

    Меню? О, да.

    Покажете хлебные крошки на этой странице?)))

    Разработка → PHP: неправильный путь :)
  • Сортировка огромного файла с массивом при известном словаре данных
    +1
    1. Создаём массив int[10000]. В ОЗУ это займёт 40 Мб. На C# (на других языках чуть больше).

    Может 40 кБ?

    for (j = 0; j < arr[i]; j++) // Цикл, сколько раз встречался = значение нашего массиваRAM
        {
            file3.WriteLine(i); //Записываем индекс нашего массива, а не его значение
        }
    


    Лучше как-то так (PHP):
    $buffer = str_repeat($i."\n", $arr[$i]);
    file_put_contents(file3, $buffer, FILE_APPEND | LOCK_EX);
    


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

    П.С. Что у вас за стиль с дополнительной табуляцией для {? :)
  • Табы или пробелы? Анализ 400 тысяч репозиториев GitHub, миллиарда файлов, 14 ТБ кода
    0
    В таблице [contents] записаны файлы без своих дубликатов. Ниже указано общее количество уникальных файлов и их суммарный размер. Дубликаты файлов не учитывались в ходе анализа.

    А по запросу кажется, что дубликаты учитываются. Или что такое copies?

    Анализ каждой из строк 133 Гб кода занял 16 секунд. Добиться такой скорости помог все тот же BigQuery.

    Это чудо!
    Или это повторный запрос/запрос из кеша и все данные лежали в оперативке? :)

    П.С.
    Для себя использую табы, по текущей работе — пробелы.
  • Табы или пробелы? Анализ 400 тысяч репозиториев GitHub, миллиарда файлов, 14 ТБ кода
    0
    Это все браузеры вроде так (на всех сайтах) :(
  • ООП будущего: Барух Садогурский и Егор Бугаенко о том, как мы будем программировать через 20 лет
    0
    Зато не надо писать кучу кода.

    Эту задачу решает не только ОРМ

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

    Вот неоптимальные запросы как раз не хочется руками переписывать.
    В одном случае пришлось просто явно разбить запрос на 2 вызова ORM, хотя под капотом там было тоже 2 запроса изначально.
    Руками можно писать запросы, которые сложно выразить через абстракцию.
  • PHP: неправильный путь
    0
    У вас? Или у создателей фреймворков? А какое «правильное понимание mvc»?

    У создателей. MVC — это просто разделение кода. А они преподносят MVC как непойми какое достижение. Ну и были указаны конкретные возражения против понимания MVC фреймворками.

    А в каком это фреймворке есть готовые модели под мою задачу?

    Фреймворк не дает реализации. Но предполагается что реализация и код сущности БД будет в одном файле/классе.

    Слово «может» принципиально не замечаете))). Фреймворк не заставляет класть в модель эти методы.

    Перейдите по ссылке на документацию…

    И это правильно! Вот в phalcon этого нет и мне очень не удобно.

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

    Ой… Как шаблон проектирования связан с реализацией сущности?

    Это лишняя сущность.

    Ок, вопрос тогда такой — что такое index.php в парадигме mvc?

    Контроллер

    А как к этой парадигме относится папочка vendor?

    Модель

    Хм… Повеселило… И не должно быть.

    Вообще-то есть, но не афишируется :)

    что для подобных задач надо юзать модули/плагины/виджеты/etc

    Зачем плодить сущности? :)

    Собственно, у вас контроллер = виджет

    Да.

    а роутер = контроллер (скорее всего)

    Основной роутинг на веб-сервере. А контроллер уже сам разбирает параметры.

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

    А это зачем? Подобные вещи лежат на деплоере, на клиенте (браузере), на сервере (nginx), но никак не на фреймворке.


    Клиент закеширует статику и сервер хоть и знает, что она изменилась, ничем не поможет.
    А чем может помочь деплоер, если у клиента статика закеширована?
    Это можно решить gulp-ом или чем-то подобным, но gulp для маленьких проектов вряд ли используют.

    .
    Насколько помню — 3-й раз прошу дать пример.

    Вроде давал. Например тут:
    http://govnokod.ru/19878#comment323742
    Например, отдача 304 ответа, языки-фоллбеки для переводов определенного языка, та же дописка даты модификации файла у ресурсов.


    Поспорим, что мой код на фреймворке будет быстрее вашего на вашей самописи?))))

    Что будем мерять? :)

    В вашем ядре есть работа с imap, imagick, webdav, aws? Нету?

    Нет. Это большинству не нужно. Есть обертка для ресайзинг файлов над php функциями.

    Нафига мне хлебные крошки, если нет элементарного?!

    Хлебные крошки нужны большему количеству :)
  • ООП будущего: Барух Садогурский и Егор Бугаенко о том, как мы будем программировать через 20 лет
    0
    По работе он используется.

    Жрет память, иногда строит не совсем оптимальные или даже неадекватные запросы.
  • HTTP/2 уже здесь но спрайт-сеты ещё не умерли
    0
    Для бесплатных сертификатов уже даже выбор есть, я знаю три центра выдачи бесплатных сертификатов.

    С тем, что столкнулся, это какая-то муть. Для какого-то сертификата нужно на сервере установить демон, который будет ходить и обновлять сертификат, так как он выдается на 3 мес. Дополнительная дыра в безопасности. Да и на шареде не будет работать. (перечитал ваш коммент до конца, да это, вроде и был Let's Encrypt)

    Но да, есть бесплатные cloudflare при использовании его cdn, работает автоматом и ничего настраивать не нужно.
    Благодаря SNI

    Я имел в виду не поддерживают http/2, но и касательно SNI — он тоже не везде.

    Хотя, кому нужен https, они на него перейдут, но вряд ли из-за http/2. http/2 — это бонус.
  • PHP: неправильный путь
    0
    Статью я писал не с целью троллинга, а для систематизации недостатков фреймворков, дабы давать ее оппонентам, а не каждый раз вспоминать аргументы.
  • PHP: неправильный путь
    0
    Так как часто аппелируют тем, что в статье только Yii 1, добавил абзац в статью:
    Тем, кто скажет, что я работал/знаю только Yii, только Yii говно, а все остальные норм
    Вообще-то упоминаются и другие…
    На работе используется Yii 1.1. Так как он под рукой, то он «попал под раздачу». Указаны примеры, которые меня раздражают, к пунктам недостатков.
    Целенаправленно проверять другие фреймворки лень. Как сказано выше, это не значит, что пункт не подходит к другим фреймворкам. Скоро (не знаю когда) добавится Laravel.
    Желающие могут указать свои трудности, с которыми пришлось столкнутся. Они будут добавлены в статью.

    Трудности добавляйте, дабы сделать сравнение фреймворков. Тут недавно была статья https://habrahabr.ru/post/305626/
    Но это курам на смех.

    Также в начале статьи есть подготавливающий первый абзац:
    Статья написана прежде всего с позиции разработчика, который пишет код для себя. Никого не заставляю писать на самописи, не всем это подойдет.
  • PHP: неправильный путь
    0
    Но танцы же начинаются… :)
  • PHP: неправильный путь
    0
    Я просто думал, что они (мейнстримовые фреймворки) решают какие-то абстрактные надуманные задачи вместо реальных:
    http://blog.kpitv.net/article/frameworks-1/
    :^)
  • ООП будущего: Барух Садогурский и Егор Бугаенко о том, как мы будем программировать через 20 лет
    0
    +1
    Тесты не гарантируют, что багов нету.
    Разве показывают, что что-то сломалось при изменении. Но скорее всего это сломался сам тест, так как он не ложится на измененный код. :)
  • ООП будущего: Барух Садогурский и Егор Бугаенко о том, как мы будем программировать через 20 лет
    0
    вся красота ООП

    Можно по пунктам? Или сравнение с текущим ООП.
    Мы же даём программисту в Java управлять файлом на диске — открыли, закрыли. Почему то же самое нельзя делать с памятью?

    Используйте C. Java ж вроде позиционируется как вещь, которой тяжелее выстрелить себе в ногу. Автоуборка мусора и все такое.
    АОП

    В Java нету чего-то типа dll? :)
    И потом все практики за ними должны идти. А мы идём от практики к теории.

    Есть много теоретически хороших, но мертвых языков. :)
    А большинство языков программирования создаётся в битве за популярность. Они понимают, что если дать людям не 4 инструмента, а 14, упрощающих то, что и так делают, то их станут использовать с большим интересом.

    Так ты сам такой. Хочешь разные фишки из коробки.

    А чем плохи геттеры и сеттеры? :)
    То что писал автор — ерунда.
    Хотя я их практически не использую, так как использую ООП не фанатично, поэтому нужды в них нет.

    Кстати, что думаете о goto? :^)

    Там будет про ORM много

    ОРМ — говно. +1

    MVC

    А что в нем плохого? Это всего лишь разделение кода. Или нужно все лепить в кучу?

    Там будет про аннотации

    Аннотации это фигня, код в комментариях, бред.

    Относительно ф-и max. Это оверинжиниринг.

    Основной язык — PHP.
  • Как использовать UrlManager для настройки роутинга и создания «дружелюбных» URL
    –1
    Вместо
    if (isset($params['zip']) && !empty($params['zip']))

    Достаточно
    
    if (!empty($params['zip']))
    

    При анализе или создании URL-адреса, URL-менеджер анализирует правила URL в том порядке, в котором они были объявлены. Таким образом, вы можете рассмотреть возможность корректировки порядка правил URL так, чтобы более определенные и/или часто используемые правила размещались перед менее использованными правилами.

    А как насчет вынести роутинг на веб-сервер? :)
    добавляем следующую строку в файл /modules/lease/views/frontend/lease/view.php

    Разве правильно устанавливать заголовок в шаблоне?
    Хотя я некоторые действия тоже делаю в шаблоне, так как контроллеры кешируются, а шаблоны нет.
  • Преимущества systemd-networkd на виртуальных серверах Linux
    0
    У меня на не особо нагруженном CentOS 7 NetworkManager занимает 3.6 МБ

    А если сеть не заведется, то что делать, не имея доступа к серверу? Делать бекапы?
  • HTTP/2 уже здесь но спрайт-сеты ещё не умерли
    –2
    Использование http/2 ведет к использованию шифрования.
    Если отдавать много жирной статики, то будет дополнительная нагрузка на проц для ее шифрования.
    А также задержку дает начальная установка соединения.

    Для себя пока остаюсь на http, никаких секретных данных не передается, ну кроме паролей.

    А также сертификат стоит денег.

    А также не все сервера его поддерживают (шаред-хостинги).
  • PHP: неправильный путь
    0
    А разве на фреймворках есть из коробки «добавить новое вложенное меню»?
  • PHP: неправильный путь
    –5
    Читал в оригинале.
    Как бальзам на душу :)

    AloneCoder добавьте, пожалуйста, перевод на гитхаб, откуда переводили.
  • 15 ошибок или советов HTML и CSS
    0
    У всех уровень разный :)
  • 15 ошибок или советов HTML и CSS
    0
    Повторенье — мать ученья :)
  • Синий. Нет! Жёлтый! — или — Дают ли новые языки программирования прирост скорости разработки
    –1
    >Это вопрос не строгости типизации, а объёма хранимых метаданных.

    Это вопрос динамичности — статичности.

    В PHP метаданные хранить не нужно.
    Есть Reflection* классы, которые возвращают нужную информацию.
    Но я ими не пользуюсь :) И хз как они влияют на скорость.
    А если хранить метаданные, то это дублирование кода. :)