Стоит ли переводить Objective-C-код в Swift?

С

Будущее принадлежит Swift, но значит ли это, что нужно переводить код Objective-C на новый язык? Сейчас мы рассмотрим пару вариантов развития событий в этом контексте.

Вариант 1: Не переводите код на Swift, а придерживайтесь Objective-C

На первый взгляд это самый простой путь. Если уже есть проект, написанный полностью на Objective-C, то продолжить писать его на том же языке не будет проблемно. Тем не менее, и в таком подходе есть пара недостатков:

  • В будущем будет все меньше и меньше хороших Objective-C разработчиков, так как почти все новички сейчас выбирают Swift. Так что если вы зависимы от других разработчиков, в будущем поддерживать чистые Objective-C проекты будет все труднее.
  • Если вы независимы и работаете сами, то и в этом случае найдутся свои недостатки. Работая исключительно на Objective-C вы не получаете практики в Swift. Но ведь все мы понимаем, что именно за Swift будущее в разработке под платформы Apple. Так что не стоит долго засиживаться на единственном языке, если не хотите записаться в отстающие.

Вариант 2: Все таки перевести Objective-C-код на Swift

Это самый радикальный путь, который только можно найти в данной ситуации. Учтите — перевести весь код с одного языка на другой — это фактически означает написать полностью новое приложение. Не смотря на то, что Swift и Objective-C имеют отличную совместимость, их парадигмы программирования очень разные. Так что при минимальной неосторожности при переносе проекта на новый язык существует высокая вероятность использования неверных парадигм. Так же в эту затею нужно вкладывать много времени и, возможно, денег. Если в переписывании приложения нет особого крайне необходимого смысла, то этот вариант для вас сильно преувеличен. (И тут YAGNI =))

Вариант 3: Написать просто новый код на Swift

Такой подход — очень хороший компромисс. Поскольку совместимость двух языков высока, то вы можете постепенно писать новые классы на Swift, которые будут взаимодействовать с вашим Objective-C кодом.

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

Кроме того, значительно уменьшаются и риски. Если вы используете этот подход и вдруг поймете, что Swift вам не нравится (что маловероятно), то вы всегда сможете вернуться на чистый Objective-C не потеряв практически ничего.

Вывод

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

Поддержите ресурс blog.justDev:

Сведения об авторе

Игорь Малеваный

Добавить комментарий

Instagram

Поддержите ресурс blog.justDev:

Свежие записи

Рубрики