Android开发Android开发经验谈Android技术知识

Android开发学习

2019-08-13  本文已影响8人  Androidgiao
什么是Android开发?

Android开发是指Android平台应用上的制作,是一项包括需求捕捉,需求分析,设计,实现和测试的系统工程。Android开发通常采用开发工具进行开发。

Google公司有个传统,就是每年都会举办一次Google I/O 大会,且一般在大会上推出新的Android版本。迄今,Google已经发行了17个版本(包括测试版本),目前最新的版本是Android Oreo(Android 8.0)。
Android开发用到的工具有哪些?
    进行Android开发的工具主要有两种一是Eclipse+ADT+JDK+SDK,一是基于IntelliJ IDEA的Android Studio+SDK+JDK+Genymotion。
    目前,Android Studio是进行安卓开发的主流工具,它与Eclipse相比主要有以下优势:1.比Eclipse漂亮;2.比Eclipse速度快;3.提示,补全更加智能,更加人性化;4.整合了Gradle构建工具;5.支持Google Cloud Platform;6.强大的UI编辑器;7.更完善的插件系统;8.完美的整合版本控制软件;9.Android Studio是Google推出的。

Android开发用到的知识有哪些?
Linux
    Android是基于Linux内核的,编译Android源码也必须在Linux上进行,所以开发者应熟练使用Linux的命令行,能够对Linux系统上的文件进行管理,对Linux进行网络配置、进程管理等。

在Kotlin 语言出现之前,几乎所有的安卓应用程序都是使用Java语言编写的。但在2017年5月Google大会上,Google宣布Kotlin 成为安卓的官方语言后,经过快一年的发展,使用Kotlin 的开发者中5%增长到了15%,并且还在呈现上升趋势。
    无论是Java,还是Kotlin,我们Android开发者至少需要精通一门,当然,当熟练使用一门语言之后,再去更改转向另一门语言的这个过程是十分困难的。
Java与Kotlin的创建类的简单代码示例:
Java
Android开发用到的工具有哪些?
    进行Android开发的工具主要有两种一是Eclipse+ADT+JDK+SDK,一是基于IntelliJ IDEA的Android Studio+SDK+JDK+Genymotion。
    目前,Android Studio是进行安卓开发的主流工具,它与Eclipse相比主要有以下优势:1.比Eclipse漂亮;2.比Eclipse速度快;3.提示,补全更加智能,更加人性化;4.整合了Gradle构建工具;5.支持Google Cloud Platform;6.强大的UI编辑器;7.更完善的插件系统;8.完美的整合版本控制软件;9.Android Studio是Google推出的。

Android开发用到的知识有哪些?
Linux
    Android是基于Linux内核的,编译Android源码也必须在Linux上进行,所以开发者应熟练使用Linux的命令行,能够对Linux系统上的文件进行管理,对Linux进行网络配置、进程管理等。

在Kotlin 语言出现之前,几乎所有的安卓应用程序都是使用Java语言编写的。但在2017年5月Google大会上,Google宣布Kotlin 成为安卓的官方语言后,经过快一年的发展,使用Kotlin 的开发者中5%增长到了15%,并且还在呈现上升趋势。
    无论是Java,还是Kotlin,我们Android开发者至少需要精通一门,当然,当熟练使用一门语言之后,再去更改转向另一门语言的这个过程是十分困难的。
Java与Kotlin的创建类的简单代码示例:
Java

class Person{
        String name;
        int age;
}

Kotlin

class Person{
    var name: String? = ""
    var age: Int = 0
}

Android开发学习路线

Android基础阶段:平台架构特性(JAVA/C) ,Market应用程序组件, 环境搭建与部署、打包与发布, AVD/DDMS/AAPT 调试与测试 ,相关资源访问,资源制作, Activity/Service/Broadcast Receiver/Content Provider/原理(生命周期)及深层实现。

Android进阶初级:组件(Widget),菜单(Menu),布局(Layout), 详解 Xml,解析(Pull/Dom/Sax)/JNI ,解析SQL数据库原理, SQLite /SharedPreferences/File详解 ,多媒体Audio/Video/Camera 详解。

Android进阶高级:蓝牙/WIFI SMS/MMS 应用实现 ,深层次解析GPS原理,实现LocationManager/LocationProvider ,进行定位、跟踪、查找、趋近警告以及Geocoder正逆向编解码等技术细节, 2D图形库(Graphics/View)详解 ,SDCARD/传感器/手势 应用实现。

最后

本人在学习新的东西时,也经常面临一些选择的问题,特别是在想学 Web 服务开发时,经历多年的发展后台服务生态百花齐放:php、java、golang、phython、nodejs 等容易让人在临门一脚时犹豫不决。(毕竟 php 天下第一)

除开业务需求和环境限制,我个人是比较推崇低成本拓展的。万事开头难,“三过门而不入”的坚持并不是每个人都有,而能把现阶段所掌握的去衍生去其他的能力,是比较稳定的技术增值。“贪多嚼不烂”,先有深度,再有宽度,望共勉!
如果你依然在编程的世界里迷茫,不知道自己的未来规划,可以加入高级程序员群:里面可以与大神一起交流并走出迷茫。小白可进群免费领取学习资料,看看前辈们是如何在编程的世界里傲然前行。
1.LiveDataBus
2.Google官方架构组件
3.Jetpack架构
4.饿了么通信技术
5.OPenGL
6.音视频
7.人工智能
8.Python
9.性能优化
10.Flutter等
这些资料加群639986248领取

上一篇下一篇

猜你喜欢

热点阅读