自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

宋斌_nib的寂寞

记述开发中的点滴,回忆成长中的不足!

  • 博客(32)
  • 资源 (1)
  • 收藏
  • 关注

原创 小技巧《一》

场景:加载更多的表视图,滑动时根据偏移量动态加载更多数据《分页》同时存在数据源修改的操作《删除,修改》日志:#1453570 NSInternalInconsistencyExceptionInvalid update: invalid number of rows in section 0. The number of rows contained in an existing section after the update (9) must be equal to the number of r

2020-11-03 14:34:03 7

原创 Linux基础指令(二)

Linux基础指令工欲善其事,必先利其器ffmepegls(显示当前目录下的文件)ls-alta:全部的文件l:列表t:倒序.当前目录…上一级目录-drwxr-xr-x文件所有者文件所数组其他用户-:普通文件,d:目录文件,l:链接文件,b:设备文件,c:字符设备文件,p:管道文件cd进入某个指定的目录下cd -仅在当前两个目录下相互切换mkdir创建文件夹/目录权限相关也可以查看到例如775mkdir -p a/b/c指定参数.

2020-10-24 14:07:18 27

原创 音视频场景(一)

音视频场景1、5G的推出2、物联网概念的形成互动直播系统在线教育在线健身娱乐直播系统抖音快手音视频特效美颜特效音视频编辑影视素材的剪辑音视频的合并监控系统超市停车场常用工具ffmpeg(各种音频特效的处理、编解码)ffplay(PC端)IJKPlayer(移动端)VLC(图形界面化)简单模型流媒体服务器问题推流失败ffmepeg 按照音视频最快的那条流进行播放加了re,ffmpeg 会按照flv 中的时间戳推流,不加则是以最快速度推流时间戳是.

2020-10-24 00:41:30 433 6

原创 一面【扫盲篇】

一面【扫盲篇】-(CGSize)intrinsicContentSize的作用?1、Autolayout中作为UIview的只读属性2、直译固有大小,如果没有指定控件的大小,需要重写相当于占位。场景1: 系统导航内自定义view,需要重写改属性。否则大小会被导航栏改变。场景2: UIImageView相关不指定图片,不设置本身大小,则回抛约束警告。编写一个循环引用的代码?循环引用(交叉引用属于其中一种):双方互相强引用对方场景1: 设计代理时候,delegate的声明需要使用weak或者a.

2020-10-10 23:12:24 35

原创 Flutter插件发布

Flutter插件发布新建插件包Application原生Flutter工程pluginiOS和Android差异化packagedart通用module混合工程科学上网检查插件和发布插件需要在当前项目路径下检查插件flutter packages pub publish --dry-run发布插件flutter packages pub publish必须翻墙准备一个谷歌账号发布爬坑第一次发布(要求验证)Looks great!

2020-10-10 01:00:21 53

原创 SDWeb(图片缓存架构设计)

SDWeb(图片缓存架构设计)优化减少任务量缓存后则无需转移任务量更多的去子线程操作自己的任务做了什么底层的系统做了什么怎么取消一个未加载完成的图片同时加载一个图片的时候,怎么去重加载流程第一次加载网络操作(下载)保存本地加载图片第二次加载取本地bitmap一种位图的格式,线程里边进行操作类构成Manager(管理者)多级缓存策略内存磁盘网络下载耗时流量损耗查找流程查找开始内存是

2020-10-09 19:57:51 29 1

原创 七大设计原则

七大设计原则单一指责原则一个类只负责一个事【类设计】UIView响应、传递UILayer显示内容、动画接口隔离原则协议定义按功能进行分离【类簇】Tableview 数据源Tableview 代理源依赖倒置原则体现在【继承】实现依赖抽象抽象不应依赖实现举例:外部增删改,不关注内部的具体实现Plist数据库文件组合/聚合复用原则体现在【设计】尽量使用组合/聚合的形式少用继承来达到复用迪米特法则体现在【模块】类和类之保持距离,尽可能少的了解其他对象高

2020-10-09 19:27:19 21

原创 怎么理解写入内存和写入磁盘?

怎么理解写入内存和写入磁盘?1、只要是存储类型的数据都是写在内存上《也就是断电后没有保存下来的都在内存上》。2、得出所有的程序代码都在内存上运行,写入磁盘的话需要有指定的文件路径。3、字典等数据容器底层一般都是由哈希表实现,原因是效率比较高。只需要优化哈希函数即可。4、网络框架存储图片时候建议对资源URL采取MD5,可适当防止盗链。...

2020-10-09 19:22:54 34

原创 组件化&模块化

怎么区分组件化和模块化?1、组件多是半成品(甚至可以是代码片段)强调的是重用。一般作为框架的最底层。独立性强以供模块使用。2、模块多是指定业务代码进行的封装。可独立运行,以界面或者功能粒度进行划分。一般作为框架的业务层。通过接口等手段通信。目的是降低业务耦合。3、举例:一个登录的UI界面呈现出来的可以是一个登录模块,而登录模块有按钮、输入框等组件构成(也可以是一个)。4、它俩一般是一起呈现,一个叫做组件\模块。多个就成了组件\模块化...

2020-10-09 19:21:04 19

原创 框架&架构

怎么区分框架与架构?1、架构是一种抽象,框架是一种具体的实现。架构(动词)是框架(名词)的指导。2、框架是指以具体的软件实现某种或多种特定功能需求(强调先通用在专用,项目里边都会对第三方框架做二次封装)。架构是思想(强调先大局在局部)。3、框架是抽象的解决方案(关注大局忽略细节的实现,因为还强调通用性所以多是半成品)4、两者都是为解决软件开发越来越复杂而采取的策略手段。...

2020-10-09 19:17:24 42

原创 Flutter(Dart)

Flutter(Dart)概述强类型语言、静态类型指定变量的类型编译器编译时期就进行了检查(类型安全)面向对象OC、JAVA、DartJIT&AOT即时编译,开发期间。更快编译更快重载事前编译,release期间,更快更流畅基础数据类型数字numintdouble字符串 StringsubString(1,5)字符串截取indexOf(“XX”)xx:获取指定字符串位置startWith判断开始位置的字符串.

2020-10-08 15:27:49 30

原创 Flutter(入门)

Flutter(入门)声明式布局传统iOS and Android 是命令式布局《由外向内》多画界面,从中找感觉性能flutter 控制屏幕上的每个像素,避免了需要javaScript桥接导致的性能损失RN是将布局转换为IiOS/Android 原生布局环境配置配置环境变量 bash_profile捷径 open ~open .bash_profile创建 vim bash_profile更新:source bash_profile由于墙的原因需要配置镜像。具体查看us.

2020-10-08 15:20:45 58

原创 QOS(时长统计)

QOS(时长统计)类结构记录管理者记录器页面式(通过对界面生命周期的HOOK)流式(新闻)自定义(横向滑动《视频播放》)场景【某体育项目】不同类型的记录器?出发点:不同业务场景,不同的封装。体现良好的扩展性如何降低数据的丢失率?【程序被kill或者断电关机】定时写磁盘限定内存缓存的条数【例如:超过20条就进行读写】延时上传的具体场景?前后台切换网络变化轻量接口捎带【业务耦合】不推荐注意点结构有点类似命令模式记录器可以具体为不同的业务类XMind .

2020-10-07 20:57:04 25

原创 责任链

2020-10-07 19:19:54 19

原创 适配器

2020-10-07 19:19:07 21

原创 单例

2020-10-07 19:17:11 19

原创 桥接

2020-10-07 19:13:18 161

原创 命令模式

类构成对具体的某一类行为进行参数化达到解耦,降低代码重合度命令命令A执行具体任务A取消将Block设置为nil,则不进行回调。即取消了完成异步回到主队列,防止多线程循环引用执行完毕,从队列中进行移除命令B执行具体任务B取消将Block设置为nil,则不进行回调。即取消了完成异步回到主队列,防止多线程循环引用执行完毕,从队列中进行移除命令管理者进行命令的管理执行命令取消指令场景(某金融项目)点赞、评论、转发。多处散落UGC、PGC列表页和详情页穿插的重复代码

2020-10-06 12:59:38 33

原创 this 关键字

代表是当前对象,可以通过此关键是显示的告诉编译器。 那个类里边使用了this掉用 this 就代表这个类的对象。

2017-03-13 18:12:22 137

原创 构造方法也叫做构造函数OR构造器

情景:在java 中。 构造函数 必须和new 绑定使用。不能被对象单独掉用。 主要用来初始化类。 语法:访问修饰符 (方法名必须和类名相同)类名(){//初始化代码}; 没有返回值。 如果没有写构造函数,编译器会自动给类默认一个无参构造函数。如果写了带参构造函数系统不在提供默认无参构造函数,则调用无参构造函数,将会被抛出错误,没有定义无参构造函数。如果还要继续使用无参构造,则需要自己去类

2017-03-13 12:57:22 290

原创 函数的重写,重载

重写: 函数重写其实就是函数覆盖,当你在派生类中声明了一个与基类函数完全相同的成员函数时,你就已经将基类函数(非虚函数)覆盖,当你在掉用的时候其实掉用的就是派生类的函数了 重载: 参数个数,类型,返回值不能和同名的完全一样 同一个函数名 一般只能处理 一类数据类型 但是通过重载 可以处理多种数据类型 举例 int add(int a,int b); int add(int a,fl

2015-08-15 18:04:51 354

原创 **ios提交应用加急审批**

加急申请如果你的应用已经这个状态(waiting for review)7天以上了那么你可以考虑是否启用加急申请审核的速度。 链接:https://developer.apple.com/appstore/contact/appreviewteam/index.html 提交完应用只有到上边的连接去 填写信息 照着填写就没有错误。理由的话可以写崩溃,时间紧张什么的,当然有人说这种加急审

2015-08-15 17:40:42 373

原创 **IOS开发之关键字category(类别)详解**

一:在用C++开发的时候我们可以轻松的用继承组合为已有类添加新的方法,扩展已有的类。但是在object-c中我们给已有的类添加新的方法则更加方便,那么这是我们需要用到一个特有的属性category,但是我们再用category的时候应该有两点要注意:1:if向已有的类添加新的方法名与已有的方法名相同,则会覆盖已有的类(相当于重写方法),这样不能够访问之前的方法;例如我们希望希望对N

2015-08-15 17:20:38 324

原创 **static 的作用以及一些小细节**

大家对于static 一定不会陌生。在各种高级语言中出现!!!接下来讲述在开发ios 程序需要注意的一些细节!及其作用!static 全局变量与普通全局变量的区别 ?全局变量(即外部变量)前边加上修饰关键字  static 就构成了静态全局变量。  普通全局变量的存储方式就是静态的, static(静态)也属于静态存储方式。两者在存储方式并无不同。  区别在于非静态全局变量的作

2015-08-13 11:58:47 338

原创 **深入浅出的事件路由(view hit test)**

ps:大家也许对viewTest比较陌生...当用户点击屏幕 (事件发生)1,找到第一个接受事件的控件(control)2,分发并寻找处理3,回传直到事件传递给application被废弃.被称之为事件路由!响应链(responderChain)只是说的往回传并不告诉你为什么从xx开始分发以及怎么处理这个事件!responderChain只讲传递。 并没有讲,为什么响应

2015-08-11 14:01:00 423

原创 **浅述IOS成员变量(Member variables)和实例变量(Instance varialbes)的区别**

1,Member variables  可以声明在.h 和.m 中有一定的作用域 。成员变量默认外部访问不到,子类要访问,就要在h文件中申明。OC属性在h文件中和在m文件中声明是有区别的。区别就是,在h文件中声明的属性,外部类可以通过“类实例.属性”来调用,但在m文件中声明的则不可以获取setter and getter方法,只能是通过setValue:forKey和valueForKey来实

2015-08-11 10:30:22 456

原创 iOS 开发一周小节

小结1: 关于上传项目的一个截图问题,最好保持3.5 和4.0 的屏幕截图是一致的。如果你的应用需要用账号的话,那么你上传应用时候给苹果提供的测试账号,必须有数据和你所有的服务器是想关联的,否则会有被拒的可能,原因很简单,你提供的截图 苹果觉得你是虚假的,因为你的数据并没有和屏幕截图所一致。小结2:如果你的老工程还是5.0一下所创建的,当你用到一些库,发现在7。0的sdk 都没有问题而苹果是向

2015-05-03 23:45:19 412

原创 关于字符串range确定?

问题来自石头,思路来源于勇哥。 NSString *text1 = @"小明:哈哈哈\n小张:哈哈哈哈\n小明:哈哈哈哈\n小小:哈哈哈哈\n小明:哈哈哈哈\n小雯:哈哈哈哈";  比如说我有这么一个字符串 NSString *text = @"小明,小张,小明,小雨,小小,小明,小雯";需要找出所有的小明的range,换作你怎么找,我第一时间选择的是用逗号分割,然后在数组里边

2015-05-03 23:43:46 352

原创 真机调试,错误集锦

错误。/Users/lilu/Library/Developer/Xcode/DerivedData/MusicPlay_Porject-aouluuointsfxzffzzmuwpawjryr/Build/Intermediates/MusicPlay_Porject.build/Debug-iphoneos/MusicPlay_Porject.build/Script-001BF3E71723

2015-05-03 23:35:59 300

原创 关于tap 手势传递@selector

最近遇到一个特殊的需求,考虑再三我决定用点击手势传递参数的形式,问题在于点击的初始化 UITapGestureRecognizer*tap= [[UITapGestureRecognizer alloc]initWithTarget:self action:@selector(tap:)];如果使用@selector 的话参数貌似是被固定了,只能是单参数 我尝试了传递 array 或者

2015-05-03 23:34:18 360

原创 svn rollback

一直对svn rollback 有所畏惧,看了一些其他人写的博文 总觉得不够简洁清楚..

2015-02-05 13:24:18 391

原创 pilot study cell segmentation line display issue

At iOS system6  before .if u co cell view display

2014-11-13 13:55:41 336

视频剪辑工具

临摹笔迹,水印,剪辑,合成,导出等

2017-04-06

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人 TA的粉丝

提示
确定要删除当前文章?
取消 删除