Что нового
  • Главная
  • Форум
  • Разработка под iOS
  • Swift & Objective-C

Миграция с Objective-C на Swift: Пошаговый пример

  • Автор темы Автор темы IOSADMIN
  • Дата начала Дата начала

IOSADMIN

Administrator
Команда форума
Введение
Перенос кода из Objective-C в Swift — не всегда «все или ничего». Можно делать это постепенно. Рассмотрим пример гибридного подхода.

1. Настройка проекта

Добавьте файл .swift в проект — Xcode автоматически предложит создать Bridging Header.
2. Постепенная замена кода
Допустим, у вас есть класс на Objective-C:
Objective-C:
// Calculator.h 
@interface Calculator : NSObject 
- (NSInteger)sum:(NSInteger)a and:(NSInteger)b; 
@end

Замените его Swift-аналогом:
Swift:
// Calculator.swift 
class Calculator { 
    func sum(a: Int, b: Int) -> Int { 
        return a + b 
    } 
}

3. Использование в Objective-C
Чтобы вызвать Swift-код из Objective-C, добавьте @objc:
Swift:
@objc class Calculator: NSObject { 
    @objc func sum(a: Int, b: Int) -> Int { ... } 
}

4. Подводные камни

  • Типы данных: например, NSArray vs Array.
  • Обработка nil: в Swift опционалы, в Objective-C — указатели.
Совет:
Начните с небольших модулей и используйте #import "ProjectName-Swift.h" для доступа к Swift-классам.

Обсуждение:
Пробовали ли вы миграцию? С какими сложностями столкнулись?
 
  • Главная
  • Форум
  • Разработка под iOS
  • Swift & Objective-C
Верх