Android企业级架构-仿微信-开篇

这篇文章是什么?
这是一系列关于企业级Android工程架构的文章,笔者准备从零开始架构工程,代码量可能较为庞大,写到哪讲到哪,贯穿能涉及到的知识点和企业级架构需要注意的问题等等。

看后能得到什么?
对于新手来说,我会讲到架构的思想,设计模式的使用,真实工程中遇到的坑和代码编写的质量等,比较适合有一定基础但需要提升的同学;对于高手来说可以随意论剑,笔者是个爱学习的好孩子,期间可能会出现错误,请各位指教。本工程教学,不适用于超级大产品(如二马家的产品),超大型产品期中的复杂度各位也可想而知,但是对于中小型产品,完全可以胜任。

应该怎么学?
笔者是一个思维跳跃较快的人,对重要的知识点会尽量讲明白,但也希望想认真读本文的同学,能够跟着笔者一起做,并且能对每个知识点都有举一反三的能力(这才是真正理解的状态)。总之一句话,跟着笔者认真敲一遍,就应该都明白了。

包括哪些内容?
首先强调一下,本次是仿微信的工程,不可能百分之百还原,但尽量完善现有微信的功能。本工程本着开源的思想与大家共同学习、进步、交流,如有人用于商业用途,笔者也会追究到底。
先来说技术点:
1. 微信最重要的是什么?当然是聊天了,本文将使用MQTT+PROTOBUFFER实现聊天
2. 最基本的网络请求+本地数据库+图片加载
3. 其它小技术点,现在想不到,写到哪说到哪吧。笔者会使用第三方框架,但不会乱用,因为不管使用什么,最终都要回规本质,便于后期维护、扩展和管理
再来说功能点:
主要页面:如欢迎页面、登录/注册页面、主页(消息/通讯录/发现/我)、聊天页、聊天设置页、联系人详情页、朋友圈页、扫码页、摇一摇页、附近的人页、漂流瓶页、个人信息页、相册页、设置页等,这些页面的功能需逐步添加,其它页面如钱包、公众号等后续再定。
功能:普通1v1聊天、文字、图片、语音、位置、表情等,个人信息生成二维码、扫描二维码,朋友圈发布等,其它功能如群聊、动态表情等后续再定。

注意:笔者是认真的写一个真正的企业级Android工程,可不是现在网上那些乱七八糟骗人的东西,有想提升的同学,认认真真跟住笔者学习,写出代码的艺术。

源码地址:GitHub

你可能感兴趣的:(Android企业级架构-仿微信-开篇)