手头上有个项目需要做浏览器的相关功能,评估了几个嵌入式方案最后选定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. 新版Azure Automation Account 浅析(一) --- 创建和Run As Account

    去年年底Azure中国的Automation Account悄悄做了升级.新版本不管从功能还是end user experience方面都让人耳目一新.如果说升级前只是一个运行脚本的小工具,升级后的A ...

  2. Flex: Holy Grail

    Flex:Holy Grail <html> <head> <style type="text/css"> body,div,header,ma ...

  3. SpringAOP简单入门

    注解形式 步骤一.定义一个interface public interface ArithmeticCalculator { double plus(int i, int j); double sub ...

  4. 初始化本地项目到远程仓库【git】

    大部分情况,都是从远程仓库clone项目,步骤很简单. 今天要把本地项目初始化到远程仓库的步骤记录下来,其实也很简单,几步就好: #初始化本地仓库 git init #将本地内容添加至git索引中 g ...

  5. 前后端分离之CORS和WebApi

    目前的项目是前端mv*+api的方式进行开发的,以前都是没有跨域的方案,前后端人员在同一个解决方案里边进行开发,前端人员要用IIS或VS来开发和调试Api,这样就很不方便,迫切需要跨域访问Api. 评 ...

  6. Log4j扩展使用--日志记录器Logger

    OK,现在我们认真的研究下Logger的配置,进行相关配置扩展. Log4j有三个主要的组件:Loggers(记录器),Appenders(输出源)和Layouts(布局).其中,Logger负责记录 ...

  7. IO (二)

    1 字符流的缓冲区 缓冲区的出现提高了对数据的读写效率. 对应的类: BufferedWriter BufferedReader 缓冲区要结合流才能使用. 在流的基础上对流的功能进行了增强. 2 Bu ...

  8. javascript 中的console.log有什么作用啊?

    相比alert他的优点是: 他能看到结构话的东西,如果是alert,淡出一个对象就是[object object],但是console能看到对象的内容. console不会打断你页面的操作,如果用al ...

  9. Memcached原理与应用

    Memcached原理与应用 标签: linux 笔者Q:972581034 交流群:605799367.有任何疑问可与笔者或加群交流 1.Memcached是什么 高性能 支持高并发 分布式内存缓存 ...

  10. PAT basic level 1001-1019 解题笔记

    1002 写出这个数 采用字符串输入数据,再对每位减去字符‘0’,得到该位相应的整数 int len=s.length();//字符串的长度 ; ;i<len;i++)//每位减去‘0’,逐位相 ...