公司新闻
当前位置:首页 > 新闻中心 > 公司新闻

软件开发入门知识总结

浏览:   发布时间:2019-07-18  [我要打印]

长春软件开发入门知识总结


  目前软件开发后端市场主要被JAVA/.NET/PHP三足鼎立,.NET这一足最近几年已经呈现逐年下降的趋势,毕竟微软的WP系统(WindowsPhone系统)没发展起来!


  软件开发移动端(客户端)市场操作系统玩家主要是Android、iOS,基于他们的客户端开发语言分别是Java、Objective-C(Swift)。服务端可以由JAVA/.NET/PHP这三家的Web开发支撑。


  任何软件都分为三端:前端(包括Android、iOS、H5)、接口(--客户端和后端交互的接口)、后端(服务端、支撑端)。H5属于Web前端,Web前端涉及的技术有HTML、CSS、JavaScript等。后端会和数据库端打交道,数据库常见的有MySQL、Oracle、SQL Server、DB2、Sybase。




  一提到web开发,目前在世界上流行性的三个帮派就是php,java和asp.net,这个世界上的百分之99的网站或者类似的应用都是由这三种语言的开发,这里请原谅我忽视某些小众语言如python之类。三种语言经过长达十几甚至二十多年的发展形成自己的生态圈,生态圈里面的世界千姿百态,生态圈外面的世界大漠黄沙、寒风凌厉。所以不管你是准备进入web开发的新人还是准备转型其它生态系统的老鸟,这篇文章都能给你很大的收获。


  俗话说,技术是为生活服务的,这句话一点都不假。先人看到鸟就发明了飞机,在计算机领域几乎所有应用都能够在日常生活中得到启发。现在我们就用最通俗易懂的方式---超市来比较这三种语言的生态系统的差别。


  如果把web开发比做开一家超市,网站的内容就是超市里面摆放的琳琅满目的商品,数据库就是这个超市的仓库,html5(抱歉,现在都是html5时代了,麻烦你就不要再用以前老掉牙的东西了)就是这个超市的货架,web服务器就是用来让你去选择购物的一条条道路,而和你互动的javascript就是那些穿着卡哇伊短裙的促销小姐或者你们老公吴亦凡。


  那么先说php,为什么呢?因为php是最吼的语言。php在web中的优势是数都数不过来,所有web应用中百分之七十都是php做出来的没有理由让你不先说它。如果用php做超市开发,那么php在生活中就如同红旗连锁、舞东风(不好意思,成都就这两个多)或者你家楼下或者拐角任意的一家便利店。php开发有什么优点呢?快捷、高效,你不需要花很多的钱就可以开一家便利店了,仅仅在开始阶段使用LAMP(linux+apache+mysql+php)就可以做网站开店运营。学习成本是最为低廉的,如同只要你有点小钱就能在老家开个便利店一样,任何一个有点基础的程序员都能够在一段时间学习之后就能使用LAMP找个笔记本或者五六年前的台式机去搭建个网站,所以相对沃尔玛那种大型超市或者万达广场,你身边的便利店是最多的一样,php开发的web应用也是最多的。


  优点分析:


  1.php的生态环境标配就是LAMP(linux+apache+mysql+php)其实这句话是不完整的,完整说起来是html5+javascript+php7+linux(选择centos7或者ubuntu)+apache(或者nginx或者其它)+mysql,现在已经进入云计算时代了,懒得折腾配置的人直接去阿里云租一台最 便宜68元包月的云服务器,足够支撑一两万人服务,类似学校、工厂、单位的使用了(如果我这篇文章火了,阿里云童鞋请赞助我广告费),一旦服务器出现问题,阿里巴巴有一群高薪苦逼的程序员随时帮你解决问题,这就直接把服务器维护者的工资省了。


  2.这里特别推荐直接上手php7,因为php7比以前的版本性能上直接提高了100 %还要多,实现模块化管理,后期便于进行业务拓展,业务拓展的意思就是你开的便利店想要扩大规模把先把隔壁的房子也租了直接打通,可以放更多的货物,模块化的管理让你进行升级时候更容易,比如多加一个服务器之类的。


  3.这套方案的除了你需要买一台服务器或者租个阿里云之外,其它的一切都是免费的,如果你是学生党或者刚工作的,用自己笔记本或者台式机在最开始的日子凑合凑合也行,那就是零消费了。


  4.nginx能够实现反向代理,这个功能老牛逼了,用apache还是nginx真是幸福的烦恼。


  缺点分析:


  后期延伸性相对差一点,随着人流量增多,你也有钱了,想要开连锁超市或者大卖场的时候,问题就出现了?因为web开发的后期问题都集中在流量和数据库上面,虽然现在php7已经在优越性提高了很多,但是你还是会发现不能满足你的需要,你的商店人满为患,大家结账需要排好久的队伍,当队伍后面等的人不耐烦就会开车去沃尔玛购物,体验性也会越来越差(很多大公司比如facebook都解决了这个问题,但是人家技术积累不是你开便利店挣得钱能够实现的,如果你真实现了请我吃饭),你不得不选择其它解决方案,比如java。


  所有人都说java与生俱来的模块化编程就是为大型软件开发服务的,因此黑java的人说java最 大的本事就是把一个小的项目开发成一个大型项目,这也从一个侧面体现出了java是团队开发的不二之选。那java是什么呢?java就是沃尔玛、家乐福、永辉那种大型卖场,java有足够多的框架和开源项目让你解决目前你能够解决的一切卖场问题,一个仓库的东西不够,没关系我们采用分布式数据库来解决,一个收银台不够,没问题我们先采用多个web服务器来增加收银台数量再采用负载均衡服务器把人流平均分到多个收银台中,这样人们就可以很快的付钱回家。如果采用刷支付宝或者微信支付,那服务器是不是要经常调用用户的信息?没问题,采用缓存服务器就行了,把用户的信息直接放到缓存的服务器中,这样每次就不用去数据库调用了,数据库的负担大大减少。如果你要问这些技术去哪里学,阿里巴巴已经把很多类似的技术开源了,去网上找呗。因此用java进行web开发是只有你想不到没有你做不到,想想天猫双十一那么大流量人家都搞定了,何况你现在遇到的这些毛毛雨。


版权所有:长春上信科技有限公司  吉ICP备16006330号-1     网站地图技术支持:深度策划