|
|
|
|
|
для: confirm
(18.02.2013 в 16:42)
| | Пардон. Что-то я сорвался и сам не заметил. | |
|
|
|
|
|
|
|
для: Sfinks
(18.02.2013 в 16:31)
| | А я разве кого-то назвал неучем?
Что остального, то просто предложил автору подумать, это главное. Но вот думать после медвежей услуги вряд ли кто будет, понимаете в чем проблема. Я и не говорю, что вы не имеете права писать свое, я сказал автору, что его код и ваш никуда не годится в данной ситуации.
Это уж вы стали защищать свою точку зрения, а я лишь парирую. )
Беда всех начинающих как раз в том, что они хватают "поверхностное" и хорошо бы это было временное явление, на первом этапе. Увы, и жаль, но это не так. Мне тут один "корифей" уже писал - "бесполезно меня переделывать, уже привык". У меня и в мыслях такого не было, но вот вам факт.
А отцами таких фактов как раз являемся мы с вами. Так что реплика "сушествует два мнения - мое и не правильное" не ко мне. Я не сторонник навязывать свое мнение, это бесполезно, когда бесполезно, я сторонник метода "подумать", а не подсовывать готовое, которое не всегда кстати. | |
|
|
|
|
|
|
|
для: confirm
(18.02.2013 в 16:18)
| | Все очень просто: форум (по крайней мере этот) - то место, где ваша логика: "сушествует два мнения - мое и не правильное" не работает. Больше того - не всем нужно объяснение, что они неучи, ниче не смыслят и все делают не правильно. Поэтому высказываются (предлагают решение) все подряд, каждый в меру своих знаний, способностей и т.п. Это и есть живой форум. Если у вас есть лучшее решение, никто вам не запрещает его предложить. В этой же теме вы все разнесли в пух и прах но решения так и не предложили. И не говорите, что не предложили, потому что изначально не верно поставлена задача. Все это уже поняли. Лучше спросите у ТС, понял ли он из всех ваших высказываний что-нибудь кроме того, что все делают всё не правильно. | |
|
|
|
|
|
|
|
для: Sfinks
(18.02.2013 в 16:07)
| | >Оченьмногавукаф
Вот именно, много, и если бы код состоял из одной строки, да и бог с ним, но код это гораздо больше чем одна, и чем они бездарнее эти строки в плане кода, тем хуже это для пользователя.
Я вас совсем не собираюсь переубеждать, делайте как вам нрвится, просто не советуйте того, что не допустимо советовать. И все таки задумывайтесь - а всегда ли они нужны имена, идентификаторы... И помните, каждый символ это как минимум один байт "скушан". | |
|
|
|
|
|
|
|
для: confirm
(18.02.2013 в 15:58)
| | Оченьмногавукаф =)
Забыл, что Вас в чем-то переубедить не возможно.
Вы все-равно останетесь при своем мнении. А я в этом конкретном вопросе при своем.
Так что проехали =) | |
|
|
|
|
|
|
|
для: Sfinks
(18.02.2013 в 15:35)
| | >Я имел ввиду, что с оптимизацией не нужно перебарщивать.
Не перебарщивать, а думать об оптимальном решении задачи.
Это - >И привязка к числовым индексам в коллекции - это и есть перебарщивание. Написали бы Вы, что нужно каждой ячейке дать идентификаторы на основе ID пользователя, типа imya_123, familiya_123, adres_123 - я бы слова не сказал.
как раз порождает вот такое - Очень жаль, если то что я написал, действительно выглядит именно так.
А вы знаете, что есть в JS методы работы с таблицей? Как вы думаете, что выгоднее задействовать эти методы, а затем напрямую обратиться к элементам формы, или же использовать надстройку в виде jQuery? А вы когда либо в исходный код jQuery заглядывали?
jQuery - это всего лишь инструмент, и пользоваться им как и любым инструментом нужно грамотно, а не всегда использовать его там, где в нем нет никакой необходимости. Это вам ответ на - привязка к числовым индексам в коллекции - это и есть перебарщивание. Это вы уже просто глупость сморозили.
>Работоспособность программы обязана НИКАК не зависеть от способа отображения информации.
Я и не говорил, что не работоспособен ваш код, я говорю об его неэффективности, о безрассудном отношении к ресурсам. Если бы код, это была одна такая строка и все, но это не так, ибо привычка писать так, порождает код который написан так весь - в каждой второй третьей, а может и в каждой строке которого головотяпство - работает да и хрен с ним.
А этот хрен, мне как пользователю, вполне возможно, придется открывать, а что такое множество открытых закладок браузера, и сколько они кушают ресурсов, да еще если код написан по "вашей философии", могу предложить просмотреть в диспетчере ресурсов компьютера.
Вот вам и ответ на все ваши доводы.
>И вот только когда увидит хоть что-то, тогда начнет вносить свои поправки.
Уже не будет править, можете прочесть выше - то что вы написали, он принял как план к действию. А если ребенка учить с детства держать ложку неправильно, то вполне возможно он ее будет держать так всю жизнь, хотя будет видеть что остальные держать ее иначе.
Задумывайтесь всегда над тем, что вы советуете, а не так как вы сами пишете - "не думаю, вижу и пишу". Так как вы делаете это в другом разделе, вот там есть разумный подход, там есть предпосылки для того, чтобы человек подумал. Здесь же вы оказываете непонимающему медвежью услугу, и оправдываете ее надуманными проблемами. | |
|
|
|
|
|
|
|
для: confirm
(18.02.2013 в 14:46)
| | > Ваши же доводы сводятся к одному - а написали мужики "волшебную шкатулку" ...
Очень жаль, если то что я написал, действительно выглядит именно так.
Само собой, что понимать что откуда растет и думать что для чего и грамотно проектировать необходимо.
Я имел ввиду, что с оптимизацией не нужно перебарщивать. И привязка к числовым индексам в коллекции - это и есть перебарщивание. Написали бы Вы, что нужно каждой ячейке дать идентификаторы на основе ID пользователя, типа imya_123, familiya_123, adres_123 - я бы слова не сказал. Но не индексы. Работоспособность программы обязана НИКАК не зависеть от способа отображения информации.
А запроектировать все заранее не всегда возможно. Очень часто клиент сам толком не знает, каким он хочет видеть результат. И вот только когда увидит хоть что-то, тогда начнет вносить свои поправки. | |
|
|
|
|
|
|
|
для: Sfinks
(18.02.2013 в 14:12)
| | Меняйте на здоровье, но если вы обеспокоены этим, перелопачиваете постоянно код, то:
во-первых, не так и трудно-затратно привести в соответствие, к тому же, прежде чем что-то выдумывать, надо хорошо представлять сперва что делаем. Определятся как выгоднее нужно не потом, когда все готово, а на самой ранней стадии. Ну и не вам объяснять, что таблицы "рисуются" сервером динамически, на основе строки параметров, а не автором кода руками шариковой ручкой, то есть изменить порядок в одной строке, и порядок (если захочется) полей формы, это далеко от понятия "весь перелопачивать". А вот необдуманность, как раз и есть причина "перелопачивания";
во-вторых, вам никто не запрещает предопределенную индексацию, что практически не далеко он идентификации;
в третьих, вам кто-то запрещает, или я отговариваю от использования идентификаторов?
И запомните что $('.my_class'), что $('#main input.my_class'), это все равно плохо, просто второе слегка облегчает работу.
Ну и последнее, компьютер не прорва, компьютер это ресурсы, а вы так самоуверенно говорите о "глупостях ради эфемерной экономии", о "производительности", которую вы вряд ли когда оценивали. Ну тут в первую очередь, для начинающих, главное научится заставлять себя задумываться, учится представлять задачу, тем более в таком "разношерстном" ПО как веб-приложение. Это не просто зарядка для мозгов, это самодисциплина, это и стиль, которые пусть медленно, но уверенно будут учить оптимизации.
Ваши же доводы, которые поверхностные, сводятся к одному - а написали мужики "волшебную шкатулку", и как многие к сожалению думают, подменяющую JS, да что там JS, и о DOM можно не задумываться - запустил руку в шкатулку, вытащил что-то под руку попало, прицепил, пашет, и трава не расти.
Слава богу, что большая масса программистов так к программированию не походит, иначе бы вы на своем мощнейшем процессоре только бы и могли что в тетрис гонять, на другое бы ресурсов не хватало. | |
|
|
|
|
|
|
|
для: confirm
(18.02.2013 в 10:50)
| | > ..... а коллекция это массив, а массив, это индексы. Остается брать каждый элемента этого массива,
> и по его индексу обращаться к элементу формы .....
Не соглашусь с Вами.
А если через какое-то время придется поменять местами столбцы? Или попросят добавить столбец с нумерацией строк? Или еще что-то подобное?
Перелопачивать и править весь код? Потом искать где что упущено и откуда лезут ошибки?
И все ради чего? Ради экономии нагрузки на процессор конечного пользователя? Благо современные процессоры позволяют не особо запариваться на эту тему.
Сэкономить нагрузку сузив круг поиска, например написав не $('.my_class'), а $('#main input.my_class') - это хорошо. Но работа напрямую с числовыми индексами может крайне негативно сказаться на скорости разработки (доработки/переработки), а следовательно на стоимости, а следовательно на конкурентноспособности разработчика.
И трудозатраты будут намного больше, чем процессороэкономия. | |
|
|
|
|
|
|
|
для: zevs
(18.02.2013 в 10:35)
| | Значит так:
Таблица ваша имеет id, именно по этому id нужно и обращаться к ней, делегируя обработку щелчков по ее дочерним элементам TR. Обработчик же должен получать коллекцию элементов TD этого TR, а коллекция это массив, а массив, это индексы. Остается брать каждый элемента этого массива, и по его индексу обращаться к элементу формы, в который помещаться содержимое этого элемента массива (TD). Если у вас информация, например, в трех ячейках, то даже цикла не требуется, можно и тремя строками прописать, для каждого индекса индивидуально.
Кроме этого - если речь о пользователях, то это означает их id, и именно это id должно быть определяющим, тем более, если с этими данными предполагается более серьезные манипуляции. И эти ID как раз и должны определять имена родителей - строки таблицы (TR каждого пользователя), а не издеваться по "wapka".
В этом случае именовать ячейки таблицы вообще нет необходимости, и какие имена будут у вашей формы, рояли не играют.
А за обращение к элементу по его классу тогда, когда можно спокойно обойтись без этого, нужно быть по руками, и очень больно. Так что то, что вы напрограммили, и что вам посоветовали, в помойку. | |
|
|
| |
|