0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

手机APP都是用什么编程语言写的呢

Q4MP_gh_c472c21 来源:嵌入式ARM 作者:C语言与程序设计 2020-12-24 17:05 次阅读
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

今天想和大家分享的内容是和我们手机上APP相关的,它们都是用什么编程语言写的呢? 两大移动端:AndroidIOS,我们就不多说了,下面我们从另一个角度进行分类。

01

第一类:针对单一APP开发的语言,即开发一套代码只能运行在一个平台上。1、开发Android的:Java和Kotlin Kotlin是一种在Java虚拟机上运行的静态类型编程语言,被称之为Android世界的Swift。Kotlin可以编译成Java字节码,也可以编译成JavaScript,方便在没有 JVM 的设备上运行。运行效率提高很多,并且语法更加简洁好用。 如果是与系统底层进行交互则需要使用JNI技术,通过和C或者C++结合实现相应的业务逻辑,比如美颜或者直播类型的APP。直播类型的APP采用的ffmpeg技术,其中ffmpeg就是用C语言实现的。

2、开发IOS的:Swift和Object-C Swift 结合了 C 和 Objective-C 的优点并且不受 C 兼容性的限制。

02

(二)第二类:可以针对多个APP端的编程语言,即只需开发出一套代码,就可在多个平台上运行。

1、第一种是Flutter技术 基于Dart语言,比如现在闲鱼APP就是基于flutter开发的。并且有着多年经验,而且闲鱼免费开源了框架。 Flutter是谷歌的移动UI框架,可以快速在iOS和Android上构建高质量的原生用户界面。Flutter可以与现有的代码一起工作。在全世界,Flutter正在被越来越多的开发者和组织使用,并且Flutter是完全免费、开源的。 Flutter的热重载可帮助您快速地进行测试、构建UI、添加功能并更快地修复错误。在iOS和Android模拟器或真机上可以在亚秒内重载,并且不会丢失状态。 尤其是在UI上使用Flutter的现代、响应式框架,和一系列基础widget,轻松构建您的用户界面。使用功能强大且灵活的API(针对2D、动画、手势、效果等)解决艰难的UI挑战。

2、第二种是Uni-app框架 基于Vue.js。俗称一套代码编到8个平台上。 uni-app是一个使用Vue.js开发所有前端应用的框架,开发者编写一套代码,可发布到iOS、Android、H5、以及各种小程序:微信/支付宝/百度/头条/QQ/钉钉等多个平台。

847ad3d6-45ba-11eb-8b86-12bb97331649.jpg

小结:

第二类开发起来更显效率,节约很多时间成本。当然,如果加上大型APP这个限定条件的话,就不能用单一的某一种编程语言来说了,一般情况下大型APP必然会用到的编程语言有三种:

第一种:平台原生推荐语言,如:Android平台的Java和Kotlin,ios平台的object-c和Swift(swift版本之间的差异比较大,要学习的话还是要注意版本选择)。这部分一般用于处理核心业务、权限请求以及高性能要求页面。

第二种:web语言,这里主要指的是h5相关的技术栈。这部分主要处理非核心业务逻辑,以及需要动态更新的页面。

第三种:NDK相关,这里一般用到的就是C、Cc++。大部分写业务逻辑的同学用的比较少,不过大型APP一般还是会用到一些。主要应用于安全性要求高,高性能算法以及跨平台算法实现。

好了,今天就分享到这里吧,感谢各位耐心阅读!

责任编辑:xj

原文标题:手机上的APP都是用什么编程语言写的?

文章出处:【微信公众号:嵌入式ARM】欢迎添加关注!文章转载请注明出处。

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • APP
    APP
    +关注

    关注

    33

    文章

    1596

    浏览量

    76192
  • 编程
    +关注

    关注

    90

    文章

    3725

    浏览量

    97527

原文标题:手机上的APP都是用什么编程语言写的?

文章出处:【微信号:gh_c472c2199c88,微信公众号:嵌入式微处理器】欢迎添加关注!文章转载请注明出处。

收藏 人收藏
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

    评论

    相关推荐
    热点推荐

    使用Ada语言在Zynq上点亮LED

    当你还在用C语言GPIO、Verilog连LED的时候,有人已经开始一门“冷门但强大”的语言——Ada,在Zynq上点灯了。
    的头像 发表于 05-12 10:33 613次阅读
    使用Ada<b class='flag-5'>语言</b>在Zynq上点亮LED

    请问大家设计蓝牙天线的时候都是什么软件调试阻抗

    大家设计蓝牙天线的时候都是什么软件调试阻抗
    发表于 01-20 07:41

    FPGA 入门必看:Verilog 与 VHDL 编程基础解析!

    很多开发者第一次接触FPGA,都会有同样的疑问:FPGA是硬件,不是软件,怎么程序?答案就是硬件描述语言(HDL),最常用的就是Verilog和VHDL。今天,我们就带你入门,搞清楚FPGA
    的头像 发表于 01-19 09:05 838次阅读
    FPGA 入门必看:Verilog 与 VHDL <b class='flag-5'>编程</b>基础解析!

    单片机C语言编程的心得

    这个8*8按键程序的过程中,不管是在自己还是参考别人程序的过程中,发现自己对C语言有些基本知识点和编程规范有很多不懂的地方,有些是自己以前的编程
    发表于 12-08 07:44

    为什么单片机还在用C语言编程

    说起单片机我们就会想到C语言,单片机为什么还在用C语言编程?现在有很多很好用的高级语言,如VC、PYTHON、PHP等等,为什么这些语言不能
    发表于 11-28 07:37

    C语言编程技巧

    设计,分层开发代码,便于理解和维护。 ‌8、避免使用GOTO语句‌:尽管GOTO语句在某些情况下仍然有用,但现代编程更倾向于使用函数和循环控制结构,以提高代码的可读性和维护性。 ‌9、利用C语言的灵活性
    发表于 11-27 06:46

    69.9元乐鑫科技ESP32-S3 2.8寸串口屏爆改手持彩屏遥控器!手机APP卡顿?不存在的!

    还在用手机APP遥控你的麦克纳姆轮小车?当炫酷的漂移遇上突如其来的微信消息,当精准的操控被卡顿的手机APP打断——这份憋屈,每个遥控车玩家都懂。手机
    的头像 发表于 11-21 18:02 1184次阅读
    69.9元<b class='flag-5'>用</b>乐鑫科技ESP32-S3 2.8寸串口屏爆改手持彩屏遥控器!<b class='flag-5'>手机</b><b class='flag-5'>APP</b>卡顿?不存在的!

    2025年最佳的嵌入式编程语言有哪些

    嵌入式系统是现代科技不可或缺的一部分。它们存在于家用电器、汽车、住宅、医院、商店等各个领域。它们与我们的社会紧密相连。选择合适的语言来构建嵌入式系统对于成功至关重要。那么,2025年最佳的嵌入式编程
    的头像 发表于 11-14 10:27 1902次阅读
    2025年最佳的嵌入式<b class='flag-5'>编程</b><b class='flag-5'>语言</b>有哪些<b class='flag-5'>呢</b>?

    一文了解Mojo编程语言

    Mojo 是一种由 Modular AI 公司开发的编程语言,旨在将 Python 的易用性与 C 语言的高性能相结合,特别适合人工智能(AI)、高性能计算(HPC)和系统级编程场景。
    发表于 11-07 05:59

    C语言入门(硬件嵌入式那种不是APP开发的)

    C语言入门(硬件嵌入式那种不是APP开发的),有没有对初学者很友好的书籍、视频等资料推荐一下,一直以来看了正dian原子、野火等的视频、文档结果从快要入门到放气,然后再从放气到快要入门,一直没有进展,还望指点迷津,感谢
    发表于 09-27 12:03

    大家用的OTA升级打包工具都是什么制作的,能否拿到QBoot的打包器源码拿来开发

    大家用的OTA升级打包工具都是什么制作的,能否拿到QBoot的打包器源码拿来开发
    发表于 09-25 06:16

    HarmonyOSAI编程自然语言代码生成

    安装CodeGenie后,在下方对话框内,输入代码需求描述,将根据描述智能生成代码,生成内容可一键复制或一键插入至编辑区当前光标位置。 提问示例 使用ArkTs语言一段代码,在页面中间部分
    发表于 09-05 16:58

    HarmonyOSAI编程编辑区代码续

    利用AI大模型分析并理解开发者在代码编辑区的上下文信息或自然语言描述信息,智能生成符合上下文的ArkTS或C++代码片段。 使用约束 建议在编辑区内已有较丰富上下文,能够使模型对编程场景有一定
    发表于 08-21 15:43

    FLASH烧/编程白皮书

    白皮书:如何烧Flash——不同场景不同需求下的选择认识Flash NAND vs. NOR如何烧/编程不同方案比较
    发表于 07-28 16:05 0次下载

    梯形图语言补充编程说明书

    电子发烧友网站提供《梯形图语言补充编程说明书.pdf》资料免费下载
    发表于 07-09 14:14 3次下载