关于Python适不适合做Web开发的一些想法
作者:互联网
最近很多学员都在询问,Python只能做爬虫吗?这个就是要动动脑子的事情了。问出这个问题的人,多半是看了市面上各种培训机构的广告了。Python很火,为什么很火,爬虫也是各种培训机构的必学,为什么?通俗的说来就是简单,好培训!懂了吧,所以培训机构的话,听30%就行了。
还是回到正题,关于python 适合做web这个问题上来。python这个语言可以说是万金油一类的语言了,学起来确实简单容易上手,写法流程上也不用特别的去学习面向对象,让很多初学者松了很大一口气。回归了讲,任何一门语言包含实际外语都是一样的,深入以后,就不再是语言本身的难易度了,而是牵涉到了方方面面的事情,比如架构,逻辑,业务等等。随着采用的架构,逻辑,业务等等的不同,语言的特性也会有对应的发挥。
很多人讲python因为性能问题不适合web开发,其实把问题归结到性能上,也只能说明学习的不够深入。性能的问题来自于多方面,其实就简单的说,平时的业务也就是制作一个千人级别的门户网站,不知道在纠结个性能啥的有什么意义?再或者拿着1核1G的虚拟机来当生产门户,你讲性能有什么意义?就跟我们买手机一个道理。想要性能好,价格就得加,你说拿个千元级别的钱,让你考虑性能的事,这是好技术没处施展,精力多了烧得慌?所以,究竟适不适合,还是要看实际的业务需求以及是否有等值的劳动力输出。而且pypy等编译器,你不学习当然也就不知道看不见了。
还有人说python只适合做原型web。如果你是抱着有java,asp.net等基础再来评估这个的话,那就没有用了。因为本质的语言运行模式都不同,所以在开发设计的时候就需要根据语言的特性来设计自己的程序。一来就按java模式来设计,再好的语言都会被人吐槽。
接着有人说python的并发能力不强。并发能力是个多元的东西,高层面来说,python的用于web的并发框架很多,用它们进行web开发基本上可以不考虑单并发的问题。中层面来说,uwsgi,gunicorn,nginx等工具,想必也是用于并发的关联工具吧?在低层面来说,服务器的硬件也是并发的基本条件吧?弄个双核的CPU来讲高并发,这怎么也说不过去,何况还有群集,分布式等概念在,单就语言讲并发,确实没有很好的参考。有好事者会说,java的并发确实比python强,怎么解释?这个需要解释个什么?第一,java写10行,python仅一行,省下来的时间你吃了啊?得了便宜还不卖个乖,有得必有失,得失必相等的道理懂不懂?啥都想要,啥都不懂。第二,拿编译型语言跟解释型语言对比,这就很拿人跟猴子比一个道理,人是在已经有许多积累知识的前提下来处理事情与一个语言通过解释了,让其做事,这个效率和本质都是不同的,有比较的意思么?当然,我这里并不是想用这个比喻来贬低python这类解释型语言,而是强调类型本质不一样。
最后再来说说有人说python项目结构不规范。这个问题呢,要归结到那些培训机构了。参与过的同学在工作之后可以回过头来看看,你觉得他们讲了个啥,人家会不会给你讲高级程序架构?可能那些老师都没有过实际商业项目的开发应用经验,他们怎么给你讲?既然如此,不规范的问题就解释了。另外,目前很多人讲规范都是基于J2EE来讲规范。J2EE是很好的规范,但人家是基于java的呀,我前面都说了,本质不一样,设计架构都会有所变化。再者,很多规范是企业的成熟度模型达到一定程度之后衍生出来的,你幻想着自己弄一套规范,然后到企业里面去实践,那是很困难的。
最后来个结论,python适合做web,而且在有丰富的第三方库的情况下,开发过程会比较简单。但是web的逻辑才是关键,这个跟语言无关。奉劝那些还在鼓吹爬虫的,office的python机构少忽悠人,也请广大学员面对网络文章时,自己心里面要有个天平,自己判断好并坚持下去,都会有好结果。
标签:Web,java,语言,web,Python,适不,规范,python,并发 来源: https://blog.csdn.net/zerocoin/article/details/116640758