Javascript-форум (https://javascript.ru/forum/)
-   Общие вопросы Javascript (https://javascript.ru/forum/misc/)
-   -   Интерфейсы в javascript (https://javascript.ru/forum/misc/14657-interfejjsy-v-javascript.html)

monolithed 25.01.2011 15:56

Цитата:

Сообщение от Kolyaj
Зачем в статических языках нужны интерфейсы?

как минимум для того, что JS сейчас используется не только в браузере, но и в другом ПО, а также считается одним из тех языков, которые портрированы в различные игровые движки и пр. трансляторы для портативных устройств. Причем по сути портрируется AS, но по каким-то причинам в документации пишут, что JS.
В любом случае найти применения интерфейсам в JS можно, но конкретно для каких проектов можно будет сказать, только тогда когда они появятся.

Kolyaj 25.01.2011 16:03

Цитата:

Сообщение от monolithed
как минимум для того, что JS сейчас используется не только в браузере, но и в другом ПО

Какая разница, где выполняется JS? Вопрос не "Где используются интерфейсы?", а "Для чего используются интерфейсы?".

Вы так и не ответили, зачем нужны интерфейсы в JS. Приводите куски кода на AS, говоря "ну вот же", а зачем вы их приводите, не говорите.

x-yuri 25.01.2011 21:59

классы в js уже есть, по сути... интерфейсы и прочие статические приколы... помимо ответа на твой вопрос, Kolyaj, неискушенный пейсатель может заметить, что это все надо для сферического уменьшения количества ошибок в ПО. Но ведь все мы знаем. Дуглас Наше все Крокфорд сказал, что эти ошибки легко и быстро обнаруживаются, а реальные проблемы создают совсем другого типа недосмотры

а читая предлагаемую спецификацию (старую), создается впечатление, что они хотят сделать javascript статическим и считают, что это круто. Если так нужен статический язык, напишите новый, для серьёзных проектов, зачем поддерживать совместимость с "морально устаревшим" javascript и втыкать в него костыли? В конце концов, объявите actionscript новым стандартом

Kolyaj 25.01.2011 22:23

Цитата:

Сообщение от x-yuri
помимо ответа на твой вопрос, Kolyaj, неискушенный пейсатель может заметить, что это все надо для сферического уменьшения количества ошибок в ПО.

Я уже лет 7 пишу на динамических языках, не помню ни одной ошибки, возникшей из-за несоответствия типов. Они были, это однозначно, но я их не помню, потому что это скорее опечатки, они не стоят внимания.

В данный момент я стараюсь весь код документировать JSDoc-ами, в следствие чего IDE подсвечивает несоответствие типов исходя из них.

kidar2 26.01.2011 10:00

Цитата:

Сообщение от Kolyaj (Сообщение 89670)
В данный момент я стараюсь весь код документировать JSDoc-ами, в следствие чего IDE подсвечивает несоответствие типов исходя из них.

Если не секрет в какой IDE работаете ?

monolithed 26.01.2011 10:04

Цитата:

Сообщение от kidar2
Если не секрет в какой IDE работаете ?

процентов 90%, что NotePad++ :) 10% - PHPStorm или WebStorm
чтобы писать программы на JS, это наверное самый оптимальный вариант.

Kolyaj, не удержался))

B~Vladi 26.01.2011 10:36

Kolyaj, раз уж зашла тема про JSDoc, не мог бы подсказать, как научить идею генерить их для JavaScript? Что-то никак не могу найти такой плагин.

Kolyaj 26.01.2011 10:41

Цитата:

Сообщение от kidar2
Если не секрет в какой IDE работаете ?

WebStorm.

Цитата:

Сообщение от monolithed
процентов 90%, что NotePad++

Notepad++ даже не ставил себе никогда :)

Цитата:

Сообщение от B~Vladi
Kolyaj, раз уж зашла тема про JSDoc, не мог бы подсказать, как научить идею генерить их для JavaScript? Что-то никак не могу найти такой плагин.

IDEA/WebStorm/PhpStorm вобщем-то без плагинов генерят всё, что могут.
Имеем, например, функцию
function foo(arg1, arg2, arg3) {
    
}
Пишем перед ней /**, нажимаем enter, получаем
/**
 *
 * @param arg1
 * @param arg2
 * @param arg3
 */
function foo(arg1, arg2, arg3) {

}
Описание, типы параметров и тип возвращаемого значения придётся самому писать, тут IDE никак не догадается. Хотя в JetBrains работают чертовски умные люди, не исключаю, что когда-нибудь будет догадываться :)

B~Vladi 26.01.2011 11:23

Цитата:

Сообщение от Kolyaj
Пишем перед ней /**, нажимаем enter, получаем

:blink: Шайтан. Что ж ты раньше молчал? :)
А генерить из этого документацию можно? Я жму Generate JavaDoc - не генерит, видимо только для Java.

Kolyaj 26.01.2011 11:29

Цитата:

Сообщение от B~Vladi
А генерить из этого документацию можно?

http://ru.wikipedia.org/wiki/JSDoc Здесь пара ссылок есть.
Я для проекта на ExtJS генерировал документацию, похожую на extjs-овскую, но там всякие расширения jsdoc-а используются.


Часовой пояс GMT +3, время: 21:53.