Vladimir
так не бывает :)
Aleksandr
ну или просто пробовал)
Vladimir
я по выходным немного ковыряю) сложновато, всё по другому
Сергей
Aleksandr
надо будет тоже на досуге попробовать
Aleksandr
в одной комнате сидим с андроидниками, от них мата слышно меньше, чем от айосников))
Stanislav
есть, кто легко и безболезненно пробовал перейти в Android разработку?
Я тыкал. Не совсем безболезненно, т.к. в андроиде некоторые очевидные вещи сделаны криво (например определить, если на экране клавиатура, предлагается сильно череж ж). Но в целом ява сама по себе очень приятная. Дебажить тоже вполне себе удобно. Эмулятор помедленнее, но жить можно. На стеке есть ответы на всякие глупые и не очень вопросы
S
Ха я на первой работе как работал. год был опыта на ios. Так сказать beginer. Ко мне приходит пм и говорит с через 2 недели ты синьер разработчик на андроид проекте...
S
Неа. 3 дня я разбирался а потом заказчик спрыгнул.... На этом моя карьера и закончилась...
Max
:)
Ilkhom
в одной комнате сидим с андроидниками, от них мата слышно меньше, чем от айосников))
они просто с дроидом натренированы подавлять свой гнев
Stanislav
и зоопарк девайсов и версий поддерживать сложнее, я так понимаю
Ну не знаю. Я делал простенькое приложение типа викторины (для себя), по сути те же TableView, только называются по-другому. Вроде бы везде норм работало (с Support Library, это у них такой костыль чтобы новые фичи на старых ОС работали), даже на 2.3, и распознавалку паспортов, там и NDK и OpenCV - ну в целом тоже норм
Stanislav
У меня больше проблем было когда под мак попробовал писать, там что-то фиг найдешь ответы сходу даже на довольно простые вопросы (как сделать drag and drop в finder из NSTableView например)
Ilkhom
NSTableView😱
Stanislav
Да-да 😄 Вообще если посмотреть на маковские классы, то сразу видно, что в iOS они их неплохо почистили и упростили
Stanislav
Особенно UI как раз
Aleksandr
Aleksandr
ну точнее, одинаково по времекни ушло знакомство с FX и Cocoa для мака
Aleksandr
это в универе было для лабы по быстрому)
Ivan
https://github.com/peter-iakovlev/Telegram
Это точно так же версия, что и в AppStore? Вроде слышал что отошли от акторов.
Ivan
Да-да 😄 Вообще если посмотреть на маковские классы, то сразу видно, что в iOS они их неплохо почистили и упростили
Там основная проблема была что NSView работает с событиями мыши, а в iOS касания. Вот и сделали UIView. Не получилось легко перенести как с другими NS классами.
Stanislav
http://fuckingswiftblocksyntax.com/ хорошее название сайта и первая же ссылка в гугле при вопросе о блоках в свифте
Anonymous
для обжси это как-то более актуально было
Anonymous
у свифта же простой синтаксис
Jian Yang
Везде пиздец
Stanislav
у свифта же простой синтаксис
Пока почему-то кажется наоборот
Vlad
Везде пиздец
везде, где непривычно
Stanislav
Хотя в итоге прикольно. Что-то типа let block = { someAction() } пишешь, и никакие void лишние не нужны
Jian Yang
Jian Yang
Jian Yang
Jian Yang
правда если шаг нужен будет 0.05 то такое не пойдет(
denis
гайз, какой ваш вариант ответа? желательно с пояснением —------— Какой тип блока по расположению в памяти определяется в следующем фрагменте кода: int main(int argc, char * argv[]) { @autoreleasepool { NSString *(^someAction)(void) = ^{ return @"someAction"; }; NSLog(@"%@ ", someAction()); } return 0; } 1. Temporary block 2. Heap block 3. Permanent block 4. Global block
denis
вообще бы конечно посмотреть в глаза тому майлрушнику который составлял этот вопрос..
Anonymous
а какие вообще типы "блоков" бывают?
denis
а какие вообще типы "блоков" бывают?
это уже будет ответом на тест)
Anonymous
Filipp
он вроде для сравнения предыдущего значения и нового
denis
2
почему?
Jian Yang
почему?
слишком много вопросов 😂
denis
слишком много вопросов 😂
я бы ответил stack, но такого варианта нет
Anonymous
ну так это темпоари, не?
Jian Yang
тупо пальцем в небо
denis
ну так это темпоари, не?
да, я так и попробовал – фейл) "heap" тоже сказали что неправильно
Jian Yang
50х50 потрачено
Jian Yang
помощь зала тож
Anonymous
это уже будет ответом на тест)
временный блок. Да, блок определенно временный. Потому что скорее всего он умрет. Хотя не факт. Блок кучи. Что? Блок, создаваемый из кучи. действительно. someAction создается из кучи. На это намекает звездочка. Постоянный блок. Ну он точно не постоянный. Не забивает память. Или забивает, если не используется ARC? Глобальный блок. Не похож, потому что находится внутри функции. Но функция находится в статической памяти. Но все еще не глобальный! Итак память на создаваемый блок точно берется из кучи. А потом еще и высвобождается, если используется arc. Если используется /mrc, то не высвобождается, поэтому блок можно будет назвать постоянным и нельзя назвать временным. Короче точно 2.
denis
терминов 1 и 3 я вообще не слышал, 4 тут явно не подходит, потому что не глобальный скоуп
Anonymous
ааа, звездочка идет к NSString
Stanislav
ааа, звездочка идет к NSString
Да. Лучше бы такое писать так: NSString* (^someAction)(void) = ^{ return @"someAction"; };
Anonymous
почему это я бобер??
denis
почему это я бобер??
фразеологизм, не обращай внимания)
Jian Yang
используй метод distinct
нету такого метода у сигнала(
Filipp
нету такого метода у сигнала(
эх, можно написать тогда. Самое элегантное решение - сделать свой, добавив параметр блок для сравнения https://github.com/ReactiveCocoa/ReactiveObjC/blob/1180ab256000573ef82141e5d40e9b9c35dfd69c/ReactiveObjC/RACStream.m
Filipp
Filipp
такой точно есть)
Jian Yang
или combinePreviousWithStart:
да такой есть) надо будет погуглить спасибо большое за помощь!
denis
правда если шаг нужен будет 0.05 то такое не пойдет(
чуть формулу поменять просто – trunc(progress*20)/20.f
Jian Yang
тода так
Stanislav
Пипец я сейчас себе ноги отстрелил с перебросом блоков из Swift в Objective C. Если не указать явно тип блока в функции, а юзать id (или Any), то все упадет к чертям. Справедливо и для обратного случая (если кидать Obj C блок в Swift)
denis
trunc(progress*500)/500.f
непонятен ход твоих мыслей. и это выражение не будет округлять с шагом 0.05
Jian Yang
непонятен ход твоих мыслей. и это выражение не будет округлять с шагом 0.05
если на 100 то шаг 0.01 умножаем на 5 для того чтоб получить выборку больше
denis
нет
Jian Yang
или я чет жестко туплю
denis
да
denis
😄
Petr
Всем привет!
Petr
Мне требуется сделать приложение дополненной реальности без маркеров. Кто знает какие нибудь библиотеки фреймворки?
Alfred
гайз, какой ваш вариант ответа? желательно с пояснением —------— Какой тип блока по расположению в памяти определяется в следующем фрагменте кода: int main(int argc, char * argv[]) { @autoreleasepool { NSString *(^someAction)(void) = ^{ return @"someAction"; }; NSLog(@"%@ ", someAction()); } return 0; } 1. Temporary block 2. Heap block 3. Permanent block 4. Global block
это глобал блок. Есть три типа – стэк, хип и глобал. если блок не захватывает какие либо переменные – это глобал блок. Если захватывает, то на момент создания это будет стэк блок, при присваивании блока к переменной в arc он сразу перемещается на хип.
Alfred
вообще бы конечно посмотреть в глаза тому майлрушнику который составлял этот вопрос..
посмотри на себя в зеркало и признай что ты еще не развился до соответствуещего уровня что бы там работать, чем катить бочку на мейлру.