FLYCodeUtils​ 是一个专注于提供高质量、可复用的开发者工具和实用程序的集合。我们致力于为开发者打造高效、可靠的代码工具库,让开发工作更加简洁、优雅。
组织介绍

🍎 IFLYCodeUtils - Objective-C 工具库组织

📋 GitHub组织简介(OC专精版)

IFLYCodeUtils 是一个专注于 Objective-C 开发的工具库组织,致力于为 iOS/macOS 开发者提供高质量、可复用的 OC 工具类和组件,让 Objective-C 开发更加高效、现代化。

📖 详细组织简介

IFLYCodeUtils

🍎 专注 Objective-C 工具生态

IFLYCodeUtils 是一个专注于 Objective-C 语言的开源工具组织。我们为 iOS/macOS 开发者提供企业级的 Objective-C 工具库,帮助你在 Swift 时代依然能够高效、优雅地开发和维护 Objective-C 项目。

✨ 为什么选择 IFLYCodeUtils?

🔧 纯正的 Objective-C 体验

  • 100% Objective-C 实现,无 Swift 依赖
  • 兼容 iOS 8.0+ / macOS 10.10+
  • 支持 CocoaPods、Carthage、SPM

🏗️ 现代化 OC 开发

  • ARC 优化最佳实践
  • Nullability 注解完整
  • 泛型支持完善
  • 模块化设计

📱 生产级别质量

  • 完整的单元测试覆盖
  • 详细的文档和示例
  • 持续集成和版本管理
  • 大厂实战验证

🗂️ 核心仓库结构

基础工具层

@iflycodeutils/core-oc # 核心基础工具
@iflycodeutils/category-kit # 常用Category集合
@iflycodeutils/network-oc # 网络请求封装
@iflycodeutils/storage-oc # 数据存储方案
@iflycodeutils/ui-components # UI组件库

进阶工具层

@iflycodeutils/runtime-tools # Runtime工具集
@iflycodeutils/debug-tools # 调试开发工具
@iflycodeutils/security-kit # 安全加密工具
@iflycodeutils/performance # 性能优化工具

解决方案层

@iflycodeutils/legacy-migrate # 旧项目迁移工具
@iflycodeutils/swift-bridge # Swift混编工具
@iflycodeutils/arch-patterns # 架构模式实现

🚀 快速开始

安装 Core 工具库

ruby
Podfile

pod 'IFLYCore', '~> 1.0.0'

pod 'IFLYCategoryKit', '~> 1.0.0'

基础使用示例

objective-c
// 字符串工具
import <IFLYCore/IFLYStringUtils.h>

NSString *trimmed = [IFLYStringUtils trimAllWhitespace:@" hello "];
BOOL isValid = [IFLYStringUtils isValidEmail:@"test@example.com"];

// 日期工具
import <IFLYCore/IFLYDateUtils.h>

NSString *timestamp = [IFLYDateUtils currentTimestamp];
NSString *prettyDate = [IFLYDateUtils prettyDateFrom:[NSDate date]];

// 网络请求
import <IFLYNetwork/IFLYHTTPManager.h>

[[IFLYHTTPManager shared] GET:@"https://api.example.com/data"
parameters:@{@"page": @1}
success:^(NSDictionary *response) {
// 处理成功
} failure:^(NSError *error) {
// 处理失败
}];

🎯 特色工具展示

1. IFLYRuntimeTools - Runtime 增强工具

objective-c
// 方法交换(安全版)
[IFLYRuntimeUtils swizzleInstanceMethod:[UIViewController class]
originalSel:@selector(viewDidLoad)
swizzledSel:@selector(ifly_viewDidLoad)];

// 属性操作
NSArray *properties = [IFLYRuntimeUtils getAllProperties:[MyClass class]];

// KVO 安全封装
[self ifly_addObserver:self forKeyPath:@"name" options:NSKeyValueObservingOptionNew];

2. IFLYCategoryKit - 常用 Category 集合

objective-c
// UIKit 增强
UIImage *rounded = [image ifly_roundedCornerImageWithRadius:10];
UIColor *color = [UIColor ifly_colorWithHexString:@"#FF6B6B"];

// Foundation 增强
NSArray *safeArray = [array ifly_safeObjectAtIndex:5];
NSDictionary *merged = [dict1 ifly_merge:dict2];

// 链式语法支持
UILabel *label = [UILabel new]
.ifly_text(@"Hello")
.ifly_font([UIFont systemFontOfSize:16])
.ifly_textColor([UIColor blackColor]);

3. IFLYNetworkOC - 现代化网络层

objective-c
// 基于 NSURLSession 的现代封装
IFLYNetworkManager *manager = [IFLYNetworkManager manager];

// 支持 Promise 风格
[manager requestWithURL:@"https://api.example.com/user"
method:IFLYHTTPMethodGET
parameters:nil]
.then(^id(IFLYResponse *response) {
// 成功处理
return response.data;
})
.catch(^(NSError *error) {
// 错误处理
});

// 文件上传
[manager uploadFile:fileData
to:@"https://api.example.com/upload"
progress:^(CGFloat progress) {
NSLog(@"进度: %.2f%%", progress * 100);
}];

📱 完整项目示例

Podfile 配置示例

ruby
platform :ios, '9.0'

target 'MyApp' do

基础工具

pod 'IFLYCore', '> 1.0'
pod 'IFLYCategoryKit', '
> 1.0'

网络层

pod 'IFLYNetworkOC', '~> 2.0'

UI组件

pod 'IFLYUIKit', '~> 1.0'

开发工具(仅Debug)

pod 'IFLYDebugTools', :configurations => ['Debug']
end

AppDelegate 配置示例

objective-c
import "AppDelegate.h"

import <IFLYCore/IFLYCore.h>

import <IFLYNetwork/IFLYNetworkConfig.h>

@implementation AppDelegate

• (BOOL)application:(UIApplication *)application

didFinishLaunchingWithOptions:(NSDictionary *)launchOptions {

// 1. 初始化工具库
[IFLYManager setupWithConfig:^(IFLYConfig *config) {
    config.enableLog = YES;
    config.logLevel = IFLYLogLevelDebug;
    config.enableExceptionHandler = YES;
}];

// 2. 配置网络
[IFLYNetworkConfig sharedConfig].baseURL = @"https://api.example.com";
[IFLYNetworkConfig sharedConfig].timeoutInterval = 30.0;

// 3. 配置缓存
[IFLYCacheManager setupWithMaxMemoryCost:50  1024  1024]; // 50MB

return YES;

}

@end

🏗️ 架构设计理念

模块化设计

┌─────────────────────────────────────┐
│ Your App │
├─────────────────────────────────────┤
│ IFLYUIKit │ IFLYNetwork │
├─────────────────────────────────────┤
│ IFLYCategoryKit │ IFLYStorage │
├─────────────────────────────────────┤
│ IFLYCore Foundation │
└─────────────────────────────────────┘

设计原则

  1. 单一职责 - 每个工具只做一件事
  2. 开闭原则 - 易于扩展,无需修改
  3. 依赖倒置 - 依赖于抽象,不依赖于具体
  4. 接口隔离 - 最小化接口依赖

🔧 开发工具集成

Xcode 代码片段

我们提供丰富的 Xcode Code Snippets:
objective-c
// 快速创建单例
<#className#> *instance = [[self alloc] init];
return instance;

调试工具

objective-c
// 内存泄漏检测
[IFLYLeakDetector startMonitoring];

// 性能监控
[IFLYPerformanceMonitor startTracking:@"ViewController"];

// 日志系统
IFLYLogDebug(@"网络请求开始: %@", url);
IFLYLogInfo(@"用户登录成功: %@", userId);
IFLYLogError(@"网络错误: %@", error);

🤝 贡献指南

代码规范

objective-c
// 1. 使用前缀防止冲突
// 正确:
@interface IFLYStringUtils : NSObject
// 错误:
@interface StringUtils : NSObject

// 2. 完整的nullability注解
@property (nonatomic, copy, readonly, nullable) NSString *title;

// 3. 使用NS_DESIGNATED_INITIALIZER
• (instancetype)initWithName:(NSString *)name NS_DESIGNATED_INITIALIZER;

提交规范

bash
feat: 添加新的字符串加密工具
fix: 修复网络请求内存泄漏问题
docs: 更新README安装说明
test: 增加IFLYDateUtils单元测试
chore: 更新Podspec版本号

📊 项目状态

Objective-C
iOS
macOS
License
CocoaPods

🌍 社区资源

📄 许可证

所有项目均采用 MIT 许可证 - 详见各项目 LICENSE 文件


🍎 为什么还在维护 Objective-C?

在 Swift 成为主流的今天,我们依然坚持维护 Objective-C 工具库,因为:

  1. 存量项目维护 - 大量企业级应用仍在使用 OC
  2. 混合开发支持 - OC/Swift 混编项目需要稳定基础
  3. 性能要求 - 某些场景下 OC 仍有性能优势
  4. 技术传承 - Objective-C 的 Runtime 特性无可替代

🌟 支持我们

如果你在维护 Objective-C 项目,欢迎:

  1. ⭐ Star 我们的项目
  2. 🐛 提交 Issue 和 PR
  3. 📢 分享给你的团队
  4. 💼 商业合作支持

IFLYCodeUtils - 让 Objective-C 开发重回巅峰时代!

🎯 第一个仓库推荐:IFLYCore-OC

IFLYCore-OC

Objective-C 核心工具库,包含字符串、日期、数组、字典等常用工具类。

安装

ruby
pod 'IFLYCore-OC'

功能

  • 🔤 字符串处理工具
  • 📅 日期时间工具
  • 🗂️ 集合操作工具
  • 🔐 加密解密工具
  • 🎯 类型安全操作

💡 组织标语建议

  1. 经典版:IFLYCodeUtils - Objective-C 的最后守护者
  2. 专业版:企业级 Objective-C 工具库
  3. 情怀版:致敬 Objective-C,让经典延续
  4. 实用版:为 OC 项目注入现代开发体验
成就
0
Star
0
Fork
成员(1)
94414 zhangchengcaigit ifly admin 1720093126
iFlyCai

搜索帮助