<?xml version="1.0" encoding="utf-8" ?><rss version="2.0"><channel><title><![CDATA[vincentiss的专栏]]></title><description><![CDATA[]]></description><link>https://blog.youkuaiyun.com/vincentiss</link><language>zh-cn</language><generator>https://blog.youkuaiyun.com/</generator><copyright><![CDATA[Copyright &copy; vincentiss]]></copyright><item><title><![CDATA[探索iOS内存分配]]></title><link>https://blog.youkuaiyun.com/vincentiss/article/details/79226038</link><guid>https://blog.youkuaiyun.com/vincentiss/article/details/79226038</guid><author>vincentiss</author><pubDate>Thu, 01 Feb 2018 11:32:24 +0800</pubDate><description><![CDATA[转自：https://juejin.im/post/5a5e13c45188257327399e19

探索iOS内存分配



前言
在运行iOS（OSX）程序时，左侧的Debug
 Navigator中可以看见当前使用的内存。我们也可以使用Instruments的Allocations模板来追踪对象的创建和释放。不知道你是否也曾困惑于Debug
 Navigator显示的内存]]></description><category></category></item><item><title><![CDATA[苹果官方的文章《Entitlement问题定位指南》：     https://developer.apple.com/library/ios/technotes/tn2415/_index.html]]></title><link>https://blog.youkuaiyun.com/vincentiss/article/details/78803971</link><guid>https://blog.youkuaiyun.com/vincentiss/article/details/78803971</guid><author>vincentiss</author><pubDate>Thu, 14 Dec 2017 16:21:48 +0800</pubDate><description><![CDATA[http://www.cnblogs.com/abinzhang/p/5662061.html





苹果官方的文章《Entitlement问题定位指南》：

 

https://developer.apple.com/library/ios/technotes/tn2415/_index.html

 

本着“知其然，知其所以然”的精神，通读了几遍，终于对XC]]></description><category></category></item><item><title><![CDATA[iOS崩溃crash大解析]]></title><link>https://blog.youkuaiyun.com/vincentiss/article/details/65631769</link><guid>https://blog.youkuaiyun.com/vincentiss/article/details/65631769</guid><author>vincentiss</author><pubDate>Fri, 24 Mar 2017 15:46:08 +0800</pubDate><description><![CDATA[转自：http://www.jianshu.com/p/1b804426d212




前言
iOS崩溃是让iOS开发人员比较头痛的事情，app崩溃了，说明代码写的有问题，这时如何快速定位到崩溃的地方很重要。调试阶段是比较容易找到出问题的地方的，但是已经上线的app并分析崩溃报告就比较麻烦了。
之前我总是找到一个改一个，并靠别人测试重现来找出问题的地方，这样往往比较耗费时间。而且比]]></description><category></category></item><item><title><![CDATA[程序员必须知道的10大基础实用算法及其讲解]]></title><link>https://blog.youkuaiyun.com/vincentiss/article/details/65446416</link><guid>https://blog.youkuaiyun.com/vincentiss/article/details/65446416</guid><author>vincentiss</author><pubDate>Thu, 23 Mar 2017 17:34:18 +0800</pubDate><description><![CDATA[算法一：快速排序算法

快速排序是由东尼·霍尔所发展的一种排序算法。在平均状况下，排序 n 个项目要Ο(n log n)次比较。在最坏状况下则需要Ο(n2)次比较，但这种状况并不常见。事实上，快速排序通常明显比其他Ο(n log n) 算法更快，因为它的内部循环（inner loop）可以在大部分的架构上很有效率地被实现出来。

快速排序使用分治法（Divide and conquer）策]]></description><category></category></item><item><title><![CDATA[iOS正则表达式(NSRegularExpression)]]></title><link>https://blog.youkuaiyun.com/vincentiss/article/details/60143475</link><guid>https://blog.youkuaiyun.com/vincentiss/article/details/60143475</guid><author>vincentiss</author><pubDate>Fri, 03 Mar 2017 17:25:55 +0800</pubDate><description><![CDATA[iOS正则表达式(NSRegularExpression)
http://www.jianshu.com/p/2b599fc55011






正则表达式，又称正规表示法、常规表示法。（英语：Regular Expression，在代码中常简写为regex、regexp或RE），计算机科学的一个概念。正则表达式使用单个字符串来描述、匹配一系列符合某个句法规则。在很多文本编辑器里]]></description><category></category></item><item><title><![CDATA[深入剖析 iOS 编译 Clang / LLVM]]></title><link>https://blog.youkuaiyun.com/vincentiss/article/details/54617915</link><guid>https://blog.youkuaiyun.com/vincentiss/article/details/54617915</guid><author>vincentiss</author><pubDate>Thu, 19 Jan 2017 17:05:35 +0800</pubDate><description><![CDATA[http://www.starming.com/index.php?v=index&view=107





前言

iOS 开发中 Objective-C 和 Swift 都用的是 Clang / LLVM 来编译的。LLVM是一个模块化和可重用的编译器和工具链技术的集合，Clang 是 LLVM 的子项目，是 C，C++ 和 Objective-C 编译器，目的是提供惊人的快]]></description><category></category></item><item><title><![CDATA[控制线程(NSThread)和运行时循环(NSRunLoop)的退出]]></title><link>https://blog.youkuaiyun.com/vincentiss/article/details/53811796</link><guid>https://blog.youkuaiyun.com/vincentiss/article/details/53811796</guid><author>vincentiss</author><pubDate>Thu, 22 Dec 2016 11:15:01 +0800</pubDate><description><![CDATA[原文地址:http://shaheengandhi.com/controlling-thread-exit/


这是讲iOS的线程的文章，下面的内容，自己都惨不忍睹啊，哈哈，练习翻译一下文章，英语太差啊，尽量止步吧。。。。
--------------------------------分割线------------------------------------------------]]></description><category></category></item><item><title><![CDATA[iOS Crash文件的解析]]></title><link>https://blog.youkuaiyun.com/vincentiss/article/details/53419898</link><guid>https://blog.youkuaiyun.com/vincentiss/article/details/53419898</guid><author>vincentiss</author><pubDate>Thu, 01 Dec 2016 11:58:53 +0800</pubDate><description><![CDATA[转自：http://www.cnblogs.com/smileEvday/p/Crash1.html







发程序的过程中不管我们已经如何小心，总是会在不经意间遇到程序闪退。脑补一下当你在一群人面前自信的拿着你的App做功能预演的时候，流畅的操作被无情地Crash打断。联想起老罗在发布Smartisan OS的时候说了，他准备了10个手机，如果一台有问题，就换一台，如果10]]></description><category></category></item><item><title><![CDATA[分析iOS Crash文件：符号化iOS Crash文件的3种方法]]></title><link>https://blog.youkuaiyun.com/vincentiss/article/details/53419859</link><guid>https://blog.youkuaiyun.com/vincentiss/article/details/53419859</guid><author>vincentiss</author><pubDate>Thu, 01 Dec 2016 11:55:47 +0800</pubDate><description><![CDATA[转自wufawei的博客 当你的应用提交到AppStore或者各个渠道之后，请问你多久会拿到crash文件？你如何分析crash文件的呢？ 上传crash文件 你的应用应当有模块能够在应用程序crash的时候上传crash信息











转自wufawei的博客

当你的应用提交到App Store或者各个渠道之后，请问你多久会拿到crash文件？你如何分析]]></description><category></category></item><item><title><![CDATA[iOS LLDB调试器和断点调试]]></title><link>https://blog.youkuaiyun.com/vincentiss/article/details/51441999</link><guid>https://blog.youkuaiyun.com/vincentiss/article/details/51441999</guid><author>vincentiss</author><pubDate>Wed, 18 May 2016 10:44:01 +0800</pubDate><description><![CDATA[技巧一：运行时修改变量的值

你以前怎么验证是不是某个变量的值导致整段程序不能正常工作？修改代码中的变量的值，然后cmd+r重新启动app？现在你不需要这么做了，只需要设置一个断点，当程序在这进入调试模式后，使用expr命令即可在运行时修改变量的值。

假如有一个loginWithUsername:方法，需要两个参数：username，password。

首先设置好断点，如下图所示：]]></description><category></category></item><item><title><![CDATA[linux  信号]]></title><link>https://blog.youkuaiyun.com/vincentiss/article/details/50470873</link><guid>https://blog.youkuaiyun.com/vincentiss/article/details/50470873</guid><author>vincentiss</author><pubDate>Wed, 06 Jan 2016 18:05:58 +0800</pubDate><description><![CDATA[SIGSEGV与SIGBUS

SIGBUS(Bus error)意味着指针所对应的地址是有效地址，但总线不能正常使用该指针。通常是未对齐的数据访问所致。

SIGSEGV(Segment fault)意味着指针所对应的地址是无效地址，没有物理内存对应该地址。

SEGV_MAPERR, 地址没有映射到对象，可能的原因是dangling pointer或者overflow，

比如]]></description><category></category></item><item><title><![CDATA[OSX系统编程环境的介绍]]></title><link>https://blog.youkuaiyun.com/vincentiss/article/details/49363347</link><guid>https://blog.youkuaiyun.com/vincentiss/article/details/49363347</guid><author>vincentiss</author><pubDate>Fri, 23 Oct 2015 16:43:38 +0800</pubDate><description><![CDATA[文章转自：http://www.tanhao.me/talk/440.html/





OSX系统的整体架构(见下图)







内核态编程环境


1.BSD - 来自FreeBSD的内核部分。

FreeBSD是一个高效、稳定的UNIX操作系统，是众多BSD UNIX分支中的一个。正是因为OSX基于FreeBSD的内核，也让它继承了其身上很多的优势]]></description><category></category></item><item><title><![CDATA[关注的blog]]></title><link>https://blog.youkuaiyun.com/vincentiss/article/details/49176371</link><guid>https://blog.youkuaiyun.com/vincentiss/article/details/49176371</guid><author>vincentiss</author><pubDate>Fri, 16 Oct 2015 11:16:04 +0800</pubDate><description><![CDATA[架构谈
http://casatwy.com/



老谭
http://www.tanhao.me/



http://objccn.io/



sunnyxx
http://blog.sunnyxx.com/



南风子 不错
http://southpeak.github.io/blog/archives/



m了个j   教学之类]]></description><category></category></item><item><title><![CDATA[短时间内连续发请求的问题]]></title><link>https://blog.youkuaiyun.com/vincentiss/article/details/49020457</link><guid>https://blog.youkuaiyun.com/vincentiss/article/details/49020457</guid><author>vincentiss</author><pubDate>Sat, 10 Oct 2015 10:49:33 +0800</pubDate><description><![CDATA[短时间内连续发请求的问题

开发中做搜索常常碰到要做联想的功能  输入框下头根据你的输入出来结果列表，还有开发地图时候拖动地图加载 ，搜索逻辑放主线程会卡，放子线程要cancel之前的，记录下怎么解决。
  
解决办法
1 ，输入时间间隔内放弃上一次的请求，就是连续快速输入根本不发请求，自己做timer计时时间戳之类的，检测输入间隔。
后来项目中用到ReactiveCocoa, 用它的]]></description><category></category></item><item><title><![CDATA[缩略图到大图浏览转场]]></title><link>https://blog.youkuaiyun.com/vincentiss/article/details/48783453</link><guid>https://blog.youkuaiyun.com/vincentiss/article/details/48783453</guid><author>vincentiss</author><pubDate>Mon, 28 Sep 2015 13:21:28 +0800</pubDate><description><![CDATA[页面内看图到大图浏览转场
难点：转场动画，方向
办法：
1，自定义大图浏览view，坐标转换后，做动画到view
2，controller管理大图，通过controller 转场动画做]]></description><category></category></item><item><title><![CDATA[多线程并发上传]]></title><link>https://blog.youkuaiyun.com/vincentiss/article/details/48783441</link><guid>https://blog.youkuaiyun.com/vincentiss/article/details/48783441</guid><author>vincentiss</author><pubDate>Mon, 28 Sep 2015 13:20:43 +0800</pubDate><description><![CDATA[1 多线程并发上传图片
自定义operation，封装上传逻辑：（数据和图片分开传，图片上传依赖数据上传接口返回数据），
添加operation到operation queue，
外部需要获取operation上传结果：失败或成功，统计成功数量，
解决办法：
1》operation内部用同步调用接口，阻塞线程等待结果，添加operation 成功属性，外部注册观察通知
2》自定义ope]]></description><category></category></item><item><title><![CDATA[从 NSURLConnection 到 NSURLSession]]></title><link>https://blog.youkuaiyun.com/vincentiss/article/details/47441557</link><guid>https://blog.youkuaiyun.com/vincentiss/article/details/47441557</guid><author>vincentiss</author><pubDate>Wed, 12 Aug 2015 11:14:18 +0800</pubDate><description><![CDATA[iOS 7 和 Mac OS X 10.9 Mavericks 中一个显著的变化就是对 Foundation URL 加载系统的彻底重构。

现在已经有人在深入苹果的网络层基础架构的地方做研究了，所以我想是时候来分享一些对于我对于这些新的 API 的看法和心得了，新的 API 将如何影响我们编写程序，以及它们对于 API 设计理念的影响。

NSURLConnection 作为 Core ]]></description><category></category></item><item><title><![CDATA[互联网创业之让专业的人做专业的事]]></title><link>https://blog.youkuaiyun.com/vincentiss/article/details/47425719</link><guid>https://blog.youkuaiyun.com/vincentiss/article/details/47425719</guid><author>vincentiss</author><pubDate>Tue, 11 Aug 2015 19:48:48 +0800</pubDate><description><![CDATA[我的财宝都放在那里，去找吧。一句话让当下的人们对互联网创业趋之若鹜。

做了3个创业性质的项目，死了一个，正在做一个，还有一个正在死。
说说当下正在做的。
这个项目是5年来我经历过最糟糕的团队，从开始就是。
人员配置上，程序员不是本篇主要介绍的，一笔带过，6个客户端，4个后台服务器人员。
产品半个，UI交互半个，前边这是一个人，还有一个本篇主要吐槽的搅屎棍一个。。。请原谅我这么称呼他。]]></description><category></category></item><item><title><![CDATA[CATransform3D 属性]]></title><link>https://blog.youkuaiyun.com/vincentiss/article/details/47298319</link><guid>https://blog.youkuaiyun.com/vincentiss/article/details/47298319</guid><author>vincentiss</author><pubDate>Wed, 05 Aug 2015 15:41:18 +0800</pubDate><description><![CDATA[struct CATransform3D

{

CGFloat     m11（x缩放）,     m12（y切变）,     m13（旋转）,     m14（）;

CGFloat     m21（x切变）,     m22（y缩放）,     m23（）,     m24（）;

CGFloat     m31（旋转）,      m32（ ）,        m33（）,]]></description><category></category></item><item><title><![CDATA[cocoapods version update]]></title><link>https://blog.youkuaiyun.com/vincentiss/article/details/47124913</link><guid>https://blog.youkuaiyun.com/vincentiss/article/details/47124913</guid><author>vincentiss</author><pubDate>Wed, 29 Jul 2015 11:36:50 +0800</pubDate><description><![CDATA[gem update --system
gem install cocoapods
pod setup


gem list
gem cleanup]]></description><category></category></item></channel></rss>