Этого треда уже нет.
Это копия, сохраненная 26 июля 2016 года.

Скачать тред: только с превью, с превью и прикрепленными файлами.
Второй вариант может долго скачиваться. Файлы будут только в живых или недавно утонувших тредах. Подробнее

Если вам полезен архив М.Двача, пожертвуйте на оплату сервера.
1175 Кб, 1024x1024
30 Кб, 1200x1200
343 Кб, 950x558
74 Кб, 2338x1653
Разработка под iOS тред №3 #722377 В конец треда | Веб
Литература:
Objective-C Programming: The Big Nerd Ranch Guide
iOS Programming: The Big Nerd Ranch Guide
iOS 7 Programming Cookbook: Vandad Nahavandipoor
Matt Galloway Effective Objective-C 2.0

Видеокурсы:
https://www.coursera.org/specializations/app-development
https://www.coursera.org/specializations/ios-development
https://www.youtube.com/user/AlexSkutarenko

Swift - Swift - это новый язык программирования для разработки приложений на iOS, OS X и watchOS, который сочетает в себе все лучшее от C и Objective-C, при этом нет ограничений в совместимости с C. Swift использует паттерны безопасного программирования и содержит современные функции, которые помогают сделать программирование легким, гибким и увлекательным.

Платина:
Что выбрать? - свой проект - swift, работа - objective-c.

Официальная телеграм конфа треда - https://telegram.me/joinchat/CUVruAJ8ceAgYkfeqe_LcA
#2 #722378
Что-то долго вы перекат пилили, пришлось самому запилить
мимпроходящий раз в месяц опхуй
>>722411
#3 #722411
>>722378
Мог бы и в шапку материала добавить
>>722656
#4 #722418
Можно как-нибудь в storyboard'е сделать "прототип" вьюшки? Чтобы я там напихал элементов, правильно их расположил и т.д., но оно изначально нигде не рисовалось. А потом в коде уже, это вью создавалось и заполнялось нужными данными.
>>722431>>722484
#5 #722431
>>722418
Что тебе мешает сначала вызвать один вьюконтроллер, а когда станет нужно, то тот, где твои элементы?
>>722444
#6 #722444
>>722431
То, что я просто хочу наплодить одинаковых элеменов в TabView по нажатию на кнопку, скажем. И количество их неизвестно и варьируется, включая и данные.
>>722458
#7 #722458
>>722444
Иди книги читай, мне кажется ты не понимаешь как работают ячейки
>>722483
#8 #722483
>>722458
Какие ячейки? Не о TableView говорится. У NSTabView есть набор TabViewItems, у каждого из которых лейбл и соответствущий им view, который в этом NSTabView будет отображаться. У NSTabViewDelegate'а есть лишь 4 метода ( https://developer.apple.com/library/mac/documentation/Cocoa/Reference/NSTabViewDelegate_Protocol/index.html ). Никакие ячейки у него не запрашиваются.

Создаётся NSTabViewItem, к нему прицепляется люой NSView, затем это всё добавляется к TabViewItems у NSTabView.

Вот мне нужно, чтобы на момент запуска программы этот NSView был уже готов, оставалось только повставлять текст в лейблы.
#9 #722484
>>722418
Можно, но лучше в таком случае пользоваться XIB'ами и вытягивать вьюхи таким образом:
MyCustomView view = [[NSBundle mainBundle] loadNibNamed:@"MyCustomView" owner:self options:nil][0];

Тебе в любом случае придётся привязать определенный класс к своей вьюхе, чтобы работали IBOutlet'ы, т.е. абсолютно абстрактной быть не может :)
>>722489>>722745
#10 #722489
>>722484
Спасибо, попробую.

>определенный класс к своей вьюхе


Не, ну это-то понятно, сабкласс NSView и будет.
#11 #722656
>>722411
Да, надо было мне исправить строчку "Что выбрать? - свой проект - swift, работа - objective-c." на

"Что выбрать? - свой проект - swift (но помни о раздутом нахуй бинарнике, который будет мб на 16 больше чем в случае с obcC), работа - objective-c".
>>722743
#12 #722743
>>722656

> который будет мб на 16 больше


Но ведь IPA это zip архив и весь фреймворк Swift в итоге прибавляет только 3 MB
>>722759
#13 #722745
>>722484
Что-то я дурачок. Этот метод возвращает булеан (коока, на мак). И что дальше-то делать, как его использовать, как вью инициировать? principalClassу у бандла него NSApplication, а не мой каштомный. ПРобовал добавлять в инит метода у вьюхи, но всё равно ничего не происходит. И на маке есть только loadNibNamed:.. owner:.. topLevelObjects:..] (либо классовый почти как у тебя, о бзе опшнс, и всё равно булеан возвращет).
>>722747>>722794
#14 #722747
>>722745
В интернете везде оно либо массив возвращает, либо просто [NSBUndle loadNibNamed:...] в инит вставляют, делая овнера селф, и ничего никуда не присваивая. Ничего не понимаю, что почитать?
>>722794
29 Кб, 714x76
#15 #722759
>>722743
Мой obj-c проект после включения в него свифта раздуевается на 16мб
Парни со стэковерфлоу подтверждают.
http://stackoverflow.com/questions/28275711/adding-swift-to-project-increase-size-substantiously-how-and-when-can-it-be-avo
>>722783
#16 #722783
>>722759
Имеет ввиду в установленном виде на устройстве, а при распространение будет всего на +3.
Загляни в свой production IPA да посмотри.

Сейчас для тестов собрал и экспортировал с production provision
1) чистый ObjectC
2) тот же проект с добавление swift класса
разница в размере IPA около 3 MB
>>722824
#17 #722794
>>722747
>>722745
@implementation ViewController

- (void)viewDidLoad
{
[super viewDidLoad];

NSArray nibObjects;
[[NSBundle mainBundle] loadNibNamed:@"TestView" owner:self topLevelObjects:&nibObjects];
__block CustomView
view;
[nibObjects enumerateObjectsUsingBlock:^(id _Nonnull obj, NSUInteger idx, BOOL _Nonnull stop) {
if ( [obj isKindOfClass:[CustomView class]] ) {
view = obj;
}
}];

view.frame = NSMakeRect(0, 0, 100, 100);

CALayer
viewLayer = [CALayer layer];
[viewLayer setBackgroundColor:CGColorCreateGenericRGB(1.0, 0.0, 0.0, 0.4)];
[view setWantsLayer:YES];
[view setLayer:viewLayer];

[self.view addSubview:view];
}

@end

Вот это работает
#17 #722794
>>722747
>>722745
@implementation ViewController

- (void)viewDidLoad
{
[super viewDidLoad];

NSArray nibObjects;
[[NSBundle mainBundle] loadNibNamed:@"TestView" owner:self topLevelObjects:&nibObjects];
__block CustomView
view;
[nibObjects enumerateObjectsUsingBlock:^(id _Nonnull obj, NSUInteger idx, BOOL _Nonnull stop) {
if ( [obj isKindOfClass:[CustomView class]] ) {
view = obj;
}
}];

view.frame = NSMakeRect(0, 0, 100, 100);

CALayer
viewLayer = [CALayer layer];
[viewLayer setBackgroundColor:CGColorCreateGenericRGB(1.0, 0.0, 0.0, 0.4)];
[view setWantsLayer:YES];
[view setLayer:viewLayer];

[self.view addSubview:view];
}

@end

Вот это работает
>>723346
22 Кб, 539x134
23 Кб, 528x117
#18 #722824
>>722783
1 - апа из .xcarchive/products
2 - экспортированные ipa
Не так много конечно, но в моем случае даже такая разница - очень критична. Сначала ты оптимизируешь каждую png, дабы уменьшить бандл на пару метров, а тут хуяк и ±6 мб сверху. В моем случае вообще процентов на 30 ебануло.
В более или менее серьёзном продакшне техдир за такую вольность сразу обоссыт.
>>722854>>746377
#19 #722854
>>722824

> В более или менее серьёзном продакшне техдир за такую вольность сразу обоссыт


Давай ты не будешь говорить за всех.
Twitter и LinkedIn это не мешает выпускать приложения на Swift.

Кстати отдельный вопрос, насколько сам код на Swift генерирует больше процессорных инструкций (ведь он более высокоуровневый).
Возможно это объясняет разницу в целых 6MB.
#20 #722874
>>722854

>Давай ты не будешь говорить за всех.


Да я за всех и не говорю. Я говорю про среднестатистическую коммерческую разработку.
Что такое переход на свифт для компании:
1) адаптационный период с упавшей производительностью программиста
2) разросшийся бинарь (в моём случае это аж 30% - это пиздец)
3) потеря возможности прямого использования c/c++
4) сырые спеки и отсутствие поддержки старых версий

Совокупность рисков - нехуёвая такая.
Любой опытный техдир взвесит все за и против и мягко откажет программерам в перекате.

>Twitter и LinkedIn это не мешает выпускать приложения на Swift.


Пруфцы есть? Я погуглил по запросам "twitter swift ios" и не нашел ничего подобного.

>ведь он более высокоуровневый


С чего ты это взял? Свифт рантайм как раз более низкоуровневый и показывает производительность на уровне plain C, в отличии от objC.
>>722925
#21 #722881
>>722854

>Возможно это объясняет разницу в целых 6MB.


Это объясняется рантаймом, и всё. Когда он будет включён в ios, разницы не будет никакой.
>>722907
#22 #722907
>>722881
Когда он будет включён в ios, то начнётся кошмар зависимостей, как в .NET и Java, разницы никакой.
>>722923
#23 #722923
>>722907
Каких зависимостей? нас тут двоеМы же про вес говорим. Сейчас эти 6 метров - включенный в ipa рантайм. Будет этот рантайм лежать в бандле самой ios и не лишнего веса не требовать.
И почему должен какой-то кошмар начаться? Почему в нынешней ситуации он не начинается?
Лишь бы чтото, простите, спиздануть чтоли?
198 Кб, 632x549
179 Кб, 627x510
#24 #722925
>>722874

> Пруфцы есть?


А сам скачать через itunes на мак и распаковать их ты конечно не можешь?... Вот смотри.

> Свифт рантайм как раз более низкоуровневый


Я про твой написанный код, а не рантайм. Это объясняло бы почему размер проекта скачает при фикс. размер рантайма

> Это объясняется рантаймом, и всё


А вот нифиги, если удалить все libswift*.dylib из twitter/linkedin и запаковать обратно, то размер IPA уменьшится только на 3 MB.
Если запаковать БЕЗ удаления, то получается тот же размер что у оригинального IPA ±1%, так что дело не в настройках ZIP.
>>722955
#25 #722955
>>722925

>Вот смотри.


И правда, используют...

>Я про твой написанный код


Да там кода было строк на 20 - и на тебе, такое-то увеличение бинаря.

>А вот нифиги, если удалить все libswift*.dylib


Ну так это всё статик либы, подключаемые по надобности, сам рантайм, я думаю, прямиков в бинарь хуячится.
>>733365
222 Кб, 1080x1080
#26 #723287
Аноны, сколько будет стоить приложение с картами на основе яндесковских? в нём будут маршруты и трекинг. Если по-минимуму брать.
>>735088
#27 #723307
Анон, устроился недавно на работу, но знаний никаких не получаю, пою сугубо по примерам и со, что делать?
>>723320
sage #28 #723320
>>723307

>пою сугубо по примерам и со


>что делать?


Попробуй танцевать.
#29 #723346
>>722794
Ах, вот для чего топЛевелОбджетс. Всё заработало, спасибо огромное!
#31 #724089
>>723872
Группа не существует. Какого хуя?
>>724130>>724433
#32 #724130
>>724089
dealloc dealloc, трололо, азазаз
>>724152
#33 #724152
>>724130
я тебя нипонял.
#34 #724433
>>724089
этот линк >>723872
не работает? а ты раньше не был в этой группе? мб ты забанен, напиши мне в личку @Oleygen, решим проблемы
#35 #725495
Что почитать как презентовать и когда вьюконтроллеры? Всю эту иерархию, типа когда надо презент виндов, когда вк, хочу разобраться правильно
>>725510
#36 #725510
>>725495
view controller programming guide
>>725729
#37 #725729
>>725510
а зачем делают такую вещь navigate - > vc -> navigate - > vc?
44 Кб, 750x471
#38 #725770
Анон, помоги понять, почему ничего не выводит? Пытаюсь разобраться с матрицами.
sage #39 #725838
>>725770
замени i==7 j==3, на i<3, j<3
sage #40 #725841
>>725770
и i,j должны начинаться с 0, а не 1
>>725875
#41 #725875
>>725841
слушай, а причем тут 0 или 1? от этого по твоему работать не будет лол?
>>725879
sage #42 #725879
>>725875
Хуй знает что-ты хочешь, но индексы массивов начинаются с 0
#43 #726343
>>725770
for (i=1; i==7; i++) означает, что изначально i = 1, после каждой итерации i увеличивается на 1, и луп будет действовать до тех пор, пока выражение i == 7 выдаёт true. Подумай, когда оно у тебя выдаёт true?
#44 #726735
ПОЦАНЫ, я правильно разобрался с передачей данных?

first vc

@protocol passDataDelegate <NSObject>

@required
- (void)dataFromController:(NSString )data;
@end

@property (nonatomic, weak) id<SecondViewControllerDelegate> delegate; - типа проперти для делегата

self.delegate dataFromController:@"записываем данные модели, тут допустим стринг"

Далее переходим сегвею или кодом презентуем

second vc

- (void)dataFromController:(NSString
)data
{
self.label.text = data;
}

получаем данные, верно? Так происходит передача данных между вк?

Или как по другому осуществить?
#44 #726735
ПОЦАНЫ, я правильно разобрался с передачей данных?

first vc

@protocol passDataDelegate <NSObject>

@required
- (void)dataFromController:(NSString )data;
@end

@property (nonatomic, weak) id<SecondViewControllerDelegate> delegate; - типа проперти для делегата

self.delegate dataFromController:@"записываем данные модели, тут допустим стринг"

Далее переходим сегвею или кодом презентуем

second vc

- (void)dataFromController:(NSString
)data
{
self.label.text = data;
}

получаем данные, верно? Так происходит передача данных между вк?

Или как по другому осуществить?
>>726867>>727365
#45 #726867
>>726735
Общая идея такая, но от контроллера к контролеру принято передавать только их собственные специфические контроллерные данные, если такая необходимость есть. Бизнес данные принято передавать в составе модели. У каждого контроллера проперти model, корневой контроллер берет модель из своего проперти и сует ее в проперти дочернего контроллера после чего презентует его. А уже сам дочерний контроллер, когда он появляется на экране (например во viewWillAppear, если это какие-то "глобальные" данные которые только раз нужно обработать то во viewDidLoad) тащит данные из модели и делает что нужно. Но в простых случаях можно считать что твой NSString это и есть модель, и в общем твой подход норм, просто названо по другому - если делать через модель то все по сути сведется к тому же.
>>726958
#46 #726958
>>726867

> Бизнес данные принято передавать в составе модели. У каждого контроллера проперти model, корневой контроллер берет модель из своего проперти и сует ее в проперти дочернего контроллера после чего презентует его.


Я чет запутался, у модели есть делегат пасс моделл или что?
#47 #727207
Подскажите.
Ситуация такая - при нажатии на кнопку производятся вычисления и происходит переход на новый vievcontroller, где эти самые вычисления должны использоваться. Но, судя по всему, сначала происходит переход и только потом вычисления, как задержать переход до конца вычислений?
>>727287>>727360
#48 #727287
>>727207
ЕСЛИ вычисления готовы, переходи. Что за вопрос?
>>727374
#49 #727360
>>727207
Показываешь какую-то хуйню крутящуюся, типа https://github.com/SVProgressHUD/SVProgressHUD ждёшь когда там твои вычисления пройдут, переходишь через navController -> presentViewController
В чём проблема то?
>>727374>>727415
#50 #727365
>>726735
Передавай модель данных.
Например
first vc формирует содержит список фильм, которые он грузит и распаршивает в локальные модель Movie, по нажатию на фильм в списке происходит вызов нового vc и передача в него экземпляра этой модели Movie, а там уже рисуется.
#51 #727374
>>727360
Но я не пойму, я вот сделал пресент модалли например перетаскиванием с одного контроллера на другой по кнопке. На этой же кнопке дейтвие при нажатии делаются вычисления и заносятся в массив. И этот массив используется в следующем контроллере. Но проблема в том, чтоон берется ниловский, то есть мне сначала грузит второй контролер с пустым масивом, потом в этот масив заносятся данные из первого. Это видно, если сделать цикл - то есть я вижу результаты предыдущего заноса. Мне хотелось бы исправить это без костылей, не пойму как.
>>727287
Проблема в том, что я ньюфаг. Да, я уже понял, что могу промежуточный контролер сделать - тогда всё ок. Но в любом случае на будущее хотелось бы знать, как можно сделать проще - без лишних контролеров, кнопок и т.д.
#52 #727375
>>727374
Ой наоборот ответы.
#53 #727379
>>727374

> промежуточный контролер сделать


Промежуточный контроллер не нужен. Когда жмут по кнопке, контроллер показывает пустое (например, можно сделать полупрозрачным) вью с NSProgressIndicator (например) и запускает асинхронные расчеты. По нормальному твой массив должен быть моделью за которой наблюдает контроллер. Тоесть контроллер отсылает модели сообщение "рассчитать хуйню", модель считает (в бекграунде) и после расчета отсылает сообщение контроллеру "хуйня рассчитана". Получив это сообщение контроллер останавливает NSProgressIndicator и вызывает контроллер который занимается результатами. Если делаешь что-то простое то можно не ебаться с моделью и наблюдением, а расчитать сразу в контролере и потом вызвать второй с результатами. Но это типа не MVC, и желательно разобраться с моделями и наблюдением.
>>727415
43 Кб, 1185x613
#54 #727415
>>727379
Уф, как всё сложно...
>>727360
В любом случае попробовал я как-то так сделать, ошибок не пишет, но во второй контроллер не переходит, в чем дело?
>>727458>>727471
#55 #727455
>>727374
Твоя проблема в том, что ты всё завязал на Segue, а в большинстве нормальных проектов весь navigation stack менеджится исключительно кодом.
Учись показывать viewController'ы кодом, не сегами в сторибордах.
#56 #727458
>>727415
"self present" замени на "self.navigationController present"
>>727469
#57 #727469
>>727458
После замены от нажатий перестал экран вообще меняться.
#58 #727471
>>727415
И да, зачем тебе еще один навигейшн контроллер?
У тебя есть основной navController - в нём твой текущий vc. В нём обработка нажатия кнопки - дальше идут вычисления, в конце них просто презентуй свой tableViewController, не оборачивая его в еще один navigationController и всё.
>>727475
#59 #727475
>>727471
Обработка зависит от выбора в таблице, после должна грузиться совсем другая таблица, в которой надо делать другие выборы. Алгоритм есть, все так-то работает, не могу красиво связать :( Я просто на самом деле хз как это сделать по-другому...
>>727479
36 Кб, 1380x751
42 Кб, 1104x162
#60 #727479
>>727475
Первый пик - стэк в сторибоарде
Второй - обработка клика по кнопке - в ней синхронно вычисления и передача их твоей тэйбвьюхе.
>>727480
#61 #727480
>>727479
Спасибо, попробую.
27 Кб, 1280x720
#62 #727945
Да, сука!
Наконец-то заимлементил распаралленый openGl-стэк (рендер происходит на параллельном потоке, выводится на главный)
Как же я заебался.
Мелочи, причём, крылись в мелочах - а именно, при убийстве вьюхи необходимо было чистить буфферы и тут то другие вьюпорты сходили с ума и падали с различными ошибками.
Ура, блять.
>>728615>>734273
#63 #728615
>>727945
расшарь проект плз
>>728630
#64 #728630
>>728615
Оформлю на кокоаподс через некоторое время - расшарю
>>728639
#65 #728639
>>728630
дай линк на свой хотяб дабы не проебать
#66 #728640
>>728639
гитхаб (самопочин)
>>728659>>729561
#67 #728659
>>728640
>>728639
У меня там пока свалка, стыдно показывать.
Наберись немного терпения - бля буду выложу, не ссы.
#68 #728719
Как организовать правильную синхронизацию? Между кордатой/ реалмом и каким нибудь парсом?
Ну чтобы приложение норм работало без интернета и в случае чего синхронизировалось и старые данные тянули из интернета на новый девайс
>>728909
#69 #728909
>>728719
Да просто всё что грузишь парсишь и пихаешь в базу, а UI рисуешь, исходя из данных в базе.
Для таблиц используешь FetchRequestControoler'ы, для каких-то единичных сущностей, типа профиля юзера - систему нотификаций об обновлении.

Не совсем понимаю сути проблемы, если честно.
>>729272
27 Кб, 914x83
#70 #729116
Почему так нельзя? Почему я не могу показать один viewcontroller и автоматически перейти на другой? Как сделать его типо заставкой?
>>729118
15 Кб, 919x81
#71 #729117
Не тот скрин.
>>729118>>729446
#72 #729118
#73 #729272
>>728909
Ну как происходит проверка данных, типа база старая, облако новое и наоборот, чтобы не затереть данные
>>729302
#74 #729302
>>729272
А, ты про это. Лучше не реализовывать этот геморрой.
Если у юзера есть возможность редактировать контент - сразу отправляй на сервер. Если отправить не получилось, пиши "Отправка не удалась, попробуйте позже".
Совсем автономная двухсторонняя синхронизация - ебанутый, неочевидный для юзера, геморой.
Посмотри на фейсбук или инстаграмм - там если и есть оффлайн отправка данных юзером, то это реализовано в качестве отложенных очередей.
>>729745
#75 #729446
>>729117
попробуй сделать в viewWillAppear/viewDidAppear
>>729575
#76 #729450
Возможно ли да и имеет смысл ли, учить если у меня нету яблокодевайсов?
>>729455
sage #77 #729455
>>729450
1) Hackintosh (легко ставятся даже на VirtualBox), берешь на rutracker
2) Xcode + Simulator
3) Swift

Садишься и пишешь софт (главное на свифте, что бы без байтоебства)
>>729551
#78 #729551
>>729455
Спасибо.
#79 #729561
>>728640
>>728639
Пока так.
https://github.com/stephenkopylov/SKAsyncGLViewController
лойс, подписон - обязон
#80 #729575
>>729446
Terminating app due to uncaught exception 'NSInvalidArgumentException', reason: 'Receiver (<loading:) has no segue with identifier 'segue1''
Всё еще та же ошибка :(
>>729577>>729580
56 Кб, 1213x483
#81 #729577
>>729580
#82 #729580
>>729577
>>729575
Блять, вот я долбаеб, только запостив сюда скрин и ошибку, до меня дошло... Сука, пиздец...
#83 #729586
ПОясните ньюфагу, что такое NSstring NSArray и др. NS.
#84 #729588
>>729586
Наследие NextSystems
>>729599
#85 #729599
>>729588
>>729586
Точнее NextStep
#86 #729612
>>729586
National Socialism
#87 #729627
Можно ли сортировать словать без использования массива?
>>729651
#88 #729651
>>729627
Нет. Значения в словаре находятся в определенном порядке (отсортированы по ключам или по хешам, в зависимости от того как именно реализован словарь) для быстрого поиска значений, и менять его нельзя.
#89 #729745
>>729302
Блядь, как СЛОЖНО то.
>>729840
#90 #729840
>>729745
Это сарказм такой?
>>730037
#91 #729866
>>722377 (OP)
ПЛАТИНОВЫЙ ВОПРОС
В общих чертах или даже лучше если будет конкретно: примерно какого вида должно быть приложения для показа на собеседовании при отсутствии опыта то бишь устройстве на первую работу? Желательно без использования API всяких чуханов типа твиттора/фейсбука яндекса или тем более напишите простенький клиент вк))))) которые ты в жизни юзать не будешь.
>>729874>>729921
#92 #729874
>>729866
Опиши конкретней свои проблемы связанные с "напишите простенький клиент вк)))))" (кроме необходимого количества работы/знаний). Возможно тебе не стоит идти в мобильную разработку?
>>729989
#93 #729875
Вопрос, что делает оператор % ?
К примеру такой код let z = 359 % 60 \\ 59
а let z = 360 % 60 \\0

Он отсекает часть числа не большую аргументу после % и выводит ее, или как то иначе работает?
>>729880
#94 #729880
>>729875
или выводит остаток после деления без остатка на аргумент после % ?
>>729904
#95 #729904
>>729880
Остаток от деления с остатком (деления по модулю).
#96 #729921
>>729866
Тебе в тред "подгоревших даунов-неасиляторов"
#97 #729989
>>729874
Проблема та же, не желание копания в незнакомом до селе API VK/%сервис_нейм для одноразовой работы.
>>733179
#98 #730037
>>729840
Нет, серьезно
#99 #730149
Где спросить про Swift, если не в iOS-треде?

Кто-нибудь тыкал появившиеся веб-фреймворки на Swift? Какой из них наиболее привлекателен? Сходу загуглил - нашел аж 4 на первой странице выдачи, все с кучей звёздочек и форков.
>>730160
#100 #730160
>>730149
Свифт не нужен.
>>730327>>733373
#101 #730327
>>730160
свифт - это не тян, ещё пригодится
>>730375
#102 #730375
>>730327
Но свифт как тян. У него есть нил, который ни да, ни нет.
#103 #732332
Bump
#104 #733179
>>729989
Все апи по сути очень похожи. Ресурсы + oauth-авторизация. Что ты там решил копать - не ясно.
Возможно, ты вообще апи ни разу не юзал и считаешь, что это нинужно. А это очень даже нужно.
#105 #733365
>>722955

> Да там кода было строк на 20 - и на тебе, такое-то увеличение бинаря.


Так нахуя было городить огород со свифтом? Если планируешь переписывать весь код на него или весь новый код на свифте писать - тогда это уже будет не 20 строк
>>733367
#106 #733367
>>733365

>Так нахуя было городить огород со свифтом?


А когда по-твоему вкатываться в свифт? Или вот так взять и заставить всю команду начинать новый проект на свифте?
>>733382
#107 #733373
>>730160
Мы вам перезвоним
#108 #733382
>>733367
Ну напиши хоть тысячу строк на свифте. Или на досуге накатай прогу. Я вот год назад за пару месяцев переписал прогу с обджектива на свифт. Пишешь новый класс - на свифте. Нужно переписать большую часть кода класса - переписываешь на свифт. Остальное вечерами посидел и переписал. С того времени все новые проекты - на свифте
>>733463
#109 #733463
>>733382

> Пишешь новый класс - на свифте. Нужно переписать большую часть кода класса - переписываешь на свифт. Остальное вечерами посидел и переписал. С того времени все новые проекты - на свифте


Парень, ты мне сейчас америку открыл. А я-то и не знал.
Это сарказм был, если что.
Именно так я и начал. Взял и новый класс наебашил на свифте (20 строк кода, менеджер звуков). А он мне в ответ хуйнул мегабайтами в бинарь.
>>733554
#110 #733554
>>733463
Ну так что с того, что сейчас 20 строк? Потом будет 10000. Такое впечатление, что ты тралируешь
>>733726
#111 #733726
>>733554

>Ну так что с того, что сейчас 20 строк? Потом будет 10000.


Десять тысяч будет когда-нибудь потом, а бинарь раздуется на лишние мегабайты уже сейчас.
Пидоры всё-таки в эполе, организовали такую хуиту с этим рантаймом что висит груша-нельзя скушать.
>>733882
#112 #733815
Что по свифту почитать, тут писали что мол оффдоку, но я вчера открыл и офигел, это ж нифига не учебник, плюс там чисто по языку и с сдк ничего нет
>>769600
#113 #733882
>>733726
Ну ешь говно мамонта. Я уже 4-й проект делаю на свифте и никто не наоет
>>733923>>734179
#114 #733923
>>733882
Он за хэллоуворд на 4мб больше переживает
>>734179
9 Кб, 156x316
#115 #734179
>>733882
Ну я не знаю что там у тебя за проекты.
У меня в проектах вес приложения важен.
>>733923
Ну как бы да. В 4 метра можно вместить несколько крупных текстурных атласов.
#116 #734273
>>727945
в чем смысл рендерить в бэкграунде?
>>734304
#117 #734304
>>734273
Иногда необходимо использовать openGL посреди обычного uikit, как обычную вьюху.
Проблемы начинаются хотя бы с того, что стандартный GLKit-стэк (GLKViewcontroller + GLKView) работает на в главном ранлупе, который также используется повсюду - в скроллвью, в рекогнайзерах, да и вообще где угодно.
Это приводит например к таким весёлым штукам как остановка рендера при прокручивании скролвьюх.
Ну и, также, если рендер тяжёлый - остальной интерфейс будет просто тормозить.
А так - рендер не влияет на главный поток никоим образом.
Конечно это не имеет никакого смысла в случае если у тебя всё приложение - полноэкранный gl-вьюпорт.
919 Кб, 2678x1509
795 Кб, 2382x1303
#118 #735055
>>722854

>насколько сам код на Swift генерирует больше процессорных инструкций


Там вообще какая-то жопа с бинарником происходит после сфита, все дробится на маленькие функции - не понятно что от чего работает, даже хук не сделать. Говно ебаное в общем.
#119 #735088
>>723287
бамп вопросу
>>735189
#120 #735189
>>735088
Ты купить или продать хочешь?
>>735760
#121 #735234
Не знаю сюда ли я зашел, но всё же спрошу, анона либо пошлите туда где спросить -
У еотовой подох Samsung Galaxy Tab 10.1 там все пикрилы и видосики, в мастерских мычат и пожимают плечами на вопрос: можно ли всё это выдернуть из этого дохлика ??
549 Кб, 800x533
#122 #735259
Как же меня прет до сих пор iOS SDK и Objective-C.
Это самые умные технологии на планете.

мимо 6 лет пишу под apple
>>735263
#123 #735263
>>735259
Что в них умного? Понятно что приятнее чем под говноид писать, но все же ничего особенного.
#124 #735266
>>735263

>Что в них умного?


@implementation
#125 #735269
Добрый вечер! Не вижу у вас faq и поэтому задам вопрос. Что нужно, чтобы вкатиться к вам? Знание яп какого-нибудь еще надо или без этого лучше не лезть? Обязательно ли надо мак или достаточно одного айфона?
>>735271
#126 #735271
>>735269
Наличие платформы и знание средств разработки? Не, не нужно. Вкатывайся, посиди тут, чайку налей. Тут места много.
>>735329
#127 #735276
>>735263
Представь программу уровня Final Cut на яве или дотнете.
>>735340
#128 #735329
>>735271
я так понимаю надо скачивать какую-то программу, чтобы писать на swift? Саблайм текст подойдет?
>>769624
#129 #735340
>>735276
Всмысле? При чем здесь ява или дотнет? Мы же технологии с точки зрения разработки оцениваем, а не конкретных програм. Да и под шиндоус сонивегас явно получше будет все же.
>>735343
#130 #735343
>>735340
Вегас вообще написан на плюсах как и весь 3D/видео софт, если говорить о стороне разработки.
124 Кб, 1200x675
#131 #735760
>>735189
потенциально - заказать. Хотелось бы узнать реальную стоимость такой затеи
>>735786
#132 #735786
>>735760
Я хуй с горы, но будучи абсолютным нулём в iOS, за месяца полтора написал подобное трекинг-приложение (с аппловскими картами, но яндексовский апи на сервере использовался для получения оставшихся времени/расстояния), поэтому я бы сказал, что не слишком дорого. Сколько это "не слишком" в цифрах — вообще не представляю.
Разумеется, дизайн у меня был не ахти, да и качество кода, вероятно, оставляет желать лучшего.

Но это если одноразово, а тебе-то, полагаю, для бизнисов, а там поддержки-хуершки, апдейты и т.д.
>>785922
#133 #736180
Внезапно не про "почему не работает", а про "почему работает".
https://developer.apple.com/library/ios/documentation/StringsTextFonts/Conceptual/TextAndWebiPhoneOS/KeyboardManagement/KeyboardManagement.html
Посмотрим вот сюда, в листинг 5-1,
Этот кусок кода регистрирует нотификации и двигает вью, скрытую за клавиатурой, так, чтобы она оказалась над клавиатурой,
Интересует конкретно вот этот момент:

scrollView.contentInset = contentInsets;
scrollView.scrollIndicatorInsets = contentInsets;

// If active text field is hidden by keyboard, scroll it so it's visible
// Your app might not need or want this behavior.
CGRect aRect = self.view.frame;
aRect.size.height -= kbSize.height;
if (!CGRectContainsPoint(aRect, activeField.frame.origin) ) {
[self.scrollView scrollRectToVisible:activeField.frame animated:YES];
}

> Your app might not need or want this behavior.


Если убрать этот кусок кода, то авто-скролл все равно будет продолжать работать.

Весь функционал, по всей видимости, педалится вот этим:
scrollView.contentInset = contentInsets;
scrollView.scrollIndicatorInsets = contentInsets;

Но как так? Что за undefined поведение? Почему выставление инсетов в обработчике появления клавиатуры заставляет весь скролл вью прокручиваться?

Меня устроит один из вариантов ответов:
- ткнуть рожей в офф доки, где объясняют почему так
- ткнуть рожей в семпл код из офф доков, где естьь более подробный комментарий почему так
- ткнуть рожей в первый ответ из треда стековера, где доходчиво умный человек рассказывает почему так

Всякие "васян на конфе слышал" не нужны.
#133 #736180
Внезапно не про "почему не работает", а про "почему работает".
https://developer.apple.com/library/ios/documentation/StringsTextFonts/Conceptual/TextAndWebiPhoneOS/KeyboardManagement/KeyboardManagement.html
Посмотрим вот сюда, в листинг 5-1,
Этот кусок кода регистрирует нотификации и двигает вью, скрытую за клавиатурой, так, чтобы она оказалась над клавиатурой,
Интересует конкретно вот этот момент:

scrollView.contentInset = contentInsets;
scrollView.scrollIndicatorInsets = contentInsets;

// If active text field is hidden by keyboard, scroll it so it's visible
// Your app might not need or want this behavior.
CGRect aRect = self.view.frame;
aRect.size.height -= kbSize.height;
if (!CGRectContainsPoint(aRect, activeField.frame.origin) ) {
[self.scrollView scrollRectToVisible:activeField.frame animated:YES];
}

> Your app might not need or want this behavior.


Если убрать этот кусок кода, то авто-скролл все равно будет продолжать работать.

Весь функционал, по всей видимости, педалится вот этим:
scrollView.contentInset = contentInsets;
scrollView.scrollIndicatorInsets = contentInsets;

Но как так? Что за undefined поведение? Почему выставление инсетов в обработчике появления клавиатуры заставляет весь скролл вью прокручиваться?

Меня устроит один из вариантов ответов:
- ткнуть рожей в офф доки, где объясняют почему так
- ткнуть рожей в семпл код из офф доков, где естьь более подробный комментарий почему так
- ткнуть рожей в первый ответ из треда стековера, где доходчиво умный человек рассказывает почему так

Всякие "васян на конфе слышал" не нужны.
>>736187
#134 #736187
>>736180
Ты разметку делаешь в сториборде?
Если да, то не вызывает проблем auto-layout + UIScrollView ?
>>736195
#135 #736195
>>736187
Да, в сториборде.
Проблем почти нет, немного подрочиться приходится. Когда подрочился, все работает как положено.

А вот ситуация со скролл вью и клавиатурой меня заставляет разве что разводить руками.
Не, здорово конечно, что все работает, НО ПОЧЕМУ РАБОТАЕТ ТО???
>>736241
#136 #736214
Можно ли в строке nsstring иметь какие-то слова одного цвета, а другие другого?
>>736229
14 Кб, 377x510
#137 #736229
>>736214
Тебе в консоль выводить? Тогда юзай ASCII color
http://stackoverflow.com/questions/3219393/stdlib-and-colored-output-in-c

Если в GUI тогда используй NSAttributedString
http://stackoverflow.com/questions/6501808/uilabel-with-text-of-two-different-colors
>>736363
#138 #736241
>>736195
У тебя универсальная верстка и ты не задавал в сториборде явный размер скролвью. Разве при этом xcode не ругается?
>>736250
#139 #736250
>>736241
Не ругается. Указал внешние ограничители скролла по отношению к супервью и внутри скролла все содержимое имеет отношение к каждой стороне. Ругаться будет если забудешь "изнутри" содержимое приколоть.

Ну или взять скролл вью, растянуть на всю сцену, накидать внутрь полей и сделать suggested. Тоже не ругается.
#140 #736363
>>736229
Спасибо.
#141 #736586
У меня перестал меняться один viewController при смене wAny hAny, остальные контроллеры меняют свой размер соответственно с элементами внутри. Что я в нём сломал?
>>736587
#142 #736587
>>736586
А всё, починилось, странно...
>>736689
#143 #736689
>>736587
Рады помочь. Заметь, починилось только после двачей.
#144 #736773
Здравствуйте!
У меня есть вопрос такого характера:
Вот я сейчас изучаю Python, смогу ли я в будущем перейти(без проблем) на Swift/Objective-C или для начала учить 'C'?
#145 #736781
>>736773
Идиотский вопрос, я это сам понял, вернее было бы поставить его так:

Смогу ли я быстро вкатится в язык (Python -> Swift/Objective-C), или лучше для начала C?
>>737066
#146 #736782
>>736773
Забей на С, при чём тут это.
>>736789
#147 #736789
>>736782
Для Objective-C Си обязателен к изучению.
>>736795
#148 #736795
>>736773

>смогу ли я в будущем перейти(без проблем) на Swift/Objective-C


Обоже, зачем питонисту лезть клепать хуйню для мобилок?
>>736789
ЛОЛШТО
>>736803
#149 #736803
>>736795
Ты библиотеки для Objc на Objc чтоли пишешь?
>>736812>>736874
#150 #736812
>>736803
Конеш.
Суть созданной эплом экосистемы вокруг обжс в том (да и мобильной оазработки в целом), что тебе нахуй не нужно знать что-то кроме методов из стандартных библиотек и как их вызывать чтобы писать софт под мобилки.
>>736820>>736843
#151 #736820
>>736812
Удвою этого господина. Сейчас не 1983 на дворе, Foundation и UIKit для кого писали?
>>736843
sage #152 #736843
>>736812
Сразу видно, что ты - макака-говнокодер. Напридумывал тут всякую чепуху про экосистему.

В Эппл пишут фреймворки и библиотеки на C/C++/CoreFoundation, даже если эти фреймворки предназначены для GUI. Например Quartz и CoreGraphics - С/С++ фреймворки. Потому что если бы их писали на Objc - они бы работали медленее и жрали больше памяти и в Эппл это прекрасно понимают в отличии от макак-говнокодеров.

>>736820
В Foundation почти все типы это обычные wrappers для CoreFoundation, для максимизации производительности нужно убирать Foundation и использовать CoreFoundation, что эппл и делает в своих фремворках.
>>736866
#153 #736866
>>736843
А я сразу вижу маню-дауна. Кококо, перформанс, ведь в обж-с все вызовы по дефолту вычисляются в рантайме! Ахуеть! Из-за 0.001 мс при отрисовке кнопки будут видны лаги! А если там что-то написано на плюсах - сомневаюсь что всё написано без теж же виртуальных функций и прочего.

Я уже писал, но ты похоже не умеешь читать - для написания приложений это нахуй не нужно. Всё пишется на готовом, мобильная разработка - это такой "нативный" веб. Ты тыкаешь кнопочки, кладешь списки мышкой, пишешь для них обработчики - и всё.
>>736874>>736926
#154 #736874
>>736866

>для написания приложений


Речь вообще про библиотеки.
>>736803
>>736884
#155 #736884
>>736874
Какие библиотеки, животное блядь? Всё, что пишется для приложений - гуйня/нетворкинг и тд вещи, не ебущиеся о перформансе.

Конкретный пример приведи. Только не порт/враппер/физический/рендер движок, которые на чём-то отличном от C(++) смысла писать нету.
>>736926>>736949
#156 #736926
>>736866
>>736884

>Только не порт/враппер/физический/рендер движок


>для написания приложений это нахуй не нужно


ты походу только софт по доставке пиццы умеешь писать? нахуй ты нужен в этом мире? ты вообще в курсе какие задачи ставятся перед серьезными программистами? ты не в курсе, ты вообще вживую их не видел. иди пили свои "приложения".
>>736938
#157 #736938
>>736926
Как же я проиграл с мамкиного оналитека, который не разу не работал. Набросал уже было тираду в ответ тебе, дурашке, но потом забил и удалил - нахуй объяснятся с иждивенцем?
>>736943
#158 #736943
>>736938

>мамкиного


>не работал


>тираду


>дурашке


>нахуй объяснятся с иждивенцем


Ну так и пиздуй отсюда, чмо.
>>736945
#159 #736945
>>736943
Давай лучше ты.
Можешь там в жс тред зайти и рассказать что им нужно знать плюсы потому, что все интерпритаторы ЖСа написаны на них.
>>736969
#160 #736949
>>736884
Банальную шифровку-расшифровку файла на C сделать быстрее и проще, чем ебаться с NSData.
>>737015
#161 #736969
>>736945
Ебать ты кретин. Я на твои посты больше не отвечаю. Нахуй тебя.
#162 #737015
>>736949
Ты реально собрался файл шифровать "своим" алгоритмом на C?
В iOS же есть специальное API для этого (там и AES и RSA и еще куча др).

И при этом не надо ебатся с утечками памяти.
>>737019
#163 #737019
>>737015
Если данные не являются критичными для взлома, то их и шифруют своими алгоритмами.
>>737043
sage #164 #737043
>>737019
Я надеюсь ты сейчас пошутил неудачно.

Городить хуйню на коленке, вместо 10 строчек вызова системного крипто-API.
>>737060
#165 #737060
>>737043
Никто не использует aes для шифрования простых файлов вроде сейва в игре, если только дауны вроде тебя.
>>737080
#166 #737066
>>736781
Как сказал кто-то из разработчиков свифта, свифт - objective C без C
#167 #737080
>>737060
Ловите велосипедописателя. Если хочешь поебаться с крестами в качестве хобби - так и скажи
>>737088
#168 #737088
>>737080
Похоже что ты не в теме.
>>737090
sage #169 #737090
>>737088
Все проехали, из монитора уже жир вытекает.

Пиши на здоворьше свои XOR шифры на C, если уж API неосилил.
>>737093>>737098
#170 #737093
>>737090

>Пиши на здоворьше свои XOR шифры на C, если уж API неосилил.


Так у него же ПИРФОРМАНС низкий в обжс для мобильный приложулек, чего ты ждал?
#171 #737098
>>737090
Нужно уметь различать задачи, стрелять комаров из пулемета - абсолютно глупая затаея.
>>737129
#172 #737129
>>737098
Оставь его, братух. Это тролота залетная. Не корми.
#173 #737218
>>736773

> или для начала учить 'C'


"учить C" громко сказано, но базовые знания нужны так как objC это надстройка над С. Но, как правило в учебнике objC для новичков должен сначала даваться сишный синтаксис, а дальше уже даваться обжектив (классы и т.д.). Если идти по такой книге то учить С специально мало смысла.
#174 #737265
Единственный случай, когда пришлось использовать C/C++ - кроссплатформенная openGL-часть, использующаяся на всех платформах - андройд, ios, веб.
#175 #737413
Юзал сишку для работы с OpenSSL, довольно долго анально пердолился (крипту пилили). Можно было и не знать ее, наверное, вряд ли бы сильно больше времени потерял.
#176 #737641
Мужики, а вы тут не поехали часом?
Спор идиотский. Что это значит - писать на Objective-C, и при этом утверждать, что ты знать не знаешь и знать не хочешь C?
Ты в обжектив понимаешь что такое указатель? Понимаешь, иначе бы работать не смог. Ты до ARC писал всякие retain/release? Писал. Значит концепцию malloc/free понять в состоянии. Значит ты знаешь C. И более того, пишешь на нем каждый свой рабочий день. Ибо Objective-C - это и есть C (в отличие от крестов с шарпами).
Ты перед тем как сказать, что ты не перевариваешь си, не знаешь его, не будешь учить его, задумайся - ты собираешься сказать, что ты ios приложения пишешь жопой.
И если боишься и не понимаешь разницы между const char и NSString - советую перекатываться в веб на JS, потому что ты скоро обосрешься с позором.
#177 #737651
Хочу вкатиться в iOS Разработку из Python'а, что посоветуете учить? В чем разница между Свифтом и Обжектив Си?
>>737655>>737688
#178 #737655
>>737651
Нахуй вообще тут в тредах шапки? Мож ну их нахуй? А?
>>737659>>737670
#179 #737659
>>737655
Так там и свифт и обж-с, а я не знаю что учить надо.
>>737662>>737667
#180 #737662
>>737659
А в питоне ты 2.хх или 3.хх учишь?
>>737665
#181 #737665
>>737662
Когда я его начинал учить был только 2.X
>>737675
#182 #737667
>>737659
Учи обжектив, как начнешь нормально код читать то перекатывайся в свифт. Большая часть необходимых знаний - фрейморки, а они одинаковы, тоесть в принципе без разницы что учить. Можно одним обжективом спокойно обойтись. Можно свифтом - с ним есть небольшие проблемы но после питона его проще будет использовать. Если хочешь искать работу то кране желателен обжектив (это значительно увеличит количество доступных вакансий).
>>737668
#183 #737668
>>737667
Спасибо большое.
#184 #737670
>>737655
Ну вот в питон-треде шапки нет, кек.
#185 #737675

>количество доступных вакансий


Ты вот правильно сказал.

А тебе:
>>737665

Мне сложно наставлять новых людей. Потому что я лично помимо Objective-C знаю И swift, И питон 2, И питон 3, И еще много много И И И И И И И языков, которые в данной ситуации уже будут звучать как оффтоп. И ежедневно вижу классных людей с горящими глазами, которые жадно кодят на всем, что под руку подворачивается, и нет у меня отбоя от их умных вопросов.
А эти "или"... заебали уже.

Хочешь хорошую работу - перестань употреблять ИЛИ.
7 языков сейчас знает высокооплачиваемый прогер в штатах. Минимум тебе это. Новый ориентир. Въебывай.
>>737833
#186 #737688
>>737651

> В чем разница между Свифтом и Обжектив Си?


Да нет там никакой разницы. Это синонимы
>>737695
#187 #737695
>>737688
Выше по треду было, а я теперь до конца нашей цивилизации буду вспоминать.
Структуру с битовыми полями на свифте продемонстрируй, если не лень. Исключительно как иллюстрацию, что все одно и то же.
#188 #737833
>>737675

>7 языков сейчас знает


Нахуа? Работаю в основном на ОбжС, но хорошо. Остальные языки кроме свифта и можно было бы вспомнить, но никому это не нужно. Специализация. А если ты мастер на все руки, и ручку в жопу засунуть и на тромбоне проиграть, то я бы задумался над адекватности твоего места работы. Впрочем, что тут задумываться.
>>737860
#189 #737860
>>737833

> Впрочем, что тут задумываться.


Ты, наверное, хотел сказать "чем тут задумываться". Очевидно, тебе нечем.
Тебе же в голову не может поступить мысль, что у человека было несколько мест работы, а еще бывает, что человек работает в двух местах сразу (а иногда в трех).
Тебе не понять, ты же кроме посещений двача и диванных выяснений "какой язык лучше" ничего в жизни не делал.
>>737924>>737925
#190 #737924
>>737860
А зачем мне всё это представлять, если а) я синьор в ОбжС и свифте, б) за это мне платят больше, чем за твои 7 языков, в) таких мастеров на все языки, например, у нас в конторе посылают нах, и правильно делают, г) если вдруг меня пошлют нах в конторе, то я уверен, что вкачусь на не худшие условия в течение месяца.

Внимание вопрос: куда засунуть твои 7 языков?
>>737938
#191 #737925
>>737860
Алсо, ты работаешь на двух, а то и трёх работах сразу, потому что либо а) у тебя настолько плохая команда, что у тебя есть лишнее время, либо б) тебе настолько плохо платят, что ты готов гробить своё время и здоровье по ночам и в выходные.

Палишься, дорогой.
>>737938
#192 #737938
>>737925
>>737924
Дорогой, лично ты можешь хоть всю жизнь протирать один и тот же стул. Мне от этого ни тепло ни холодно. 7 языков - это я просто вспомнил статистику с последнего опроса стека. Сам то я их побольше знаю как сеньер. Удачи, коллега.
>>737945>>737947
#193 #737945
>>737938

>я их побольше знаю


Но ведь их больше нет.
>>737949
#194 #737947
>>737938
Алсо, а откуда ты знаешь сколько мне платят? М? Сергей Васильевич, залогиньтесь.
Вы тоже палитесь.
#195 #737949
>>737945
Их 1500, если че.
>>737954
#196 #737954
>>737949
Из которых 1493 нинужны.

Это я толщу, конечно, но ведь и правда, зачем знать их все? Ведь области применения похожие. Разве что знать 5 для всех основных мобильных и не очень платформ, пифон/руби + жс для скриптохуйни и личного блога, баш не считается, ну и на плюсах в качестве хобби какие-нибудь контроллеры программировать. Это максимум 8, но уже слега избыточно, как мне кажется.

Как-то так, на высоком уровне их знать одновременно выглядит не очень.
>>737957>>737960
#197 #737957
>>737954
А если ты закидываешься менее популярными хаскеллями, эрлангами да схемами, то велика вероятность, что шарпы с джавами не нужны. Иначе совсем уж по задачам распыляешься.
#198 #737960
>>737954
Странный ты. Что значит ЗАЧЕМ?
Вот я поработал 3 года там, 2 года сям, 5 лет тут, 6 лет здесь.
Мне надо забыть все языки, на которых я дослужился до сеньера? Память у меня хорошая. Все помню. Помню особенности, помню стандарты, помню код. Зачем мне забывать это и как это сделать? Книжка где-то была - "Как забыть С++".

Потом смотрю статистику - а я не один такой. Западные сеньеры тоже владеют семью языками.
А потом приходишь ты и говоришь что мы дураки.
Сюр.
>>737962>>737963
#199 #737962
>>737960

>я дослужился до сеньера


А ты прямо уверен, что ты дослужился до синьора? Не сказал бы.
Сергей Васильевич
>>737964
#200 #737963
>>737960

>Зачем мне забывать это и как это сделать?


Ну оно как-то само же.

Ну если ты просто за свой двадцатилетний опыт использовал более семи, то всё норм. Просто активно использовать их все - вот это уже, мм, непродуктивно.

>А потом приходишь ты и говоришь что мы дураки.


Да нет, я как бы вообще мимопроходил.
>>737966
#201 #737964
>>737962
Ну хоть одна нормальная шутка.
#202 #737966
>>737963
Не 20. Годами то я спизданул для рифмы.

Лет 12 выходит где-то. +-
#203 #738790
Аноны, выручайте, столкнулся то ли с багом то ли с чем.

Внезапно в Scence Editor в последнем хКоде перестали перетаскивать объекты(ноды). То есть, я пытаюсь его перетащить, видно какой то контур, но ничего не тащится. При этом я могу изменить их положения поменяй х и у координаты в том же едиторе. В других проектах на этом же маке - все ок.
>>738792
#204 #738792
>>738790
*поменяв
24 Кб, 500x348
#205 #738827
>>722377 (OP)
Анончики, а во сколько обойдется вся суета с размещением моб. приложения в appstore? Подскажите, будьте же людьми :3
>>738874
#206 #738874
>>738827
Ты про деньги? 100 баксов девелоперская пошлина в год.
Можно ещё на маркетинг потратиться, если думаешь, что у тебя крутое приложение с потенциалом на популярность.
>>738890
15 Кб, 501x376
#207 #738890
>>738874
Да, я о деньгах.

>100 баксов девелоперская пошлина в год.


А, и все? И хоть овер 9к приложений пости @ засирай аппстор? И для компаний тоже всего 100$? И не зависит от наличия рекламы?
>>738941
#209 #739121
>>738941
Что-то я там не нашел про лимит на количество программ.
Пишут что 70% от цены программы остается за разрабом, но в какой валюте? Если пиндос купил программу за 99 центов, мне в рублях по курсу будут перечеслять?
>>739136>>739142
#210 #739136
>>739121

>но в какой валюте?


Ты с понятием процентов знаком?
>>739305
#211 #739142
>>739121
Если ты решил завалить AppStore спам-приложениями, можешь сразу про это забыть.

Там ручная премодерация каждого приложения (ждать будешь 1-2 недели).
И если они заметят что ты туда говно льешь, тебе сразу заблокируют аккаунт.

Переключишь лучше на Android / Windows Phone - там модерации почти нет.
(знаю компанию которая держит сотни клонов популярных приложений).
#212 #739220
3 года пишу на Objective C. Зачем Apple внедряет Swift и зачем он мне? Будут ли выпиливать Objective C?
sage #213 #739230
>>739220
Ебать ты слоупок
#214 #739305
>>739136
Причем тут вообще проценты, если речь про в валюту?
>>739705
#215 #739705
>>739305
А какая разница, 70% от выручки в рублях или в долларах? Ну или к чему было вообще упоминать это в предложении тогда, если вопрос "в какой валюте платят"?
#216 #739725
>>739220
Свифт тебе нужен, чтобы писать или поддерживать проект на нём. Обж-Си выпиливать? Вряд ли.
>>739728
#217 #739728
>>739220
Лет через 15 закончат поддержку, переезд на новые технологии в таких компаниях не за пару лет проходит.

>>739725
Рано или поздно-то будут, на нём всё равно ничего серьёзнее гуевых фреймворков не написано.
>>739793
#218 #739793
>>739728

>гуевых фреймворков


Там только оболочка из классов с методами, в имплементации методов там сишка или плюсы
29 Кб, 381x499
#219 #740657
Ну что же вы, мобильные программисты?
#220 #744705
Мне кажется, или теперь аппы апрувают за ~сутки, а не так, как раньше?
>>744845>>744900
#221 #744845
>>744705
Иногда на 4pda бывают полезные новости: http://4pda.ru/2016/05/13/297593/
#222 #744900
#223 #745165
Я вот выше прочитал про кво и делегат, но так нормально и не понял.

Как в повседневной жизни мне нужен пошаговый пример как передается данные из одного класса в другой, это наверное единственная тема которую не могу нормально понять
>>745199>>745679
#224 #745199
>>745165
Какой же ты упоротый всё-таки с этой своей передачей данных из класса в класс. Ты же тут был уже с этим вопросом, да?
>>745274
#225 #745274
>>745199
Чё? Я только недели две назад вкатился в иос, впервые в тебе, мне мак подарили на др друзья, решил начать вкатываться чтобы с нынешней уйти, читал кочана, но там что то про это не понял, мне ты видео урок, Анон выше вот про делегаты писал, но без примера я вот не понял
>>745673
#226 #745673
>>745274
читни про делегат в любой книжке по паттерны, концептуально, это как раз ГоФовский делегат, в отличии от других яблочный реализаций паттернов
#227 #745679
>>745165
кво НИНУЖЕН, смотри туториалы по reactive cocoa
#228 #745687
https://telegram.me/joinchat/BE8kJz3Hc7qlvl1uIWclnQ
Старая конфа умерла. Новая официальная конфа по ссылке.
>>745706>>746882
#229 #745699
Господа, кто нибудь писал апп для dji коптера? Есть пару вопросецов
#230 #745706
>>745687
старая конфа живее всех живых, скам был удален и вкатился в новую конфу, итого: старая конфа - около айосные обсуждения, новая конфа - флуд и срач
>>745715>>745729
#231 #745715
>>745706
а где можно найти старую конфу?
>>745786
#232 #745729
>>745706

> скам был удален


Топ.
#234 #746320
Аноны, подскажите, я изменяю программно плист файл. В симуляторе он сохраняется и правильно используется. На реальном устройстве изменения в него не записываются. Почему? Где-то нужна галочка разрешения изменения программы самой себя?
#235 #746377
>>722824

> а тут хуяк и ±6 мб сверху.


Я тут расследовал почему мой проект занимает 300 мб на диске. Пэипаловская либа cardio, которую поды ставят вместе с пэипал сдк, занимает 289 мб. А ты жалеешь 6 мб
>>746378>>746538
88 Кб, 791x431
#236 #746378
>>746377
Пикча отклеилась
#237 #746538
>>746377
На бинарник это не влияет. Это твой мак просто хранит кучу данных для компиляции.
#238 #746882
>>745687
найс, гиря голос подала
123 Кб, 466x588
sage #239 #746953
Хм, какой интересный iOS тред
#240 #747266
Для написания на swift под ios нужно хакинтош ставить?
>>747272
#241 #747272
>>747266
Нет, достаточно линукс генту накатить.
>>747555
#242 #747349
>>722377 (OP)
Кто-нибудь theos юзал? Насколько перспективно продавать твики в cydia? Там же вроде нет ебли с платными подписками и т.д.
#243 #747555
>>747272
Но там ведь вроде пакеты просто для написания программы на свифте, но не ipa под ios
>>747976
#244 #747976
>>747555
Там нихуя нет, ни фаундейшн ни юикит
12 Кб, 307x331
Хостинг на Хакинтоше для CI #245 #748305
Кто-нибудь знает где можно его купить?
Ибо официальные облачные серваки с OS X слишком дорогие (а приложения у меня опенсорсные и бесплатные).

Может быть неофициально, главно что-бы хостер не придирчивый был.
>>749003
#246 #748995
>>722377 (OP)
Ребят, поясните на сколько перспективна мобильная разработка или скоро все перейдет в веб и все будут писать на js?
>>749004
#247 #749003
>>748305

>Ибо официальные облачные серваки с OS X слишком дорогие (а приложения у меня опенсорсные и бесплатные).


Писал бы под линукс и мозги не ебал
>>749077
#248 #749004
>>748995

>Ребят, поясните на сколько перспективна мобильная разработка или скоро все перейдет в веб и все будут писать на js?


JS сдохнет, см https://2ch.hk/pr/res/743292.html (М)
#249 #749077
>>749003

>Писал бы под линукс


>iOS тред

#250 #749323
>>722377 (OP)
Зачем в MVC нужен Controller? Не проще ли сразу делать Model - View?
#251 #749341
>>749323
не проще MVVM
#252 #749398
>>749323
А зачем нужно модель? Не проще ли все сразу во View сделать?
>>749408
#253 #749408
>>749398

>Не проще ли все сразу во View сделать?


Сомневаюсь. Получится каша.
>>749460
#254 #749460
>>749408
Я думаю, это был сарказм
#255 #749504
>>749323
Тут вопрос - что нагружать логикой. Либо ты нагрузишь логикой модель, либо вьюху. Один хуй где-то придётся эту логику держать.
#256 #749906
Продолжаем вкотываться в айос конфу https://telegram.me/joinchat/CUVruD5OrDIaNn5XKwM6Dw
#257 #750080
>>722377 (OP)
Читал тут пост на quora, там человек писал, что мобильная разработка это 90% времени работа с UI двигая элементы по экрану мышкой, что это пипец как скучно и вообще.
Успешные аноны не расскажут так ли это? Какие интересные задачи вы решаете в работе.
В вебе есть пердоленье с линуксом, работа с разными базами, управление конфигурацией, балансеры, кэши, демоны, распределенка.
А в мобайле?
>>750110>>750119
#258 #750110
>>750080

>мобильная разработка это 90% времени работа с UI


Это так и есть.

>что это пипец как скучно и вообще


Программирование это вообще пипец как скучно, профессия такая. Сначала когда изучаешь технологию которая тебе нравится и начинаешь проект - всё заебись, потом это переходит в рутину и пердолинг с легаси-говном.

>В вебе есть


Половина перечисленного тобой - работа сисадминов. Остальное - такая же рутина.

>А в мобайле


Нихуя нету. Скачай любое приложение и посмотри что оно делает. Сплошные красивые обёртки над сайтами с минимальной логикой.
#259 #750119
>>750080

>мобильная разработка это 90% времени работа с UI


Сколько процентов – это зависит от сложности проекта и твоей роли в нём. Но в целом – да, мобилки это же фронтенд.

>двигая элементы по экрану мышкой


Вообще не использую interface builer. В сложных проектах это возможно, но без него мне привычней. Относительно скуки – не соскучишься, если проект не обезьяний.

>Какие интересные задачи вы решаете в работе.


Продумывание оптимальной архитектуры и логики на всех слоях – слое данных, представлений, контроллеров – всё ведь можно сделать 1000 и одним способом.
Анимашки, опять же. Пердолясь с ними, ты не соскучишься.
Работа с сетью, сериализация\десериализация – если проект действительно сложный, то одного поделия от Аламофайер из коробки не хватит. Один раз разгрести это дело, дальше будет проще, сложность, только если понадобится прикручивать действительно сложные вещи.

>пердоленье с линуксом, работа с разными базами, управление конфигурацией, балансеры, кэши, демоны, распределенка.


Удваиваю анона выше. Этим должны заниматься админы и девопсы. Если этим занимаются в основном всякие джависты – это значит, что в команде неправильно выстроены процессы.
Вообще, я всем рекомендую идти в бэк. Станешь умнее. Освоишь докер, балансировочные решения. Маппинг апишек. Монгу. Эх, весело.
В мобилках ты так и будешь лабать мусипусечки для мобилок.
>>750127>>750411
#260 #750127
>>750119

> Вообще не использую interface builer.


Как ты констрейнты расставляешь?, в коде это же огромные портянки из бойлерплейта.

Скажи еще что до сих по на Object-C пишешь.
>>750139>>750183
#261 #750139
>>750127
Не знаю как он, но VFL - отличная хуитка, всё очень наглядно.
#262 #750183
>>750127
Да, портянки. Более того, автолэйаут не везде использую.
Пишу на Обж-Си, но планирую начать писать новый код на свифте. И мож старый переписывать под него. Планирую.
216 Кб, 1613x1528
396 Кб, 1613x1528
#263 #750357
>>722377 (OP)
Пиздец бля.
>>750399>>750470
sage #264 #750399
>>750357
Нишеброд с хакинтошем - детектед
>>750440
#265 #750411
Спасибо за мнения, не ожидал столько адекватных ответов.

>>750119

>Вообще, я всем рекомендую идти в бэк. Станешь умнее. Освоишь докер, балансировочные решения. Маппинг апишек. Монгу. Эх, весело.


>В мобилках ты так и будешь лабать мусипусечки для мобилок.


Не могу распознать, это сарказм или нет?
>>750491
113 Кб, 700x544
#266 #750440
>>750399
Сасай
>>750451
sage #267 #750451
>>750440
Слоупок, обнови ось
#268 #750470
>>750357
В чем прикол?
#269 #750491
>>750411
Что бы это не было – в каждом сарказме есть лишь доля сарказма. Серьёзно. Не попробуешь на себе – не узнаешь, скучно это или нет. Ну и ещё: "Хорошо там, где нас нет". Может, мне бы хотелось быть джавистом, ломать голову над тем, сколько десятков гигов разрешить сожрать приложению, деплоиться по 5 часов. А тому джависту, на которого я завороженно смотрю, хотелось бы не думать о ресурсах и охуевать от того, почему эта анимашка работает вопреки всем законам кинематики.
WWDC 2016 #270 #750835
кто-нибудь едет?
#271 #751245
Кто-нибудь сталкивался с UIKit багов на анимированном удалении ячеек из таблицы?
#272 #751445
Посоны, я что-то не вкурил, как хранить какой-то класс по указателю id (для dynamic binding) и пользоваться ARC? У меня вылетает

>Multiple methods named “<method name>” found with mismatched result, parameter type or attributes



Все это конечно охуительно и про это ограничение я читал в офф гайде, но как мне теперь реализовать паттерн "Стратегия"?
>>751468
#273 #751468
>>751445
Ладно, для стратегии это не особо большая проблема, а вот как обеспечить позднее связывание, мне решительно не ясно.

Я хочу сделать позднее связывание, чтобы иметь возможность подкинуть dummy-класс в объект для тестирование. Mocking я не использую, поэтому решил сделать аля питон - втупую хранить по id. Но получаю эту ошибку. Я так понял, ARC engine чего-то не может сделать - тут я еще уточню. Но как мне добиться желаемого не делая общий протокол для dummy и обычного класса?
>>751704>>756917
#274 #751704
>>751468

>подкинуть dummy-класс в объект для тестирование


NSProxy погугли, мб пригодится, оно что-то подобное делает вроде.
#275 #754270
>>722377 (OP)
Как считаете стоит в iOS разработку уходить из энтерпрайзной Java?
Мак и желание фрилансить и пилить свои аппы (хотя кому они нафиг нужны) в будущем имеется.
>>754400>>754976
#276 #754400
>>754270
попробуй в свободное время айос, если понравится то перекатывайся
#277 #754437
Поцаны, допустим приходит ответ jsona { zalupa = "zhopa",
her = "zhopa2" }
Как мне лучше получить значение в залупе?
>>754440>>754473
#278 #754440
>>754437
в словарь брать и затем просто по ключу?
#279 #754473
>>754437
написать класс который отвечает предметной области. Перегнать дж-сон в класс, дальше берешь по проперти
#280 #754789
>>722377 (OP)
Скутаренко, по курсам которого мы все учились, наш великий учитель, предал эпл и ушел работать в гугл и теперь пилит курс для андроид. Это начало конца.
>>754790
#281 #754790
>>754789
ДА ЛАДНО!???
Слоупок ебанный, он уже давно в гугле
#282 #754976
>>754270
Охуеть
Из умного бэкендера идти верстать под мобилки? Пиздец
>>754988
#283 #754988
>>754976
> Из умного бэкендера
Ты хотел сказать интерпрайз-макаки

Двачую адеквата, в интерпрайзе задачи гораздо интересней и Java куда удобнее/современнее свифта
68 Кб, 736x736
#284 #754998
>>754988

>Java куда удобнее/современнее свифта

#285 #755023
>>754988
Да уж интересно что пипец
#286 #755284
>>754988

>>Двачую адеквата, в интерпрайзе задачи гораздо интересней и Java куда удобнее/современнее свифта


ну нельзя же так жирно
#287 #755416
Эй, полуебки из Харьков, кто хочет опыта поднабраться, заполняем http://www.appus.pro/trainee
>>755433>>755452
#288 #755433
>>755416
Чет там слишком пезд дохуя, не пойду.
>>755449
#289 #755449
>>755433
4 на 40 человек коллектива, ну лан
>>755456
#290 #755452
>>755416
Сам иди в эту парашу.
#291 #755456
>>755449
Если есть пизда в коллективе, я буду думать не о работе, а о ебле.
#292 #756496
СУКА, ЁБАНЫЙ XCODE 7.3.xx И ЕГО ЁБАНЫЙ АВТОКОМПЛИТ!!!!!
Пришел домой, тут старенький 7.2 стоит, И ВСЁ РАБОТАЕТ БЛЯТЬ, ВСЕ ЕНУМЫ БЛЯТЬ ПОКАЗЫВАЕТ В ВАРИАНТАХ ВЫБОРА, ГОСПОДИ 10 из 10.
Ебаный 7.3, эпол, будь ты проклята.
>>756591
#293 #756591
>>756496
Выключил показ предложений автокомплита вообще и всем рекомендую. Если уж нужно – нажмёшь Esc
>>756738
#294 #756660
Возмонжно ли по гироскопу, акселерометру и компасу следить за передвижением телефона (и нарисовать пройденный путь) без использования gps'а, в оффлайне, с хоть какой-нибудь приемлимой точностью в метр-два хотя бы? То есть, не будут ли погрешности и ошибки (ведь показания можно снимать лишь я определённым интервалом, правильно?) накапливаться с каждым новым измерением? Есть ли такие приложения? Не будет ли оно мгновенно убивать батарею (в смысле, разумно ли это вообще делать)?
Если нет, то всё, что там нужно, это немного математики и готово, да?
>>756679
#295 #756679
>>756660
iOS это не Android:

Что бы это работало (с твоей точностью), нужно чтобы твое приложение было открыто и постоянно был включен экран.
В ином случае твое приложение просто остановит система.
>>756698
#296 #756698
>>756679
Ну это мелочи. Да и, говорят, что можно и в бэкграунде http://stackoverflow.com/questions/28941981/accessing-the-accelerometer-in-ios-while-running-in-the-background

У меня вопрос, в основном, в том, что не собьёте ли это всё? Как там ускорение вычисляется, среднее за прошедший промежуток между эвентами? Телефон же в кармане во всех трёх направления будет постоянно болтаться, изменяя и ориентацию.
В общем, не смотря на систему даже, просто с концептуальной точки зрения, это ведь возможно? А то вот представил, что если значения ускорения будут передавать раз в два шага, скажем (для примера, понятно, что там миллисекунду будут), то телефон сначала ускорится, а потом замедлится, остановившись, пока другая нога двигается. И всё, среднее ускорение 0, а ведь подвинулся. Подонбого плана проблемы могут возникнуть?
#297 #756738
>>756591
да оно вообще не работает сейчас. Вот тебе надо написать чтонибудь типа [NSLayoutConstraint constraintWithItem:container attribute:... и всё, пизда - хуй ты выберешь нужную опцию среди атрибутов, нажмёшь ты Esc или нет - список выпадает, но он пустой, и в нём отображаются только те варианты, которые ранее встречались в этом же классе. Приходится через cmd+click ебашить в метод, там щёлкать на имя енама и, провалившись в него, выбирать нужное.
Ёбаный эпол, надо же было так сломать всё к хуям.
69 Кб, 815x635
#298 #756793
Подскажите, пожалуйста. Есть штука типо пикрелейтед. То есть какая-то картинка\текст сверху, а под ними таблица с разными кнопками. Нажимая на кнопку - изменяется верхний текст и картинка. Можно было так не делать и сделать через простой тейблвиев, но тогда при скролле нужная мне вещь улетает за верхний край экрана. Зато изменяется. А так не получается изменять. В общем 2 вопроса:
1. Как изменить текст Your Routes на скрине при нажатии на элементы таблицы.
2. Как зафиксировать верхнюю шапку, если этот текст прописать над таблицей в тейблвиевконтроллере?
У меня ни так, ни эдак не выходит, не знаю что делать.
>>756861>>756915
#299 #756861
>>756793
Ты можешь сделать это через простой тейблвью с одной секцией и sectionHeaderView - тогда этот хедервью не будет улетать, а постоянно будет находиться на экране.
#300 #756862
Какое же говнище Apple наворотила со строками в Swift

Дано: Строка content с текстом, строка regexString для разделителей
Задача: Получить массив строк, разделённых этим regex'ом

Сложность: Сделать это без извращений
>>757745
#301 #756915
>>756793
Делегат жи есть.
У тебя по сути получается Container ViewController, который держит внутри себя встроенный контроллер. Общайся делегатами.
>>756927
#302 #756917
>>751468
Mocking я не использую

А почему? и да, obj-c или swift ?
#303 #756927
>>756915
Нахуя ему всё это, если можно сделать headerView, как я описал выше >>756861.
Таким образом всё умещается в один tableViewController, без необходимости ебаться.
#304 #757004
>>756861
Спасибо.
#305 #757071
>>756861
Всё равно ездит, как зафиксировать хедер?
>>757180
#306 #757180
>>757071
Что у тебя там ездит?
Пример даже тебе состряпал, неуч:
http://rgho.st/8LgCfQjKH
>>757642
#307 #757385
Ребят, привет.

Подскажите пожалуйста, может где есть гайд.
В общем я делаю приложение с картой, и мне нужно, чтобы мои координаты отправлялись на определенный сервер, допустим с периодичностью в 15 минут.
>>757626>>757635
#308 #757626
>>757385
MKMapView, NSMutableURLRequest, NSTimer
>>757635
#309 #757635
>>757626
Нахуя?

>>757385
CLLocationManager гугли и используй.
>>758142
49 Кб, 678x199
#310 #757642
>>757180
Спасибо, но как мне в неё впихнуть то, что я хочу, а не создавать новый хедер? Или как в этот новый хедер вставить то, что я хочу? Там нил.
>>757669>>757672
#311 #757649
Swift заменяет Objective-C?
#312 #757669
>>757642
Ну кастомный класс сделай, со своими контролами, сохрани ссылочку на него и используй как тебе вздумается. Что ты как маленький.
http://rgho.st/6x98Wq9T2
>>758271
#313 #757672
>>757642
И зачем ты там вообще UITableViewCell используешь то? Криво получается же. Там обычная вьюха нужна. Накрайняк обёрнутая во viewController, если сильно хочется.
>>758271
12 Кб, 320x240
#314 #757696
Сравнение свифта и котлина

https://nilhcem.github.io/swift-is-like-kotlin/

Похожи то похожи, но у свифта есть более удобные if let, guard let, нормальные литералы массивов и дикшэнарей, а не arrayOf ( ... ) mapOf ( ... to ...)
>>757728
#315 #757714
>>722377 (OP)
Говно ваш свифт ебанный.
Делал проект на сфите еще под Мавериксом, все работало нормально. Пару месяцев назад решил собрать этот проект под капитаном, скомпилилось все без ошибок, но тут же упало при запуске. Пришлось все с переделывать. И где тут гарантия, что после выхода свифт 3 такая же фигня не произойдет?
>>757715
#316 #757715
>>757714

>скомпилилось


Сразу видно джуна, сеньоры говорят "скоНпилилось".
Потому и не работает у тебя ничего.
>>757730
48 Кб, 630x310
#317 #757728
>>757696
Во первых: сейчас вопрос выбора вообще не стоит.

Во вторых:

> у свифта есть более удобные if let, guard let


По факту это вкусовщина, размер кода и понятность такая же (тем более когда есть автокаст).

Вообще в Kotlin есть девиз "как можно меньше внедрять в язык, а делать на уровне библиотеки".
Это более гибкий подход для языка и даст преимущество в будущем (Apple конечно на это плевать, они язык ломают каждые полгода).

Кстати скоро в Kotlin появится async/await/yield "из коробки", вот тогда заживем.

юзаю котли уже год (свифт слегка щупал)
>>769484
#318 #757730
>>757715

>Сразу видно джуна, сеньоры говорят "скоНпилилось".


Во-первых, to compile поэтому скомпилить.
Во-вторых, это не имеет отношения к тому что свифт - говно.
#319 #757736
>>757730
Эпол писали о том, что обратной совместимости между версиями можно не ждать?
#320 #757745
>>757730
Разбить строку в массив по регексу

Kotlin: str.split(regex.toRegex())
Swift: Всё ещё не знаю как >>756862
>>757767
#321 #757767
>>757745
Давно бы уже написал категорию к String и не ебал себе мозг

let regEx = NSRegularExpression.regularExpressionWithPattern
(splitter, options: NSRegularExpressionOptions(), error: nil)
let stop = "SomeStringThatYouDoNotExpectToOccurInSelf"
let modifiedString = regEx.stringByReplacingMatchesInString
(self, options: NSMatchingOptions(),
range: NSMakeRange(0, countElements(self)),
withTemplate:stop)
return modifiedString.componentsSeparatedByString(stop)
>>758009>>769491
#322 #758009
>>757767
>>757767
Я сразу по error: nil и countElements вижу, что эта кривота не заработает на текущей версии отбросов Тима Кука.

Мало того, что твой код напоминает танцы вокруг плюсов до времён C++11, он ещё и не рабочий. Плюсишные костыли хотя бы один раз написал, засунул в либу и забыл об этом ужасе до времён оптимизации. А тут ещё и каждый раз придётся лезть в код и недоумевать от очередных яблочных приблуд.

Высокоуровневый язык, my ass.
>>758086
#323 #758086
>>758009
Да я и не говорю что на этом сырье надо что-то писать - считаю что те, кто уже перелез на свифт - лютые говноеды.

Эпол в момент релиза Swift, сразу сказали что спеки будут сырые и что всё пока as is.
Не что-то - оформляй issue в гите свифта - впилят. Или сам впиливай и пытайся пульнуть.
Сырой язык, и всё тут.
>>758174
#324 #758142
>>757635
с мэпвью это я погорячился, да.
#325 #758174
>>758086

> считаю что те, кто уже перелез на свифт - лютые говноеды.


Это ты про twitter и linkedin?
>>758242
#326 #758242
>>758174

>linkedin


Ты их приводишь как пример крутых ios-разработчиков сейчас? У них ios-клиент работает как говно сраное - с притормаживаниями и подвисаниями.
104 Кб, 796x448
#327 #758271
>>757669
Ты просто присваиваешь лейблу хедера значение и вставляешь. Как мне вставить много элементов?
>>757672
У меня вопрос как в этих темах примерно:
http://stackoverflow.com/questions/9219234/how-to-implement-custom-table-view-section-headers-and-footers-with-storyboard
http://stackoverflow.com/questions/13379547/dequeuereusablecellwithidentifier-always-returns-nil-not-using-storyboard
У меня просто создается пустой новый хедер.
>>758335>>758342
#328 #758335
>>758271

>Ты просто присваиваешь лейблу хедера значение и вставляешь.


Ты в CustomHeaderView заглядывал вообще?
Чот дебик какой-то))0
http://rgho.st/7PhrZTKPP
#329 #758342
>>758271
А вот тебе с xib'ом
http://rgho.st/7RvzbmZjn
#330 #759910
Выручайте пацаны, всю голову сломал.

В моем приложении, есть момент где есть некий CIfilter, который смешивает два изображения. Но суть не в нём, а в
куске кода, который CIImage -> UIImage для вывода на экран.
Вот он

context = CIContext(options:nil)
let cgimg = context.createCGImage(filter.outputImage, fromRect: filter.outputImage.extent())
imageView.image = cgimg

Он работает, но сука, жутко тормозит систему. А обработка мне нужна "на лету". Пробовал его заменить на

let newImage = UIImage(CIImage: filter.outputImage)
imageView.image = newImage

Но этот код возвращает пустое изображение, не Nil, а именно пустое.
Вообщем вопрос, как с минимальными ресурсами перевести CIImage из фильтра в UIImage?
Асинхронно в этом случае нельзя, входное изображение максимально оптимизирую перед подачей в фильтр.
>>759914
#331 #759914
>>759910
первый кусок кода написал с ошибкой, там так.
context = CIContext(options:nil)
let cgimg = context.createCGImage(filter.outputImage, fromRect: filter.outputImage.extent())
let newImage = UIImage(CGImage: cgimg)
imageView.image = newImage
>>759945
#332 #759945
>>759914
отбой, сам разобрался, нужно было вынести инициализацию контекста вне цикла с фильтром, что бы не дергать его лишний раз.
#333 #760580
Есть шанс попасть на вакансию trainee iOS-разработчика. От меня будут требовать ТОЛЬКО теоретические знания на собеседовании, далее выдадут мак и три месяца на приобретение практических навыков.
Есть одна загвоздочка - никогда не кодил под iOS, Cи был только на первом курсе в виде laba1. ОО-концепцию понимаю, и, как любой Java-питух, пробовал кодить под андроид.
ОП-пост читал не жопой, просто попрошу знающих анончиков чуть более подробно и исходя из специфики моего реквеста написать мне road-way. И с чего начать-то.
#334 #760587

> trainee iOS-разработчика


Это что такое? Судя по слову "вакансия" тебе за это деньги платить будут или как?

Ну и план за щекой поищи
>>760592
#335 #760592
>>760587
Trainee == практикант/стажёр.

Да, как я уже упоминал, мне дадут мак плюс какая-то небольшая плата.

За щекой поискал, ничего не нашёл. Можешь из-за своей достать и все-таки указать road-way?
#336 #760623
>>760580
стенфордские лекции
#337 #760961
>>760580
Чувак. Заходи на русракер. А дальше в зависимости от того, на чём будешь писать проекты: пишешь objective-c lynda.com или swift lynda.com. Ещё есть охуенные лекции от них более узкоспециализированные
#338 #761052
>>760580
Делюсь ещё одной порцией информации: им нужны iOS-разработчики, но тестовое задание на проверку теории будет по Си/Си++. На мой вопрос "Почему сразу бы не спрашивать по Obj-C?" - ответили "Чтобы люди и со знанием Си тоже могли попробовать, мы из переучим в ходе стажировки".

Поясните, это нормально? Мне придётся вспоминать няшную и плюсы хотя бы на базовом уровне. Такой-то ад.
>>761057>>761058
#339 #761057
>>761052
Какая-то охуительная логика, ну да ладно.
#340 #761058
>>761052
Плюсы не нормально, С нормально. Обжектив - надмножество С, если ты знаешь обжектив, знаешь и С. На трейни iOS распространено когда требуют С (иногда вообще любой язык) а не обжектив. Там не должны какую-то заумную ебалу спрашивать - только синтаксис. Тащемта для iOS разработчика плюсы тоже относительно полезно знать, хотябы на уровне общего синтаксиса - в некоторых вакансиях требуют, но это скорее специфические случаи. Плюсовые исходники достаточно просто подключить к обжектив проекту, если есть хорошая плюсовая библиотека (а их больше на плюсах чем на обжективе) то лучше ее использовать. В моем бодишопе (iOS) на одном проекте использовали boost (для линала) - но это требование заказчика было. Специально учить плюсы естественно не стоит, тем более новичку. Но в общем их знание небольшой плюс, если вдруг есть желание. У нас новичек как-то проговорился что он интересуется плюсами (и D), понемного Qt ковыряет. Его ПМ потом долго пытал пытаясь выбить признание что он "знает плюсы" - чтобы его как плюсовика можно было продавать, но чувак отморозился.
>>761062
#341 #761062
>>761058

> Тащемта для iOS разработчика плюсы тоже относительно полезно знать, хотябы на уровне общего синтаксиса



Будут вопросы по самым банальным вещам: встроенные типы данных, объявление, инициализация; операции - арифметические, присваивания, битовые; циклы и условные операторы; классы - поля, методы, статические переменное и так далее; наследование и полиморфизм. Это все, как я понял, относится к Си/Си++. Так-то, два года назад начинал своё знакомство с программированием этих языков. В плюсах базовые вещи освоил. Сейчас надо как-то за чуть более, чем неделю все это освежить в памяти. Уже когд как занимаюсь Java, все из плюсов забыто.

Спасибо за столь развёрнутый ответ.
#342 #763206
Привет, аноны. Сейчас занимаюсь разработкой под андроид, но планирую вкатываться к вам. Как правильнее это делать? Планирую начать с изучения obj c, попробовать сделать что то простое типа прогноза погоды. А потом уже изучать swift, нормальный поход? И как быть если у меня шинда, не проблема ли компилить все на виртуалке?
>>763496
#343 #763496
>>763206
Тред не читал что ли?
Выше ВСЕ пояснили уже.
#344 #764594
Как очистить все текстыфилды в ячейках таблицы по экшену? Как без костылей прально реализовтаь
239 Кб, 1366x768
#345 #764626
Помогите тупому, второй день как пытаюсь въехать в json.

Есть json ответ от ВК в виде всех записей стены, вот к примеру начало

response: {
count: 617,
items: [{
id: 67640,
from_id: -86529522,
owner_id: -86529522,
date: 1465326080,
post_type: 'post',
text: 'Создатель [club41960539|Крошки Ши] на VK Fest'

Используя swift + swiftyJson пытаюсь получить например "id" первой записи на стене

Составляю запрос:
if let id = jsonResult["response"][1]["items"][0]["id"].string {
print("ID: \(id)")
}
И получаю хуй. jsonResult точно правильный, при выводе print(jsonResult) в консоли вижу все вот это. Где я делаю что не так? Просто логика обращения к джосн мне не очень понятна как новичку, особенно через костыли.
>>764637
#346 #764637
>>764626
А нафига там [1]?
>>764676>>764682
#347 #764676
>>764637
Я так понял, что response - это что то вроде массива, у которого первый элемент это count, а второй items. Видел что так делали в примере.
>>764682
#348 #764682
>>764676
>>764637
попробовал сделать так
if let id = jsonResult["response"]["items"]["id"].string {
print("ID: \(id)")
}

Все равно не работает.
>>764701
#349 #764701
>>764682
Пробуй ["response"]["items"][0]["id"]
Тебе в объекте response нужно свойство items, которое является массивом, в нем ты берешь [0] элемент.
#350 #764717
>>764701

if let id = jsonResult["response"]["items"][0]["id"].string {
print("\(id) ID")
}

Попробовал, не хочет. Я вообще не попадаю в тело цикла, т.е. swiftyJson где то натыкается на nil в моем запросе.
Опять же, json точно не пустой и соответствует тому, что я скинул.

К слову, этот код
if let array = jsonResult["response"].array {
print(array[0])
}
возвращает верное значение count.
>>764722
#351 #764722
>>764717
https://new.vk.com/dev/wall.get?params[owner_id]=-86529522&params[count]=3&params[filter]=owner&params[extended]=1&params[v]=5.52

Вот тут можно посмотреть пример ответа вк, если это важно(нужно быть залогиненным вк)
>>764723
#352 #764723
#353 #764844
>>764701
Может проблема в этом?
Пробовал выводить jsonResult в терминал в виде стринга, и там увидел вот такое:

{
"response" : [
655,
{
"id" : 830,
"comments" : {
"count" : 0,
"can_post" : 1
},
"reply_count" : 0,
"can_delete" : 1,

немного отличается от официального api вк, может в этом проблема?
#354 #767218
Анон, я тут проникся этими идеями швабодки и все такое и задал себе вопрос на который не смог ответить.
Допустим что-то произойдет, где Apple сделает неверную ставку и сольется как Nokia или как Siemens ну или как вот там иные всякие гиганты кажущиеся непотопляемыми проебывают рынок, что потом о них и не вспоминают.
Т.е. можно, конечно, сидеть тут сейчас и приводить мантры и аргументы уровня геополитики почему это не произойдет но меня интересует вопрос куда можно будет совершить перекат, если у нас все завязано на фреймворке фоундейшен, который нигде больше не используетс ?. Т.е. какая область имеет наивысший потенциал по перекату или они все откатятся в почти начальную точку ?
>>767614>>768059
#355 #767227
Есть ли тут те, кто перекатился из iOS куда-то в другую сферув смысле не пекарем булочек стал
Почему перешли?
Что заебало?
Куда перешли?
Есть ли какая-то тенденция переката iOSников в какую-то определенную область или у всех хаотично ?
>>767730
#356 #767397
Аноны, а вы все кодите на iOSе??
Просто дрочусь на линухе, а писать тут западло, нету того функционала.
:C
>>767614
#357 #767614
>>767218
Ну учи кросплатформу, там много вариантов.

>>767397
Дурачек, iOS это на айфонах, на десктопе OS X.
Если собрался шпилить под натив (swift/obj-c для ios), то тут без OS X не обойтись.
>>768034
#358 #767709
Как лучше всего делать на iOS простые анимации типа прыгающий шар, мигающие кнопочки и пр. Использовать низкоуровневую графику типа как в играх? Встроить WKWebView и там уже проигрывать js+css+html? Flash? Какие есть варианты?
>>767745
#359 #767730
>>767227
Нет конечно. iOS-разработчик – это высшая стадия развития кодера.
#361 #768034
>>767614
Я не спрашиваю, что учить. Я не спрашиваю как предупредить проблему, я спрашиваю, что будет, когда и если она настанет
>>768183
#362 #768059
>>767218
Не произойдёт. Эппл – это пендосики, сравнил тоже с каким-то Сименсом или Нокией
#363 #768183
>>768034
Ты какой-то странный.
В любом случае с таким вопросами тебе в /b/.
#364 #768193
Какой iOS-нику важно/удобно/полезно знать вспомогательный язык и почему? Какой вы знаете ? Ну т.е. не то, что вы чем-то другим до этого занимались а потом у вас этот навык просто остался и вы его знаете а именно будучи иосником ?
Я сам вообще начитавшись всяких анонов избегал веба и всего, что с ним связано как огня, чтобы не утянуло ложной легкой дорогой в начале обучения, что даже ни разу html страницу типа my home page не создавал в отличие от множества людей делавших это и не даже не связанных с программированием.
Я как-то недавно попробовал python и он мне так понравился, он был таким ПРОСТЫМ няшным и понятным после боли и ебли с obj-c, что мне стоило сделать над собой усилие, чтобы не искусится этим демоном и продолжать держать уздья в правильном в долгосрочной перспективе направлении.
>>768217
#365 #768217
>>768193
Зависит от того, чем ты будешь заниматься. Если пишешь бэк для своих приложух – очевидные питухон\джава, если фронты – ЖС\Реакт.
>>768608
#366 #768441
Можно ли средствами эппла получить координаты улицы, целиком её описывающие? То есть, чтобы получив название улицы по свои координатам через CLGeocoder я мог привязать себя к этой улице и дальше при каждом обновлении позиции находить ближайшую точну именно на ней, а полилайны бил красивенькие и ровные. Ну и главное, конечно, что повторный проход по этому же месту будет легко определяться как повторный без каких-либо дополнительных сравнений прошлых координат.
Финальная цель — что-то типа "места, по которым уже ходил".
#367 #768608
>>768217
Мечтаю о геймдеве но чувствую сначала придется насосаться хуев во всякой параше
#368 #768821
Ну чо, пацаны, теперь у нас МакОсь, а не Ось Икс.
>>768833
#369 #768833
>>768821
Старые добрые времена

> Не работает под Макинтошем. Понятно. Не было печали - купила баба Макинтош. Будь проклят тот день, когда Стивен Джобс вернулся в Эппл. Глядишь, уже и обанкротились бы. Так нет же…. Ну, пойдем смотреть. Где этот чертов суперкомпьютер? Велкам ту Макинтош. Издевательство какое-то над людьми - ну зачем, зачем они покупают этот мусор за тысячи долларов? Да нет, мне не жалко их тысяч. Но ведь мы должны поддерживать этот антиквариат! Ладно, я спокоен. Я спокоен как змея. Да, вижу, не работает. Да, ошибка есть. Да, будем исправлять. Есть в этой суперсистеме телнет? Нету? А кто сомневался. Ты сомневался? Я - нет, не сомневался. В ней только фотошоп есть и все. Это специальная система для фотошопа. Так бы и продавали - макинтош для фотошопа. А телнет - зачем ей телнет? Не нужен ей телнет

#370 #768850
Тут, конечно 3.5 анона да и те, илитарии-баловни судьбы с макбуками несведующие материальных проблем, но я попробую перезадать вопрос здесь >>768830
#371 #768907
аноны,хватит 4 гига оперативы для комфортного кодинга?планирую брать модель 15 года с такими характеристиками Двухъядерный процессор Intel Core i5 с тактовой частотой 1,4 ГГц
4 ГБ памяти
Жёсткий диск объёмом 500 ГБ кто-нибудь прогал на таком?
>>768923
#372 #768923
>>768907
Если проект на неск сотен классов, то при перескакивании с ветку на ветку компиляться будет долго
>>768924
#373 #768924
>>768923
скок оперативки нужно для збс кодинга?
>>768927
#374 #768927
>>768924
от 8
#375 #768936
Приходит говно в виде:

(
{
fio = "Vasya"
adress = "moscow"
},
{
fio = "Nikolay"
adress = "spb"
},
{
fio = "Sergey"
adress = "novgorod"

}
)

Я получил дату в афнетворке, успешно закинул в массив дату = посмотрел все ок по логу, теперь как мне в объект HumanOrder записать?

делаю

for (NSMutableDictionary dictionary in dataArray) {

HumanOrder
humOrd = [[HumanOrder alloc] init];
humOrd.fio = [dictionary objectForKey:@"fio"];
humOrd.city = [dictionary objectForKey:@"adress"];
[itemsArray addObject:humOrd];
}

Ничего, как прально теперь из массива забрать и по объекту раскидать?
#375 #768936
Приходит говно в виде:

(
{
fio = "Vasya"
adress = "moscow"
},
{
fio = "Nikolay"
adress = "spb"
},
{
fio = "Sergey"
adress = "novgorod"

}
)

Я получил дату в афнетворке, успешно закинул в массив дату = посмотрел все ок по логу, теперь как мне в объект HumanOrder записать?

делаю

for (NSMutableDictionary dictionary in dataArray) {

HumanOrder
humOrd = [[HumanOrder alloc] init];
humOrd.fio = [dictionary objectForKey:@"fio"];
humOrd.city = [dictionary objectForKey:@"adress"];
[itemsArray addObject:humOrd];
}

Ничего, как прально теперь из массива забрать и по объекту раскидать?
>>768938
#376 #768938
>>768936
бля указатели проебались но вы поняли
#377 #768944
Лол, знаете в чем прикол был? Я забыл массив проинициализировать, а то сижу дебажу и думаю а хуле объекты не добавляются в массив
#378 #769343
>>768944
ебать прикол
#379 #769484
>>757728

> async/await/yield "из коробки", вот тогда заживем.


Да, мне, кстати, припекает от того, что эпол не собирается запилить асинк эвэйт. Во всяком случае планы на эту фичу не гуглятся. А ведь это будущее асинхронного программирования
#380 #769486
>>757730

> скомпилЯть


же
#381 #769491
>>757767
Да, регулярки они ещё не довели до ума. Давно пора было запилить оператор ~= для строк из коробки. Он есть для рангов и энумов, а для строк приходится определять его самостоятельно. Но я смотрю, в 3-м уже выбрасывают префиксы NS и вообще пилят новую foundation специально для свифта. Вот тогда и эти костыли перепишут. Обещают запилить в версии 3, если не ошибаюсь
#382 #769590
Антоши, подскажите как асинхронно скачать картинку и добавить ее на вьюху чтобы интерфейс не зависал? Положил свой код в dispatch_async но приложение на время загрузки картинки ни на что не реагирует. Сам ньюфаг. В многопоточности и во всех этих штуках не особо шарю.
>>769861
#383 #769600
>>733815

> с сдк ничего нет


А схуяли там должно быть про СДК? Там учебник по языку. Гугли документацию по Cocoa, китам
#384 #769601
>>735263
Autolayout охуенен, многие контролы в какаве продуманее и современнее, чем, например, винапишные контролы
#385 #769624
>>735329
лучше блокнот
#386 #769634
>>768944
Свифт бы тебя сразу нахуй послал с неинициализированной переменной. А потом тут кукарекают - зачем мне свифт, мне и на обжективе неплохо
>>772505
#387 #769861
>>769590
pod sd_webimage
#388 #770029
>>768944
))))0))0)000 ДА МИНЯ ДАШЛО))000 БЛЯ СУК ПРИКОЛ ТАКОЙ ОХУЕННЫЙ)))00
охуительные истории
#389 #770049
Рилейтед вопрос от мимокрока:

Планирую перекатиться на иось, хватит ли мощностей MBP 13 2015 i5/8GB/256 для кодинга? Не загнетлся ли мак после запуска xcode?
>>770059
#390 #770052
Есть кастомная ячейка, которая заполняется моделью, есть еще два массива, которые надо передавать в таблицу и заполнять те ячейки, если в этих массивах есть элемент из модели, так вот как мне передать эти два массива и сделать проверку? Сижу голову ломаю, задача ведь простая, мне осталось тока заполнить.

Допустим есть яечйка с 4 лейблами 1 и 2 лейбл подтягиваются из модели. затем гружу данные и должен заполнить 3 и 4 лейбл, в 3 лейбл из одного массива данные приходят в 4 лейбл из другого, причем эти данные есть не на все данные модели.

Короче вот пример

1 1 4 0
2 2 0 0
3 3 12 11

Т.е. там где есть такой же айдишник - заполняем, нет - пропускаем, как быть, подскажите. Сижу туплю
>>770071
#391 #770059
>>770049
Хех я на 4gb/128gb macbook air сижу и все норм, а тебе с твоими hello-world должно хватить и подавно.

Главное запомни, никогда не делать storyboard >4 контроллерами внутри, гарантированно будут тормаза на открытие.
#392 #770069
>>770059
я просто даже теоретически не знаю ресурсоемкость кодинга под иось, но знаю что в моей нынешней вебпараше 8гб мало (правда на убунте).

Спасибо.
#393 #770071
>>770052
Что тебе мешает добавить те два массива в модель и заполнять не только 2 лейбла, а все 4?
>>770078>>770167
#394 #770072
>>770059

>никогда не делать storyboard >4 контроллерами внутри,


Лучше ориентироваться не по количеству, а по логике сториборды.
Сториборда должна быть для опеределннного кэйсфлоу. Если надо, то можно и 8 запихнуть (ну главное не переусердствовать да)
#395 #770073
>>768944
сука кретин.
хорошо что таких как ты много, мои скиллы от этого ценнее
>>770080
#396 #770078
>>770071
в том что это разные модели

1 и 3 - 4 по сути это одно и тоже поле в модели
#397 #770080
>>770073
хуле до него доебался, я из-за невнимательности тоже ошибки делал в свое время глупые
#398 #770167
>>770071
Ты недопонял этого господина, сформируй новый датасорс с окончательными данными, а потом уже заполняй
#399 #770760
Аноны, перекатился из андрюхи. Нихуя не пойму как строится тут связь юи с кодом. Может кто для андройдичков объяснить?
>>770790
63 Кб, 736x736
#400 #770790
>>770760
правой кнопочкой зажимаешь и перетаскиваешь в код с помощью панели ассистента
>>770803>>770806
#401 #770803
>>770790
Ну так ты там указываешь лишь имя это переменной и ее тип. Откуда компилятор знает что я имел ввиду именно эту вьюху? В Андрюхе есть Класс R. в котором генерятся айдишники для вьюх, которые ты потом в коде и юзаешь.
>>770854>>770861
#402 #770806
>>770790
И еще, как дела обстоят юай потоками? Типа я могу к сети обращаться прям из него, и нихуя висеть и ожидать ответа не будет? Или есть какой нибудь async как в c#?
>>770824
#403 #770824
>>770806

> И еще, как дела обстоят юай потоками?


Так же как в андроиде: есть главный тред, есть фоновые.

Небольшая разница в том что для web запросов вообще нет синхронного апи, а только асинхронное через колбеки.

> async как в c#


Таких нет, в основном все пользуются Grand Central Dispatch, это что-то тип экзекьюторов в Java.
Там есть несколько готовых (для главного потока, для фоновых с разным приоритетом), но можешь и свой создать.
>>770854
#404 #770854
>>770824
Спасибо! А по вот этому вопросу - >>770803 ?
>>770871
#405 #770861
>>770803
Ты конкретный элемент с конкретной переменной связываешь. Так он и знает.
>>770868
#406 #770868
>>770861
Бля, суть не в этом. Я если напишу вот такую строчку в коде - @IBOutlet weak var lCash: UILabel!
ну и создам в юай лэйбл, где мне устанавливать связь между этим кодом и вьюхой?
18 Кб, 403x108
#407 #770871
>>770854
У каждой вьюхи на storyboard есть аналог andorid/id - это случайно-генерируемая строка (типа Uuid).
Явно она используется в основном только для локализации.

[см пик 1]
Так же внутри storyboard хранится информация о соответствие поля контроллера (property) к ее "id" (destination).
>>770876
#408 #770876
>>770871
Все! Вот то, что я хотел знать! Огромное спасибо. Программач лучше всяких стаков и тостеров.

З.Ы где на маке хранятся стандартные пикчи которые на десктоп ложатся по дефолту?
#409 #772498
>>770059

>Хех я на 4gb/128gb macbook air сижу и все норм


Нахуй так жить
#410 #772505
>>769634
Понятен прикол со свифтом – для косолапых. Знаете, это примерно как среди монтажников-высотников. Одни из них, малоопытные, пользуются страховочным поясом. Другие – никогда не пользуются. Первые падают и разбиваются, вторые – никогда. Происходит это потому, что тот, кто поясом пользуется, создает себе иллюзию безопасности. Однажды он забыл застегнуться, и вот уж его кости собирают в ящик. Тот, кто поясом не пользуется, – иллюзий не имеет. Он постоянно контролирует каждый свой шаг и никогда на высоте не расслабляется.
#411 #773965
А как работают программы, считающие израсходованный траффик на телефоне? Вроде такого — https://itunes.apple.com/us/app/dataflow-track-network-data/id955447159?mt=8 Хочу для практики в виджетах накостылять себе мелкоприложение (да и полезно будет, но без "связи с фейсбуком"), но даже не знаю, откуда начать. Туториалов не нашёл, в нетворк апи ничего полезнее transmitRate в Core WLAN тоже (видимо, плохо смотрел). Неужели эппл как-то даёт просто присосаться к интерфейсу и считать проходящие через него байты? Буду доволен и мелкой (но конкретной) подсказкой.
>>774022
#412 #774022
>>773965
По идее никак.
Но можно вспомнить, что в настройках отображается потребление трафика, значит эта инфа где то хранится (в бд конечно же!) и возможно они оттуда берут эти данные.
>>774029
#413 #774029
>>774022
А где эта бд? Вряд ли же они пропускают приложения, которые лезут куда не просят.
254 Кб, 1240x798
#414 #775032
>>722377 (OP)
ВНИМАНИЕ! ПЛАТИНОВЫЙ ВОПРОС ЗДЕСЬ!

Итак, анончики. Решил я заняться изучением Swift'а и говнокодить под IOS.

Прочитал документацию по типам данных, структурам, операторам и т.д. Всё хуйня, не сложнее чем в других языках.

Теперь реквестирую мануалов по ООП (классам, хуясам и т.д) и использованию GUI. Желательно с примерами.

Так же расскажите, что я прямо сейчас должен скачать без регистрации и СМС, чтобы накодить свой хэллоуворлд.
>>775053
#415 #775053
>>775032
Эх, а до сентября еще два месяца :\
>>775078
28 Кб, 300x322
#416 #775059
ёпт. да запилите уже нормальную шапку с ответами ГДЕ ЗОПУСКАТЬ? и с упорядоченной структурой с чего начинать обучение и как продолжать
>>778971
#417 #775078
>>775053
Чини детектор.
Выпускник ВУЗа 2014
>>775093
#418 #775093
>>775078

> ПЛАТИНОВЫЙ ВОПРОС


> Выпускник ВУЗа 2014


Это уже клиника, додвачевался ты голубчик.
>>775311
66 Кб, 331x459
#419 #775311
>>775093
Ну так с 2009 года на этой помойке...
>>775612
#420 #775612
>>775311
Кто этот педалик на пикче?
По сабжу: читай raywenderlich и доки эппла, дюже годно и православно.
#421 #775891
Аноны, я тот перекатившийся с андрюхи. Вопрос: есть сайт android-arsenal.com, а есть аналоги для ios?

З.Ы знаю про http://www.ioscookies.com/ui-ux и awesome репу на гитхабе
>>775927>>775943
#423 #775932
>>775927
Спасибо Анон! То что нужно, жаль правда разделов с категориями для либ нет.
#424 #775943
>>775891

> http://android-arsenal.com/details/1/3750


Ой бля, 4 года в андроид-деве и я ничего не упустил от того что не знал про этот сайт.
>>776704
#425 #776704
>>775943
Никогда в тебе не сомневался!
#426 #777162
Аноны, если смысл первокурснику изучать swift?
Если какие то перспективы в этом в России?
Изучать чисто для практики и опыта в программировании вообще. Как самообразование.
>>777171>>777203
#427 #777171
>>777162
1 есть
2 да
>>777178
#428 #777178
>>777171
Спасибо, значит буду ебошить в этом направлении
#429 #777203
>>777162
Староват ты конечно для этого, Apple детей в него обучает.
http://www.apple.com/swift/playgrounds/

https://www.youtube.com/watch?v=mnQ-tKzkoOs
#430 #778971
>>775059

>с чего начинать обучение и как продолжать


Ишь ты, хитрый какой. Мы тут лампово няшимся вообще-то, текущей тусовочкой. Зачем нам тупые новички, которые сначала глупые вопросы задают, а потом еще и заработные платы демпингуют.
>>779146
#431 #779108
И так. Вкатываюсь в iOS, начинать со свифта и потом доучить обжектив си или наоборот?
>>779146
#432 #779146
#433 #779673
Есть годная подборка книг по Objective-C ?
>>779676
#434 #779676
>>779673
как там в 1985?
>>779685
#435 #779685
>>779676
все коммерческие проекты разрабатываются на obj-c, на swift не многие рискуют свои проекты переводить.
>>779965>>780890
#436 #779965
>>779685
дело не в языке а в поиске информации в книжках, уже все устарело, извини
#437 #780890
>>779685
Все, блядь, все, конечно
#438 #780993
Вы с этим свифтом уже до уровня питон 2 или 3 докатились.
>>781274
#439 #781274
>>780993
Да похуй всем на свифт, пока он не устаканится и эпол не скажет - "Всё, всё готово, пишите".
>>781694
#440 #781694
>>781274
Эпол так с выпуска свифта говорит.
>>782101
81 Кб, 700x714
#441 #781781
Спрошу здесь, пишу шкриптики в гейосе, и у меня тут анальные боли, когда ставлю одинарную кавычку ' и скажем нажимаю латинскую a, то ПОЛУЧАЮ АНАЛЬНЫЙ РАЗРЫВ В ВИДЕ á, пиздец, как отключить эту хуйню? еще, если поставить сразу две одинарные кавычки, то между ними появляется третья, это же гейос меня ебет, а не редактор в нескольких проверял
>>781876>>782113
#442 #781876
>>781781
У тебя какая клавиатура стоит? Как тебе это удаётся?
>>782103
#443 #781950
У меня куча знаний по иоси, но все пиздец разбросано, посоветуйте книгу структурировать это все. А то на практике я все по немного использовал и не всегда понимал суть как это работает
>>784040
#444 #782101
>>781694
Ага, а swift sdk в ios всё еще отсутствует
>>782102
#445 #782102
>>782101
Runtime имел в виду
#446 #782103
>>781876
Обычна клавиатура, не епловская.
#447 #782113
Бля, нашел из-за чего была эта хуйня, в раскладках стояла США международная ПК, по аналогии с русской ПК, вот она и творила это пиздец. >>781781
кун
>>782795
#448 #782795
>>782113
Хотел тебе вчера написать, Митрофанушка, но капчу не осилил.
#449 #784040
>>781950

>У меня куча знаний по иоси, но все пиздец разбросано, посоветуйте книгу структурировать это все. А то на практике я все по немного использовал и не всегда понимал суть как это работает


Ios technology overview. А вообше, нехуй было по верхам скакать и вместо того, чтобы копипастить с SO надо было читать гайды
>>784061
#450 #784061
>>784040
Ну я просто книжки не нашел подходящей для себя. Везде вода или устаревшее было
#451 #785588
О раз за книги базар, какую хорошую книгу посоветуете? Ясень пень на английском. Нерд ранч какая-то хуйня все таки, извините.
#452 #785620
Objective-C, Swift, C/C++ сплошные.

А тем временем боги пишут на Xamarin.iOS
>>785712
#453 #785712
>>785620
Пиздёж
Бог
32 Кб, 350x499
#454 #785804
Всем привет. У кого-нибудь есть электронный вариант Beginning iPhone Development with Swift 2: Exploring the iOS SDK?
Устал поисковик дрочить, не могу найти.
>>785813>>786182
#455 #785813
>>785804
Поищи на амазоне или на дригих заграничных книжных магазинов.
Там часто продают книги в электронном виде.
>>785832
#456 #785832
>>785813
Но я не хочу покупать.
>>785881>>785894
#457 #785881
>>785832
Быть может и мак ты спиздишь?
>>785884
#458 #785884
>>785881
Ты не поверишь... хакинтош
Книжку, кстати, таки нашел.
863 Кб, 1920x1080
#459 #785894
>>785832

> Но я не хочу покупать.


Петушок, а туда ли ты зашел?
Может лучше ведроидом займешься.
>>785935
#460 #785922
>>735786

> я абсолютный ноль в кодинге, но когда-то забесплатно сделал что-то издали слегка напоминающее то, о чем ты говоришь, но цену я тебе все-равно не скажу.


Спасибо, ваш комментарий очень важен для нас
#461 #785935
>>785894
лол, сид иблядь со своим миником и не выебывайся, нищенка блядь, а гонит на анона.
>>786035
13 Кб, 200x200
#462 #786035
>>785935
не миник, а древний не ретина макбук
#463 #786182
>>785804
"Beginning iPhone Development with Swift 2: Exploring the iOS SDK pdf" - первая ссылка в гугл.
Ты ебанутый?
>>787469
#464 #786359
Аноны, подскажите какой путь правильный. Сначала вникнуть в обж-си, заиметь на нем опыт и потом перейти в свифт или же вникнуть в свифт, пописать на нем и перед трудоустройством вникнуть в обж-си?
>>786401
#465 #786401
>>786359
Это даже не платина. Это уже вибраниум какой-то.
>>786413
#466 #786413
>>786401
А если ближе к делу?
#467 #786702
Посоны, какого уровня аппы нужны в портфолио, чтобы мидлом взяли?
>>787031
#468 #787031
>>786702
С нуля без опыта в айти? Ну если ты сможешь чисто на доход с этих аппов выживать без проблем в Москве на съёмной квартире, то возьмут.
>>787339
#469 #787339
>>787031
Не, опыта в айти как у дурака махорки, 5 лет, но в вебе
Просто дома хуево учится, а вот когда РЕАЛЬНЫЕ ЗАДАЧИ РЕШАЕШЬ, ну ты понил
#470 #787367
как разрабатывать по айос не имея яблофона?
>>787399
#471 #787399
>>787367
Глупые вопросы какие-то, ты из деревни что ли. Сначала надо гей-шлюхой на панели постоять, поторговать жопой, чтобы накопить на макбук, айфон и айпад. А потом уже и начинать программировать.
#472 #787469
>>786182
Да, братишка, я ебанутый.
#473 #787493
А есть что-то по обжу новое, а не 1985ого года? Хочется книгу где пошагово от нуля (типов данных) до конца разъясняется за синтаксис + в конце каждой главы задания даются.
Стенфордские курсы не предлагать, на слух не воспринимаю инглиш, а вот читать могу.
>>787494
#474 #787494
>>787493
Биг нерд ранч
>>787844
#475 #787602
аноны, сор если не тут стоит спрашивать, или если грубо будет звучать, но iOS по сравнению с ведройдом сильно проигрывает в плане рынка труда?
если бомж без яблокотехники, возможно стать программистом под iOS или андройд и не выебыватся?
>>787603
#476 #787603
>>787602
Как ты без мака собрался под ифон писать?
>>787608
#477 #787608
>>787603
поднять на виртуалке систему. я и спрашиваю реально или нет. без шуток, вроде ж норм спросил
>>787648
#478 #787648
>>787608
поднимай виртуалку и пиши , в чем проблема то ?
в офис попадешь будешь писать на маке\мак мини
>>787657
#479 #787657
>>787648
тут скорее вопрос от знатоков, я в жизне яблокотехнику не держал дольше 10 минут. возможно не целесобразно пытатся писать под iOS в такой ситуации? хочу чтоб анон меня успокоел или сказал что не стоит и сказал правду
#480 #787768
>>787657

>вопрос от знатоков


>эппл тред


кек.
>>787770
#481 #787770
>>787768
как мне с вопросом по эпплу помогут в другом треде?
#482 #787842
>>787657
На виртуалбоксе макОС работает уже вроде нормально, про икскод ничего не скажу
#483 #787844
>>787494
Хуевая книга, там очень много вещей нужных не объясняют
>>787886
#484 #787886
>>787844
А какая не хуевая? Я только начал ее читать.
#485 #788399
ананасы, подскажите тупому, где тред по objective-c? или дайте пошаговый гайд как в других тредах что за чем учить и тд.
>>788717
#486 #788439
>>787657
Лучше поставить хакинтош. Работает удобней\быстрей раз в 10 лучше виртуалки.
>>788442
#487 #788442
>>788439
В случае виртуалки производительность CPU будет такой же. gpu будет подлагивать, да.
>>788446
#488 #788446
>>788442
Важный момент - удобство пользования. Для меня разница в юзабилити между виртуалкой и нативной системой огромная.
>>788644
#489 #788605
когда приходит silent push, а приложение в бекграунде

девайс вибрирует

а надо чтоб не вибрировал

анон, выручай
>>788620
#490 #788620
>>788605
напиши пример aps'а, content-available в 1 стоит?
>>788678
#491 #788644
>>788446
ну я же писал что я никогда не пользовался этой техникой дольше 10 минут. изначально вопрос был в том возможноли адекватно кодить под яблоко если сам не являешся владельцем яблочной техники.
>>788655
#492 #788655
>>788644
нет, единственный вариант - кодить используя хакинтош, что гемор, и некоторые компоненты не работают на симуляторе (камера, почта), прога просто падает, нужен хотя бы айпод попущеный, желательно иметь мак
>>788676>>788722
#493 #788676
>>788655
во, спс за четкий ответ :3
#494 #788678
>>788620
aps = {
action = 1;
"content-available" = 1;
sound = "";
};

алсо, пробовал выпиливать вообще sound, эффекта не дало
>>788687
#495 #788687
>>788678
sound вроде полностью убрать надо, плюс в capabilities выставь background fetch
>>788692>>788697
#496 #788692
>>788687

>> алсо, пробовал выпиливать вообще sound, эффекта не дало


background fetch ща попробую
#497 #788697
>>788687
background fetch помогло, спасибо няша
#498 #788717
>>788399
учи cs193p от стенфорда за 2016 год https://itunes.apple.com/us/course/developing-ios-9-apps-swift/id1104579961
и забудь про objective-c, к тому времени как ты научишься писать что-то нормальное, он уже будет легаси
#499 #788722
>>788655

>что гемор, и некоторые компоненты не работают на симуляторе (камера, почта)


У тебя просто неправильный хакинтош. На правильном - работает даже imessage
>>788728>>788807
#500 #788728
>>788722
У меня и на макбуке камера в симуляторе не работает,
а почтового клиент вообще вроде не установлен.
#501 #788807
>>788722
ты понимаешь о чем пишешь? В симуляторе не работает камера, почта и нормально не работает геолокация, ты без девайса это нормально не протестируешь, если надо работать с AVFoundation, прийдется использовать девайс. У меня макбук, а не хакинтош
>>791064>>791096
80 Кб, 540x443
#502 #791064
>>788807
А у меня хакинтош, и всё работает, прикинь? Лол.
Мак не нужен.
#503 #791096
>>788807

> В симуляторе нормально не работает геолокация


Вот с этого момента поподробнее, пожалуйста.
2047 Кб, 226x184
#504 #791689
Сап.
Давно ничего не писал на objc, даже сториборды и аутолайауты толком не использовал. Надо запилить простенький говнопроект по типу получи джсон от апи - покажи, отфильтруй список, покажи карточку, бесконечная прокрутка списка.
Какие yoba либы сразу подключить к проекту, чтоб удобнее было и веселей?
Cocoa Pods, AFNetworking. Стоит ли юзать сториборды или забить и хуярить нибы? Если понадобится кэшировать данные от апи, что лучше - core data или есть что-то получше, со связкой с AFNetworking (когда-то юзал RestKit, но не зашло)?
>>791722
321 Кб, 1080x1920
#505 #791722
>>791689
Хули не бампается?
>>792031
#506 #792031
>>791722
Бамплимит потомушт)
Пилите новый тред, гейосеры
#507 #792044
Я для вас даже в архивач сходил http://arhivach.org/thread/185860/
#508 #793394
Сразу извинюсь, что врываюсь с нубскими вопросами. Хочу попробовать написать что-нибудь под iOS, везде натыкаюсь на необходимость билдить на маке. Без железа/хакинтоша/виртуалки никуда?
>>793396
#509 #793396
>>793394

>Без железа/хакинтоша/виртуалки никуда?


@YES
>>793399
#510 #793399
>>793396
Спасибо. Жаль, придётся qemu джва дня пердолить а там, глядишь, и настоящую машину захочется.
#511 #793402
Не понимаю, блоки не могут что ли возвращать сишные типы данных или как? И еще можно ли передавать в функцию вместо блока указатель на функцию или С++'ные лямда функции?
Ньюфаг в обжективе.
Тред утонул или удален.
Это копия, сохраненная 26 июля 2016 года.

Скачать тред: только с превью, с превью и прикрепленными файлами.
Второй вариант может долго скачиваться. Файлы будут только в живых или недавно утонувших тредах. Подробнее

Если вам полезен архив М.Двача, пожертвуйте на оплату сервера.
« /pr/В начало тредаВеб-версияНастройки
/a//b//mu//s//vg/Все доски