我的Android进阶之旅------>真正在公司看几天代码的感触

简介:    仅以此文来回顾这一周我的工作情况,以及由此而触发的感想。 =============================================================    来到新公司5天了,这5天就看了一个关于视频播放的应用,感触颇多。

  

仅以此文来回顾这一周我的工作情况,以及由此而触发的感想。

=============================================================

   来到新公司5天了,这5天就看了一个关于视频播放的应用,感触颇多。

  • 原本以为一个播放视频的应用应该架构不是很大,读了公司的代码后才发现自己之前确实没有写过如此大的架构的应用,自己之前学习的android都是皮毛,几乎可以说毫无架构的概念可言。自己以后得真正的学习好架构知识,得有个大局观才行。
  • 公司的代码都没有一行注释,对于一个重新接触一个架构如此大的应用新手来说,确实有点吃不消。因此得在以后的工作中将注释工作做的好一点,因为维护的成本大于开发的成本。
  • 意识到了面向接口的好处,因为整个应用都是面向接口编程的。自己之前写的都是小程序,完全看不到面向接口编程真正的好处,这次接触到大应用后才发现面向接口的好处。个人感觉接口是一个公司的巨大资源
  • 意识到自己编写代码的封装性不是很好,看到公司代码的封装后感慨自己代码的级别真低。得真正学习如何编写好的Java代码,可以参考:http://blog.csdn.net/gaozhlzh/article/details/6358744
  • 掌握了真正如何去读一份不是自己编写的代码。因为代码众多,如何学习阅读别人的代码是很重要的。这里转载一下网上看的读代码的方法:http://www.cnblogs.com/west-link/archive/2011/06/07/2074466.html
  • 要想快速并高效地阅读源码,一定要有好方法,不然看着会挺费劲,当然,用什么方法取决于具体的情况。我就把自己总结的方法给大家show一下,互相交流交流:1、一边阅读代码一边写注释。这是我用过的最好的方法,对代码理解得更深入,看一些重要代码或者特别难懂的代码时挺有用。更何况,注释也是一种文档嘛。2、一边阅读代码一边绘制UML。这个方法适用于类之间的关系较复杂和调用层次较深的情况,我一般都是先绘制顺序图,然后为顺序图中的类绘制关系图。3、通过Debug来跟踪程序的主要执行过程,这样就可以分清主次了,阅读的时候更有针对性。4、类的快速阅读。先弄清楚它在继承链中的位置,看看它的内部状态,也就是成员变量,一般来说,类的对外接口都是对成员变量的访问、加工、代理等,然后看看它的对外接口,也就是公有成员函数,识别核心的一个或多个函数,这时候你应该可以大概了解这个类的职责或作用了。可能这个类是某个设计模式中的一个组成部分,所以,设计模式的掌握对代码的快速阅读也是很有帮助的。5、带着问题去阅读。比如想了解android中的消息机制,那么看看Looper、Handler、MessegeQueue这几个类就可以了,其他的不要去看,要不然就跑题了。 下面列几个阅读源码时所处的情景,在特定场景下用哪些方法:
         不太熟悉业务逻辑,还不是很清楚它是干啥的,可以用3、5。
         代码量很大,有几十万行,甚至百万行,可以用2、3、5。
         你无法看见程序的运行过程,比如没有用户界面,也有可能是无法运行的,可以用3、5。
         设计复杂,用了大量的设计模式,调用链很深,可以用1、2、3、4、5。
         时间有限,没有那么多时间让你看源码,可以用3、5。

====================================================================================

  作者:欧阳鹏  欢迎转载,与人分享是进步的源泉!

  转载请保留原文地址http://blog.csdn.net/ouyang_peng

===================================================================================


 

相关文章
|
3月前
|
安全 Java 网络安全
Android远程连接和登录FTPS服务代码(commons.net库)
Android远程连接和登录FTPS服务代码(commons.net库)
38 1
|
3月前
|
Android开发 Swift iOS开发
探索安卓与iOS开发的差异:从代码到用户体验
【10月更文挑战第5天】在移动应用开发的广阔天地中,安卓和iOS两大平台各占半壁江山。它们在技术架构、开发环境及用户体验上有着根本的不同。本文通过比较这两种平台的开发过程,揭示背后的设计理念和技术选择如何影响最终产品。我们将深入探讨各自平台的代码示例,理解开发者面临的挑战,以及这些差异如何塑造用户的日常体验。
|
4月前
|
存储 Java Android开发
🔥Android开发大神揭秘:从菜鸟到高手,你的代码为何总是慢人一步?💻
在Android开发中,每位开发者都渴望应用响应迅速、体验流畅。然而,代码执行缓慢却是常见问题。本文将跟随一位大神的脚步,剖析三大典型案例:主线程阻塞导致卡顿、内存泄漏引发性能下降及不合理布局引起的渲染问题,并提供优化方案。通过学习这些技巧,你将能够显著提升应用性能,从新手蜕变为高手。
41 2
|
5月前
|
JSON JavaScript 前端开发
Android调用Vue中的JavaScript代码
Android调用Vue中的JavaScript代码
79 3
|
5月前
|
安全 Java 网络安全
Android远程连接和登录FTPS服务代码(commons.net库)
很多文章都介绍了FTPClient如何连接ftp服务器,但却很少有人说如何连接一台开了SSL认证的ftp服务器,现在代码来了。
122 2
|
6月前
|
存储 Java Android开发
🔥Android开发大神揭秘:从菜鸟到高手,你的代码为何总是慢人一步?💻
【7月更文挑战第28天】在Android开发中,每位开发者都追求极致的用户体验。然而,“代码执行慢”的问题时常困扰着开发者。通过案例分析,我们可探索从新手到高手的成长路径。
48 3
|
5月前
|
Java Android开发
Android项目架构设计问题之要提升代码的可读性和管理性如何解决
Android项目架构设计问题之要提升代码的可读性和管理性如何解决
48 0
|
6月前
|
API Android开发
Android 监听Notification 被清除实例代码
Android 监听Notification 被清除实例代码
|
7月前
|
JavaScript 前端开发 Android开发
kotlin安卓在Jetpack Compose 框架下使用webview , 网页中的JavaScript代码如何与native交互
在Jetpack Compose中使用Kotlin创建Webview组件,设置JavaScript交互:`@Composable`函数`ComposableWebView`加载网页并启用JavaScript。通过`addJavascriptInterface`添加`WebAppInterface`类,允许JavaScript调用Android方法如播放音频。当页面加载完成时,执行`onWebViewReady`回调。
|
8月前
|
移动开发 监控 Android开发
构建高效Android应用:从内存优化到电池寿命代码之美:从功能实现到艺术创作
【5月更文挑战第28天】 在移动开发领域,特别是针对Android系统,性能优化始终是关键议题之一。本文深入探讨了如何通过细致的内存管理和电池使用策略,提升Android应用的运行效率和用户体验。文章不仅涵盖了现代Android设备上常见的内存泄漏问题,还提出了有效的解决方案,包括代码级优化和使用工具进行诊断。同时,文中也详细阐述了如何通过减少不必要的后台服务、合理管理设备唤醒锁以及优化网络调用等手段延长应用的电池续航时间。这些方法和技术旨在帮助开发者构建更加健壮、高效的Android应用程序。
下一篇
开通oss服务