Здравствуйте, Joker6413, Вы писали:
J>Здравствуйте, Роман Дубров, Вы писали:
РД>>Joker6413 wrote: >>> Очевидно не умею, так я точно не смогу: РД>>[skip]
РД>>и что тут сложного? Или ты классы на джаваскрипте никогда не писал?
J>С какой версии jscript они начинаются и с каким ie эта версия ставиться?
Практически с любой версии. Классов и соответственно наследования классов там нет, есть только объекты и наследование объектов на основе прототипов. Но тем не менее можно организовать псведоклассы и наследование псевдоклассов, просто для удобства работы.
Правда по этой ссылке в примерах есть кое-какие неточности, к примеру функция 'uber' работает некорректно.
Ключевые слова, по которым надо смотреть документацию JavaScript — prototype, call, apply.
РД>>А если в чужом трудно разбираться — или бьютифаер
J>о аштойта? дайте сцылу.
Принимал участие в разработке достаточно серьезного web-приложения с использованием xmlsp: http://www.xmlsp.com/. Там интерфейс клиента на JavaScript, веб-сервисы мы реализовывали на Java, все работало под WebSphere.
Здравствуйте, Аноним, Вы писали:
А>Может кто-то смог выработать успешные метотоды работы с javascript? Поделитель плиз.
1) Научиться программировать вообще
2) Научиться программировать на Scheme
3) Научиться хорошему функциональному стилю, активно использовать комбинаторы, итераторы, замыкания.
4) Вернуться к JavaScript, понять, что это такая Схема с кривым си-подобным синтаксисом, и начать программировать на нём такими же методами, как на Схеме. Результат получится качественный, понятный, красивый и надёжный.
А>>>Задача стара как мир — сложные веб формы. И вот заказчики хотя упростить их испльзование делая всякие javascript фичуры.
OT>>Тогда кури AJAX.
А>Аяксом единым сыт не будешь. Проблема не в получении данных, а в бизнес логике реализованной на javascript.
Это дело надо разделять. Веб-формы — одно. Бизнес-логика совершенно другое.
Я лично никогда бы бизнес-логику на жаваскрипте не стал писать (если не считать валидаторы), хотя не исключаю редких случаев, когда это действительно возможно.
OT>>Это дело надо разделять. Веб-формы — одно. Бизнес-логика совершенно другое. OT>>Я лично никогда бы бизнес-логику на жаваскрипте не стал писать (если не считать валидаторы), хотя не исключаю редких случаев, когда это действительно возможно.
I>Валидаторы (aka constraints в БД) — это, можно сказать, столп "бизнес-логики".
Скорее не столп, а кепка. Имхо не надо переворачивать бизнес-логику с ног на голову.
Здравствуйте, VladiCh, Вы писали:
J>>Ну так вот я тебе скажу, с IE 5.0 идет javascript в котором поддержки классов нет. А IE 5.0 идет с win 2000. Достаточно ли они устарели чтобы с ними не считаться?
VC>Классов в JavaScript нет, как я уже несколько раз писал. Тм не менее есть наследование и возможность создавать "псевдоклассы". Наследование на основе прототипов есть в JavaScript начиная с версии 1.0 если я не ошибаюсь. То есть начиная с самых первых браузеров. Может быть насчет JS 1.0 я и ошибаюсь, но такая возможность точно появилась очень давно. В IE 5.0 стопроцентно она есть. Почитайте все-таки статейку по ссылке выше.
Читать надо MSDN!
call MethodSee Also
Applies To: Function Object
Requirements
Version 5.5
Calls a method of an object, substituting another object for the current object.
call([thisObj[, arg1[, arg2[, [, argN]]]]])
Arguments
thisObj
Optional. The object to be used as the current object.
arg1, arg2, , argN
Optional. List of arguments to be passed to the method.
Remarks
The call method is used to call a method on behalf of another object. The call method allows you to change the object context of a function from the original context to the new object specified by thisObj.
If thisObj is not supplied, the global object is used as thisObj.
Здравствуйте, VladiCh, Вы писали:
VC>На самом деле в JavaScript'е нет классов, можно сделать только их эмуляцию, правда довольно полноценную, с наследованием, виртуальными/не виртуальными функциями и даже ограничением видимости (public/private/protected), если очень хочется. Правда т.к. это все-таки эмуляция, создание этих псевдо-классов и тому подобные вещи происходят в рантайме, а т.к. язык очень слаботипизированный, то писать бизнес-логику на нем все же не очень удобно. Вот GUI — вполне.
Ёлы-палы, ну зачем вам классы-шмассы для бизнес-логики? Пишите функционально, JavaScript это неплохо позволяет, там замыкания есть. На фига нужны вообще эти ваши классы, когда есть замыкания?
Разработка javascript
От:
Аноним
Дата:
02.12.05 13:20
Оценка:
Вопрос. Заказчики настояли на широком использовании на клиенте javascript. У нас есть опыть его использования, но опыт этот сугубо негативный. Работа с непростыми скриптами напоминает войну с тараканами, исправляешь одну ошибку — появляется две, несмотря на то что разработчики грамотные.
Нанять отдельного javascript программера мы не может и на это нет времени.
Может кто-то смог выработать успешные метотоды работы с javascript? Поделитель плиз.
А>Вопрос. Заказчики настояли на широком использовании на клиенте javascript. У нас есть опыть его использования, но опыт этот сугубо негативный. Работа с непростыми скриптами напоминает войну с тараканами, исправляешь одну ошибку — появляется две, несмотря на то что разработчики грамотные. А>Нанять отдельного javascript программера мы не может и на это нет времени. А>Может кто-то смог выработать успешные метотоды работы с javascript? Поделитель плиз.
Зависит от контекста использования. Задачу в студию!
Аноним wrote:
> Может кто-то смог выработать успешные метотоды работы с javascript? > Поделитель плиз.
Главное — правильный идеологический подход и достаточно условий для
отладки. А то начнешь ковырять какой-нить fckEditor, а там в некоторых
местах и алерт не поставишь, и document.write низя... приходится
открывать отдельное окно и в него писать дебаг.
А вообще javascript — это фигня, все-таки язык понятный, на си/пхп/джаву
итд похож. А мне вот обломилось счастье начинать проект на Cache'+CSP
начинать, а в команде никто даже не слышал о нем раньше. Сидим втыкаем
вот в доки да синтаксис COS...
Здравствуйте, OnThink, Вы писали:
OT>Зависит от контекста использования. Задачу в студию!
Задача стара как мир — сложные веб формы. И вот заказчики хотя упростить их испльзование делая всякие javascript фичуры.
Re[2]: Разработка javascript
От:
Аноним
Дата:
02.12.05 15:44
Оценка:
Здравствуйте, Роман Дубров, Вы писали:
РД>Аноним wrote:
>> Может кто-то смог выработать успешные метотоды работы с javascript? >> Поделитель плиз.
РД>Главное — правильный идеологический подход и достаточно условий для РД>отладки. А то начнешь ковырять какой-нить fckEditor, а там в некоторых РД>местах и алерт не поставишь, и document.write низя... приходится РД>открывать отдельное окно и в него писать дебаг.
РД>А вообще javascript — это фигня,
А>Задача стара как мир — сложные веб формы. И вот заказчики хотя упростить их испльзование делая всякие javascript фичуры.
Тогда кури AJAX.
... << RSDN@Home 1.2.0 alpha rev. 619>>
Re[4]: Разработка javascript
От:
Аноним
Дата:
02.12.05 15:54
Оценка:
Здравствуйте, OnThink, Вы писали:
А>>Задача стара как мир — сложные веб формы. И вот заказчики хотя упростить их испльзование делая всякие javascript фичуры.
OT>Тогда кури AJAX.
Аяксом единым сыт не будешь. Проблема не в получении данных, а в бизнес логике реализованной на javascript.
Здравствуйте, OnThink, Вы писали:
А>>>>Задача стара как мир — сложные веб формы. И вот заказчики хотя упростить их испльзование делая всякие javascript фичуры.
OT>>>Тогда кури AJAX.
А>>Аяксом единым сыт не будешь. Проблема не в получении данных, а в бизнес логике реализованной на javascript.
OT>Это дело надо разделять. Веб-формы — одно. Бизнес-логика совершенно другое. OT>Я лично никогда бы бизнес-логику на жаваскрипте не стал писать (если не считать валидаторы), хотя не исключаю редких случаев, когда это действительно возможно.
Здравствуйте, Аноним, Вы писали:
А>Вопрос. Заказчики настояли на широком использовании на клиенте javascript. У нас есть опыть его использования, но опыт этот сугубо негативный. Работа с непростыми скриптами напоминает войну с тараканами, исправляешь одну ошибку — появляется две, несмотря на то что разработчики грамотные. А>Нанять отдельного javascript программера мы не может и на это нет времени. А>Может кто-то смог выработать успешные метотоды работы с javascript? Поделитель плиз.
Здравствуйте, Аноним, Вы писали:
А>Вопрос. Заказчики настояли на широком использовании на клиенте javascript. У нас есть опыть его использования, но опыт этот сугубо негативный. Работа с непростыми скриптами напоминает войну с тараканами, исправляешь одну ошибку — появляется две, несмотря на то что разработчики грамотные. А>Нанять отдельного javascript программера мы не может и на это нет времени. А>Может кто-то смог выработать успешные метотоды работы с javascript? Поделитель плиз.
Это специфично для любого веб орриентированного приложения. тут проблема в том что если изначально правильно не сложиться понимаение того что должно быть то в будущем уйдёт куча времени.(для веба это намного болеекритично чем на обычном описании бизнц просессов — так как затрагивается интерфейс — наличие работы во многих броузерах) А вообще если уже набита рука то даже в яваксрипте можно суметь делать рефаткоринг кода и даже бизнес решений. Всё завсит от того насколько успешно написан первоначальные решения на яваскрипте. Боюсь что вам видимо придёться имено страдать некоторое время. Со врменем набъёте руки и всё будет нормально. По кранйе мере я тоже изначельно просто афигевай от сложившейся ситуация — сейчас на яваксрипт смотрю как на замечательный язык
Аноним wrote: > OT>Тогда кури AJAX. > > Аяксом единым сыт не будешь. Проблема не в получении данных, а в бизнес > логике реализованной на javascript.
100% согласен.
И начинать надо с "правильного" фреймворка чтобы когда дойдешь до
реализации самой бизнес-логики, не отвлекаться на сугубо джаваскриптовые
заморочки...
Кстати кто подскажет какиенить библиотеки для создания юзер интерфейса в
аяксовых веб-приложениях, можно платные?
Здравствуйте, Роман Дубров, Вы писали:
РД>Аноним wrote: >> OT>Тогда кури AJAX. >> >> Аяксом единым сыт не будешь. Проблема не в получении данных, а в бизнес >> логике реализованной на javascript.
РД>100% согласен. РД>И начинать надо с "правильного" фреймворка чтобы когда дойдешь до РД>реализации самой бизнес-логики, не отвлекаться на сугубо джаваскриптовые РД>заморочки...
Так проблема-то не в фреймворке, тут все понятно. Непонятно как организовать работу надо jscript заморочками.
РД>Кстати кто подскажет какиенить библиотеки для создания юзер интерфейса в РД>аяксовых веб-приложениях, можно платные?
Здравствуйте, Роман Дубров, Вы писали:
РД>Аноним wrote:
>> РД>А вообще javascript — это фигня, >> >> Фигня. Но поддерживать ее — , злости не хватает.
РД>см выше. РД>в принципе не отличается от поддержки любой другой технологии... просто РД>со своими бзиками.
Не согласен, этнтропия jscript кода растет в вообще несяной прогрессии.
Здравствуйте, MasterMind, Вы писали:
MM>Здравствуйте, Аноним, Вы писали:
А>>Вопрос. Заказчики настояли на широком использовании на клиенте javascript. У нас есть опыть его использования, но опыт этот сугубо негативный. Работа с непростыми скриптами напоминает войну с тараканами, исправляешь одну ошибку — появляется две, несмотря на то что разработчики грамотные. А>>Нанять отдельного javascript программера мы не может и на это нет времени. А>>Может кто-то смог выработать успешные метотоды работы с javascript? Поделитель плиз.
MM>Это специфично для любого веб орриентированного приложения. тут проблема в том что если изначально правильно не сложиться понимаение того что должно быть то в будущем уйдёт куча времени.(для веба это намного болеекритично чем на обычном описании бизнц просессов — так как затрагивается интерфейс — наличие работы во многих броузерах) А вообще если уже набита рука то даже в яваксрипте можно суметь делать рефаткоринг кода и даже бизнес решений. Всё завсит от того насколько успешно написан первоначальные решения на яваскрипте. Боюсь что вам видимо придёться имено страдать некоторое время. Со врменем набъёте руки и всё будет нормально. По кранйе мере я тоже изначельно просто афигевай от сложившейся ситуация — сейчас на яваксрипт смотрю как на замечательный язык
С языком проблем нет. Есть проблемы с поддержкой. Т.к. ошибки можно отлавить только когда данный участок кода отработает хотя бы раз.
Здравствуйте, OnThink, Вы писали:
А>>>>Задача стара как мир — сложные веб формы. И вот заказчики хотя упростить их испльзование делая всякие javascript фичуры.
OT>>>Тогда кури AJAX.
А>>Аяксом единым сыт не будешь. Проблема не в получении данных, а в бизнес логике реализованной на javascript.
OT>Это дело надо разделять. Веб-формы — одно. Бизнес-логика совершенно другое. OT>Я лично никогда бы бизнес-логику на жаваскрипте не стал писать (если не считать валидаторы), хотя не исключаю редких случаев, когда это действительно возможно.
Валидаторы (aka constraints в БД) — это, можно сказать, столп "бизнес-логики".
Joker6413 wrote:
> РД>Кстати кто подскажет какиенить библиотеки для создания юзер интерфейса в > РД>аяксовых веб-приложениях, можно платные? > > Infragistics
Дотнет...
а мне или платформонезависимую или для пхп надо.
Хотя щас вот ковыряю blueshoes — вроде ниче так...
Здравствуйте, Аноним, Вы писали:
А>Вопрос. Заказчики настояли на широком использовании на клиенте javascript. У нас есть опыть его использования, но опыт этот сугубо негативный. Работа с непростыми скриптами напоминает войну с тараканами, исправляешь одну ошибку — появляется две, несмотря на то что разработчики грамотные. А>Нанять отдельного javascript программера мы не может и на это нет времени. А>Может кто-то смог выработать успешные метотоды работы с javascript? Поделитель плиз.
JavaScript — сам по себе замечательный язык, если его правильно использовать. Он очень гибкий, там есть наследование, замыкания, которые в C# появились напирмер только с версии 2, Боюсь, что в основном его используют неправильно. Почитайте здесь например. Но разрабатывать на нем с нуля сложный гуй слишком трудоемко. Смотрите в сторону хорошей библиотеки типа этой.
Здравствуйте, Роман Дубров, Вы писали:
РД>Аноним wrote: >> OT>Тогда кури AJAX. >> >> Аяксом единым сыт не будешь. Проблема не в получении данных, а в бизнес >> логике реализованной на javascript.
РД>100% согласен. РД>И начинать надо с "правильного" фреймворка чтобы когда дойдешь до РД>реализации самой бизнес-логики, не отвлекаться на сугубо джаваскриптовые РД>заморочки...
РД>Кстати кто подскажет какиенить библиотеки для создания юзер интерфейса в РД>аяксовых веб-приложениях, можно платные?
РД>BackBase радует возможностями, но тормозище....
РД>-- РД>np: [foobar2000] not started
Здравствуйте, VladiCh, Вы писали:
VC>Здравствуйте, Аноним, Вы писали:
А>>Нанять отдельного javascript программера мы не может и на это нет времени.
А вот это зря... Без отдельного программера вы больше времени потеряете на обучение разработчиков тому, как правильно надо писать на JS (это хоть и не так сложно, но требует времени, т.к. концепция существенно отличается от mainstream-языков. Просто на нем действительно толком мало кто писать умеет правильно). Могу свои услуги предложить в качестве JavaScript-программера .
Здравствуйте, Роман Дубров, Вы писали:
РД>VladiCh wrote: >> РД>BackBase радует возможностями, но тормозище.... >> >> см. тут <http://www.bindows.net>
РД>уже смотрел РД>+ идея супер — вин апи на джаваскрипте РД>- грузится долго РД>- в gecko кой-че не работает РД>- стоит как паровоз
2. грузится долго, но можно его за-gzipовать, будет грузиться в 10 раз быстрее. можно и динамически подгружать только то что нужно.
3. в gecko работает. не работает только в opera, да и то я думаю с opera 9 сделают поддержку.
4. это да, не очень дешево. если бы не цена, сам бы использовал . а так пришлось свою библиотечку писать, попроще, на аналогичных принципах.
Здравствуйте, Joker6413, Вы писали:
J>Здравствуйте, Роман Дубров, Вы писали:
РД>>Аноним wrote:
>>> РД>А вообще javascript — это фигня, >>> >>> Фигня. Но поддерживать ее — , злости не хватает.
РД>>см выше. РД>>в принципе не отличается от поддержки любой другой технологии... просто РД>>со своими бзиками.
J>Не согласен, этнтропия jscript кода растет в вообще несяной прогрессии.
Может, вы просто не умеете его готовить? . В сыром виде он действительно довольно некрасив. Посмотрите способы правильного приготовления например здесь.
Здравствуйте, VladiCh, Вы писали:
VC>Может, вы просто не умеете его готовить? . В сыром виде он действительно довольно некрасив. Посмотрите способы правильного приготовления например здесь.
Здравствуйте, VladiCh, Вы писали:
VC>Здравствуйте, Аноним, Вы писали:
А>>Вопрос. Заказчики настояли на широком использовании на клиенте javascript. У нас есть опыть его использования, но опыт этот сугубо негативный. Работа с непростыми скриптами напоминает войну с тараканами, исправляешь одну ошибку — появляется две, несмотря на то что разработчики грамотные. А>>Нанять отдельного javascript программера мы не может и на это нет времени. А>>Может кто-то смог выработать успешные метотоды работы с javascript? Поделитель плиз.
VC>JavaScript — сам по себе замечательный язык, если его правильно использовать.
Увы... пока не определимся "как правильно" нет смысла обсуждать "неправильное" использование. Я пока могу говорить только об повышенной энтропии кода, как о факте. Чем это вызванно — особенностями языка или методом разработки я пока сказать не могу.
VladiCh wrote: > 2. грузится долго, но можно его за-gzipовать, будет грузиться в 10 раз > быстрее. можно и динамически подгружать только то что нужно.
очень даже может быть, но демка на сайте этого не делает
> 3. в gecko работает. не работает только в opera, да и то я думаю с opera > 9 сделают поддержку.
во первых я ж не сказал что совсем не работает... работает но не все.
оперу фтопку, мне ее поддерживать не надо
> 4. это да, не очень дешево. если бы не цена, сам бы использовал . а так > пришлось свою библиотечку писать, попроще, на аналогичных принципах.
а я щас blueshoes ковыряю...
Joker6413 wrote: > Очевидно не умею, так я точно не смогу:
[skip]
и что тут сложного? Или ты классы на джаваскрипте никогда не писал? А
если в чужом трудно разбираться — или бьютифаер в руки или конкретно в
этом случае пинать разработчиков — не зря ж такие деньги им плачены...
Здравствуйте, Joker6413, Вы писали:
J>Здравствуйте, VladiCh, Вы писали:
VC>>Может, вы просто не умеете его готовить? . В сыром виде он действительно довольно некрасив. Посмотрите способы правильного приготовления например здесь.
J>Очевидно не умею, так я точно не смогу:
J>
Это самая примитивная обфускация JavaScript-ового кода, уменьшающая к тому же его размер .
Приведите его к нормальному виду и все будет более-менее понятно.
Хотя мне не очень нравятся некоторые частносит в bindows, но в целом идея весьма здравая.
Здравствуйте, Роман Дубров, Вы писали:
РД>Joker6413 wrote: >> Очевидно не умею, так я точно не смогу: РД>[skip]
РД>и что тут сложного? Или ты классы на джаваскрипте никогда не писал? А РД>если в чужом трудно разбираться — или бьютифаер в руки или конкретно в РД>этом случае пинать разработчиков — не зря ж такие деньги им плачены...
На самом деле в JavaScript'е нет классов, можно сделать только их эмуляцию, правда довольно полноценную, с наследованием, виртуальными/не виртуальными функциями и даже ограничением видимости (public/private/protected), если очень хочется. Правда т.к. это все-таки эмуляция, создание этих псевдо-классов и тому подобные вещи происходят в рантайме, а т.к. язык очень слаботипизированный, то писать бизнес-логику на нем все же не очень удобно. Вот GUI — вполне.
А вообще обещают в будущих версиях Mozilla сделать поддержку JavaScript 2, он же ECMAScript 4, который уже реализован и в .NET (JScript .NET) и к примеру ActionScript 2 — это тоже ECMAScript 4. Там есть и типизация и классы и это вообще совсем другой язык.
Здравствуйте, Joker6413, Вы писали:
J>Здравствуйте, VladiCh, Вы писали:
VC>>Здравствуйте, Аноним, Вы писали:
VC>>JavaScript — сам по себе замечательный язык, если его правильно использовать.
J>Увы... пока не определимся "как правильно" нет смысла обсуждать "неправильное" использование. Я пока могу говорить только об повышенной энтропии кода, как о факте. Чем это вызванно — особенностями языка или методом разработки я пока сказать не могу.
Правильно — это используя "псевдоклассы", т.е. эмулчцию классов в JavaScript. На этих "псевдоклассах" можно построить любой сложности иерархию и работать с ним как с обычным ОО-языком типа C#, Java и т.п.
Ну и потом есть определенные приемы разработки в зависимости от того, какого типа приложение вам нужно. Если типа толстого клиента на JavaScript, то реализовать нормальный интерфейс удаленного вызова типа XML-RPC, SOAP и т.п. На эту тему можно долго разговаривать, если есть желание можно вынести в отдельный топик.
>> 3. в gecko работает. не работает только в opera, да и то я думаю с opera >> 9 сделают поддержку. РД>во первых я ж не сказал что совсем не работает... работает но не все. РД>оперу фтопку, мне ее поддерживать не надо
Не работают там графики, диаграммы и т.п. Судя по их форуму, они собираются прикрутить их при помощи SVG, поддерживаемого в Firefox 1.5.
>> 4. это да, не очень дешево. если бы не цена, сам бы использовал . а так >> пришлось свою библиотечку писать, попроще, на аналогичных принципах. РД>а я щас blueshoes ковыряю...
посмотрел я этот blueshoes... чисто php-ориентированный + нет нормального javascript-фреймворка, все на каких-то заплатках построено.
Здравствуйте, VladiCh, Вы писали:
VC>Здравствуйте, Роман Дубров, Вы писали:
VC>посмотрел я этот blueshoes... чисто php-ориентированный + нет нормального javascript-фреймворка, все на каких-то заплатках построено.
не, вру, вроде что-то более-менее есть, хотя подробно не разбирался.
Здравствуйте, Роман Дубров, Вы писали:
РД>Joker6413 wrote: >> Очевидно не умею, так я точно не смогу: РД>[skip]
РД>и что тут сложного? Или ты классы на джаваскрипте никогда не писал?
С какой версии jscript они начинаются и с каким ie эта версия ставиться?
РД>А если в чужом трудно разбираться — или бьютифаер
Здравствуйте, VladiCh, Вы писали:
J>>Увы... пока не определимся "как правильно" нет смысла обсуждать "неправильное" использование. Я пока могу говорить только об повышенной энтропии кода, как о факте. Чем это вызванно — особенностями языка или методом разработки я пока сказать не могу.
VC>Правильно — это используя "псевдоклассы", т.е. эмулчцию классов в JavaScript. На этих "псевдоклассах" можно построить любой сложности иерархию и работать с ним как с обычным ОО-языком типа C#, Java и т.п.
По этому поводу уже задал вопрос выше. (Последний раз пришлось серьезно работать со скриптом в 2002 году).
VC>Ну и потом есть определенные приемы разработки в зависимости от того, какого типа приложение вам нужно. Если типа толстого клиента на JavaScript, то реализовать нормальный интерфейс удаленного вызова типа XML-RPC, SOAP и т.п.
Здравствуйте, VladiCh, Вы писали:
VC>Здравствуйте, Joker6413, Вы писали:
Вообще JavaScript больше похож не на Java/C#/C++, а на такие языки как Perl или Python. Если вы хорошо разбираетесь в каком-нибудь из них, то и "правильное" программирование на JavaScript освоить будет несложно.
Здравствуйте, VladiCh, Вы писали:
VC>Здравствуйте, Joker6413, Вы писали:
J>>Здравствуйте, Роман Дубров, Вы писали:
РД>>>Joker6413 wrote: >>>> Очевидно не умею, так я точно не смогу: РД>>>[skip]
РД>>>и что тут сложного? Или ты классы на джаваскрипте никогда не писал?
J>>С какой версии jscript они начинаются и с каким ie эта версия ставиться?
VC>Практически с любой версии. Классов и соответственно наследования классов там нет, есть только объекты и наследование объектов на основе прототипов. Но тем не менее можно организовать псведоклассы и наследование псевдоклассов, просто для удобства работы.
VC>здесь
Ну так вот я тебе скажу, с IE 5.0 идет javascript в котором поддержки классов нет. А IE 5.0 идет с win 2000. Достаточно ли они устарели чтобы с ними не считаться?
РД>>>А если в чужом трудно разбираться — или бьютифаер
J>>о аштойта? дайте сцылу.
VC>автоматический форматтер JavaScript-ового текста
VC>здесь
Здравствуйте, Joker6413, Вы писали:
J>Здравствуйте, VladiCh, Вы писали:
VC>>Здравствуйте, Joker6413, Вы писали:
J>>>Здравствуйте, Роман Дубров, Вы писали:
РД>>>>Joker6413 wrote: >>>>> Очевидно не умею, так я точно не смогу: РД>>>>[skip]
РД>>>>и что тут сложного? Или ты классы на джаваскрипте никогда не писал?
J>>>С какой версии jscript они начинаются и с каким ie эта версия ставиться?
VC>>Практически с любой версии. Классов и соответственно наследования классов там нет, есть только объекты и наследование объектов на основе прототипов. Но тем не менее можно организовать псведоклассы и наследование псевдоклассов, просто для удобства работы.
VC>>здесь
J>Ну так вот я тебе скажу, с IE 5.0 идет javascript в котором поддержки классов нет. А IE 5.0 идет с win 2000. Достаточно ли они устарели чтобы с ними не считаться?
Классов в JavaScript нет, как я уже несколько раз писал. Тм не менее есть наследование и возможность создавать "псевдоклассы". Наследование на основе прототипов есть в JavaScript начиная с версии 1.0 если я не ошибаюсь. То есть начиная с самых первых браузеров. Может быть насчет JS 1.0 я и ошибаюсь, но такая возможность точно появилась очень давно. В IE 5.0 стопроцентно она есть. Почитайте все-таки статейку по ссылке выше.
J>Ну так вот я тебе скажу, с IE 5.0 идет javascript в котором поддержки классов нет. А IE 5.0 идет с win 2000. Достаточно ли они устарели чтобы с ними не считаться?
Достаточно. Машина без SP4 и IE6SP1 — практически не жилец.
Здравствуйте, Joker6413, Вы писали:
J>Здравствуйте, VladiCh, Вы писали:
J>>>Ну так вот я тебе скажу, с IE 5.0 идет javascript в котором поддержки классов нет. А IE 5.0 идет с win 2000. Достаточно ли они устарели чтобы с ними не считаться?
VC>>Классов в JavaScript нет, как я уже несколько раз писал. Тм не менее есть наследование и возможность создавать "псевдоклассы". Наследование на основе прототипов есть в JavaScript начиная с версии 1.0 если я не ошибаюсь. То есть начиная с самых первых браузеров. Может быть насчет JS 1.0 я и ошибаюсь, но такая возможность точно появилась очень давно. В IE 5.0 стопроцентно она есть. Почитайте все-таки статейку по ссылке выше.
J>Читать надо MSDN!
J>
J>call MethodSee Also
J>Applies To: Function Object
J>Requirements
J>Version 5.5
J>Calls a method of an object, substituting another object for the current object.
J>call([thisObj[, arg1[, arg2[, [, argN]]]]])
J>Arguments
J>thisObj
J>Optional. The object to be used as the current object.
J>arg1, arg2, , argN
J>Optional. List of arguments to be passed to the method.
J>Remarks
J>The call method is used to call a method on behalf of another object. The call method allows you to change the object context of a function from the original context to the new object specified by thisObj.
J>If thisObj is not supplied, the global object is used as thisObj.
J>Requirements
J>Version 5.5
J>Вот и ответ.
Как это противоречит тому что я сказал выше? Про методы call и apply я не говорил, что они есть в JavaScript'е, который в IE 5.0.
Здравствуйте, __SPIRIT__, Вы писали:
__S>Здравствуйте, Joker6413, Вы писали:
J>>Читать надо MSDN!
__S>доля правды в этих словах есть "Читать надо msdn"
__S>Только классы все равно есть ( точнее их заменители )
__S>function A() __S>{ __S> this.BB = 10; __S> this.tralala = function() { alert("А вотЪ!");}; __S>}
Да нету там классов. Есть только объекты. Один объект может быть унаследован от другого, если привязать прототип к порождающей функции. Прототип объекта — это тоже объект. Если к примеру какого-то свойства/метода нет в объекте, то он ищется в прототипе, прототипе прототипа и т.д. вверх по цепочке. Получается иерархия наследования.
К примеру,
VladiCh wrote: > РД>во первых я ж не сказал что совсем не работает... работает но не все. > РД>оперу фтопку, мне ее поддерживать не надо > Не работают там графики, диаграммы и т.п. Судя по их форуму, они > собираются прикрутить их при помощи SVG, поддерживаемого в Firefox 1.5.
вот прикрутят — посмотрим
> посмотрел я этот blueshoes... чисто php-ориентированный + нет
дык это мне и надо
> нормального javascript-фреймворка, все на каких-то заплатках построено.
да ну...
--
np: [foobar2000] Машина времени — 10 Иди на север [paused]
VladiCh wrote: > РД>и что тут сложного? Или ты классы на джаваскрипте никогда не писал? А > > На самом деле в JavaScript'е нет классов, можно сделать только их > эмуляцию, правда довольно полноценную, с наследованием, виртуальными/не > виртуальными функциями и даже ограничением видимости
ну короче: ты меня понял
> А вообще обещают в будущих версиях Mozilla сделать поддержку JavaScript > 2, он же ECMAScript 4, который уже реализован и в .NET (JScript .NET) и
если осел это поддерживать не будет — толку?
--
np: [foobar2000] Машина времени — 10 Иди на север [paused]
Joker6413 wrote: > РД>и что тут сложного? Или ты классы на джаваскрипте никогда не писал? > > С какой версии jscript они начинаются и с каким ie эта версия ставиться?
а при чем тут jscript by microsoft?
ну и см выше ответ Владича
> РД>А если в чужом трудно разбираться — или бьютифаер > > о аштойта? дайте сцылу.
code beautifier — форматировщик кода, чтоб читабельность повысить
их много и разных
--
np: [foobar2000] Машина времени — 10 Иди на север [paused]
Здравствуйте, __SPIRIT__, Вы писали:
__S>Здравствуйте, Joker6413, Вы писали:
J>>Читать надо MSDN!
__S>доля правды в этих словах есть "Читать надо msdn"
__S>Только классы все равно есть ( точнее их заменители )
__S>function A() __S>{ __S> this.BB = 10; __S> this.tralala = function() { alert("А вотЪ!");}; __S>}
Здравствуйте, VladiCh, Вы писали:
VC>Как это противоречит тому что я сказал выше? Про методы call и apply я не говорил, что они есть в JavaScript'е, который в IE 5.0.
Здравствуйте, Роман Дубров, Вы писали:
РД>VladiCh wrote: >> РД>и что тут сложного? Или ты классы на джаваскрипте никогда не писал? А >> >> На самом деле в JavaScript'е нет классов, можно сделать только их >> эмуляцию, правда довольно полноценную, с наследованием, виртуальными/не >> виртуальными функциями и даже ограничением видимости РД>ну короче: ты меня понял
>> А вообще обещают в будущих версиях Mozilla сделать поддержку JavaScript >> 2, он же ECMAScript 4, который уже реализован и в .NET (JScript .NET) и РД>если осел это поддерживать не будет — толку?
Для определенного типа приложений можно обойтись и без осла.
К примеру веб-интерфейс к какой-нибудь внутренней системе компании.
В принципе такую штуку как XUL и так можно для этого использовать, но существующий JavaScript все-таки не очень для этого прежназначен.
Здравствуйте, __SPIRIT__, Вы писали:
__S>Здравствуйте, VladiCh, Вы писали:
__S>Теперь скажи пожалуйста для тех кто в танке... чем этот не класс плох? __S>И почему его локально для скрипта нельзя считать классом?
__S>Да это не ооп но это скрипт от него странно ждать большего по мойму этого вполне хватает!
__S>Единственно отсутсвие типизации мешает сильно
Да не плох он ничем. И кстати, это ООП, просто другого типа. Но от того, что он не плох, он ведь не становится классом? . Кстати, при помощи некоторых приемов можно сделать и псевдотипизацию, по крайней мере в runtime.
This page shows how to create private variables and methods in classes in Javascript through the rather simple example of a person http://phrogz.net/JS/Classes/OOPinJS.html
Здравствуйте, MasterMind, Вы писали:
MM>This page shows how to create private variables and methods in classes in Javascript through the rather simple example of a person MM>http://phrogz.net/JS/Classes/OOPinJS.html
Спасибо за то что освежил в памяти... А вот какой нить красивый вариант с перегрузкой функций и операторов есть? а еще красивый вариант виртуальных функций?
Здравствуйте, <Аноним>, Вы писали:
А>Может кто-то смог выработать успешные метотоды работы с javascript? Поделитель плиз.
Попробуйте google:jsUnit
... << RSDN@Home 1.1.4 stable SR1 rev. 568>>
Re[2]: Разработка javascript
От:
Аноним
Дата:
21.12.05 12:50
Оценка:
Здравствуйте, corwin74, Вы писали:
C>Здравствуйте, <Аноним>, Вы писали:
А>>Может кто-то смог выработать успешные метотоды работы с javascript? Поделитель плиз.
C>Попробуйте google:jsUnit
Здравствуйте, __SPIRIT__, Вы писали:
__S>Здравствуйте, MasterMind, Вы писали:
MM>>This page shows how to create private variables and methods in classes in Javascript through the rather simple example of a person MM>>http://phrogz.net/JS/Classes/OOPinJS.html
__S>Спасибо за то что освежил в памяти... А вот какой нить красивый вариант с перегрузкой функций и операторов есть? а еще красивый вариант виртуальных функций?
С перегрузкой методов я делал вариант, правда он сложный и не очень красивый .
Он основан на том, что читается сигнатура функции, из не вычленяются параметры, тип параметра определяется по префиксу имени параметра. Затем строится динамический прокси для этой функции, в котором в зависимости от типа параметров вызывается тот или иной перегруженный метод. В общем все достаточно сложно и небыстро работает, но работает.
Вы в курсе, что в JS можно динамически читать содержимое любого метода, можно строить на базе этого новый, можно при помощи замыканий строить цепочку проксей для любого метода, которые дополнительную работу делают.
Перегрузка операторов по-моему нереальна.
В JS все методы виртуальные, да и вообще нет разделения на виртуальные/невиртуальные, т.к. нет понятия класса.
Здравствуйте, Joker6413, Вы писали:
J>Здравствуйте, Роман Дубров, Вы писали:
РД>>Аноним wrote:
>>> РД>А вообще javascript — это фигня, >>> >>> Фигня. Но поддерживать ее — , злости не хватает.
РД>>см выше. РД>>в принципе не отличается от поддержки любой другой технологии... просто РД>>со своими бзиками.
J>Не согласен, этнтропия jscript кода растет в вообще несяной прогрессии.
В нашем проекте половина всего взаимодействия с клиентом реализовано на клиенте посредством скрипта, там и Аякс и активикс и прочее... и ничего, все нормально работает, отлаживаеться и сопровождаеться.... Нужно просто руку набить и все... я раньше тоже когда видел эти скрипты покрывался холодным потом, а сейчас все ок.
Здравствуйте, VladiCh, Вы писали:
А>>>Нанять отдельного javascript программера мы не может и на это нет времени.
VC>А вот это зря... Без отдельного программера вы больше времени потеряете на обучение разработчиков тому, как правильно надо писать на JS (это хоть и не так сложно, но требует времени, т.к. концепция существенно отличается от mainstream-языков.
А это лишь в очередной раз доказывает, что не фиг содержать серых мейнстримщиков. Бесполезный они народец. Лучше взять поменьше, подороже и покачественнее, таких, которые знакомы со всеми существующими парадигмами и легко и быстро разбираются в любом языке.