Тред лучшего языка последних 10000000 лет.Покороче:Swift - открытый мультипарадигменный объектно-ориентированный язык программирования общего назначения. Создан компанией Apple в первую очередь для разработчиков iOS и OS X.В этом треде вы можете ответить свои вопросы анонам, а они в свою очередь с радостью вам ответят.Показать код быстро - https://pastebin.comПоказать код с регистрацией и смс - https://gist.github.comObjective-C или Swift? - дерьмо или язык богов (Swift)?Как обучиться лучшему языку во вселенной?1. Видеоуроки от нудного, гнусавого, гэкающего Скутаренко для полных дебилов - https://www.youtube.com/user/AlexSkutarenko/Раскладывает все по полкам, потом с полок убирает и раскладывает по новой.2. http://swiftbook.ru/ - годнота.3. https://goo.gl/R9af4y - библия.А что насчет книг?Не нужны. Достаточно открыть библию двумя строками выше и окунуться в прекрасный мир Swift.А английский нужен?В отличии от тебя - да.А еще Swift вроде как двигается в Android сторону, да и вообще код недавно был открыт Apple, что дает возможность в скором времени наблюдать Swift на сервере, мобилках, небе и даже аллахе.Где кодировать код?1. XCode.2. AppCode.Где задать свой тупой вопрос?1. Здесь.2. В тематических слак конфах.3. https://telegram.me/pogromistsИсправления и дополнения для шапки писать сюда с пометкой ШАПКА. При перекоте внесем или не внесем.
И сразу бамп
>>786380 (OP)Пол года пишу под айос на свифте. В плане юзабильности, конечно, это огромный шаг от обж-с. Но не могу скзазать что сам язык какой-то выдающийся. В нём нет никакой парадигмы, и на самом деле это даже хорошо, значит создавался для практических целей, а не во имя какой- о очередной концепции, с которой постоянно надо бороться. Например, Rust, где нельзя просто взять и начать писать код, ну и прочие ваши хаскели, да даже Java.
>>786507>Например, Rust,А может дело в том, что>Пол года пишу под айосхотя да, нельзя, он не для тупой макаки которая даже на, блядь, жяве не может взять и что-то написать
>>786514С Растом я разобрался, и могу писать на нем код. Но на нем нельзя буквально в первый день уже сделать что-то, и уж тем более сделать его массовым языком. Java я примвел в пример из-за ее ограничений в виде тоталього классодрочерства. Это не плохо, не хорошо, но это определенные ограничения парадигмы. У Swift такого нет. Swift не говорит что "МЫ ООП!!111" или "без сборщика мусора достигли безопасности памяти". Для эппла, и для гугла важно чтоб как можно больше людей делали приложения, чтоб маркет разбухал больше больше. Поэтому им нужно понижать порог вхождения. И я не вижу ничего плохого в этом. Ну кроме засилья стора всяким говном которое жрет по 100мб памяти
Была мысль вкатится, но:1. Переезд на убунту с семерки чот не впирает.2. Если и переехать - на чем тестировать свои поделия? На айфон я ещё не насособирал.
>>786529Если у тебя нету даже мака - просто забудь.
>>786529Xcode нет нигде кроме мака, а это значит что надо покупать мак.
>>786578Дело даже не в нём.
Антош, какой стек технологий нужен для работы в области iOS на Swift?Я веб макака, хотел бы заняться чем-то людским.
>>786380 (OP)Джвести лет ждал такого треда. Хотел уже сам создавать, только не было времени поддерживать
>>786507> Например, Rust, где нельзя просто взять и начать писать код, ну и прочие ваши хаскели, да даже JavaЯ почти не разбирался с растом и хачкелем, но про яву - это ты что-то загнул. Другое дело, если хочешь сразу в интерпрайз. Там да, пиздец - фасады едут на фабриках и интерфейсами погоняет
>>786578Или пердолиться с хакинтошем. Но, имхо, оно того не стоит.Вангую, что кто-нибудь со временем запилит аналог икскода под линупсы
>>787558Возможно, jet brains. Хотя, это скорее всего слишком дорого и не нужно
>>787544Эппловские библиотеки в основном. Ну и есть всякие reactive cocoa и прочие изъёбы, которые, в принципе, не обязательно знать
>>787563а базы данных? скуел, носкуел?смотрю по треду, что можно писать на бубунте, не обязательно иОС?
>>787564Ты чё, совсем оскуел?
>>787544Типичная js-макака, у которой вместо чистого-современного-расширяемого языка - гора фрейморков.
>>787564Эпл запилили CoreData - эта абстрактная приблуда может писать и читать из sqlite, xml, возможно mysql и т.д. На практике используется sqlite. Некоторые работают с sqlite через сторонние библиотеки.
ну чо посоны, я (>>787544) может к концу недели, если не буду сильно загружен, ещё подумаю чутка, и может начну вкатываться. уже нашел джва курса на плуралсайте. вечерком под пивас буду наяривать, если решу. тут буду вести свой минибложек.
>>787598JS тред стал настолько жирным, что скоро js-макаки затопят весь /pr/
В Clion можно на свифте писать, если что
аноны, без шуток, почему так мало вакансий на свифте по сравнению с обджектив-с? свифт не умрет не выдержав конкуренцию? или не станет андерграунд языком для избраных, который по факту 95% работадателям нафиг не сдался?
>>787832ведроид уже двиргает тазом в сторону свифта, думаю не умрет
Оп какой-то малолетний мудак>appcode>swiftЕще оказывается и нихуя не кодил под свифтом, еще си просто так оскорбил
>>787832Какого хуя он должен умереть, если эпл официально заявляет что переписывает всё что у них было на обж-с на свифт?Но вот дальше мобилок и яблоприложений уйдёт наврятли (да и на яблочных пеках скоро будет хорошая конкуренция в виде WPF и прочего).
>>787839> android> swiftС того вброса уже прошло пол-года, а ios-маньки в все никак не упакуются.Ну вот нахрена нам ваш swift, если у нас есть Kotlin/Scala/Clojure/Groovy/Java 8и вообще любой язык компилирующийся в java-байткод.> на яблочных пеках скоро будет хорошая конкуренция в виде WPFПруфец давай, первый раз о таком слышу.
>>787848>Java 8Лол
>>787848Если ты совсем не читаешь новости отвечу - .Net CoreСейчас ясен хуй только бэкграунд портируют в попыхах, ещё рановато об этом говорить.
>>787848>Scala/Clojure/Groovy+50 мб к приложульке из полутора страниц. Лол.
>>787852>.Net CoreWPF там нет и скорее всего не будет
>>787853Остается котлин
>>787855Читать умеешь, животное?>Сейчас ясен хуй только бэкграунд портируют в попыхах, ещё рановато об этом говорить.Он там будет - дотнет может соревноваться с жявой только на десктопах.
>>787852> dotNET Core> WPFНу ты фантазер>>787853Манька, зачем ты цифры с потолка берешь. Там не больше чем в вашем Swift рантайме Плюс на android вам придется компилировать под arm6/arm7/arm64/x86/x86-64/mips и тд
>>787860>Он там будетЖопец ставишь?UI и macOS нахуй не уперлись Microsoft, они это делают только для AspNetMvc + Linux.macOs это так плюшки для хипстарков с макбуками.
>>787862>Ну ты фантазерСкорее ты идиот. Дотнет без его инфраструктуры - бесполезное говно без задач, а целит он, внезапно, в энтерпрайз, где именно она играет первостепенную роль.>Там не больше чем в вашем Swift рантайме А нахуй он нужен на андроиде как нативный язык? Сделать компилятор в байткод не самая трудная задача, тем более когда фронтэнд уже есть готовый.
>>787860> Он там будет Нет
>>787864> А нахуй он нужен на андроиде как нативный язык? Сделать компилятор в байткодУже сделали - Kotlin называется (синтаксически они схоже на ~90%).Он кстати в и JS компилируется, а в планах еще и native/iOS
>>787863Значит они идиоты. Никто не станет переходить на дотнет на серверах только из-за дотнета и шарпа, особенно учитывая что он медленнее и инфраструктура у него там отстаёт на десяток лет.
>>787867На него у хипстеров пися не встаётЗависит всё только от корпорации добра.
>>787867Ебанутые литералы словарей и вроди бы массивов. Странный conditional binding. Компилируется дольше, чем свифт (это официально гугол задвинул).А так да, приятный язычок
>>788470Прям больше 12 часов на 1 ассоциативный массив?
>>788473Так то баг и наверно его уже пофиксили. Опять же, я передаю слова гугола
На счет того что гогл смотрит в сторону свифта, возможно это у них такой хитрый план, открыть свою помойку для эппл-девелоперов, тем самым переманить хотя бы часть хороших программистов.
>>788730>хороших программистов.>мобильная макака щитает что она чем-то лучше своих собратьев с другой платформы
>>788739Опаньки, а вот и хуесос порвался
>>789078>Опаньки, а вот и хуесос порвался>братишка вебмакак щитает себя программистом))
>>786380 (OP)ШАПКАболее адекватная конфа по iOS https://telegram.me/joinchat/CUVruD5OrDIaNn5XKwM6Dw
>>789485Бля, ну когда же телеграм в спам лист добавят, вы же весь /pr/ заебали
По-моему Go-тред был веселее. Верните Илюшу кто-то, этот лохотрон желания читать нет.
привет, анон. Насколько покатит писать на свифте без железных устройств с актуальной иос? Какие подводные камни? Мак есть, айфонов нет.
>>790179Только то, что настоящую гейлокацию, UIImagePickerController и MFMailComposeViewController протестить ты не сможешь, в остальном будет норм, я почти не пользуюсь девайсом, только симулем в разработке последние года три
>>790448>симулем в разработке последние года тридай информацию подробней, плз. как именно называется?
>>786507Чувак, любой постоялец, любитель, с linux.org.ru скажет что растушка учиться за выходные. Этот язык создан как некая таблетка или облегчение для плюсовиков. Это типа должно быть легче. Но если тебе показалось это сложным, то я даже не знаю. Тебе может быть BASIC подойдет!BASIC - это такое, что сразу сел и начал писать велосипеды.
>>790999Дурак блять, он не писал ничего про сложность языка, а написал что "нельзя взять и написать с наскоку" – и это так.Вся его "простота" в отличие от тех де плюсов – отсутствие сорокалетней накипи легаси, не более.
>>791005Чуваки да пошли вы в жопу!
>>790999>Чувак>растушка> BASIC подойдет!Призывы Илюши сработали чтоле?
>>790999>любитель, с linux.org.ru скажет что растушка учиться за выходные. Он может сказать только что НИНУЖНА и по сравнению с сишкой ДИШРАДАЦИЯ, НИШВАБОДА.
Аноны, сколько версий было у swift? И какой последний и как понять что он последний?
>>791392https://swift.org/download/#releasesтут все
>>791392Сейчас 11-ая версия актуальная. На днях должна выйти 12-ая - наконец-то стабильная, а значит можно будет писать продакшн.
Бамп
>>788470Я, конечно пурист, но как язычок с решетом вместо системы типов может вообще быть приятным?
Язычок то видимо не самый лучший судя по аншалгу в треде.Но я таки задам несколько вопросов:1. Когда выйдет уже стабильная версия Swift 3? Можно ли считать что на нем можно что-то писать в продакш или нужно будет ждать 4,5, 6 и тд версии?2. Когда уже сделают компилятор не только для макос и бубунты?3. Что там с менеджром пакетов? Ну типа как Cargo в Rust.4. Что с IDE? XCode - параша, AppCoda - тоже отдает говницом. Есть плагины для атома, саблайма, но как всегда везде версии в стиле 0.0.1 с глюками.5. Нихуя не понятно за Arc. Все-таки сборщик это мусора или не сборщик? Как он влияет на производительность? Какой оверхед? Есть ли stop-the-world? Можно ли использовать Swift в риалтайм проектах?6. Что с производительностью? Ясно, что бенчмарки не дают нормалньой картины, но мы все примерно понимаем разницу между С и Питоном. Примерно понимаем положение Rust и Java. Где тут находится Swift? Можно ли на нем писать что-то ресуроемкое? Сможет ли он конкурировать по performance хотя бы с джавой?Язык вроде хороший. Нравится тем что не такой вырвиглазный и сложный как Rust - да да, я хочу писать код, а не бороться с борроучекером и пытаться понять из ОДНОГО СУКА ИСТОЧИКА (это растбук) как работать с параметрами времени жизни. Вообще Rust всё равно нравится.Нравится что в Swift есть функциональщина, паттернматчинг. Прчием для людей. Примерно как в Rust.
>>796557> Язычок то видимо не самый лучший судя по аншалгу в треде.Хоть генерики есть в отличие от Г...
>>796562Это ты Go имеешь ввиду?
>>7965571) Как только допишут все хотелки – никогда;2) Он уже есть под большую часть систем – собирать правда придётся самому;3) Всё нормально;4) Поддержка е том же Clion-е есть;5) Ну ты хотя бы вики открой. Это почти что концепция лайфтаймов раста, только упрощённая до жути;6) У него есть жуткий недостаток – всё и вся виртуально, а это один из главных тормозов явы, тот же раст он никак не догонит.Всё зависит от того, на сколько ресурсоёмкое.А ебаться в любом случае придётся – либо с борроучекером, либо с отладчиком.
>>796574>явыВ данном случае наверное Swift хотел сказать?Какие щас вообще есть языки/компиляторы для ресурсоемких задач? Я имею ввиду когда решение задачи может занимать несколько часов или дней, и оператива будет вся забита под завязку независимо от данного объема. C, C++, Rust, D? Всё? Хочется на свифте прокатиться, но есть чувство что это очередной питон только многиеллибы еще не написаны.
>>796579>В данном случае наверное Swift хотел сказать?Я написал то что хотел, это не ошибка.Лучше язык с GC выбери, причём компрессующим и дефрагментирующим – любой на JVM.
>>796585>ЛучшеДля такой задачи*
>>796585получается Java подойдет?а Rust?
>>796596А для раста тебе нужно будет в 10 раз больше времени на разработку, при чём если ты раньше не работал с такими задачами ты гарантированно обосрёшься – если у тебя на 100% забита оперативка, то ботлнек будет именно в ней, и без готовых средств тебе придётся самому руками дефрагментировать и компактировать всю кучу, там уже похуй на процессор.Это одна их причин почему в бигдате полюбили скалу.
>>796574>всё и вся виртуально, а это один из главных тормозов явыПро девиртуализацию в HotSpot слышал?
>>796808Которая срабатывает после пары десятков вызовов функции? нормас костыль так Ну уж спасибо ЖИТу за это. Только у свифта как и обжс это родовая травма, а не детская болезнь, в томи проблема.
>>796824> тормоза> пары десятков вызовов функцииТы любитель оптимизировать на спичках или вообще в теме не рубишь?..Оптимизации включаются после тысяч вызовов одного метода.
Бля ребят такие дела. Есть ноут на пентиумиме с 2 ядрами и 2 гига оперативки. Как мне прогить на Swift?
>>796857Накатить убунту и кодить. Правда на компиляции хэловорлдов свапы начнуттся лал.>>796840Кек.
Че это такое объяснитеhttp://iswift.org/playgroundhttp://swiftstub.com/http://www.runswiftlang.com/
>>796863А айфон виртуальный там будет?
>>796873Песочницы. Можешь поучить свифт например когда нет доступа к полноценному компилятору.>>796878Не насосал ещё, iДевелоперы с гей-шлюх начинают.
>>796557> атома, саблаймаИмплаинг, что это не параша. Допилят аппкод и будет годнота. Просто сейчас хуй угонишься за изменениями в свифте.
>>796557> Нихуя не понятно за Arc. Все-таки сборщик это мусора или не сборщик? Как он влияет на производительность? Какой оверхед?Обычный счётчик ссылок. Когда объект не нужен, он сразу уничтожается, а не собирается в отдельном треде, как в яве. Соответственно и stop the world нет
>>797771Не путай нюфага – обычный счётчик ссылок работает в рантайме.А эта хуитка заканчивается в компайлтайме.
>>797780В Swift Arc срабатывает во время компиляции? Какой тогда там оверхед? Значит ли это что Swift это почти как Rust, только автоматический режим.
>>797782В свифте оверхед может быть как раз только из-за его высокоуровнности.
>>797835Можешь более развернуто пояснить?
>>796557> Arc. Все-таки сборщик это мусора или не сборщик? Как он влияет на производительность? Какой оверхед?Конкретно у самого ARC никакого оверхеда нет, так как он отрабатывает при компиляции. Но есть оверхед связанный с самим подсчетом ссылок - к каждому объекту добавляется одно дополнительное поле для хранения счетчика. И появляются вызовы методов при добавлении/удалении владельцев для обновления счетчика и удаления объекта при необходимости.
>>798182Ну в принципе с точки зрения скорости это не должен быть большой оверхед. Всё-таки сделать +1 и -1 не такая сложная операция.
>>797780>>797835>>798177Какие же вы дауны...
Про то, какой в свифте оцтойный тайпчекер: https://www.cocoawithlove.com/blog/2016/07/12/type-checker-issues.html#is-this-type-of-improvement-coming-soon-to-swift
>>798328Так ты хуже.>>798334Ловите скаладауна.
https://developer.apple.com/library/ios/documentation/Swift/Reference/Swift_UnsafeMutablePointer_Structure/Просто оставлю это тут. Пусть те у кого есть вопросы о производительности, сборщике мусора и пр. продумают немного.
>>786380 (OP)Почему английский нужен, а я - нет?
>>799320О чём думать? Что в свифте вместо указателей доступны только толстые структуры, вместо использования которых легче просто скопировать половину значений?Ахуеть гениальность. Хотя чего можно было ожидать от компании, которая сумела сделать свой форк си работающий со скоростью явы.
>>797767>Допилят аппкодкек. Его допиливают уже хер знает сколько. Занимается причем команда самых лютых говноделов в мире (джетбрейнс)
>>800595Они не говноделы, просто делают продукт для серверных станций, где 25 гб и 10 ядер не проблема кек
>>800627а где писать тогда на свифте? икскод ведь тоже не назовешь чудом инженерной мысли.Снова vim, emacs? или atom, sublime?
>>787560Сейчас джетбрейнс пилит поддержку свифта для clion (да странно немного, но видимо там будут все clang языки собираться). Этим летом был проект для студентов - собрать либы для автодополнения под линукс. Ну там на маке обычно отдельный процесс висит, который парсит проект и выдаёт варианты автодоплнения.Это говорит о то что задача не приорететная, но в скором времени будет более менее ок. На самом деле вроде и сейчас он приемлемо работает, просто из стандартной библиотеки языка не достаёт слова. Алсо на атоме вроде люди потеют, но думаю там всё выглядит очень уныло. И кстати на линуксе вполне приемлемый репл у свифта. Вполне удобнее чем плейграунд. Из проблем на линуксе остаются: отсутствие применения свифта (если под мак иил айфон не компилишь то нахуй?), а причина этому отсутствие либ. Всяких веб фрейворков, графики рисовать, формочки выводить, на видяхах считать. Ну и даже когда они появятся - банально нет пакетного менеджера. Мб ситуация уже поменялась и меня кто-нибудь поправит.
погромисты, подскажите, 5 айфон умер, есть вариант взять 4s или второй айпад/айпад мини, подойдут ли они для разработки? Да, буду без ios 10 пока.
хочу вкатиться в ios погромисты, надоело быть веб макакой, созрел такой вопрос связанный с железом, посоны денег практически нет, какой подойдет макбук под разработку? прям самый минимальный если, какого года брать и с какими характеристиками? тысяч в 12-15 можно уложиться?
>>802652Да. Но гей-шлюхой остальные 50 кусков придется отработать.
>>802686я из мухосрани тут пидоры только в лагерях под шконкой, придеться понаехать в ДС чтобы заработать на приличный компутер?
>>802704Они есть везде и всегда, далеко не обязательно под шконкой – если IQ выше сорока скрывать этот факт.
>>802722>скрывать этот факт.Не проблема*
>>796557>5. Нихуя не понятно за Arc. Все-таки сборщик это мусора или не сборщик? Как он влияет на производительность? Какой оверхед? Есть ли stop-the-world? Можно ли использовать Swift в риалтайм проектах?риалтайм блять. Ой ебать как же у меня часто военные делают заказы на риалтайм. Сука какие фантазёры.>>796574>5) Ну ты хотя бы вики открой. Это почти что концепция лайфтаймов раста, только упрощённая до жути;ну нормально пояснил. Видно открывал вики.>>797780>Не путай нюфага – обычный счётчик ссылок работает в рантайме.>А эта хуитка заканчивается в компайлтайме.Интересная хуйня выходит. Пока все языки пердоляться с гц, в эпле нашли святой грааль - хуёвина которая расставляет делиты в компайлтайме. Наверное в джаве так не сделали чисто из-за легаси, да и просто привычка уже.>>798182>у самого ARC никакого оверхеда нет, так как он отрабатывает при компиляции>Но есть оверхед связанный с самим подсчетом ссылокAutomatic reference counter работает при компиляции и без оверхеда. Хорошо. Ладно. Вот если бы ещё и без подсчёта ссылок работал было бы всем счастье.Бля, ребят, ну если это такой толстый вброс то сделайте его ещё толще как-нибудь. Кидайте ссылки на даунов со стековерфлоу от которых вы всю хуйню услышали.
>>787558>>786578>>786529Собираешь хакинтош по buyer's guide от tonymac и никаких проблем. Брат жив, зависимость от топового мощного железа есть. Как вы там дрочитесь на эплоговне не представляю.Мимо 300к/сек
>>787832Вакансий много, просто ты наверно мимо них пролетаешь, поэтому не видишь. Сейчас весь новый софт только на свифте, на обж-си легаси и поддержка.
>>787867Котлин никому не нужное поделие, Свифт будет массовым и дефолтным. Свифт это паровоз, который будет долго тащить за собой кучу макак (увы, мне лично он не нравится)
>>796557Ты слишком тупорылые вопросы задаешь, чтобы казаться умным.
>>802686>>802652>>802704Собирай хакинтош, более-менее сносно можно работать даже на кор2дуо/4гб (ты сам написал что бюджетный ищешь), чекай свое старое железо в рекомендуемых, возможно все будет работать из коробки>>803010
>>802752> Наверное в джаве так не сделали чисто из-за легаси, да и просто привычка уже.В ней так не сделали потому что ты, уёбище, не понимаешь чем серверная тактика работы с памятью отличается от твоего говна на мобилках. Видишь ли, просто удаляя всё когда не нужно ты получишь жутчайщую фрагментацию кучи, из-за которой твоё говно будет работать медленнее раби.>Вот если бы ещё и без подсчёта ссылок работал было бы всем счастье.А как в расте хисптеры взвыли бы.
>>803061>просто удаляя всё когда не нужно ты получишь жутчайщую фрагментацию Когда у тебя их обрабатывается больше пары мегабайт, соответственно.
>>803026спасибо, бро, думал в сторону хакинтоша, но боялся проебаться с железом, отличный сайт с гайдами порекомендовал, его бы в шапку закрепить.
>>802752>риалтайм блять. Ой ебать как же у меня часто военные делают заказы на риалтайм. Сука какие фантазёры.Может он хочет графику писать или компуктервижен, почему у тебя риалтайм ассоциируется с какими-то задачами гос. важности?>Кидайте ссылки на даунов со стековерфлоу от которых вы всю хуйню услышали.А ты сам до вики не дополз походу.https://en.m.wikipedia.org/wiki/Automatic_Reference_Counting> memory management enhancement where the task of keeping track of reference counting for objects is removed from the programmer and onto the compiler. ...>Under ARC, the compiler does this automatically by examining the source code and then adding the retain and release messages in the compiled code.[3]Первый же сука абзац.
>>802752Ебать даун.
тест[\b]
тестизвините, братишки.
>>803334>почему у тебя риалтайм ассоциируется с какими-то задачами гос. важности?У меня риалтайм ассоциируется с детерменированным временем выполнения задачи. Согласись, не часто встретишь в ТЗ указание времени на отработку задачи. Ну хз мб, конечно, это универ мне мозг проел и надо воспринимать риалтайм как "чтобы игрули можно было поиграть".Реальность такова, что игры пишутся и на языках со сборкой мусора. При этом сборки делают частыми, многопоточными. В общем люди играют майнкрафт и им ок. И в таком случае значение вопроса "можно ли применять в риалтайм проектах" пустеет.> https://en.m.wikipedia.org/wiki/Automatic_Reference_CountingОох ебать как же я всосал. >>803477>Ебать даун.Помилуй, анон. Не гноби так сильно.Ладно, если серьёзно - что этот механизм сильно умнее того чтобы расставить декременты перед присваиванием и выходом из скоупа? Компилятор сможет отловить циклические зависимости?Пиздец как эпл всех обыграли. Пытаюсь представить какая выходит экономия в сравнении с плюсами и походу ровно нихуя. Что там оно заходит в метод ретайн и декрементит, что в плюсах заходит в деструктор и декрементит. Остаётся плюсом только некий leak-анализ.
>>803334Я тут придумал пример, который может подтолкнуть тебя к размышлениям. Вот сборщик мусора и счётчик ссылок как ни крути это рантайм инструмент работы с динамической памятью (призываю тебя поправить меня, если я уже здесь не прав).И вот, допустим, я пишу свой JVM язык. Достаточно простой. Компилятор на самом деле принимает на вход java-код и на выходе отдаёт java-код для javac. Всё что он делает самостоятельная - это использует какие-нибудь очень крутые эвристики (машинное обучение с огромными моделями на каких-нибудь йоба кластерах) для того чтобы расставить "System.gc();" в тех или иных местах. Чтобы ещё больше реализма добавить - пускай он в начале отключает сборщик (вроде в шарпе так можно, да и в джаве тоже).Как считаешь: можно ли сказать что такой язык (ну, компилятор) решает проблему освобождения памяти на этапе компиляции?
>>803918>Реальность такова, что игры пишутся и на языках со сборкой мусора.Реальность такова, что кроме полутора игр в которые входит убогий майнкрафт и 0,5 аркадок. Много знаешь движков уровня уныл/край-энджайна на джаве?Всякие сценки и логика да, пишутся на скриптах – там трудно заставить GC тормозить всё.>многопоточнымиСамый "многопоточный" GC который разработало человечество умеет только переносить фазу маркировки в отдельный тред, но всё так же останавливает мир. Ладно, ещё есть всякая закрытая коммерческая хуита с детерминированным временем сборки, только хули она меняет.>умнее того чтобы расставить декременты перед присваиванием и выходом из скоупа? Нет, просто отслеживает время жизни не только локальных переменных.>Компилятор сможет отловить циклические зависимости?Нет, это не GC.>Пытаюсь представить какая выходит экономия в сравнении с плюсамиТакой что обычной макаке не нужно видеть этих деталей – она может не задумываясь шлёпать софт чтобы эпл всех продолжали кормить дерьмом народ в своей отчётности в виде "у нас н миллиардов приложулек в аппсторе".>>803924>Вот сборщик мусора и счётчик ссылок как ни крути это рантайм инструмент работы с динамической памятьюТолько в случае с обычным счётчиком ссылок.>System.gc();Ты хуй с пальцем сравнил. У ARC по расписанию удалится один объект (вся эта шелуха именно про подсчёт ссылок – попытка авторов сделать из си смалтолк, а не какая-то необходимость), вызывая сборку ты начнёшь сканировать всю кучу, чистить её и делать всё остальное в зависимости от вида сборщика.
>>803924А я в свою очередь подтолкну тебя к размышлениям:Вот есть у тебя граф объектов из хотя бы пары сотен нод. Что быстрее: обойти его один раз, пропустив при этом старое поколение (по хорошему как минимум треть графа) или отслеживать каждый объект отдельно (причём если что-то поудаляется ты получишь трилионы индирекций и убьёшь нахуй локальность данных, даже если они не особо взаимосвязаны).Короче: эпл сделали простую хуиту для простых приложений, выгодную в простых приложениях, не больше.
>>803928>Много знаешь движков уровня уныл/край-энджайна на джаве?В хаксе сборщик мусора бай-дизайн, и на нём написан коммерческий движок от создателей геймбрюи. Просто все (кроме Нотча) делают так, чтобы сборщик мусора не работал, а если он не работает, то и деградации производительности нет. В принципе, то же самое и с ручным менеджментом памяти на крестах/сишке.
>>804010Ахуеть, ты совсем дурак? У тебя спрашивают про ААА движок, который отлично работает и на среднем железе вроде плоек, а ты написал по какую-то хуиту от девелоперов флешь игр?
>>803928>Реальность такова, что кроме полутора игр в которые входит убогий майнкрафт и 0,5 аркадокАндроид, юнити, да и ещё наверное много такого. Про край-энджайн не знал - звучит вполне весомо. Ну в общем да, мир трипл-А игр конечно же не завален сборщиками мусора. Да поинт был не в том. Я говорил в том что требование реалтайма в реали не ставится и при определённых обстоятельствах можно сделать игрулю на языке со сборкой, а значит нельзя однозначно понять что же скрывалось в этом вопросе "а можно мне риалтайм язык".>Самый "многопоточный" GC который разработало человечество умеет только переносить фазу маркировки в отдельный тред, но всё так же останавливает мир.Кажется я столкнулся с экспертом. Допустим сборщик может расширять хип (но можно это сделать, просто добавив кусок хипа, хотя предпочтительнее realloc). Может компактить. Но если он чисто марк-свип, то зачем останавливать потоки? То есть после того как он пометил хип, вызвал финализаторы у недостижимых переменных, и дальше ты думаешь он реально что-то удаляет? Правда во время пометки он ставит много блокировок, но это не stop-the-world.> Нет, просто отслеживает время жизни не только локальных переменных.Какие ещё бывают? статики, да строковые константы?> У ARC по расписанию удалится один объектПо расписанию совершится декремент. Блять да хуй знает дальше ты мне поясняешь за то как они работают, но самый первый посыл был в том что там сверху челы делают быстрые выводы по википедии и начинают накручивать себе, что у них в свифте тот же раст, только полегче. Твой посыл про компайл тайм проверки тоже подзаебал.Кстати в сборщиках компакт или копи происходит не так уж повсеместно. По крайней мере в старом поколении оптимизировать локальность не так уж удобно.
>>804010То есть хип бесконечно разрастается и никто за ним не следит?Кстати к слову вспомнилось, что в питоне есть счетчик ссылок и сборщик мусора (удивительно для такого медленного языка) и можно отключить сборщик, если ты уверен, что не будет встречаться циклов. Мб ты про что-то такое же.
>>786380 (OP)Тут один дауненок никак не уймется >>803881Но он заставил меня задуматься: а чем Swift лучше чем GO?Те если google решит пересесть с пик (java) на хуи, то почему это должен быть язык конкурентов,а не их собственный?
>>803929Бля это конечно охуенно, что до 2011го на и без того убогом обжектив-с приходилось вручную подкручивать счетчик ссылок. Так и представляю большую функцию в конце которой retain; retain; retain;Ладно, не это хотел сказать. В этих ваших трипл-А играх, когда shared_ptr доходит до нуля, вызывается delete и дальше идёт какая-нибудь оптимизация локальности? Или оптимизация локальности будет уместнее в скриптовой логике?Не ну ладно, ок. Тут можно возразить что разрабы по максам используют пулы объектов. Но идея вот в чём: ты называешь арк хуетой для простых приложений и при этом по-видимому единственная претензия в локальности данных. За которой совсем не следят в C/C++.
>>804101>Андроидhttps://github.com/android2/3 сишных и плюсовых проектов. Упс.>юнитиТам основа в виде рендера и прочего тоже на крестах, внезапно.>а значит нельзя однозначно понять что же скрывалось в этом вопросе "а можно мне риалтайм язык".Просто ты пытаешься этого не понимать потому что тебе не хочется уступать в споре, лол.>и дальше ты думаешь он реально что-то удаляет? Конкретно жвм нихуя не удаляет, но как минимум зануляет.> По крайней мере в старом поколении оптимизировать локальность не так уж удобно.Может поэтому копи-компакт сборщики делают это при каждой итерации сборки и не имеют с этим серьёзных проблем?>>804120> В этих ваших трипл-А играх, когда shared_ptr доходит до нуля, вызывается delete и дальше идёт какая-нибудь оптимизация локальности?Там где нужно их просто не используют. В плюсах в отличие от свифта ээто просто один из доступных средств менеджмента памятью.>Или оптимизация локальности будет уместнее в скриптовой логике?Там работы с памятью как таковой вообще быть не может кроме хуиты вроде встроенных контейнеров. А вот они даже в плюсах имеют такие опции или дописываются свои, та же EA недавно свою STL на гитхаб выкинула.>За которой совсем не следят в C/C++.1) Умные указатели в 95% ситуаций используют для регулирования владения в клиентском коде, а не отслеживания времени жизни чего-то там.2) С чего ты взял что за ней не следят? Это опять же единственный способ мм там или что?
>>804092Ты дебил. Теперь подумай, почему.>>804106Нет, конечно. Обычно всю память под нужные данные выделяют при старте уровня один раз. При загрузке следующего уровня, всю старую память очищают и выделяют заново. Главное, чтобы в основном цикле ни гц ни выделятор не трогался.
>>804167Да заебывает чутка. Ты не ответил какие бывают переменные кроме локальных.мм - это memory manager? Ну всего там один delete ну и более низкоуровневые. Он не оптимизирует локальность. Поверх него строятся счетчики и сборшики которые тоже не оптимизируют.Если говорить про джаву там копи только в молодом поколении. Наверное ты сам понимаешь это. Поэтому мое утверждение про локальность в старом поколении все ещё актуально. Если ты уверен что там есть переупорядовающий компакт - валяй, просвети. Зачем занулять память после пометки вообще хуй знает. Мб ссылку какую нибудь дашь на этот счёт.
>>804214>Да заебывает чутка. Ты не ответил какие бывают переменные кроме локальных.Статические, а ещё объекты иногда живут дольше переменных (ВНЕЗАПНО блять) и отслеживать надо их время жизни а не переменных. Поэтому, блядь, ARC отличается от обычных скоупов.>мм - это memory manager?Это мемори менеджмент. Сам прочитай что я написал для начала, прежде чем писать хуиту: >единственный способ мм>Он не оптимизирует локальностьТам пишутся свои аллокаторы под каждый контейнер и др. хуита для дефрагментации, никто не строит сборщики и счётчики там где это не всралось.>Зачем занулять память после пометки вообще хуй знаетЗачем писать хуйню если ничего не понимаешь? Вот хуй знает.Наверно потому, что:а) Банально легче дебажить;б) Чтобы кроме своих данных в свежевыделенной памяти нельзя было наткнуться на мусор. Это как минимум небезопасно как со стороны логики кода, так и со стороны возможность эксплуатации такой уязвимости.
>>804246>>умнее того чтобы расставить декременты перед присваиванием и выходом из скоупа? >Нет, просто отслеживает время жизни не только локальных переменных.Ладно чел. Как думаешь в слове декремент какой смысл? Ну то есть ладно уверен ты знаешь что это -1. Но -1 по отношению к чему?
>>804396По отношению к твоей мамаше. Иди нахуй уже, заебал со своими инкриминететами.
>>804413
анончики, такой вопрос.Если пишешь под айфоны и айпады, эти устройства нужно приобретать? Или эмулируется все нормально.
Может кто подсказать, где найти список современной комплектухи, чтобы без танцев с бубном встал хакинтош.
В свифт бук кто-нить подписку покупал? Стоит оно того?
>>806269В гугле.>>806267Нужно, там в отличие от андроида нихуя не эмулируется.>>806460Если ты дебил который не в состоянии гуглить и читать сам - да пойдёт, правда лучше задуматься о карьере грузчика щас бы заплатить за инфу из открытого доступа.
>>806483Ну не знаю. Мне понравилось как он объясняет.
Не могу понять, почему треде лучшего языка обсуждаю Swift, а не Rust?
>>806910 Раст - кал и не выстрелил. Свифт тоже не впечатляет, но успех ему гарантирован. Зачем обсуждать кал, который никому не нужен?
>>807129>Раст - кал и не выстрелилСам придумал?
зашёл в /pr/>>787843>да и на яблочных пеках скоро будет хорошая конкуренция в виде WPF и прочегоАхахаххахахахахаха>>806483>Нужно, там в отличие от андроида нихуя не эмулируется.ЛОЛШТО>>803929>эпл сделали простую хуиту для простых приложений, выгодную в простых приложениях, не больше.ИКСПЕРТЫ СРЫВАЮТ ПОКРОВЫ>>802652Бери Mac Mini если денег нет, только смотри чтоб памяти было 8GB.вышел из /pr/
>>807196>ЛОЛШТО Васька, там не эмулируется арм как в андроидовском эмуляторе.потому он и не лагает
>>807213> 2016> Использовать ARM образ android эмулятораДа там даже гугл рекомендует на x86 тестировать,для армов юзают реальные девайсы
>>807217>для армов юзают реальные девайсыВот в этом и суть.
Ребят, подскажите, если не трудно, с чего вкатываться в программирование?Swift или C#? Выбор из этих двух. 1) Где проще синтаксис?2) Где больше перспектив?3) Что быстрее изучается?
>>807347шарп прощеперспектив больше в свфитеизучается быстрее хуй знает что
>>807373Как в_катиться быстрее всего?)
>>807452
>>807428Почему в Свифте больше перспектив?
>>807524Потому что его будущее уже гарантированно эплом.Шарп так-то перебивается на гуёвинами на шинде при всей помощи мс-а, а из дотнеткора наврятли что-то лучше платформы для аспточканета запилят.Насчёт "шарп проще" кстати сомнительно.
>>807536ты же и строчки не написал на свифте, не так ли?
>>807551Нет, не так.
Можно ли сделать пикрилейтейд на свифте тоже в одну строчку?
Перепощу сюда из ньюфаготреда. Вангую, многие из вас пользуются техникой эпл для разработки. В связи с этим вопрос: подойдёт ли macbook air 13 1.6 проц 8 rg RAM для программирования? Прошку не предлагать, денег нет, интересует именно, потянет ли air с таким конфигом работу.
>>810548Уже года 3 разрабатываю под Android на Air 4GB Mid 2013.Работаю в Xcode, IDEA CE, AndroidStudio, Xamarin.Так же тестирую IDE Rider (для C#) работает быстро - SSD решает.Главное никогда не запихивай все UIControll в один Storyboard.
>>810578А проц какой? Есть ли минусы, чего не хватает? Экран как тебе, глаза не вытекают после 3-4 часового сидения? Какой хард имеешь, 128 или 256?
>>810581>глаза не вытекают после 3-4 часового сидения? Сижу по 8 часов в день, и после работы еще как минимум 4.>128 или 256?128ГБ. Раньше держал еще Windows10 для Visual Studio на втором разделе и вечно не хватало места.Теперь перешел на VisualStudioCode (мини-C#-IDE для macOS) и удалил нафиг Windows.
>>810599Спасибо, успокоил. Буду тогда минимальную комплектацию брать, а то за апгрейд до 256 приходится платить почти 20 тыщ.
>>810618>за апгрейд до 256 приходится платить почти 20 тыщ.Палю годноту: https://www.ulmart.ru/goods/994779Укороченная карта памяти, смотрится красиво и почти не выпирает.Идеальна для файло-помойкиТак же желательно ее зашифровать (стандартными средствами macOS), если кто ее достанет, то все равно не сможет прочитать.
>>810623Круто, анончик, спасибо за наводку, обязательно докуплю
Почему в этом вашем Свифте нет сборщика мусора?Вроде такой приятный язык и имеет перспективы за пределами эплоэкосистемы.>>807536>Потому что его будущее уже гарантированно эплом.Ага, а в 2001 ты бы сказал, что будущее Шарпа гарантировано MS, а идея о том, что Эпл может что-то гарантировать, была откровенно смешной.Я думаю, самое лучшее будущее у языков, которые не зависят от какой-то одной корпорации. Поэтому Жаба, какой бы старой и уродливой она не была, не умрёт. Разве что ещё заменит какой-нибудь Котлин, а значит если не Жаба, то уж точно JVM имеет будущее. У Свифта, как я писал, перспективы выйти за пределы маков и айфонов есть и хорошие, но это пока только нереализованный потенциал. У C# и то получше дело обстоит (хотя не очень хорошо, конечно), и даже 5-10 лет назад было получше.>Шарп так-то перебивается на гуёвинами на шинде при всей помощи мс-а, а из дотнеткора наврятли что-то лучше платформы для аспточканета запилят.Лол. Гуёвые десктопные приложения уже давно в меньшинстве, C# - это прежде всего как раз и есть ASP.NET и ещё Unity, причём Unity кроссплатформенный и однозначно доминирует в своей нише (геймдев за пределами AAA).
>>810798>Почему в этом вашем Свифте нет сборщика мусора?Чем вызван дизкомфорт от отсутствия гц?
>>810798>Я думаю, самое лучшее будущее у языков, которые не зависят от какой-то одной корпорации. Поэтому Жаба, какой бы старой и уродливой она не была, не умрёт. Ты сам себе противоречишь.
>>811022Скажем так - Жаба зависит меньше, чем Свифт и Дуднет.
>>811072И да у какого-нибудь Питона дела в этом смысле ещё лучше
>>810548Есть ещё у кого что добавить про MBA для пограминга? >>810599Если я правильно тебя понял, ты ставил VM винду на air? Как он её тянет, не перегревается?
>>811288>ты ставил VM винду на air? Как он её тянет, не перегревается?Нет у меня 4gb ОЗУ, я диск разбил пополам и через BootCamp поставил Win10 на второй раздел.Особо не грелся, VisualStudio нормально работала благодаря SSD, но батарея садилась быстрее раза в 1.5.
Когда там эпл соизволит на винду портировать свой высер?
>>810983Циклические ссылки.
>>811311> но батарея садилась быстрее раза в 1.5.Вся суть винды
>>809090Можно, будет ещё короче. Но так не нужно программировать. Это говнокод
>>811841Это суть студии и дотнета, а не винды. При всей её критике всё же она как рабочий инструмент куда удобнее макоси.>>811324Она не планирует его куда либо вообще портировать – сам компилятор языка просто не привязан к какой либо платформе вот и всё. Инструкции по компиляции или вот такие https://swiftforwindows.codeplex.com хуитки найти не сложно. Другое дело рантайм и стандартная библиотека, конечно.В двух словах – всё как с обж-с, большего ожидать не стоит.>>811442А это такая большая роблема? Особенно в мобильных приложениях-то, очень крутую видимо архитектуру видимо требуется хуярить ради пары окон.
>>811908Ну это хуйня какая-то получается. Они кинули в опенсорс свой язык, почти добазарились с гуглом заменить джаву, хотят чтоб свифт всё поработил. А в итоге кодить можно только с ебучего мака. Сами себе яму роют. Так сложно чтоли добавить в Xcode поддержку работы на винде.
>>811968>почти добазарились с гуглом заменить джавуЭто просто слухи, никто даже не начинал базарить. Они просто заменили обж-с который пугал людей незнакомых с программированием, чтобы те могли больше говна в аппстор шлёпать ради статистики.Пусть сначала выпустят первую стабильную версию языка, которую не изменят через два месяца.>Так сложно чтоли добавить в Xcode поддержку работы на винде.Да, блять. Он написан изначально под макось со всеми её фреймворками и прочим – как думаешь, сложно ли портировать всю оконную подсистему на шину?
>>811995>шинуШинду*
>>811908>При всей её критике всё же она как рабочий инструмент куда удобнее макоси.Чем же?
Анон, я ваще не кодер, просто жополаз с маком и элементарным представлением основ алгоритмизации. Поставил себе Хкод, решил запилить простую интерактивную новеллу для айфона, то есть на экране выводится текст и даётся выбор А или Б. В зависимости от выбора идёт следующий кусок текста, ну и так сюжет типа игроком формируется пока не доходишь до одной из концовок.Я уже запилил экран меню с названием и кнопкой начала игры (класс SKScene, который назвал MenuScene). Нажав на кнопку переход к другому SKScene под названием GameScene. В нём текст, кнопка возврата в меню и две кнопки А и Б.Ощутив себя гениальным программистом, я тут задумался, что как-то хуёво будет вложенными ифами пилить логику. Но и переходить на новый SKScene на каждый кусок текста тоже как-то объебосно. Как сделать логику отдельно от кода? В моём представлении что-то вроде таблицы сцен, для каждой указать текст этой сцены и куда переходить при том или ином выборе. Плюс чтобы он распозновал концовку, с которой никуда не нужно переходить кроме меню. Загружаем в GameScene текст первой сцены ну и идём дальше. Можно ли это сделать через plist? Это же как раз такой способ сохранения структурированной информации, которую можно из кода цеплять? Вроде как должно быть возможно запилить всю инфу о сценах там.Как эту хуйню реальзовать, анон? Я смотрю и читаю туториалы по СпрайтКиту, но там везде про отрисовку и взаимодействие спрайтов. А такой вот логики переходов нигде не показывают.Я понимаю вопрос тупой для тех, кто кодит постоянно, но я по работе занимаюсь вещами далёкими от программирования. За это взялся чтобы отвлечься от основных занятий, ну и навык может быть полезным всё равно.
>>812549инб4 "воспользуйся фреймворком для новелл" я хочу это сам всё сделать с базовым СпрайтКитом
>>812549Ебать. у тебя фундамента нет судя по всему никакого. сделать отдельно бд с тексктом и пикчами, и один экран с выводом этой модели, а там уже переключай модели в зависимости от нужной
>>812582Да, у меня только есть понимание самого кода: как пилить циклы, что такое объекты, то есть на базовом уровне знаю несколько языков. Но я ни разу в жизни не использовал эти знания в реальных проектах, поэтому структуру чего-то реально работающего я не понимаю.Лучше всего помогают примеры и туториалы. Но как я написал, они все в основном про всякие простенькие леталки, раннеры и прочее. Тупо про то как создавать, двигать и взаимодействовать спрайты между собой.Напиши плиз, как именно ты бы это реализовал, конкретнее с примерами если не сложно.
>>811908>А это такая большая роблема? Особенно в мобильных приложениях-то, очень крутую видимо архитектуру видимо требуется хуярить ради пары окон.Ну Суифт, возможно, будет использоваться не только в мобильных приложениях с парой окон.
>>812596Это задача на push_back.Берёшь json, пишешь {{ 'dialog_id' : 42, 'text': 'Hello world', 'replies': [666, 1488],},{ 'dialog_id': 666, 'text': 'cool' 'replies': []},{ 'dialog_id': 1488, 'text': 'mamku ibal xDDD)))' 'replies': []}}Что с этим делать, догадаешься?
>>812704Спасибо.Полагаю, надо запилить какую-нибудь функцию типа LoadDialog(id), которая будет парсить JSON и выводить текст из диалога с нужным id. В зависимости от выбора она будет рекурсивно запускать сама себя с нужным следующим id и заменять текст, пока не дойдёт до какого-то конечного диалога, в котором не будет вариантов продолжения.Это оптимально или есть более простой/изящный вариант?Нельзя ли то же самое в plist сделать?
>>812457Лень расписывать все в десятитысячный раз.>>812598Обж-с оттуда так и не вылез за столько-то лет, при наличии портированного рантайма и всего прочего.
Какую книгу по свифту лучше читать? от appcoda, ray wenderlich либо от бигнерд ранча. знания обж си есть, но вот по самой иос платформе знания уже слабее инб4 офф дока
>>812713>plist не трогай никогда его, запомни для такихвещей
>>812912А чем тебе офф дока не угодила?
>>812972Тем что там для тех кто уже кодил, а мне надо структурировать знания и там в оффбуке чисто язык, а мне с применением его надо по иос его
>>812976Ты язык сначала выучи, потом и с ios разберёшься.
>>812978Ну так что из трех книг брать?
>>812719ОбжЦ просто нигде больше нинужен. Он умер своей смертью в 80-е, затем в 2000-е его выкопали и как бы воскресили. Если бы не самодурство Apple, никто бы на нём не писал.
>>813307Дык со свифтом то же самое – он нахуй не нужен для чего-то кроме мобилок, и не имеет никаких преимуществ перед остальными языками в их нишах.
>>813621Гугл уже прямо намекают про свифт поддержку. Я в jet brains тестировщиком работаю и нам говорили про переход постепенный гугла на свифт так как хотят упростить создание приложений.И у гугла и эпл в планах открыть школы по разработке в Индии.
>>814486Так всё правильно - я и писал про то, что он нужен только на мобилках, и больше нигде использоваться не будет.
>>814486>постепенный гугла на свифт так как хотят упростить создание приложенийИ заодно переписать с нуля Android SDK, внести кучу изменений, с которыми не все согласятся (дело и до форка может дойти) и превратить всё, написанное до 2016, в легаси.А между тем переход на Kotlin позволит упростить создание приложений без всего перечисленного выше.>>814487Ну нет, если Swift всё же станет стандартом мобильной разработки, кодеров на нём будет столько, что станут резко набирать популярность веб-фреймворки на Свифте, GUI-фреймворки и т. д. и т. п. То же, что произошло с JS.
>>814560Жс этот путь проходил десяток лет. Индустрия разгоняется и повторить такое – всё равно что убить живу или плюсы. Этого просто не произойдёт.
>>814486>Я в jet brains тестировщиком работаюА я в гугл уборщицей, и нам сказали что все на GO переписывать будут.Трустори, я не тролль
Анон, как вкатиться в swift имея минимум бабла?Если я куплю бу Mac mini 2010 года то он запустит среду разработки? Компилировать сможет?
>>815052Будет-то будет, вопрос в том что ты получишь ебучий лагодром, и выдавишь себе глаза когда увидишь как макось рендерит шрифты вне хайдпи экранов.
>>815072А самая дешевая модель современного Mac Mini более и менее заведет среду разработки?Моник HD ready пойдет?
>>803928Есть "полностью" фоновый GC, но стоит от 3к евро за сервак. Запилино на барьерах насколько помню
>>815158Во-первых, не "полностью", а с "константным временем сборки". Это несколько разные вещи всё же.Во-вторых, на барьерах запилен вообще любой конкурентный и/или основанный на поколениях сборщик, вась.Другое дело что там хардварные фишки вроде поинтер форвардинга и ремемберед сетов до сих пор редкость (хуй знает почему кстати, такие железки уже 2 десятилетия клепают), за то и такие деньги.
>>815164Точнее "константными паузами".
>>815165Не, это другой GC. Есть вообще фонововый GC, который не делает stop the world. Называется Azul GC.
>>815052> Mac mini 2010Обязательно купи для него БЫСТРЫЙ SSD (хоть на 32 или 64 gb).Без него это будут ебанныые тормоза, на любой запуск чего угодно.Сравнивал macbook 4gb ОЗУ + SSD и mac mini 8gb ОЗУ + 1TB HHD - первый в разы быстрее.
На этом заведется ваш swift?Apple MacBook Pro Late 2011 A1278 Core i5 2435M 2.4GHz 8GB 500GB 13.3" OSX 10.9
>>815948Нет, на железе слабее мака про не заведётся.
>>815957Так мак про тоже уже устаревшая мусорная корзина.
Поясните 100 баксов за пубдикацию одного приложения нужно платить или можно хоть сколько их выложить.
>>816635100 баксов в год, сколько угодно приложений больше одного точно.
Скутаренко нормально чтобы научиться под iOS писать?
>>818150специалиста курсы по swift ищу от апреля 2016киньте ссылку кто узнает
Не судите строго за возможно нубвский вопрос. Делаю приложение для мобилы, нужно реализовать функционал чтоб юзер мог скачать с сервера вьюху. Например, сейчас я захожу в приложение, там список есть, в списке выбираю "калькулятор" - ну и далее функционал моего калькулятора. Потом юзер нажимает на "инженерный калькулятор" - и он выкачивается с сервера и теперь есть его функционал. Вопрос не в том как скачать с сервера, а вот в том возможно ли так организовать код, чтоб его можно было днамически подгружать? типа DLL что-то. Но на сколько я знаю в iOS это запрещено. Но есть ил альтернативы какие? Сразу релизовать в приложении все фичи не могу, нужно именно чтоб можно было дописывать и хранить на сервачке без обновления самого приложения.
>>811995> Они просто заменили обж-сУже 3 года после релиза свифта, но все встроенные программы на iOS и macOS написаны на objc, даже совсем свежие Photos и переписанные с нуля Spotlight и Disk Utility в прошлом году. Эппл сами клали хуй на свифт, только зачем-то раздувают хайп в среде сторонних разрабов.
>>818888Насколько я помню на презентации как раз говорили что они переписаны на свифте.
>>818895Во-первых, такого никто не говорил. Во-вторых, сделай classdump или otool -L если сомневаешься.
Какая-то параша для аспирантов
>>811884У тебя и пикрилейтейд говнокод.
>>803313Ну хуй знает. Я отжалел 1.2 к$ за макбук эйр. Не могу нарадоваться. Всё конпилируется шустро, IDE нихуя не тупят, благодаря ссд.Можно было бы и мак мини, но его не возьмёшь куда-то, где нет моника. А с хакинтошем, думаю, хоть и на рекомендуемом конфиге нет нет да и будут какие-нибудь траблы. Я решил не ебать мозг и взял мак. Уже несколько раз окупился
Swift - будущее кодинга.
>>820634Да вот уже похоже что Dart
Простой вопрос: начинать учить стабильную версию или все-таки третью?
Это ж не статик переменная, какого хера не сбрасывается n? ведь по идее единица каждый раз должна вызываться, n ж каждый раз на 0 прописывается при старте функции
>>820965Такого хрена, что когда ты вызываешь counter1(), то фактически ты вызываешь только adder(), а не весь makeCounter().P.S. "Function within function" в твоем случае это просто лямбда с именем (adder).
>>820974> то фактически ты вызываешь только adder(), а не весь makeCounter().А почему так в свифте устроено?
>>820985А почему нет? И Swift тут не причем, точно также это работает в Kotlin/Scala и любом современном языке с "честными" замыканиями.Ты посмотри что ты возвращаешь из функции makeCounter - это adder, а adder это функция с телом "n=n+1; return n", нет в ней кода которая зануляет n.
>>820672С чего бы?>>820995А в каких языках "нечестные" замыкания, просто любопытно?
>>821264>С чего бы?https://flutter.io/faq/>А в каких языках "нечестные" замыкания, просто любопытно?Java (работает только в режиме readonly)
Будущее кодинга - это таки Swift. Собственно для того Гугол и пилит новую ОС, чтобы для мобилок и кофемолок можно было кодить на Свифте, а о жабах и подобном говне забыть навсегда.
>>821304>Собственно для того Гугол и пилит новую ОС, чтобы для мобилок и кофемолок можно было кодить на СвифтеАга, только маленькая проблема - новая ОС основана на VM для языка Dart.И зачем мне нужен свифт, если я смогу на Dart писать сразу под android/ios/fuchsia?При этом у меня везде будет один код и один UI.
>>821264>А в каких языках "нечестные" замыкания, просто любопытно?Тут дело не в честности, а в том что в свифте замыкания по дефолту захватываются значения (а не копируются как он тут заметил про яву >>821278 ). https://developer.apple.com/library/ios/documentation/Swift/Conceptual/Swift_Programming_Language/Closures.html часть "Capturing Values".В более низкоуровенных языках как плюсы и раст это все делается руками (соответственно, и замыкания более гибкие).>>821322>новая ОС основана на VM для языка Dart.Пока что она основана на няшной, дарт там просто как основной язык для гуя (хотя обещают офф. биндинги на все мейнстримвые языки).>И зачем мне нужен свифт, если я смогу на Dart писать сразу под android/ios/fuchsia?Ну меня например рвет от вида жс-кода, а дарт при этом сумел вобрать самое хуевое из явы с жсом. Хотя для замены погремушек вроде Phonegap-a и reacnative - отличная идея, хоть аот компилятор завезли вместо интерпритатора.
>>821322>И зачем мне нужен свифт, если я смогу на Dart писать сразу под android/ios/fuchsia?И зачем мне нужен Dart, если я смогу на Visual Basic писать сразу под android/ios/fuchsia/windows/windows phone?
>>821349>раст>это все делается рукамиЯ не очень понял, что там делается руками? Там же вроде компилятор сам запихивает окружение в структуру и дает ей анонимный тип, от тебя требуется только понимание как ты это окружение будешь использовать: по значению/ссылке, мутабельно или нет. Поправь, если неправ.
Привет, анон, пишу приложение под айфон на свифте, встала задача сделать несколько простых табличных контроллеров со строками с заголовками и текстами различной длины (пикрилейт)Хотел использовать готовый Subtitle, но не смог настроить у него динамическую высоту ячейки.Решил сделать свой класс под ячейку, написал, привязал оутлеты, всё заработало, но подобное решение оказалось нельзя реюзать в другой такой же таблице, для неё пришлось бы создавать снова те же лейблы и новый класс.Поэтому решил влезть поглубже и сделать общий класс наподобие этого - http://stackoverflow.com/a/29000241 скопировал, подправил, добавил tableView.estimatedRowHeight = 70.0tableView.rowHeight = UITableViewAutomaticDimensionиfunc tableView(tableView: UITableView, heightForRowAtIndexPath indexPath: NSIndexPath) -> CGFloat {switch indexPath {return UITableViewAutomaticDimension}func tableView(tableView: UITableView, estimatedHeightForRowAtIndexPath indexPath: NSIndexPath) -> CGFloat {return UITableViewAutomaticDimension}но ячейка никак не хочет растягивать под контент, хотя в самих лейблах текст бьётся на строки и отображается нормально.Уже 5-й час пытаюсь найти решение, но везде или ковыряние в сториборде (что не подходит, т.к. хочу сделать 1 раз под все таблицы), или же решение для статичных размеров. Может, Subtitle можно как-нибудь доделать?Помоги, пожалуйста, с решением.
>>822338>по значению/ссылке, мутабельно или нет.Ну он наверн это и имел ввиду. Что все надо самому указывать. И получается непонятная ебола.
Чет ваще не могу в свифт въехать после обжектива. Пиздец какой-то, чо делать
>>822854Не удивительно, ведь, как говорил Алан Тьюринг, "Студентов, ранее изучавших Objective-C, практически невозможно обучить хорошему программированию. Как потенциальные программисты они подверглись необратимой умственной деградации".
>>822854Проиграла.
>>823461>...а Съеби нахуй отсюда, СУКА ТВАРЬ АААААААААаааа!!!!111111
>>823461>>823417Ну вот поясните почему это является синглтоном?class MySIngleton{ static let sharedInstance =MySIngleton()}
>>823463внезапный разрыв омегана внезапен
>>786380 (OP)test
Почему лейбл не показывает ничего? Как я понял тому что отрисовывает лейбл раньше чем сеть получает данныеКак сделать так чтобы отрисовало пришедшие данные, как комплишн хэндлер захуячит в свифте?
>>823600Тому что надо в блок запихнуть, я хз как у вас там у свифеторасов эт реализуется.
Кто пояснит смысл использованияprotocol FullyNamed { var fullName: String { get,set }}геттеров и сеттеров, почему в экземпляре класса мы все равно можем записывать в фуллнейм какие либо данные?Я прост не пойму где поискать это. гуглил swift get set И не понял
>>825377Для более гибкого использование и будующего расширения, как и всё ООП. Создаешь заглушку геттера/сеттера, и используешь их. Когда понадобится что-то проверять/изменять/отлаживать - переопределяешь их не трогая клиентский код и всё.
Поясните как работают делагаты. Делал пример из книжки1 пик - тут все понятно, я делаю протокол, который говорит что будут два метода, которые принимают такие и такие параметры2-пик тут как я понял объявляю что моя переменная - будет тип протокола и типа мой инстанс верил вызывает эти методы которым на вход передаю вк и айтем?3 пик- на третьем пике я типа реализовываю методы протокола, тут вроде все понятно кроме момента как узнать что туда не пустой контроллер и айтемы поступает?4 пик - типа я первый раз перехожу и говорю мол этот контроллер куда я перехожу - будет типа этой верил, которая является типом протокола, т.е. до перехода у нас получается делегат нил все время был?И как я понял как только я делаю действие со второго скрина, то он дергает методы с 3 скрина из предыдущего контроллера, верно?
>>823600>>823900Бля, ну вы и черти.Перед print поставь паузу. На пол минуты, чтобы наверняка.
>>826824>Перед print поставь паузу. Тя за такое выебут
>>827041Значит вынеси этот запрос в конкретный код и выводи информацию в блоке колбека. Оно ж асинхронное, чего ты ждал?
>>827045> в блоке колбека.Это как? completion:()->() ?
Мне от интерснее сравнить разработку под iOS на Swift и Web-фронт-енда c использование Angular или React. Говорил мне один человек, что по iOS труднее, дольше, но интереснее. Swift в глаза видел, понравилось, есть опыт разработки по десктоп на Java и вдел насколько отличаеться программирование под Android. Я утверждал, что на Swift должно быть проще чем под веб, так как все есть из коробки
>>827123Alamofire.request перенеси в viewDidLoad.Коллбек там начинается с .responseJSON { (это красиво завернутый коллбек в стиле современных флюид интерфейсов).>>828954Сложнее/проще - понятия всегда относительные.
>>828970Разработка Web-фронтенда меня убивает, постоянные велосипеды и лес подходов
Ребзя, кто посоветует годные каналы на youtube по разработке приложений на свифте? У Скутаренко больше с самим языком курс, а нужно что-то вроде того что свифтбук предлагает. Можно на английском языке.
>>802431> банально нет пакетного менеджераНачали пилить одновременно с третьей версией свифта https://github.com/apple/swift-package-manager
Антуаны, поясните за синтаксис блоков. Почему я не могу быстро через enter сразу начать писать в блоке как в обже? Мне что каждый раз придеться обзывать переменные которые приходят в блок? И почему нет названия блока? Тут то ясно что это completion. А если бы была левая либа от Васяна? Как я пойму что делает блок?
>>802611Ну как бы нормально и для девятки какое то время девелопить. Хотя, может для заказчика будут очень важны какие-то фичи десятки. У меня, кстати, был случай, что баг воспроизводился только на айфоне 6. Ни на его симуляторе, ни на моём айпаде ничего такого не было. Пришлось покупать 6 айфон. Ну зато хоть проапргейдился
>>828954Лично мне приятнее и проще девелопить на свифте. Но заказчик хочет сэкономить и хочет кордову. Нахуй я ляпнул ему про это говно? Но может ещё отговорю
>>831592Всё то-же самое. Только в обжективе аргументы были до фигурной скобки, а тут внутри скобок. Почему сделали так - потому что аргументы таки можно иногда не указывать. Но блок всегда будет выглядеть примерно одинаково { ... } . Я сам ещё не до конца понял, когда можно не указывать аргументы, а когда нельзя. Так же блок может быть trailing. Т.е. list.sort { $0 > $1 }.reduce(0) { $0 + $1 }.Т.е. выносим блок за скобки функции. А это намного читабельнее. С аргументами снаружи от скобок смотрелось бы хуже. И да, $0, $1, $2 - имена аргументов, если не указал их явно.
>>831600Про trailing блоки и про 0, $1 я читал. Прикольная вещь, но зачем заставлять вручную называть переменные когда их нельзя не указывать? Чому нельзя было сделать как в обже? Как я понял пропустить их можно только если все их использовать. Видимо я чего то не понимаю.
>>831605> Как я понял пропустить их можно только если все их использоватьМне тоже не нравится, что иногда их нельзя пропускать. Надо будет почитать доки, чтоб разобраться, когда такое происходит.Можно ещё использовать _ вместо имён переменных{ _, _, _ in }
>>831632Да, хкод сам предлагает такой вариант если ничего не указать. Но все равно уебство. Как я понял переменные приходится обзывать потому что яблоко-пидарасы. В своих классах указывают просто типы. Когда создаешь свой метод можно указать в блоке названия принимаемой переменно. Да еще если использовать код из обжа, где названия переменных указаны, свифт их обрезает и приходиться опять писать их руками. К примеру из AFNetworking мне приходит вот такая штука: AnyObject?. И хуй ты поймешь что это такое пока не полезешь в метод.
>>831641>И хуй ты поймешь что это такое пока не полезешь в метод.ну бля это как ID
>>832198Так в обже мне по нажатию enter прилетал не только тип но и название.
Где можно почитать про реализацию различных алгоритмов на свифте? Есть вообще такие ресурсы/блоги?
Аноны поясните за фреймворк Facebook bolts. Как использовать данное чудо?
>>832539Есть короче книга она так и называетсяalgorithms and data structures in swiftно она пиздец хуеваякакпо мне
>>832539А нагую тебе конкретно на свифте? Все нормальные книги по алгоритмам используют псевдокод, который без пробам порисуется куда угодно.>>832830>Bolts Tasks is a complete implementation of futures/promisesЗагугли по двум последним кейвордам если что-то непонятно.
>>833028>нагуюнахуя*
Аноны, где достать гайдлайны? В human interfaces нихуя не объясняют про отступы и размеры элементов. Доставьте что то вроде такого интродакшена material.google.comЗ.Ы и фастом подскажите сколько должны быть header and foter у наших section height
>>835906Гайдлайнов нету у iOS просто.
>>836125И как жить? Есть хоть какие нибудь пользовательские?
>>836467А нихуя они вообще нужны? При рисовании на них насрать, при разработке протестировать и изменить эти вещи буквально пару минут.
>>836528Ты суть то гайдлайнов понимаешь?
>>836542Унификация всего дизайна?
>>835906Вопервых: дизайн должне делать дизайнеры с учетом юзабилити,а не программист по каким-то фиксированным гайдлайнам.>В human interfaces нихуя не объясняют про отступы и размеры элементов.По секрету скажу, не встречал еще ни одного дизайнера, который брал бы размеры из гайдлайнов material design.Максимум, они их диагонально просматривали на предмет общих правил.>З.Ы и фастом подскажите сколько должны быть header and foter у наших section heightПоехавщий, оставь это решать дизайнерам.
>>836570Хули ты приебался к дизайнерам? Где я тебе высру дизайнера? > По секрету скажу, не встречал еще ни одного дизайнера, который брал бы размеры из гайдлайнов material design.Ты хоть на улицу выходил сына сычина? У нас даже в падиках марджины между дверьми и нарисованными хуями размеров в 16dp
>>836582>Где я тебе высру дизайнера? Я обычно на fl.ru или frelancer.ru заказываю.Или у тебя с этим какие-то проблемы, мамки бизнемен?
Создал массив размером 250 на 50. типа let ar: [[UInt]] = [[1,2,3,4...], [10,20,30,40.....]]Поставил компилироваться, прошло уже 34 минуты.
>>838798
Включил в икскоде айклауд, как теперь сохранять то, что мне нужно?
https://github.com/reddymk/buttonandlabelactivityspinner - Как же меня бесит такая хуита боже. Как ему было не лень закинуть это все на cocoacontrols и в кокоаподс. Блядь там полторы строчки кода. Это либо слишком толсто, либо до смешного ебануто.
>>840093Потому что свифт притягивает ту же аудиторию что недавно писала на ЖС. А там пакеты по 11 строчек от которых зависит несколько тысяч проектов - обычное дело.
>>786380 (OP)Макросы не завезли? Сразу нахуй.
>>840128Лисподебил прибежал? В нормальных языках уёбищность функций не нужно прикрывать макросами - потому что это не лисп, и с ними тут все в порядке.
А пользуется кто AppCode?
>>840531Я. Чо надо?
>>840601Все иморты с пода подсвечиваются красным. Че делать? Все компилится, но я не тян, и для меня не нормально, что в моей интимной зоне(IDE) все красное.
>>840605Ну ошибки-то хоть какие-то он тебе писать должен?
>>840623Всмысле? Он мне просто говорит что нет такого фрейма. Хотя автодополнение на этот нейм пашет, как и в импортах все окей. Сначала я это все в икскоде писал естественно.З.Ы SwiftyJSON либа
>>840659Только что добавил Bolts фреймворк в подс файл, заапдейтил все. И в итоге теперь все ок в appcode.
>>840680Обясните долбаебу(мне). В ЧЕМ РАЗНИЦА МЕЖДУ completition handler и Promises???
>>840687И еще, что лучше использовать Promises или нотификейшн ивентбусы по типу дефолтного NSNotificationCenter
Как найти работу? На всех сайтах с вакансиями требуют опыт минимум от года, чаще от трех, портфолио, знания кучи других технологий, и вообще зарплаты 100-150к. Где вход-то для простого начинающего хуесоса, который не против за еду обезьянить?
>>840959Онли по знакомствам. Сам так устроился, и слышал от тим лидов, что берут только если кто то посоветует, и редко когда люди сами в поисках работы обращаются, естественно с ебунячим опытом и тоннами навыков. Плюс от коллеги слышал что, если ты без образования, то только по знакомствам, т.к даже не спрашивают, а если без знакомств, то обязательно нужна хотя бы одна вышка. Сам я среднеспециальное получил, а потом меня через знакомых посоветовали в компанию, где сейчас я и работаю уже второй год. Про образование никто никогда не спрашивал, только бухгалтерша единожды когда оформлялся, и то, ее перебил тимлид, и сказал "Забей, все впорядке".
Решил осваивать Swift 3. Как блядь в нем прочитать файл как массив байтов? [UInt8]
>>811442А что, гарбаж коллекторы уже научились без помощи программиста собирать циклические ссылки? Когда я программировал в 7й яве, там точно так же надо было делать weak ссылки. Так они есть и в свифте. Что ещё надо? Альзо, в нулевых или начале десятых, в обжективе был сборщик мусора. Но потом его выпилили и запилили счётчик ссылок
>>840689Промисы больше нужны, когда у тебя куча вложеных друг в друга коллбэков. Нотификации - это способ уменьшить количество зависимостей между классами. Убрать ссылки друг на друга. Они не лучше или хуже, просто они немного для разных вещей используются. Хотя, иногда могут выполнять и одну и ту же задачу
>>841873Плохо программировал. Жабовский GC прекрасно удаляет острова с циклическими ссылками.
>>841160Меня препод в универе пригласил обезьянничать в фирме, в которой и он работал. Причём мне предложили работать даже не за еду, а за 300 баксов. Правда я им показал несколько самописных прог и сайт, который я наваял для школы, в которой проходил практику.
>>841873>Когда я программировал в 7й яве, там точно так же надо было делать weak ссылки.Што ты пиздиш малец, в Android который базировался на Java 6 не было с этим проблем.Вот открыл первую ссылку гугле - 2009 год и уже все в курсе про корневое множество.
>>841888http://stackoverflow.com/a/1910203
Аноны, нужно программно создать и изменить плист файл - понадобавлять в него словарей и массивов, подскажите код.
>>841905ну вот же ну епта, первая блядь ссыль в гугле.http://stackoverflow.com/questions/6697247/how-to-create-plist-files-programmatically-in-iphone
>>786380 (OP)айос бояре в конфу быстро http://xaa.su/28jQ
>>842270Спасибо. А теперь как этот плист сохранять в айклауде пользователю?
Я не могу короче до сих пор въехать в опшнлс и в всякие as! as? дайте нормально почитать, я привык по старинке обж с стайл код
>>842528as! - кастует объект в нужный класс. Если объект не того класса, то будет эксепшен.as? - то же самое, но эксепшена не будет, а просто вернётся nil. Постоянно использую as?
Мне осеньма не хватает1. Абстрактных методов и абстрактных классов2. Юзерских аннотаций. Было бы круто запилить аннотацию для нотификаций. Типа @NSNotification("BLA_BLA_BLA") func didBlaBlaBla() {}. Насколько нагляднее было бы. Да и много где пригодились бы
>>843505протектед. чёто вообще хз как жить без протектед, если пытаешься что-либо обобщить в базовый класс.
>>786380 (OP)Кто что скажет за ёбаный паттерн VIPER?У нас на проекте тимлид угорел по нему, на митапе долго рассказывал как всё будет МЕГАОХУЕННО И ЧИСТО. В результате в коде всё настолько ИЗОЛИРОВАННО-ПЕРЕИЗОЛИРОВАННО что для любого чиха нужно создать от 3 до 6 файлов и всё подключить только в одном ПРАВОСЛАВНОМ порядке иначе БОХНАКАЖЕТ пиздец. Меня и ещё несколько коллег это уже люто заебало. Это мы просто дауны и не понимаем всю охуенность или реально что-то не так? Никто не сталкивался?
>>845612>VIPERГовно без задач, дрочат только петухи.
>>844273Согласен. Мне тоже на хватало пару раз. Думаю, к свифту 4му одумаются.
>>845612> VIPERНе разбирался пока, но чувствую, что такая же хуита для фанбоев, как и dependency injection. Пол-дня пишешь конфиги-хуёнфиги, классы хуяссы чтобы сделать простейшую вещь
Анон, на каком этапе правильно передать параметры в ксиб из вьюконтроллера? Есть некоторые проперти в ксибе, допустим цвет и название кнопки, я хочу из вьюдидлоада вк передать это в ксиб чтобы он с этимим определенными параметрами рисовало, но нихуя, ксиб грузит и нихуя, по нилу все, т.е. он тупо там даже не берет их? Что я пропускаю, куда смотреть? вроде после нибэвейка ж ок все должно быть
>>840689RxSwift
>>846120Ты долбоеб, на простейшей вещи тебе показывают как это работает, чтоб ты мог применить ее на большом проекте, естественно для простейшей вещи никаких особенных паттернов не нужно. Более того, с опытом ты сам будешь замечать, что сам додумался до части паттернов, и сделал себе проще, и поймешь, что если бы сразу вник в теорию, то тебе бы не пришлось тратить своего времени.
>>848048что ты несешь, поехавший? Во-первых, файлы с расширением xib называют нибами, во-вторых, это единственное что понятно из твоего описания, опиши по-человечески, приложи код, который якобы не работает как ты хочешь
>>848077Блядь.Есть ниб, есть аутлет на вк, допустим @IBOutlet var huyPizdaView: HuyPizdaControl!в нибе с классом HuyPizdaControl есть проперти pidorтак вотиз вк хочу туда в пидора передать что-тоВроде делаю все правильно, во вьюконтроллере на котором валяется вьюха с нибом пишу huyPizdaView.pidor = "pidor"но крашится в ксибе мол там nil, так какого хуя нил? На каком этапе я там могу pidor использовать? Мне просто параметры надо передать в ниб для отрисовки некоторых элементов с параметрами
>>841879А нахуй тогда WeakReference? Это может в какой седьмой жабе появилось? У нас всё было на 6й. А потом я выкатился из жабы
>>848094Ты должен включить режим сплит скрина (кнопка 2 пересекающимися окружностями) и заасайнить вью из ксиба и пропертю из класса. Перетаскиваешь вью на пропертю и держишь при этом CMD
>>848094у тебя ниб не загружен, однозначно, и не факт что он вообще грузится, ты в этом уверен? Ты в IB поменяй проперти какие-нибудь и посмотри, появляются они или нет, скорее всего нет, т.к. ниб и класс не связаны, то что ты название дал такое же - еще ничего не значит
Слышал, что в третей версии много имен функций порезалиТам всё на столько плохо? Стоит ждать обновлённый учебник?Только начинаю изучать язык
>>848248>>848215Алло чуваки, сам ниб у мен язаебись отрабатывает, все ок, рисуется, все работает, анимируется. А вот когда в него ж хочу передать чет, то беда.Дело в том что сама переменная содержит данные из вк, но только если допустим если я ее читаю в каком нибудь методе что срабатывает потом, допустим таргет повесил на кнопку там и там же посмотрел ее, а вот если сразу грузить ниб - то нихуя. Вот поэтому я и не понимаю почему так, вроде после loadViewFromNib и прочих ништяков гружу, когда уже по факту все отрисовалось, а нихуяВот как раз хочу узнать почему на начальном этапе он еще не читает ее.
>>848256Ну еб твою мать. Допустим было stringByReplacingSubstring(dfdfg, with: sdfsdf) стало string(byReplacing: dfdfg, with: sdfsdf). Если уж код комплишен не поможет, так нагуглишь. Если для тебя это представляет проблему, то может ты не туда зашёл?
>>786380 (OP)> http://swiftbook.ru/Not found 404
>>848256"порезали имена" в интеропе с cocoa, "обновленный учебник" давно есть в айбуксе
>>848317>код комплишенэто говнище глючит и падает с первой и до третьей версии свифта. В обжс все заебись работает, иногда жалею что связался со свифтом, эти тормоза комплишена, эти тормоза сборки, на обжс все летало
>>848317>может ты не туда зашел?Алло, я ещё IDE не ставил, говорю жеПросто поинтересовался
>>848350Извини что ты даун
>>815052хакинтош в ту же цену
Как сделать колеккшнвиев динамичным как тейблвиев? Типо прототип ячейки, закопировать их программно сколько надо и работать с каждой по очереди так же программно.
>>851219Эх, и опять сам разобрался, мертвый тред мертвого языка для мертвой игрушки.
>>851247Ну если хочешь чтобы отвечали более менее быстро — пиздуй в конфочки, это биржа как никак.
>>851262А че за конфочки? Я опять застрял - не могу привязать лейбел, пишет Outlets cannot be connected to repeating content
Если кто-то хочет запилить пропозал для свифтаhttps://github.com/apple/swift-evolution/tree/master/proposals
Парни, что такое swift? Если я хочу сделать мобильное приложение надо ли мне читать операторы-шмаператоры хуемае или лучше гуглить на английском последовательно "как создать окошко", потом "как заполнить", "как сделать вызовы"? Просто я мельком глянул и это мне напоминает программирование мышкой, небольшой опыт есть, но он действительно небольшой. По какому пути советуете пойти?
>>856664Учить его в любом случае придётся.Программирование мышкой там заканчивается на создании базовых форм. Этой самой мышкой ты даже обработчик для кнопки не сделаешь как во всяких дэльфи.
>>856664Swift - просто современный язык общего назначения, если бы Джава или C++ делались в 2010-е, они бы выглядели примерно так же, и никаких фундаментальных отличий от других статически типизированных языков общего назначения у него нет: просто чище синтаксис, лучше поддержка функционального программирования и при этом удалено то, что давно пора было удалить, но в других языках терпят ради обратной совместимости. Неслучайно же Swift так похож на Kotlin (ещё один язык, созданный в 2010-е, и тоже не заточенный под что-то специфическое). Единственной необычной фишкой является ARC вместо GC (в Котлине, например, как раз GC).И применять Swift можно для чего угодно, в том числе игор, веб-бэкенда и т. д.Программирование мышкой по-моему вообще распространено при создании GUI, это не фича Свифта как такового.
>>857155>И применять Swift можно для чего угодно, в том числе игор, веб-бэкенда и т. д.(В смысле в теории можно, на практике нужных для этого либ/фреймворков либо пока нет, либо только появились, но в принципе есть, скажем, веб-фреймворк Kitura)
>>857160До сих пор нет нормального пакетного менеджера, либо люди пользуются не пойми чем.
>>857162Пилят swift package manager, хотя тащем-то есть cocoa pods и они мне нравятся больше. Потому что в swift package manager пакеты - это классы. Ну что за нахуй?
>>857814>есть cocoa podsА зачем тогда понадобился новый пакетный менеджер?
Антош, подскажи - имеет ли смысл, чтобы вкатиться в Xcode, брать б/у mac mini 2015 4gb (либо есть вариант с 8) или macbook pro 2011 4gb? Что вообще скажешь по конфигурациям?И еще момент - как могут наебать при покупке б/у с рук? Скажем, может ли быть тот же mac mini китайской (дважды китайской, я имею в виду) подделкой с говном на борту? Как отличить?
>>858296Я бы на твоем месте собрал хакинтош.
>>858297Думал об этом, но не уверен, что ноут потянет его нормально, и там, говорят, ебли много с кекстами.Еще есть вариант некро mac mini 2007 года с 4gb ну совсем за копейки, в эту сторону лучше вообще не смотреть, да?
>>858300Не знаю на счет новых мини, но в свой late 2012 я запихал 16гб и ссд. Так что не смотри на память, ее можно докупить.
>>858309 а сколько памяти необходимо для комфортного старта в разработке на swift? Там ведь по началу не будет каких-то огромных проектов
Антоши, иос треда не нашел, пишу сюда.Возможно ли через приложение на iOS изменить куки в Safari?
>>858296Ищи mac mini 2012, они мощнее, чем 2015. По поводу хакинтоша, если железо подобрать, то проблем быть не должно. Кексеты поставить не проблема. У самого даже на AMD получилось поставить El Capitan, но все же покупаю i3, ибо железо устарело и ебли с интелами поменьше. Плюс есть плюшки для эмуляции Андроида Если на ноут ставить, то ищи модель ноута с hackintosh, может кто-то до тебя уже все опробовал. Оперативки и 8 гб хватить должно, на мой взгляд
>>858622На форумах пишут, что мой ноут не поддерживается, либо с ним ебля возникает.Mac mini 2012 есть на амазоне - там можно брать? Не кинут?И где потом память к нему взять? Поди, в обычном-то магазине не купишь.
>>858622https://www.avito.ru/ekaterinburg/nastolnye_kompyutery/mac_mini_2007_848257121Такой вообще бесполезен?
>>858706>2007Ещё яги попроси к антиквариату в подарок.
>>858707Эх, где мой 2007...Анон, тогда что лучше:Mac mini Late 2012, Core i5 2.5 GHz, 4 GB, 500 Gb, HD Graphics 4000 с перспективой апгрейда оперативкиилиСвежий MGEN2RU/A Intel Core i5 2,6 Ghz, 8 Gb, 1 Tb, Intel Iris Graphics, но с ним уже ничего не сделаешьВторая модель дороже на 5-9к
А че, в новых миниках вообще нихуя заменить нельзя? Впаянная память и впаянный hdd?
>>858754Няша, если минимак новее 2014, то там нельзя заменить память - можно выбрать увеличенное значение только при заказе более дорогой комплектации.
>>858673Доставки же нет. Ты ведь в Рашке живешь? Тебе на авито искать надо.
http://snazzylabs.com/article/skylake-mac-mini-hackintosh/Палю годноту. При желании можно значительно сэкономить, купив вместо i5 i3, 8 гб оперативки, на материнке, ссд и прочих вещах. Но если есть возможность купить мак мини 2012, то лучше его.
>>858829>>858832Пойду смотреть местные объявы. Аноны, вы сами-то на чем работаете? Есть какие-то нюансы в духе "при максимальной загрузке греется и уходит в ребут" и т.д.?
>>858895Самый главный нюанс — обязательно 16гб оперативки, иначе браузер+икскод+эмулятор=нонстоп свопы.
>>858895> мак мини 2012> Есть какие-то нюансы в духе "при максимальной загрузке греется и уходит в ребут" и т.д.?В ребут не уходит, но начинает шуметь так, словно готовится к взлету.Все же десктоп с нормальным охлаждением был бы лучше.
>>858898но почему? как раньше люди кодили на 2Гб и 4Гб маках? жесть какая-то(
>>8589648 хватит, но 4 уже может не хватать
>>858916десктоп - ты имеешь в виду imac? Их, кажется, тоже можно прокачать по оперативке до 16Гб
В 2к16 надо в обжектив си вкатываться перед свифтом или сразу на свифте можно писать под iOS?
>>858997Я имел в виду обычный десктоп, с хакинтошем если нужна макось.
>>858916Анон, какие нюансы при покупке? Там отвязка от appleID, или еще какая-то херня, как с айфонами-"кирпичами"?
>>859005Если тебя возьмут джуном, то скорее всего заставят копаться в старых проектах, а не писать новые, поэтому будешь писать на обжективе.
>>858832Антош, подойдет ли imac mid 2011 с 12Гб оперативы под капотом?
>>859005Уже 10 раз отвечали: оба, с упором на обж-с, если в ближайшие пару лет собираешься идти работать.
Обновил Xcode с Swift 3, теперь появились проблемы конвертации Meteor Cordova кода с первого свифта. Использовал плагины для работы WebRTC
>>859188Пойдет, почему нет. Надеюсь там не Core 2 Duo.
Сап, свифтач. Пишу небольшую прогу на свифте под айос, и появилась прикрутить сторонний апи. С alamofire, вроде бы, разобрался, только вот такая хуйня: почему-то ветвь кода, которая должна идти после проверки responce.result выполняется вообще после остального кода функции.Т.е. прога работает следующим образом: Все, что до Alamofire.request(...).responseJSON {...}, затем все, что после, и через несколько секунд ветка кода, которая лежит в этом responceJSON. Как добиться того, чтоб код работал последовательно?
>>859634Ты про асинхронность вообще слышал?
>>859524Няша, а что не так с Core 2 Duo?
>>859188>imac mid 2011 с 12Гб оперативы под капотом?Обязательно замени диск на SSD (самый быстрый который сможешь достать).Иначе тебя никакие 12gb не спасут от постоянных подтормаживаний.
>>859803диск меняется также легко, как и оператива?
>>859801Старый же. Нет некоторых технологий. Например могут понадобиться какие-нибудь SSSE3 для эмуляции. Плюс есть технологии для ускорения виртуализации в i моделях. Сомневаюсь, что они есть коре два дуо
>>859803Сижу на капитане на HDD, не скажу что что-то тормозит. Если на винде при HDD, система не очень отзывчивая, то на OSX как-то пошустрее. Хз, может мое воображение.
>>859993Имел опыт работы наmac mini 16GB (HHD) VS macbook 4GB (эпловский SSD)Мини постоянно подвисал на открытие файлов/программ и на компиляции (когда данные еще не закэшированны).В любом случае, поставь хороший ssd - хуже не будет.>>859939ХЗ легко ли, но диск можно поменять даже в air (а там даже озу распаяна).
>>859939Слегка сложнее, потребуются яблочные отвертки:https://www.ifixit.com/Guide/Mac+Mini+Late+2012+Hard+Drive+Replacement/11716
синьйор гейось в треде, спрашивайте свои вопрсоы!
>>860059> но диск можно поменять даже в airда иди ты нахуй, там на эти диски цены я ебал, иначе давно б ссд стандартную купил бы и поставил бы
>>860199Спрашиваю - анон, какой минимальный конфиг для комфортной работы в Xcode над несильно громоздкими проектами?Core2Duo - не тащит вообще?Что лучше - mac mini, imac или macbook pro/air?
>>860209Макбук про. Мак мини и эир тормознутое говно, аймак доргой. Но без ссд и 8-16 гигов нет пути!
>>860230> без ссд и 8-16 гигов нет путинынче везде так
В Си был оператор forfor (var i = subviews.count - 2; i >= 0; i -= 1) Но в Swift 3 его выпилили и вместо него изобрели богомерзкий stride:for i in (subviews.count - 2).stride(through: 0, by: -1) through - до какого значения должен дойти цикл, включительно. Если вместо него написать to, то будет не включительно. Интуитивно понятно, не так ли? (сарказм). Ну и до кучи, в случае со stride нужно больше печатать. Я уже молчу, что ++ и -- посчитали небезопасными и выпилили. Наверно, потому, что некоторые дауны путаются с префиксными и постфиксными операторами. Теперь надо писать += 1 и -= 1. Очень наглядно, по сравнению с ++ и --
>>860421Лучше уж буду писать for i in (0 ... subviews.count - 2).reverse()Хоть как-то читабельно
>>860421> for i in (subviews.count - 2).stride(through: 0, by: -1) Судя по SO, в swift 3 теперь:> for i in stride(from: 5, to: -1, by: -1)> for i in stride(from: 5, through: 0, by: -1)И это норм, как по мне.> Теперь надо писать += 1 и -= 1. Это тоже норм.
>>860445> for i in stride(from: 5, to: -1, by: -1)А, ну да, я же пока в 2.3. Переезд проекта на 3 пока отложил. Но всё равно, лучше буду использоать ..., ..< и reverse если надо.to и through нихуя не наглядны и их легко случайно спутать
>>860230анон, а норм без SSD, но с 8-16 оперативки?Скажем, iMac 2011 core i5?
>>860500без ссд не норм.
>>860504совсем плохо? как раньше люди работали? Много ебли вроде с заменой HD на SSD в imac 2011
>>860625Ну чисто потыкать похуй на чем, главное хром не открывать. А полноценно работать потом купишь что то поновей.
>>860625> как раньше люди работали?Раньше было меньше данных, меньше финтифлюшек и при этом все тормозило больше.
Сразу к делу. Есть два ст вопроса:Имеется СвифтоМодуль/сдк, в котором нужно вызывать одну единственную функцию, принимающую сплошь стринги да инты. Возможно ли слепить это как приложение для не-иОси? Линь, Винь.Хотя бы гипотетически.вопрос 2: если да, где найти человека на такую разовую работу?
Аноны, вижу, не я один собираюсь вкатиться в ios-разработку, но у меня более оригинальный вопрос, чем у предыдущих.Можно ли эффективно работать в xCode из-под виртуалки (VirtualBox, например), или вообще из облачного сервиса, такого как https://www.macincloud.com/ ?????Кто пробовал подобное, поделитесь впечатлениями
>>861041Если эта функция не имеет каких-то особых зависимостей и с открытым кодом, то проще переписать на другой язык. Свифт пока только кое-как портировали на линь и то, очень сильно обрезанно
>>861054> Можно ли эффективно работать в xCode из-под виртуалкиЕсли уж виртуалить, то vmware - она побыстрее работает, чем другие. Но всё равно достаточно геморно. Бывает подвисает всё на пару секунд. Стоит рассматривать только, если совсем нельзя выделить денег на мак
>>861072Спасибо, буду думать. А сколько оперативы надо, чтобы на виртуалке не тормозило?И можно ли с виртуалки потом публиковать приложения в appstore?Мак возьму при первой возможности, но пока так
>>861090Я работал с 8 гигами памяти на физической машине. На работе был мак, а дома использовал только, когда влом было идти на работу
>>861069Я бы с удовольствием переписал, но код в .swiftmoduleБинарник же?
>>861125А ну тогда хз. Я не разбирался как устроены swiftmodule. Может другие подскажут
>>861095норм если будет mac mini server 2010 core2duo 10Gb RAM + SSD?
>>861297Должно быть да. Если только на него установится последняя мак ось и икскод
Аноны, на днях пойду покупать iMac. Как сделать, чтобы не обманули? Я имею в виду из каких учеток должен выйти прежний владелец, есть ли какие-то мастер-пароли? Где все это проверить? Надо ли сбрасывать к заводским настройкам?
>>862660Хорошо бы было переустановить систему, тогда точно мусора за прежнем владельцем не останется. Но для этого нужно надежное интернет-подключения
>>862847Можно просто переустановить, или обязательно стирать диск перед этим?
Как получить xcode аноны? сделал vmare эмуляцию с капитаном, из апстора не качает а левый пидорасится как сучечка. Ох уж эта анальная зависимость.
>>861054Нет, будет дико все тормозить. У меня i5 камень, 8гб памяти, все лагает дико, сейчас хочу хакинтош поставить. Самая проблема в том, что не определяет под виртуалкой система видеокарту, максимально выдает 128мб памяти вне зависимости от карточки твоей.
>>863408у меня из апстора скачивает все приложения под виртуалкой, сборка может оси плохая как вариант.
>>861054Около месяца так работал. Полный пиздец. Лагает жутко. Но на самом деле, попробовать можно но очень ненадолго, пока мак/хакинтош не заимеешь
Swift винду вообще собирается поддерживать хоть когда-либо?
>>864577Билды компилятора для шинды гуглятся легко.Алсо, на win 10.1 (или где там подсистема вбунты из коробки) можно и убунтовую версию запускать.
>>864577Тебя именно Swift интересует? Ибо для программирования для эппл техники нужна именно макось.
Как работать с ебаным jsonserialization? Информацию получаю, но как распарить - не могу понять.
>>865183В гугл забанили?https://www.raywenderlich.com/120442/swift-json-tutorial
>>786380 (OP)если я хочу утроиться джуном в авось разработку в дальнейшем мне нужно учить обджектив си
>>865589Какой тебе обжектив си, когда ты пунктуацию в школе не осилил. Вкатывальщик мамкин.
>>865630есть что по теме?
>>865760Учебники русского языка, класса так с пятого.
>>865762дальше?
Haskell неудачный вариант для новичка. Язык сложный, возможностей мало, работы тоже мало, а на каждую вакансию десяток макак. Сейчас каждый школьник учит Haskell, а потом не знает что делать с ним. Лучше попробуй Haskell. На нём и конкуренция пониже, и зарплаты больше, и сам язык понятней. Если никогда не занимался программированием, то начинать лучше всего с Haskell - после него другие языки учатся быстрее. Работы полно, платят отлично. По книгам. Если есть хоть немного знаний программирования, читай это:http://www.ozon.ru/context/detail/id/30425643/Если совсем новичок, пойдет эта книга:http://www.ozon.ru/context/detail/id/28346038/Ну и куча онлайн-учебников. Вот, например: https://anton-k.github.io/ru-haskell-book/book/home.html Хороший учебник, всё расписано подробно. Сам по нему учился. Рекомендую.
>>865824дальше?
Подскажите что почитать чтобы понять суть дауну ньюфагу.Если var asteroid поместить под скобки override func didMoveToView то спрайт на экран выводится, но компилятор ругается что внутри touchesbegan он не знает что такое asteroid. Почему не видит? Что можно сделать чтобы видел? Еще могу переменную var asteroid поместить одновременно и под скобки class GameScene: SKScene { и под скобки override func didMoveToView причем с одним и тем же названием, и он НЕ ругается что имя занято. Почему?
Как кастом вьюху в кастом ячейку впихнуть? Размеры пидорасятся ячейки, по запросу load custom view to custom cell выдает только ебучие ксиб ячеек, а у меня есть ксиб ячейки и ксиб вьюхи в контейнер ячейки хочу свою вьюху впихнуть
>>786380 (OP)Посаны, я понимаю что тред не об этом. Но может кто навернет годную книженцею по Obj-C? Очень надо разобраться, в рот ебал этот вырвиглазный синтаксис.
>>786380 (OP)Поясните за мобильную разработку под iOS. Интересно ли по сравнению с веб?Какие перспективы в будущем?Что будет если все начнут писать на react native и т.п.?Лок на одну закрытую платформу не смущает?
>>873887>Лок на одну закрытую платформу не смущает?Не все так плохо.Уже сейчас есть https://flutter.io для кросплатформы UI под android/ios и Xamarin FormsА через пол годика пойдут первый билды с Kotlin Native - там тоже обещают поддержку iOS.
>>873887Да тот же самый веб по большому счёту, особенно учитывая что сейчас вся логика в вебе — буквально сплошные веб-аппы кругом.Лок на одну платформу и нативные средства разработки для UI приложений — необходимое зло. Хорошую каштомизацию не накрутить, а скорость выполнения оставляет желать лучшего — просто посмотри приложение того же гиттера. Простенькое приложение, с 2ф-мя экранами и чатиком — оно, блядь, лагает на 6S! Со слаком на жсе то же самое хотя в последнее время всё не так плохо. А пердолинга с такими средствами ничуть не меньше — посмотри например отзывы о ксамарине, который на всех платформах работает по-разному и поддержка сама не знает что происходит.
>>873926Знаю студию, которая пилит на xamarin вполне успешно, но в основном отзывы о нем отрицательные.Т.е. натив будет жив еще очень долго и если что можно будет переключиться на кроссплатформу без проблем?
Можно ли получить локализованную цену для встроенных покупок без использования делегата? А именно у меня динамическая таблица, изначально я хотел подгружать цену во время загрузки каждой ячейки, а оно сначала загружает все ячейки и только потом вызывает делегат. Я особо делегатами не пользуюсь, но че за хуйня? Почему делегаты не загружаются моментально, как если вызывать функции?
>>874363А хотя я в предыдущем окне всё, что мне нужно могу сделать, а в таблице просто подгрузить уже готовый массив с ценами.
>>873926Слак на винде тормозит хуже, чем хромог. На маке с ссд ещё хоть как-то работает. Кому нравится это дерьмо?
>>874352Кроссплатформы плодятся как грибы. Сегодня одна, завтра другая. А натив всегда есть. Хотя на кроссе сейчас заказов наверно больше, чем на нативе. Надеюсь, они рано или поздно наедятся кроссплатформами и поймут, что это говно
>>876117>наедятся кроссплатформами и поймут, что это говноНяшь, чем же вендор лок лучше кросплатформы?Да и не одним Xamarin едины, есть есть еще flutter.io от ребят из Google и даже libGDX имеет виджеты для UI.
>>876123Это конечно ахуительные истории, но вот не выкинут ли завтра это fslutter в окошко ребятки из гугля - непонятно, как и со всем остальным. Так же тебе уже выше пояснили что кроссплатформа - это банально дефакто низкокачественные продукты, и это не исправить.
Смогу запустить swift на OS X Mavericks ? дело в том что хочу поставить на пк хак
Котаны, как самому уже научиться пилить и проектировать? Я вот тупо не могу без стековерфлоу и гугления. Ну серьезно. получается кодкаша, я вот даже свой апиклиент не могу написать, тупо не понимаю как универсальный должен быть, у меня там каша из набора запросов и все в таком роде
Если пройду курс Скутаренко, не стыдно будет проситься на работу?
>>879050Что конкретно ты не понимаешь?
Интересно, все в этом треде уже прочитали SICP?
Я что-то туплю, как сделать так:*var myArray = [Int]()func testFunc(){ var localArrayRef = myArray // Вот тут что надо сделать? localArrayRef.append(5)}testFunc() // теперь myArray[0] == 5Как не делать копию глобального массива-то?
>>879709>теперь myArray[0] == 5То есть, хочу, чтобы было так, а на самом деле myArray пуст.
>>879723Есть, кстати, мемы на подобие поста выше?
>>876292Если и поставишь, то какой-нибудь 2й, а то и первой версии. Аппле срать хотела на поддержку старых осей
>>879392Хуенко, блядь. Не стыдно будет, если ты сам написал хотя бы пару приложений на свифте. А прослушать курс любой дурак может
>>879050> апиклиентЧто ты пишешь? Ты нормально можешь объяснить? Что ты понимаешь под универсальностью?
свифт самый ебанутый язык за последние миллион лет, даже не знаю синтаксис какого языка хуже..
>>880215У говна.
>>880215После обж-с он очень даже ничего.
>>880215Что не так?
Бесит этот тред. На свифте в нормальном продакшне пишут 1.5 конторы-евангелиста, наполненных хипсторами, и еще полторы калеки пилят либы. Спеки нихуя не устаканились, а его именем уже называют тред ios-разработки. Молодец, Оп, ты сделал меня латентным ненавистником этого треда.мимо ios-лид с овер 10 крупными проектами за спиной
>>882322Ты просто старпер не могущий в новые технологии.Twitter, Slack и еще куча топовых компаний уже давно перешли на swift.
>>882375Вот я и говорю, хипстота-евангелисты.
Swift говнище, objecitve с рулит.
>>854274В свифт забыли добавить %2 ?Или что?
>>882375Кек. Свифт - просто синтаксис, API у objc и swift одинаковое. А вот то что свифт сырое говнецо - факт. Сама концепция что в бандле будут библиотеки свифта - ущербна. Для программ с двумя кнопками сойдет, но уже что-то сложное разбитое на несколько бандлов, xpc-сервисов, и фреймворков свифт уже не годится.
>>882501Да не только в этом дело.У меня, например, часть проектов с кроссплатформенными ядрами на крестах и сях (для андройда и ios) - интегрировать это в свифт приходится через жопу, в то время как на обжективе ты просто посреди кода можешь начать ебашить на плюсах.
>>882501> Сама концепция что в бандле будут библиотеки свифта - ущербна.Вообще то на оборот, взять тот же Android - там такая уебишная фрагментация и API и Java (6-8)Сейчас не одна программа под Andorid не пишется без тонные support-library библиотек.В этих библиотеках и UI контролы и унифицированное Android API.А что бы уменьшить размер результирующих бинарников они кучу кода вынесли в так называемое Google Play Services.По факту GPS это и есть их магази приложений, соответственно многие Android программы даже не запускаются на телефонах без Google Play.
>>786380 (OP)https://medium.com/javascript-scene/why-native-apps-really-are-doomed-native-apps-are-doomed-pt-2-e035b43170e9Все пацаны расходимся, натив не нужен, все учим Javascript.
>>883543Да с удовольтвием, дайте тольк 1) Современный строготипизированный язык как вариант Dart и Kotlin2) Поддержка многопоточности3) Нормальную UI модель с виджетами, а не ебанутый DOMНу и что бы это все не тормозило
>>8835461) Различия между статической и строгой типизацией знаешь?2) И нахуя она тебе в мобильных приложениях? Целых 2 ядра загрузить? Тебе там кроме асинков в лучшем случае ничего и не надо, а точнее вообще все это решается библиотеками.>Ну и что бы это все не тормозилоЖС-ы и прочий шит как раз из-за DOM и тормозят.>>883543Ахуительная история. Особенно понравились рассуждения что большинство нативных приложений никем не используются - а стань он вебовыми, ими внезапно начнут пользоваться? Или аппрув в стор во всем виноват?Тенденция "один код работает везде" - булшит ещё из начала 2000-х, который до сих пор не позволяет делать качественный вещи.
Ебать даунов >>883543 и говноедов >>883546 полон итт трет
>>883558> 2 ядра загрузитьkek... айфонодаун не палится
>>883558> строгой типизацией ты и сам то не знаешь, что такого термина нет. кловун.
>>883653Довн даже не в курсе что это устоявшееся в русской терминологии выражение, потому что тоьько что прочитал страничку на вики, как мило)>>883646Ну ты сейчас берёшь и приводишь пример где на каком нибудь суперйобасомсунге требуется больше, и в каких вообще задачах.
>>883659>требуется больше, и в каких вообще задачах.Ну как, биткоины майнить! ой, ониж на гпу считаются(Пойду тогда сервер подниму.
>>883558 >>883659ДинамикоДриснявый-Клоун, тебе есть что по делу сказать оправдываться как будешь?
>>883659> устоявшееся в русской терминологии выражениеЧто такое русская терминология? Может быть ты хотел сказать, что в русском переводе подобрано корявое определение, что не отображает сути? С этим я согласен. Впрочем, чтобы ты там не хотел, можешь не продолжать, лучше потеребонькаю libnotify для написания уведомлялки о новых сериях в отслеживаемых торрентах, чем буду спорить с очередным кловуном. Спасибо.
>>883672У тебя хуёвый детектор.>>883677Суть оно более чем отображает — если осилишь страничку на вики до середины — поймёшь.А дальше тупые маняврирования как обычно.
>>883685>У тебя хуёвый детектор.Ой ну хватити, не траль больше нахуй ты тогда вообще влез, не к тебе обращались
>>883714Да просто влажную маню хотел еблом ткнуть в обосрамс)
Поясните, почему же свифт мало подходит для больших проектов и лучше использовать Objective-C? Или же всё это бред сумасшедшего и свифт реально рулит.
>>883751>Или же всё это бред сумасшедшего и свифт реально рулит.this
>>883757Вот я тоже к этому склоняюсь, ибо на своей первой работе пишу именно на нём, хотя обучение начал с Obj-C и у меня сложилось впечатление, что свфит лучше, так как на нём проще написать проект более качественно (без исключений итд). Но так как я не особо опытен, мб, я просто не вижу каких-то подводных камней, которые могут кардинально поменять моё мнение об этом языке.
>>883760Минус (он же и плюс) - Swift более высокоуровневый язык и хуже чем ObjC подходит для байтоебства.
>>883765А ты давно байти-ки то ебал в мобильных приложениях?Единственное чего не дает делать свифт в этой области - удобно писать битмаски и итерировать массив по инкременту указателя.
>>883770А у Swift есть интеропт с "C"? Я смогу впиндюристь в Swift класс код на "C", как это делается в Object-C?
>>883801Один дурак статическую типизацию со строгой путает инб4: кококо сильной, второй интероп с обратной совместимостью предоставляемой надмножеством. В сишке классы, что блять вообще несет... Что за поехавшие в этом треде...Интероп с си есть вообще у всего.
>>883801ну и зачем мне нужно "впиндюривать" в swift класс код на С, если я могу создать отдельный файл с си кодом и использовать его в swift коде
>>883835Что бы ограничивать скоп методов и не размазывая логику по разным файлам.Сейчас я так понимаю для их вызова надо еще добавлять их в "bridging heade".
>>883855>Что бы ограничивать скоп методов и не размазывая логику по разным файлам.Это проблема только если у тебя 3 функции, иначе это только плюс к навигации по проекту.>Сейчас я так понимаю для их вызова надо еще добавлять их в "bridging heade"Который состоит ровно из одной строчки с импортом.
А что делать после "изучения" свифта? Пишу в скобках, потому как нубас в программировании вообще и свифт моя первая любовь, поэтому это скорее не изучение, а обзор. Что изучать дальше, чтобы пилить арр-ы для айфошек?
>>884677самое лучшее, что я могу тебе предложить - это брать и делать приложения. Никакое обучение не даст тебе практического опыта и хорошего понимания платформы. Если пока ещё не можешь писать под iOS, тогда советую почитать книги от Big Nerd Ranch на английском, это даст тебе неплохую опору для старта. После них можешь смотреть в сторону iOS by tutorials от Ray Wenderlich (или как-то так), там уже собраны обзоры и примеры использования плюшек из разных версий iOS (этот шаг можно дропнуть, если есть мотивашка придумывать программы и писать их). После этого всего выходи в свободное плавание, читай форумы, экспериментируй и всё будет збс
Привет /prЕсть задача которой я себе мозг стер нахуй. Педалю iOS приложение в котором нужно сделать non-renewing подписку. Вся ахуенность в том что это приложение с Логином представляет из себя чат в котором я анлочу какие-то фичи на 30, 90 или 180 дней для конкретного юзера приложения. AppleID должен использоваться только для того что бы собственно сделать проплату. Итого, херня которая покоя не дает. Могу ли я делать проплату под разными юзерами в приложении использую один и тот же AppleID? И если да, то как они будут отображаться в AppleID и как быть с Restore Purchases? P.S. Да, сервер уже менеджить подписки и считать Expiration date.
>>885172Оба.
>>884852Спасибо адекваты на дваче, круто!
Я так понимаю, тут по совместительству и общий ios-тред. Уже дважды после подключения и запуска программ из xcode'а на телефоне ломался GPS — показывает, будто я в Лондоне, в той точке, которая доступна симулятору в качесте Custom Location'а. При этом в симуляторе я её не выбирал, Location в None стояло, и вообще gps там не использовал. Лечится перезагрузкой, но перезагружать, потенциально, перед каждым выходом из дома это ебануться. У кого-нибудь встречалось такое? Как починит?
>>883815>В сишке классы, что блять вообще несет...Ты неправильно прочитал его пост.>>883543Этя скриптохипстеры уже не знают, что и придумать. Install friction, блядь, пиздец. ШЕСТЬ КЛИКОВ! 20% ЗА КЛИК, ИТОГО -120% АУДИТОРИИ!!
>>886038>Ты неправильно прочитал его пост.Ну так расшифруй, для меня этот несформированный поток сознания слишком сложен.
>>886039>впиндюристь в Swift класс код на "C"Класс на swift'е, в него нужно вписать код на Си. Что тут непонятного-то? Суть не в его потоке сознания, а порядке слов.
>>886039Все все поняли и уже решили в посте >>883835Миксовать нельзя, нужно создавать отдельный файл C кодом и прописывать его в bridging
Перекатывайте, почоны.
>>883751Он будет пиздец долго билдиться на больших проектах, а в текущей реализации инкрементальная компиляция работает через пизду - очень заебывает на один измененный символ ждать билда несколько минут. Недавно я оптимизировал СКОРОСТЬ КОМПИЛЯЦИИ, а не скорость исполнения, прикиньте до чего дошли. Но несмотря на это свифт все равно лучше, обж си уже не развивается, будущего у него нет, только легаси.
Перекiт:>>887431 (OP)>>887431 (OP)>>887431 (OP)
Тред IOS-разработкиhttps://2ch.hk/pr/res/889890.htmlhttps://2ch.hk/pr/res/889890.htmlhttps://2ch.hk/pr/res/889890.htmlhttps://2ch.hk/pr/res/889890.htmlhttps://2ch.hk/pr/res/889890.html