手头上有个项目需要做浏览器的相关功能,评估了几个嵌入式方案最后选定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. 进程间通信之利用CreateFilemapping()

    这两天在复习进程间通信,复习一下记不住,复习一下记不住...就写个小博客献个丑,先来第一个内存映射 代码亲测通过 CreateFileMapping()的最后的一位用来做进程间通信 步骤: 1.Cre ...

  2. 图表工具--- ECharts.js学习(一) 简单入门

    ECharts.js学习(一) 在项目开发的时候,在前端的数据需要用图表的形式展示.网上搜索了一下,发现有几种统计图库.具体有哪几种可以看: 前端开发者常用的9个JavaScript图表库 EChar ...

  3. linux_DNS

    linux其配置文件 : /etc/resolv.conf nameserver 223.5.5.5 nameserver 223.6.6.6 # 这两个解析地址为阿里云解析地址,格式也是这样 什么是 ...

  4. AI_深度学习概论

    什么是是神经网络? 假如有6间房屋的数据集,已知房子的面积,单位是平方米或平方英尺,已知房子的价格.如果通过这6间房子的价格和房子的面积,预测房子的价格,首先要建立起一个数据模型 ,x轴为价格,y轴为 ...

  5. js_6_dom选择

    什么是dom编程? 找 找到html中的标签,赋值给一个变量 改 通过更改这个变量动态地更改html中的内容 返回的内容为列表 如何找到那些标签? id:var find = document.get ...

  6. linkin大话设计模式--常用模式总结

    linkin大话设计模式--常用模式总结 一,常用设计模式定义 Abstract Factory(抽象工厂模式):提供一个创建一系列相关或相互依赖对象的接口,而无需指定它们具体的类. Adapter( ...

  7. PHP实现QQ登录的开发教程

    第三方登录,就是使用大家比较熟悉的比如QQ.微信.微博等第三方软件登录自己的网站,这可以免去注册账号.快速留住用户的目的,免去了相对复杂的注册流程.下边就给大家讲一下怎么使用PHP开发QQ登录的功能. ...

  8. 从LINQ开始之LINQ to Objects(上)

    LINQ概述 LINQ,语言集成查询(Language Integrated Query),它允许使用C#或VB代码以查询数据库相同的方式来操作不同的数据源. LINQ体系结构 从上图可以看出,LIN ...

  9. DNS服务器解析域名的过程

    最近在读许令波老师的<深入分析Java Web技术内幕>,算是对DNS服务器域名解析有个大体的理解,以下的内容来自个人对书中内容的整理 1.什么是域名解析? 当我们在浏览器的地址栏输入一个 ...

  10. shell第四篇(下)

    摘自王垠的:Unix的缺陷 我想通过这篇文章解释一下我对 Unix 哲学本质的理解.我虽然指出 Unix 的一个设计问题,但目的并不是打击人们对 Unix 的兴趣.虽然 Unix 在基础概念上有一个挺 ...