【推薦】iOS碼員真愛-Tools註解工具類

分類:IT技術 時間:2017-07-03

引導 ??

我們追求技術的提升,關註技術的發展歷程;作為從事技術工作的伐碼猿,有個想法(2),這個想法工程量之大(遇到,用到,最新技術點,點點積累,及時補充吧),從事技術多年也算是對所花費時間的一個總結(算是對技術這塊的一個目標吧)。
重點 -> 重點 -> 重點重要的事情說 2+1 遍),

想法和行動都在文章末尾
掘金原文 https://juejin.im/post/59538f8ff265da6c4977706f
源碼註解 https://juejin.im/post/593e54ed8d6d81005898fd26

Copyright ? PBWln Unauthorized shall not be reproduced.


我們通常稱為 “Cocoa框架”,事實上 Cocoa 本身是一個框架的集合,它包含了眾多子框架,其中最重要的要數 “Foundation”“UIKit” 。前者是框架的基礎,和界面無關,其中包含了大量常用的API;後者是基礎的UI類庫,以後我們在 iOS 開發中會經常用到。這兩個框架在系統架構中的位置如下圖:
在「時間 & 知識 」有限內,總結的文章難免有「未全、不足 」的地方,還望各位好友指出,以提高文章質量@jianshu - 白開水ln。

上圖註解:

  • 1、Core OS 層
    位於 iOS 框架的最底層,主要包含內核、文件系統、網絡基礎架構、安全管理、電源管理、設備驅動、線程管理、內存管理等。簡而言之,該層提供了最低級的、系統級的服務。

  • 2、Core Services 層
    可稱之為核心服務層,顧名思義,它提供諸如字符串管理、集合管理、網絡操作、URL實用工具、聯系人管理、偏好設置等服務。除此之外,它還提供很多基於硬件特性的服務,如GPS、加速儀、陀螺儀等。該層包含了Core LocationCore MotionsystemConfigurationFoundationCore Foundation子模塊。其中FoundationCore Foundation子模塊提供了對公共數據類型(字符串、集合等)的抽象,Core Foundation中的Core Data子模塊可以實現對象圖形管理與對象持久化。

  • 3、Media 層:依賴於Core
    Services層提供的功能,主要負責圖形與多媒體服務。它包含了CoreGraphicsCore TextOpenGL ESCore AnimationAVFoundationCore Audio等與圖形、視頻和音頻相關的功能模塊。

  • 4、 Cocoa Touch 層
    是直接向iOS應用程序提供各種基礎功能的支持。其中的UIKit框架提供各種可視化控件供應用程序使用,如窗口、視圖、視圖控制器與各種用戶控件等。另外UIKit也定義了應用程序的默認行為和事件處理結構。


| 不管誰的博客上面寫的(也包括自己),閱讀的你要敢於去驗證,停止無意義的?copy ?? paste。 |
|:-:|

Content progress【部分】


| .h文件 | 文件註解 | Tools | 博客註解 |
| :-: | :-: | :-: | :-: |
| UIKit.h - Annotations & Tools | -- | -- | -- |
| 【NSObject】 | -- | -- | -- |
| UIImage.h | 【系統文件】 | 【Tools】 | 【博客註解】 |
| UIColor.h | 【系統文件】 | 【Tools】 | 【博客註解】 |
| UIBezierPath.h | 【系統文件】 | [【Tools】]() | 【博客註解】 |
| NSURLSession.h | 【系統文件】 | 【Tools】 | 【博客註解】 |
| NSArray.h | 【系統文件】 | 【Tools】 | 【博客註解】 |
| NSAttributedString.h | 【系統文件】 | 【Tools】 | 【博客註解】 |
| UILocalNotification.h | 【系統文件】 | 【Tools】 | 【博客註解】 |
| NSDate.h | [【系統文件】]() | 【Tools】 | 【博客註解】 |
| UIDevice.h | [【系統文件】]() | 【Tools】 | 【博客註解】 |
| UINavigationItem.h | [【系統文件】]() | 【Tools】 | 【博客註解】 |
| 【UIView】 | -- | -- | -- |
| UIWindow.h | 【系統文件】 | 【Tools】 | 【博客註解】 |
| UIView.h | 【系統文件】 | 【Tools】 | 【博客註解】 |
| UIWebView.h | 【系統文件】 | 【Tools】 | 【博客註解】 |
| UIToolbar.h | 【系統文件】 | 【Tools】 | 【博客註解】 |
| UITableView.h | 【系統文件】 | 【Tools】 | 【博客註解】 |
| UITableViewCell.h | 【系統文件】 | 【Tools】 | 【博客註解】 |
| UITabBar.h | 【系統文件】 | 【Tools】 | 【博客註解】 |
| UISearchBar.h | 【系統文件】 |【Tools】 | 【博客註解】 |
| UIScrollView.h | 【系統文件】 | 【Tools】 | 【博客註解】 |
| UIProgressView.h | 【系統文件】 | 【Tools】 | 【博客註解】 |
| UIPickerView.h | 【系統文件】 | 【Tools】 | 【博客註解】 |
| UINavigationBar.h | 【系統文件】 |【Tools】 | 【博客註解】 |
| UILabel.h | 【系統文件】 | 【Tools】 | 【博客註解】 |
| UIImageView.h | 【系統文件】 | 【Tools】 | 【博客註解】 |
| UICollectionViewLayout.h | 【系統文件】 | 【Tools】 | 【博客註解】 |
| UICollectionViewFlowLayout.h | 【系統文件】 | 【Tools】 | 【博客註解】 |
| UICollectionViewCell.h | 【系統文件】 | 【Tools】 | 【博客註解】 |
| UICollectionView.h | 【系統文件】 | 【Tools】 | 【博客註解】 |
| UIAlertView.h | 【系統文件】 | 【Tools】 | 【博客註解】 |
| UIActivityIndicatorView.h | 【系統文件】 | 【Tools】 | 【博客註解】 |
| UIActionSheet.h | 【系統文件】 | 【Tools】 | 【博客註解】 |
| 【UIViewController】 | -- | -- | -- |
| UIViewController.h | 【系統文件】 | 【Tools】 | 【博客註解】 |
| UIVideoEditorController.h | 【系統文件】 | 【Tools】 | 【博客註解】 |
| UITableViewController.h | 【系統文件】 | 【Tools】 | 【博客註解】 |
| UITabBarController.h | 【系統文件】 | 【Tools】 | 【博客註解】 |
| UINavigationController.h | 【系統文件】 | 【【Tools】 | 【博客註解】 |
| UIImagePickerController.h | 【系統文件】 | 【Tools】 | [【博客註解】]() |
| UICollectionViewController.h | 【系統文件】 | 【Tools】 | [【博客註解】]() |
| 【UIGestureRecognizer】 | -- | -- | -- |
| UITapGestureRecognizer.h | 【系統文件】 | 【Tools】 | 【博客註解】 |
| UISwipeGestureRecognizer.h | 【系統文件】 | 【Tools】 | 【博客註解】 |
| UIRotationGestureRecognizer.h | 【系統文件】 | 【Tools】 | 【博客註解】 |
| UIPinchGestureRecognizer.h | 【系統文件】 | 【Tools】 | 【博客註解】 |
| UIPanGestureRecognizer.h | 【系統文件】 | 【Tools】 | 【博客註解】 |
| UILongPressGestureRecognizer.h | 【系統文件】 |【Tools】 | 【博客註解】 |
| 【UIControl】 | -- | -- | -- |
| UIButton.h | 【系統文件】 | 【Tools】 | [【博客註解】]() |
| UIControl.h | 【系統文件】 | 【Tools】 | 【博客註解】 |
| UIDatePicker.h | 【系統文件】 | 【Tools】 | 【博客註解】 |
| UIPageControl.h | 【系統文件】 | 【Tools】 | 【博客註解】 |
| UISegmentedControl.h | 【系統文件】 | 【Tools】 | 【博客註解】 |
| UISlider.h | 【系統文件】 | 【Tools】 | 【博客註解】 |
| UISwitch.h | 【系統文件】 | 【Tools】 | 【博客註解】 |
| UITextField.h | 【系統文件】 | 【Tools】 | 【博客註解】 |
| 【UIBarButtonItem】 | -- | -- | -- |
| UIBarButtonItem.h | 【系統文件】 | 【Tools】 | 【博客註解】 |
| UIBarItem.h | 【系統文件】 | 【Tools】 | 【博客註解】 |
| UITabBarItem.h | 【系統文件】 | 【Tools】 | 【博客註解】 |
| Foundation.h - Annotations & Tools | -- | -- | -- |
| 【NSObject】 | -- | -- | -- |
| NSString.h | 【系統文件】 | 【Tools】 | [【博客註解】]() |
| NSMutableAttributedString.h | [【系統文件】]() | 【Tools】 | [【博客註解】]() |
| NSTimer.h | [【系統文件】]() | 【Tools】 | 【博客註解】 |
| NSNotificationQueue.h | 【系統文件】 | [【Tools】]() | 【博客註解】 |
| NSRunLoop.h | 【系統文件】 | [【Tools】]() | [【博客註解】]() |
| NSDictionary.h | 【系統文件】 | 【Tools】 | [【博客註解】]() |
| OtherFramework.h - Annotations & Tools | -- | -- | -- |
| runtime.h | 【系統文件】 | 【Tools】 | 【博客註解】 |
| WKWebView.h | 【系統文件】 | [【Tools】]() | [【博客註解】]() |
| 【UIKit-JKCategories】 | 【Tools】 | -- | -- |
| 【MyUIKit-Extension】 | 【Tools】 | -- | -- |
| 【UserNotificationiOS10】 | 【系統文件】 | 【Tools】 | 【博客註解】 |
| 【iOS11】 | [【系統文件】]() | [【Tools】]() | [【博客註解】]() |
| 【ProjectFile】 | -- | -- | -- |
| Header.h | 【Tools】 | -- | -- |
| PrefixHeader.pch | 【Tools】 | -- | -- |
| 11 | 22 | 33 | 44 |
| 未完待續 ! | 未完待續 ! | 未完待續 ! | 未完待續 ! |
| 歡迎留言補充 ! | 歡迎留言補充 ! | 歡迎留言補充 ! | 歡迎留言補充! |

閱讀源碼 || 系統文件,不僅能使我們了解作者的功能實現方式,方便我們運用其功能,快速的fix使用中遇到的bug,更重要的是在閱讀優秀源碼時體會作者的設計思想和架構設計,具體的技術很快就會過時,優秀的設計思想卻會歷久彌新,給我們今後編碼以很大的借鑒和啟迪。向優秀的開源者致敬! 向優秀的分享者致敬!

總之,學習一門語言 & 控件,需要追根溯源,才好提綱切領,即能掌握全局,又能深入細節。從系統文件出發,結合事件業務邏輯處理的機制,再深入到各個功能點或再次封裝,就會 胸有成竹而不亂陣腳了。

Framework Annotations Demo

Framework ( Tools ) Demo

GitHub Project Address

溫馨提示:【真的不點進去閱讀一下 ?】
[更多有關本文系統文件的屬性和方法及常用功能代碼案例,請移步這裏]()

→【Framework-Annotations & Tools註解工具類】??

→【Apple官方譯文&GitHub框架源碼註解】??

期待


  • 如果在閱讀過程中遇到 error,希望你能 Issues 我,謝謝。

  • 如果你想為【本工程】分享點什麽,也希望你能 Issues 我,我非常想為這篇文章增加更多實用的內容,謝謝。

  • 對本專題我會【不定時、持續更新、一些 學習心得與文章、實用才是硬道理】^_^.

About me


【博客】 【簡書】 【掘金】 【公眾號: 白開水ln】 【譯文 & 源碼】 【工具類】

【白開水ln】:(我) 得文章【對你有新思想 或是 習慣】,你的 「Star & Fork」 是對我最大的贊賞 !


| ?? 分享是你我熟悉的味道 ?? 未完待續 !?? |
| :-: |
| :??????: |
| To be continued ?? Plain boiled water ?? To be continued |



Tags: 框架 管理 註解 技術 包含 服務

文章來源:


ads
ads

相關文章
ads

相關文章

ad