程序员是和代码打交道的人,俗称码农。
现 在大到互联网,小到红绿灯,都是需要一些代码进行控制的。不同领域的程序员编写不同领域的代码。有做网站的程序,就写一些网站的代码;做财务软件的程序 员,就写些财务软件;还有编写像qq之类的客户端程序的;也有一些编写底层驱动代码的,像声卡啊,网卡啊,还有传感器等。
写程序就像是说话一样,需要用到所谓的语言,比如C语言,C#语言,Java,Php,Html,Javscript,Sql等等。
我是一个网站程序员,所以,就说说网站程序员的事吧。
对 于做网站来说,一般也有语言上的分工,比如前端语言、后端语言,前端语言就是呈现给用户的网页,像下拉框啊,输入框啊,按钮啊,图片啊列表等等,后端语言 就是用来处理一些业务的,比如点击了百度的搜索框之后,需要根据关键词在数据库中查出相应的结果,然后再显示在网页上,其中就需要用后端语言来进行处理, 在这里,很可能需要访问数据库,数据库常见的有Oracle,MySql,Sql Server,Access等等,而操作这些数据库需要用到一种叫做sql的语言,这种语言是通用的,不过对于不同的数据库,也会有差异。
好了,那接下来就介绍一下,做一个网站,需要用到哪些基本的语言。
一 前端:Html,JavaScript,Css。
1 Html(Hypertext Markup Language)超文本标记语言
(1)用来表示一个输入框,下拉列表,按钮,图片等等,如百度:
最上面是图片,中间是几个超链接,下面是一个输入框,右边是一个按钮,表示如下:
图片:<img src="http://images.cnblogs.com/logo.jpg" alt=""/>
超链接:<a href="http://www.baidu.com" titile="百度搜索">百度搜索</a>
输入框:<input type="text" id="keyword" name="keyword" />
按钮:<input type="button" id="search" value="百度一下"/>
所以,Html就是用来绘制一个网页的语言,用一些标记来表示特定的元素(Element)。
(2)Js(Javascript)一种操作Html元素的流行脚本语言
有了这些标记之外,还有能使用户体验达到满意效果,比如,你要删除一条QQ空间里的说说,会弹出一个对话框让你确认是否删除,然后可以根据用户的回答,做出不同的反应,如用户回答确定,那就删除,反之,什么也不做。实现如下:
<input type="button" onclick="beforeDelete();" value="删除"/>
<script type="text/javascript">
function beforeDelete(){
var answer = confirm("你确定要删除吗?");
if(answer == true){
}
</script>
(3)Css(Cascading Style Sheets)层叠样式表,用来控制Html元素的样子
举一个例子,把百度所用的Css代码去掉,你就会看到下面这个乱糟糟的效果了:
你不会对此布局有所好感的。
以上就是前端语言中最基本部分,简单来说,作为上网的人看到的网页就是这3个东西来控制(当然,真正说来,用到的东西可能还要多得多)。
虽 然单单运用这些,就中心做出相当美观的网页,但说真的,就这样的话实际上用处很有限,除了点来点去,翻来翻去,跳来跳去,还有什么用呢?也许我们需要做一 些更有用的事情,比如用户登录,登录之后,可以查看好友的状态,或者装扮一下空间什么的。也许你会好奇,这么多的内容到底是保存在那里呢?又是怎么组织成 一个这样井然有序的用户中心呢?这个就需要后端代码的帮助,从数据库中取出各种数据,然后显示出来。
二 后端
现在做网站使用的后端语言有很选择,可以是Java,Php,Ruby,Python等等。而我使用的则是.Net(C#),所举的例子也是用这个。
举两个例子吧,一个是登录,另一个是获取你的好友的最新动态。
1 登录
这个功能几乎所有的网站都会有吧,登录一般来说,需要访问数据库,你的账号和密码都被保存在服务器上的数据库里,当你输入账号或密码后,就需要去数据库里查找是否有这个人,有了这个人之后,密码是否正确:
var qq= "852268459";
var password = "1234";
var user = db.Users.FirstOrDefault(x => x.QQ == qq);
if(user == null)
{
return Json("对不起,没有这个用户!");
}
else
{
if(user.Password != password)
{
return Json("对不起,您输入的用户名或密码不正确!");
return Json("登录成功,正在跳转到个人中心……");
}
2 获取好友的”最新动态“
在这之前呢,也许需要先说明一下,什么叫做数据库。数据库简单说来就是一个表格,有行有列,行有行的编号,列有列的名称,如下:
编号
|
QQ
|
动态 |
好友
|
时间
|
1
|
852268459 |
[bluesky]发表了一条说说:“……”
|
bluesky
|
2013-12-20
|
2
|
865457123
|
[kamen]狠狠踩了你的空间,不疼的说:…… |
kamen
|
2013-12-20
|
3
|
852268459
|
[那个冬天]换了一套冰雪空间主题,快去看看吧
|
那个冬天 |
2013-12-21
|
…
|
…
|
…
|
…
|
…
|
就是这样一个表格,可以存储比较大量的数据。你可以设想,这个表格是用来保存好友状态的,还有一个表格用来保存用户名和密码的,还有一个表格保存你的相册的,很多很多表格。
好了,现在用后端语言来查找一下这个用户852268459的好友动态。
var qq= "852268459";
var feeds = db.Feeds.Where(x => x.QQ == qq).OrderByDescending(x => x.CreateTime).Take(20);
这个语句呢,用来获取你的好友的最新动态,当然获取的时候要过滤一下,必须是
你的好 友的动态,什么叫做“你的”呢?就是在数据库里规定好了,那一列【QQ】就你用来保存属于这个QQ号的好友动态的,所以,就是用Where过滤一下,然后 可以排序一下,使最新产生的动态排列在前面显示,最后,一个页面不能加载好几个月甚至好几年的动态,只是先从中选取20条。好了,现在好友动态取出了,通 过之前的前端语言,可以把这些动态显示出来,并加以排版,就可以看到了效果了。
三 总说一下
网 站程序员就是这样的,可能需要考虑到你们打开网页看到样子是怎么样的,也要考虑怎么从数据库中里面找到需要的数据,并且反反复复,反反复复,要做相册展 示,又要做日志管理,甚至还有留言板,装扮空间等等。你们所看到的漂亮的丑陋的华丽的朴素的网站,都需要程序员去耕耘,不断调整优化,最后才会有一次又一 次的升级,才会有越来越好用的网站。
本人原创,欢迎转载。 欢迎提问,可能在下一篇中回答你的问题;欢迎质疑,我也知道写得烂,所以不敢标榜自己的文笔。 同时,
希望你得空时也能写一写关于你那个行业的那些事,不管你是医生,是教师,是销售员,是公务员,也许你觉得自己的工作枯燥烦恼,但在别人看来,也许会很有意思;更好一点的,你会在向一个对你的行业一窍不通的人解释一些看似无需解释的东西,有时也会很有趣。