Rumah Media Sosial Cara Menggunakan Rekaman Aktif di Aplikasi iOS - dummies

Cara Menggunakan Rekaman Aktif di Aplikasi iOS - dummies

Video: Cara merekam layar dan suara di Iphone 2024

Video: Cara merekam layar dan suara di Iphone 2024
Anonim

Rekaman Aktif adalah pola sederhana, di mana kelas objek model dalam memori diperluas dengan metode yang menangani kegigihan kelas. Berikut adalah contoh yang menggunakan tabel bernama PERSONTABLE untuk mempertahankan objek kelas Person dalam basis data relasional sebagai data store. Ini adalah file antarmuka kelas Person:

@interface Person: NSObject {// Model attributes @private NSString * Name; @private NSString * SSNo;} - (id) init; - (id) initWithOIDNameAndSSNo: (NSString *) OID: (NSString *) aName: (NSString *) aSSNo; - (NSString *) getName; - (NSString *) getSSNo; - (void) setName: (NSString *) aName; - (void) setSsno: (NSString *) aSSNo; - (void) setAsRetired; // Operasi lain, jika ada -d

Hanya metode domain yang ditampilkan di antarmuka ini. Metode tambahan yang dibutuhkan untuk ketekunan didefinisikan dalam protokol Persistable:

typedef enum {BARU, EXISTS, CHANGED, DELETED} STATE; @protocol Persistable // Properties yang dibutuhkan oleh protokol @required @property (copy) NSString * OID; // ID unik di Database @required @property (readonly) NEGARA; + (id) findByOID: (NSString *) OID; - (kosongkan) sisipan; - (void) update; - (void) hapus; - (void) bertahan; -d

Protokol ini menyatakan dua atribut yang dibutuhkan:

  • Atribut OID : Atribut ini menampung ID objek yang akan mengidentifikasi objek secara konsisten dalam penyimpanan data yang persisten.

  • Atribut state : Atribut ini menunjukkan apakah objek

    • baru dibuat dalam memori (negara adalah NEW).

    • Ada dalam database (state is EXISTING).

    • Telah dimodifikasi dalam memori setelah diambil dari toko data (keadaan BERUBAH).

    • ditandai untuk dihapus (negara di-DELETED).

Protokol kemudian menyatakan kumpulan metode yang perlu diimplementasikan kelas. Anda menggunakan metode kelas FindByOid untuk membawa objek dari database ke memori. (Metode seperti itu dikenal sebagai metode finder , dan Anda dapat memiliki banyak jenis dari mereka, seperti findByName, findBySSNo, dan seterusnya.) Pseudocode untuk menerapkan metode ini di kelas Person ditunjukkan di sini:

+ (id) findByOID: (NSString *) anOID {Person * kembaliPerson; // pernyataan SQL untuk mengambil objek dari database // Save diambil NAME dan SSNO di variabel lokal aName dan anSSNo … SELECT NAME, SSNO, dari PERSABLEABLE OID =: anOID INTO: aName,: anSSNo; aPerson = [[Person alloc] initWithOIDNameAndSSNo: anOID: anSSNo]; aPerson-> state = EXISTING; return kembaliPerson;}

Logika dari metode ini adalah sebagai berikut:

  • Pernyataan SQL SELECT yang disisipkan mengambil atribut Name dan Social Security dari objek dari database dan menyimpan nilai-nilai ini di variabel lokal aName dan anSSNo.

  • Variabel ini beserta instantiate OID dan menginisialisasi objek kelas Person dan mengembalikannya.

Selanjutnya, Anda melihat penerapan metode lain dari protokol Persistable, di kelas Person. Metode bertahan disebut kapanpun objek perlu disimpan ke database, seperti yang ditunjukkan di sini:

- (void) bertahan {// Periksa keadaan objek // Jika itu adalah objek baru i. e. state = NEW call [self insert] // untuk membuat entri di PERSONTABLE // If state = EXISTS tidak melakukan apa-apa // If state = CHANGED, panggil update untuk mengupdate database // Jika state - DELETED, hapus hapus untuk menghapus informasinya. // dalam database}

Metode bertahan menggunakan variabel keadaan untuk meminta metode yang tepat untuk kegigihan objek.

  • Jika objek baru dibuat, sebuah record dimasukkan ke dalam tabel objek dengan menggunakan metode insert, seperti yang ditunjukkan di sini:

    - (void) insert {REPLACE INTO PERSONTABLE (OID, NAME, SSNO) NILAI: OID: Nama: SSNo …}
    
  • Jika objek diambil dari database dan kemudian dimodifikasi dalam memori, metode update dipanggil.

    - (void) update {NILAI SET UPDATE PERSONTABLE NAME =: Nama, SSNO =: SSNo WHERE OID =: OID …}
    
  • Jika objek diambil dari database dan kemudian ditandai untuk dihapus dalam memori, hapus metode disebut.

- (void) hapus {DELETE FROM PERSONTABLE WHERE OID =: OID; …}

Perhatikan bahwa metode domain dan metode finder harus mengatur keadaan objek dengan tepat. Akibatnya, init menetapkan keadaan objek ke NEW, findByOID menetapkan negara menjadi EXISTING, setAsRetired berpotensi mengatur negara untuk DELETED, setName, dan setSSNo mengatur negara agar diubah (jika negara asal itu ADA), dan sebagainya di.

Metode domain dan metode ketekunan, oleh karena itu, digabungkan ke tingkat tertentu.

Bila Anda menggunakan Rekaman Aktif untuk menyimpan objek dalam basis data relasional, biasanya memetakan objek ke tabel basis data, dengan variabel persisten objek dipetakan ke bidang di tabel itu.

Semua logika pengelolaan siklus hidup dari objek - memutuskan kapan mengambilnya dari database, apakah mengizinkan contoh duplikat di memori yang sesuai dengan objek yang sama dalam database, kapan harus menyimpan, kapan harus menghapus objek secara permanen - adalah tanggung jawab aplikasi

Cara Menggunakan Rekaman Aktif di Aplikasi iOS - dummies

Pilihan Editor

Bagaimana Mengidentifikasi Poin Data Penting dalam Pemasaran Otomasi - dummies

Bagaimana Mengidentifikasi Poin Data Penting dalam Pemasaran Otomasi - dummies

Melibatkan penjualan untuk membuat definisi umum untuk semua Aspek siklus hidup utama adalah kunci suksesnya integrasi otomasi pemasaran. Terlibat dengan penjualan agar staf penjualan membantu menciptakan definisi berikut akan mendorong konsep pembelian dan membantu mereka memahami apa yang diteruskan kepada mereka dan mengapa. Memimpin: Menentukan ...

Bagaimana Mengidentifikasi Tindakan Kunci untuk Skor Otomasi Pemasaran - dummies

Bagaimana Mengidentifikasi Tindakan Kunci untuk Skor Otomasi Pemasaran - dummies

Tidak semua tindakan harus diukur dan dinilai . Menjaga proses dan otomasi pemasaran Anda sesederhana mungkin membuat aplikasi Anda lebih mudah dikelola. Memimpin penilaian seharusnya memberi tahu Anda, tidak memberi Anda gambaran yang sempurna. Berikut ini menunjukkan kepada Anda tindakan mana yang akan dinilai dan rincian mana yang akan dinilai dalam tindakan ...

Pilihan Editor

Bagaimana cara menghindari Code Injection di C ++ - dummies

Bagaimana cara menghindari Code Injection di C ++ - dummies

Aturan pertama untuk menghindari kode yang disuntikkan ke program C ++ tidak pernah , pernah, izinkan masukan pengguna untuk diproses oleh penerjemah bahasa tujuan umum. Kesalahan umum dengan injeksi SQL adalah bahwa program menerima masukan pengguna seolah-olah selalu dapat diterima dan memasukkannya ke dalam kueri SQL yang kemudian dikirim ke ...

Bagaimana Menyalin File di C ++ - dummies

Bagaimana Menyalin File di C ++ - dummies

Ah, menyalin file - sesuatu yang sangat sederhana, hal itu terjadi semua waktu. Salin file ini disana; salin file itu disini Tapi apa sebenarnya yang terjadi saat Anda menyalin file? Anda benar-benar membuat file baru, dan mengisinya dengan konten yang sama seperti file aslinya. Dan bagaimana Anda melakukannya? Nah, ...

Cara Membuat Template Matematika Dasar di C ++ - dummies

Cara Membuat Template Matematika Dasar di C ++ - dummies

Dengan template matematika, biasanya Anda memerlukan akses ke banyak perhitungan tapi hanya bisa menggunakan satu atau dua dari perhitungan tersebut dalam satu waktu. Misalnya, jika seseorang menghitung hipotek Anda, dia tidak perlu mengetahui perhitungan amortisasi. Namun, orang tersebut mungkin memerlukan perhitungan amortisasi saat bekerja dengan ...

Pilihan Editor

Tip untuk Pemodelan di Atas Data CAD Impor di SketchUp - dummies

Tip untuk Pemodelan di Atas Data CAD Impor di SketchUp - dummies

Jadi Anda telah berhasil mengimpor CAD menggambar ke SketchUp dan menelanjangi gaya dan lapisan yang terlihat agar lebih mudah diatur. Kudos - saatnya untuk bersenang-senang. Membangun model 3D berdasarkan pada garis dasar CAD secara harfiah dapat menjadi pengalaman yang sangat mengherankan jika Anda mengikuti satu peraturan sederhana: Simpanlah ...

Tips Membersihkan Data CAD yang Diimpor di SketchUp - dummies

Tips Membersihkan Data CAD yang Diimpor di SketchUp - dummies

Jika Anda mengimpor data CAD ke SketchUp, Anda mungkin harus melakukan pembersihan. Sebagian besar waktu, file CAD impor Anda terlihat seperti kekacauan yang ditunjukkan di bawah ini. Dinding, anotasi, garis grid, dan benda-benda lainnya berantakan, dan sepertinya Anda harus menghabiskan sisa minggu ini ...

Bagaimana cara menggunakan titik temu dalam kombinasi dengan tampilan depan, atas, dan samping pada sketchUp - dummies

Bagaimana cara menggunakan titik temu dalam kombinasi dengan tampilan depan, atas, dan samping pada sketchUp - dummies

Siapa pun yang pernah mencoba meniru mobil dengan SketchUp tahu ini adalah usaha yang rumit. Masalahnya adalah mobil (dan kebanyakan kendaraan lain) agak melengkung; Lebih buruk lagi, mereka melengkung di beberapa arah. Salah satu trik yang banyak digunakan pemodel untuk menghalangi bentuk dasar untuk hal-hal seperti mobil adalah memulai dengan ...