原创 OC學習日記11-KVC和KVO

KVC和KVO 前言 相信在OC裏面自學最有難度就是這個KVC和KVO了,很多人都不明白這個東西是什麼,經過老師的講解和我自己的理解,我是這樣看的:KVC是在原來OC舊版本里面還沒有設置器跟訪問器的時候,用於對受保護的成員變量進

原创 OC學習日記-06 封裝、拆包與字符串

字符串 前言 字符串其實就是我們最常用的的NSString,但是它通過oc中爲字符串設定的很多方法,使它成爲一個應用範圍很廣的基本數據類型,我們可以用今天的知識做出簡單的語言屏蔽系統,文字輸入密碼檢測系統等小程序。而首先,我們要

原创 OC學習日記012(一)通知——觀察者模式的另一種形式

注意: 我們隨着學習的深入,在對KVC和KVO以及通知的學習中,我們發現原來簡單的命令行的程序已經不能直觀的反映我們學習的問題了,而且爲了對後面UI的學習,我們可以新建IOS工程裏面的Single View Applicatio

原创 OC學習日記17 (三) get和post

get和post 前言 get和post是我們實現API接口功能所需要的兩種方式,實際上需要哪種根據網站對此的要求,而我們獲取到所要的消息前,根據進程繼續執行與否,我們又分爲同步和異步兩種方式。因此,我們實際上一共要學習同步get

原创 OC學習日記014-單例模式和委託模式

設計模式(用來解決某一特定問題的): 觀察者模式|單例模式|委託模式|工廠模式 單例模式: 什麼時候使用單例模式? 在一個工程中,一些類只需要一個實例變量的時候,我們就可以將這些類設計成單例模式 單例模式的作用? 當一個‘

原创 OC學習日記08-對象與對象之間的關係( 繼承、 複合 、依賴)

對象與對象之間的關係 繼承 複合 什麼是複合: 1個類是由其他幾個類組合而成的,他們之間的關係就叫複合。 複合與繼承之間的區別: 1.滿足繼承的關係:is a 當A類是一個B類,A類可以從B類繼承 2.滿足複合的關係:

原创 OC開發日記02-類和對象

今天主要來分析一下OC的類和對象 面向過程的語言和麪向對象的語言 我們知道,C語言和OC語言最大的區別在於,一個是面向過程的語言,一個是面向對象的語言。 兩者的概念分別是: 面向過程的語言就是分析出解決問題所需要的步驟,然

原创 OC學習日記04-OC中類的屬性

OC中類的屬性 前言 在OC的類中,我們想把自己一些類裏面的變量給隱藏起來,就要用到@protected還有@private,而對這些變量進行賦值還有調用,就要用到設置器(setter)與訪問器(getter),但是我們會發現,

原创 OC學習日記017(一)代碼塊

代碼塊 前言 大多書本上的代碼塊講解非常的累贅和複雜,其實代碼塊我們可以把它理解爲C裏面的函數,就是把一些代碼封裝起來,使它們可以模塊化使用。 代碼塊(block)的聲明與實現 代碼塊的作用 block 允許開發者在兩個對象之間任

原创 OC學習日記03-類和對象(二)OC語言中的方法 、設置器與訪問器、便利初始化函數與便利構造器

類和對象 OC語言中的方法 方法: 類的功能代碼,在(.h)文件中聲明,在(.m)文件中實現。 語法: -|+(返回類型)方法名:參數列表 { //方法體 } (—)表示:實例方法, (+)表示:類方法。 -(vo

原创 OC學習日記01

於我們推遲幾個星期開課,在閒餘時間我把發下來的C先自己看了一遍。之前大一學的C,過了兩年左右,很多細節的地方都忘了,這次自學梳理可以說把一些細節重新記了起來。而且由於結合了IOS看,也掌握了一些新的小知識。IOS開發是以OC語言爲基礎的,

原创 OC學習日記017(二)從網絡下載圖片放到UI界面

NSURL的應用與編碼 步驟: 我們下載圖片時,其實只需要先獲取圖片相對應的URL,然後通過NSDATA類型的方法去獲取(下載)圖片的數據,就可以得到我們要的圖片了。 第一步: 這裏我們要去Main.storyboard裏面拉出一個Im

原创 OC學習日記05-封裝、繼承和多態

封裝、繼承和多態 前言 我們常說,OC語言中的三大特徵是封裝、繼承和多態,這三大特點本質來說就是可以讓我們的代碼“活”起來,不再是牽一髮動全身類型的代碼,讓我們開發者可以在改變、增添功能時,不再需要去基類去調整我們的代碼,只需要書寫好新

原创 OC學習日記07-數組

數組 不可變數組 初始化創建一個數組(NSArray)對象 NSArray *array1=[[NSArray alloc]init]; NSArray *array2=[NSArray array]; 創建

原创 UIButton

UIButton UIButton相關常用方法和屬性 能夠定義的button類型有以下6種: typedef NS_ENUM(NSInteger, UIButtonType) { UIButtonTypeCustom