Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #51 (permalink)  
Старый 06.01.2009, 23:24
Аватар для x-yuri
Отправить личное сообщение для x-yuri Посмотреть профиль Найти все сообщения от x-yuri
 
Регистрация: 27.12.2008
Сообщений: 4,201

quirksmode.org: не в том, смысле, что это истина в последней инстанции
Ответить с цитированием
  #52 (permalink)  
Старый 06.01.2009, 23:51
Отправить личное сообщение для Андрей Параничев Посмотреть профиль Найти все сообщения от Андрей Параничев
 
Регистрация: 21.02.2008
Сообщений: 1,250

x-yuri,
Пожалуйста, не пишите в одну тему два поста подряд, редактируйте свои предыдущие сообщения, особенно, если разница во времени небольшая.

В тему обсуждения, с таким же успехом можно сказать, что строка это массив элементов типа string, а ведь это и выглядит так (я не уверен, что это специфицированная возможность и знаю, что в IE только charAt):
var a = "How do i do?";
// Имеет нумерованные элементы и длину:
alert([a[0], a[1], a[2], a.length]);


Но относительно терминологии JavaScript это будет, конечно же, неверно, хотя в среде C, например, нет такого отдельного типа "строка", но говоря о строках - подразумевают массив char'ов (даже в документациях).

Это утрированный пример, но тем не менее - не всегда что как выглядит то тем и является, в данном конкретном случае - хотя объект и выглядит, как ассоциативный массив, но это в первую очередь вид записи объектов без конструктора. Хотя по аналогии со строками в C, их можно называть ассоциативными массивами, если собеседник гарантированно поймет, о чем идет речь.
Ответить с цитированием
  #53 (permalink)  
Старый 06.01.2009, 23:56
Профессор
Отправить личное сообщение для Dmitry A. Soshnikov Посмотреть профиль Найти все сообщения от Dmitry A. Soshnikov
 
Регистрация: 25.02.2008
Сообщений: 707

Сообщение от x-yuri
(Objects as associative arrays), известный такой сайт
Сайт хороший, но и на тысячи других сайтах имеются подобные описания-аналогии.

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

Вот лично вы - где услышали это определение? Я предположу - в PHP? Почему ж, он там хэш не называется? А-а, правильно, если копнуть глубже - то теоретическая структура (теоретическая!) "ассоциативный массив" может быть выполнена и не только хэш-таблицей. Почему ж в Руби или Per'e это называется хэш? Скорей всего там это выполнено хэш-таблицей? Так? Или не так? А что гадать - надо идти и смотреть исходники.

Т.е. все это очень и очень абстрактно (очень и очень!). В Си, например, являются ли эти структуры встроенными? Нет! Там - это лишь красивая и технологически обоснованная реализация, которая оперирует минимумом встроенных структур. Это все равно, что вы сейчас напишите объект dialog (вы-то будете знать, что это на самом деле), но потом будут спорить, что это "диалог", "окно", "модальное окно с искривленным ракурсом", "передвижной блок с данными", "интерактив с пользователем" и т.д. При этом, тот, кто это написал - тот и дал название. А далее, в разных сверх-языках, эта ваша реализация будет называться по-разному. А в каком-то языке, допишут свою идеологию и посчитают, что использование, например, понятия "интерактив с пользователем" может привести к неправильному пониманию этой новой идеологии; и решат использовать лишь понятие "окно".

Сообщение от x-yuri
quirksmode.org: не в том, смысле, что это истина в последней инстанции
в последней инстанции вообще ее нет (для нас... пока.)

а в относительной инстанции, все же, более приоритетным является - http://javascript.ru/ecma

Сообщение от Андрей Параничев
если собеседник гарантированно поймет, о чем идет речь.
Поэтому, да - на прикладном уровне - можно называть хоть абырвалгом; если вы и ваш собеседник понимаете друг друга - это допустимо. Но, если при этом, вы еще и знаете об особенностях конкретной технологии, это еще 100 очков сразу вперед.
__________________
Тонкости ECMAScript

Последний раз редактировалось Dmitry A. Soshnikov, 07.01.2009 в 00:41.
Ответить с цитированием
  #54 (permalink)  
Старый 07.01.2009, 00:48
Аватар для x-yuri
Отправить личное сообщение для x-yuri Посмотреть профиль Найти все сообщения от x-yuri
 
Регистрация: 27.12.2008
Сообщений: 4,201

Цитата:
Вот лично вы - где услышали это определение?
так чтобы именно ассоциативный массив - тогда в пхп, но до пхп я разбирался с Perl'ом, в котором хэши довольно похожи на ассоциативные массивы, если в детали не вдаваться (т.е. их назначение хранить пары ключ-значение)

хорошо, Dmitry A. Soshnikov, с точки зрения виджета dialog. Какая ему разница, что options - это объект? если он, допустим!, использует его только в таком ключе: this.options['option-name']? Или с точки зрения разработчика, который его создает?

Dmitry A. Soshnikov, мне очень понравилась фраза Кента Бека "любая методология основана на страхе" (http://www.maxkir.com/sd/methyperproject_RUS.htm). Давайте признаемся. Я боюсь запутаться, а вы боитесь, что вас неправильно поймут ;-) на этом даже можно прекратить дискуссию.
Ответить с цитированием
  #55 (permalink)  
Старый 07.01.2009, 01:35
Профессор
Отправить личное сообщение для Dmitry A. Soshnikov Посмотреть профиль Найти все сообщения от Dmitry A. Soshnikov
 
Регистрация: 25.02.2008
Сообщений: 707

Сообщение от x-yuri
хорошо, Dmitry A. Soshnikov, с точки зрения виджета dialog. Какая ему разница, что options - это объект? если он, допустим!, использует его только в таком ключе: this.options['option-name']?
Да никакой разницы, я повторю, и писал чуть выше в пункте 11) - если говорить в прикладном ключе, а не теоретико-академическом, можно хоть как это называть.

Сообщение от x-yuri
Dmitry A. Soshnikov, мне очень понравилась фраза Кента Бека "любая методология основана на страхе" ... Давайте признаемся. Я боюсь запутаться, а вы боитесь, что вас неправильно поймут ;-) на этом даже можно прекратить дискуссию.
"Истина не может противоречить истине" (С) =) Фишка в разных "камерах наблюдения" (точки обзора, точки зрения) - на один и тот же объект, разные могут смотреть по-разному. Поэтому, если боитесь запутаться, можно не смотреть через альтернативные "углы обзора". Говоря о всем этом, касательно этой темы, я имею в виду - разную терминологию при описании сверх-абстрактных теоретических понятий. В принципе, да, если хотите, использование лаконичной терминологии, это - выдача определенной "камеры наблюдения". Но почему, скажите, создатель технологии не имеет права назвать это, как ему захотелось (грубо - выдать вам единственную "камеру наблюдения"), и почему другие (те, кто используют эту технологию) не должны использовать ее? Ответ тоже ясен - желание "осмотреться вокруг и по сторонам". А те, кто смотрел с другой "стороны", и их потом переводят на вашу "камеру наблюдения"? А вы говорите: "смотри, в моем телескопе линзы несколько другие, там, вроде, отведешь взгляд от объекта, а он все равно здесь! Но, мы же с тобой понимаем друг друга, поэтому можем это называть и твоей терминологией. Но, вообще, здесь это называется так-то и так-то".

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

В общем, данная тема ни в коем разе не прикладная, это "сферический конь в вакууме", это интересный "теоретический трёп", который некоторым (и мне в том числе) всегда интересен. Поэтому да, можно и закончить на этом, потому что никакого сенсорно-прикладного применения здесь нет (как не было и на протяжении 6-ти страниц) Спасибо.
__________________
Тонкости ECMAScript

Последний раз редактировалось Dmitry A. Soshnikov, 07.01.2009 в 01:38.
Ответить с цитированием
  #56 (permalink)  
Старый 07.01.2009, 01:54
Аватар для x-yuri
Отправить личное сообщение для x-yuri Посмотреть профиль Найти все сообщения от x-yuri
 
Регистрация: 27.12.2008
Сообщений: 4,201

Цитата:
А вы говорите: "смотри, в моем телескопе линзы несколько другие, там, вроде, отведешь взгляд от объекта, а он все равно здесь! Но, мы же с тобой понимаем друг друга, поэтому можем это называть и твоей терминологией. Но, вообще, здесь это называется так-то и так-то".
я просто стараюсь не думать о лишних деталях. Если мне моей текущей камеры не хватает, я иду в другую))

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



Опции темы Искать в теме
Искать в теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Что означает ошибка "Отсутствует исполняющее ядро ДЛЯ расширения имени файла js" Mattias Общие вопросы Javascript 5 09.04.2018 06:45
Что за конструкция? (из jQuery) Yojik Общие вопросы Javascript 6 22.08.2010 14:46
Что такое "javascript:document.login.submit()" i_live_in_Moscow Общие вопросы Javascript 21 30.09.2008 14:25
Как сделать, что бы изображения пропадали. Dronch Элементы интерфейса 7 28.08.2008 20:55
Что за tagName? partyzan Общие вопросы Javascript 1 24.04.2008 20:29