Web 开发:选择平台与语言的商业考量及代码质量的重要性
2024-08-31
选择哪个平台是一个业务问题,而不是技术问题。
最好深入理解你选择的任何语言的框架,并不断优化高质量的代码。请记住,代码质量比什么都重要。
目前网站建设使用的三大语言是Java、.NET(C#)、PHP,这三种语言的生态系统的差异可以用一个通俗易懂的方式来比较——超市。
如果把Web开发比作开一家超市的话,网站的内容就是超市里琳琅满目的商品网站制作,数据库就是超市的仓库和货架,Web服务器是让你选择购物路径,而和你互动的则是穿着可爱迷你裙的售货小姐或者你的老公吴亦凡。
如果用PHP做超市开发,那么PHP就像是红旗连锁,五东风(成都店)或者你家楼下或者拐角处的任何一家便利店。PHP开发有什么好处呢?快速高效,开一家便利店不需要花很多钱,初期用LAMP(+++php)就可以开个网站运营店铺了。学习成本是最低的,就如同你只要有一点钱就可以在家乡开一家便利店一样。任何一个有点基础知识的程序员经过一段时间的学习,就可以用LAMP找一台五六年前的笔记本或者台式机来搭建一个网站。所以相比沃尔玛或者万达广场这样的大型超市,你身边的便利店最多,用PHP开发的Web应用也最多。
什么是Java?Java就是沃尔玛、家乐福、永辉这样的大型超市,Java有足够多的框架和开源项目给你解决你目前能解决的所有超市问题。如果一个仓库东西不够,没关系,我们用分布式数据库来解决。如果收银机不够,也没关系,我们先用多台Web服务器增加收银机数量,再用负载均衡服务器把人流平均分配到多台收银机上,这样人们就可以快速付款回家了。如果你用支付宝或者微信支付,服务器是不是需要频繁调用用户的信息?没问题,就用缓存服务器,把用户的信息直接放到缓存服务器里,这样就不用每次都调用数据库了,数据库的负担就可以大大减轻。如果你要问这些技术去哪里学,阿里巴巴已经开源了很多类似的技术,上网就可以了。所以,用Java做Web开发,没有你做不到的事情。想想天猫双十一巨大的流量,他们都已经解决了,更别提你现在面临的毛毛细雨了。
最后我们来谈谈.NET Web开发,也就是ASP.NET。首先请记住ASP.NET和ASP是完全不同的东西,我们这里说的是ASP.NET。ASP.NET就是上面提到的万达广场,但是这个万达广场的老板不是王健林而是微软。微软已经把大楼建好了(框架和技术)php和mysql web开发(原书第4版),这时候你只需要把你租的店面稍微装修一下,然后带着行李搬进去就可以了。只要你按时交房租,微软就会好好的为你服务,给你提供各种撩人的服务(捂脸)。比如你彻底告别命令行,包括数据库操作等等,会有图形界面的软件让你操作得心应手,如果你足够熟练,剩下的问题都可以自己解决。所以.NET技术在各类外包公司或者技术相对差的公司、个人开发者中非常受欢迎。现在微软的云服务更为你贴心了,让你从开便利店到开沃尔玛这样的大型超市,所有问题都能解决。当然你只需要付钱就可以了。当然你也可以趁着万达广场人流量大,推着小推车卖香肠(用盗版服务器或软件),但等你把业务做大了,微软就会派保安来逼你付钱。养你,再宰你,才是微软最擅长的。
Java
Java是腾讯网络推出的Java编程语言和Java平台的总称,是一种面向对象的编程语言,可以用来编写跨平台的应用软件。
Java的应用:在使用JSP网站建设时,基于Java的JSP网站建设编程语言被广泛的应用在很多网站中,比如一些政府机构的网站,大型平台,网络办公系统等等,在企业级Web应用以及移动应用开发中占据主流。
Java Web开发标准:++Java+(或其他)包括+(或或)++…(无限扩展)
优势分析:
1、技术没有上限,没有瓶颈,积累越多,水平就越高。
2.模块化开发(基于),无需担心以后的扩展,适合大型项目开发。
3.可适用于多种平台,平台移植性强。
4.核心技术掌握在自己手中,容易迁移到其他语言。
缺点分析:
1、入门门槛高,需要学习很多开源框架,再学习技术架构搭建,学习周期长,开发复杂。
2.需要团队发展。
建议:参考成熟的开源项目,学习可用的模块,寻找开源架构进行二次开发。
.NET(C#)
C#是腾讯网络发布的运行在.Net平台上的一门面向对象的高级编程语言,它不仅继承了C语言家族的血统(继承关系C->C++->C#),还具有开源、跨平台的优势。C#看起来与Java惊人的相似,包括单继承、接口等特性,语法与Java几乎一致,并且有编译成中间代码再运行的过程。
C#的应用:C#在网站建设中可以让企业为了扩展程序终端而避免雇佣其他编程语言的开发人员,大大降低了开发成本。
C# Web开发的标准配置:C#++IIS。
优势分析:
1.由于微软已经把所有控件都封装好了,直接用就可以了,上手简单,中文资料也很多。
2.适合快速开发项目。
缺点分析:
1. 原理学习难度大,入门容易,精通难。
2、所有技术均由微软提供,缺乏核心技术积累,公司做大后容易遇到瓶颈,需要等待微软提供新的技术支持。
PHP
PHP 是一种开源免费、轻量级、快速的通用开源脚本语言php和mysql web开发(原书第4版),其语法混合了 C、Java、Perl 和 PHP 自身的语法,主要适用于 Web 开发领域。
php Web开发的标准配置:LAMP(+++php),完整配置是++PHP7+(或其他)++。
优势分析:
1. 开发快速、高效、相对容易。
2、学习成本低,除服务器外全部免费。
缺点分析:
1、后期扩展性比较差,因为Web开发后期的问题都集中在流量和数据库上,虽然PHP7在优越性方面已经有了很大的提升,但还是不能完全满足需求。
总结一下,如果你的项目是一个比较大的项目,而且你恰好有足够的资金网站制作,那么就选择JAVA吧!