微信移动端数据库组件WCDB即将开源,将让你以最短的时间掌握和使用环信即时通讯云

摘要作为即时通讯云市场的开创者和全球最大的即时通讯云厂商,环信正式发布“Alpha计划”,将对所有报名的ISV厂商和开发者提供技术、审核认证及发行等方面的支持。前言作为即时通讯云市场的开创者和全球最大的即时通讯云厂商,环信正式发布“Alpha计划”,将对所有报名的ISV厂商和开发者提供技术、审核认证及发行等方面的支持。环信“Alpha计划”旨在为ISV和开发者们提供更加全面且专业的支持,帮助其在包括企业IM、协同OA、APP内社交、直播互动、IOT、智能硬件等领域挖掘产生更多落地有商业前景的优质项目,一起建设整个即时通讯云服务生态。培训目标环信Alpha计划开发者线下培训8月季启动了。本次培训将在北京、上海、深圳三个城市相继举行。为期两天的培训,通过循序递进的知识传递,将让你以最短的时间掌握和使用环信即时通讯云。培训时间培训课程大纲您需要具备的技能本次培训将基于iOS开发环境,如果具有如下技能,效果将会更好:•
熟悉iOS的Foundation,和UIKit框架•
熟悉OC语言和http网络请求郭永峰(环信讲师)十余年IT互联网老司机,JavaEE,iOS,Android,php,H5,Linux等方向大牛,曾担任大型银联支付业务系统、跨国际短信业务系统(基于电信的SGIP)以及集团内部通讯系统的项目负责人。培训认证报名地址

摘要微信开发团队宣布将微信自用的移动端数据库组件 WCDB(WeChat
Database)正式对外开源。前言微信团队两周前预告即将开源WCDB后(详见当时资讯《[资讯]
微信移动端数据库组件WCDB即将开源!》),于2017年06月09日正式开源了微信自用的移动端数据库组件
WCDB(WeChat
Database)。WCDB简介WCDB是一个高效、完整、易用的移动数据库框架,基于
SQLCipher,支持 iOS、macOS 和
Android。微信高级工程师何俊伟表示:“开源只是故事的开始,我们仍会持续对
WCDB
做改进,包括更易用的接口、更好的性能、更高的可靠性。这些改进最终也会原封不动地在微信使用。”WCDB(WeChatDataBase)是微信官方的移动端数据库组件,致力于提供一个高效、易用、完整的移动端存储方案。它包含三个模块:WCDB-iOS/Mac;WCDB-Android;数据库损坏修复工具WCDBRepair。WCDB的开发背景对于iOS开发者来说,数据库的技术选型一直是个令人头痛的问题。由于Apple提供的CoreData框架差强人意,使得开发者们纷纷将目光投向开源社区,寻找更好的存储方案。
对于微信也是如此。数据库是微信内最基础的组件之一,消息收发、联系人、朋友圈等等业务都离不开数据库的支持。为了满足需求,我们也对现有方案做了对比研究。目前移动端数据库方案按其实现可分为两类:关系型数据库,代表有CoreData、FMDB等。CoreData
它是苹果内建框架,和Xcode深度结合,可以很方便进行ORM;但其上手学习成本较高,不容易掌握。稳定性也堪忧,很容易crash;多线程的支持也比较鸡肋。FMDB
它基于SQLite封装,对于有SQLite和ObjC基础的开发者来说,简单易懂,可以直接上手;而缺点也正是在此,FMDB只是将SQLite的C接口封装成了ObjC接口,没有做太多别的优化,即所谓的胶水代码(Glue

摘要今日,腾讯正式开源 QMUI Web 前端框架:一个旨在提高 UI
开发效率、快速产生项目 UI 的前端框架,来自腾讯广研 QMUI
团队。前言经过长时间的打磨迭代,QMUI Web作为腾讯广研 QMUI
团队的一个开源项目,正式发布到 Tencent Github。QMUI Web 是一个 Web UI
的解决方案,从零开始,由编码规范,到组件和工具方法的制作,再到工作流的整合,不断在迭代,也不断在优化,走过了不少的路。QMUI
Web 是一个专注 Web UI
开发,帮助开发者快速实现特定的一整套设计的框架。框架主要由一个强大的
SASS 方法合集与内置的工作流构成。通过 QMUI Web,开发者可以很轻松地提高
Web UI
开发的效率,同时保持了项目的高可维护性与稳健。如果你需要方便地控制项目的整体样式,或者需要应对频繁的界面变动,那么
QMUI Web 框架将会是你最好的解决方案。更多详细介绍请见:《腾讯 Web UI
解决方案 QMUI Web —— 探索与沉淀》开发背景2014 年中,QMUI
团队支持的主要项目是 QQ 邮箱,Web
端的邮箱是个庞大的项目,但其并没有统一的 UI
基础库,多年的高速迭代使得项目的 UI
代码变得混乱,各个模块之间各自开发,除了在代码层面表现出混乱和不可控之外,表现层面也并没有很好地统一起来。因此,项目急需一套统一的团队编码规范以及一个
UI 基础库。恰好,这个时候 Sass 等 CSS
预处理器已经发展成熟,自动化工作流的工作模式也日趋完善,因此,我们决定基于这些技术制作一套通用于不同项目的
Web UI
框架。框架的场景定位很明确:需要控制整体样式,并且可以适应频繁迭代打磨的大型项目。所以,这套即将诞生的
Web UI
框架的特性也很明确:需要方便地控制项目的整体样式,应对频繁的界面变动,并保持项目质量稳健。此后经过三年的发展,QMUI
Web 最终发展为包含编码规范、样式工具方法与样式管理、内置工作流,配套的
GUI 桌面
App,以及拥有完整文档的解决方案。功能特性基础配置与组件:通过内置的公共组件和对应的
SASS 配置表,你只需修改简单的配置即可快速实现所需样式的组件。(QMUI SASS
配置表和公共组件如何帮忙开发者快速搭建项目基础 UI?)SASS 增强支持:QMUI
Web 包含70个 SASS
mixin/function/extend,涉及布局、外观、动画、设备适配、数值计算以及 SASS
原生能力增强等多个方面,可以大幅提升开发效率。脚手架:QMUI Web
内置的工作流拥有从初始化项目到变更文件的各种自动化处理,包含了模板引擎,雪碧图处理,图片集中管理与自动压缩,静态资源合并、压缩与变更以及冗余文件清理等功能。扩展组件:QMUI
Web
除了内置的公共组件外,还通过扩展的方式提供了常用的扩展组件,如等高左右双栏,文件上传按钮,树状选择菜单。应用案例当前,QMUI
Web框架主要用于以下腾讯公司自已的产品中:工程主页和源码地址工程主页:
Web UI 解决方案 QMUI Web —— 探索与沉淀》

Code)。使用过程需要用大量的代码拼接SQL、拼装Object,并不方便。key-value数据库,代表有Realm、LevelDB、RocksDB等。Realm因其在各平台封装、优化的优势,比较受移动开发者的欢迎。对于iOS开发者,key-value的实现直接易懂,可以像使用NSDictionary一样使用Realm。并且ORM彻底,省去了拼装Object的过程。但其对代码侵入性很强,Realm要求类继承RLMObject的基类。这对于单继承的ObjC,意味着不能再继承其他自定义的子类。同时,key-value数据库对较为复杂的查询场景也比较无力。可见,各个方案都有其独特的优势及劣势,没有最好的,只有最适合的。而对于微信来说,我们所期望的数据库应满足:高效;增删改查的高效是数据库最基本的要求。除此之外,我们还希望能够支持多个线程高并发地操作数据库,以应对微信频繁收发消息的场景。易用;这是微信开源的原则,也是WCDB的原则。SQLite本不是一个易用的组件:为了完成一个查询,往往我们需要写很多拼接字符串、组装Object的胶水代码。这些代码冗长繁杂,而且容易出错,我们希望组件能统一完成这些任务。完整;数据库操作是一个复杂的场景,我们希望数据库组件能完整覆盖各种场景。包括数据库损坏、监控统计、复杂的查询、反注入等。显然,上述各个方案都不能完全满足微信的需求。于是,我们造了这个“轮子”

WCDB-iOS/Mac。WCDB通过ORM和WINQ,体现了其易用性上的优势,使得数据库操作不再繁杂。同时,通过链式调用,开发者也能够方便地获取数据库操作的耗时等性能信息。而高级用法则扩展了WCDB的功能和用法。详情请见:《微信移动端数据库组件WCDB系列(一)-iOS基础篇》WCDB源码下载WCDB源码托管地址:

发表评论

电子邮件地址不会被公开。 必填项已用*标注

相关文章

CopyRight © 2015-2020 新萄京娱乐3730-娱乐场官网app下载 All Rights Reserved.
网站地图xml地图