Простейший подход состоит в том, чтобы обеспечить селектор сортировки ( документация Apple для деталей)
Objective-C
sortedArray = [anArray sortedArrayUsingSelector:@selector(localizedCaseInsensitiveCompare:)];
Swift
let descriptor: NSSortDescriptor = NSSortDescriptor(key: "YourKey", ascending: true, selector: "localizedCaseInsensitiveCompare:")
let sortedResults: NSArray = temparray.sortedArrayUsingDescriptors([descriptor])
Apple предоставляет несколько селекторов для алфавитной сортировки:
compare:
caseInsensitiveCompare:
localizedCompare:
localizedCaseInsensitiveCompare:
localizedStandardCompare:
Swift
var students = ["Kofi", "Abena", "Peter", "Kweku", "Akosua"]
students.sort()
print(students)
// Prints "["Abena", "Akosua", "Kofi", "Kweku", "Peter"]"
Несколько лет назад я присутствовал на панели SXSW под названием «F * ck Standards», которая была посвящена отходу от стандартов, когда это имеет смысл. На панели был инженер Google, который рассказывал о том, что главная страница Google не прошла проверку, об использовании устаревших тегов и т. Д. Он сказал, что все дело в производительности. Он специально упомянул рендеринг макета с таблицами, превосходящими в этом случае div и CSS. Пока страница работала для пользователей, они предпочитали производительность стандартам.
Это очень простая страница с высоким трафиком, поэтому она имеет смысл. Я полагаю, что если вы создаете сложное приложение, этот подход может плохо масштабироваться.
Из первых уст.
Потому что это самый простой и краткий способ выполнить работу.
, безусловно, устарел, но пока он все еще поддерживается, вы, вероятно, все еще увидите, что они его используют.
Короче поля: 0 авто. Быстрее разбирается. Это действительно HTML4. Никаких внешних зависимостей, поэтому меньше HTTP-запросов.
Удобство использования НЕ является достоверностью.
Самым большим достижением Google Search было создание сайта, который прост в использовании и может широко использоваться. Итак, если Google добился этого с помощью страницы, которая не проверяется, что ж, есть урок, который нужно усвоить.
Я думаю, что лучше задать вопрос: «Почему Google должен проверять, работает ли он нормально?» Для пользователя это не имеет значения.
Были предположения и обсуждения о том, было ли это намеренным; базовый тест, проведенный по первой ссылке, действительно приводит к уменьшению страницы и даже к сжатию с помощью gzip, через миллионы просмотров страниц она теоретически накапливается. Я сомневаюсь, что причина в этом: он был создан, протестирован во многих браузерах в то время, работал и продолжает работать.
Google по многим причинам нарушает проверку подлинности на своей домашней странице. Наиболее вероятная реальная причина - все они связаны с затратами на скорость и пропускную способность. Обратите внимание на размер HTML домашней страницы, особенно после применения Gzip на уровне пакетов. Они явно пытаются избежать фрагментации пакетов (что будет означать большую пропускную способность) и готовы сделать все возможное для ее получения (сокращение идентификатора, удаление кавычек, устаревшие теги, удаление пробелов и т. Д.
Если вы посмотрите на это просто в качестве вопроса о достоверности, хорошо, но они специально нарушают правила , если вы не предполагаете этого, конечно, вы можете сделать отрицательный вывод. Кстати, вы можете дополнительно оптимизировать их страницы как в положительном, так и в отрицательном смысле, но почему, оказавшись внутри типичного пакета, это несколько бессмысленно.
Конечно, он устарел, но я думаю, что простота - это ответ на ваш вопрос.
Они также используют другие устаревшие теги представления, такие как font и u. Я предполагаю, что это ускоряет загрузку страницы, чем использование внешней таблицы стилей, и позволяет ей работать на большем количестве платформ.