原创 iOS開發筆記之八十——單例的總結筆記

******閱讀完此文,大概需要10分鐘****** 一、單例的創建 #import "MDInstanceManager.h" @implementation MDInstanceManager static MDInstan

原创 iOS開發筆記之七十八——優化git clone/pod install等下載速度慢

  一、問題 經常碰到從github上拉去倉庫會很慢的情況,無論是git clone一個倉庫,還是pod install集成你的項目時,速度極其慢的情況, 例如:git clone https://github.com/facebook/

原创 iOS開發筆記之七十九——讀寫線程鎖介紹(一)

一、讀寫鎖 在多線程環境下,我們經常會遇到讀寫同步的問題。常見的做法就是將讀寫做成互斥操作,但是這樣會降低讀寫性能。通常情況下我們希望讀操作之間是不互斥的,這個時候就需要用到讀寫鎖了。簡單來說,讀寫鎖要做的就是保證: 讀與讀不互斥 讀與寫

原创 iOS開發筆記之五十二——獲取漢字拼音的方法

將一個String的漢字,轉爲拼音返回: + (NSString *)transform:(NSString *)chinese {     //將NSString裝換成NSMutableString     NSMutableStrin

原创 iOS開發筆記之七十四——FRP與RAC進階篇(數據黑白板ReactiveDataBoard的介紹)

******閱讀完此文,大概需要30分鐘****** 一、簡介 ReactiveDataBoard是一款已經比較成熟的基於RAC的響應式編程組件,它主要用來實現任意模塊之間的數據通訊,它可以替代原生的Notification、KVO,de

原创 我是怎樣在美團點評做App需求迭代的

一、一人一個團隊時期 我加入大衆點評的時候,我所在的事業部剛剛分拆出App的業務線,剛好我是這個事業部的第一個iOS開發。所以當時的情況是一個人一個團隊,而且只在點評這一款App上開發,版本迭代的節奏基本上就是我自己的開發節奏,因爲只有一

原创 Python開發筆記之一——安裝Jupyter Notebook

1、PIP的安裝 首先我們需要安裝pip,通過pip來安裝jupyter;pip的安裝之前需要去這裏https://bootstrap.pypa.io/get-pip.py下載get-pip.py文件(文件有點大,有點慢,耐心等待);

原创 文件相似度比對工具的設計與實現

一、背景與目標 我們業務維護了兩個代碼倉庫,兩端的代碼很多都是一個平臺先開發好,幾乎直接copy到另一個倉庫。於是產生了一個技術需求,實現這兩個倉庫代碼複用。在技術預研階段,需要統計早先copy的代碼文件有多少,提前預估雙端代碼的

原创 iOS開發筆記之五十五——關於LocationManager那點事

定位服務CLLocationManager是很多APP常用的,之前有做過點評和美團App的定位邏輯梳理,總結了幾點隨手筆記。 1、CLLocationManager是蘋果GPS定位的系統方法,它的大致原理是依賴手機上安裝的GPS接收器,美

原创 iOS開發筆記之四十七——多線程場景下的KVO使用參考方案

如果你取檢索網絡資料會發現,有人直接不建議把KVO與多線程混合使用,因爲KVO的響應和KVO觀察的值變化是在一個線程上的,不同的線程可能會導致不可預知的後果。參考資料見這裏: (1)http://objccn.io/issue-7-3

原创 iOS開發筆記之五十六——Geofencing地理圍欄技術介紹

我們業務有這樣的一個需求場景,當用戶走進某一商戶附近時,我們可以給用戶發送和此商戶相關的推送消息,從而爲業務引流。針對這種需求,我們啓動了這個技術調研,android的方案大致是不斷獲取用戶當前位置經緯度,並上報到後端,後端經過計算判斷用

原创 iOS開發筆記之四十六——常用的MAC以及Xcode操作快捷鍵

掌握IOS開發的快捷鍵,以下是自己總結的常見的,待不斷更新,掌握後會有利於提高開發效率: Xcode 開發操作快捷鍵: 1、快速打開:command +shift + O ; 2、格式化代碼:control + i ; 3、項目

原创 啓動SQL提示"Can't connect to local MySQL server through socket '/tmp/mysql.sock"參考解決方案

寫了個腳本可以定時訪問本地安裝的mySQL,啓動本地sql時,突然報下面錯誤: ERROR 2002 (HY000): Can't connect to local MySQL server through socket '/tmp

原创 iOS開發筆記之五十三——NSArray快速求總和、最大值、最小值和平均值

健值編碼含有一系列的操作符,使用它們可以通過鍵路徑點表達式對集合元素執行操作。下面是KVC集合操作符的專用的鍵路徑格式: 集合鍵路徑.@操作符.屬性鍵路徑 搜索的幾種集合元素執行的幾種操作,可以快速求總和、最大值、最小值和平均值的方法:

原创 iOS開發筆記之四十九——iOS開發中一些常用的路徑

App沙盒路徑: /Users/username/Library/Developer/CoreSimulator/Devices/2E18005A-EAAF-43DB-967F-1551971CD6F3/data  Xcode緩存路徑: