Javascript-форум (https://javascript.ru/forum/)
-   Оффтопик (https://javascript.ru/forum/offtopic/)
-   -   Typescript vs Dart (https://javascript.ru/forum/offtopic/32335-typescript-vs-dart.html)

tenshi 14.10.2012 22:50

>> Идея как раз в том и состоит, чтобы поломать совместимость и при этом получить некоторые бонусы.
> IE 5, 6 разве не на этой же идее строились? Только бонусы там какие-то недоразвитые оказались. Мало было VBScript, не спится мс спокойно, пока мир не порабощён ещё одним высосанным из пальца продуктом.

нет, ie6 тогда - это аналог хрома сегодня. новый, быстрый, соответствующий текущим стандартам и кучей прогрессивной отсебятины, которую не слишком торопятся реализовывать другие вендоры.

FINoM 14.10.2012 22:53

tenshi, многие реализации классов выглядят довольно-таки симпотно. Интерфейсы можно сделать, например, так:
interface = new Interface({
  s: String,
  w: SomeClass,
  f: Function,
  i: Number
});

MyClass = Class( interface, Parent, Constructor, prototype );

tenshi 14.10.2012 23:00

из записи совершенно не очевидно что всё это значит. не пояснишь?

Nekromancer 14.10.2012 23:03

tenshi,
Мне очивидно.

FINoM 14.10.2012 23:04

Цитата:

Сообщение от tenshi
из записи совершенно не очевидно что всё это значит. не пояснишь?

Перечисление свойств и соответствующих конструкторов, например, класс MyClass, реализующий интерфейс interface должен содержать s, конструктором которого должен быть String, должен содержать f, конструктором которого будет Function и т. п.

FINoM 14.10.2012 23:05

Точнее объекты, которые являются инстанцами MyClass должны содержать...

tenshi 14.10.2012 23:30

Nekromancer, спасибо, держи меня в курсе

FINoM, f который Function может принимать и возвращать всё, что угодно или всё же что-то конкретное? i принимает примитив numer или инстанс Number? почему w обязан быть именно инстансом SomeClass, а не реализовывать тот же интерфейс? зачем каждый раз вручную приводить значение к типу string чтобы записать в s, если каждый объект умеет это делать автоматически?

FINoM 14.10.2012 23:34

Цитата:

Сообщение от tenshi
FINoM, f который Function может принимать и возвращать всё, что угодно или всё же что-то конкретное?

В данном случае всё. Ты имеешь в виду какой-то конкретный тип?
Цитата:

Сообщение от tenshi
почему w обязан быть именно инстансом SomeClass

Потому что я так захотел.
Цитата:

Сообщение от tenshi
а не реализовывать тот же интерфейс?

Не въехал в фразу.
Цитата:

Сообщение от tenshi
i принимает примитив numer или инстанс Number?

Какая разница? Тупо проверять конструктор.
Цитата:

Сообщение от tenshi
зачем каждый раз вручную приводить значение к типу string чтобы записать в s, если каждый объект умеет это делать автоматически?

Тоже не понял, поясни.

tenshi 14.10.2012 23:36

ну и получилась у тебя статическая типизация, а не интерфейсы)

а для SomeClass будет такая проверка?
new SomeClass( value )
боюсь не все классы адекватно к ней отнесутся

а для строки такая?
new String( value )
а боюсь она пройдёт для любых типов

FINoM 14.10.2012 23:38

Цитата:

Сообщение от tenshi
а для SomeClass будет такая проверка?

Проверка конструктора.
this.w.constructor === SomeClass
Цитата:

Сообщение от tenshi
а для строки такая?

То же самое.


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