也谈高手

下班回家,跟同事聊起来,何谓“高手”的话题,突然一句“你觉得自己是php高手吗?”,我随口答道,高手戴引号帽子的高手。呵呵O(∩_∩)O~!所以忽然想谈谈“高手”。

既有定义,高手必然存在,不是什么遥不可及的人。我们有幸还是可以达到滴。回到编程,PHP高手上来,或者C++、C、Java等等编程语言来,高手跟我们的区别还是蛮大滴。平常我们一直挂在口头,每每开会总会捎带着,信誓旦旦 “可读性、可维护性、接口良好性、可移植性、通用性、高效性”其实都是些,说起来容易做起来难的事。每每耳提面命,估计是让我们自我督促一下,“听到没,达到那些苛刻的要求才能接近高手”。

确实如此,同样的一个模块儿,高手编程时考虑的事情,思路跟入门级别的人会有所不同。而且往往达到高手一级的人,大都已形成自己独特的编程思维,或者类似于传统瓦匠、瓷匠的技艺手法。遇到什么的情况,如何处理,才能满足那些苛刻的要求,高手都有一套自己的策略。 Continue reading »也谈高手

PHP中的Session机制

做web开发,必然会涉及到Session,这是由于http协议本身是无状态的(每次响应都是独立的,彼此间没有联系),所以如果需要在页面跳转间保持某个用户的身份,就要在每次连接时告诉服务器端你的唯一标示号,即Session ID。这样,服务器端便可通过Session ID得到所需的数据。

在PHP中,Session是通过$_SESSION这个全局变量来set/get的,不过在使用之前要先初始化。初始化是通过 session_start函数(如果php.ini中将session.auto_start设为1,则会自动初始化),之后PHP会为request 自动生成一个唯一随机数作为Session ID,生成算法默认提供了MD5 (128 bits) 和SHA-1 (160 bits),由php.ini中session.hash_function设定。其实也可以自定义,比如在随机数基础上将来访者的IP地址也加入到算法中,像CodeIgniter1.7.2中代码: Continue reading »PHP中的Session机制

关于编程

    最近主要在做php方面的工作,所以对php,以及网站前端脚本 javascript  多有了解,可以在博客里分享一下。其他的C、C++、Java、C#好长时间没用过了,略有生疏了,以后慢慢拾起再分享。关于Python、Perl是两个我正在关注的语言,也可以写一写学习的经历。

   关于技术,我主张分享,这或许才是进步的基础,也正是开源最近比较火的缘由之一吧。产品可以用来赚钱,用专利保护什么的,编程技术,大家多交流可以产生新的碰撞,才不会导致固步自封,原地踏步。但我依然讨厌那些未经理解,就擅用CV大法的程序员,一是不利以后项目的维护,出了问题,只好另寻出路,二是对于分享源码的人没有贡献,除非出了问题有与源码作者联系讨论,这还说得过去。

  先写这些,略显罗嗦,勿怪!