浅谈kotlin的泛型

kotlin跟java一样,同样支持类型参数,也就是我们常说的泛型。泛型的英文单词是generics,通常译作:一般的,广泛的,普通的。在计算机和web开发领域,被称作泛型,也成为通配符类型。泛型可以简单理解为:函数附带的一个参数,支持广泛的数据类型。对于php程序员来说,基本没有这个困扰。但是对于类型严格的编程语言来说,这就有点复杂了。今天就来谈谈,kotlin的泛型。

阅读详情

浅谈kotlin的协程

Go语言的协程曾经是一大卖点,kotlin在1.1+版本中也实现了协程。不过目前kotlin的协程实现,还是试验性质的,也就是说以后可能会大改。下面谈谈,我对kotlin协程的理解。

阅读详情

浅谈kotlin的lambda表达式以及与匿名函数的区别

php最新的7.2版本貌似还不支持lambda表达式,所以在学习kotlin的过程中,kotlin的lambda表达式引起了我很大的兴趣。kotlin的高阶函数,跟lambda表达式有异曲同工之妙。国内很多文章对lambda表达式的误解很升,认为不过是语法糖而已,这里谈谈我的看法。最后讲一下,lambda表达式和匿名函数的区别。

阅读详情

解决本地自签名证书的Https站点在Firefox和Chrome浏览器中无法访问得问题

文武双全在开发web站点时,多在windows10操作系统下,通过virtualbox软件和vagrant脚本搭建虚拟机用来作为开发环境。最近被一个坑爹的问题耽误了很长时间,firefox和chrome等浏览器更新到最新版以后,由于本地站点开启了https,导致本地发布的自签名SSL证书不被这些浏览器信任。站点在firefox和chrome中无法打开。学习了一段时间,终于解决了这个问题。以下是这个问题的解决办法,特此分享。

阅读详情

PHP连接MongoDB数据库报错“No suitable servers found (`serverSelectionTryOnce` set)”的解决办法

公司的核心系统使用了MongoDB数据库,最近也碰到了那个烦人的 “No suitable servers found (`serverSelectionTryOnce` set): [connection refused calling ismaster on ‘xxx.xxx.xxx.xxx:xxxx’]” 问题。搞了好几天,总算把问题解决了。

故障原因:谷歌搜索这段报错的提示,很容易找到故障的原因。主要是因为服务器开启了ipv6支持,但是MongoDB默认是不开启ipv6的支持的。进一步深层次的原因,目前谷歌搜索也没几个说的明白的,先说说解决问题的办法吧。

阅读详情

Windows10系统搭建安卓开发环境并使用Create-React-Native-App零配置快速搭建跨平台App完整版攻略

之前写了一篇文章,在windows10的linux子系统内通过Create-React-Native-App快速搭建跨平台app。虽然初始化项目很快速很方便,但是在linux子系统内难以进行项目的build等后期编译操作。无奈,我又开始研究直接在windows10下搭建安卓开发环境,并使用create-react-native-app零配置快速搭建跨平台app的方法。

阅读详情

Windows10操作系统的Linux子系统使用yarn安装CreateReactNativeApp快速搭建跨平台应用

create-react-native-app是Facebook的一款开源项目,可以使你不需要任何配置就能够创造一个可以运行在任何操作系统上的跨平台的APP。主要的好处就是,免配置的快速搭建一个ReactNative的跨平台的APP。文武双全之前在Windows10系统下,在VirtualBox虚拟机内使用通过Vagrant构建的Ubuntu16操作系统环境下,使用npm的方式初始化create-react-native-app失败。2017年7月30日,文武双全通过Windows10操作系统内的Linux子系统,使用yarn构建create-react-native-app项目成功了。

阅读详情

使用Phalcon+PHP-FPM构建PHP基于多进程的数据库连接池

之前看到网上有一篇文章说Phalcon和PHP没有数据库连接池,而swoole本身提供了很好的数据库连接池。实际上这是一种误解,PHP自身早就实现了持久化的数据库连接。而Phalcon基于zephir写的数据库连接适配器,必然也是支持PHP自身实现的这种数据库连接池。Phalcon基于C语言写的ORM,配合PHP-FPM提供的多进程的PHP数据库连接池,将提供性能极为强悍并且健壮的多进程数据库连接池。

阅读详情

零成本打造最强跨平台开发环境—使用VSCode编辑器通过vagrant操作VirtualBox虚拟机

几乎所有的开发人员都会为配置开发环境所烦恼,目前文武双全找到了一套零成本打造史上最强开发环境的套路。可以很方便的通过VS Code编辑器集成Git Bash命令行工具,利用Vagrant直接在编辑器内操作VirtualBox虚拟机的各种镜像。不敢独享,分享与各位。

阅读详情