[image]

HTML / CSS / JS

Споры про реализацию
 
1 5 6 7 8 9 19
RU Gudleifr #13.01.2022 18:34  @Татарин#13.01.2022 18:21
+
-
edit
 

Gudleifr

опытный

Татарин> Что именно с "хренью"(тм) не так? Плохо отформатирована?
Жутко избыточна.
   95.095.0
RU Zenitchik #13.01.2022 18:34  @Татарин#13.01.2022 18:28
+
-
edit
 

Zenitchik

старожил

Татарин> regexp.test с глобальным ключом? Нет.

Ты издеваешься чтоли?
Я думал, ты спрашиваешь, почему у regexp с global такое поведение. Я ответил - что применений тьма, тот же exec.
Почему у регулярки в test состояние меняется по тем же правилам, что и в exec? - для единообразия, разумеется. Что не единообразно - то безобразно.

Опус про то, что похоже, но ведёт себя непохоже - я опускаю, это, пардон, типично г**нокодерские отмазки про плохой язык.
Не похож, потому что не обязан быть похож.
Если программист не знает языка, на котором пишет - значит он так себе программист.
Если человек думает, что можно с одного языка, хоть трижды похожего, пересесть на другой не читая спеку - значит он дурак и г**нокодер.
   96.0.4664.13796.0.4664.137
LT Bredonosec #13.01.2022 18:36  @Gudleifr#13.01.2022 17:49
+
+1
-
edit
 
Bredonosec>> хтмл может сам теги, аналогичные используемым в стилях, делать, но это подход через жопу.
Gudleifr> Именно. Поэтому стили не нужны. Нужна макрогенерация HTML.
чушь.
Это приведет только к росту г**нокода.

Bredonosec>> Это ПРЕДСТАВЛЕНИЕ контента!А не выполнение макрокоманды!
Gudleifr> Именно. Поэтому стили не нужны. Нужна макрогенерация HTML.
впечатление ,что вы не понимаете смысл произносимых вами слов.

Bredonosec>> г**нокодеры...
Gudleifr> Все дальнейшее,
мешает вам произносить мантру. Но это не мои проблемы.
   91.091.0
LT Bredonosec #13.01.2022 18:41  @Zenitchik#13.01.2022 18:22
+
-
edit
 
Zenitchik> Потому что при первой проверке, регулярка запомнила позицию найденного символа в строке, и следующую проверку начала после него.
Zenitchik> Второй буквы "a" в проверяемой строке нет, поэтому позиция была сброшена на -1.
спасибо, логику понял... но как-то уж очень неочевидно и контринтуитивно....
   91.091.0
LT Bredonosec #13.01.2022 18:47  @Gudleifr#13.01.2022 18:34
+
+1
-
edit
 
Gudleifr> Жутко избыточна.
потому что абаза пережила емнис 3 миграции с движка на движок и еще кучу мелких и средних изменений.
И потому, что страницы НЕ пишутся ручками, а генерируются при помощи кучи модулей, которые писались в разное время на протяжении 18 лет (!!!), естественно, забыв, что где чем подпиралось ранее.
И меж модулями нужна совместимость. А основная работа Ромы была не пилить абазу, а выполнять более другую работу за деньги. Потому временные костыли использовались многократно.
   91.091.0
RU Zenitchik #13.01.2022 18:48  @Gudleifr#13.01.2022 18:34
+
-
edit
 

Zenitchik

старожил

Татарин>> Что именно с "хренью"(тм) не так? Плохо отформатирована?
Gudleifr> Жутко избыточна.

В каком месте? Выдели цветом или шрифтом, без чего можно обойтись.
   96.0.4664.13796.0.4664.137
LT Bredonosec #13.01.2022 18:58  @Zenitchik#13.01.2022 18:48
+
+1
-
edit
 
Zenitchik> В каком месте? Выдели цветом или шрифтом, без чего можно обойтись.
в принципе, вёрстка табличная, можно сильно компактнее нарисовать, (особенно если переписать целиком) но!
Но кто знает, где какие классы используются, и что еще где посыпется от убирания пятитонного вентилятора из ванной ©давняя хохма про костыли)
Можно придумать уникальные, но в случае последующего изменения "почему-то" вдруг часть не изменится и поди угадывай, кто держит..
Потому подход "работает - не трогай!"..
   91.091.0
RU Gudleifr #13.01.2022 18:59  @Bredonosec#13.01.2022 18:36
+
-
edit
 

Gudleifr

опытный

Bredonosec> Но это не мои проблемы.
Это пока Вы не столкнулись с реальной потребностью что-то запрограммировать, а не обойтись копипастой.

Zenitchik> В каком месте?
Например, замечательный пассаж
<div class="to-right"><div class="to-left">

Bredonosec> которые писались в разное время на протяжении 18 лет
А мой скрипт протянул примерно столько же практически без правок. И что?
   95.095.0
+
+2
-
edit
 

yacc

старожил
★★★
Bredonosec>> хтмл может сам теги, аналогичные используемым в стилях, делать, но это подход через жопу.
Gudleifr> Именно. Поэтому стили не нужны. Нужна макрогенерация HTML.
Шел 2022 год, а люди открывали препроцессор С ну или там CGI на shell-скриптах с использованием sed... :D

И веб-1 - когда при нажатии кнопки не код в браузере выполняется, а идет запрос к CGI т.е. каждое нажатие - сетевой траффик ...
   92.0.4515.10792.0.4515.107

Gudleifr

опытный

yacc> Шел 2022 год, а люди открывали препроцессор С ну или там CGI
Да, это проблема. Скоро люди, помнящие, как устроен компьютер, повыведутся. Большая часть молодежи воспринимает его, как волшебный калькулятор с миллионом кнопок на все случаи жизни. И кто больше кнопок запомнил, тот и лучший программист.

yacc> CGI
Ну, по крайней мере, это удобное решение "проблемы", о которой говорили в начале темы: избыток повторяющихся тегов. Сейчас, конечно, веб-дизайнер верит, что браузер сам подгружает именно то, что ему надо, волшебным способом.
   95.095.0

yacc

старожил
★★★
yacc>> Шел 2022 год, а люди открывали препроцессор С ну или там CGI
Gudleifr> Да, это проблема. Скоро люди, помнящие, как устроен компьютер, повыведутся.
Как повывелись люди, пишущие на машинных кодах на ЭВМ, когда массово пошел Фортран и Кобол
Вернемся к машинным кодам ?

Gudleifr> Ну, по крайней мере, это удобное решение "проблемы", о которой говорили в начале темы: избыток повторяющихся тегов.
Это "проблема" была изначально в самом HTML в виде наследования свойств
   92.0.4515.10792.0.4515.107

Gudleifr

опытный

yacc> Как повывелись люди, пишущие на машинных кодах на ЭВМ
Понимающие, что команды ЯВУ суть те же машинные коды. И их тоже имеет смысл генерировать автоматически.

yacc> Это "проблема" была изначально в самом HTML в виде наследования свойств
Вы опять не там свернули. Я имею в виду проблемы в головах защитников CSS.
   95.095.0
+
+3
-
edit
 

yacc

старожил
★★★
Gudleifr> Понимающие, что команды ЯВУ суть те же машинные коды. И их тоже имеет смысл генерировать автоматически.
SED-ом! В 2022 году :p

Gudleifr> Вы опять не там свернули. Я имею в виду проблемы в головах защитников CSS.
Прикиньте, я тоже не вижу смысла все атрибуты в тег писать сразу, если есть CSS

И да - а где же ваши заметки про бейсик вместо JS на стороне браузера ?
   92.0.4515.10792.0.4515.107
+
-1
-
edit
 

Gudleifr

опытный

yacc> SED-ом! В 2022 году
Почему бы и нет?

yacc> Прикиньте, я тоже не вижу смысла все атрибуты в тег писать сразу, если есть CSS
А в CSS - видите? Если древний SED умеет это гораздо быстрее Вас.

yacc> И да - а где же ваши заметки про бейсик вместо JS на стороне браузера ?
Там же где и раньше. Странно, да? Вам так интересно, что не можете их найти? Значит, защита от дурака на моем форуме на высоте.
   95.095.0
EE Татарин #13.01.2022 19:54  @Zenitchik#13.01.2022 18:34
+
+1
-
edit
 

Татарин

координатор
★★★★★
Zenitchik> Почему у регулярки в test состояние меняется по тем же правилам, что и в exec? - для единообразия, разумеется. Что не единообразно - то безобразно.
То, что тест по определению не должен бы менять состояния вне функции, но меняет - это фигня, сталыть, ради "однообразия"? :)
Ну, тогда надо было ещё и операторы "+" и "-" унифицировать заодно. :)


Zenitchik> Не похож, потому что не обязан быть похож.
Обязан. В этом-то и фишка, что обязан. Заимствовав синтаксис создатели языка взяли на себя неявное обязательство такую схожесть обеспечивать. Но нарушили его. Причём, там, где для этого не было ни причин, ни даже поводов.

Zenitchik> Опус про то, что похоже, но ведёт себя непохоже - я опускаю, это, пардон, типично г**нокодерские отмазки про плохой язык.
Это, пардон, очень дурной максимализм и оправдание г**нокода. Код не должен быть понятен любому, программист не должен соблюдать общую культуру (хотя бы в рамках SOLID), программа не должна работать при получении на вход неожиданного и т.п. и т.д. Да, не ДОЛЖНЫ.

Но именно это отличает нормального программиста от г**нокодера.
Нарушение традиций без причины при создании спек ЯС - это именно поведение г**нокодера, который не имеет внутреннего понимания, что хорошо и что плохо, и внезапно остался без внешних ограничений.
"Я что-то накодил, дальше ваши проблемы разобраться" - это именно подход при создании г**на.

Отмазки про плохой язык были бы, если б я, допустим, срывал сроки сдачи проектов на ЯС или, допустим, г**нокодил бы, оставлял бы баги и т.п. Тогда - да, ссылаться на язык это именно отмазки. Причём, гнилые.

Объективно существуют хорошие языки и плохие.
Видеть эту разницу - никак не признак плохого программиста, а наоборот - одно из минимальных требований к хорошему (хотя бы потому, что не умея сравнивать невозможно выбрать подходящий инструмент для конкретной задачи).
Попытка примитивной манипуляции в духе "нового платья короля" (мол, кто ругает бредятину в ЯС, тот г**нокодер не читавший спек) - это совсем уж по-детски и незачёт. :)

Zenitchik> Если программист не знает языка, на котором пишет - значит он так себе программист.
Знать используемый язык ты обязан.
Но это никак не уравнивает вообще все языки и вообще никак не оправдывает г**но в спецификациях языка.
   96.0.4664.11096.0.4664.110
EE Татарин #13.01.2022 20:09  @Gudleifr#13.01.2022 18:34
+
+1
-
edit
 

Татарин

координатор
★★★★★
Татарин>> Что именно с "хренью"(тм) не так? Плохо отформатирована?
Gudleifr> Жутко избыточна.
Ну, html вообще таков.

Компромисс между сроками разработки, лёгкостью поддержки и общей эффективностью.

Есть масса способов оптимизации ХТМЛ, но не всегда и не везде их имеет смысл применять. Потому что выигрыш того не стОит. Упёртый перфекционизм часто приводит к более ужасающим последствиям чем даже пофигизм, а уж просто хорошему работнику перфекционист проигрывает с разгромным счётом.

...
Но вообще говоря, CSS сильно уменьшают избыточность в описании.
Использование CSS для HTML эквивалентно операции нормализации базы данных.
Разбивка сложной таблицы с избыточностью на две связанные, вынес повторяющейся информации в таблицу-справочник, ссылка по ключу.
   96.0.4664.11096.0.4664.110
+
-
edit
 

tarasv

аксакал

Gudleifr> Например, замечательный пассаж
<div class="to-right"><div class="to-left">
Ваш вариант который отобразит это так как задумал дизайнер?
   97.0.4692.7197.0.4692.71
RU Gudleifr #13.01.2022 21:53  @Татарин#13.01.2022 20:09
+
-
edit
 

Gudleifr

опытный

Татарин> Ну, html вообще таков.
Именно! Поэтому особой экономии на "CSS на машине юзера" супротив "sed на машине дизайнера/сервере" не было даже во времена dial-up. Наоборот, мои юзеры хвалили страничку за скорость загрузки.

Татарин> Компромисс между сроками разработки, лёгкостью поддержки
И тут sed дает 100 очков вперед CSS. Документ легко читается, производимые над ним операции прозрачны.

Татарин> Ваш вариант который отобразит это так как задумал дизайнер?
Очевидно:
<div class="to-left">...</div><div class="to-right">
   95.095.0
+
+1
-
edit
 

tarasv

аксакал

Gudleifr> Очевидно:
<div class="to-left">...</div><div class="to-right">



Очевидно что это совершенно не то что задумал дизайнер. class="to-left" у всех div внутри [div class="to-right"] нужен для того чтобы кнопки в тулбаре находились горизонтально, а не вертикально.
   97.0.4692.7197.0.4692.71
+
-
edit
 

Gudleifr

опытный

tarasv> Очевидно что это совершенно не то что задумал дизайнер
Вы ошиблись в другом месте.
   95.095.0
+
+2
-
edit
 

tarasv

аксакал

tarasv>> Очевидно что это совершенно не то что задумал дизайнер
Gudleifr> Вы ошиблись в другом месте.

Ну так возьмите тот кусок HTML и покажите что вы имеете в виду

    <div class="head">
        <div class="to-left">
        </div>
        <div class="to-right">
            <div class="to-left"></div>
            <div class="to-left"></div>
            <div class="to-left"></div>
            <div class="half-transparent to-left"></div>
        </div>
        <div class="clear"></div>
    </div>

   97.0.4692.7197.0.4692.71
+
-
edit
 

Gudleifr

опытный

tarasv> Ну так возьмите тот кусок HTML и покажите что вы имеете в виду
Все "left" для кнопочек после "right" избыточны. Их использовали только для "увеличения пробелов".
   95.095.0
LT AleksejLt #13.01.2022 23:29  @спокойный тип#12.01.2022 23:05
+
+3
-
edit
 

AleksejLt

опытный

с.т.> а что sed. sed awk и регулярки - наше всё, вот настольная книжка

Некоторые люди, сталкиваясь с проблемой, думают: «Я знаю, я буду использовать регулярные выражения». Теперь у них две проблемы. © :)
   96.096.0
+
+2
-
edit
 

tarasv

аксакал

tarasv>> Ну так возьмите тот кусок HTML и покажите что вы имеете в виду
Gudleifr> Все "left" для кнопочек после "right" избыточны. Их использовали только для "увеличения пробелов".

В to-left только float: left; Я вам уже и картиночку запостил что будет если убрать этот класс у кнопок. div выстоятся вертикально, на то они и div.
   97.0.4692.7197.0.4692.71
+
-
edit
 

Gudleifr

опытный

tarasv> div выстоятся вертикально, на то они и div.
Я же написал: они не нужны.
   95.095.0
1 5 6 7 8 9 19

в начало страницы | новое
 
Поиск
Настройки
Твиттер сайта
Статистика
Рейтинг@Mail.ru