![]() |
|
||||||||||
|
|||||||
|
|
« Предыдущая тема | Следующая тема » |
| Опции темы | Опции просмотра |
|
![]() |
![]() |
|
|
|
|||||
|
Регистрация: Dec 2001
Сообщений: 4,159
|
Ссылка из указанной мной статьи, так что я в курсе. Только это не объяснение -- это констатация факта.
![]()
__________________
GIT d++ s++:++ a C++$ UB++ P++ L+ E+ W+++ N++ w++ O+ M V- t-- 5-- X+ R+++ tv- b+++ D++ |
|
|||||
|
Modus ponens
|
C++ все еще оставлял лазейку для инакомыслящих, ну, уже хотя бы в виде вседозволенности. Т.е. если сравнивать с историей - C++ - это Окрябрьская революция, а Ява - это 22-53 годы. Можно сказать, что причиной была революция, но могло бы получится и по-другому, а не получилось.
ЗЫ. Я думаю, что если покопать ECMA документацию, то можно докопаться и до ответа на вопрос почему по-разному создаются объекты. Я так подозреваю, что способ с new должен создать все свойства, которые объявили на прототипе, а {} должен создать "без прикрас". Но зачем это нужно, этого уже никто не поймет. К сожалению не первый факт из ECMA сочинений, который вызывает недоумение. А может причина была еще прозаичнее - какой-нибудь представитель компании производящей браузеры на заседании коммитета по особо важным делам поведал о том, что они уже воплотили это в жизнь способом #1, а представитель конкурирующей организации не согласился, т.как они уже воплотили, но способом #2. И, как всегда, чтобы никого не обидеть, решили, что вместо стандарта лучше предложить венигрет.
__________________
Hell is the possibility of sanity Последний раз редактировалось wvxvw; 28.06.2011 в 20:55. |
|
|||||
|
.
|
Пока обожду закрывать ) Но имею сильное чувство.
Фабрики — рабочим, землю — крестьянам, каждому программисту — свой ЯП. PS Сильно сомневаюсь в необходимости преобразовывать лексемы "Object" и "{}" в разные токены (по сути это один и тот же). Скорее всего так сложилось исторически и разность в производительности пример того, что рефакторингом в Адоби не очень пахло. Дениса поддерживаю. Незачем в хорошем ЯП поддерживать множесто синонимов языка. Последний раз редактировалось dimarik; 28.06.2011 в 21:45. |
|
|||||
|
И я поддерживаю Дениса, что синонимы не к чему.
Но я за литерал. Например, {} позволяют сразу вбить значение что порой помогает избавиться от лишней локальной переменной, которая захламляет код. И работает быстрее. Это, конечно, мелочи, но я серьезно не услышал ни одного объективного довода в пользу new Object, помимо "это выглядит по ООП". По ООП конкатенация строк выглядит через String#concat. В повседневной жизни часто его используют? Конечно, оверлоадить плюс - это тоже ООП, но не в контексте единообразия кода в AS3.
__________________
Тут мужик танцует и поёт про флэш |
|
|||||
|
.
|
new -- вот где единообразие. Остальное -- Perl.
Добавлено через 2 минуты Что до "работает быстрее" - это проблема компилятора. Ты же написал тьюринга, остальное - его проблемы. Последний раз редактировалось dimarik; 28.06.2011 в 22:40. |
|
|||||
|
Регистрация: Dec 2001
Сообщений: 4,159
|
...что признано ошибкой, судя по баглисту.
__________________
GIT d++ s++:++ a C++$ UB++ P++ L+ E+ W+++ N++ w++ O+ M V- t-- 5-- X+ R+++ tv- b+++ D++ |
![]() |
![]() |
Часовой пояс GMT +4, время: 12:15. |
|
|
« Предыдущая тема | Следующая тема » |
| Опции темы | |
| Опции просмотра | |
|
|