背景:本人java web方向,一直没有接触过移动端开发,想自己做一个小型的安卓app。
如题,主要想从以下方面了解:
1、开发工具用android studio还是idea?
2、使用h5的话市面上用的主流框架是什么?
3、大概的一个开发步骤是什么?
开发一款Android App的步骤并不复杂,首先需要掌握Android开发的相关技术,包括Activity、Intent、Service、Fragment等,由于Android开发属于客户端开发,所以从技术难度上来说并不大,对于已经有Java Web开发能力的程序员来说,学习Android开发的过程还是比较轻松的。
Android App的开发步骤涉及到交互设计、视觉设计、前端开发、后端开发、测试和部署,在部署之后通常需要到各大应用市场上架,有的应用市场是需要软件著作权证书的,这个往往需要提前申请。随着移动互联网的发展,目前用户对于App的使用体验度有越来越高的要求,这就对App的设计环节提出了更高的要求。
对于程序员来说,开发环境可以采用Eclipse、AndroidStudio和IntelliJ IDEA,这些开发环境都是不错的选择,可以根据自己的操作习惯进行选择,对于Java Web开发人员来说,使用Eclipse可能会更方便一些。在Android开发当中可以采用Cordova框架,这个框架还是比较方便的。
Android开发往往需要前后端同步进行,后端开发需要进行数据结构设计、接口设计、功能实现等操作,通常还需要编写一个管理App的管理端。后端开发完全可以使用Java语言开发,这对于Java Web程序员来说是比较方便的。当后端开发结束之后,就需要把后端服务部署到网络上,目前采用云平台进行后端部署是一个比较常见的选择。
最后,伴随整个开发过程,一定要有细致的测试。
我从事互联网行业多年,目前也在带计算机专业的研究生,主要的研究方向集中在大数据和人工智能领域,我会陆续写一些关于互联网技术方面的文章,感兴趣的朋友可以关注我,相信一定会有所收获。
如果有互联网方面的问题,也可以咨询我,谢谢!
目前编写一款简单的手机应用APP一般用什么编程语言?
您好,我是一个编程小白,想编一款简单的手机APP应用,应该学习什么语言比较好,IOS和Android分别是什么,谢谢啦
编写手机App,用什么语言?
从简单到复杂,可以分三级:
简单方案:HTML5
其实就是把网页封装成App。编程语言就是网页三件套:HTML+CSS+Javascript
有多种工具和框架,如Cordova, uni等等。
这种方式实现“App”最容易,且跨平台,对于iOS和Android做一套就行了。代价是功能弱,性能低,换句话说就是“卡”。
中等方案:原生跨平台框架
这类方案在iOS和Android之上自行实现一套原生框架。通用的Flutter, ReactNative都是流行的原生跨平台框架。适用于游戏的Cocos2D,Corona SDK也可以算在这一级里。
这类方案实现App难度中等,因为跨平台,一次开发,iOS和Android都能运行。功能和性能也是中等,比不上原生App,但比HTML5的又好很多。
复杂方案:原生开发
直接在iOS和Android上各自开发一套原生App。
iOS可以使用Objective C或Swift。
Android可以使用Java或Kotlin。
还是来一个图表吧,虽然简单,却很明了:
开发鸿蒙App需要什么编程语言,什么时候开发工具?
估计鸿蒙应该会以之前华为已经公布的方舟编译器为应用生态的核心,即将所有安卓程序编译为本机代码。所以题主的问题会转变为“方舟编译器支持编译什么语言”?
之前华为公布的方舟编译器提出的主要特色就是不再“一边运行一边翻译”,流畅度可以提升60%,那么可以推断方舟编译器多半是一个将程序源码编译为本机机器代码的这么一个编译器了。那么对于一个编译器来说,主要要讨论的有输入和输出两个方面。
输入猜测:方舟编译器可能支持编译哪些输入代码?
-
方舟编译器至少应该包含一个JAVA编译器,因为目前安卓程序大多还是采用Java进行开发,现有大量的Java遗产代码支撑起了安卓的生态(还包括部分Java生态)。
-
方舟编译器也应该包含一个Dalvik字节码编译器,如此还可以将已经编译好的DEX字节码程序编译为本机代码,既然对Java编译器都已经搞定,搞定字节码编译也并不难。
-
虽然Kotlin已经被宣布成为安卓开发的第一语言,但开发社区转向Kotlin还需要时日,方舟编译器未来应该也要考虑对Kotlin的支持。
-
此外借道Xamarin的C#也能开发安卓程序,但是使用者寥寥,如果方舟编译器也能支持编译Xamarin的.net字节码库,那未来可以把Windows生态也拉入到鸿蒙的阵营。
输出猜测:方舟编译器可以支持输出哪些指令集的编译结果?
-
ARM指令集,这是必须的了,因为华为自己的麒麟芯就是基于ARM8做出来的。所以方舟编译器首先会确保编译出来的程序能够在ARM芯片上运行,并且方舟编译器可能还会支持华为自己的指令扩展包括对麒麟芯内部AI单元的指令。这将是近期策略,毋庸置疑。
-
X86指令集,考虑到美国的打压,微软可能停止向华为提供Windows系统授权,那么华为需要在自己未来的X86 PC上部署自己的操作系统,那么可能也需要从基础上支持X86指令集。再考虑到INTEL,AMD等X86 CPU供应商也可能掣肘。那么还有国内获得了X86授权的国产CPU,他们这两年也逐渐将产品性能赶上来了。到时候华为如果不用Intel和AMD的芯片,还可以用国产CPU,性能问题随着摩尔效应收窄,和国产工艺迎头赶上,加上市场空间的转移,国产CPU会大有所为。所以华为的方舟编译器也要扶持这部分生态。
-
RISC-V指令集:RISC-V是可以与ARM媲美的开源硬件平台,这很可能是未来中国完全摆脱ARM和X86限制的途径之一。因此如果华为要完全解决受制于人的发力很可能会考虑在未来,将成熟的RISC-V指令集加入方舟编译器的支持。
至于开发环境
估计方舟编译器是可以与现有的主流开发环境协同使用的,就像一个插件,将原有的安卓开发工具包替换为方舟编译器工具包即可,或者两者并存。估计Eclipse,Android Studio以及IntelliJ等都可以支持。当然华为要像AliOS那样推出自己的开发环境(AliOS Studio)甚至自己的开发语言 也不是不可以。