CimpleBlog

最近的一些总结

转眼开工已经半个月,小妞还在努力的找工作做,加油吧,今天算是把黑苹果完善完毕了,剩下的小问题也可以忽略不计了,改天测试一下休眠也就完事了。明天无线网卡一到也就原生可以从app store下载东西了。

黑苹果昨晚也算是如释重负了一下,一些计划也该实施了,毕竟拖太久不好,计划其实也没啥,就是学习,只不过学习什么最近有些乱,很乱很乱,明天是周末需要捋顺一下,目前的计划有redis一本书,php一本书,vue或者react选择一个学习一下。

然后就是这样吧,又一篇流水账搞定了,哈哈。最后,输入法看样子还得是百度啊,搜狗不习惯


过年小总结

图片alt

一转眼春节假期结束了,这个假期超级有意义啊,跟女朋友的亲事定下来了,也跟我来了北京了。剩下的事情就是攒钱了,毕竟要结婚买房了,攒钱计划也订好了,一定要按照计划执行清楚。

准备看代码的计划算是没执行,不过也看了一些还算可以接受。不过利用假期看了5本书,4本小说一本技术书。虽然技术书不多但是自己理解了一些没理解的东西以及如何更好的看书学习。看书果然不是看一次就行了,需要多多的看多多揣摩,等以后再看的时候专门看自己没有理解好的部分就可以了。

ok,又一篇流水账记录完成了。2017算是正式开始了,更加努力吧。就如同当初我保证的那样子,别急,给我一些时间啥都会有的。加油吧


从权限控制到合理分解系统的思考

本来这篇文章想写一个不利用轮子在laravel上实现rbac的东西的,其实也就是自己造一个rbac的轮子。

但是,最后自己还是懒了,不想写代码,所以呢,聊聊从权限管理让我思考的分解系统的一些东西吧,其实也不算是分解系统,仅仅就是想说说松耦合的事情。

曾经我以为我自己了解的不够多,但是通过这半年换工作以后我才意识到我了解的很多了,只不过有很多东西仅仅就是了解的程度而已,没有实践经验并没有什么卵用,而且了解的越多,不知道的就越多,就包括这次的权限控制这些东西,以前我总是认为这是个很高大上的东西,后面的学习我知道了rbac就是角色权限这些东西,现在我又认识到,这些东西应该是可以热插拔的可替换的,不应该对现有系统造成任何影响,也就是说我撤除掉权限相关的东西系统应该可以正常运行下去,还有,其实造一个轮子很难啊,因为可能需要我们为不同的框架去做相应的适配。

学习,永远都停不下来,我也不知道我上面说的东西对不对。就这样吧,看东西去了

对了,最重要的东西没说,说说思路。

首先我们应该有一个baseModel,所有的model对象都继承自baseModel,baseModel里面有hasRole,hasPermission,can ,cannot等这些方法用于权限的验证,然后blade那边我们也应该有相应的控制,至于角色权限相关,就按照自己的思路定义就可以了。

一些都应该是可替换的


再见2016

图片alt

2016马上就要结束了,风雨飘摇的一年,充满收获的一年。

刚刚过了年就跟前女友分手了,但是高兴的是立刻发现了更好的人。也许人无完人,我们在将来都有可能遇到更好的人。但是我想说的是,我很懒就坑你了,只要不放弃我,我愿意努力给你个美好的未来,我的口号还是以前那样,不求大富大贵腰缠万贯,起码衣食无忧。

正式毕业2年整,人更成熟了,更加平淡的看事情了,最终我还是回到了北京,算命的说我不能离家太远,最后我还是要回到哈尔滨。但是呢,我又一次出来了,我坚信自己的努力会得到相应的回报,只不过时间早晚的问题,多变的工作经历,让我有了更丰富的经历。都说2016是寒冬,但是在我看来,工作依然是给准备好的人的,在哈尔滨的时候就准备了几家面试。最终被pass了几家,我也pass了几家,最后挑选offer的时候没有选择58,而是选择了现在的公司,在面试的时候就聊了很多,大公司的利弊,小公司的利弊也都说的很清晰。而且自己也有一些方向,所以最后我更有倾向性的一家公司。说实话到现在也没有体会过大公司的感觉,小公司倒是工作了很多家,看看在有机会的吧,能够体会一下大公司的感觉,也许下次挑选公司就是以一个高级程序员或者更高的的身份直接杀向bat这样的公司了,近几年估计不会乱动,不过现在看来还是有难度的,小公司的好处就是什么都能接触到,但是由于小公司的限制不能够在某一领域深入进去,毕竟有更多的任务等待去解决,不过方向到现在我也没个目标,所以还是在小公司厮混。再有一个就是小公司的隐性福利必然没有大公司的完备,毕竟资金流有限。

做一个事情要坚持,坚持下去才会成功,知道的越多迷茫越多,方案就是不挺的学下去,在一个基础要牢靠,我就觉得我的基础有些差,现在也在不停的补充基础知识,还有就是知识让人分369等。既然出身不好,我就努力吧。

2017我还会在这个地方战斗下去,加油。学习,keep study。


我所理解PHP中的container

又用了一次老图片,这个图片我个人真的炒鸡喜欢呢。

说正事吧,10天前,我开始着手写自己的php框架,目前仅仅把路由和mvc中的vc实现了出来,说实话写框架真的不是那么简单的事情,需要考虑的东西要比平时写逻辑多得多。也可能是我考虑的太多,就是那些有的没的很容易中断我的思路,而且总想用上最新的东西,让自己的框架看起来高达上一些,所以最先想实现出来的就是这个container了。框架也许会中断一阵,然后从小的组建弄起,先准备弄一个pdo的封装,然后这个pdo的封装就成为我框架重的m了。

好吧,又跑偏了,继续说container,以前弄java的时候ssh框架就多次提到了ico啊di啊什么的,也许是当时自己的知识不够吧,仅仅是那么用而已,具体为什么却没有去考究,做开发3年多了,现在我也算是理解了。下面就说说我们为什么需要一个container作为全局容器呢。就是为了ioc/di。

那么ioc/di是什么呢,这两个其实是一个意思,就是什么控制反转,依赖注入,这两个词描述的是一个事情,只不过是从不同的方向说的而已。以前我们在开发的时候需要一个什么东西,构造好,传递进去,为什么不说在类里面初始化呢,这也是解耦嘛。现在为什么要依赖注入呢,早年的php框架各自为政没有太多的需求,现在psr标准出来了,composer有了很多的组件让我们来使用,标准就越来越凸显了,大家的选择就有很多,我们在各种标准接口上实现自己的类,就可以无缝替换了。也许有朋友会说。上面的方式也ok啊,改个代码就行了,但是不得不说的是这是极度危险的,当有一处忘记改动了,就会有很大的问题。所以,有一个容器统一管理我们的各种组件就是很重要的了。然后我们修改config中的相关项就可以了,这样就会很安全。

好吧,上面就是我的理解,没有一个代码,真的不愿意贴代码啊。

btw,美好的周六这么过去了,没写代码,现在写点吧,开始弄pdo


我为什么要自己实现一个框架

话说,写代码写了快4整年了,从 java 到 android 再到 php,一直都想写一个框架,android 的时候封装了几个小的工具类,在公司内部以及朋友的那边用的也很不错,有了问题我也能及时的修正,也在 git 放过一个开源的控件,截止到现在也获得了60多个 star 了,我觉得还可以了,没有英文介绍,没有详细的中文文档,就一堆愤青或者说中二的话,获得了这么多 star,还有朋友帮忙修改 bug,很开心的。

转型 php 也是无奈之举,回到哈尔滨以后自己懒了,就转了 php 了,当时也是公司不需要移动端了,而且在那干的也很开心,没有什么乱七八糟的事,也就半推半就的转型了。

干了 php 之后其实也算是幸运,虽然找工作不如 JAVA 什么的有优势了,但是我觉得对于我是个很大的提升,以前写 javaweb 的时候更关注的是框架的使用,以及配合技巧什么的,对于一些生命周期没有很好的理解,做了 php 之后随着不断的深入,让我有机会了解更多的原理性东西,但是 php 跟 java 也有一些不一样的地方,包括生命周期,所以,php 里面的单例作用更小一些。因为一次请求完毕之后就释放了。所以在初始化的时候 php 可能会更加耗费一些,也许是我理解的不到位吧。上面就是我理解的一些点。

继续说为什么要做框架呢,因为我个人觉得用框架用的明白了,但是对于一些原理性的东西理解的还是不够透彻,一直都有实现框架的想法,但是无奈知识不够。(同公司的同事,刚刚培训完的小伙子人家都实现出来框架了,不过也是,大家理解上也有很大的不同,不要脸的说,我个人可能更有优势一些。)最近终于吧想看的东西看完了,对于知识自己感觉也都 ok 了,于是在前两天就开工了,现在写东西的好处是有很多的框架可以让我参考,现在参考的就是 tp 以及 slim。不过大部分还是按照自己的想法来的,随变动很大。加油吧,这个东西,不准备推广出去,就是单纯的让自己掌握更多的公司。希望在元旦之前能有一个里程碑版本呢。

郝太太你快来吧,我好想你啊,为啥我平时总说烦你呢,就是想你啦,快来吧,但是我害怕给你造成困扰,所以就说烦你。快来吧,想你了。