ThinkPHP开发要素

近日因项目需要,使用ThinkPHP3.1进行开发,记录几个要素。要素文章主要目的是把容易忘记的记录下来。

ThinkPHP习惯性使用一个入口,一般是index.php,后面的路由等跟进。一般情况下,在部署的时候会将这个要素隐藏起来,不直接显示。

[阅读全文]

批量修改图片大小

这两天做数据采集的时候,发现直接获取的数据文件太大了,保存起来占用内存太多,

手机端又不需要这么大的内存。

[阅读全文]

Python-logging模块

logging 是 python 自带的日志模块,用于收集并且导出日志。

要想使用好logging,需要明确几个概念:

1. logger

logger 可以理解成输出日志的核心变量。 通过 logger,可以输出 warning, info, debug, critical 等类型的日志。

2. handler

handler 处理器,是把内存中 logger 的日志导向不同的输出。 例如文件、邮件、stdout 等。

3. formatter

用于规范化日志的结构,补充日志的元信息。

4. filtter

用于 logger 中日志的过滤。

Python 

从Vim转到Atom


vim 真香

2018-08-27

Vim大大小小也算是用了3年了,中间也尝试过不少IDE,从爽度上讲,Visual Studio绝对是最令人舒爽, 愉快的。不过,Windows本身的体验太差——对bash的支持太差;朋友win经常死机;因此不太喜欢用vs。 此外,vs收费,手头没钱。因此,决定使用Atom来做下一步的开发。

为什么不用Vim了

Vim搭配python-mode的确是能带来不错的书写体验,但是因为Vim本身功能需要自己来写, 而vimscript在我这里着实不好用,学习起来虽然不能说有很大的难度,但是不同插件之间的调整, 以及出现小问题闪现而过得debug信息【输入:message来查看】等等,都不是很舒服。

此外,我的Vim插件很多,运行速度已经受到比较大的影响,代码跳转速度都有些慢,体验着实不好;

转到Atom

Atom和Sublime比较了一下——虽然Sublime拥有用Python写扩展的优势,但是因为收费,而且我不认为这 个软件能让我心甘情愿的为其掏腰包,所以就干脆放弃了。选择了Atom。VsCode因为是微软家的东西,道理 上讲应该很棒,但是因为在开源开发者那边,大家可能不喜欢微软的一些做派,所以一些大牛不喜欢给微软 开发插件——因此最终决定转移到Atom。

此外,代码补全功能上,Atom的体验实在是太棒了!

[阅读全文]
vim 

python UART编程

UART串口编程发送接收上使用pyserial,数据处理使用struct

一般情况下,有了struct就不需要使用C语言写Python扩展了,但是实际上使用C语言在处理一些情况的时候会更方便一些,因此一个比较好的选择是,用C写模块,然后用Python调用。

Python 

关于Common-lisp

Common Lisp这门语言是我在大学中感觉第二难的编程语言——第一是汇编,我直到现在都不想碰它。

难在何处?第二章开始,一般语言断断续续看,一周也就看完了。但是common lisp,看了足足一个月——可能也是因为接触起来比较困难,屡次夭折我学习其的兴趣。据说,学了lisp的人都“疯”了,比如冰河先生,王垠先生等。但是对于一个Hacker来言,我想这更加大了这门语言魅力。(注:这个地方的因素有很多;本身lisp是不难的,入门的方式很重要。)

在书写代码的时候,总有种感觉,这个地方如果可以这么实现,那么真是爽之又爽。仔细想想,lisp这种加上'就转变的特性,就是人们所说的lisp可以自己写lisp程序,也就是类似于Java中的反射思想,这十分的诱人。但是相比较lisp,Java以及其他语言想要实现这个特点,可能要写很多代码——这就不符合一个懒人的特点,同样,写的代码越多,出bug的几率越大。

想到多少就大概写多少。过去的几天,发现自己突然对于lisp有了更高的理解,对于设计模式【噗嗤】以及lisp函数编程的一些特性也有摸到门框的感觉,十分开心。于是写这篇不足以称为“文章”的博客来略表自己开心的心情。

此后,这篇文章中更新学习笔记的内容


发现scheme更适合商业化;同时学学

lisp 

IPython学习

IPython

IPython6.0 版本更新,已经不支持Python2的相关版本,以及Python3.3以下的版本。赶紧升级吧!

Python 

谈论一下编辑器

编辑器这个东西,一直以来的目的,要么是装逼,要么是提升程序员工作效率。

做物联网开发使用终端下的vim编辑器的确是行云流水——省去了git pushgit pull的过程。

不过仔细想来,真是工作了,恐怕使用这个东西频度就不行了。一方面,可以根据最近的一些更新,比如说vim的异步来提升一下插件的整体体验。工作环境是会变得,在配置编辑器上话费太多功夫总归是不划算的。现在正在体验spacevim——

  1. spacevim载入以后没有对其leader的介绍,可能是出于照顾新手?这点我有点不适应——我还以为加载出来以后,就是一个类似于spacemacs的界面呢。
  2. 原来是需要使用neovim才能体现出spacemacs的效果
  3. 速度实在是太慢了。主要是VimFiler的缘故,拖的整体速度都很慢。

其实本来想要写,进入工作环境,恐怕就没有那么多时间去摆弄编辑器了。但是似乎编辑器涉及到的技术,也有许许多多是可以共通的,因此,研究起来应该也是有价值的。不过使用起来,还是一整个配置好的环境更加舒服——IDE就免了,感觉上还是太重了,有一定自由性还是好的。

sublime似乎是一款比较优秀的编辑器,使用python作为他的”脚本语言“,就像”lisp“之余emacs,”vimscript“之余vim一样。不过,习惯于vim的我不太想要重新去看一个新的编辑器的API了,总感觉有些麻烦。

写的比较杂乱,主要是最近没东西玩了,复试总不能打游戏吧,只好研究个什么。——以考试为目的学习,真累啊。

vim  emacs