Notes and thoughts from Tony

Objective-C的runtime——成员变量与属性的处理

        类型编码(Type Encoding) 作为对Runtime的补充,编译器将每个方法的返回值和参数类型编码为一个字符串,并将其与方法的selector关联在一起。这种编码方案在其它情况下也是非常有用的,因此我们可以使用@encode编译器指令来获取它。当给定一个类型时,@encode返回这个...

Objective-C的runtime原理

        前言 runtime:指一个程序在运行(或者在被执行)的状态。也就是说,当你打开一个程序使它在电脑上运行的时候,那个程序就是处于运行时刻。在一些编程语言中,把某些可以重用的程序或者实例打包或者重建成为运行库。这些实例可以在它们运行的时候被连接或者被任何程序调用。 Objective-C中ru...

Objective-C的isa指针

        前言 Objective-C中NSObject是大多数类的根类。 @interface NSObject <NSObject> { Class isa OBJC_ISA_AVAILABILITY; } 它有一个isa属性,类型是Class。isa是什么呢?Class...

JavaScriptCore框架实战

        用以下的交互方式,实现了与Android的接口统一。 原理:熟悉Android的Webview的同学应该知道,Android只要在需要调用的类中使用@JavascriptInterface注解方法,然后webview中添加JavascriptInterface(webView.addJava...

JavaScriptCore框架使用——JSExport及内存管理

        JavaScript可以脱离prototype继承完全用JSON来定义对象,但是Objective-C编程里可不能脱离类和继承了写代码。所以JavaScriptCore就提供了JSExport作为两种语言的互通协议。JSExport中没有约定任何的方法,连可选的(@optional)都没有,但...

JavaScriptCore框架使用入门

        前言 最近项目中用到了Hybrid的内容,需要js和OC代码的交互。由于js接口已经在Android项目中应用,不能轻易的修改,找了不少方案,最后选择了JavaScriptCore框架。 JavaScriptCore框架其实只是基于webkit中以C/C++实现的一个包装。 JavaSc...

Jekyll语法简单笔记

        前言 如果你只想快速搭建一个github的静态网站, 而暂时没有时间来研究jekyll语法的话,建议直接fork我的这个。 具体官方文档地址请参考官方文档。 这里只介绍关于jekyll的语法,不介绍其他内容。关于如何搭建博客,可以参考这个。 配置 文件介绍 _config.yml ...

基于Jekyll+GitHubPages的个人博客搭建

        春节期间闲得无聊,头脑一热开通了GoDaddy的域名服务,冷静下来后觉得既然出了钱,那就坚持下去吧。😓 开通域名 GoDaddy有各种优惠码,支持支付宝,新手最佳选择。 优惠码及相关步骤链接 创建GitHub Page github-page分为项目主页和个人主页,我们关注的是个人主页...