Чи з часом HTML5 / JS замінить усі мови клієнта? [зачинено]


12

Мені просто цікаво майбутнє всього. IMHO, є 4 сили, які визначають, куди йде технологія: Microsoft, Apple, Google, Adobe.

Схоже, в iPhone / iPad iAD Apple від Apple зараз можна запрограмувати в HTML5. Так це означає, що HTML5 зрештою замінить target-c?

Крім того, Microsoft перенесла свою увагу з WPF / Silverlight на HTML5, і я припускаю, що Visual Studio 2011 буде стосуватися підтримки HTML5. Тому що це робить Microsoft. (Інструменти). Через кілька місяців IE9 останній великий браузер підтримає HTML5.

Аналогічно Adobe потрапляє на смугу HTML5 і дозволяє експортувати флеш-вміст у HTML5 за допомогою своїх останніх інструментів.

І всі ми знаємо, скільки в ліжку Google з html5. Чортів, їх остання операційна система (Chrome OS) - це не що інше, як великий жировий веб-браузер.

Програми для мобільних пристроїв (тобто iPhone, Android, WM7) компанії дуже важко програмувати, особливо для багатьох різних пристроїв (кожен зі своєю мовою), тому я припускаю, що це не триватиме занадто довго. Тобто, HTML5 стане об'єднавчою мовою. Що дещо сумно для розробників додатків, оскільки тепер користувачі зможуть безкоштовно відтворювати в "Інтернеті" додатки html5 в Інтернеті, і за них буде складно стягувати плату.

Тож чи сильно набрані мови справді приречені, і в майбутньому, скажімо, через 5-10 років, програмування на стороні клієнта буде лише в HTML5? Чи всі ми станемо програмістами JavaScript? :) Тому що знаки точно вказують таким чином ...


1
Ті прихильники прогресивного розширення вже повинні бути в своїх могилах.
Gio Borje

2
Ви кажете, що переваги сильного набору тексту більше не знадобляться?
Аарон Анодід

1
Я думаю, це буде VS 2012, а не VS 2011.
DeadMG

6
Якщо це так, мені просто доведеться вбити себе.
Робота

2
Я втомився турбуватися про сумісність браузера. Це так чортово по-дитячому.
The Muffin Man

Відповіді:


14

Я думаю, що неправильно припускати, що HTML5 / JS замінить ВСІ мови клієнта. Чи піде багато додатків таким шляхом у наступні роки? Так, певно. Чи всі вони будуть? Немає.

Інший головний момент, який слід зазначити, - ландшафт постійно змінюється. HTML5 - це відмінна технологія, яка обіцяє вирішити багато проблем, які зараз розробники мають, коли намагаються писати програми, які працюють на крос-платформі. Звичайно, HTML5 / JS може вирішити багато з цих проблем, але ландшафт зміниться, і новий набір проблем з’явиться. З часом HTML5 здасться застарілим.

Через 10 років запитайте себе, чи HTML5 / JS був вирішенням усіх проблем, і я можу все, але гарантую, що відповідь буде ні. Через 20 років саме питання, мабуть, здасться смішним.


+1 Я повністю згоден. Подивіться трохи в історію, "останнє і найбільше" завжди замінюється новим "останнім і найбільшим". Це частина того, що настільки велике в програмуванні, воно завжди буде розвиватися.
Бет Вайтзель

все розвивається з різною швидкістю, хоча - як взаємодія користувачів комп'ютера - пуншкарди, потім клавіатури, потім миші - мені часто цікаво, що далі, бо це може виявитись основним змінником ігор у програмі для клієнтських додатків - мова, 3D - вони додаються - але щось замінить клавіатура / миша? Я так думаю - хоча не впевнений, коли.
Аарон Анодід

6

Javascript - дуже погана мова програмування. Переклад із статично типових мов програмування, таких як Java з GWT, стає дедалі поширенішим. Javascript може стати тим же об'єднавчим мовою, що і асемблер - ви можете писати на ньому безпосередньо, але рідко це гарна ідея.


1
Не знаю лише мов, які набираються статично, але якщо ви кинете туди jQuery або MooTools тощо, я погоджуся з вами :)
Damovisa

8
Я не згоден з вами, що JavaScript - це погана мова, це абсолютно не правильно! :) Як здається, існує багато лінивих програмістів, які знають Java чи інші серверні мови на протязі багатьох років, і вони не хочуть вдосконалюватись, вивчаючи нові мови, і вони кажуть, що JavaScript поганий: D Тому дуже багато інструментів та фреймворки для створення JavaScript з мовами серверної сторони! JavaScript - це не іграшка в Інтернеті, це справжня мова!
Занго

Я також не згоден. Я вважаю, що таке невірно сказане про те, що говорити про JavaScript. Багато професіоналів та успішних продуктів не погоджуються. Час - найкращий тест, і поки що JS робить велику роботу, вивітрюючи технологічний годинник.

Я не можу собі уявити, чому я вважаю за краще писати 50 рядків Java, сподіваючись, що мої зміни можуть бути гарячими, коли я можу написати десять рядків Javascript і просто перезавантажити сторінку. Або усунені перезавантаження веб-сервера, коли я не дивився?
Кевін Клайн

5
Я написав комерційне програмне забезпечення приблизно на десятку мов протягом своєї кар’єри, і я пишу JavaScript щодня. JavaScript є розумною мовою, вважаючи, що він був розроблений та впроваджений протягом декількох тижнів у 1995 році. Навіть так, я не можу зрозуміти апологетів JavaScript. Він має серйозні недоліки, які вимагають від відповідальних кодерів повністю уникати певних мовних особливостей та використовувати інші способами, спочатку не призначеними для забезпечення відсутньої функціональності. Можливо, вони не використовують його для великих проектів? Я виявив, що використовувати його для великих систем з багатьма кодерами досить складно.
PeterAllenWebb

1

Так.

Ось чому. Додатки складаються з коду користувальницького інтерфейсу та резервних даних. Код інтерфейсу користувача запускається в HTML5 / CSS3 / Javascript. Код резервного коду може бути власником та працювати будь-якою мовою. Крім того, jQTouch та подібні бібліотеки можуть використовуватися для імітації інтерфейсів, подібних до iPhone, але з відкритим кодом та написані у Javascript / HTML5 / CSS. jQTouch показав, що якщо браузер надає програмістам JS доступ до подій інтерфейсу пристрою, програмісти JS будуть імітувати той стиль інтерфейсу, який модифікований для тієї ж платформи.

Програмісти Javascript будуть затребувані як ніколи. В архітектурі контролера моделей перегляду модель і контролер знаходяться в задній частині, але найкращий код перегляду найкраще записується у браузері. тобто HTML5, Javascript, CSS. І вам потрібно написати JS-код, щоб отримати доступ до останніх даних, особливо з важким кодом AJAX.

Підвищення продуктивності призведе до динамічних інтерпретованих мов. Оскільки процесори стають все швидшими та швидшими, продуктивність програмування, що кодує програміст, продуктивність системного адміністратора та продуктивність роботи адміністратора додатків сильніше впливають на загальну продуктивність. Вам просто не потрібно турбуватися про те, як швидше працює VM або компілятор мови програмування. Тепер вам потрібно більше турбуватися про те, скільки коштує надання та підтримка вашої програми.

Більшість автономних програм на мою думку не такі великі. Так само, як є кілька чудових автономних програм для ПК, а найкращі перетворюються на веб-додатки. Насправді краще безкоштовно подарувати клієнтському додатку HTML / JS / CSS та стягувати щомісячну плату за доступ до бек-енд даних та бізнес-логіки. Програмісти краще продаватимуть підписки, ніж одномоментні програми.

BTW перегляньте це відео, коли написали частину самостійного веб-додатку у веб-переглядачі Webkit. Це цікаво...


1
Ну і одна приємна річ про "одномоментні" додатки - це те, що принаймні вам не доведеться робити все набридливе ім'я користувача / пароль, як ви майже скрізь в Інтернеті. Держава зберігається локально. Крім того, багато клієнтських додатків насправді не потребують зворотного зв'язку. Подумайте флеш-ігри. А хто в світі купує передплату на футбольні флеш ігри? Ніхто. А хто в світі купує мобільні додатки? всі. На жаль, боюсь, боюсь, що html5 вб'є додатки. Приємно було, щоб незалежні розробники за один раз заробляли гроші.

@Schnitzel - Незалежні розробники зароблятимуть гроші, якщо вони також будуватимуть задній край.
Джей Годсе

2
-1 для "Підвищення продуктивності все піде на динамічні інтерпретовані мови" - на мою думку , це дуже помилково. Я набагато продуктивніший у статизованих та компільованих мовах, як Scala. Я знаходжу помилки набагато швидше, безпосередньо в своєму IDE, ніж у мене з динамічними мовами, такими як PHP, Python та Ruby.
Йонас

Я дійсно не бачу ніякої користі для використання PHP / Ruby / Python замість Scala.
Йонас

@Jonas - Ваше власне запитання на сайті programmers.stackexchange.com/questions/7516/… говорить про те, що динамічні мови керують пакетом продуктивності.
Джей Годсе

1

Існує бажання замінити мови кодування додатків, такі як C ++, Java ... на HTML / Javascript. На те є багато причин, деякі з них:

  • Швидший розвиток
  • Дешевша робоча сила
  • Вбудований зв’язок
  • Простіше виготовити щось, що виглядає добре
  • Текст доступний для механізмів індексації

І все ж, можливо, з’являться інші мови, які будуть використовуватися як замінники JavaScript, що випадають. Зрештою, важко володіти мовою, яка може зробити все правильно, залишаючись мовою високого рівня! І JavaScript вже деякий час існує і накопичив деякі недоліки.

JavaScript може виявитись головною мовою для клієнта, але я не думаю, що це може бути і не бути єдиною мовою, тому що, будучи JS стандартною мовою, розробленою комітетом, це просто знищить інновації на цьому рівні (мови програмування).


0

Це також залежить від майстерності більшості розробників та інструментів, якими вони користуються. Технологічні гіганти, про яких ви згадуєте, можуть керувати технологією на основі інструментів, які вони надають. Наприклад, люди кажуть, що HTML5 - це вбивця Flash, але я вважаю, що занадто далеко є багато розробників Flash, і це непроста задача перенести свої навички на JavaScript. Що в підсумку трапляється, навик залишається однаковим, але вихід стає іншим. У цьому випадку Adobe виходить із засобом перетворення HTML5.

Крім того, ви повинні подумати про продуктивність клієнтських додатків. Там, де це необхідно, буде використаний інструмент, визначений для платформи. Наприклад, наприклад, ігри та програми для iOS. Я знаю, що WebGL виходить добре, але я відчуваю, що люди все ще використовують С для створення ігор. Або вони створять мову гри, яка створює ігри з високою ефективністю. Apple спочатку хотіла лише веб-сайтів, але коли розробники побачили чудеса какао, вони стрибнули на нього, щоб створити стильні додатки.

Підсумовуючи це, завжди знайдуться нові інструменти / мова / технології, які завжди будуть крутішими, ніж нинішні.


0

Не всі, але, мабуть, більшість. Можливо, JavaScript може стати досить швидким, щоб замінити HashCalc, але немає альтернативи VLC (браузери не підтримують усі ці кодеки). Я сумніваюся, веб-браузери дозволять мені отримати доступ до будь-якого файла, який я хочу, або зберегти останній список файлів (без "це нормально для доступу" щоразу, коли я натискаю на останній файл), і мені не подобається ідея розповсюдження додатків, які є 99% веб-браузерами. (кілька мб) з моїм 100 Кб коду, коли мова йде про випадки, коли код розбиває браузери bc, не сумісні з html або мені потрібна версія / незначна модифікація webkit.

-edit- також мені подобаються статичні мови, а не динамічні, але я припускаю, що я можу використовувати гарну мову з LLVM, яку повинен підтримувати браузер.


-1

Я думаю, ми продовжуватимемо рухатись у цьому напрямку, поки браузер не стане операційною системою, і тоді все почне повторно проходити в тому ж порядку, але з отриманими уроками та вдосконаленнями.

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.