Какие языки программирования мне нужно выучить, чтобы создавать надстройки/расширения для всех существующих браузеров?
Мне сказали, что это Javascript? Заранее спасибо.
Какие языки программирования мне нужно выучить, чтобы создавать надстройки/расширения для всех существующих браузеров?
Мне сказали, что это Javascript? Заранее спасибо.
Однажды я сказал что-то вроде этого об IE:
Сам IE написан на C++ и широко использует COM. Модель расширяемости также основана на COM. По моему опыту, у вас есть следующие компромиссы на выбор:
Это всего лишь мое мнение, так что не стесняйтесь получить второе.
Что касается Firefox, вы можете написать множество расширений, даже не используя XPCOM. Их основная модель расширяемости — XUL + JavaScript, состоящая из разметки и скриптов. Таким образом можно реализовать 99% всех расширений. Однако есть вещи, которые вы просто не можете сделать в их рамках, например. Cooliris, поэтому вам придется прибегнуть к XPCOM для вызова собственного кода (или NPAPI).
Расширения Chrome также представляют собой Javascript и разметку, но если вы хотите писать плагины для Chrome, которые делают какие-либо нативные вещи, вам нужно использовать NPAPI, который является C API.
Таким образом, вы можете многое охватить с помощью Javascript, XML и HTML, но вам не хватает IE, и вы ограничены в своих возможностях. Если вы хотите пройти весь путь, вам нужно изучить C++ (и понять тонкие различия между C++ и C для NPAPI). Я не рекомендую возиться с подключаемыми модулями браузера на основе C#, несмотря на многочисленные примеры написания панелей инструментов для IE на C#.
На самом деле я несколько не согласен с другими ответами, потому что, по моему опыту, выбор языка программирования сам по себе не является ограничением при написании расширения для Mozilla или IE.
IE использует COM, поэтому вы можете использовать C или C++ точно так же, как и языки .NET.
Аналогично, Mozilla использует XPCOM, так что на самом деле вам нужен привязка XPCOM, а не какой-либо конкретный язык.
Я написал расширения для обоих этих браузеров на C++. У меня нет опыта написания расширений для других браузеров.
Для браузеров на базе Mozilla в первую очередь следует обратить внимание на Javascript (и другие перечисленные технологии здесь).
Для Internet Explorer любой из языков .NET обычно используется для создания подключаемых модулей браузера IE.
Нет единого ответа для всех браузеров, но для браузеров Mozilla, таких как FireFox, вы в первую очередь говорите о JavaScript. Для IE, естественно, это будут языки .NET. Для других браузеров это будет зависеть, но часто это будет некоторый JavaScript с, возможно, небольшим количеством языка, на котором запрограммирован браузер.
Для браузеров Mozilla отличной отправной точкой станет раздел Расширения Центра разработки Mozilla.