zoukankan      html  css  js  c++  java
  • iOS重构项目之路

    iOS重构项目之路

    1、整理目录

    • 按照功能模块对整个工程的目录进行分类,比如
    • Alt text

    2、整理资源文件

    • 删除多余的图片文件,资源文件
      • 图片资源尽量添加到Assets.xcassets
      • 删除项目中未引用的图片的话,可以全部搜索图片名,只要通过[UIImage imageNamed:@"outline"][UIImage imageWithContentsOfFile:@""]xib中引用的图片都可以搜索到。
      • Alt text
    • 有一点要注意,那就是如果是加载的动图的话,搜索注意一下walk1.png
      walk2.png walk3.png这种的要搜索walk
    • 对所有图片文件进行压缩
      • 通过第三方工具对所有图片进行一次压缩 ,我这里用的工具是 Squash
    • 删除无用的类,或者重复的类
      • 这个也可以全部搜索,如果项目中使用了这个类,肯定可以搜索出来
      • Alt text

    3、分离功能模块

    • 因为有多个项目使用相同的功能,所有使用软连接的方式对功能模块进行引用
    • SVN建立一个目录单独存放分离出来单独功能,多个项目通过软连接的方式都可以引用这个文件夹
    • Alt text
    • 其他工程通过软连接进行引用,通过拖拽方式进行添加,不勾选copy items if needed
    • 模块中用到的一些公共方法要保证项目中都存在

    注意
    勾选copy items if needed 会将源文件copy到项目中
    不勾选copy items if needed 的话只是建立软连接

    4、整理源文件

    • 这里就需要逐个查看源文件了,看过后进行分析整理,这个也是最耗时的,要对整个项目逻辑都理解清楚才能进行抽取或者继承。
      • 该封装的封装,比如说工具类,公共类
      • 该用继承的就用继承,继承大法好啊,可以省去很多代码
      • 通过宏去控制逻辑,比如各种功能开关
    • 最后一步才是终极目标,对整个项目进行分析解耦,让逻辑更加清晰

    5、升级各种框架

    • 项目中的框架很多都是旧的,没有使用Cocoapod进行管理,所以只能一个一个替换,期间尝试替换成Cocoapod,奈何网络不行并且问题颇多,最后不得不放弃使用Cocoapod。其实Cocoapod真的挺好的。

    6、安全分析

    • 通过解压ipa包,发现里面有很多源文件,可以直接看到内容,有些东西用的plist,或者txt文本,这些东西直接包含在ipa包里,非常之不安全,全部改为使用源文件.h.m ,或者直接预制到加密数据库中。

    7、提取URL管理公共类

    • 将所有的URL地址的拼接放到一个单粒类中管理,方便维护。

    目前就这么多了,有不足之处欢迎大家指教啊

  • 相关阅读:
    Javascript自动打开匹配的超链接
    Javascript 广告浮动效果在浏览器中间N秒后移动到右下角
    吾爱破解论坛有漏洞!!所有资源都曝光了...开心吧
    C# Ajax 技术
    花花公子写代码
    C++ Strings(字符串)
    C++语言的I/o使用方法详解
    标准c内存函数的使用方法
    [原]Python 简单文件处理
    [原]Python 简单异常处理
  • 原文地址:https://www.cnblogs.com/songliquan/p/12784498.html
Copyright © 2011-2022 走看看