Представлен (http://breach.cc/2014/07/09/we-ve-come-a-long-way-breach-pub...) первый публичный выпуск web-браузера Breach (http://breach.cc/), примечательного модульной архитектурой и гибкими возможностями настройки. Браузер написан языке JavaScript, работает поверх платформы Node.JS и распространяется (https://github.com/breach/breach_core) под свободной лицензией MIT.<center><a href="http://i.imgur.com/oHslEHv.png"><img src="http://www.opennet.me/opennews/pics_base/0_1405060527.png" style="border-style: solid; border-color: #e9ead6; border-width: 15px;max-width:100%;" title="" border=0></a></center>
Использование JavaScript и HTML5-технологий позволяет легко адаптировать интерфейс под свои предпочтения, например, не представляет труда реализовать вертикальные вкладки или изменить логику работы движка автодополнения ввода. Все компоненты браузера реализованы в форме загружаемых модулей, которые представляют собой web-приложения, выполняемые в отдельных процессах, взаимодействующих через специальный API, основанный на Chromium Content API (http://www.chromium.org/developers/content-module/content-api) и Simple View Model. В качестве каркаса для выполнения модулей выступает написанная на C++ платформа ExoBrowser (https://github.com/breach/exo_browser), представляющая собой надстройку над Node.JS и движком Webkit.
<font color="#461b7e">(Платформа) # (реализация браузера)
#
+------------------+ #
| Cocoa/Win/GTK+ | #
+---------+--------+ #
| #
+----------------+ +---------+--------+ # +-----------------------+
| Content API +-+ ExoBrowser (C++) | # | Web Views (HTML/JS) |
+----+-----------+ +--------------+---+ # +-----------------------+
| (JS API) | # | (TCP)
+----+---+ +----+ +--------------|---+ # +-----------------------+
| Webkit +--+ v8 +-+ NodeJS +---+-----+ Local Server (JS) |
+--------+ +----+ +------------------+ # +-----------------------+</font>
Браузер пока находится на стадии ранней альфа-версии, готовой для начального ознакомления с предлагаемыми проектом технологиями. Среди доступных внешних модулей: mod_strip (https://github.com/breach/mod_strip) (управление вкладками и размещение управляющих элементов), mod_stats (https://github.com/breach/mod_stats) (накопление и вывод статистики о работе пользователя), mod_newtab (https://github.com/breach/mod_newtab) (пример отображения контента при открытии новой вкладки). Реализация примечательна функцией фильтрации вкладок по мере набора в адресной строке и отражением цвета страницы на кнопках.
URL: http://breach.cc/2014/07/09/we-ve-come-a-long-way-breach-pub...
Новость: http://www.opennet.me/opennews/art.shtml?num=40177
Давно пора! Сам себя внутри себя умеет запускать?
По сути он работает на движке Хрома написанном на C++ и ассемблере. Движок выполняет код Node.JS, которые выполняет дополнительный код этого "браузера".
То есть фактически это просто интерфейс Хрома.Примечательно, что все популярные браузеры именно так и устроены. Почти все их интерфейсы написаны на JavaScript и CSS, которые обрабатывают и отображают движки. А их функции просто группа вызванных функций движка.
Если это "браузер для написания которого автор использовал ТОЛЬКО javascript", то и Opera тоже такой браузер. Она просто javascript и css выполняемый на чужом движке (движке Хрома).
Ну в общем дело было так: грузим в браузере линь, в котором запускаем браузер, в котором запускаем браузер, в котором запускаем линь, в котором запускаем... ну ... вы поняли.Через некоторое время никто уже и не вспомнит с чего это началось :).
Тут нужна картинка с Xzbit
Yo dawg, we heard you like web browsers so we put a web browser into your web browser so you can browse the web while you browse the web.
Зашел написать этот комментарий.
пришел сюда за этим каментом
Название говорящее :))))))))))))))
Когда я вижу такую новость, то так и хочется спросить - "НУ И ЗАЧЕМ?"Все эти браузеры на node.js, непонятно кому нужные ЯП, постоянные поделки всего и всея на Питоне (который, видимо, будет "паскалем нашего времени" во всех образрвательных учереждениях). Что это вообще за тренд?
По моей деятельности приходится писать много всяких скриптов уровня среднего администратора, но я никогда и никому их не показываю, ибо всегда перед этим задаю себе вопрос - "Ну, и что теперь? Кому это надо? А не будет ли стыдно?". Конечно, скрипты обслуживания - не полноценное ПО, это я для аналогии.
Изиняюсь, если ущемил чьи-то воззрения, ибо накипело.
А чем вам не угодил Python? Я могу за час написать программу, на которую у программиста на Си потребуется несколько дней. Если вы не понимаете, это не значит, что это не нужно. Ваше непонимание - исключительно ваша проблема, так что перед тем как писать подобные комментарии стои подумать: "А не будет ли стыдно?"
> перед тем как писать подобные комментарии стои подумать: "А не будет ли стыдно?"Твои слова да тебе же в уши, чтобы ты не врал так откровенно о "могу за час написать",а то сразу вспоминается анекдот про машинистку и скорость набора.
На питоне все же некоторые вещи быстрее писать (но это не будет разница час и пару дней), особенно в качестве прототипа - можно набросать UI и кое-какую логику за пару дней, чтобы показать заказчику, а то что требует скорости переделать на С или юзать что-нибудь вроде NumPy.
Кроме того для питона есть вагон готовых модулей на все случаи жизни в одном месте.Это не значит что на нем надо ОС писать, но "калькулятор" или что-то подобное вполне можно.
Кроме того для базового обучения тоже хорошо подходит (смотрим например MIT CS101) для НЕ программистов - всяким физикам/лирикам и офисному планктону тоже иногда например макросы нужны.
Если ты думаешь, что Си++ используется голый, без библиотек, то пора просыпаться - это совсем не так и ничего на Питоне быстрей, чем на Си++, ты не напишешь. А если что-то серьезное писать, то только на Си/Си++, возможно, со вставками на Ассеблере, где нужна скорость света.
Треш, угар, области видимости, нулевые указатели - это при попытке собрать годичной свежести C++ проект завязанный на OpenCV. Для питона достаточно поддерживать актуальность биндинга, а собственно питонический код будет работать норм и ничуть не тормознее плюсового.
> А если что-то серьезное писать, то только на Си/Си++вот ведь… хуже хипстоты с js только хипстота с цпп. поубивали бы уже друг друга, что ли…
> Если ты думаешь, что Си++ используется голый, без библиотек, то пора просыпаться
> - это совсем не так и ничего на Питоне быстрей, чем
> на Си++, ты не напишешь. А если что-то серьезное писать, то
> только на Си/Си++, возможно, со вставками на Ассеблере, где нужна скорость
> света.Ага, сайтик на С++ сочини для начала.
> Ага, сайтик на С++ сочини для начала.для неумеющих пользоваться гуглем подскажу ключевые слова: «c++ web framework». наслаждайся.
>> перед тем как писать подобные комментарии стои подумать: "А не будет ли стыдно?"
> Твои слова да тебе же в уши, чтобы ты не врал так
> откровенно о "могу за час написать",а то сразу вспоминается анекдот про
> машинистку и скорость набора.Дык какие проблемы, например решение матричного уравнения Риккати, легко написать за час на python, на Си потребуется несколько месяцев.
судя по написанному, врать вам не стыдно, вы ни питон, ни си не знаете, а пишите, что программировать вообще умеете
Там же UI в основном на java script. А так это еще один браузер на Chromium. Только непонятно почему у них WebKit на картинке, там же Blink должен быть давно.
Одни пишут браузеры, другие пишут "НУ И ЗАЧЕМ?" в коментариях
это не браузер. Браузер у них готовый - webkit
> Одни пишут браузеры, другие пишут "НУ И ЗАЧЕМ?" в коментарияхЛучше бы они нормальным делом занялись, а не писюльками всякой ерунды.
У них есть время и желание. Если тебе нужно что-то другое - пиши, делись.
>который, видимо, будет "паскалем нашего времени"бейсиком же. гвидобейсик
>бейсиком же. гвидобейсикBasic к python не имеет никакого отношения. Си гораздо ближе к Basic.
Ты нихрена не понял, хотя там правы оба.
> Когда я вижу такую новость, то так и хочется спросить - "НУ И ЗАЧЕМ?"Поищите ответ в плоскости социальной психологии.
Мне кажется что вы хороший. Легко вам по этой причине не будет, но почитайте - может быть станет чуть-чуть легче.
> This is where this student begins by recognising that university, like school, is also fairly phony in many ways. What saves university is generally the beauty of the subject as built by great minds. But if you just look at the professors and don't see past their narrow obsession with their pointless and largely unread (and unreadable) publications to the great invisible university of the mind, you will probably conclude its as phony as anything else. Which it is.
> Now the other aspect of the BBM that I remarked on is his sensitivity to artifice. To put it in plain American, he knows bullshit when he smells it. Most of us do. However the BBM has much lower tolerance of it than others. He can often see the absurdity of the way things are, and has the intelligence to see how they should be. And he is, unlike the rank and file, unprepared to compromise. And this leads to many things.
> http://www.lambdassociates.org/blog/bipolar.htm
>Когда я вижу такую новость, то так и хочется спросить - "НУ И ЗАЧЕМ?"Например selenium webdriver - функциональные тесты веб-приложений гонять на сервере без иксов, жрать памяти и процессора будет всяко меньше чем firefox + framebuffer.
>Все эти браузеры на node.js, непонятно кому нужные ЯП, постоянные поделки всего и всея на Питоне (который, видимо, будет "паскалем нашего времени" во всех образрвательных учереждениях). Что это вообще за тренд?Нормальный тренд. Скорость разработки, наличие людей для поддержки кода на рынке труда важнее скорости работы ещё не написанного кода. Вот как напишешь, поймёшь где узкие места - можешь оптимизировать, можешь даже переписывать на Си или ещё чём-то.
>По моей деятельности приходится писать много всяких скриптов уровня среднего администратора, но я никогда и никому их не показываю, ибо всегда перед этим задаю себе вопрос - "Ну, и что теперь? Кому это надо? А не будет ли стыдно?". Конечно, скрипты обслуживания - не полноценное ПО, это я для аналогии.
Ну значит у вас такое ПО. Я обычно на pypi выкладываю, git/bitbucket, люди качают, значит им нужно. Даже мелкие скрипты можно выкладывать на gist, c хорошими комментариями люди найдут.
Как вы лодку назовете.....
Т.е. чтоб поработать в этом браузере, надо его запустить в другом браузере?
>В качестве каркаса для выполнения модулей выступает написанная на C++ платформа ExoBrowserа это слабо что ли было на скрипте осилить?
Главная фича в браузере это модули и легкая кастомизация, пацаны.
Жрет кстати мало на удивление
http://i.imgur.com/hjSg3cI.png
классно, открой пожалуйста 50 или 100 вкладок, интересна динамика.
Никакого волшебства, ~50 вкладок с theverge, 50мб на вкладку. Расходимся.
http://i.imgur.com/ZelhT8h.png http://i.imgur.com/WytkJG6.png
Так а в макоси на процесс показывается вместе с shared mem или без? А то вот в линуксе же оно кажет вместе с shared mem
>> Так а в макоси на процесс показывается вместе с shared mem или
>> без? А то вот в линуксе же оно кажет вместе с
>> shared mem
> Кажется, выросло поколение утырков, ничего не знающих о распределении памяти процессов
> в лине - да и вообще в любой оси, если на
> то пошло....Ну дык, благими намерениями спрятать всё от пользователей. То и получили.
круто! следующий на очереди FF (https://developer.mozilla.org/en-US/docs/Web/API/Using_the_B...).
Если говорить о такой степени применения JS, то Firefox кагбэ уже и аж с самого рождения. Просто вместо HTML использует для описания своей морды XUL. А так всё склеено тем же JS и разукрашено через CSS.
> Использование JavaScript и HTML5-технологий позволяет легко адаптировать интерфейс под свои предпочтения, например, не представляет труда реализовать вертикальные вкладки или изменить логику работы движка автодополнения ввода.Да это же XUL для бедных, получается!
думаю XUL уйдёт, в firefox OS его нет.
Уже ушёл.
Всё полезно что в голову залезло.
node-webkit, Atom Shell, ExoBrowser, ...
нужно больше велосипедов!
Очередное никому не нужно поделие студентов.
Браузер они написали, ага (breach_core):
-------------------------------------------------------------------------------
Language files blank comment code
-------------------------------------------------------------------------------
Javascript 33 694 2579 5354
CSS 8 159 172 1879
HTML 6 38 10 384
Bourne Shell 2 11 10 24
make 1 5 0 12
-------------------------------------------------------------------------------
SUM: 50 907 2771 7653
-------------------------------------------------------------------------------С каких это пор весь бразуре можно реализовать в 7.5к строк?
Итого у нас "браузер" из 5к строк на JS + тонны С/С++ кода в webkit + node.js который тоже чуть менее чем полностью на С/С++ - и авторы говорят что за js будущее и С/С++ не нужен. Ну-ну...
Вы просто не успеваете за современной терминологией.Браузер: обвязка для webkit
(Новая) Операционная система: несколько патчей к Linux или Android
Инновационный: с оранжевыми кнопочками
> на JavaScriptа он дисковод умеет открывать?
Самый лучший "браузер" node.js, это node-webkit!
А что случилось с conkeror? В зависимостях iceweasel :(
Хорошая попытка Javascript! Но, ты никогда не созреешь для серьёзных вещей.
Ну чего вы тут нюни распустили... ну естественно JS это всего лишь интерпретируемый язык и ему нужны интерфейсы для связи с интерпретаторами, от которых он полностью зависит. Тут дело в другом, JS просто имеет свою историю. Если ктото хочет его вытеснить с рынка, то надо работать по линии черного пиара, надо скрупулезно под микроскопом рассматривать каждую особенность этого языка и его движков, каждую слабую сторону, находить в них недостатки и уязвимости мнимые и не мнимые, цепляться за любую мелочь и на весь мир кричать об ужасающих страшных и чудовищных последствиях для всего человечества, которые непременно произойдут если только срочно не отказаться от всего что связано с JS даже косвенно.
Расслабьтесь.
https://www.destroyallsoftware.com/talks/wat
Удовлетворите моё любопытство: вы серьёзно полагаете, что это может сработать, или пытаетесь таким образом показать js-хейтерам всю нецелесообразность их поведения?
скажите уже им кто-то, что их браузер написан на языке c++ с примесью клеекода на js.
И тут Webkit... Я уж губы раскатал, что наконец-то разработали браузер, в котором действительно можно без цистерны водки под себя перепилить всё и отдебажить самому, ан нет...
> И тут Webkit... Я уж губы раскатал, что наконец-то разработали браузер,
> в котором действительно можно без цистерны водки под себя перепилить всё
> и отдебажить самому, ан нет...Да легко! Как только ты в перерывах между уроками напишешь провильный интернет, который можно будет "броузить" "лёгкими движками" и заменишь ним текущий - так сразу и "лёгкий броузер" тебе напишут.
Мне кажется правильно это называть «Представлен web-браузер Breach с интерфейсом, написанным на JavaScript». Вот как-то так. Что ж, студентов можно поздравить с тем, что они изобрели многопроцессный Firefox за пол года до того, как сам Firefox станет многопроцессным.