91超碰碰碰碰久久久久久综合_超碰av人澡人澡人澡人澡人掠_国产黄大片在线观看画质优化_txt小说免费全本

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

Your first iOS app(8)——Using Design Patterns

發布時間:2020-06-13 23:26:49 來源:網絡 閱讀:283 作者:三無青年 欄目:移動開發

Using Design Patterns

使用設計模式


設計模式解決通用軟件工程問題。模式是抽象設計,沒有代碼。當你采用設計時,你是使用通用模式到你的特殊需求中區。不管你創建何種類型的app,都應該很好的知道框架中采用的基本設計模式。理解設計模式幫助你高效的使用框架,并且允許你編寫更加可復用性、更加可擴展性和更加靈活的app。



MVC

模型視圖控制器 (MVC)是所有iOS app良好設計的核心。MVC把在app中的對象分為三種角色:模型、視圖、和控制器。在這個模式中,模型與app的數據保持聯系,視圖顯示你的用戶界面并組成app的內容,控制器管理你的視圖。通過響應用戶的動作和使用內容填充視圖,控制器承擔起了模型和視圖之間通信的功能。


當你在建立ToDoList app的時候,你是跟隨著以MVC為核心的設計。你在故事板中建立的界面組成視圖層。XYZAddToDoItemViewControllerXYZToDoListViewController是控制器管理你的視圖。在Tutorial: Add Data中,你將合并數據來為app中的視圖和控制器工作。當你開始設計你自己的app的時候,在你的設計中保持MVC的核心位置是非常重要的。


Target-Action

目標-動作

目標-動作 是一個簡單概念的設計模式,它在特定事件發生時,由一個對象發送消息到另一個對象。動作消息是一個在源代碼中定義的選擇器,而目標——接收消息的對象——是有能力執行動作的對象,通常是一個視圖控制器。用作發送動作消息的對象是控件——例如按鈕、滑塊、開關——他們能觸發一個事件來響應用戶的交互,例如輕拍、拖拽或者值改變。

例如,想象你想要在你的app中恢復默認設置,用戶就輕拍Restore Defaults按鈕(在你的用戶界面創建)。首先,你實現一個動作,restoreDefaults:,來實現恢復默認設置。然后,你注冊按鈕的Touch Up Inside事件到restoreDefaults:發送動作方法到視圖控制器來實現該方法。



你已經在ToDoList app中使用了目標-動作模式。當用戶輕拍XYZAddToDoItemViewController中的Done按鈕的時候,它的觸發的是unwindToList動作。在這種情況下,Done按鈕是發送消息的對象,目標對象是XYZToDoListViewController,動作消息是unwindToList,這個事件觸發動作消息被發送是用戶輕拍了Done按鈕。目標-動作模式是一個app中的不同部分定義交互并發送消息的強大的機制。


Delegation

委托模式

Delegation委托 is a simple and powerful pattern in which one object in an app acts on behalf of, or in coordination with, another object. The delegating object keeps a reference to the other object—the delegate—and at the appropriate time sends a message to it. The message informs the delegate of an event that the delegating object is about to handle or has just handled. The delegate may respond to the message by updating the appearance (or state) of itself or of other objects in the app, and in some cases it will return a value that affects how an impending event is handled.


委托設計模式在框架類中普遍存在,但你也能在兩個自定義的對象中實現代理。常見的設計使用委托意味著允許子視圖控制器與父視圖控制器要進行值(通常是用戶輸入的值)的交流。

你還不能使用代理模式,但在Tutorial: Add Data中,當你添加額外的行為到你的XYZToDoListViewController類中時,你將看到一個它的例子

這些都是一些常用的設計模式,你將在iOS開發中遇到他們,但還有更多的。當你學習更多的關于Objective-C的知識的時候,你將發現你能使用其他的設計模式到你的app中。

Incorporating the Data

Working with Foundation

Copyright 2014 Apple Inc. All rights reserved. Terms of Use | Privacy Policy | Updated: 2013-10-22






向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

巩留县| 长治市| 麻栗坡县| 顺平县| 隆化县| 吉林市| 扎赉特旗| 汽车| 康马县| 蕲春县| 女性| 遂川县| 克拉玛依市| 鄯善县| 宜阳县| 汉沽区| 江北区| 奉化市| 白朗县| 邢台市| 临朐县| 康乐县| 瑞安市| 田东县| 苍梧县| 泾阳县| 来宾市| 会昌县| 团风县| 潍坊市| 长泰县| 呼和浩特市| 宽城| 奉节县| 惠安县| 洞头县| 广南县| 泗水县| 贵南县| 磐安县| 镇原县|