Rumah Media Sosial Bagaimana Menggunakan Notasi Java Script di Applikasi iOS Apps - dummies

Bagaimana Menggunakan Notasi Java Script di Applikasi iOS Apps - dummies

Video: NativeScript Tutorial for Beginners - Build iOS, Android and Web Apps with NativeScript and Angular 2024

Video: NativeScript Tutorial for Beginners - Build iOS, Android and Web Apps with NativeScript and Angular 2024
Anonim

Notasi Objek JavaScript (JSON) telah menjadi standar de facto dalam hal mewakili data di aplikasi iOS. Anda dapat menggunakan JSON untuk mentransfer data ke seluruh web dan sebagai format untuk menyimpan dan mengambil data lama. JSON mudah terbaca dan mudah dipahami oleh mesin. Data di JSON bisa berada di salah satu dari dua struktur:

  • Objek yang terdiri dari pasangan nama-nilai yang tidak dipesan. Setiap nama-nilai sesuai dengan atribut objek. Setiap pasangan nama-nilai dapat disarangkan, seandainya atribut yang diwakili bersifat hirarkis.

  • Kumpulan nilai yang dipesan. Setiap nilai dalam array bisa berupa skalar (nilai Boolean, string, atau number), objek, atau array.

Di Tic-Tac-Toe, JSON mewakili keadaan permainan. Status ini terdiri dari:

  • Pemain saat ini (pemain 1 atau pemain 2) diwakili sebagai bilangan bulat (0 untuk Player 1, dan 1 untuk Player 2).

  • Keadaan permainan - apakah itu aktif atau lengkap; jika sudah lengkap, apakah itu menang atau ditarik; dan jika menang, oleh siapa.

    Negara bagian juga diwakili sebagai bilangan bulat, dengan Inactive being -1, Active being 0, Won menjadi 1, dan Draw menjadi 2.

  • Keadaan grid - yaitu simbol apa hadir di masing-masing kuadrat di grid. Perhatikan bahwa simbol diwakili sebagai nilai integer 0, 1, dan 2, yang masing-masing berlaku untuk Blank, X, dan O.

  • Simbol saat ini (yang akan diputar pada langkah selanjutnya). Di sini (dan hanya untuk memvariasikan contohnya), kami mewakili simbol itu sebagai string "X" atau string "O" atau huruf kosong ("").

  • Jumlah putar (jumlah gerakan yang dilakukan pada titik saat ini dalam permainan) direpresentasikan sebagai bilangan bulat.

Dalam kode ini, kami menunjukkan objek JSON yang sesuai dengan Game Tic-Tac-Toe yang aktif dan aktif:

{"TTTGameKeyCurrentPlayer": 0, "TTTGameKeyState": 0, "TTTGameKeyGridState": "2, 1, 2 JSON dengan mudah memetakan ke struktur data yang tersedia (seperti array, struktur, dan objek) dalam bahasa Inggris, "TTTGameKeyCurrentSymbol": "X", "TTTGameKeyPlaycount": 8}

hampir setiap bahasa pemrograman. Bentuk objek dari JSON dengan mudah memetakan ke objek bahasa pemrograman atau struktur, sedangkan bentuk array dari JSON dapat memetakan ke array, vektor, daftar, atau urutan, pada dasarnya apapun struktur data dapat menyimpan kumpulan benda yang dipesan.

Di Tic-Tac-Toe, objek JSON yang sesuai dengan keadaan permainan dipetakan ke NSDictionary, karena objek NSDictionary juga terdiri dari pasangan nilai nested name.Akibatnya, ketika Anda harus menyimpan keadaan permainan, Anda mendapatkan negara sebagai objek NSDictionary dan kemudian mengubahnya menjadi string JSON.

Saat Anda memulihkan keadaan permainan, Anda melakukan hal yang sebaliknya - Anda membaca dalam data JSON dan mengubahnya menjadi objek NSDictionary dan kemudian menggunakan NSDictionary untuk mengembalikan permainan ke keadaan tersimpan.

Contoh berikut menunjukkan konversi ini dari objek kamus ke JSON dan dari objek data JSON ke string (dari metode saveGame di kontrol tampilan Game Session - file TTTGameSessionViewController m dan h):

- (IBAction) saveGame: (id) pengirim {NSDictionary * savedGameDictionary = [activeGame toDictionary]; Kesalahan NSError *; NSData * jsonData = [NSJSONSerialization dataWithJSONObject: savedGameDictionary options: NSJSONWritingPrettyPrinted error: & error]; NSString * savedGameString = [[NSString alloc] initWithData: jsonData encoding: NSUTF8StringEncoding]; NSString * savedGamesFilePath = [NSHomeDirectory () stringByAppendingPathComponent: @TTGAMESESSIONSAVEDFILEPATH]; [savedGameString writeToFile: savedGamesFilePath atomically: YES encoding: NSUTF8StringEncoding error: NULL];}

Metode penting disini adalah metode dataWithJSONObject dari kelas NSJSONSerialization.

Anda dapat melihat operasi sebaliknya (yaitu dari string JSON ke NSDictionary) dalam metode restoreGame pada kontroler tampilan yang sama:

- (IBAction) restoreGame: (id) sender {NSLog (@ "Restoring permainan"); … NSError * restoreError = nil; NSMutableDictionary * savedDictionary = [NSJSONSerialization JSONObjectWithData: opsi [savedGameString dataUsingEncoding: NSUTF8StringEncoding]: NSJSONReadingMutableContainers error: & restoreError]; activeGame = [[TTTGame alloc] initFromDictionary: savedDictionary]; TTTGameGrid * gameGrid = [activeGame getGameGrid]; if (! [activeGame isActive]) [boardView disableInput]; [boardView setGrid: gameGrid]; [gameView redraw];}

Disini metode utamanya adalah JSONObjectWithData, yang melakukan operasi sebaliknya untuk menciptakan Objective-C NSDictionary dari data JSON.

Bagaimana Menggunakan Notasi Java Script di Applikasi iOS Apps - dummies

Pilihan Editor

Adobe CS5 Illustrator Gradient Creation - dummies

Adobe CS5 Illustrator Gradient Creation - dummies

Anda dapat menggunakan Adobe Creative Suite 5 (Adobe CS5) Illustrator untuk tidak hanya membuat gradien serta menerapkannya. Gradien adalah variasi tonal yang digunakan untuk menerapkan efek warna yang berubah dengan lancar. Sebelum memulai proses menciptakan gradien, akan lebih baik jika melepaskan panel Color Anda. Klik tab Color ...

Adobe CS5 Illustrator Live Trace Feature - dummies

Adobe CS5 Illustrator Live Trace Feature - dummies

Fungsi Creative Corustage Adobe Creative Suite 5 (Adobe CS5) memungkinkan Anda menggunakan gambar yang ada dalam karya seni baru Anda. Anda dapat secara otomatis melacak gambar bitmap dengan menggunakan berbagai pengaturan yang berkisar dari seni garis hitam dan putih hingga seni vektor dengan banyak warna yang dapat diekstraksi dari gambar Anda.

Adobe CS5 Ilustrator Object Hiding - dummies

Adobe CS5 Ilustrator Object Hiding - dummies

Menyembunyikan sebuah benda di Adobe Creative Suite 5 (Adobe CS5) Ilustrator digunakan saat objek yang ingin Anda pilih terjebak di belakang sesuatu yang lain atau bila Anda perlu memilih satu objek dan satu lagi berulang kali mengaktifkannya. Kesempatan bagus untuk menggunakan perintah Hide adalah saat Anda membuat teks di dalam bentuk. Seperti ...

Pilihan Editor

Melakukan Analisis Situs Web Lanjutan dengan Omniture - dummies

Melakukan Analisis Situs Web Lanjutan dengan Omniture - dummies

Walaupun paket analisis Web gratis tersedia, Anda mungkin ingin mengeluarkan uang untuk alat analisis yang lebih canggih. Sesuatu seperti Omniture akan melakukan hal itu. Mengapa? Karena ada lebih banyak untuk menjalankan situs Web daripada menarik orang melalui mesin pencari, itulah yang difokuskan oleh banyak alat gratis. Alat berbayar, seperti Omniture, ...

Elemen Penting untuk SEO Mendapatkan Tingkatan Kata Kunci Tinggi - dummies

Elemen Penting untuk SEO Mendapatkan Tingkatan Kata Kunci Tinggi - dummies

Jika lokasi terbaik di web ada di halaman salah satu search engine, Anda perlu mengetahui elemen SEO yang bisa mengantarmu disana. Tempat yang baik untuk memulai adalah dengan kata kunci. Mesin pencari menggunakan proses lanjutan untuk mengkategorikan dan menganalisis penggunaan kata kunci dan faktor lainnya untuk mengetahui ...

Siaran Pers sebagai Sumber Konten SEO - dummies

Siaran Pers sebagai Sumber Konten SEO - dummies

Hal yang menyenangkan tentang siaran pers adalah Anda bisa menggunakannya di situs Anda tanpa izin, dan beberapa di antaranya sudah bisa dioptimalkan mesin pencari. Tujuan siaran pers adalah mengirimkannya dan melihat siapa yang memungutnya. Anda tidak perlu menghubungi pemilik siaran pers, karena ...

Pilihan Editor

Membangun Kode Sarang di Java - dummies

Membangun Kode Sarang di Java - dummies

Anda dapat menulis kode bersarang dengan pernyataan di Java. Pernahkah Anda melihat boneka nakal Rusia Matryoshka yang lucu? Buka satu, dan satu lagi ada di dalamnya. Buka yang kedua, dan yang ketiga ada di dalamnya. Ini seperti itu. (Bicara tentang kesenangan!) Daftar ini menunjukkan caranya. impor java statis lang. Sistem. di luar; impor java util. Pemindai; kelas publik ...

Memanggil Pembuat Java di Android App - dummies

Memanggil Pembuat Java di Android App - dummies

Anda dapat menggunakan panggilan konstruktor Java di Android Anda aplikasi. Panggilan konstruktor menciptakan objek baru dari kelas yang ada. Anda bisa melihat panggilan konstruktor dengan memperhatikan bahwa panggilan konstruktor dimulai dengan kata kunci baru Java: nama BagOfCheese () dan A constructor call yang baru adalah nama kelas Java: BagOfCheese baru () ...

Membuat Custom Code dengan Java API untuk XML Binding (JAXB) - dummies

Membuat Custom Code dengan Java API untuk XML Binding (JAXB) - dummies

Anda dapat Buat kode yang disesuaikan dengan JAXB - Java API for XML Binding. Dengan JAXB, Anda mengambil dokumen XML dan Anda membuat file kelas Java yang sempurna untuk memproses dokumen. Bila kebutuhan Anda berubah dan kelas tidak lagi melakukan apa yang Anda inginkan, Anda baru saja menelurkan yang baru ...