回顾下杂乱的10月
前段时间忙开题去了,而且越发觉得留给我的学习时间不多了,于是一直没来写博客。
本来还想把之前的android零基础入门项目的经历写下的,但是感觉毕竟是零基础入门的项目,缺乏技术含量,虽然因为要连JDBC就踩了很多坑,android高版本禁止主线程中进行网络连接这样的耗时操作,必须留给子线程去做,这里AsyncTask是种优秀的方法。也因此觉得太low,不敢发出来,毕竟主流做法都不会手机直接远程连接数据库,但是原因我倒是没有搞清楚,耗费流量大?安全性太差?本来还准备后期改成用主流的web server做个简单的中转做法,不过委托方的软件也是内部自用,我也不懂web开发,再重新学web服务器开发又要花些时间,于是就用JDBC先上了。小数据量下也没感觉到怎么不好,交付时对方也满意了,于是就这样了。毕竟我只是想涨涨见识,体验下android开发。
而且蛋疼的开题真是浪费不少时间,感觉做了不少虚事,意识到硕士阶段做的事对我找工作没有帮助后,我就只是决定混毕业了,PPT反正都能过,结果还要修改这修改那的。
开题完了后就一直在把linux的socket接口简单封装成动态库并调试,以方便调用,先写了个UnixSocket,后来改成了NetSocket,本来还让2个都继承了SocketBase类,结果后来又觉得这些功夫没必要,我主要是写网络socket,于是干脆就没搞这么复杂。
写完后大概是这个样子(UDP和TCP的连接)
$ ./server & [1] 3543 $ ./client 收到客户(127.0.0.1:10002)的消息: hello[1]+ Done ./server
$ ./server & [1] 4002 $ ./client 接受客户(127.0.0.1:10001)的连接 客户发送的数据: hello [1]+ Done ./server
因为写的是linux下的动态库,所以无法直接移植到windows上。于是又租了一年的阿里云学生机来和本地虚拟机进行远程互连来进行网络实验,顺便之后做点小项目时可以直接远程访问阿里云上部署的数据库,或者在阿里云上写web服务器。
写完后想发布在github上,但是又不想像以前一样简单地登陆网页上传文件,于是又去学git和markdown,中途又被导师叫过去打杂于是又中断了。然后又深感时间不够,于是买了本python网络编程的书,python代码跨平台,在windows上也可以实验了,而且代码简洁,处理字符串方便(不得不承认C++处理字符串太蛋疼了,脑袋总是被所谓的“效率”所占据)用来研究TCP/IP对网络编程的影响再合适不过了,而且这本书确实不错,以前遇到的一些问题也陆陆续续得到了解答。
前几天又被课题打断了,要在windows上写界面程序,调用相机的SDK以及进行串口通信,为了跑示例程序调用第三方dll于是又重新研究了下windows上的编程。
感觉做事情没有合理的计划太容易被各种各样的事情打乱节奏了,目前感兴趣的方向还是去互联网公司做后端开发,但是本来要看完的APUE/UNP/TLPI都只看了一些,像笔试题还没系统刷,基础算法方面也没好好训练,课题的事情又不时地会占用一些时间。
必须得定个计划:
1. 11月份学习完python网络编程和Unix网络编程者两本书(至少是主要部分);
2. 抽空git/markdown,学学awk/sed/grep等脚本语言;
3. 课题方面,主要周一到周五白天去搞。