如何有效的减少重复的代码

重复的代码一直都是可维护性的大敌,重构的重要任务之一也就是要去除掉重复的代码,有效的减少重复代码,可以大大提高软件的扩展性。

在Android开发中,很容易产生重复的代码。因为Android是组件,模板式开发,每个页面都是独立用Activity或Fragment实现,布局文件都是用XML方式去写,所以很容易造成代码的重复,虽然二个页长的差不多,但毕竟是二个Activity,于是就拷一份出来,改吧改吧就成了。

那么我们如何做才能去掉重复的代码呢?

点击阅读全文

时间: 2024-08-02 23:03:25

如何有效的减少重复的代码的相关文章

用泛型减少重复代码,使代码更合理、更优雅

有这样一个场景,需要对接接口,以获取取得数据. 例如获取订单列表 接口请求参数(json格式): 1 { 2 //公共头部 3 "head":{ 4 "method":"getOrders", //接口方法 5 "sign":"xxxx" //签名 6 }, 7 //私有主体 8 "body":{ 9 "userId":"1", //用户ID 10

利用泛型减少重复,实现简易AOP

利用泛型减少重复,实现简易AOP 一.设计原则之DRY,不要重复自己    在所有设计原则中,DRP(Don't Repeat Yourself)是最基础的原则之一.是由 Andy Hunt 和 Dave Thomas 在 The Pragmatic Programmer 中总结出来的, 成为软件开发和设计的最佳实践基础.开发者认识到,通过好的实践和适当的抽象可以减少重复,使程序的代码变得简洁. 重复是一种浪费.程序中的每一行代码都需要维护,重复就会导致出现bug的机会增多,也增加了系统的复杂度

代码坏味道特征重复的代码

重复的代码开发,在作为初级的程序员是经常遇见的,因为被要求做一些很固定且比较简单通用的模块,所以很容易就遇上功能相同的代码进行重复的开发了. 1.为什么会有重复的代码 重复的代码可能会出现编写人员抽象公有模块抽象公有功能的能力,可能来自我们开发方式过于老化固定了类之间的相互应用所以导致编写的某一个功能只适用一个特定的系统使用,可能来自我们的设计人员对项目框架设计考虑不够仔细,没有重用性的设计过程. 2.怎样避免出现重复的代码 使用完善的SOA框架,我认为至少在我们内网程序开发中可以节约一大部分的

jquery防止重复提交代码实例

jquery防止重复提交代码实例:在很多应用中,可能有些数据只能够被允许提交一次,也就是提交之后不能够再提交第二次,下面就是一段能够实现此功能的简单代码,需要的可以参考一下,代码如下: <!DOCTYPE html> <html> <head> <meta charset=" utf-8"> <meta name="author" content="http://www.softwhy.com/&quo

关于技术上的重复与代码复用

项目遇到分布式与高并发的问题,我的疑惑是:那么多公司能应对高并发与分布式,为什么我们处理起来还是这么难? 我的分析: 很多公司指哪些公司:是不是生活中经常用到的:百度,淘宝等大公司?它们的技术水平更高,也经过了摸索. 别的公司做了,不代表做起来很容易.它们遇到的问题不会一一分享出来,代码.部署.运维也没有完全的.详细的开源出来 这应该是一个综合性的技术问题,既需要代码方面,还需要数据库设计.管理以及机器部署 如果要解决这些问题,应该怎么做? 继续分解这些问题,找到难点,系统的搜索.学习: 寻找分

C语言宏定义##连接符和#符的使用(MFC就是靠##自动把消息和消息函数对应起来了,借助宏来减少switch case代码的编写量)

C语言中如何使用宏C(和C++)中的宏(Macro)属于编译器预处理的范畴,属于编译期概念(而非运行期概念).下面对常遇到的宏的使用问题做了简单总结. 关于#和## 在C语言的宏中,#的功能是将其后面的宏参数进行字符串化操作(Stringfication),简单说就是在对它所引用的宏变量 通过替换后在其左右各加上一个双引号.比如下面代码中的宏: #define WARN_IF(EXP) do{ if (EXP) fprintf(stderr, "Warning: " #EXP &quo

在同个类中non-const插入const来减少重复

class A { private: std::string a; public: A(std::string b) :a(b){} const char& operator[](int b)const { std::cout << "const"<<std::endl; return a[b]; } char& operator[](int b) { std::cout << "non-const" <&l

面试题精选:Android埋点,减少对业务代码的如侵!

前言 前几天去参加了一场面试.面试的题目大多很基础,有一道关于埋点的问题,面试官问我如果不用第三方SDK进行埋点,自己埋点的话,如何减少埋点对业务代码的ru侵. 当时没想太多,就说创建一个 BaseView 类,在这个类中进行埋点的操作,然后使需要进行埋点操作的 View 继承这个 Base 类.后来想想,这个方案其实存在很多问题,因为让每个需要埋点的 View 去继承 BaseView 类,说明 View 需要自定义,会耗费很多的时间和精力,对于自带的 Button 等控件的埋点,这种方法又无

两段检验系统生成的identityHashCode是否重复的代码

前言:承接上一篇hashCode和identityHashCode 的关系,下面的两段简单的程序主要是检验一下系统生成的identityHashCode是否存在重复的情况. 1:可以自由控制生成对象的个数,并且不受测试的类是否重写hashCode()方法的影响 import java.util.HashSet; import java.util.Set; public class CheckSystemIdentity { public static void main(String args[