- 博客(16)
- 收藏
- 关注
原创 使用 Vim 开发 golang
从 Android 开发转 go 开发之后有很长一段时间都是用的 vim,主要是因为公司 go 工程本身并不是很复杂,也一直想试试脱离鼠标写代码是怎样的感受。刚开始用的是 SpaceVim,开箱即用,集成了大部分常用的插件,支持的语言也非常的多。但是最近突然开始报错,有一些文件夹无法创建,自己切到相应的目录底下 mkdir 也不行,于是便想着自己整一套最简单的可以用来开发 vim 的配置,我集成的插件:Vundle:插件管理dracula/vim:主题lightline:状态行。
2022-09-21 10:04:48 1120
原创 将文章从简书迁移到 Hexo
这两天抽空把简书的文章都迁移到了自己的博客中,这里小记一下。首先说明我这里的配置环境:本地安装好 hexo 配套环境阿里云服 Ubuntu 服务器中安装 git 和 nginx简单配置原来是利用 github + hexo 来搭建自己的博客的,后来折腾了一下 wordpress,恩,感觉的确是够折腾的,还是改回 hexo 好了。在准备改回来的时候,我转念一想,github 也...
2018-05-29 23:32:53 1402
原创 设计模式学习笔记——状态模式
前言许久没有写博客了,最近有一点做咸鱼的倾向,Android方面也碰上瓶颈挺久了。主要是目前可能没有碰上特别有挑战的需求吧,以之前的知识储备就足够了。最近游戏进度倒是喜人,黑魂3快通关了,但也不能老做一条咸鱼,还是得进步啊~看书还是得做做笔记的,不然看了没多久可能就忘了,书携带也不带方便,所以还是做一下笔记发在自己的博客上比较稳妥。本文以及后续所有的设模式博文均为《Android源码设计模...
2018-04-17 22:19:46 221
原创 反射
反射简介JAVA反射机制是在运行状态中,对于任意一个类,都能够知道这个类的所有属性和方法;对于任意一个对象,都能调用它的任意方法和属性;这种动态获取信息以及动态调用对象方法的功能成为JAVA语言的反射机制。在《Java编程思想》中有RTTI(Run-Time Type Identification),通过运行时类型信息程序能使用基类的指针或引用来检查这些指针或引用所指对象的实际派生类型。不过RTTI
2017-12-25 14:44:03 303
原创 几种文字匹配算法
最近 Android 做了一个全文关键字高亮的功能,直接用了 Java 现成的 API 解决了,在查阅资料的过程中得知还有几种匹配算法:BF、RK、KMP、BM、Sunday,有空就做了一些了解。这里记录一下防止忘记,阮一峰大神关于这些算法的博客写的很好。BF暴力检索,这种方法最容易想到,也是最容易实现的,从首字母开始挨个的将关键字和做比对。用下面的图片就能只管的说明(图片来自阮一峰大神的博客)
2017-12-15 11:55:44 11982
原创 接口小结
写在前面最近对于接口的应用也算比较多吧,所以来总结一波我对于接口的使用和感悟。比抽象类更加抽象说到接口,就不得不提抽象类了。这二者有很多相似和很多不同的地方,但是要我说这二者最大的不同,就是标题了:接口比抽象类更加抽象。这个结论通常情况下都是成立的,除非你的抽象类什么都没……但是一般情况下你也不会弄这么个没意义的抽象类。一般来说在设计抽象类时都会考虑到这个抽象类应当实现什么功能和恰当的设计其抽象方法
2017-12-15 11:54:54 250
原创 浅析并发
写在前面最近因为自己毕业的一些事情断更了简书,一转眼已经有两个月了,是时候给自己充一波电了。本篇主要 复习 总结一些多线程中的基础知识,开篇打算理清一些概念性的东西,如有理解错误的地方,欢迎各位指正。什么是并发,为什么要用并发?并发与并行是一对相似而又有区别的的两个概念。并行是指两个或多个事件在同一时刻发生,只有在多CPU环境下才有可能发生。并发是指在一段时间内宏观上有多个程序在同时运行,但实际上每
2017-12-15 11:54:27 326
原创 浅析ArrayList
写在前面Java的集合框架完备而又牛叉,其实现值得我这样的小白去一探究竟。当然了,在这我暂时不会很深入的去阅读整个集合框架,而是通过一两个实现去摸一下他的套路,希望最终我能摸到点集合框架的门路。在本文中,我将会带你阅读:ArrayList内部的基本实现add()方法get()方法是的,你没看错,就看这三个……当然了,ArrayList远不止如此,但现在我只会去探究一下其基本实现。基本实现首先
2017-12-15 11:52:11 241
原创 浅析HashMap
基于数组的ArrayList长于按索引获取对应元素,而在中间位置插入和删除元素,都涉及了对数组整体的移动、复制等操作,相比于链表的插入删除来说代价比较大。基于链表的LinkedList长于随机插入删除,Java的双向链表(LinekdList)只能从头到尾或者从尾到头遍历链表获取元素,相较于ArrayList也是比较慢的。那么有没有一种折中的解决方案,使得插入删除和取元素都比较便捷呢?我认为Hash
2017-12-15 11:51:43 262
原创 浅析LinkedList
写在前面本文所看的源码是在idea里面查看的,一些代码和Java的源码可能有所不同……但是思想应该是一致的。 上一篇浅析ArrayList简要的了解了一下ArrayList是如何实现的,ArrayList内部是用一个Object数组对象来作为容器盛放各个对象的。而LinkedList则不然,其内部实现就类似于数据结构中的双向链表。只不过在Java中可能你不能直接使用“指针”,所以得通过Java的“
2017-12-15 11:51:10 277
原创 Socket的使用
Socket基础在说到计算机网络模型的时候一定都会提到这两个模型:OSI七层网络模型和TCP/IP四层网络模型,因为OSI七层过于复杂,现在普遍采用的是TCP/IP的四层网络模型。tcp/udp协议位于TCP/IP协议栈的传输层,tcp是一个面向连接、可靠的协议,而udp协议是一个不可靠的、无连接协议。刚开始我有点疑惑,什么样的场景才需要udp协议呢?因为udp协议并不保证数据一定传输到目的地,有什
2017-12-15 11:50:29 262
原创 Kotlin的LogUtil
最近在撸东西,调试的时候用Android原生的Log感觉很不爽,打的Log给我一种东倒西歪,凌乱的感觉。于是自己看了一下Blankj大神的Android-Utils库,看了一下他实现的LogUtils,借鉴了一下,简单的封装了一个在Kotlin中可以正确使用的LogUtil。不过话说讲道理,有扩展,Util这种东西还是可以尽量不用的,但是我有点不清楚Log这玩意该扩展给谁呢,Any?所以还是写了一个
2017-12-15 11:49:55 674
原创 Kotlin委托&扩展&高阶函数
写在前面Kotlin现在已经是Android官方的一级开发语言了,以前就有大佬给我安利,最近刚好看open cv的c++和ndk看的头昏脑涨,反正最近也用不到,只是出于兴趣,不如换个脑子看看最近势头比较盛的Kotlin好了。在这里感谢一下猫哥对我的耐心指导,让我对Kotlin的认识更进了一步。委托委托有委托类和委托属性。委托类我在看文档的时候就感觉跟Java里的某个操作非常像……于是非常恶趣味的将代
2017-12-15 11:49:12 381
原创 Python入手(一)
去年就说要看一看 python(其实去年还说要看C++/JavaScript),看了一点儿语法之后一直没再碰过了。最近写 Android 写的头昏脑涨,决定看点 python 换下脑子。由于暂时打算用python玩一下,所以就不深入追究语言细节,只做一些有趣的事情。本文将简单的提及以下内容:requestsBeautifulSouppython io用 Python 做什么这里打算通过分析
2017-12-15 11:47:08 291
原创 Python入手(二)
本篇主要记录一些与数据库有关的操作,本来想看一下python的多线程,来优化一下上一篇的代码,然后看到了 python 的 GIL,恩,多线程先弃了。别我看了半天线程安全,线程池什么的,结果告诉我优化不能。那么就先看一下数据库有关的,方便以后玩出各种花样。环境Mac、MySQL 5.7.17,我这里MySQL由于以前弄过jdbc、php啥的,都已经装好了。还需要安装PyMySQL包:$ pi
2017-12-14 17:45:36 232
原创 MQTT协议学习与在Java(Android通用)中的使用
写在前面最近有需求要了解一下各个推送的协议,目前了解到实现推送的三个主要方式:MQTT、XMPP和Google Cloud Message(GCM)。第三种方式暂不研究,前两种都要看一看,本篇讨论一下MQTT协议吧。本文使用阿里云Ubuntu云服务器安装代理服务器,使用eclipse paho实现的MqttClient编写代码。文中的所使用的账户名和密码在本文发布后将会更改,请各位自行搭建环境。本文
2017-12-13 13:51:27 2186
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人