为啥 iOS 有那么多优秀的开源组件,而 Android 反而很少
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了为啥 iOS 有那么多优秀的开源组件,而 Android 反而很少相关的知识,希望对你有一定的参考价值。
要分清ios和android哪个开源组件多,看看github搜一下就一目了然搜ios得到40938个项目
搜android得到112895个项目搜android得到112895个项目
作为最大的代码托管网站,github的数据绝对能体现这两个阵营的代码开源热度作为最大的代码托管网站,github的数据绝对能体现这两个阵营的代码开源热度
所以楼主的问题不成立
【锟斤拷的回答(33票)】:
----------谢邀,晚上来答了----------
我做Android做了大约3年,做的虽然都是描绘Application层的小玩意,但是对整套生态圈应该感觉还是有点小了解;赶脚题主这个问题就有点黑安卓的意思,在我看来,这样的问题和“为什么C语言要比JAVA快”一样没有非常大的实际意义。所以感觉题主从主观上在做安卓的时候受到了挫折,哈哈。
首先我想说的是,Android上的开源组件并不少。
具体项目我就不多说了,各位同仁也在分享,而且git和group上多的一笔,像UIL(Universal Image Loader)这种神器,还有SherlockActionBar(已经被归入support v7,并且在最新版本的ADT中已经被强制填入),很强大的Zxing这个一维码、二维码通吃的好玩意;还有什么pull-to-refresh的lib等等,同样我也希望在这个主题里面能看到更多同僚的分享。
相比来说,就以一二维码为例,zxing对iOS的支持就不怎么样,同事在搞iOS上的条码扫描和生成的时候,费了很大的功夫,且效果不理想,条码二维码这个近几年很火吧?可是iOS上没有一套完整的东西,zbar什么的,看了几个,都不理想,或多或少有欠缺。
所以我的观点的话,就这件事上,我是不同意楼主的观点的,首先jdk&android都是开源的,所以不考虑难度和质量来说,更容易开发出来一套工具lib或者框架;其次Android有Google这个爹,本着Google精神,有很多人愿意去分享自己的东西;再者我们从实际开发来讲,又或许是我做的项目都很小、很白痴,我没有觉得Android的第三方开源小玩意少,很多玩意都能找到相关的解决办法(现成代码)。
于是我想了解下题主在什么契机下觉得Android的开源项目少呢?Android本身就是个开源项目呀。
我再试图研究研究其它同仁的看法:
回报的问题
细讲讲工资,我姑且当大伙儿都跟我一样是给人打工的。我现在的工资不比同组做iOS的人低,我是做app开发的,感觉现在不知道谁传出来的都有这样一种误解,(不算适配的情况下)android开发简单,iOS开发困难。难道就因为oc入门比java削微复杂点么?或者说你以为会点java就随随便便地说Android一样,都能搞?别逗了。Android里面玩法很多,跑到实际运营上就能给产品提供各种各样的玩法,像运营商定制,流氓功能(当然我们不提倡),都是能给公司和团队带来其它方面的获益的;就拿互联网app来讲,关键网络层代码用NDK写好,UI实现Android和iOS同样都是随便交给一个成手就能搞定,又哪里来的优越感?在你灵活运用23甚至更多种设计模式,通读并精通算法导论和架构之美后,开发语言难道还有不同之处?这个是我觉得很不满的;
会java并不代表你会安卓,同样,你会用java更不代表你懂java,别用你从不知道哪里看到的资料说java烂,dalvik卡,我们讲纯技术,为何oc不做跨平台?
如果是做Android BSP这种相关的工程师,也可以叫Android工程师,这种价钱我就不用多说了吧,不是和做app一个级别的,至少在北方是。
其次是广告收入,你们不要再看个排名就说iOS收入多多牛逼,应用内支付收益多少多少了好么?前两天一个小伙计拿俩图片当杀毒软件挣好几万的事情你们当真是装傻屏蔽了么?放垃圾广告山寨app这种事App store会让你上么?你要是邢山虎拿着我叫MT来喷我我一点都不带还嘴,有多少人一个自己运营的APP都没搞过就开始大谈广告收入和排名算法了?我认为大部分人花几天做一个app扔在Google play上,一次性也不用运营,咱们先不要把自己考虑成拯救世界的人,一个月挣个几百刀广告费不够诸位加个油吃个饭的嘛?万一点子投机了当真辞了工作去36kr觅个投资也好。
我说的都是以我这种屌丝来说的大实话,没接触过在BAT中做的经理。
碎片化的问题
这个的确是一个大问题且无法回避,硬要牵扯的话,和所谓“开源”项目也有点关系:
不够精:某些开源组件在某些特定机型上会报错,因为其可能改了原生的sdk;
不够多:现在对于Android程序员来讲“兼容到2.1(更有甚者到1.6)”已经和“兼容到IE6”一个级别地让人痛苦不堪;这也导致了最起码我就有时候不愿意写一个库给小组用,你要做的东西特别多,很恶心;
不够全:iOS其实一直贯彻的都是某些种特定的风格,至少和Android相比基本就可以看成只有一两种;我可以针对你的一两种来做一套工具框架,但是我肯定无法为你的未知种类做点什么(这里主要还是指UI,因为毕竟app开发的主要工作量还是在UI上)
生态圈的问题
一个是市场占有率,有说Android市场占有率占有高,开源项目就应该多的,这种纯属敷衍答案,此处不表;其次是我们所说的应用商店,换句话说是应用个数,再换个词儿叫有效应用个数,这个就不用我多说了吧,上文也有提到,像我这样就图个广告费还个贷款的人大有人在,做做rom放点系统apk流氓捆绑的也大有人在,觉得不爽的同僚也没必要喷我,谁不为了活着;从审核机制来看,我忘了在哪个资料上看到了,iOS帮开发者做好了XXX事情,是为了让他们开发出更好、更优良的点子;而我们做Android的,甚至是Android本身,仍然在摸索。
我突然想到一个,也是我经常碰见的,不知道cocoachina什么的iOS论坛怎么样,反正Android这边网上资料都烂了,各种瞎胡转载,我们不要求你们转载、爬虫的时候署名了,你好歹把代码格式给帖过来;你格式没有也没关系,你能不能把代码给帖全了?
反正我在国内论坛上的时候,至少百度的时候,经常会心烦气躁,不知道题主是不是在搜某个实现的时候也碰见了这个问题?还是去stackoverflow上看看吧。
我个人做Android APP开发,却用OSX,包括最近开始看iOS相关的开发内容,有时候拿着手里的iPhone玩一玩,静音、音量、home、power键都是我的刚需,玩游戏的时候不用像nexus一样怕碰到虚拟键,我承认苹果做的非常非常棒,但是我决不承认安卓比苹果差,实在没有可比性。
【万宵的回答(13票)】:
泻药
个人理解题主说的开源组件是所谓的开源工程。其实如果说到开源,真的就和钱啥的扯不上关系了。生态,再过几年等4.0以下的都灭绝了,你们就不会说生态烂了其实Android有很多非常不错的开源工程,我这里说的开源工程是指那种作为依赖工程导入的的工程,下面介绍一下比较知名的android开源项目,都是造好的轮子,免去了我们很多麻烦
android-pulltorefresh 一个强大的拉动刷新开源项目,支持各种控件下拉刷新
ListView、ViewPager、WevView、ExpandableListView、GridView、(Horizontal
)ScrollView、Fragment上下左右拉动刷新,比下面johannilsson那个只支持ListView的强大的多。并且他实现的下拉刷新ListView在item不足一屏情况下也不会显示刷新提示,体验更好。
项目地址:https://github.com/chrisbanes/Android-PullToRefresh
ActionBarSherlock 为Android所有版本提供统一的ActionBar,解决4.0以下ActionBar的适配问题
项目地址:https://github.com/JakeWharton/ActionBarSherlock
MenuDrawer 滑出式菜单,通过拖动屏幕边缘滑出菜单,支持屏幕上下左右划出,支持当前View处于上下层,支持Windows边缘、ListView边缘、ViewPager变化划出菜单等。
项目地址:https://github.com/SimonVT/android-menudrawer
Android-ViewPagerIndicator 配合ViewPager使用的Indicator,支持各种位置和样式
项目地址:https://github.com/JakeWharton/Android-ViewPagerIndicator
SwipeBackLayout 左右或向上滑动返回的Activity
项目地址:https://github.com/Issacw0ng/SwipeBackLayout
这个在知乎的手机app里面有,我说的是安卓版,苹果的没用过,向右滑动屏幕退出当前页面就是这个玩意儿做的
还有一个异步图片加载的universal image loader,也是很猛的...
题主要找的话可以找到很多,我只是列举一些用的比较多的 参考技术A ios是封闭式的,而安卓是开放式的,你说错了 参考技术B 你弄反了吧 参考技术C 因为人才求最好的。 参考技术D 瞎说,正好相反,不懂机器 不要乱上油!
目前优秀的开源中文分词库你知道几个?
中文分词是中文文本处理的基础步骤,也是中文人机自然语言交互的基础模块。由于中文句子中没有词的界限,因此在进行中文自然语言处理时,通常需要先进行分词。
纵观整个开源领域,陆陆续续做中文分词的也有不少,不过目前仍在维护的且质量较高的并不多。下面整理了一些个人认为比较优秀的中文分词库,以供大家参考使用。
“结巴”中文分词,做最好的 Python 中文分词组件。
特性
支持三种分词模式:
精确模式,试图将句子最精确地切开,适合文本分析;
全模式,把句子中所有的可以成词的词语都扫描出来, 速度非常快,但是不能解决歧义;
搜索引擎模式,在精确模式的基础上,对长词再次切分,提高召回率,适合用于搜索引擎分词。
支持繁体分词
支持自定义词典
算法
基于前缀词典实现高效的词图扫描,生成句子中汉字所有可能成词情况所构成的有向无环图 (DAG)
采用了动态规划查找最大概率路径, 找出基于词频的最大切分组合
对于未登录词,采用了基于汉字成词能力的 HMM 模型,使用了 Viterbi 算法
代码示例
# encoding=utf-8import jieba
seg_list = jieba.cut("我来到北京清华大学", cut_all=True)
print("Full Mode: " + "/ ".join(seg_list)) # 全模式seg_list = jieba.cut("我来到北京清华大学", cut_all=False)
print("Default Mode: " + "/ ".join(seg_list)) # 精确模式seg_list = jieba.cut("他来到了网易杭研大厦") # 默认是精确模式print(", ".join(seg_list))
seg_list = jieba.cut_for_search("小明硕士毕业于中国科学院计算所,后在日本京都大学深造") # 搜索引擎模式print(", ".join(seg_list))
输出:
【全模式】: 我/ 来到/ 北京/ 清华/ 清华大学/ 华大/ 大学
【精确模式】: 我/ 来到/ 北京/ 清华大学
【新词识别】:他, 来到, 了, 网易, 杭研, 大厦 (此处,“杭研”并没有在词典中,但是也被Viterbi算法识别出来了)
【搜索引擎模式】: 小明, 硕士, 毕业, 于, 中国, 科学, 学院, 科学院, 中国科学院, 计算, 计算所, 后, 在, 日本, 京都, 大学, 日本京都大学, 深造
HanLP是一系列模型与算法组成的NLP工具包,由大快搜索主导并完全开源,目标是普及自然语言处理在生产环境中的应用。HanLP具备功能完善、性能高效、架构清晰、语料时新、可自定义的特点。
HanLP提供下列功能:
中文分词
索引全切分模式
用户自定义词典
兼容繁体中文
训练用户自己的领域模型
极速词典分词
感知机分词、CRF分词
最短路分词、N-最短路分词
HMM-Bigram(速度与精度最佳平衡;一百兆内存)
由字构词(侧重精度,可识别新词;适合NLP任务)
词典分词(侧重速度,每秒数千万字符;省内存)
所有分词器都支持:
词性标注
HMM词性标注(速度快)
感知机词性标注、CRF词性标注(精度高)
命名实体识别
感知机命名实体识别、CRF命名实体识别
中国人名识别、音译人名识别、日本人名识别、地名识别、实体机构名识别
基于HMM角色标注的命名实体识别 (速度快)
基于线性模型的命名实体识别(精度高)
关键词提取
TextRank关键词提取
自动摘要
TextRank自动摘要
短语提取
基于互信息和左右信息熵的短语提取
拼音转换
多音字、声母、韵母、声调
简繁转换
简繁分歧词(简体、繁体、臺灣正體、香港繁體)
文本推荐
语义推荐、拼音推荐、字词推荐
依存句法分析
基于神经网络的高性能依存句法分析器
MaxEnt依存句法分析
文本分类
情感分析
word2vec
词向量训练、加载、词语相似度计算、语义运算、查询、KMeans聚类
文档语义相似度计算
语料库工具
默认模型训练自小型语料库,鼓励用户自行训练。所有模块提供训练接口,语料可参考OpenCorpus。
在提供丰富功能的同时,HanLP内部模块坚持低耦合、模型坚持惰性加载、服务坚持静态提供、词典坚持明文发布,使用非常方便,同时自带一些语料处理工具,帮助用户训练自己的模型。
Jcseg 是基于 mmseg 算法的一个轻量级中文分词器,同时集成了关键字提取,关键短语提取,关键句子提取和文章自动摘要等功能,并且提供了一个基于 Jetty 的 web 服务器,方便各大语言直接 http 调用,同时提供了最新版本的 lucene, solr, elasticsearch 的分词接口!Jcseg 自带了一个 jcseg.properties 文件用于快速配置而得到适合不同场合的分词应用,例如:最大匹配词长,是否开启中文人名识别,是否追加拼音,是否追加同义词等!
核心功能:
中文分词:mmseg 算法 + Jcseg 独创的优化算法,四种切分模式。
关键字提取:基于 textRank 算法。
关键短语提取:基于 textRank 算法。
关键句子提取:基于 textRank 算法。
文章自动摘要:基于 BM25+textRank 算法。
自动词性标注:基于词库+(统计歧义去除计划),目前效果不是很理想,对词性标注结果要求较高的应用不建议使用。
命名实体标注:基于词库+(统计歧义去除计划),电子邮件,网址,大陆手机号码,地名,人名,货币,datetime 时间,长度,面积,距离单位等。
Restful api:嵌入 jetty 提供了一个绝对高性能的 server 模块,包含全部功能的http接口,标准化 json 输出格式,方便各种语言客户端直接调用。
中文分词模式:
六种切分模式
(1).简易模式:FMM 算法,适合速度要求场合。
(2).复杂模式:MMSEG 四种过滤算法,具有较高的歧义去除,分词准确率达到了 98.41%。
(3).检测模式:只返回词库中已有的词条,很适合某些应用场合。
(4).检索模式:细粒度切分,专为检索而生,除了中文处理外(不具备中文的人名,数字识别等智能功能)其他与复杂模式一致(英文,组合词等)。
(5).分隔符模式:按照给定的字符切分词条,默认是空格,特定场合的应用。
(6).NLP 模式:继承自复杂模式,更改了数字,单位等词条的组合方式,增加电子邮件,大陆手机号码,网址,人名,地名,货币等以及无限种自定义实体的识别与返回。
sego 是一个 Go 中文分词库,词典用双数组 trie(Double-Array Trie)实现, 分词器算法为基于词频的最短路径加动态规划。
支持普通和搜索引擎两种分词模式,支持用户词典、词性标注,可运行 JSON RPC 服务。
分词速度单线程 9MB/s,goroutines 并发 42MB/s(8核 Macbook Pro)。
示例代码:
package mainimport ( "fmt"
"github.com/huichen/sego")func main() { // 载入词典
var segmenter sego.Segmenter
segmenter.LoadDictionary("github.com/huichen/sego/data/dictionary.txt") // 分词
text := []byte("中华人民共和国中央人民政府")
segments := segmenter.Segment(text) // 处理分词结果
// 支持普通模式和搜索模式两种分词,见代码中SegmentsToString函数的注释。
fmt.Println(sego.SegmentsToString(segments, false))
}
中文处理工具包
特点
可能不是最快的开源中文分词,但很可能是最准的开源中文分词
基于 BiLSTM 模型训练而成
包含分词,词性标注,实体识别, 都有比较高的准确率
用户自定义词典
可训练自己的模型
批量处理
定制自己的模型
get clone https://github.com/rockyzhengwu/FoolNLTK.gitcd FoolNLTK/train
分词
import fool
text = "一个傻子在北京"print(fool.cut(text))# ['一个', '傻子', '在', '北京']
Ansj 中文分词是一个基于 n-Gram+CRF+HMM 的中文分词的 java 实现。分词速度达到每秒钟大约200万字左右(mac air下测试),准确率能达到96%以上。目前实现了中文分词、中文姓名识别、用户自定义词典、关键字提取、自动摘要、关键字标记等功能,可以应用到自然语言处理等方面,适用于对分词效果要求高的各种项目。
下面是一个简单的分词效果,仅做参考:
[脚下/f, 的/uj, 一大/j, 块/q, 方砖/n, 地面/n]
[长春/ns, 市长/n, 春节/t, 讲话/n]
[结婚/v, 的/uj, 和/c, 尚未/d, 结婚/v, 的/uj]
[结合/v, 成/v, 分子/n, 时/ng]
[旅游/vn, 和/c, 服务/vn, 是/v, 最/d, 好/a, 的/uj]
[邓颖/nr, 超生/v, 前/f, 最/d, 喜欢/v, 的/uj, 一个/m, 东西/n]
[中国/ns, 航天/n, 官员/n, 应邀/v, 到/v, 美国/ns, 与/p, 太空/s, 总署/n, 官员/n, 开会/v]
[上海/ns, 大学城/n, 书店/n]
[北京/ns, 大/a, 学生/n, 前来/v, 应聘/v]
[中外/j, 科学/n, 名著/n]
[为/p, 人民/n, 服务/vn]
[独立自主/i, 和/c, 平等互利/l, 的/uj, 原则/n]
[为/p, 人民/n, 办/v, 公益/n]
[这/r, 事/n, 的/uj, 确定/v, 不/d, 下来/v]
[费孝/nr, 通向/v, 人大常委会/nt, 提交/v, 书面/b, 报告/n]
[aaa/en, 分/q, 事实上/l, 发货/v, 丨/null, 和/c, 无/v, 哦/e, 喝/vg, 完/v, 酒/n]
[不好意思/a, 清清爽爽/z]
[长春市/ns, 春节/t, 讲话/n]
[中华人民共和国/ns, 万岁/n, 万岁/n, 万万岁/n]
[检察院/n, 鲍绍/nr, 检察长/n, 就是/d, 在/p, 世/ng, 诸葛/nr, ./m, 像/v, 诸葛亮/nr, 一样/u, 聪明/a]
[长春市/ns, 长春/ns, 药店/n]
[乒乓球拍/n, 卖/v, 完/v, 了/ul]
[计算机/n, 网络管理员/n, 用/p, 虚拟机/userDefine, 实现/v, 了/ul, 手机/n, 游戏/n, 下载/v, 和/c, 开源/v, 项目/n, 的/uj, 管理/vn, 金山/nz, 毒霸/nz]
[长春市/ns, 长春/ns, 药店/n]
[胡锦涛/nr, 与/p, 神/n, 九/m, 航天员/n, 首次/m, 实现/v, 天地/n, 双向/d, 视频/n, 通话/v]
[mysql/en, 不/d, 支持/v, /null, 同台/v, 机器/n, 两个/m, mysql/en, 数据库/n, 之间/f, 做/v, 触发器/n]
[孙建/nr, 是/v, 一个/m, 好/a, 人/n, ./m, 他/r, 和/c, 蔡晴/nr, 是/v, 夫妻/n, 两/m, /null, ,/null, 对于/p, 每/r, 一本/m, 好书/n, 他/r, 都/d, 原意/n, 一一/d, 读取/v, ../m, 他们/r, 都/d, 很/d, 喜欢/v, 元宵/n, ./m, 康燕/nr, 和/c, 他们/r, 住/v, 在/p, 一起/s, ./m, 我/r, 和/c, 马春亮/nr, ,/null, 韩鹏飞/nr, 都/d, 是/v, 好/a, 朋友/n, ,/null, 不/d, 知道/v, 什么/r, 原因/n]
[一年/m, 有/v, 三百六十五个/m, 日出/v, /null, 我/r, 送/v, 你/r, 三百六十五个/m, 祝福/vn, /null, 时钟/n, 每天/r, 转/v, 了/ul, 一千四百四十圈/m, 我/r, 的/uj, 心/n, 每天/r, 都/d, 藏/v, 着/uz, /null, 一千四百四十多个/m, 思念/v, /null, 每/r, 一天/m, 都/d, 要/v, 祝/v, 你/r, 快快乐乐/z, /null, /null, 每/r, 一分钟/m, 都/d, 盼望/v, 你/r, 平平安安/z, /null, 吉祥/n, 的/uj, 光/n, 永远/d, 环绕/v, 着/uz, 你/r, /null, 像/v, 那/r, 旭日东升/l, 灿烂/a, 无比/z, /null]
[学校/n, 学费/n, 要/v, 一次性/d, 交/v, 一千元/m]
[发展/vn, 中国/ns, 家庭/n, 养猪/v, 事业/n]
[安徽省/ns, 是/v, 一个/m, 发展/vn, 中/f, 的/uj, 省/n]
[北京理工大学/nt, 办事处/n]
word 分词是一个 Java 实现的分布式的中文分词组件,提供了多种基于词典的分词算法,并利用 ngram 模型来消除歧义。能准确识别英文、数字,以及日期、时间等数量词,能识别人名、地名、组织机构名等未登录词。能通过自定义配置文件来改变组件行为,能自定义用户词库、自动检测词库变化、支持大规模分布式环境,能灵活指定多种分词算法,能使用refine功能灵活控制分词结果,还能使用词频统计、词性标注、同义标注、反义标注、拼音标注等功能。提供了10种分词算法,还提供了10种文本相似度算法,同时还无缝和 Lucene、Solr、ElasticSearch、Luke 集成。注意:word1.3 需要 JDK1.8 。
分词算法效果评估:
1、word分词 最大Ngram分值算法:
分词速度:370.9714 字符/毫秒
行数完美率:66.55% 行数错误率:33.44% 总的行数:2533709 完美行数:1686210 错误行数:847499
字数完美率:60.94% 字数错误率:39.05% 总的字数:28374490 完美字数:17293964 错误字数:11080526
2、word分词 最少词数算法:
分词速度:330.1586 字符/毫秒
行数完美率:65.67% 行数错误率:34.32% 总的行数:2533709 完美行数:1663958 错误行数:869751
字数完美率:60.12% 字数错误率:39.87% 总的字数:28374490 完美字数:17059641 错误字数:11314849
3、word分词 全切分算法:
分词速度:62.960262 字符/毫秒
行数完美率:57.2% 行数错误率:42.79% 总的行数:2533709 完美行数:1449288 错误行数:1084421
字数完美率:47.95% 字数错误率:52.04% 总的字数:28374490 完美字数:13605742 错误字数:14768748
4、word分词 双向最大最小匹配算法:
分词速度:462.87158 字符/毫秒
行数完美率:53.06% 行数错误率:46.93% 总的行数:2533709 完美行数:1344624 错误行数:1189085
字数完美率:43.07% 字数错误率:56.92% 总的字数:28374490 完美字数:12221610 错误字数:16152880
5、word分词 双向最小匹配算法:
分词速度:967.68604 字符/毫秒
行数完美率:46.34% 行数错误率:53.65% 总的行数:2533709 完美行数:1174276 错误行数:1359433
字数完美率:36.07% 字数错误率:63.92% 总的字数:28374490 完美字数:10236574 错误字数:18137916
6、word分词 双向最大匹配算法:
分词速度:661.148 字符/毫秒
行数完美率:46.18% 行数错误率:53.81% 总的行数:2533709 完美行数:1170075 错误行数:1363634
字数完美率:35.65% 字数错误率:64.34% 总的字数:28374490 完美字数:10117122 错误字数:18257368
7、word分词 正向最大匹配算法:
分词速度:1567.1318 字符/毫秒
行数完美率:41.88% 行数错误率:58.11% 总的行数:2533709 完美行数:1061189 错误行数:1472520
字数完美率:31.35% 字数错误率:68.64% 总的字数:28374490 完美字数:8896173 错误字数:19478317
8、word分词 逆向最大匹配算法:
分词速度:1232.6017 字符/毫秒
行数完美率:41.69% 行数错误率:58.3% 总的行数:2533709 完美行数:1056515 错误行数:1477194
字数完美率:30.98% 字数错误率:69.01% 总的字数:28374490 完美字数:8792532 错误字数:19581958
9、word分词 逆向最小匹配算法:
分词速度:1936.9575 字符/毫秒
行数完美率:41.42% 行数错误率:58.57% 总的行数:2533709 完美行数:1049673 错误行数:1484036
字数完美率:31.34% 字数错误率:68.65% 总的字数:28374490 完美字数:8893622 错误字数:19480868
10、word分词 正向最小匹配算法:
分词速度:2228.9465 字符/毫秒
行数完美率:36.7% 行数错误率:63.29% 总的行数:2533709 完美行数:930069 错误行数:1603640
字数完美率:26.72% 字数错误率:73.27% 总的字数:28374490 完美字数:7583741 错误字数:20790749
以上是关于为啥 iOS 有那么多优秀的开源组件,而 Android 反而很少的主要内容,如果未能解决你的问题,请参考以下文章
直播预告|腾讯有哪些优秀的开源项目?Serverless Components了解一下?