学语言
刚开始学的时候,只有c/c++的基础就胡乱地开始学了。写网页需要的语言真不少,html,css,当时看的服务器脚本是php,自然也要学一点mysql(书上讲的很晦涩)。感觉有很多东西不清晰,发现自己只是写过一些简单而且难看的表单提交。发现还要学js,js还有AJAX,jquery,而且网站还在linux下运行,顿时就晕倒了。
现在回想起来,我认为:
html,css比较容易懂,应该尽量弄懂。
js和php大概过一下语法和内置的函数和功能,一知半解即可,很多东西要接触到实际代码才能懂。
像数据库和网络都有一定的专业性,不是一两天就能学会的。网络可以看一下关于http协议,服务器和浏览器各自的工作原理,会有些帮助。关于浏览器,在学过html、css、js后,可以上网搜一下“前端工程师必读”,你会有所收获的。数据库如果觉得迫切需要,可能要集火一段时间。
项目源码
学完语言,我有很多困惑,这些奇怪的语法要怎么用,书上的函数该在什么情景使用,一个网站由什么部分构成,怎么构成?
在一次机缘巧合下,一个老师给了我一个项目,要维护基于dedecms的项目的代码。cms是内容管理系统的意思,就是用户可以编写一些文字并提交显示的系统,有点像博客园。虽然说cms不是什么新的概念了,但是dedecms提供了源码,而且抽象的程度不高,刚学完语法的fresher也很容易上手。而且源码为我们搭好了一个架子,我们在其中加一点东西就能形成功能,而不用费神去想怎么构成一个网站。真是新手练级的好选择。
总的来说,在dedecms,在需求的驱动下,我慢慢使用语法书中的知识,如正则表达式,过滤函数等;看了很多的源码,也多少了解了一些功能的实现方法;另外也慢慢知道一个网站如何构成。这种经验让我在以后的学习中对很多的概念都没那么陌生了。
框架
由于很多公司在招聘中都要求学过框架,毕竟框架能大大提高开发代码的效率,于是我也硬着头皮学了一点(由于我偏向服务器脚本,如果说js框架,就是JQuery等的)。我选择ThinkPHP,一个国内的php框架,有比较好的汉化文档。我发现ThinkPHP的语法中有很多东西我都在dedecms中见识过,所以学起来比较轻松。但我觉得框架中的函数和库比较抽象,如果一开始就学一定会吃苦头。抽象对应的一个词是总结,在学习框架的过程中,我对照dedecms中的经验,ThinkPHP的语法,认真地总结了一下,理解其中思想,自己成长了一些。
技术与实际
学过以上的内容后,我觉得开发一个网站没以前那么难了。但曾经听说过一句话,能够展示数据的程序是下品,能够处理数据的程序才是上品。的确,框架只是给了网站一个架子,但网站更重要的是功能。功能我觉得至少有下面两点:
支持性代码,一个网站要运行的运行得好,不仅要有表面的功能,还要考虑高并发访问,安全性等因素,这又涉及到像星辰一样多的技术。
功能性代码,比如说亚马逊要怎么给顾客推送适合的商品等。