Dmitry
правильно, зачем простое решение, лучше нагородить костылей
Victor
Я сейчас повозился со своим Свифт кодом, который писал просто чтобы на Свифте пописать… Хотелось провалиться под землю или застрелиться… там «!» на «?» сидят… ни каких if let и guard.
Victor
Интересно, это только у меня такой жуткий первый опыт, или это обычно для Свифта?
Anton
Знакомая история
Serhii
На первом Свифте guard не было
Anonymous
Serhii
Ну и в целом да, перейдя с обжСи опционал что-то новое, от сюда и анрапы
Anonymous
Александр
Пару десятков крашей из-за force unwrap - и привычка проверять абсолютно все вжигается в мозг навсегда. Но obj-c с проверкой на null это тоже касается так-то
Victor
Victor
Сейчас-то я так уже не пишу. Но тот контроллер очень страшный… :)
Anonymous
Anonymous
Victor
Когда IBOutlet ещё не задан на момент didSet проперти моих :)
Anonymous
Я про обжси
Serhii
Ну ты ещё кордату прикрути на свифте , тоже весело по началу было
Anonymous
В свифте -всегда
Victor
Я про обжси
А, ну да, там иногда просто 0 подставляется, и это меня устраивает
Anonymous
Ну как ноль. Но в любом случае не падает
Александр
Хм, то, что непредсказуемое поведение лучше, чем падение на плохом месте - это спорный вопрос
Anonymous
Никто ж не говорил, что это лучше
Александр
в крашлитикс пришел краш с указанием строчки, быстро пофиксил и доволен. А тут ничего не приходит, пользователи бугуртят, ибо какая-то штука не отвечает на какой-то селектор. Его еще найти бы)
Tim
Ребят, а кто как решает задачу мержа данных?
Например, есть уже загруженные с сервера данные в CoreData. У них есть кастомные свойства уже измененные пользователем. И тут с сервера надо загрузить новые данные. Дропать базу - не вариант - там пользовательские свойства уже есть.
Вот есть ли какой-то общепринятый способ сохранить измененные пользователем свойства и в то же время обновить поля, пришедшие с сервера?
Или только вручную в цикле это все проходить и мержить? Только так?
Деда
Виталю на вас не хватает
Anton
Нас много, а виталь один
Anton
Tim
ну да, чудес не бывает, я понимаю
Tim
Вообще есть задумка изменить модель данных. Пользовательские свойства держать отдельно. Тогда обновить потребуется только relation
Деда
у тебя данные только на сервере появляются? или могут создаться локально и отправится на сервер?
Tim
только на сервере.
Деда
Тебе нужно хранить постоянно актуальное состояние без инета?
Tim
но юзер может делать пометки для себя. Они так и останутся локальными пометками, никуда не отправятся.
Tim
Деда
Деда
Я даже и придумать то ничего не могу альтернативного этому
Деда
А почему локальные пометки не хранить на сервере?
Деда
Переустановил приложение, авторизовался а тут все данные подтянулись и ничего не потерял
Деда
А получается сменил телефон и все посеял?
Tim
это не страшно 🙂 эти данные нужны максимум на неделю-две.
Деда
понял
Victor
Ну тут простейший вариант, имхо. Апдейт по ключу
Victor
Надеюсь айдишники у данных есть?
Victor
CoreData - это же субд
Захар
Захар
Sergey
Ребята, а есть возможность как-то определить тип изображения (jpg, png, gif) и его физический размер для UIImage? Про размер вроде нашел, вот код https://pastebin.com/58jkfLaf. Кейс: нужно перед заливкой проверить физический размер и если он больше 5МБ не заливать, также проверять тип файла и давать заливать только jpg, png, gif
Деда
😀
Деда
Серег, а UIImagePickerController какие еще типы может вернуть кроме jpg, png и gif ?
Victor
Ну дайте людей научить думать…
Sergey
да я хз, может всякие tiff или еще что-то
Sergey
т.е. он кроме jpg, png и gif ничего не фозвращает?
Victor
Victor
Ну гугл же…
Victor
Первый результат: https://stackoverflow.com/questions/47916207/how-to-get-image-extension-format-from-uiimage-in-swift
Valery
Victor
Правда нужно уметь пользоваться SO… тут правильный ответ не тот что с галочкой
Victor
Valery
Дакдакго?
вообще искать решения самому не модно
Valery
Sergey
да эти решения что-то не вызывают доверия, смахивает на костыли
Valery
Костыли это то, что ты хочешь придумать
Valery
И это как раз галочный ответ
Victor
Ну как можно не понимать, что не рисуют на экране jpeg или png, а рисуют пиксели конкретные? UIImage - это объект для рисования на экране… логика же
Sergey
а галочный ответ сработает если изображение с камеры?
Valery
Только он и сработает
Valery
а стоп
Valery
галочный как раз нет
Sergey
а если из галереи
Valery
выше я писал про heic
Деда
jpeg или что то еще
Sergey
понял, спасибо!
Valery
Блэт именно это же написано на СО
Dmitry
Как хорошо, что это не канал OpenGL разработки. Боюсь только представить сколько там дебильных вопросов.