小小ARC造福无数码农】的更多相关文章

今天无意中看到非常久之前的一个项目,古老的语法规范,还有更让人战战兢兢"内存管理代码"! 在这不得不说OC中内存管理的三种分类: Mannul Reference Counting(MRC,手动管理,在开发iOS5.0之前的版本号的项目时我们要自己负责使用引用计数来管理内存,比方要手动retain.release.autorelease 等,而在其后的版本号能够使用ARC,让系统自己管理内存. ) Automatic Reference Counting(ARC,自己主动引用计数,iO…
对于WCF一直都是只知其然,公司框架的架构者也只是对我们授之以鱼,而不授之以渔. 带着初学者的态度进入了大神Artech的博客,逐步慢慢上手. 我的解决方案(和大神的一模一样,只是过程中一波三折的) Clients:客户端控制台程序,需要引用(System.ServiceMode),并在此项目中创建与WCF的通信. Contracts:契约项目(我是右键解决方案->添加->新建项目->WCF服务库进行创建,这样好像就不用引用System.ServiceMode,它会自动引用),这个项目的…
终有一天我手中的编译器将成为我灵魂的一部分,这世界在我的眼中将被代码重构,我将看到山川无尽银河无垠都汇成二进制的数字河流,过往英雄都在我脑海眼前一一浮现,而我听到无数码农跪倒在我的程序面前呼喊. 他们叫我代码之神. 到那个时候,我想我一定可以找回你. 一丶这是一个属于代码的修真世界. 这世界里的每一个人,每一个东西,包括高山大海,刀剑风云,其本质都是一串数字流. 打个比方,如果你知道一块石头的内部数据结构,并且参透其中玄妙,你就能用程序改变它的一切.如果能参透自身这一个复杂的操作系统,就能重新编…
https://blog.helong.info/blog/2015/09/06/tls-protocol-analysis-and-crypto-protocol-design/?from=timeline&isappinstalled=0 最近发现密码学很有意思,刚好还和工作有点关系,就研究了一下,本文是其中一部分笔记和一些思考. 密码学理论艰深,概念繁多,本人知识水平有限,错误难免,如果您发现错误,请务必指出,非常感谢! 本文禁止转载 本文目标: 学习鉴赏TLS协议的设计,透彻理解原理和重…
STL空间配置器 一.开场白: 给我的感觉就是,了解是空间配置器的功能,是那么的明了:在看原理,我还是很开心:接下来是360度大转变: 那么长的变量或者函数命名.那么多的宏.不爽,不过,遇上我这种二货,是精华,我也给嚼碎了,下面开始吧: 二.STL是什么: 1.STL(Standard TemplateLibrary),即标准模板库,是一个具有工业强度的,高效的C++程序库. 2.它被容纳于C++标准程序库(C++ StandardLibrary)中,是ANSI/ISO C++标准中最新的也是极…
不得不说的JSF 经过前几次作业的煎熬.出租车的代码量不断地增多.而出租车问题在不断的完善,这也就牵涉到一个问题,那就是最初出租车程序的设计问题,如果一开始设计的就有问题的话,那么在后来的过程中就会遇到更多的麻烦.就像微软不断的给自己的系统打补丁一样.但是如果某一天他发现系统有一个关键性的设计错误.虽然这种几率较小,但是一旦发生,将会带来巨大的灾难,https://baike.baidu.com/item/%E5%8D%83%E5%B9%B4%E8%99%AB/2954?fr=aladdin.2…
TLS协议分析 本文目标: 学习鉴赏TLS协议的设计,透彻理解原理和重点细节 跟进一下密码学应用领域的历史和进展 整理现代加密通信协议设计的一般思路 本文有门槛,读者需要对现代密码学有清晰而系统的理解,建议花精力补足背景知识再读.本文最后的参考文献里有一些很不错的学习资料. 目录 : 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39…
主要内容: 一.block相关的题目 二.block的定义 三.block的实现 四.捕获自动变量值 五.block存储区域 六.截获对象 一.block相关的题目 这是一篇比较长的博文,前部分是block的测试题目,中间是block的语法.特性,block讲解block内部实现和block存储位置,请读者耐心阅读.具备block基础的同学,直接调转到block的实现 下面列出了五道题,看看能否答对两三个.主要涉及block栈上.还是堆上.怎么捕获变量.答案在博文最后一行 //---------…
Block存储区域 首先,需要引入三个名词: ● _NSConcretStackBlock ● _NSConcretGlobalBlock ● _NSConcretMallocBlock 正如它们名字显示得一样,表明了block的三种存储方式:栈.全局.堆.block对象中的isa的值就是上面其中一个,下面开始说明哪种block存储在栈.堆.全局. ------------[要点1]:全局block------------ ● 定义在函数外面的block是global类型的 ● 定义在函数内部的…
 将库函数打包成一个单元使之能够在运行时被多个进程共享的技术,这种技术能够节省磁盘空间和RAM. 一. 静态库:1.概念:    静态库就是一些目标文件的集合,以.a结尾.静态库在程序链接的时候使用,链接器会将程序中使用到函数的代码从库文件中拷贝到应用程序中.一旦链接完成,在执行程序的时候就不需要静态库了. 由于每个使用静态库的应用程序都需要拷贝所用函数的代码,所以静态链接的文件会比较大.2.创建与应用:    首先创建库文件libhello.c1 #include <stdio.h>2 vo…
linux 下有动态库和静态库,动态库以.so为扩展名,静态库以.a为扩展名.二者都使用广泛.本文主要讲动态库方面知识.    基本上每一个linux 程序都至少会有一个动态库,查看某个程序使用了那些动态库,使用ldd命令查看 # ldd /bin/ls linux-vdso.so.1 => (0x00007fff597ff000) libselinux.so.1 => /lib64/libselinux.so.1 (0x00000036c2e00000) librt.so.1 => /…
OC高级编程——深入block,如何捕获变量,如何存储在堆上   首先先看几道block相关的题目 这是一篇比较长的  博文 ,前部分是block的测试题目,中间是block的语法.特性,block讲解block内部实现和block存储位置,请读者耐心阅读.  具备block基础的同学,直接调转到block的实现 下面列出了五道题,看看能否答对两三个.主要涉及block栈上.还是堆上.怎么捕获变量.  答案在博文最后一行 //-----------第一道题:-------------- void…
上一篇(linux下so动态库一些不为人知的秘密(上))介绍了linux下so一些依赖问题,本篇将介绍linux的so路径搜索问题. 我们知道linux链接so有两种途径:显示和隐式.所谓显示就是程序主动调用dlopen打开相关so;这里需要补充的是,如果使用显示链接,上篇文章讨论的那些问题都不存在.首先,dlopen的so使用ldd是查看不到的.其次,使用dlopen打开的so并不是在进程启动时候加载映射的,而是当进程运行到调用dlopen代码地方才加载该so,也就是说,如果每个进程显示链接a…
摘自http://gotowqj.iteye.com/blog/1926734 摘自http://www.360doc.com/content/14/0313/13/12747488_360246417.shtml linux 下有动态库和静态库,动态库以.so为扩展名,静态库以.a为扩展名.二者都使用广泛.本文主要讲动态库方面知识.        基本上每一个linux 程序都至少会有一个动态库,查看某个程序使用了那些动态库,使用ldd命令查看  # ldd /bin/ls linux-vds…
Block存储区域 首先,须要引入三个名词: ● _NSConcretStackBlock ● _NSConcretGlobalBlock ● _NSConcretMallocBlock 正如它们名字显示得一样,表明了block的三种存储方式:栈.全局.堆.block对象中的isa的值就是上面当中一个,以下開始说明哪种block存储在栈.堆.全局.block为何是个对象,參考点击打开链接 ------------[要点1]:全局block------------ ● 定义在函数外面的block是…
这是使用模板系列的最后一篇了,也是最实用的方法. 前面提到的,插入文件的方法,适合计算机水平一般的初学者:而用TCL脚本的,则适合喜欢自定义各种奇特功能的专业人士. 那么,本次介绍的配置编辑器的方法,就更适合绝大多数码农了. 1.安装Sublime Text 2. Sublime Text 3是收费的,也可以破解,这里以Sublime Text 2为例. 在官网http://www.sublimetext.com/上面可以下载到这个编辑器,安装过程就不说了,你可以一直试用,也可以破解它(自己百度…
-------------------------------------------欢迎查看block连载博客[专栏]--------------------------------------[block编程第一篇]block语法                   [block编程第二篇]block捕获变量和对象.[block编程第三篇]block的内存管理.     [block编程第四篇]block内部实现(当前)[block编程第五篇]block中怎样避免循环引用----------…
引言 Intro 图片源链:https://pixnio.com/zh/%E6%A4%8D%E7%89%A9/%E8%8A%B1/%E4%B8%81%E9%A6%99%E8%8A%B1-%E5%8F%B6%E5%AD%90-%E5%9B%AD%E8%89%BA-%E8%8A%B1%E7%93%A3-%E8%8A%B1%E5%9B%AD-%E8%87%AA%E7%84%B6-%E5%A4%8F%E5%A4%A9-%E8%8A%B1 我知道的终端命令还不多,ifconfig在这些当中数最温柔的,像个…
喜欢写代码,讨厌配环境 我相信这十个字的小标题代表了大多数码农的心声. 十年前读大学时,学校开设了C语言还有C++.但是学习这两种语言,对于新手来说非常没有成就感. 于是我就在校门口买个光盘,装个VS(宇宙第一IDE),还有离线中文版MSDN(最牛的帮助文档),万事已俱备. 学习C#语法,看类的API,然后从WinForm(窗口)开始,用鼠标拖拽控件,设置控件属性,观察自动生成的代码,开启人生的编程之路. 大四的时候接触到Java,首先就是配置环境变量,那时觉得是一个巨复杂的东西,每次都要网上搜…
今天的分享来源于工作中的点点滴滴…… 01. 习惯性自嘲 代码写久了,伴随肩疼头痛眼近视,于是乎也就成了名副其实的 code farmer(码农),作为如牛吃草挤奶般的码农,吃草(撸)挤奶(码)便是日常要事,接下来就聊聊身边同事的一些关于撸码的问题,顺道穿(掰)插(扯)一下我独到的见解(想想我这脸皮会有多厚). 02. 撸码的艾尔莎 假想一下,你投资的产品到期了,但是你却没有收到平台给你的转账,面对此种场景,估计你会二话不说,先去看看投资平台的官网还在不在,确认是不是平台跑路啦:然后去找客服投诉…
身份证号码相同(字段值出现多次) select * from CBF_JTCY a,(select CYZJHM, count(*) from CBF_JTCY  group by  CYZJHM having count(*)>1)bwhere a.cyzjhm=b.cyzjhm 身份证号码相同但姓名不同(A字段相同,B字段不相同) select * from cbf_jtcy  a ,(select * from  cbf_jtcy ) b where a.CYZJHM=b.CYZJHM a…
OpenUDID Open source initiative for a universal and persistent UDID solution for iOS. 首创的给iOS提供设备唯一标示符的一个开源代码. https://github.com/ylechelle/OpenUDID 使用很简单,引入头文件后执行下面一句话即可: 由于原版OpenUDID仅仅支持non-ARC,而且还有各种警告,现在修改后支持ARC以及non-ARC,测试了iOS6 iOS7 iOS7.1 以及64位…
集中式大规模MIMO 同一小区的所有接入点( access point,AP) 布置在同一个基站( base station,BS) 中,并且 AP 之间的间距非常小,这种布置方式称为集中式大规模MIMO. 集中式结构虽然可以有效解决回程线路上的资源消耗问题,但是在用户的覆盖率,尤其在小区边缘用户的覆盖率上,还存在着许多不足之处 无小区大规模MIMO 同传统的小区通信相比,无小区大规模 MIMO 取消了小区之间的划分,AP 的部署方式也变成了分布式.所有 AP 通过无差错的光纤网络与中央处理器(…
显示屏与主机之间连接,出现无信号字样时,应检查是否正确选择集显和独显VGA接口 通过VGA接口判断集成显卡和独立显卡.在台式机主机上,VGA接口竖着放置的说明是集成显卡,VGA接口横着放置的说明是独立显卡. 如图所示为VGA接口…
下面是一篇有意思的"代码大全",可谓 逆软件工程. 老码农冒死揭开行业黑幕:如何编写无法维护的代码 原文如下 让自己稳拿铁饭碗 ;-) – Roedy Green(翻译版略有删节) 简介 永远不要(把自己遇到的问题)归因于(他人的)恶意,这恰恰说明了(你自己的)无能. — 拿破仑 为了造福大众,在Java编程领域创造就业机会,兄弟我在此传授大师们的秘籍.这些大师写的代码极其难以维护,后继者就是想对它做最简单的修改都需要花上数年时间.而且,如果你能对照秘籍潜心修炼,你甚至可以给自己弄个铁…
PostgresQL一秒能插入多少条记录,MongoDB呢?读取的情况又如何?我写了一些简单的程序,得出了一些简单的数据,贴在这里分享,继续往下阅读前请注意下本文标题中的“无责任”,这表示此测试结果不代表真实的生产环境下的情况,只能说给大家一个比较直观的概念,可用于设计架构时候的估算.(量级上来说应该基本上是正确的) 本次测试选择的服务器环境为: VMWare虚拟机(双核,4G内存) CentOS 7 MongoDB 3.2 PostgresQL 9.4 客户端均为Java版 单线程客户端 插入…
声明:本文题目来源于互联网,仅供即将从学校毕业的.Net码农(当然,我本人也是菜逼一个)学习之用.当然,学习了这些题目不一定会拿到offer,但是针对就业求职做些针对性的准备也是不错的.此外,除了技术上的准备外,要想得到提升,还得深入内部原理,阅读一些经典书籍(例如Jeffrey Richter的<CLR via C#>)以及借助Reflector或ILSpy反编译查看源码实现,知其然也知其所以然,方能得到感性认识到理性认识的飞跃!另外,本来想将本文标题取为就业求职宝典,但一想这名字太LOW了…
1.这是什么鬼? 哦?美女? 最近看了这一篇文章:http://cuiqingcai.com/1001.html 大概说的是用Python和Pyspider(这货好像是我的一位师兄写的,吓尿),抓取淘宝淘女郎的所有美女照片.只是里面还要敲一堆代码,还要用其他动态js运行框架,看着好不烦人啊. Hawk是沙漠君开发的一款爬虫和清洗工具,目前已经在Github开源: https://github.com/ferventdesert/Hawk 最近沙漠君很开心啊,开发的Hawk在GitHub上上百个s…
函数 func x(a:Int, b:Int)  {}   func x(a:Int, b:Int) -> Void {}  func x(a:Int, b:Int) ->(Int,Int) {} 外部参数名 func x(width a:Int,height b:Int) -> Int {}  func x(#a:Int,#b:Int) -> Int {} //一般情况下可以不指定外部参数名,直接调用函数,但使用外部参数名,可以显著提高代码可读性: func helloWithN…
现在科技太发达,移动设备像素越来越高,随便一张照片2M+,但是要做移动端图片上传和pc上略有不同,移动端你不能去限制图片大小,让用户先处理图片再上传,这样不现实.所以理解的解决方案就是在上传先进行图片压缩,然后再把压缩后的图片上传到服务器. 一翻google之后,发现了localResizeIMG,它会对图片进行压缩成你指定宽度及质量度并转换成base64图片格式,那么我们就可以把这个base64通过ajax传到后台,再进行保存,先压缩后上传的目的就达到了. 处理过程 LocalResizeIM…