iOS.Objective-C.Dependency.Graphing-v0.1

当Project越来越复杂,模块间的依赖就会很复杂,不合理的依赖就出现:不必要的依赖,双向依赖等等。

在iOS Application Project中可以将依赖定义为:对某个头文件的import。

例如:

 1 /**
 2  *  DSUser.m
 3  */
 4
 5 #import "DSUser.h"
 6 #import "DSUserAddress.h"
 7
 8 .....
 9
10 @end

那么我们可以说 DSUser 依赖 DSUserAddress。


Reference

1. Tool: Objective-C Dependency Graphing Script For Easily Improving Program Design

https://maniacdev.com/2011/12/tool-objective-c-dependency-graphing-script-for-easily-improving-program-design

2. Open Source Tool For Automatically Graphing Objective-C Class/Instance Details

https://maniacdev.com/2013/01/open-source-tool-for-automatically-graphing-objective-c-classinstance-details

3. ObjCViz

https://github.com/vitonzhang/ObjCViz

http://people.no-distance.net/ol/software/objcviz/  (AAAA+)

4. objc_dep

https://github.com/vitonzhang/objc_dep (已读)

时间: 2024-08-01 22:47:09

iOS.Objective-C.Dependency.Graphing-v0.1的相关文章

iOS Objective -C Runtime 运行时之一: 类与对象

// --------------------------------------------------- 参考:南峰子的技术博客 http://southpeak.github.io //---------------------------------------------------- OC语言是一门动态语言,它将很多静态语言在编译和链接时期做的事放到了运行时来处理.这种动态语言的优势在于:我们编写代码时更具灵活性,如我们可以把消息转发给我们想要的对象,或者随意交换一个方法的实现等.

高性能图文混排框架,构架顺滑的iOS应用-b

About GallopGallop是一个功能强大.性能优秀的图文混排框架. Features主要用于解决以下需求: 滚动列表的性能优化.Gallop使用异步绘制.视图层级合并.观察mainRunloop.对布局模型预先缓存等方法,能在实现复杂的图文混排界面时,仍然保持一个相当优秀的滚动性能(FPS基本保持在60). 项目内有使用Gallop构建的微信朋友圈Demo 实现图文混排界面,比如在文本中添加表情,对文字添加点击链接.Gallop还提供了方便的方法可以直接完成表情.URL链接.@用户.#

iOS开发之Objective-c的AES128加密和解密算法的实现

1 #import <Foundation/Foundation.h> 2 3 #import <CommonCrypto/CommonDigest.h> 4 5 #import <CommonCrypto/CommonCryptor.h> 6 7 #import "NSData+AES.h" 8 9 @interface NSString (AES) 10 11 //加密字符串 12 13 - (NSString*)aes128Encrypt:(N

iOS开发周报:新一代 iPhone 可能取消耳机插口,Facebook 发布 tvOS SDK

新一代 iPhone 可能为进一步降低机身厚度而取消耳机插口,改用 Lightning 接口.iPhone 6c 传言,2016 年可能迎来两次 iPhone 发布会. 新闻 新一代 iPhone 可能取消耳机插口,改用 Lightning 接口:虽然距离下一代 iPhone 发售还遥遥无期,但是最近已经有关于这款 “iPhone 7” 的一些传言了.据称新一代 iPhone 为了进一步降低机身厚度,将淘汰掉现在事实的耳机行业标准的 3.5mm 耳机几口.耳机接口成为机身厚度的瓶颈已经有一段时间

https://github.com/coolnameismy/BabyBluetooth github上的一个ios 蓝牙4.0的库并带文档和教程

The easiest way to use Bluetooth (BLE )in ios,even bady can use. 简单易用的蓝牙库,基于CoreBluetooth的封装,并兼容ios和mac osx. 为什么使用它? 1:基于原生CoreBluetooth框架封装的轻量级的开源库,可以帮你更简单地使用CoreBluetooth API. 2:CoreBluetooth所有方法都是通过委托完成,代码冗余且顺序凌乱.BabyBluetooth使用block方法,可以重新按照功能和顺序

github上所有大于800 star OC框架

https://github.com/XCGit/awesome-objc-frameworks#awesome-objc-frameworks awesome-objc-frameworks ID Framework Images 1 AFNetworking/AFNetworking 19,058 A delightful iOS and OS X networking framework 2 rs/SDWebImage 10,139 Asynchronous image downloade

【基础知识】列一下一个.Net WEB程序员需要掌握的知识

基础部分 C# 基础语法 OOP的概念,面向对象的理解 继承 封装 多态 ASP.NET MVC (Web Form 用的越来越少,如果你不熟悉,可以不看) JavaScript 基础语法 如何在HTML里使用JavaScript 常用Dom 操作 SQL Server 常用T-SQL 增删改查 SQL Managment studio 常用操作 jQuery 常用API HTML HTML 所有标签的语义,什么时候用什么标签 CSS 常用CSS的知识,如何在HTML使用 常用的布局 Boots

React-Native基础教程

React-Native牛刀小试仿京东砍啊砍砍到你手软 React-Native基础教程 *React-Native基础篇作者git *React-Native官方文档 *Demo 几个月前facebook推出了React Native框架,允许开发着使用javascript代码来实现iOS原生的应用,随后十月份安卓版的也相继问世,从此我们可以优雅的Learn once, write anywhere… 早在几年前开发者就开始使用javascript+html和PhoneGap来编写各式各样的a

需要注意学习.net过程的要点

基础部分 C# 基础语法 OOP的概念,面向对象的理解 继承 封装 多态 ASP.NET MVC (Web Form 用的越来越少,如果你不熟悉,可以不看) JavaScript 基础语法 如何在HTML里使用JavaScript 常用Dom 操作 SQL Server 常用T-SQL 增删改查 SQL Managment studio 常用操作 jQuery 常用API HTML HTML 所有标签的语义,什么时候用什么标签 CSS 常用CSS的知识,如何在HTML使用 常用的布局 Boots