手头上有个项目需要做浏览器的相关功能,评估了几个嵌入式方案最后选定CEF作为开发基础。
在入坑新技术的时候第一选择是去官网学习,这是一个非常好的习惯。
CEF官网(请科学上网)
在官网上有详细的介绍,英文苦的兄弟可以谷歌翻译大概意思是对的。必须仔细阅读。
CEF的维基百科
什么是CEF:
Chromium嵌入式框架(CEF)是一个将基于Chromium的浏览器嵌入到其他应用程序的简单框架。支持Windows, Linux, Mac平台。除了提供C/C++接口外,也有其他语言的移植版。
其实可以理解CEF是个基于Google Chromium项目的开源Web browser控件
CEF的历史:
CEF有两种版本的Chromium Embedded Framework:CEF 1和CEF 3
在Chromium Content API出现后,CEF 2的开发被放弃。
CEF 1是基于Chromium WebKit API的单进程实现。它不再积极发展或支持。
CEF 3是基于Chromium Content API的多进程实现,其性能类似于Google Chrome。
CEF能做什么:
可以做一个QQ浏览器如果你有这个精力。
可以做一个跨平台的桌面底层方案。已经有类似实现 https://electronjs.org/
国内很多知名互联网公司的客户端产品都在使用类似技术。
选择的版本:
综上所述我们选择CEF3作为我们的开发基础。采用C++作为开发语言。使用其他语言的兄弟可以参考对应语言的项目。
例如:.Net(CEF3) - https://github.com/cefsharp/CefSharp
更多语言在官方文档有详细描述。
开发环境:
硬件配置:AMD Ryzen 7 1700 16核 + 64G内存 + 512固态硬盘
硬件环境不是必须要求 但应保证8G内存 和 4核心以上处理器。
以上硬件配置是为了保证编译cef+Chromium核心代码更快速。
cef有对应的二进制打包发布版本,使用这个版本是不需要编译Chromium源码的,看自己需求一般情况这种方式足够满足我们的开发需求。
二级制打包地址
操作系统:Windows10 专业版 64位 1709
SDK: 10.0.15063.674
IDE: Visual Studio 2015 企业版
 
预计下一篇:
CEF小白人系列2-DEV环境配置-Windows10
 
学习交流:
QQ群:14764183
加入验证标注 cef入坑。
 
问题:
Q:为什么作者选择 Visual Studio 2015 而不是 Visual Studio 2017 ?
A:这是因为作者的工作需要,我会选择特定的CEF版本而不是最新版本。
Q:怎么科学上网?
A:这我没办法回答,自行百度。
 
其他:
文章风格尽量短小,一个知识点一篇文章,尽量图文并茂。
欢迎转载请注明出处。

CEF小白人系列1-认识CEF的更多相关文章

  1. CEF小白人系列2-DEV环境配置-Windows10+SDK+VS2015

    以下资料整理来自CEF官方教学.作者做了翻译和整理.并会以一种重事件操作的方式来一点点入门. 3个问题: 在上一篇内容中我们了解了什么是CEF,能干些什么.必要的物理学习环境. 下面我们也是以带着问题 ...

  2. 小白成长系列--HTTP协议(一)

    序:小白成长系列是笔者使用最简单易懂的逻辑来解释常见的计算机相关知识,不仅理解,还让你记忆深刻\(^o^)/ 先理解什么是协议? 协议就是双方要做某件事情而制定的规则,而且双方必须要遵从协议所约定的内 ...

  3. 单片机小白学步系列(二十) IO口原理

    IO口操作是单片机实践中最基本最重要的一个知识,本篇花了比較长的篇幅介绍IO口的原理. 也是查阅了不少资料,确保内容正确无误,花了非常长时间写的. IO口原理原本须要涉及非常多深入的知识,而这里尽最大 ...

  4. 单片机小白学步系列(十三) 点亮第一个LED——好的開始,成功的一半

    前面介绍了非常多概念知识.做了非常多准备工作,从这一节開始,我们正式開始单片机的学习.我们将使用单片机完毕一项非常easy的工作:点亮一个发光二极管(即LED:Light-Emitting Diode ...

  5. 单片机小白学步系列(十四) 点亮第一个LED的程序分析

    本篇我们将分析上一篇所写的程序代码.未来学习单片机的大部分精力,我们也将放在程序代码的编写上. 可是不用操心.我会很具体的介绍每一个程序的编写思路和各种注意事项等. 之前我们写的程序例如以下: #in ...

  6. 开源工作流管理系统节点接收人设置“指定节点处理人”系列讲解

    关键字: 驰骋工作流程快速开发平台 工作流程管理系统 工作流引擎 asp.net工作流引擎 java工作流引擎. 开发者表单  拖拽式表单 工作流系统CCBPM节点访问规则接收人规则 适配数据库: o ...

  7. 小北微信小程序之小白教程系列之 -- 样式(WXSS)

    为了适应广大的前端开发者,WXSS 具有 CSS 大部分 特性.同时为了更适合开发微信小程序,WXSS 对 CSS 进行了扩充以及修改.与 CSS 相比,WXSS 扩展的特性有:尺寸单位和样式导入. ...

  8. Redis小白入门系列

    一.从NoSQL说起 NoSQL 是 Not only SQL 的缩写,大意为"不只是SQL",说明这项技术是传统关系型数据库的补充而非替代.在整个NoSQL技术栈中 MemCac ...

  9. 性能工具之Jmeter小白入门系列之一

    一.简单了解 Apache JMeter The Apache JMeter application is open source software, a 100% pure Java applica ...

随机推荐

  1. 【开发技术】Eclipse插件Call Hierarchy简介及设置

    Call Hierarchy 主要功能是 显示一个方法的调用层次(被哪些方法调,调了哪些方法) 在MyEclipse里Help - Software updates - Find and instal ...

  2. Sublime Text 2激活、插件包安装、以及快捷键

    http://jingyan.baidu.com/article/ff4116259b057c12e48237b8.html Sublime Text作为一款轻量.简洁.高效.跨平台的编辑器.支持N多 ...

  3. Java之IO流学习总结【下】

    2.字节流 |-- InputStream(读) |-- OutputStream(写) 由于字节是二进制数据,所以字节流可以操作任何类型的数据,值得注意的是字符流使用的是字符数组char[]而字节流 ...

  4. 洛谷 P1099 树网的核

    P1099 树网的核 题目描述 设T=(V, E, W) 是一个无圈且连通的无向图(也称为无根树),每条边到有正整数的权,我们称T为树网(treebetwork),其中V,E分别表示结点与边的集合,W ...

  5. javascript之this

    全局作用域的this this == window //true this.a = 8 window.a 一般函数的this function thisTest(){ return this; } t ...

  6. python 控制台颜色

    python_控制台输出带颜色的文字方法   控制台输出带颜色的文字方法: 在python开发的过程中,经常会遇到需要打印各种信息.海量的信息堆砌在控制台中,就会导致信息都混在一起,降低了重要信息的可 ...

  7. IE下常见的js兼容问题

    1.IE下不支持console.log() 2.IE下不支持addEventListener() 解决办法:用IE相应的attachEvent() 3.IE下请求后台接口会有缓存 解决方案,接口加版本 ...

  8. 童攀TP5企业网站实战笔记

    $this->assign('data',$data) ---恢复内容开始--- return view();   载入视图 {include file='public/head'} 包含文件 ...

  9. SpringMVC源码之Controller查找原理

    摘要 本文从源码层面简单讲解SpringMVC的处理器映射环节,也就是查找Controller详细过程. SpringMVC请求流程 Controller查找在上图中对应的步骤1至2的过程 Sprin ...

  10. Date对象和正则对象

    1.Date对象 创建 var date1 = new Date(); var date2 = new Date(12983798123);//填一个毫秒值,应该是距离1970年1月1日.....多少 ...