PPPan's 平凡之路

做一个互联网内容的贡献者

PPPan's 平凡之路 一个技术博客覆盖范围包括 iOS Objecticve-C Swift Xcode 等


  1. 全站 HTTPS 边做边记

    没错,这是一篇可以 Step by Step 跟着做的操作指南。 keyword: Let’s Encrypt, Ubuntu 14.04, Nginx 前言关于 HTTPS 可以先看看鹅厂的这篇文章涨涨姿势。 我们知道 HTTPS 需要一个 CA 来解决信息抵赖和中间人攻击的隐患。Let’s Encrypt 就是一个 CA。它的优势在于免费、被绝大多数浏览器认可、高度自动化。这么好的一个 CA …

    继续阅读

  2. iOS 持续集成系列 - 自动化 Code Review

    iOS 持续集成 - 开篇 iOS 持续集成 - 自动化 Code Review [iOS 持续集成 - 自动化单元测试] [iOS 持续集成 - 自动化打包与分发] 为了保证代码质量,Code Review 是非常重要的一环。细到*的位置是否正确,大到代码的结构是否符合了软件开发的一些基本原则,都在这项工作的范围内。 受限于现实情况,大多数团队没有足够的时间进行 Code Review,那么 …

    继续阅读

  3. 深挖 Swift 中的字符串可比性

    在写 《从 Swift 中的 max(_:_:) 看设计哲学》的过程中,产生了这样一个想法: 既然 max(_:_:) 可以用来对比任何 Comparable ,而 String 是符合 Comparable 的,那么用它来比较两个字符串”谁大谁小”会怎么样呢? 由于实验结果的捉摸不定,于是产生了一探究竟的念头。过程很有趣,结果让人感叹计算机科学之深厚。同时也是典型的 How I Resolve …

    继续阅读

  4. 从 Swift 中的 max(_:_:) 看设计哲学

    由于 Swift 不再支持宏了,于是 MAX,MIN 等一些列常用宏都被重写为 Swift 函数。我们来看看函数的定义: 12@warn_unused_resultpublic func max<T : Comparable>(x: T, _ y: T) -> T warn_unused_result先说说 @warn_unused_result 注解。 顾名思义,被该注解标记的 …

    继续阅读

  5. iOS 持续集成系列 - 开篇

    iOS 持续集成 - 开篇 iOS 持续集成 - 自动化 Code Review [iOS 持续集成 - 自动化单元测试] [iOS 持续集成 - 自动化打包与分发] 前言iOS 开发在经过这几年的野蛮生长之后,慢慢地趋于稳定。无论开发语言是 Objective-C 还是 Swift,工程类型是 Hybird 还是原生,开发思想是 OOP 还是函数式,随着项目逐渐变大都在面临相同的问题: 测试 …

    继续阅读

  6. 微信 URL Schemes

    DEPRECATED2016年09月18日更新: 在 微信 6.3.25 版本中,所有外部唤起 URL 的方式均无法打开对应页面。未来这些 url 都只能在微信内部的浏览器使用了。 年初的动态化分享热潮里,基本上都提到了 URL 跳转,天猫称为统跳协议,蘑菇街称为 URL 路由。其实很多大厂都默默地做了一套 URL 跳转机制,比如说 – 微信。 本文整理了部分微信 URL Schemes,经过本 …

    继续阅读

  7. 让你的应用更好地利用 3D Touch - WWDC 2016 Session 228 笔记

    我们回首 iPhone 的历程,不禁感叹它是如何不断改变我们对手机的认知的。从触屏改变手机的定义开始,距离传感器、光线传感器,到三轴陀螺仪、GPS、运动传感器、再到指纹。这些功能一步步地拓展 iPhone 的能力,不断地改变着我们的生活。 iPhone 6s 再次增加了新的功能 – 3D Touch。 它为iOS 设备的操作增加了另一个维度的能力,为用户提供了另一个操作体验,甚至是改变了用户的操作 …

    继续阅读

  8. 电池电量与低电量模式

    优步最近公布的数据显示,当电池快没电的时候,人们更愿意接受溢价。同时,优步也表明他们并没有利用电量相关的数据来设置溢价规则。换句话说,我们在开发App的时候,可以通过电池电量来”提升用户体验”。 电池状态与电量UIDevice 中有三个电池相关的属性: 123@property(nonatomic,getter=isBatteryMonitoringEnabled) BOOL batteryMon …

    继续阅读

  9. HengTian iOS Code Style

    HengTian iOS Code Style指导原则1.1 首先是为人编写程序,其次才是计算机 软件的生命周期贯穿产品的开发、测试、生产、用户使用、版本升级和后期维护等过程,只有易读、易维护的软件代码才具有生命力。 1.2 保持代码的简明清晰,避免过分的编程技巧 简单是最美,不要过分追求技巧,否则会降低程序的可读性。 1.3 编程时首先达到正确性,其次考虑效率 编程首先考虑的是满足正确性、健壮性 …

    继续阅读

  10. Objective-C与Swift混编实践

    ###前言 由于Swift的语法趋于稳定,目前本人负责的项目也已经在小范围地引入Swift。关于混编过程中遇到的各种思考与选择,胡波的这篇文章已经阐述得得比较全面了,看完文章回头看自己在混编过程中的各种选择,与胡先生的看法是一致的。在此梳理一下一些值得注意的小细节。 Optional基于Objective-C的工程一般都是将JSON转为Model,把数据以Model的形式在对象之间传递。当服务器传 …

    继续阅读