
Sergey
31.03.2017
14:19:58
Ха я на первой работе как работал. год был опыта на ios. Так сказать beginer. Ко мне приходит пм и говорит с через 2 недели ты синьер разработчик на андроид проекте...

PihTa
31.03.2017
14:20:37

Sergey
31.03.2017
14:21:40
Неа. 3 дня я разбирался а потом заказчик спрыгнул.... На этом моя карьера и закончилась...

Maksim
31.03.2017
14:22:42
:)

Google

Andrey
31.03.2017
14:23:15

Ilkhom
31.03.2017
14:23:21

Aleksandr
31.03.2017
14:23:31


-_-
31.03.2017
14:25:20
и зоопарк девайсов и версий поддерживать сложнее, я так понимаю
Ну не знаю. Я делал простенькое приложение типа викторины (для себя), по сути те же TableView, только называются по-другому. Вроде бы везде норм работало (с Support Library, это у них такой костыль чтобы новые фичи на старых ОС работали), даже на 2.3, и распознавалку паспортов, там и NDK и OpenCV - ну в целом тоже норм
У меня больше проблем было когда под мак попробовал писать, там что-то фиг найдешь ответы сходу даже на довольно простые вопросы (как сделать drag and drop в finder из NSTableView например)

Ilkhom
31.03.2017
14:31:14
NSTableView?

-_-
31.03.2017
14:31:59
Да-да ? Вообще если посмотреть на маковские классы, то сразу видно, что в iOS они их неплохо почистили и упростили
Особенно UI как раз

Aleksandr
31.03.2017
14:33:12
ну точнее, одинаково по времекни ушло знакомство с FX и Cocoa для мака

Andrey
31.03.2017
14:34:09
JavaFX
мм... некрофилия

Aleksandr
31.03.2017
14:34:44
это в универе было для лабы по быстрому)

Ivan
31.03.2017
14:48:16

Google

Ivan
31.03.2017
14:49:39

-_-
31.03.2017
14:49:56
http://fuckingswiftblocksyntax.com/
хорошее название сайта и первая же ссылка в гугле при вопросе о блоках в свифте

Andrey
31.03.2017
14:51:04
и для олдфагов http://fuckingblocksyntax.com/

Vadim
31.03.2017
14:54:40
для обжси это как-то более актуально было
у свифта же простой синтаксис

Andrey
31.03.2017
14:56:57
по мне так тоже пиздец

Александр
31.03.2017
15:01:13
Везде пиздец

-_-
31.03.2017
15:04:57

Vlad
31.03.2017
15:05:53

-_-
31.03.2017
15:06:38
Хотя в итоге прикольно. Что-то типа
let block = { someAction() }
пишешь, и никакие void лишние не нужны

Александр
31.03.2017
15:18:28
правда если шаг нужен будет 0.05 то такое не пойдет(

Denis
31.03.2017
20:38:57
гайз, какой ваш вариант ответа? желательно с пояснением
—------—
Какой тип блока по расположению в памяти определяется в следующем фрагменте кода:
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
вообще бы конечно посмотреть в глаза тому майлрушнику который составлял этот вопрос..

? Райзя ?
31.03.2017
20:41:17
а какие вообще типы "блоков" бывают?

Google

Denis
31.03.2017
20:42:58

Filipp
31.03.2017
20:55:32
он вроде для сравнения предыдущего значения и нового

Александр
31.03.2017
20:57:25

Denis
31.03.2017
20:57:53

Александр
31.03.2017
20:58:41

Denis
31.03.2017
20:59:07

Vadim
31.03.2017
20:59:24
ну так это темпоари, не?

Александр
31.03.2017
20:59:25
тупо пальцем в небо

Denis
31.03.2017
21:00:20

Александр
31.03.2017
21:00:57
50х50 потрачено
помощь зала тож

? Райзя ?
31.03.2017
21:01:11
это уже будет ответом на тест)
временный блок. Да, блок определенно временный. Потому что скорее всего он умрет. Хотя не факт. Блок кучи. Что? Блок, создаваемый из кучи. действительно. someAction создается из кучи. На это намекает звездочка. Постоянный блок. Ну он точно не постоянный. Не забивает память. Или забивает, если не используется ARC? Глобальный блок. Не похож, потому что находится внутри функции. Но функция находится в статической памяти. Но все еще не глобальный!
Итак память на создаваемый блок точно берется из кучи. А потом еще и высвобождается, если используется arc. Если используется /mrc, то не высвобождается, поэтому блок можно будет назвать постоянным и нельзя назвать временным.
Короче точно 2.

Denis
31.03.2017
21:01:15
терминов 1 и 3 я вообще не слышал, 4 тут явно не подходит, потому что не глобальный скоуп

? Райзя ?
31.03.2017
21:02:01
ааа, звездочка идет к NSString

-_-
31.03.2017
21:02:53

Denis
31.03.2017
21:03:17

? Райзя ?
31.03.2017
21:03:34
почему это я бобер??

Denis
31.03.2017
21:03:51

Александр
31.03.2017
21:06:48

Google

Filipp
31.03.2017
21:11:33
нету такого метода у сигнала(
эх, можно написать тогда. Самое элегантное решение - сделать свой, добавив параметр блок для сравнения
https://github.com/ReactiveCocoa/ReactiveObjC/blob/1180ab256000573ef82141e5d40e9b9c35dfd69c/ReactiveObjC/RACStream.m
такой точно есть)

Александр
31.03.2017
21:16:36

Denis
31.03.2017
21:33:29

Admin
ERROR: S client not available

Александр
31.03.2017
21:36:25
тода так

-_-
31.03.2017
21:36:43
Пипец я сейчас себе ноги отстрелил с перебросом блоков из Swift в Objective C. Если не указать явно тип блока в функции, а юзать id (или Any), то все упадет к чертям. Справедливо и для обратного случая (если кидать Obj C блок в Swift)

Denis
31.03.2017
21:37:48

Александр
31.03.2017
21:40:18

Denis
31.03.2017
21:40:44
нет

Александр
31.03.2017
21:40:44
или я чет жестко туплю

Denis
31.03.2017
21:40:57
да
?

Petr
01.04.2017
04:19:58
Всем привет!
Мне требуется сделать приложение дополненной реальности без маркеров. Кто знает какие нибудь библиотеки фреймворки?

Alfred
01.04.2017
05:27:50

Google

Denis
01.04.2017
06:09:15

Alfred
01.04.2017
06:12:13
https://www.cocoawithlove.com/2009/10/how-blocks-are-implemented-and.html
http://clang.llvm.org/docs/Block-ABI-Apple.html

Denis
01.04.2017
06:13:27

Alfred
01.04.2017
06:18:39
Поставь бряку на return @"someAction";
В variablesView увидешь свой блок.
Распечатай его класс
(lldb) po [(id)0x100001070 class]
__NSGlobalBlock__
Еще можешь полезть в ассемблер и посмотреть там что происходит:
Ltmp9:
.loc 1 13 17 ## /Users/whatever/dev/test_blocks/test_blocks/main.m:13:17
leaq ___block_literal_global(%rip), %rdi
callq _objc_retainBlock
movq %rax, %r15

? Райзя ?
01.04.2017
07:22:28

Roman
01.04.2017
07:36:46

? Райзя ?
01.04.2017
07:41:25

Roman
01.04.2017
07:42:28

? Райзя ?
01.04.2017
07:42:37
и документацию

Александр
01.04.2017
07:42:48
Как это все познать? ?
От куда время взять ?