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表达式和匿名函数的区别。
阅读详情Kotlin语言的特点和优劣势
2017年文武双全开始学习Java和Kotlin,特别是对kotlin产生了非常大的兴趣。未来很长一段时间,Kotlin会是我的首选编程语言。学习了一段时间,感觉需要总结下kotlin的特点和优劣势。
阅读详情解决本地自签名证书的Https站点在Firefox和Chrome浏览器中无法访问得问题
文武双全在开发web站点时,多在windows10操作系统下,通过virtualbox软件和vagrant脚本搭建虚拟机用来作为开发环境。最近被一个坑爹的问题耽误了很长时间,firefox和chrome等浏览器更新到最新版以后,由于本地站点开启了https,导致本地发布的自签名SSL证书不被这些浏览器信任。站点在firefox和chrome中无法打开。学习了一段时间,终于解决了这个问题。以下是这个问题的解决办法,特此分享。
阅读详情解决一例阿里云坑爹的FTP软件FileZilla的425报错
今天真倒霉,碰到一例阿里云坑爹的FTP软件FileZilla的425报错。折腾了大半天,终于终于解决了,是他妈很傻逼的一个问题。为了其他兄弟不掉坑,记录下来。
阅读详情解决Linux服务器大量TCP连接FIN_WAIT1的问题
今天发现公司的Swoole服务器,拥有大量的FIN_WAIT1的TCP连接。谷歌一番后,解决了这个问题。也学到很多知识,哈哈。
阅读详情Debian修改源以后不生效的解决办法
Debian操作系统有一个坑,修改源如果不生效,可以用以下方法解决。
阅读详情phalcon框架更新(update)与动态更新(dynamic update)的正确操作
phalcon官网文档并不完善,导致很多人在学习和使用phalcon的过程中走了弯路,踩了不少坑。关于phalcon的更新和动态更新的坑,很多人踩,今天写一篇文章好好讲讲这个问题。废话不多说,show me code!
阅读详情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的支持的。进一步深层次的原因,目前谷歌搜索也没几个说的明白的,先说说解决问题的办法吧。
阅读详情使用Voyager快速搭建一个Laravel的管理后台
Voyager是The Control Group开发的一个基于Laravel的后台管理系统,可以帮助开发人员快速搭建一个带授权的后台。以下是教程和注意事项,官方文档地址是:https://voyager.readme.io/docs/installation
阅读详情Debian服务器SSH无密码登陆实战教程
推荐使用xshell,先密码登录服务器。测试密码和密钥登陆都成功后,再取消服务器的密码登陆。另外,root和常用登陆用户,使用不同的ssh密钥。
阅读详情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项目成功了。
阅读详情关于SQL中GroupBy不能Count的问题
今天碰到一个很奇葩的问题,卡了我很久。用laravel写查询,加了GroupBy之后再count,和原生语句里统计的数量不对。搞了很久,终于知道原因了。
阅读详情解决微信网页授权’redirect_uri 参数错误’的一个神坑
最近在用laravel开发一个微信公众号,遇到了一个微信网页授权的神坑。中文的错误提示是:”redirect_uri 参数错误”。搞了几天,终于搞明白这个神坑是如何产生的。
阅读详情解决laravel框架下微信公众号“公众号暂时无法提供服务”的坑
最近两天在做laravel框架下的微信公众号的开发,碰到一个很蛋疼的坑。把问题和解决方法写出来,留给自己做个备份。
阅读详情使用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虚拟机的各种镜像。不敢独享,分享与各位。
阅读详情Laravel官方Vagrant镜像Homestead手动安装php7.1的MongoDB扩展的方法
Laravel官方Vagrant镜像Homestead,默认没有安装php的Mongodb扩展,以下是php7.1手动安装mongdb扩展的教程。可以按照这个教程,写自动化的脚本哦。
阅读详情