Upgrade to Pro — share decks privately, control downloads, hide ads and more …

我用 Node.js 開發自己的 Web 瀏覽器

Fred Chien
August 05, 2013

我用 Node.js 開發自己的 Web 瀏覽器

失去瀏覽器為依靠的 JavaScript,令人感到不安、充滿焦慮。到底是瀏覽器成就了我,還是我成就了瀏覽器? 既然感到害怕,就面對他吧!既然是 Open Source Developer,就動手做吧!用 Node.js 來開發自己的 Web 瀏覽器,支援 HTML5/CSS3/WebGL 等最新標準的瀏覽器!

Fred Chien

August 05, 2013
Tweet

More Decks by Fred Chien

Other Decks in Programming

Transcript

  1. How to use Barbarian var Barbarian = require('barbarian'); var barbarian

    = new Barbarian(); barbarian.init(function() { barbarian.createWindow('http://coscup.org/'); });
  2. • Open source project • Founded By Marshall Greenblatt in

    2008 • Web browser control based on Chromium CEF
  3. • Blink! • Using CEF in your native application •

    Support all of Chromium features • HTML5/CSS3/WebGL • WebRTC, Webcam and speech input • off-screen rendering support • Cross-platform(Linux, Windows, Mac) • C/C++, Java, .Net, .net/Mono, Python, Delphi CEF Features JavaScript?
  4. CEF3 • Multi process implementation using the Chromium Content API.

    • Better performance • Faster access new features
  5. • Event-loop ◦ Using libuv to do integration • Multi-process

    ◦ making a single executable binary ◦ UI/Renderer Process • Multi-thread ◦ buggy ◦ Lost events ◦ Event Handler crashes ◦ Segmentation faults with Node.js Issues
  6. • Page Control • Extenssion • IPC between Node.js and

    Chromium’s JS Engine • API to customize URL prefix (ex, hello://) • Cross-platform TODO