网站项目心得

来源:互联网 发布:淘宝上的跳蛋卫生吗 编辑:程序博客网 时间:2024/05/19 02:03

最近实习在帮部门老大做一个员工管理的网站,现在已经基本做成功。做一下总结,避免以后走弯路。


首先是后端用什么语言、什么框架写。很多大牛都说过,“菜鸟才会关心用什么工具,真正需要关心的应该是架构设计和逻辑实现”。但是我们在做项目时毕竟还是会进行编程语言以及框架的选择。不同的语言和框架对编程效率会有不小的影响,比如拿Python和Java比较,Python是弱引用脚本语言,因此写起来很方便,对同一个引用来说,它可以指向整型变量,也可以指向字符串类型变量,而Java是不行的,这是Python的优势。但是Python的灵活性的代价就是性能问题,另外,分布式架构现在基本上都是用Java相关类库来做的,在业界也很成熟,Java的各种库和框架要比Python丰富得多。所以,如果要做的网站并发量不高,不需要分布式,并且想要尽快做出来的话,选Python比较好,有Django,Flask等很不错的框架;如果涉及到分布式架构,并且注重性能的话,自然选Java更好了,框架也自然是典型的SSH框架了。


因为项目比较急,而且主要是给公司员工用的,所以访问量不会很大,因此开发效率就成了最重要的问题,敲定Python。最后的服务器搭建在Windows平台,那么wsgi服务器的选择就很少了,最终选定的是Tornado,反向代理服务器用的是Nginx,数据库用的是MySQL。


Python网络框架选择Flask,ORM框架选择sqlalchemy,后台还有日常任务,用到了Apscheduler框架。


前端用到jQuery、Bootstrap、Ajaxfileupload、JSON等框架。说真的,就做项目来说,框架比原生的真的好太多。一是框架大大减少工作量,二是框架适配多款浏览器,虽然现在JavaScript、CSS在各家浏览器上的表现已经差不多了,但是在面对IE8(没办法,公司的电脑基本都是IE8)时框架的优势尽显无遗。


chrome或者火狐的调试功能都很强大。可以看网络各个请求的时间,请求数据,进行JavaScript调试,打印信息到控制台等等。


还要吐槽一下,Flask框架在Windows平台服务器部署真是太难了,很难找到一个合适的WSGI服务器,还会出现各种问题。


接下来的文章要总结一下Flask和SQLAlchemy,顺便用一章内容解释一下APScheduler。



0 0