大型的app都是用什么编程语言编写的?
▀ℝ大型的app都是用什么编程语言编写的?
Hi,我是科技互联网大叔,有多年的开发经验和架构经验,对题主你的问题还是比较了解的,今天我来回答下这个问题。
一个大型的App包含的内容会很多,比如客户端开发、服务端开发、前端页面开发等等,我会一一道来。
第一、客户端开发
客户端开发,大家应该是感知最明显的,就是你手机里下载的各种App,都是属于客户端开发。那么客户端开发主要用什么编程语言呢,这里又要区分Android和IOS。
Android的常见编程语言是Java,Java语言是一种使用特别广泛的语言,可以用来做很多层面的开发,最早的Android体系大家直接用Java来去开发,Android系统的编译器是可以编译运行的。当然现在越来越流行Kotlin,其实Kotlin是Java语言的一个变种,比Java语法更简练,最终也是运行在JVM上。
IOS常见编程语言是Objective-C,这是早期的编程语言,是基于C语言的一个变种,有很丰富的图形界面开发功能。不过后来苹果公司2014年自己推出了Swift语言,渐渐成为主流。毕竟Swift语言是苹果公司推出的,他们肯定更了解自己的IOS系统内核,所推出的Swift语言对于基于IOS的开发者来说简单易用。
第二、服务端开发
客户端开发主要是做展示,但其实App上有各种各样的数据是从哪里来的呢?比如电商网站的商品介绍,头条App的文章内容等等,这些都是需要服务端提供各种接口,客户端的程序去调用服务端接口,拿到数据后再给用户展示出来,这个做服务接口的就是服务端开发。
服务端开发常见的编程语言也是Java,哈哈,Java确实使用面很广,当然,能用Java的地方就可以用Kotlin。现在服务端开发流行微服务架构,各种各样的支持微服务的Java框架,比如Springboot,Dubbo等等,可以很方便的搭建高并发的服务体系。这些成熟的框架也使得Java进一步的流行起来。
当然现在有一个后起之秀,Go语言。Go语言是Google推出的一个新语言,可以很轻松的兼顾运行性能、开发效率及维护难度,以其独特的设计风格和优势在整个行业有了一席之地。
第三、前端开发
App里面的很多频繁变化的页面不会做成原生页面,而是做成Html5的页面。这种页面方便上下线和做一些修改,特别适合做各种活动的场景。
做前端页面的主要编程语言就是JS了,全称为JavaScript。这种语言是一种脚本语言,具有丰富的控制功能和组件交互功能,不过目前来说用原生JS语言做开发的很少,大部分还是会用比较主流的三大JS框架:VUE,React,Angular。
↲∮大型的app都是用什么编程语言编写的?
后端老牌语言:Java,C,C++,C#,其中很明显Java的地位无法撼动。
脚本式语言:Python,Perl,PHP,Ruby,他们比较轻量级,语法灵活,易读性和维护性比较差。其中Python在大数据方面的应用优势明显,所以排名靠前,而PHP下滑严重。
后端新锐:Go,虽然现在受众面比较小,但是以后前途是不错的。
前端语言:JavaScript。实际上js的影响力比排行榜上的位置要靠前,统治了前端的语言。
移动端语言:Swift以及没上榜的ObjectC。没啥好说的,iOS专用。
々=大型的app都是用什么编程语言编写的?
APP是Application software的缩写,可以翻译为应用软件,主要是给最终用户使用的。例如,Office全家桶,PS,浏览器,播放器这些都是APP,甚至Linux下的一些没有图形界面的APP。
WEB APP
这些软APP通常使用C#,C++,Java,Python,shell,Perl这些语言编写。当然,最近也有使用Electron这样的平台开发的软件,如著名的VSCode,它使用的是Web语言,也就是HTML,CSS,JavaScript。
移动APP
为移动平台创建的APP,被称为mobile APP(移动APP)。我认为是想问的是这种类型的APP。这种类型现在的开发类型主要分为原生开发和混合开发。
原生开发就是移动平台(iOS和Android)各自推荐的语言。
iOS平台主要是Swift和Objective-C。
Android平台主要是Java和Kotlin,当然还有用C++写的。
混合开发的话,就是想实现使用同样的代码运行在不同的平台。主要就是有那么几个混合开发平台,如Cordova,React Native,微信小程序,这些平台主要使用web语言,即HTML,CSS,JavaScript。当然还有最近比较火的Flutter,使用的是自家的Dart语言。╢⇋大型的app都是用什么编程语言编写的?
大型的app有一点可以肯定的是,绝对不可能只用一种编程语言就可以研发完成。
大型APP的开发也是需要分种类的。我不可能把所有类型的大型APP在这里都给你罗列出来。所以就选择一个比较有代表性,常见的大型APP来说明问题,那就是某某管理信息系统了,俗称MIS。比如说常见的ERP,OA,CRM等等,这些都是属于大型的MIS。
大型的MIS,进一步划分的话,又可以分成BS结构或者是CS结构的APP系统。
首先,BS结构的大型MIS,前端需要使用HTML 、CSS、JavaScript等等,这些前端的开发语言。中间层的话,涉及业务逻辑层和服务层。一般来说,中间层属于后端。后端相对于前端来说比较容易一些,可以选择C#或者是JAVA编程语言其中的一种,就可以完成后端的业务逻辑层或者是服务层的开发。
当然,后端还包括数据访问层。一般来说,目前的数据访问层都是采用ORM映射框架,也就是实体对象映射框架模型,开发语言同样是选择C#或者是JAVA其中的一种就可以了。
最后是连接数据库的部分。不管你的数据访问层是使用ORM框架映射,还是直接连接数据库来进行操作,开发语言基本都是统一的SQL语言。
其次,CS结构的大型MIS,其后端和数据访问层和BS结构的APP差不多。最大的区别在于前端部分,CS结构的前端比BS结构的前端部分要复杂很多,因为CS结构的前端和具体的操作系统相耦合。
CS结构的前端,如果涉及串并口编程或者是单片机编程的话,开发语言涉及C语言和汇编语言。如果是要调用一些特殊的模块来实现前端界面的话,可能涉及到具体的某种特定开发语言。如果没有涉及特殊的界面开发的话,那么CS结构的前端开发语言可以和后端开发语言进行统一。
以上就是以MIS为例,大型主流的APP系统的开发语言使用情况。
☏➳大型的app都是用什么编程语言编写的?
APP开发的类型,默认你说的是手机APP。我们将APP的组成可以分为:
1、原生应用,如Android应用、IOS原生应用
Android 原生应用一般使用java或者kotlin语言开发。
IOS原生应用使用object-c 或者swift语言开发。
2、混合应用
一般公司为了节省成本(做原生应用需要找android、ios两个平台的程序员且开发周期长),选择使用混合跨端开发,而这种方式开发的框架就比较多了:
uniappReact NativeWeexHybrid flutter框架很多,但是语言都是使用JS语言开发的。
3、小程序
小程序属于微前端应用,各家都有自己的小程序开发框架,开发语言格式,但本质上基本都是通过vue进行改写的,所以其本质还是通过js实现开发的。
总结下来,目前APP开发语言:
andorid原生部分开发:Kotlin、JavaIOS原生部分开发:Object-C、Swift混合和小程序:JS------------------
推荐阅读:
对于一般纳税人客户,他为什么愿意让对方开13个点的增值税专用发票而不愿意3个点的?
下一篇: 金陵十二钗正册都有谁?