Добавление отображения нумерации строк в Xcode или Несколько нелестных отзывов об основной среде разработки под Mac OS X

{lang: 'ru'}

Это будет не очень длинный пост, повод для написания которого очень прост: я просто боюсь забыть, как же в Xcode включается отображение нумерации строк. Я никак не могу понять, почему она не включена по умолчанию?! Нумерация ведь позволяет намного точнее ориентироваться в коде! Хотя конечно, если ваш класс размером <500 строк, вам она не сильно нужна. Неужели Apple считает, что большинство классов в программах для Mac OS X и iOS будут столь малы?! (Конечно, речь идет о «считает по умолчанию») Странно это… И не очень понятна логика тех, кто отвечал за умолчания.

Ну это ладно, если бы проблемы с Xcode ограничивались только такой мелочью – я бы не стал раздувать из этого целый пост, а ограничился бы лишь небольшой заметкой на память. Но ведь есть и более существенные недостатки, которые просто мешают комфортной разработке!

Первый, который слишком часто попадается мне на глаза, чтобы быть не замеченным – это сброс подсветки. Если вы не работали в Xcode, вряд ли вы поймете сразу, что это, потому что в других средах разработки у меня такого не случалось. Вообще! А здесь подсветка может сброситься в том числе и по не совсем понятным причинам. Если вы начинаете вписывать какой-либо код в середину основного кода, то пока вы синтаксически правильно не допишите новую строчку, весь код, находящийся ниже, может перестать подсвечиваться. Особенно не любит Xcode отсутствие точки с запятой в конце строки. (Еще скажите мне, что вы сразу ставите точку с запятой в конец НОВОЙ набираемой строки кода! :)) А иногда подсветка сбивается и «просто так», т.е. явной причины этого мне выяснить не удалось…

Ну ладно, допустим, у вас есть встроенная в глаз автоматическая подсветка синтаксиса, которая включается в случае, когда Xcode начинает тупить. Но это не спасет вас от другой беды (причем у меня она есть что в 3-м, что в 4-м Xcode) – запуск приложения на симуляторе, а точнее – его не запуск. Т.е. вы жмете кнопку «запустить», Xcode отчитывается, что он «running application on simulator», но… НЕ «running » его!Экспериментально было найдено несколько способов решения этой проблемы, но все они из разряда «а попробуем нажать еще раз», «а попробуем закрыть симулятор вручную и снова нажмем на кнопку» или «а попробуем нажать на кнопку, дождаться, пока ничего не произойдет, и нажмем кнопку еще раз» ну и так далее и тому подобное. Очень не приятно и ОЧЕНЬ тормозит разработку и отладку приложений на некоторых этапах разработки.

И это я назвал только пару проблем, которые встретились мне в обеих версиях Xcode! В 3-м была еще одна прикольная штука, которая заставляла «танцевать с бубном». Интересно? Рассказываю. Проблема возникала, когда вы скачиваете из сети пример приложения (как вариант – официальный sample) и хотите его запустить у себя… Но, к сожалению, ваша версия SDK старше, чем та, на которую «настроена» сборка проекта. Вы честно меняете в свойствах проекта целевую версию SDK… Но Xcode продолжает ругаться на отсутствие старой версии SDK у вас! Решение этой проблемы очень забавное. Для того, чтобы все заработало, нужно было после уже описанных действий выбрать в выпадающем списке «релизная сборка», после этого в том же списке появлялась сточка «сборка под устройство», выбрать ее. Далее, выбрать «сборку под симулятор», и поиграться с выбором «release» и «debug» сборки. Только после таких манипуляций удавалось гарантированно (если конечно собираемое приложение поддерживало имеющуюся версию SDK) собрать проект у себя.

А теперь вернемся к тому, с чего я начал пост. Как же настроить отображение нумерации строк? Очень просто, надо только залезть в настройки Xcode, которые находятся по следующему «адресу»:


Xcode preferences/text editing

И поставить там галочку напротив «show line number».

Вот и все :) Просто, да, но такая функциональность должна быть включена ПО УМОЛЧАНИЮ!


Полезная статья? Их будет больше, если вы поддержите меня!