> И стили и позиционирование должно быть грамотное и последовательное.
Ну другие требования диктуют поисковики. :)
Вверху исходника часто помещается текст, предназначенный для тупого робота, а потом он или опускается вниз или совсем не показывается. :)
Я тоже против абсолютного позиционирования не к месту с позиции разработчика, которому с этим кодом потом работать.
Но часто без него никак. Особенно relative + absolute.
Из-за адаптации под особых людей не должны страдать обычные люди.
П.С.
О парсере.
Предпросмотром многие не пользуются, полагаясь на логичность парсера. :)
Да и толку от предпросмотра, если баг случился и его можно исправить в отведенное для редактирования время.
А если в отведенное время нельзя исправить или вообще нельзя исправить. :)
Я хотел не разметку использовать а тег article написать, надеясь, что умный парсер его обработает, как следует, а он взял тупо удалил его.
Да и глупый запрет на разметку при отрицательной карме. Баньте вообще пользователей.
Вот такое отношение к обычным пользователей. А вы хотите, чтобы думали об особых. :)
Многие (если не большинство) пункты выполнять нужно и для обычных пользователей.
Многие пункты трудно (или бессмысленно) выполнимы, так как явно это или не ЦА или те же титры.
Многие вещи делаются умышленно с урезанными возможностями даже для обычных пользователей с целью выманывания денег у лохов (это называется повышением конверсии)
Многие задачи лучше возложить на другой уровень:
перевод браузером
озвучивание (хотя говорится, что пользователи и так пользуются озвучивателями)
наложение титров
изменение стилевой схемы
Некоторые пункты спорные: не использовать italic underline capital. (но ссылки должны быть подчеркнутыми...)
Я не понимаю, с чем Вы спорили.
Я говорю, что на фреймворках нет из коробки «добавить новое вложенное меню», об этом и в статье (и многом другом, чего тоже нету).
Вы говорите, что нет и не нужно.
Спорьте тогда с предыдущими ораторами.
Или они используют какие-то неправильные фреймворки? :)
>Например, нечитаем скринридером (из-за несоответствия последовательности текста в коде с отображением, например).
Скринридер читает текст с начала страницы и до конца, каждый раз все пункты меню, шапку, рекламу?
Как правило, текст в отображении не совсем такой, как в коде.
Часто это сделано для СЕО.
Ну и CSS поменял блоки. Не лезть же в html, если для этого предназначен CSS.
А также абсолютное/фиксированное позиционирование.
И это скорее всего глупый скринридер, пускай правильно рендерит у себя, а потом думает, что читать.
Интересно, как пользователь знал куда кликнуть в ПС по скринридеру. Или можно типа кликнуть в момент чтения?
Мне кажется, проблема легко решаемая тегом article, лишь бы его не стали использовать где не попадя.
Разработчикам будет выдаваться скринридер?
Вот нам мне выдают эплы/андроиды, я под них и не оптимизирую. :)
П.С.
До чего же у хабра дибилоидный парсер.
П.П.С.
Пользователи уже не раз на него жаловались, но всем не до этого, а вы говорите о людях с ограниченными возможностями.
Что значит нечитаем?
Можно подкрутить масштаб.
Каким образом пользователь попал на этот сайт, если 99+% сайтов нечитаемы?
Если ему посоветоваль обычный пользователь, то пусть он напишет пожелание.
А ИЕ7/8?
Старые ИЕ могут использовать бедные люди.
У людей с ограниченными возможностями есть родственники. Оффтоп: ИЕ заставляет использовать работодатель-дурак якобы из-за безопасности, хотя это решето еще то.
Я иногда прошу помочь разобрать каптчу. :)
Не знаю, но возможно есть сайты специально для таких людей.
Я не выступаю против этих людей, просто мне кажется сайт мало что изменит в его доступности для них, чего они не могут сделать сами: масштаб.
Много телеканалов имеют сурдоперевод или титры?
Напишите список основных пунктов, которые нужно поддерживать, а то тот талмуд, что предоставил оратор снизу вряд ли многие будут придерживаться (собственно и не придерживаются :) )
Вы и все плюсующие сколько процентов выполняете предписаний?
Или вы так называемые диванные воины?
Вы сравниваете с позиции пользователя. Но чтобы пользователь на что-то влиял он должен за это платить или быть ЦА, чтобы за него заплатил бизнес, а потом отбивал затраты.
Я же сравнивал с позиции разработчика/бизнеса.
Они не поддерживают что ИЕ6, что то, о чем мы говорим.
Разве я не прав или не об этом статья?
Не понимаю меня минусующего и Вас плюсующих. :)
Хитростей как с ИЕ-то может и не нужно, но там целый талмуд.
А за это никто не будет платить (тратить время), как и в случае с ИЕ6.
Вот Вы поддерживаете сколько процентов от того, что там написано?
Сочувствую). Но тут зависит от программиста, фреймворк не принуждает ;)
Вот в первую очередь из-за дебилов у меня такое отношение к фреймворкам.
Говорят, фреймворк дисциплинирует, все пишите на фреймворках.
А нифига. Это только привело говнокодеров.
И чем это отличается от вызова функции рендера?))))
Но это не функция рендера.
Тогда нафига авторендер?))
Чтобы не заморачиваться рендерингом. :)
И нафига они тогда в фреймворке?)))
Чтобы все сторонние решения имели один интерфейс для добавления пунктов меню и хлебных крошек. А не как вздумается разработчику…
Потом налеплять говна и разбирайся с ним.
в некоторых фреймворках виджет может содержать контроллеры, модели, вьюхи.
На самом деле это лишняя сущность.
Выходит каша. Фиг поймешь, где что искать.
Пруф?)))
Зачем пруф? Это разве не ясно, что виджеты пятое колесо? А все из-за того что в неверном понимании MVC возможен вызов только одного контроллера.
Для большинства разработчиков, index.php — это некий лоадер приложений
Но по сути это контроллер.
Ведь туда поступает запрос.
Получается, любая php-функция — это часть модели, верно?
Это Вы слишком далеко копнули.
Именно так. Меню — это дизайн+верстка, а не код.
Я не о html+css, а интерфейсе для построения массива пунктов меню…
Ясен-красен, что каждый будет использовать свой шаблон :)
Это заголовок поста.
По сути это хлебные крошки, так как показывает иерархию.
Уточнение — предполагается вами, а не фреймворком.
Перечитайте еще раз ссылку на документацию.
На предыдущих работах так и было.
Не вижу ни в документации, ни в коде запрета реализовывать иначе.
А я говорил о запрете реализовать иначе? Я говорил о бестпрактис…
Через какое-то время появляется контроллер 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 вместо деплоера? :)
Память/скорость работы.
Это понятно.
Я имею в виду какую задачу реализовывать.
1. Создаём массив int[10000]. В ОЗУ это займёт 40 Мб. На C# (на других языках чуть больше).
Может 40 кБ?
for (j = 0; j < arr[i]; j++) // Цикл, сколько раз встречался = значение нашего массиваRAM
{
file3.WriteLine(i); //Записываем индекс нашего массива, а не его значение
}
В таблице [contents] записаны файлы без своих дубликатов. Ниже указано общее количество уникальных файлов и их суммарный размер. Дубликаты файлов не учитывались в ходе анализа.
А по запросу кажется, что дубликаты учитываются. Или что такое copies?
Анализ каждой из строк 133 Гб кода занял 16 секунд. Добиться такой скорости помог все тот же BigQuery.
Это чудо!
Или это повторный запрос/запрос из кеша и все данные лежали в оперативке? :)
П.С.
Для себя использую табы, по текущей работе — пробелы.
Ну другие требования диктуют поисковики. :)
Вверху исходника часто помещается текст, предназначенный для тупого робота, а потом он или опускается вниз или совсем не показывается. :)
Я тоже против абсолютного позиционирования не к месту с позиции разработчика, которому с этим кодом потом работать.
Но часто без него никак. Особенно relative + absolute.
Из-за адаптации под особых людей не должны страдать обычные люди.
П.С.
О парсере.
Предпросмотром многие не пользуются, полагаясь на логичность парсера. :)
Да и толку от предпросмотра, если баг случился и его можно исправить в отведенное для редактирования время.
А если в отведенное время нельзя исправить или вообще нельзя исправить. :)
Я хотел не разметку использовать а тег article написать, надеясь, что умный парсер его обработает, как следует, а он взял тупо удалил его.
Да и глупый запрет на разметку при отрицательной карме. Баньте вообще пользователей.
Вот такое отношение к обычным пользователей. А вы хотите, чтобы думали об особых. :)
Многие пункты выполнять вместе немного тупо.
Многие (если не большинство) пункты выполнять нужно и для обычных пользователей.
Многие пункты трудно (или бессмысленно) выполнимы, так как явно это или не ЦА или те же титры.
Многие вещи делаются умышленно с урезанными возможностями даже для обычных пользователей с целью выманывания денег у лохов (это называется повышением конверсии)
Многие задачи лучше возложить на другой уровень:
перевод браузером
озвучивание (хотя говорится, что пользователи и так пользуются озвучивателями)
наложение титров
изменение стилевой схемы
Некоторые пункты спорные: не использовать italic underline capital. (но ссылки должны быть подчеркнутыми...)
Потому что говнокодеров заманили на фреймворки.
Ну или спрашивают, как обойти подводные камни фреймворка.
А в грамотной самописи их не будет (этих камней).
Поэтому многие задачи приходится решать порывшись в исходниках.
Я говорю, что на фреймворках нет из коробки «добавить новое вложенное меню», об этом и в статье (и многом другом, чего тоже нету).
Вы говорите, что нет и не нужно.
Спорьте тогда с предыдущими ораторами.
Или они используют какие-то неправильные фреймворки? :)
>Model вы рассматриваете только как ActiveRecord
Лично я рассматриваю шире.
А фреймворки примерно так (ну или иную конкретную реализацию хождения в БД).
МВЦ в:
https://ru.wikipedia.org/wiki/Symfony
https://ru.wikipedia.org/wiki/Laravel
Об остальных смысла говорить нету.
Скринридер читает текст с начала страницы и до конца, каждый раз все пункты меню, шапку, рекламу?
Как правило, текст в отображении не совсем такой, как в коде.
Часто это сделано для СЕО.
Ну и CSS поменял блоки. Не лезть же в html, если для этого предназначен CSS.
А также абсолютное/фиксированное позиционирование.
И это скорее всего глупый скринридер, пускай правильно рендерит у себя, а потом думает, что читать.
Интересно, как пользователь знал куда кликнуть в ПС по скринридеру. Или можно типа кликнуть в момент чтения?
Мне кажется, проблема легко решаемая тегом article, лишь бы его не стали использовать где не попадя.
Разработчикам будет выдаваться скринридер?
Вот нам мне выдают эплы/андроиды, я под них и не оптимизирую. :)
П.С.
До чего же у хабра дибилоидный парсер.
П.П.С.
Пользователи уже не раз на него жаловались, но всем не до этого, а вы говорите о людях с ограниченными возможностями.
разработчики, пожалуйста, не используйте веб-шрифты или проверяйте их в Опере 12, а то ваши сайты часто нечитаемы
Это может быть как 1 из 100500 факторов.
Можно подкрутить масштаб.
Каким образом пользователь попал на этот сайт, если 99+% сайтов нечитаемы?
Если ему посоветоваль обычный пользователь, то пусть он напишет пожелание.
Старые ИЕ могут использовать бедные люди.
У людей с ограниченными возможностями есть родственники. Оффтоп: ИЕ заставляет использовать работодатель-дурак якобы из-за безопасности, хотя это решето еще то.
Я иногда прошу помочь разобрать каптчу. :)
Не знаю, но возможно есть сайты специально для таких людей.
Я не выступаю против этих людей, просто мне кажется сайт мало что изменит в его доступности для них, чего они не могут сделать сами: масштаб.
Много телеканалов имеют сурдоперевод или титры?
Напишите список основных пунктов, которые нужно поддерживать, а то тот талмуд, что предоставил оратор снизу вряд ли многие будут придерживаться (собственно и не придерживаются :) )
Вы и все плюсующие сколько процентов выполняете предписаний?
Или вы так называемые диванные воины?
Вы сравниваете с позиции пользователя. Но чтобы пользователь на что-то влиял он должен за это платить или быть ЦА, чтобы за него заплатил бизнес, а потом отбивал затраты.
Я же сравнивал с позиции разработчика/бизнеса.
Они не поддерживают что ИЕ6, что то, о чем мы говорим.
Разве я не прав или не об этом статья?
Не понимаю меня минусующего и Вас плюсующих. :)
Или они живут в параллельной вселенной?
А за это никто не будет платить (тратить время), как и в случае с ИЕ6.
Вот Вы поддерживаете сколько процентов от того, что там написано?
Пишу жестоко, но правду.
А также Вы можете добавить объективности статье:
О каких подменных понятиях Вы говорите? :)
Это то же самое.
Хотите — плодите сущности. Я в этом смыла не вижу.
О-ло-ло. :)
То есть у Вас по коду раскиданы голые подключения скриптов:
Ну ок.
Так я как раз о гет-параметре и говорю. Чтобы его не вручную менять, а он сам менялся и не парится.
304 ответ. Зачем его править?
Вы как узнаете, что страничка не изменилась?
Я этим не парюсь.
Этим занимается ядро.
Вот в первую очередь из-за дебилов у меня такое отношение к фреймворкам.
Говорят, фреймворк дисциплинирует, все пишите на фреймворках.
А нифига. Это только привело говнокодеров.
Но это не функция рендера.
Чтобы не заморачиваться рендерингом. :)
Чтобы все сторонние решения имели один интерфейс для добавления пунктов меню и хлебных крошек. А не как вздумается разработчику…
Потом налеплять говна и разбирайся с ним.
На самом деле это лишняя сущность.
Выходит каша. Фиг поймешь, где что искать.
Зачем пруф? Это разве не ясно, что виджеты пятое колесо? А все из-за того что в неверном понимании MVC возможен вызов только одного контроллера.
Но по сути это контроллер.
Ведь туда поступает запрос.
Это Вы слишком далеко копнули.
Я не о html+css, а интерфейсе для построения массива пунктов меню…
Ясен-красен, что каждый будет использовать свой шаблон :)
По сути это хлебные крошки, так как показывает иерархию.
Перечитайте еще раз ссылку на документацию.
На предыдущих работах так и было.
А я говорил о запрете реализовать иначе? Я говорил о бестпрактис…
А при чем тут авторендеринг?
Указывайте в вызове контроллера шаблон, который нужно подхватить.
Я тоже за явность.
Но во фреймворках неявности и магии побольше :)
А если что-то и явно, то оно спрятано в тумане в куче абстракций.
Меню и хлебные крошки сущности не архитектурные, а прикладные.
А виджеты и контроллеры дублируют друг друга.
Также это дублирование кода самого фреймворка.
Туда поступает запрос и там решаем что делать.
Этот контроллер может вызвать другой контроллер для обработки запроса.
Я ж говорю, у фреймворков своеобразное понимание МВЦ.
Для меня модель — весь код, на который я опираюсь и вызываю.
А js тоже делится на MVC, но с точки зрения бекэнда — это V
css — V
документация — это документация.
Ну да, глобалы рулят :)
Хотя не любой, goto не везде можно вызвать.
У меня большинство задач решается контроллерами и я не парюсь, взять стул, машину или кровать :)
Я говорю, возьми и сделай.
Какое-то подобие плагинов есть, но сильно не используется.
Не зависит.
Раньше работало на nginx+apache, сейчас на nginx.
Скрипты при переезде не правил.
Фреймворки тоже зависят от веб-сервера, чтобы тот указал точку входа на /index.php.
У нас это делает gulp.
И статику кто вызывает? Фреймворк. Значит деплоер должен подсунуть ему эту информацию.
Но деплоеры используются на более сложных проектах (как и упомянутый выше gulp).
У меня поддержка на уровне ядра.
А любые сторонние «компоненты» будут выпадать из этого функционала.
Допустим перевода на русский нету, тогда используем переводы в порядке наличия из языков фоллбеков: украинский, английский.
То есть Вы все таки будете дописывать ко всем файлам filemtime вместо деплоера? :)
Это понятно.
Я имею в виду какую задачу реализовывать.
Меню? О, да.
Разработка → PHP: неправильный путь :)
Может 40 кБ?
Лучше как-то так (PHP):
Приходилось переделывать mysql-дамп под postgres — значительное ускорение дала буферизация записи.
П.С. Что у вас за стиль с дополнительной табуляцией для {? :)
А по запросу кажется, что дубликаты учитываются. Или что такое copies?
Это чудо!
Или это повторный запрос/запрос из кеша и все данные лежали в оперативке? :)
П.С.
Для себя использую табы, по текущей работе — пробелы.