-
iOS之CoreText文本绘制
为什么要使用CoreText绘制文本 一般情况下,我们都会使用UILabel来布局文本。当我们使用少量的UILabel时,肉眼并不能明显的看到卡顿,但是当一个屏幕内出现大量UILabel时,就会明显感觉到卡顿了,这是为什么呢? 因为,UILabel这些UIKit中的文本控件的排版与绘制都是在主线程进行的,当出现大量文本时,CPU的压力会非常之大,所以就会出现卡顿问题。 严重时可能FPS会降到50以下,当全部使用CoreText绘制时,FPS可以达到58或更高(这里的case是界面上只...…
-
Objective-C内存五大区
内存五大区 严格意义来说,这不能算是Objective-C的特性,应该是属于C语言的特性,这并不是本文的重点,重点是每个区块职责是什么。哪五大区 栈区(stack):由编译器自动分配并释放,存放函数的参数值,局部变量等。栈是系统数据结构,对应线程/进程是唯一的。栈是向低地址扩展的数据结构,是一块连续的内存的区域;先进后出(FILO—First-In/Last-Out) 优点:快速高效 缺点:内存大小有限制(iOS主线程栈大小1MB,其他线程是512KB。(Mac也只...…
-
iOS项目中集成Weex
设置Podfilesource 'git@github.com:CocoaPods/Specs.git'target 'FirstWeex' do platform :ios, '8.0' pod 'WeexSDK', '0.20.1'end 网络不好的情况,pod install的时候会在git clone卡住,原因就是github在海外,所以我们此时最好是通过VPN代理 配置下git config git config --global http.https://gi...…
-
Java注解说明(持续更新)
什么是注解? Java注解又称Java标注,是Java语言5.0版本开始支持加入源代码的特殊语法元数据。 Java语言中的类、方法、变量、参数和包等都可以被标注。和Javadoc不同,Java标注可以通过反射获取标注内容。在编译器生成类文件时,标注可以被嵌入到字节码中。Java虚拟机可以保留标注内容,在运行时可以获取到标注内容。 当然它也支持自定义Java标注。内置的注解 Java 定义了一套注解,共有 7 个,3 个在 java.lang 中,剩下 4 个在 java.lang.a...…
-
Spring之IoC容器
IoC是什么? 全称:Inversion of Control,它是Spring框架的核心之一。 IoC容器就是具有依赖注入功能的容器,负责实例化、定位、配置对象以及建立对象之间的依赖关系,应用程序无需在代码中new相关的对象,都由IoC来完成。 它并不是什么技术点,而已一种设计模式。一般情况下,我们自己来控制对象,反转那么久很好理解了,久是我们只需设计好对象,由容器来帮我们控制。我们不需要通过new来创建对象,也不需要去管理这个对象的生命周期,这一切都有容器来帮我们完成。 为什么...…
-
Java后端开发之基于SpringBoot三层架构
创建SpringBoot项目 上一章已经讲过如何创建一个SpringBoot的项目,回顾请点击这里三层架构介绍 三层架构(3-tier architecture) 通常意义上的三层架构就是将整个业务应用划分为:界面层(User Interface layer)、业务逻辑层(Business Logic Layer)、数据访问层(Data access layer)。 数据访问层:主要看数据层里面有没有包含逻辑处理,实际上它的各个函数主要完成各个对数据文件的操作。而不必管其他操...…
-
创建第一个SpringBoot项目
创建项目 关于如何配置访问请看上一节 Create New Project 选择Spring Initializr 根据需求配置Project Metadata 直接Next - 暂时不用勾选其他 下一步配置项目名称与项目路径,然后Finish,项目就创建好了 注意:创建项目后,SpringBoot会自动配置从Maven下载依赖,所以需要点时间,可以看到底部有进度条 启动项目 配置pom.xml,这个配置就是...…
-
Java后端开发环境配置
最近有点时间,做了那么多年的客户端开发者,也想了解了解后端开发,目前公司的后端基本都是用Java的,所以今天来用Java + SpringBoot + MySql来简单了解下后端开发环境介绍 开发工具 Intellij IDEA市面上也会有人用Eclipse,不过应该大部分人还是喜欢用IDEA 语言 Java,想必大家都有所了解 框架 SpringBoot, 是由Pivotal团队提供的全新框架,其设计目的是用来简化新Spring应用的初始搭建以及开发过程 仓库 Maven,这...…
-
在github搭建技术博客
准备 域名 需要一个可访问的域名,例如 jxb.name,任何域名都可以,没有的话购买一个也很便宜 github 想必,做技术的一般都有这里使用Jekyll系统 + vno主题 Jekyll 中文介绍喵神的vno主题 注意: 安装环境时关于homebrew的安装、镜像的修改,不是本次的重点,这边不再多过介绍 下载主题 将喵神的vno主题下载到本地文件夹myblog 安装Jekyll Jekyll sudo gem insta...…