为鸿蒙说两句公道话 今天看了鸿蒙系统的评测,看完后我感觉很欣慰,为什么这么说 ? 不是很多人吐槽鸿蒙是 Android 套壳吗 ?或者叫鸿蒙 UI 吗?说鸿蒙没有自己的核心技术.看了鸿蒙系统的设计,底层确实是基于安卓的 AOSP 接口没有错,但是我倒是觉得系统设计者应该是一个务实的家伙.因为至少没有被不理智的民族主义冲昏头脑,没有蠢到真正的从零开始设计一套新的系统,而是可以让用户没有学习成本.无痛的切换到一套新的操作系统上面. 如果不是共用底层,那么你基本不可能通过在线升级把 Android 升…
松哥上学那会,很多人对 MySQL 有一些偏见,偏见主要集中在以下几方面: MySQL 不支持事务(事实上 MyISAM 有表锁,但是效率比较低) MySQL 存储的数据量比较小,适合小项目,大项目还是得上 Oracle.DB2 等 这么多年过去了,松哥自己在开发中一直是以 MySQL 为主,我觉得我有必要说两句公道话了. 公道话 第一个问题 关于第一个不支持事务的问题,这有一定的历史原因.MySQL 从设计之初,存储引擎就是可插拔的,允许公司或者个人按照自己的需求定义自己的存储引擎(当然,普通…
为Java说句公道话 有些人问我,在现有的语言里面,有什么好的推荐?我说:"Java. " 他们非常吃惊:"什么?Java!" 所以我如今来解释一下. Java超越了全部咒骂它的"动态语言" 或许是由于年轻人的逆反心理,人们都不把自己的入门语言当回事.非常早的时候.计算机系的学生用Scheme或者Pascal入门,如今大部分学校用Java. 这或许就是为什么非常多人恨Java,瞧不起用Java的人. 提到Java,感觉就像是爷爷那辈人用的东西.…
有些人问我,在现有的语言里面,有什么好的推荐?我说:“Java.” 他们很惊讶:“什么?Java!” 所以我现在来解释一下. Java超越了所有咒骂它的“动态语言” 也许是因为年轻人的逆反心理,人们都不把自己的入门语言当回事.很早的时候,计算机系的学生用Scheme或者Pascal入门,现在大部分学校用Java.这也许就是为什么很多人恨Java,瞧不起用Java的人.提到Java,感觉就像是爷爷那辈人用的东西.大家都会用Java,怎么能显得我优秀出众呢?于是他们说:“Java老气,庞大,复杂,臃…
千万不要被所谓"元类是99%的python程序员不会用到的特性"这类的说辞吓住.因为 每个中国人,都是天生的元类使用者 学懂元类,你只需要知道两句话: 道生一,一生二,二生三,三生万物 我是谁?我从哪来里?我要到哪里去? 在python世界,拥有一个永恒的道,那就是"type",请记在脑海中,type就是道.如此广袤无垠的python生态圈,都是由type产生出来的.在给大家分享之前呢,小编推荐一下一个挺不错的交流宝地,里面都是一群热爱并在学习Python的小伙伴们…
千万不要被所谓“元类是99%的python程序员不会用到的特性”这类的说辞吓住.因为每个中国人,都是天生的元类使用者 学懂元类,你只需要知道两句话: 道生一,一生二,二生三,三生万物 我是谁?我从哪来里?我要到哪里去? 在python世界,拥有一个永恒的道,那就是“type”,请记在脑海中,type就是道.如此广袤无垠的python生态圈,都是由type产生出来的. 道生一,一生二,二生三,三生万物. 道 即是 type 一 即是 metaclass(元类,或者叫类生成器) 二 即是 class…
千万不要被所谓“元类是99%的python程序员不会用到的特性”这类的说辞吓住.因为每个中国人,都是天生的元类使用者 学懂元类,你只需要知道两句话: 道生一,一生二,二生三,三生万物 我是谁?我从哪来里?我要到哪里去? 在python世界,拥有一个永恒的道,那就是“type”,请记在脑海中,type就是道.如此广袤无垠的python生态圈,都是由type产生出来的. 道生一,一生二,二生三,三生万物. 道 即是 type 一 即是 metaclass(元类,或者叫类生成器) 二 即是 class…
给定两个句子 A 和 B . (句子是一串由空格分隔的单词.每个单词仅由小写字母组成.) 如果一个单词在其中一个句子中只出现一次,在另一个句子中却没有出现,那么这个单词就是不常见的. 返回所有不常用单词的列表. 您可以按任何顺序返回列表. 示例 1: 输入:A = "this apple is sweet", B = "this apple is sour" 输出:["sweet","sour"] 示例 2: 输入:A = &…
先上两句代码: var Person = function () {}; var p = new Person(); 把new的过程拆分成以下三步: <1> var p={}; 也就是说,初始化一个对象p; <2> p.__proto__=Person.prototype; <3> Person.call(p);也就是说构造p,也可以称之为初始化p. 我们一般只在写构造函数的时候会用到prototype,其实__proto__才是我们常说的原型链,因为我们一般都是在生成…
前言 首先声明一下,我这个是对WebUploader开源上传控件的二次封装,底层还是WebUploader实现的,只是为了更简洁的使用他而已. 下面先介绍一下WebUploader 简介: WebUploader是由Baidu WebFE(FEX)团队开发的一个简单的以HTML5为主,FLASH为辅的现代文件上传组件.在现代的浏览器里面能充分发挥HTML5的优势,同时又不摒弃主流IE浏览器,沿用原来的FLASH运行时,兼容IE6+,iOS 6+, android 4+.两套运行时,同样的调用方式…