百度360必应搜狗淘宝本站头条
当前位置:网站首页 > 编程字典 > 正文

高薪安卓开发工程师必备技能——框架,看看你都掌握了哪些

toyiye 2024-06-21 12:17 7 浏览 0 评论

最近很多行业人士都反应Android的就业越来越不容乐观,实际上并非如此,只是看你掌握的知识层面是否能够跟随社会的进步而已。

很多Android开发人员找不见工作,当然更别说找到高薪的满意工作了,就是由于你所知道的那点开发只是基础中的基础,或者是几年工作经验下来还是码农,遇到点儿问题只会度娘不会自己摸索解决。Android经过九年的发展,现在已经相当成熟了,其占据的市场份额就知道其地位如何,除了Android手机和平板,越来越多的智能设备开始搭载Android系统,涉及到的可不仅仅只是一些简单的app开发了。就算给你一个岗位,你是否都胜任其对应的开发工作任务呢?

今天就来分享一些Android开发的框架技术吧,当然有很多人说很多都接触过啊,但是你懂其中的原理么?一般高薪的Android资深或高级工程师,基本都能很好的掌握这些框架技术。闲话不多说,开始干货分享,附带框架源码链接,可以直接拿去研究和使用。


1. 缓存

  • DiskLruCache

Java实现基于LRU的磁盘缓存

https://github.com/JakeWharton/DiskLruCache

2.图片加载

  • Android Universal Image Loader

一个强大的加载,缓存,展示图片的库

https://github.com/nostra13/Android-Universal-Image-Loader

  • Picasso

一个强大的图片下载与缓存的库

https://github.com/square/picasso

  • Fresco

一个用于管理图像和他们使用的内存的库

https://github.com/facebook/fresco

  • Glide

一个图片加载和缓存的库

https://github.com/bumptech/glide

3. 图片处理

  • Picasso-transformations

一个为Picasso提供多种图片变换的库

https://github.com/wasabeef/picasso-transformations

  • Glide-transformations

一个为Glide提供多种图片变换的库

https://github.com/wasabeef/glide-transformations

  • Android-gpuimage

基于OpenGL的Android过滤器

https://github.com/CyberAgent/android-gpuimage

4. 网络请求

  • Android Async HTTP

Android异步HTTP库

https://github.com/loopj/android-async-http

  • AndroidAsync

异步Socket,HTTP(客户端+服务器),WebSocket,和socket.io库。基于NIO而不是线程

https://github.com/koush/AndroidAsync

  • OkHttp

一个Http与Http/2的客户端

https://github.com/square/okhttp

  • Retrofit

类型安全的Http客户端

https://github.com/square/retrofit

  • Volley

Google推出的Android异步网络请求框架和图片加载框架

https://android.googlesource.com/platform/frameworks/volley

5. 网络解析

  • Gson

一个Java序列化/反序列化库,可以将JSON和java对象互相转换

https://github.com/google/gson

  • Jackson

Jackson可以轻松地将Java对象转换成json对象和xml文档,同样也可以将json、xml转换成Java对象

https://github.com/codehaus/jackson

  • Fastjson

Java上一个快速的JSON解析器/生成器

https://github.com/alibaba/fastjson

  • HtmlPaser

一种用来解析单个独立html或嵌套html的方式

https://sourceforge.net/projects/htmlparser

  • Jsoup

一个以最好的DOM,CSS和jQuery解析html的库

https://github.com/jhy/jsoup

6. 数据库

  • OrmLite

JDBC和Android的轻量级ORM java包

https://sourceforge.net/projects/ormlite/files/releases/com/j256/ormlite

  • Sugar

用超级简单的方法处理Android数据库

https://github.com/satyan/sugar

  • GreenDAO

一种轻快地将对象映射到SQLite数据库的ORM解决方案

https://github.com/greenrobot/greenDAO

  • ActiveAndroid

以活动记录方式为Android SQLite提供持久化

https://github.com/pardom/ActiveAndroid

  • SQLBrite

SQLiteOpenHelper 和ContentResolver的轻量级包装

https://github.com/square/sqlbrite

  • Realm

移动数据库:一个SQLite和ORM的替换品

https://github.com/jhy/jsoup

7. 依赖注入

  • ButterKnife

将Android视图和回调方法绑定到字段和方法上

https://github.com/JakeWharton/butterknife

  • Dagger2

一个Android和java快速依赖注射器

https://github.com/google/dagger

  • AndroidAnotations

快速安卓开发。易于维护

https://github.com/androidannotations/androidannotations

  • RoboGuice

Android平台的Google Guice

https://github.com/roboguice/roboguice

8. 图表

  • WilliamChart

创建图表的Android库

https://github.com/diogobernardino/WilliamChart

  • HelloCharts

兼容到API8的Android图表库

https://github.com/lecho/hellocharts-android

  • MPAndroidChart

一个强大的Android图表视图/图形库

https://github.com/PhilJay/MPAndroidChart

9. 后台处理

  • Tape

一个轻快的,事务性的,基于文件的FIFO的库

https://github.com/square/tape

  • Android Priority Job Queue

一个专门为Android轻松调度任务的工作队列

https://github.com/yigit/android-priority-jobqueue

10. 事件总线

  • EventBus

安卓优化的事件总线,简化了活动、片段、线程、服务等的通信

https://github.com/greenrobot/EventBus

  • Otto

一个基于Guava的增强的事件总线

https://github.com/square/otto

11. 响应式编程

  • RxJava

JVM上的响应式扩展

https://github.com/ReactiveX/RxJava

  • RxJavaJoins

为RxJava提供Joins操作

https://github.com/ReactiveX/RxJavaJoins

  • RxAndroid

Android上的响应式扩展,在RxJava基础上添加了Android线程调度

https://github.com/ReactiveX/RxAndroid

  • RxBinding

提供用RxJava绑定Android UI的API

https://github.com/JakeWharton/RxBinding

  • Agera

Android上的响应式编程

https://github.com/google/agera

12. Log框架

  • Logger

简单,漂亮,强大的Android日志工具

https://github.com/orhanobut/logger

  • Hugo

在调试版本上注解的触发方法进行日志记录

https://github.com/JakeWharton/hugo

  • Timber

一个小的,可扩展的日志工具

https://github.com/JakeWharton/timber

13. 测试框架

  • Mockito

Java编写的Mocking单元测试框架

https://github.com/mockito/mockito

  • Robotium

Android UI 测试

https://github.com/RobotiumTech/robotium

  • Robolectric

Android单元测试框架

https://github.com/robolectric/robolectric

另外Android还自带很多测试工具,如JUnit,Monkeyrunner,UiAutomator,Espresso等。

14. 调试框架

  • Stetho

调试Android应用的桥梁,使得可以利用Chrome开发者工具进行调试

https://github.com/facebook/stetho

15. 性能优化

  • LeakCanary

内存泄漏检测工具

https://github.com/square/leakcanary

  • ACRAAndroid

应用程序崩溃报告

https://github.com/ACRA/acra


今天就先分享到这里,后续将推出更多精彩内容,欢迎一起探讨学习进步。

此文章为分享达人就是我——鑫鱻著作,若转载请备注出处,特此声明!

相关推荐

为何越来越多的编程语言使用JSON(为什么编程)

JSON是JavascriptObjectNotation的缩写,意思是Javascript对象表示法,是一种易于人类阅读和对编程友好的文本数据传递方法,是JavaScript语言规范定义的一个子...

何时在数据库中使用 JSON(数据库用json格式存储)

在本文中,您将了解何时应考虑将JSON数据类型添加到表中以及何时应避免使用它们。每天?分享?最新?软件?开发?,Devops,敏捷?,测试?以及?项目?管理?最新?,最热门?的?文章?,每天?花?...

MySQL 从零开始:05 数据类型(mysql数据类型有哪些,并举例)

前面的讲解中已经接触到了表的创建,表的创建是对字段的声明,比如:上述语句声明了字段的名称、类型、所占空间、默认值和是否可以为空等信息。其中的int、varchar、char和decimal都...

JSON对象花样进阶(json格式对象)

一、引言在现代Web开发中,JSON(JavaScriptObjectNotation)已经成为数据交换的标准格式。无论是从前端向后端发送数据,还是从后端接收数据,JSON都是不可或缺的一部分。...

深入理解 JSON 和 Form-data(json和formdata提交区别)

在讨论现代网络开发与API设计的语境下,理解客户端和服务器间如何有效且可靠地交换数据变得尤为关键。这里,特别值得关注的是两种主流数据格式:...

JSON 语法(json 语法 priority)

JSON语法是JavaScript语法的子集。JSON语法规则JSON语法是JavaScript对象表示法语法的子集。数据在名称/值对中数据由逗号分隔花括号保存对象方括号保存数组JS...

JSON语法详解(json的语法规则)

JSON语法规则JSON语法是JavaScript对象表示法语法的子集。数据在名称/值对中数据由逗号分隔大括号保存对象中括号保存数组注意:json的key是字符串,且必须是双引号,不能是单引号...

MySQL JSON数据类型操作(mysql的json)

概述mysql自5.7.8版本开始,就支持了json结构的数据存储和查询,这表明了mysql也在不断的学习和增加nosql数据库的有点。但mysql毕竟是关系型数据库,在处理json这种非结构化的数据...

JSON的数据模式(json数据格式示例)

像XML模式一样,JSON数据格式也有Schema,这是一个基于JSON格式的规范。JSON模式也以JSON格式编写。它用于验证JSON数据。JSON模式示例以下代码显示了基本的JSON模式。{"...

前端学习——JSON格式详解(后端json格式)

JSON(JavaScriptObjectNotation)是一种轻量级的数据交换格式。易于人阅读和编写。同时也易于机器解析和生成。它基于JavaScriptProgrammingLa...

什么是 JSON:详解 JSON 及其优势(什么叫json)

现在程序员还有谁不知道JSON吗?无论对于前端还是后端,JSON都是一种常见的数据格式。那么JSON到底是什么呢?JSON的定义...

PostgreSQL JSON 类型:处理结构化数据

PostgreSQL提供JSON类型,以存储结构化数据。JSON是一种开放的数据格式,可用于存储各种类型的值。什么是JSON类型?JSON类型表示JSON(JavaScriptO...

JavaScript:JSON、三种包装类(javascript 包)

JOSN:我们希望可以将一个对象在不同的语言中进行传递,以达到通信的目的,最佳方式就是将一个对象转换为字符串的形式JSON(JavaScriptObjectNotation)-JS的对象表示法...

Python数据分析 只要1分钟 教你玩转JSON 全程干货

Json简介:Json,全名JavaScriptObjectNotation,JSON(JavaScriptObjectNotation(记号、标记))是一种轻量级的数据交换格式。它基于J...

比较一下JSON与XML两种数据格式?(json和xml哪个好)

JSON(JavaScriptObjectNotation)和XML(eXtensibleMarkupLanguage)是在日常开发中比较常用的两种数据格式,它们主要的作用就是用来进行数据的传...

取消回复欢迎 发表评论:

请填写验证码