Posts

SiberianSwift is available

Hi there! Long time no see. I've been thinking about getting all the swift classes extensions in one place.  And here we go at CocoaPods! Check out the link below. It's not well-documented yet. There will be examples and more extensions in future. https://github.com/SergeyPetrachkov/SiberianSwift From Siberia with love.

SiberianSwift опубликован!

Всем привет! Давно не виделись. Давненько хотел систематизировать и собрать в одном месте методы-помощники, которые я использую в повседневной работе. Пока не наполнил должным уровнем документации все методы, однако все уже доступно через CocoaPods! Ссылка ниже. https://github.com/SergeyPetrachkov/SiberianSwift From Siberia with love!

VIPER and code generation problem

Image
Fade in... A lot of people think that VIPER has a lot of extra parts and that it's rather complex pattern. Others worship VIPER. Both points of view have right to live. My strong belief is that every mature developer comes up with their own VIPER. VIPER itself answers such questions as "Who is responsible for that part of my app? How do I call a class that is a lot like presenter but handles business logic?.. etc" Subject One of the obvious drawbacks of VIPER is a number of protocols and classes that only describe one module. Rambler team and some others handle this problem in their own way. I give you my own solution to a code generation problem. I was inspired by Raymond Law and his Clean Swift works. Now to create a new module does not seem like a big task. Xcode will prompt you to create a module! Xcode templates are under the hood of the solution. Create your VIPER module easily: The repository contains updated sample-project Download, in

VIPER и проблема кодогенерации

Image
Лирическое отступление Многие считают VIPER чем-то монструозным и избыточным. Многие возводят VIPER в культ и поклоняются ему. Обе стороны можно понять. Со временем к своему вайперу приходит любой зрелый разработчик, который беспокоится о своих проектах и их будущем. VIPER же, в каноничном его представлении, решает многие вопросы типа "а кто должен быть ответственным за этот код? Как мне назвать вот этот класс, который вроде уже вырос из презентера и работает с бизнес-логикой?.." Собственно, по делу К недостаткам VIPER'а действительно можно отнести большое количество протоколов и классов, которыми описывается всего один модуль. Этот вопрос поднимался и в книге от команды Rambler, этот вопрос решали и другие команды. Вашему вниманию предлагается мое решение в сфере кодогенерации для VIPER. Теперь генерировать модули не просто, а очень просто. Ведь Xcode будет иметь такую опцию при создании нового файла! На помощь приходят Xcode templates. Данной идеей я вдохновился

Введение в проблематику архитектуры iOS приложений

Image
Fade-in... iOS, MVC, MVVM, MVP, VIPER В разработке программного обеспечения, как и в математическом моделировании или в любой другой области науки, которая имеет дело с созданием чего-то нового на основе имеющихся знаний, можно выделить несколько этапов. Неудивительно, что разработка ПО, так же как и разработка математической модели, начинается с постановки задачи. Зачастую, от разработчика не зависит этот этап. Команда получает в каком-то виде описание проектируемой системы. Затем следует анализ и оценка требований к системе. На этапе анализа должны быть учтены риски, выбран стек технологий, вектор направления разработки. Затем, совокупность этих параметров должна быть оценена во временном эквиваленте, который трансформируется в денежный эквивалент. Так работает большинство аутсорсинговых IT-агенств по всему миру. Ошибка на этапе планирования сводит на нет всю последующую работу и может вести за собой пагубные последствия для фирмы как в финансовом, так и в имиджевом отношен

История разработки iOS-версии приложения "Айда!"

Image
Айда! iOS, VIPER, Swift, Apple, Release, Actonica, Ayda, Agile История о том, как нам нечем было заняться и о том как мы нашли занятие тысячам людей создав приложение для поиска модных событий, спортивных мероприятий, культурных развлечений и вообще любой движухи. В конце 2015 года, в городе Новокузнецк, в Actonica Studio родилась идея, что было б неплохо создать “рубрикатор” активных развлечений с акциями и скидками. Наш другой продукт “Курсы валют” cash2cash.ru уже исчерпал запас идей. Мы стали задумываться о том, как применить накопленный опыт и создать продукт для широкой аудитории. Однако, идея ждала около года. В итоге к январю 2017 был разработан примерный дизайн приложения и мы приступили к разработке архитектуры системы и затем самих приложений. В данной статье речь пойдет о разработке iOS приложения. Вступительное слово Компания прошла долгий путь в разработке iOS приложений. Начало было положено порядка 5 лет назад. Тогда это был Objective-C и ста