Flask+LayUI开发手记(序)

       学习python编程,起始是希望能够找一个比较简单且用途广泛的开发语言,作为一个UNIX/C语言的骨灰级程序猿的新方向。一直以来都有种感觉,用传统编程语言搭建系统真是一件很大的工程,随便一点小应用,就要弄一整套环境出来,而且这种趋势还越来越明显。当然,系统重点没啥,关键是不灵活,远不象python这样的脚本语言,可以灵活处理任务。

       而在用python的过程中,不但习惯了它的简单(比如用缩进来表示层次),而且更体会到它拥有着大量的库的好处,几乎是任何需求,都可以找到库,然后以十分简单的编程完成各种现实中需要的任务。并且,python更有强大的Numpy和Pandas等分析工具,可以把俺进行了二十多年的数据分析工作提高到一个新的层面。

       因此,学完基本的python操作后,深刻理解到它的方便和简捷后,不由得生成新的想法,最想做的反而不再是数据分析,而是觉得可以搭建一套架构简单、编程工作量小并且技术难度低的轻量级系统技术框架,把日常工作中遇到的一些小型企业应用用最低的成本最快的时间给实现了。于是,就有了这两个月的新尝试,搭建一套WEB/python的系统架构。

        做WEB系统,前端都差不多,无外乎HTML再加一套前端JS技术框架(比如Vue或者React之类),后端则分出几大体系,JAVA、PHP或者.net是主流的,选python实属有些另类,好在也不是没有先例,象豆瓣之类,看着也很漂亮,于是就这么愉快的决定了。

        首先要定的,当然是WEB服务器,主要在Django、Flask两个里面选。据说Django是功能齐全的封闭式的企业级开发平台,而Flask则是一个轻量级开放式。我对所谓企业级开发平台一向没啥好印象(比如啥EOS),对于轻量级开放式则一直比较喜欢,主要是喜欢这种开放性的想要啥就自己拼的感觉。有这种倾向性,自然是选Flask了。而且主要是入门学习用的,所有的程序实现,同样的需求,其实实现原理也都差不多,所谓开发平台的差异,真熟悉了,把应用迁移到另一个上,也就一个月的工作量,真没啥难度。

       框架定了,当然是如何入手学习。我的习惯,肯定要买几本书按图演练,其实上网找资料学习也是不错的,至少网上的资料都比较新,而书都会落后上两到三年。但网上查资料,都比较零散,很难建立知识体系,而书的最大好处,就是有条理有体系地介绍。看着书学,同时在网上查资料来补充,这是我比较习惯的学习模式。

       Flask确实是非主流,书很少,好在也能淘到一两本,比如下面这两本。第一本更有条理一些,所以俺主要是用第一本来练手,同时用第二本来做辅助。当然,说起来两本书的技术都有些过时,特别是前端的技术实现,用来给学生练习还可以,用来做工作实现,就太out了。但既然是入门练习,其实这种信息展示和数据处理混在一起的传统技术反而更容易理解一些。

Flask+LayUI开发手记(序)_第1张图片Flask+LayUI开发手记(序)_第2张图片

       依照着书上的指引,花了差不多一个月,搭建完了演练系统,所谓一套网站内容管理系统。作为初学者,确实是三灾九难,好在也都过去了。学习的过程还是不错的,涉及到很多软件工具,甚至包括nginx、redis等现在常用的WEB架构中的软件,也算付出有所回报。

       看着系统搭建起来当然很欣慰,毕竟作为一个UNIX端的程序员,基本都在做数据处理,而看着一套能够把结果展示出来的系统由自己亲手做成,还是很有成就感的。不过,也明白,就这个jquery、BootStrap再加Hi-min杂凑出的不伦不类的前端技术架构,是没法拿出来去见人的。既然“会不会”这第一步走通了,那下面自然就是“行不行”了,该引入比较新的前端技术架构。

       其实也想学VUE或者React来者,但这几年工作,对于现在这样一个很小系统实现就要分出前端后端,搞好几个人让实现成本居高不下的开发模式十分反感。我的目标,就是一个人能够做一个系统(就象我们当年那样),主要面向企业管理应用(而不是电子商务应用),后端的业务逻辑才是系统实现的重点,前端能够精确展现就可以,不追求那种极致的客户体验。这样,LayUI就进入了视线。

      LayUI前几年在企业管理应用中用的挺多的,当初小孩们为单位做的一套运营管理平台用的就是LayUI,那简练流畅的界面给俺很深的印象。但随着这几年电商系统开发模式成为显学,讲究前端灵活展现的重客户端的Vue和React成为了主流,LayUI这种界面统一单调的轻量级前端框架就逐渐势微,甚至官方网站都关闭了,不过好在LayUI的作者贤心一直在坚持做,目前已经做到2.9.14版,功能也强大了很多。

       LayUI最大的好处,就是十分轻量级,结构十分简单,引用简单,只有各一个CSS和JS引入即可。最可贵的,它是一个工具库,而不是一个平台,不是排它性的,不会说用了LayUI就不能用别的。而且,菜单、表单、表格、数据表单等常用控件都十分成熟,网上也有十分多的参考案例。

       到这儿,一套系统所要的技术框架就已经齐全了,下面就是实战演练。俺也会时不时把做出来的东西拿到这里分享一下,看看有没啥要改进的地方。

你可能感兴趣的:(layui,前端,javascript,flask)