• 第一章 重构


    libs工具包结构:

    1. activity activity基类封装

    2. net 网络底层封装

    3. cache 数据缓存,图片缓存

    4. ui 自定义控件

    主项目包结构:
    1. activity (activity下面可以按照模块进行划分)

    2. adapter 所有适配器

    3. entity 所有实体类

    4. db sqlite逻辑封装类

    5. engine 业务相关类

    6. ui 自定义控件

    7. utils 公用的方法

    8. interfaces 接口

    9. listener listener接口,以on开头

    使用fastjson注意点:
    1. 加了符号Annotation的实体属性,使用崩溃;

    2. 当有泛型属性,使用崩溃。

    混淆文件添加如下内容解决:
    -keepattributes Signature //避免混淆泛型
    -keepattributes *Annotation* //不混淆注解
     

    实体生成器

     

    类型安全转换函数:

    package com.youngheart.utils;
    
    public class Utils {
        /**
         * 
         * @Title: convertToInt
         * @Description: 对象转化为整数数字类型
         * @param value
         * @param defaultValue
         * @return integer
         * @throws
         */
        public final static int convertToInt(Object value, int defaultValue) {
            if (value == null || "".equals(value.toString().trim())) {
                return defaultValue;
            }
            try {
                return Integer.valueOf(value.toString());
            } catch (Exception e) {
                try {
                    return Double.valueOf(value.toString()).intValue();
                } catch (Exception e1) {
                    return defaultValue;
                }
            }
        }
    }

    作者在github有放出代码:

    https://github.com/icodeu/AppProgrammingSource/blob/master/1.6%20%E7%B1%BB%E5%9E%8B%E5%AE%89%E5%85%A8%E8%BD%AC%E6%8D%A2%E5%87%BD%E6%95%B0/YoungHeart/src/com/youngheart/utils/Utils.java



  • 相关阅读:
    codevs2606 约数和问题
    UOJ150 运输计划
    codevs1279 Guard 的无聊
    codevs1997 守卫者的挑战
    codevs1291 火车线路
    codevs1217 借教室
    codevs1281 Xn数列
    codevs1218 疫情控制
    codevs1199 开车旅行
    BZOJ1941 [Sdoi2010]Hide and Seek
  • 原文地址:https://www.cnblogs.com/androidsuperman/p/5494626.html
Copyright © 2020-2023  润新知