![]() |
Модераторы: LSD |
![]() ![]() ![]() |
|
||
|
Rohoss |
|
|||
![]() Начальник интернета ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1308 Регистрация: 9.10.2006 Где: Matrix Репутация: нет Всего: 18 |
Когда этот язык создавался, и сейчас, Веб уже совершенно другой… Как вы думаете, если бы JavaScript был сильно типизированным, это улучшило бы современный интернет?
|
|||
|
||||
LSD |
|
|||
![]() Leprechaun Software Developer ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 15718 Регистрация: 24.3.2004 Где: Dublin Репутация: 9 Всего: 538 |
Для сильно типизированных языков проще создавать компиляторы (в том числе и JIT). Так что думаю, что производительность JS движков браузеров, была бы выше. А значит на нем бы было реализовано больше свистелок и перделок, уж не знаю это расценивать как плюс или как минус
![]() -------------------- Disclaimer: this post contains explicit depictions of personal opinion. So, if it sounds sarcastic, don't take it seriously. If it sounds dangerous, do not try this at home or at all. And if it offends you, just don't read it. |
|||
|
||||
Rohoss |
|
|||
![]() Начальник интернета ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1308 Регистрация: 9.10.2006 Где: Matrix Репутация: нет Всего: 18 |
||||
|
||||
GoldFinch |
|
|||
![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 2141 Регистрация: 30.11.2008 Репутация: нет Всего: 26 |
||||
|
||||
Alexeis |
|
|||
![]() Амеба ![]() Профиль Группа: Админ Сообщений: 11743 Регистрация: 12.10.2005 Где: Зеленоград Репутация: 14 Всего: 459 |
Чем строже типизация тем меньше возможностей для разночтения текста, тем яснее компилятор понимает что от него хочет программист. Тем сложнее допустить ошибку так как компилятор больше анализирует при компиляции и меньше в рантайме. Язык сложнее в изучении, но программы получаются надежнее и быстрее.
-------------------- Vit вечная память. Обсуждение действий администрации форума производятся только в этом форуме гениальность идеи состоит в том, что ее невозможно придумать |
|||
|
||||
fixxer |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 672 Регистрация: 14.9.2006 Где: Саратов, Россия Репутация: нет Всего: 27 |
сильная статическая типизация + грамотный type inference. Позволяет писать так же удобно и лаконично как на динамических языках и также типобезопасно как на статически типизируемых. (см. Хаскель, Scala)
-------------------- ![]() |
|||
|
||||
LSD |
|
|||
![]() Leprechaun Software Developer ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 15718 Регистрация: 24.3.2004 Где: Dublin Репутация: 9 Всего: 538 |
Ну это смотря что делать. Та же реализация MD5/SHA-1 на JavaScript чисто вычислительная задача, или реализация всяких эмуляторов типа JSNES будут требовать высокопроизводительного JS движка (это вовсе не значит, что быстрый DOM не нужен). Стоило появится V8 как стали появляться всякие эмуляторы и 3D бродилки на JS. -------------------- Disclaimer: this post contains explicit depictions of personal opinion. So, if it sounds sarcastic, don't take it seriously. If it sounds dangerous, do not try this at home or at all. And if it offends you, just don't read it. |
|||
|
||||
GoldFinch |
|
|||
![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 2141 Регистрация: 30.11.2008 Репутация: нет Всего: 26 |
ну а что конкретно поменять-то?
|
|||
|
||||
Puld |
|
|||
Новичок Профиль Группа: Участник Сообщений: 1 Регистрация: 3.9.2010 Репутация: нет Всего: нет |
Топик старый, но думаю как раз сейчас все более вопрос встает ребром. с появлением HTML5, полноценного тега <canvas> на JS возлагается большая ответственность за обработку графики. Не типизированный ЯП для этого не очень хороший инструмент. Так же объектно-ориентированность языка тоже как то не устраивает. Понятно что желать от JS что он в миг станет ОО ЯП не стоит, но такий инструмент в клиентской части веб приложения иметь хотелось бы. Это может пригодиться если вы строите клиентскую часть своего веб-приложения таким образом, что все данные запрашиваются скриптом, или загружаются прям в нем же. Скрипты выступают в роли контроллеров, которые отвечают за обработку данных, за построение интерфейса, обрабатывают все действия пользователя. а HTML будет только как результат работы скрипта. Клиентская часть буден независимой от серверной, все что ей нужно - это получить от сервера данные которые она сама как ей нужно обработает.
В таком случае, единожды описав класс контролла, можно будет его использовать как в десктопе. Создавать экземпляры класса, которые будут жить самостоятельной жизнью. возможно сейчас такое можно реализовать на JS, но я уверен что это намного сложнее чем на десктопе. Вообщем если JS станет сильно типизированным ЯП, а еще в добавок станет полноценно ОО, то программировать под веб станет также легко и эфективно как писать десктопное клиент-серверное приложение. |
|||
|
||||
502 |
|
|||
![]() Я всегда прав ![]() Профиль Группа: Участник Сообщений: 134 Регистрация: 16.7.2011 Репутация: нет Всего: 4 |
||||
|
||||
Rohoss |
|
|||
![]() Начальник интернета ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1308 Регистрация: 9.10.2006 Где: Matrix Репутация: нет Всего: 18 |
Топики Рохосса со временем только актуальней становятся ![]() Не станет JS сильно типизированным. ЯП по своей природе расширяются, а вы предлагаете ограничить. Если его вдруг ограничить до сильно типизированного ЯП куча кода перестанет работать. Тут нужен другой клиентский ЯП. Но добавить его не так просто, тело в том, что в веб и так каши с различных технологий хватает. А добавим ещё один массовый клиентский ЯП и будет каша ещё больше. Веб надо убить весь и создать поновому ![]() |
|||
|
||||
lukas |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 771 Регистрация: 23.2.2007 Репутация: нет Всего: 15 |
Ну совсем не понимаете филисофии JavaScript, вам станет легче, а нам сложнее (тем кто разобрался с философией js). Да не будет вообще сильной или даже средней типизации в JS, это принципиально, вы где нибудь ее видели в PHP/Ruby/Python/Lua ? Текущие движки JS настолько быстры и умны (например V8) что догоняют и обходят типизированную Java, а адобовский типизированный ActionScript вообще обганяют в 2 раза. -------------------- http://code.google.com/p/orionphp/ - opensource скриптовой язык Orion (аналог PHP) для freepascal/delphi. |
|||
|
||||
k0rvin |
|
||||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 442 Регистрация: 24.1.2010 Репутация: 1 Всего: 5 |
для справки: руби и питон (про луа и пхп просто не в курсе, но думаю они тоже) -- сильнотипизированые (строготипизированые) Добавлено через 58 секунд
строгая типизация никого и ни в чем не ограничивает. -------------------- “Object-oriented design is the roman numerals of computing.” — Rob Pike All software sucks |
||||
|
|||||
502 |
|
|||
![]() Я всегда прав ![]() Профиль Группа: Участник Сообщений: 134 Регистрация: 16.7.2011 Репутация: нет Всего: 4 |
||||
|
||||
lukas |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 771 Регистрация: 23.2.2007 Репутация: нет Всего: 15 |
Да, мало вы знаете о типизации. Там утиная динамическая типизация, такая же в js, только по мягче, но по-строже чем в пхп. -------------------- http://code.google.com/p/orionphp/ - opensource скриптовой язык Orion (аналог PHP) для freepascal/delphi. |
|||
|
||||
![]() ![]() ![]() |
Правила ведения Религиозных войн | |
|
1. Уважайте собеседника 2. Собеседник != враг 3. Старайтесь воздерживаться от тем вида "Windows Rulez" или "Linux Rulez" С уважением, Smartov. |
1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей) | |
0 Пользователей: | |
« Предыдущая тема | Религиозные войны | Следующая тема » |
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |