用Python学web后端

网站是怎么做出来的

网站就是一个具有收集用户数据,并展现服务器数据的应用。这个应用跑在服务器上,用户通过浏览器访问这个应用。因此其他应用软件的设计方法大多也适用于网站。

举个例子,你是个老板,想做一个网上下五子棋的网站。首先你想好了它的功能。这确实是老板干的活。老板要是连这个都不想干,就成立个市场部,了解市场需求,从而决定产品方向。简单罗列功能如下:

1. 登录,注册
2. 创建五子棋局
3. 两个人下五子棋
4. 下完把胜负信息保存下来

接下来产品经理出场。

*细化上面的功能,比如登录可以用各种账户,支持微信登录,手机验证码等等。
*根据用户路径将网站应用分成一个一个的页面。页面和页面之间由url进行连接。
*定义每个页面有哪些功能,需要显示什么内容。

接下来就该广大工程师上了。

首先前后端工程师商量一下,要完成这个功能有哪些url,每个url交互的数据有哪些,交互方式(get,post等)有哪些?定义完接口就开工啦。

商量完就各自分工。

web前端工程师负责完成页面,主要负责页面怎么显示数据最好的问题,包括配色,用户响应等。提高用户体验。

web后端工程师主要负责架构的选择;然后对url进行映射,不同url要映射到不同的网页或功能,同时提供需要的数据,或者处理用户请求,将前端post提交的用户数据保存下来。

这时如果老板高大上,招了测试工程师的话,测试工程师负责写测试用例,测试各个url,模拟用户动作,如果服务器返回不是期望的结果则程序自动报错。

然后就是不停的跑测试工程师提交的测试用例,出现问题,前后端debug后,再跑。直到把测试工程师的用例全pass。

然后就是局域网联调。各种测试保证流畅和bug最少。最后就可以上线demo版,引入内部测试用户啦。

这时,老板发话了 "下五子棋不如打斗地主好玩,你们把它改成斗地主吧。"

只见下面吐血一片。。。

怎么学web后端

选一个web框架入门,django是个还不错的选择。

  1. django文档是必不可少的,不过看完tutorial后的各个章节比较分散,还是做个实际项目,在项目中理解用法会更好。

  2. django书我看过的觉得还不错的, 《Two Scopes of Django1.6》 , 《Test Driven Web Development with Python》, 这两本的django版本还新些,不过现在的django已经1.8版本了,更新太快没办法。

  3. 如果你看英文不顺畅,我的云课堂视频课程和里面开设的实验课可以帮助你入门django。(基于django1.8) 实验课中你要根据实验文档和部分视频讲解独自完成的云记账demo项目,当然如果实在完成不了,也有代码可以参考。关键是通过实验课,你还能学习git等开发工具。

Don't be afraid to learn things outside your field.

尽可能地了解全局,同时精通局部.

赫胥黎