Giter Site home page Giter Site logo

lleihai123's Projects

xwtransition icon xwtransition

几句代码快速集成自定义转场效果+ 全手势驱动

xypiechart icon xypiechart

A simple and animated Pie Chart for your iOS app.

yycache icon yycache

YYCache 设计思路与技术细节(使用了OSSpinLock,但他已经不在安全了)所以此库值得。谨慎使用

yymodel icon yymodel

附: YYModel 性能优化的几个 Tip: 1. 缓存 Model JSON 转换过程中需要很多类的元数据,如果数据足够小,则全部缓存到内存中。 2. 查表 当遇到多项选择的条件时,要尽量使用查表法实现,比如 switch/case,C Array,如果查表条件是对象,则可以用 NSDictionary 来实现。 3. 避免 KVC Key-Value Coding 使用起来非常方便,但性能上要差于直接调用 Getter/Setter,所以如果能避免 KVC 而用 Getter/Setter 代替,性能会有较大提升。 4. 避免 Getter/Setter 调用 如果能直接访问 ivar,则尽量使用 ivar 而不要使用 Getter/Setter 这样也能节省一部分开销。 5. 避免多余的内存管理方法 在 ARC 条件下,默认声明的对象是 __strong 类型的,赋值时有可能会产生 retain/release 调用,如果一个变量在其生命周期内不会被释放,则使用 __unsafe_unretained 会节省很大的开销。 访问具有 __weak 属性的变量时,实际上会调用 objc_loadWeak() 和 objc_storeWeak() 来完成,这也会带来很大的开销,所以要避免使用 __weak 属性。 创建和使用对象时,要尽量避免对象进入 autoreleasepool,以避免额外的资源开销。 6. 遍历容器类时,选择更高效的方法 相对于 Foundation 的方法来说,CoreFoundation 的方法有更高的性能,用 CFArrayApplyFunction() 和 CFDictionaryApplyFunction() 方法来遍历容器类能带来不少性能提升,但代码写起来会非常麻烦。 7. 尽量用纯 C 函数、内联函数 使用纯 C 函数可以避免 ObjC 的消息发送带来的开销。如果 C 函数比较小,使用 inline 可以避免一部分压栈弹栈等函数调用的开销。 8. 减少遍历的循环次数 在 JSON 和 Model 转换前,Model 的属性个数和 JSON 的属性个数都是已知的,这时选择数量较少的那一方进行遍历,会节省很多时间。

zfplayer icon zfplayer

视频播放器 基于AVPlayer,支持横屏、竖屏(全屏播放还可锁定屏幕方向),上下滑动调节音量、屏幕亮度,左右滑动调节播放进度。

zipkit icon zipkit

An Objective-C Zip framework for macOS and iOS.

zkswizzle icon zkswizzle

Streamlined way to swizzle Objective-C instance and class methods

zlphotobrowser icon zlphotobrowser

方便易用的相册多选框架,支持预览/相册内拍照及录视频、拖拽/滑动选择,3DTouch预览,编辑裁剪图片/视频,导出视频(可添加水印,粒子特效,视频转码);支持多语言国际化(中文简/繁,英语,日语,可手动切换);在线下载iCloud端图片;支持预览网络及本地图片/视频

zychat icon zychat

聊天UI框架,针对高速高频刷新最近会话和对话页面做了优化处理,优化支持更多消息类型:文本表情混排,Gif动画,短视频,语音,音乐分享,网页分享,鲜花特效。ZYChat-EaseMob是基于环信IM3.x版本的项目运用,附:ZYChat纯UI框架:

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.