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

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

Sponsored · Your Podcast. Everywhere. Effortlessly. Share. Educate. Inspire. Entertain. You do you. We'll handle the rest.
Avatar for Fred Chien Fred Chien
August 05, 2013

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

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

Avatar for Fred Chien

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