【基础01】Android 开发到底是做什么?

本文介绍了Android开发在互联网公司中的角色,包括前端和后端的划分,重点阐述了Android开发的基础技术,如环境配置、编程语言(Java和Kotlin)、网络通信、UI设计、音视频技术以及职业发展建议。同时提供了全面的学习资源链接,帮助Android工程师提升技能和规划职业发展。
摘要由CSDN通过智能技术生成

我们从 Android 开发在互联网公司的定位说起。一个互联网公司的服务可以笼统地拆分成「前端」和「后端」,前端是交给用户使用的部分,比如网站、App、小程序等,主要负责数据的展示和处理用户交互;后端是服务的提供者,主要负责处理各种数据。

上面的「前端」是广义上的前端,可以再拆分成 Web 前端、Android 和 iOS 等,Android 和 iOS 在移动互联网中也被划分为客户端,是最直接跟用户接触的类别。

PS:鸿蒙OS比较特殊,等相关技术和生态成熟一点之后再深入学习也来得及,暂时可以认为鸿蒙OS与Android没区别(反正都兼容)。

上述的 Android 开发是 App 开发,不包含游戏,游戏开发是另一种完全不同的技术了。

二、Android 相关技术

Android 的能力很复杂,不同分类的 App 会偏重不同的技术点,但基本的功能是相似的,基础的部分我们只谈所有 App 都必须用到的技术,实践部分再根据情况展开。

1. 前提:开发环境和编程语言

Android 开发有唯一官方指定 IDE:Android Studio,Android Studio 支持 Windows、Mac 以及 Linux,所以开发机的选择范围非常广泛,但考虑到编译的时间和开发时的体验,至少要保证 8G 内存。

开发语言可以选择 Java 或 Kotlin,比较推荐在两种语言都会的基础上选择 Kotlin,官方虽然说始终支持 Java,但最近有些扩展库已经基于 Kotlin 特性了…

2. 开发工作涉及的技术

(仅做一个概述,用于理解 Android 开发涉及的知识面,不是完整的总结)

首先是基于前后端的结构,网络是 Android 应用很重要的一部分,Android 开发需要做的是构建请求、处理数据和网络错误、监控网络状态等工作,涉及 Http、Socket 等技术。

跟用户交互是 Android App 的核心,通过代码实现 UI 效果是 Android 开发中占比最大的一部分。Android 的 UI 绘制是由单独一个线程负责的,为了保证流畅交互,所有耗时操作都必须在其他线程完成,所以线程间通信也是 Android 开发不可避免的问题。

再就是近几年需求比较多的音视频和直播相关技术,虽然广大用户(包括我)普遍觉得所有 App 都带着视频和直播是一种打扰和越界,但这也意味着作为开发者不管去哪工作都离不开这些了。

其实还有很多技术无法一一介绍,也有很多我并不了解的技术存在。某著名产品制作人曾经说过,手机是人身体的延伸。只要是 Android 设备(手机、电视、车载等)上存在的功能,就需要相应的开发者将其实现。

三、Hello Android

做一个 Android 工程的 Hello World 项目肯定不能只输出一个字符串,我们再加一点交互的东西,比如…一个可以交互的 Hello World。

先看效果:

首先是创建一个新工程,我们选择最新版的 Android Studio:Arctic Fox,创建一个仅有 Empty Activity 的工程,等待初始化。

完成之后默认打开的就是随工程模板新建的 Empty Activity,默认叫做 MainActivity,「Activity」对应 Android App 的一个页面,是 Android App 的基本构成组件,也是需要我们开发的主要内容。

接下来是一部分细致的操作步骤,有经验的朋友们可以跳过。

简述实现步骤

======

自我介绍一下,小编13年上海交大毕业,曾经在小公司待过,也去过华为、OPPO等大厂,18年进入阿里一直到现在。

深知大多数初中级Android工程师,想要提升技能,往往是自己摸索成长或者是报班学习,但对于培训机构动则近万的学费,着实压力不小。自己不成体系的自学效果低效又漫长,而且极易碰到天花板技术停滞不前!

因此收集整理了一份《2024年Android移动开发全套学习资料》,初衷也很简单,就是希望能够帮助到想自学提升又不知道该从何学起的朋友,同时减轻大家的负担。

img

img

img

img

既有适合小白学习的零基础资料,也有适合3年以上经验的小伙伴深入学习提升的进阶课程,基本涵盖了95%以上Android开发知识点,真正体系化!

由于文件比较大,这里只是将部分目录截图出来,每个节点里面都包含大厂面经、学习笔记、源码讲义、实战项目、讲解视频,并且会持续更新!

如果你觉得这些内容对你有帮助,可以扫码获取!!(备注:Android)

分享读者

作者2013年java转到Android开发,在小厂待过,也去过华为,OPPO等大厂待过,18年四月份进了阿里一直到现在。

被人面试过,也面试过很多人。深知大多数初中级Android工程师,想要提升技能,往往是自己摸索成长,不成体系的学习效果低效漫长,而且极易碰到天花板技术停滞不前!

我们整理了一份阿里P7级别的Android架构师全套学习资料,特别适合有3-5年以上经验的小伙伴深入学习提升。

主要包括腾讯,以及字节跳动,阿里,华为,小米,等一线互联网公司主流架构技术。

腾讯T3架构师学习专题资料

如果你觉得自己学习效率低,缺乏正确的指导,可以一起学习交流!

我们致力打造一个平等,高质量的Android交流圈子,不一定能短期就让每个人的技术突飞猛进,但从长远来说,眼光,格局,长远发展的方向才是最重要的。

35岁中年危机大多是因为被短期的利益牵着走,过早压榨掉了价值,如果能一开始就树立一个正确的长远的职业规划。35岁后的你只会比周围的人更值钱。

《Android学习笔记总结+移动架构视频+大厂面试真题+项目实战源码》,点击传送门即可获取!

掉了价值,如果能一开始就树立一个正确的长远的职业规划。35岁后的你只会比周围的人更值钱。

《Android学习笔记总结+移动架构视频+大厂面试真题+项目实战源码》,点击传送门即可获取!
  • 17
    点赞
  • 19
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
开发 Android Framework 需要掌握以下基础: 1. Java 编程语言:Android 应用程序是使用 Java 编程语言编写的,因此需要具备扎实的 Java 编程基础。 2. Android 应用程序开发:熟悉 Android 应用程序开发,了解 Android 应用程序的架构、组件和生命周期等。 3. Android 系统原理:了解 Android 系统原理,包括进程、线程、内存管理、文件系统、网络连接等。 4. Linux 操作系统:Android 系统基于 Linux 内核,因此需要了解 Linux 操作系统的基础知识。 5. C/C++ 编程语言:Android Framework 是使用 C/C++ 编写的,因此需要对 C/C++ 编程语言有一定的掌握。 需要学习的内容包括: 1. Android Framework 的架构和组件:了解 Android Framework 的架构和各个组件的作用,掌握 Android Framework 的整体结构。 2. Android 应用程序开发:熟悉 Android 应用程序开发,包括 Activity、Service、BroadcastReceiver、ContentProvider 等组件的使用。 3. Android 系统原理:了解 Android 系统的运行机制和相关原理,包括进程、线程、内存管理、文件系统、网络连接等。 4. Linux 操作系统:了解 Linux 操作系统的基础知识,包括 Linux 文件系统、进程管理、内存管理等。 5. C/C++ 编程语言:掌握 C/C++ 编程语言的基础知识,包括指针、数据结构、内存管理等。 此外,还需要了解 Android Framework 的开发工具和相关技术,例如 Android Studio、Gradle、NDK 等。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值