Свифт, как выбрать локальную базу данных для автономного словаря? - PullRequest
0 голосов
/ 01 марта 2019

Я хочу сделать офлайновый переводчик (словарь) с помощью swift 4.

Мне нужен совет, где хранить слова с переводом.Слова с переводом теперь в формате dsl, и я ищу этот конкретный файл, но в среднем поиск занимает 2-3 секунды.

Возможно ли ускорить поиск?Если я помещу слова с переводом в основные данные или базу данных области, это поможет или нет?

1 Ответ

0 голосов
/ 01 марта 2019

Realm Swift позволяет вам эффективно, безопасно и быстро писать слой модели вашего приложения.Вот как это выглядит:

// Define your models like regular Swift classes
class Dog: Object {
    @objc dynamic var name = ""
    @objc dynamic var age = 0
}
class Person: Object {
    @objc dynamic var name = ""
    @objc dynamic var picture: Data? = nil // optionals supported
    let dogs = List<Dog>()
}

// Use them like regular Swift objects
let myDog = Dog()
myDog.name = "Rex"
myDog.age = 1
print("name of dog: \(myDog.name)")

// Get the default Realm
let realm = try! Realm()

// Query Realm for all dogs less than 2 years old
let puppies = realm.objects(Dog.self).filter("age < 2")
puppies.count // => 0 because no dogs have been added to the Realm yet

// Persist your data easily
try! realm.write {
    realm.add(myDog)
}

// Queries are updated in realtime
puppies.count // => 1

// Query and update from any thread
DispatchQueue(label: "background").async {
    autoreleasepool {
        let realm = try! Realm()
        let theDog = realm.objects(Dog.self).filter("age == 1").first
        try! realm.write {
            theDog!.age = 3
        }
    }
}

Для словарного приложения.Я бы определенно пошел с Царством.он использует NSFileProtection и шифрование, чтобы люди не смогли украсть ваши переводческие данные.

Настройка RealmSwift для ваших проектов

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...