【PC桌面软件的末日,手机移动端App称王】写在windows11支持安卓,macOS支持ios,龙芯支持x86和arm指令翻译
面对这场突如其来的变革,作为软件开发者,应该如何选择自己今后的发展方向?桌面软件开发领域还有前景吗?
起源
自从苹果发布m1处理器,让自家Mac支持IOS移动端app运行之后,彻底打破了移动端app和桌面软件之间的桎梏,移动端app可以流畅的运行在桌面端。
今年,微软又“重磅发布“了windows 11,通过intel提供的指令翻译技术,让windows可以直接运行安卓app。
国产龙芯支持x86和arm指令翻译
如果仅仅如此,博主还不至于那么快决定立场。
看过博主文章的都知道,博主之前写过国产龙芯平台,全面国产化替换才是国内今最重要的消息。
在这国产化之中,又要属国产化cpu最引人入胜,那就是上周龙芯正式发布了3A5000处理器。
龙芯3A5000处理器是首款放弃了mips指令集实现的自主的龙芯架构之外,还支持翻译x86和arm指令,这代表什么?
说明国产龙芯cpu以后既可以运行windows上的桌面软件,也可以运行安卓app。
有人可能会有疑虑,觉得移动端在桌面端运行没有手机流畅,博主可以告诉你:大错特错!!!桌面端运行移动app只会比手机更好更流畅。
为什么会这样呢?
桌面端运行移动端app比手机更流畅
我们知道windows系统运行于x86指令的(以intel和amd为主的平台)的设备上。而windows系统运行安卓app,是基于cpu指令翻译的来实现的。
根据intel提供的数据,intel/amd的cpu翻译arm精简指令的效率在90%左右。虽然有一些指令转换的损耗,但是对于拥有更大功耗更强大的cpu、更强大的GPU显卡和更强的机器整体性能的桌面端来说,这90%的性能损耗,根本不值一提。
如果把app在手机端运行比作骑自行车的速度,那桌面端运行移动端app就是火箭发射的速度,桌面能够提供比旗舰手机更流畅的体验。
桌面端开发还有前景吗
答案是:除了生产力工具以外,其他所有场景都已经完全失去前景了。
两端一统,基本剥夺了桌面端除了”生产力工具“以外的所有应用场景。
包括游戏影音娱乐,两端一统,被秒杀的那一方是桌面端。
为什么会这样呢?
更低的软件开发成本。
作为软件开发商来说,移动端可以运行在桌面端,就不再需要招桌面端开发了,也不用担心不兼容,所以只需要招移动端就可以了,可以有效降低人力成本。
大势所趋
其实移动端替代桌面端已经早已经是大势所趋,早在几年前,移动端app数量就已经几何倍数超过桌面端软件。苹果和微软也只是顺应时代发展的趋势做出的选择。
可以预测到的是,游戏行业会最先迎来洗牌,pc游戏客户端必死无疑。
软件开发者该如何选择?
对于这次的软件行业变革,对于后端来说,其实变化不大,该写接口写接口,搞人工智能去搞人工智能,完全没影响。
影响最大的是前端,收益最大的也是前端,虽然是变革,但也可以说是大前端的一场内卷的结果,结果就是”移动端称王“。
最大受益者可以说是web端和移动端。
当然了,现在的移动端市场,在大部分场景下,H5混合app占据主流。
不排除某些比如音视频和游戏等计算密集型还需要一点原生开发,其他的大部分已经都是H5混合App(比如:微信app,各大电商(jd,taobao、拼夕夕等)都是H5)。
了解了那么多,相信大家心里都已经有点数了。
在文章的最后,给与还没入行的开发者以及正在从事桌面端开发者的一点建议
一些建议
对于桌面端开发者
如果你打算或者正在从事桌面软件开发,请立刻马上执行B计划,自学安卓、ios和web开发都可以,或者转后端,转人工智能。
对于移动端和web端
请牢记,H5不仅是趋势,也是未来。聪明的你会发现,虽然各个厂家各自搞自己的一块,所以诞生了很多跨平台库和跨平台语言,但是不管怎么变,windows、mac、linux、ios、安卓等等等等都支持web网页。
对于小程序
小程序本身只是原生app的H5扩展,而且很多H5工具库,可以将H5发布成app和小程序,所以对于小程序来说,也是app生态开发的一员,未来发展也还不错。
对于后端和其他大数据人工智能行业
请安心,波及不到。
在这风云诡谲的夏天,除了燥热之外,还需要用一颗冷静的心,分析和洞察身边和市场上的每一分动静,博主在这里给出了自己的思考和想法,相信大家已经有了自己的抉择与方向,如果大家有更好的想法和不同的建议的欢迎在评论区参与评论。
如果觉得博主写得还不错,也欢迎不吝”点赞、收藏、关注“一键三连。
【PC桌面软件的末日,手机移动端App称王】写在windows11支持安卓,macOS支持ios,龙芯支持x86和arm指令翻译的更多相关文章
- 16Aspx.com-PHP企业整站源码 景观石材大理石类织梦模板 含手机移动端 完整源码 APP+PC
=============================================== 源码站长资源交易专业网-商业源码下载,VIP源码,程序交易,毕业设计交易,站长交易|- 16aspx.c ...
- vue3系列:vue3.0自定义全局弹层V3Layer|vue3.x pc桌面端弹窗组件
基于Vue3.0开发PC桌面端自定义对话框组件V3Layer. 前两天有分享一个vue3.0移动端弹出层组件,今天分享的是最新开发的vue3.0版pc端弹窗组件. V3Layer 一款使用vue3.0 ...
- 安卓手机移动端Web开发调试之Chrome远程调试(Remote Debugging)
一.让安卓打debug模式的apk包 二.将电脑中的chrome升级到最新版本,在chrome浏览器地址栏中输入chrome://inspect/#devices: 在智能手机还未普及时,移动设备的调 ...
- 手机移动端网站开发流程HTML5
手机移动端网站开发流程HTML5 最近一直在研究移动手机网站的开发,发现做手机网站没有想象中的那么难.为什么会这么说呢?我们试想下:我们连传统的PC网站都会做,难道连一个小小的手机网站难道都搞不定吗? ...
- 手把手教你使用ADB卸载手机内置App软件
[一.前言] 不知道你们有没有那么一段黑暗时期,刚买个手机,手机上内置一堆app,还卸载不掉,然后每天各种广告,手机一共1G的运行内存,那些流氓app还要再占走一些内存,真是让人欲哭无泪啊,后来我就学 ...
- 多服务器 vps 管理方法,十款远程桌面软件测评分析
作为运维工作者,从几年前巨大的工作量到如今有了极大的改善,这些年试用的远程桌面管理软件不在少数. 远程桌面是微软公司为了方便网络管理员管理维护服务器而推出的一项服务.从windows 2000 ser ...
- nw.js桌面软件开发系列 第0.1节 HTML5和桌面软件开发的碰撞
第0.1节 HTML5和桌面软件开发的碰撞 当我们谈论桌面软件开发技术的时候,你会想到什么?如果不对技术本身进行更为深入的探讨,在我的世界里,有这么多技术概念可以被罗列出来(请原谅我本质上是一个Win ...
- H5 JS判断客户端是否是iOS或者Android手机移动端
<script type="text/javascript"> var u = navigator.userAgent; || u.indexOf(; //androi ...
- 06- 移动端APP兼容性测试以及APP兼容性测试手机选择与云测试技术
在开始测试APP之前,应该考虑什么问题?或者如何选择设备?多少部手机测试兼容性最佳? 兼容性测试手机数量:主测手机 1 ,2(根据人员),辅助测试手机:用于兼容性测试.(50-60台最佳,至少5-20 ...
随机推荐
- KVM虚拟化存储管理(4)
一.KVM存储虚拟化介绍 KVM 的存储虚拟化是通过存储池(Storage Pool)和卷(Volume)来管理的. Storage Pool 是宿主机上可以看到的一片存储空间,可以是多种型: Vol ...
- CGI开发-(转自 jemofh159)
随着Internet技术的兴起,在嵌入式设备的管理与交互中,基于Web方式的应用成为目前的主流,这种程序结构也就是大家非常熟悉的B/S结构,即在嵌入式设备上运行一个支持脚本或CGI功能的Web服务器, ...
- spark算子优化
一.在聚合前在map端先预聚合 使用reduceByKey/aggregateByKey代替groupByKey 二.一次处理一个分区的数据,不过要注意一个分区里的数据不要太大,不然会报oom * 使 ...
- 如何正确地使用RecyclerView.ListAdapter
默认是在一个fragment中实现RecyclerView. private inner class CrimeAdapter() : ListAdapter<Crime, CrimeHolde ...
- nignx反向代理web服务器的配置与使用
一.为什么要用nignx反向代理 1.负载均衡 当一台服务器的单位时间内的访问量越大时,服务器压力就越大,大到超过自身承受能力时,服务器就会崩溃.为了避免服务器崩溃,让用户有更好的体验,我们通过负载均 ...
- UnicodeDecodeError:'ascii' codec can't decode byte 0xe5 in position 89: ordinal not in range(128)
环境python2,在出现该错误的python文件,增加: import sys reload(sys) sys.setdefaultencoding('utf8') 重新运行,不再报错
- openresty 学习笔记番外篇:python访问RabbitMQ消息队列
openresty 学习笔记番外篇:python访问RabbitMQ消息队列 python使用pika扩展库操作RabbitMQ的流程梳理. 客户端连接到消息队列服务器,打开一个channel. 客户 ...
- bind,call,apply的区别
function cat(){}cat.prototype={ food:"fish", say: function(){ alert("I love "+th ...
- 激光SLAM与视觉SLAM的特点
激光SLAM与视觉SLAM的特点 目前,SLAM技术被广泛运用于机器人.无人机.无人驾驶.AR.VR等领域,依靠传感器可实现机器的自主定位.建图.路径规划等功能.由于传感器不同,SLAM的实现方式也有 ...
- 怎样训练YOLOv3
怎样训练YOLOv3 Training YOLOv3 : Deep Learning based Custom Object Detector 本文将在一些公开的雪人图片和视频上分享训练过程.有助于训 ...