Anonymous
мне кажется, что ты не тот проект для старта выбрал. хотя вникай если есть время и желание
Vadim
в телеграме все сделано чисто как сишники пишут, файлы по 1к+ строк
Vadim
но у них это оправдано, много кода шарится между платформами
Vadim
если сможешь это дело мейнтейнить то похер
Vadim
у них на платформу один разраб, так что там пофиг
Vadim
бизнесу главное результат
Vadim
проще же поддерживать
Vadim
ну мне видится так, что они делают просто все в одном стиле, нежели один бы херачил вайпера, другой еще чего
Vadim
чтобы проще было это слить в одно и заюзать на другой платформе
Vadim
кор у них между десктопом и мобилой делится
Vadim
Тогда почему не реакт?
потому что он говно
Anonymous
ну так это делается модулями, а это же != один файл
Anonymous
Тогда реально один почти кодстайл и принцип
Александр
Пару дней тоже самое хотел сказать. Но там API такое, каждая функция имеет что-то вроде числового endpoint’а
Anonymous
Подскажите |> что это за оператор такой в Свифт?
вот отсюда это все https://github.com/peter-iakovlev/Signals/blob/master/SwiftSignalKit/Signal.swift
Vadim
21к строк апишка, чет я туда не заглядывал
Александр
вот отсюда это все https://github.com/peter-iakovlev/Signals/blob/master/SwiftSignalKit/Signal.swift
Signal - это телеговская библиотека реактивного программирования, которая вышла "под вдохновлением" от ReactiveCocoa и других аналогов. Скорее всего, это оператор одностороннего биндинга
David
А какой метод сортировки? Не займёт ли сортировка O(n^2)?
Они в коробке как правило занимают n log n
Александр
а не, судя по исходникам, оператор похож на оператор маппинга
Александр
по идее вот на это должно мапиться https://hackernoon.com/operator-in-scala-cbca7b939fc0
Таки да. В общем, этот оператор применяет ко всем данным, находящимся по левую сторону оператора функцию, находящуюся по правую сторону
Vadim
21к строк апишка, чет я туда не заглядывал
так то там можно было на дженериках здорово сократить количество копипаста по-моему
Александр
https://github.com/peter-iakovlev/TelegramCore/blob/master/TelegramCoreTests/TelegramCoreTests.m Даже крупные компании обходятся без TDD?
Александр
крупные по каким параметрам? там один разраб делает это
Сурово. Комментариев в коде нет, названий у коммитов нет, но при этом телега стабильный продукт. Разраб гений, серьезно.
Vadim
ну там чуваки явно сильные сидят
Donna
А почему, кстати?
Vadim
ошибка фронта дешевле бэка например
David
ну эт мак ось, хотя на мобиле тож самое
Александр
У меня закралось подозрение, что коммиты перед пушем на гитхаб переименовывают просто, а в исходниках вычищают комментарии, чтобы агентам ФиБиАй было тяжелее делать свои черные дела)
Vadim
кор шарится между обоими платформами
Vadim
для фби интерес весь на бэке лежит
Vadim
клиент всегда должен быть максимально тупым
David
было бы забавно еслиб этот разраб потом пошел бы на собесед в какую-то контору где почитается вайпер/tdd и вот и это всё, но при этом он бы не упоминал что работал в телеге. Интересна реакция собеседующих будет на его стиль кода 😄
Александр
для фби интерес весь на бэке лежит
iOS, если грубо округлить, тоже тянет на "клиент", но при это интерес к дырам в ней у фибиай огромный. Есть дыра в мобиле - есть и айклауд)
David
ты еще не понял что для каждой задачи есть свои инструменты, а не наоборот
только сейчас вот обратная тенденция наблюдается
Александр
иос это операционная система, а не клиент
Я понимаю. Но данные в ней, несмотря на то, что сейчас все в облаках хранится, все равно интерес представляют не меньший
David
только сейчас вот обратная тенденция наблюдается
ладно еще среди разработчиков, но и среди работодателей
Vadim
среди галер*
Александр
там интерес представляют данные, контакты, смски, соцсети, а не сама ос
В общем, моя общая идея, которую я хотел бы высказать в начале, заключается в том, что тележный клиент есть смысл ломать. Если есть физический доступ к телефону, но на чатах стоит пароль локальный, то есть смысл искать обход этого пароля.
Деда
Недавно такой срач был
Деда
Я говорил что клиент должен быть тупым
Деда
В ответ услышал дохера плохого от серверных разработчиков
Vadim
ленивые уебки
Vadim
:D
Деда
Вадим, если не сложно расскажи в целом что имеется ввиду под твоими словами
Деда
Мне это в копилку знаний будет
Serhii
Ты не правильно делал. Нужно было сказать, вот на клиенте это нельзя сделать. У нас так андроидщики всегда ныли))
Деда
Не, нужна была конкретика
Деда
Или это стеб?
Vadim
клиент должен реализовывать минимум бизнес логики, то есть получать модель и отображать, но не более, он не должен управлять зависимостями, или диктовать логику серверу все изменения на сервере должны применяться и на клиенте, поэтому тупой клиент будет еще посложнее написать на самом деле
Vadim
он должен быть по сути динамическим
Donna
он должен быть по сути динамическим
В каком смысле - динамическим? Браузер на мобильном уже есть :))))
Vadim
в том что он должен уметь подстраиваться под данные, без хардкода и всякой херни
Vadim
приложение на мобилку тот же сайт, только нативный
Деда
Вот к примеру в соцсети есть два пола, эм и жо. В какой то момент решили сделать клон для жо, должен ли клиент отфильтровывать данные только потому что сервер не в хочет или не умеет это делать?
Donna
приложение на мобилку тот же сайт, только нативный
Но в таком случае приложение просто не нужно. Мобильная версия сайта решает
Anonymous
Привет, потому что, когда я запускаю сеанс, а затем я закрываю все приложения, сеанс не остается открытым. Я должен повторно ввести имя пользователя и пароль. Как это?
Serhii
в том что он должен уметь подстраиваться под данные, без хардкода и всякой херни
вот тут не совсем понятно что ты имеешь ввиду. ты говоришь о данных, которые лежат в полях, или о самих поля?
Vadim
Но в таком случае приложение просто не нужно. Мобильная версия сайта решает
как разработчик вы уж должны понимать преимущества приложения над сайтом
Vadim
вот тут не совсем понятно что ты имеешь ввиду. ты говоришь о данных, которые лежат в полях, или о самих поля?
клиенту должно быть без разницы что получать, но при этом он должен все это обрабатывать, понятно что структура должна быть статичной, но данные разные
Деда
А на мой вопрос что скажете?
Serhii
спасибо кэп
Деда
Мне мотивировали у нас бигдата, не должно быть тупых клиентов
Anonymous
yes, the credentials are not saved, I have to re-login, I'm using Firebase 😅
Деда
Ленивые мы или они все же?
Деда
Я психанул и сказал что настоящий бэкендщик это тот кто написал сам клиент к своему api
Деда
Значит ленивые засранцы тоже