Путь в IT

Путь в IT-отрасль: трудности, способы преодоления

В наше время IT-отрасль стала одной из самых востребованных и перспективных сфер деятельности. Безусловно, это привлекает многих молодых людей, желающих начать карьеру в этой области. Однако, как и в любом другом деле, вход в IT-отрасль может быть сложным и требовать определенных усилий. В этой статье мы рассмотрим трудности, с которыми сталкивается среднестатистический каждый заинтересовавшийся, но […]

iOS apps

Максимальный бюджет памяти для iOS-приложений

Бюджет памяти для iOS-приложений, который нельзя превышать. Падения приложений могут возникать при нехватке оперативной памяти устройства пользователя. Поэтому важно приглядывать за потреблением. Оригинал

iOS разработка. Вопросы и ответы на собеседовании

iOS разработка. Вопросы и ответы на собеседовании

Оглавление База по iOS разработке Разница между Bounds и Frame Разница между Point (pt) и Pixel (px) Работа механизма сообщений Селектор Чем отличается include от import? KVO Notification Указатель isa Что такое CoreData? Типы хранилищ CoreData Что такое NSManagedObjectID Что такое NSPersistentStoreCoordinator? Особенности использования CoreData в разных потоках Разница между nil, Nil, NULL, NSNull Работа Push-Notification Тонкости Push-Notification Что такое контекст (NSManagedObjectContext)? Разница между dispatch_async и dispatch_sync KVC Что такое быстрое перечисление (fast enumeration)? Категория Расширение Протокол Неформальный протокол runLoop Memory Warning Зачем нужны атрибуты свойств? Атрибуты доступности свойства (readonly / readwrite) Атрибуты атомарности (atomic / nonatomic) Атрибуты владения (retain / strong / copy / assign / unsafe_unretained / weak) Что такое @synthesize в Objective-C? Что такое @synchronized? Что такое Dynamic Dispatch? Что такое Grand Central Dispatch (GCD)? Сильная / слабая ссылка Как работает асинхронность в iOS? ООП (Объектно-Ориентированное Программирование) Инкапсуляция Наследование Полиморфизм Конструктор Назначенный инициализатор Деструктор Виртуальный метод Общее Lazy Initialization Что такое семафор? Что такое Deadlock? Что такое Livelock? Что такое мьютекс? Чем отличаются синхронная и асинхронная задача? Что такое Enum? Проблема «читатели-писатели» […]

Формула качественного разработчика

Формула качественного разработчика

Как стать грамотным разрабом и писать хороший код? Берёшь и делаешь! TDD — начало написания программы. Всегда и для любого проекта пишем тесты на ожидаемый результат и на все крайние случаи. ВСЕГДА. Думай прежде, чем написать. Какой смысл в тыканье клавиш, если ты не представляешь себе в достаточной мере, что нужно написать? Не будешь же браться за карандаш, […]