Использовать Xcode как JavaScript IDE, возможно?
Я работаю над Javascript-интенсивным веб-приложением, предназначенным для работы на iPhone/iPad. Он также работает во всех браузерах Webkit (Safari + Chrome).
у меня есть домашняя структура MVC, состоящая из многих файлов JavaScript: по одному для каждого представления, по одному для каждого контроллера, много "вспомогательных" классов.
у меня также есть куча меньше файлов, один "основной", включая каждый меньше файлов для каждого представления (например. если у меня есть UIListView.js, у меня также есть UIListView.менее.)
В настоящее время я работаю с MacVim и меньше.app, и делать тесты на обоих iPhone / iPad симуляторах, реальных iPhone / iPads, а иногда и Safari или Chrome, когда мне действительно нужно сделать "хардкорную" отладку с помощью инструментов разработчика. Все мои файлы хранятся в моем ~/Sites/projectX
папка, которую я просматриваю с помощью встроенного веб-сервера моего Mac.
это нормально во время разработки, у меня есть много маленьких файлов, на которые ссылается мой индекс.htm, но это не имеет значения, поскольку я нахожусь в своей интрасети Беспроводной доступ в интернет.
то, что я хотел бы достичь,-это более "проектно-ориентированный" подход. Так же, как при разработке проекта iOS в Xcode, я хотел бы использовать XCode для всех моих потребностей в разработке, держите все мои исходные файлы в каталоге отдельно от ~/Sites
, сказал ~/Desktop/projectX
. Я хотел бы иметь две конфигурации (debug и release) для использования с "Build and run":
конфигурация "debug" просто скомпилирует main .меньше файла (который включает все small .меньше файлов), скопируйте JS + CSS + HTM файл в некоторый каталог (~/Sites / projectX_debug), вместе со всеми графическими ресурсами. Затем, в зависимости от выбранной "под-конфигурации", запустите симулятор iPhone, симулятор iPad, Safari или Chrome, очистите его кэш (через AppleScript?) и откройте указатель.НТМ
конфигурация "release", которая склеивает все js-файлы вместе и минимизирует их, компилирует и минимизирует .меньше файлов, измените индекс.htm ссылаться только на склеенные JS, а затем оптимизировать все PNGs с pngout/pngcrush/whatever перед отправкой всего архива в локальный каталог (~/Sites / projectX_release) или sftp на мой производственный сервер.
Я считаю, что могу достичь, если не все, но большинство из этого, используя фазы сборки XCode 4, возможно, используя GNU makefiles или какой-то препроцессор, но я потерян в том, с чего начать.
У кого-то уже есть такая настройка для использования Xcode для чего-то другого, чем разработка Mac/iOS, но все же используя "классическую" концепцию этапов сборки / makefiles, традиционную для большинства IDE?
(приемлемым обходным путем было бы просто создать скрипт bash для обработки этого - я уже могу управлять им сам, но я бы очень хотел использовать интегрированные функции XCode и просто нажать Cmd-R для "компиляции" и запуска моего проекта в режиме отладки).
1 ответов
Я буду стараться, и шаг через вещи, которые вы должны сделать...
конфигурация "debug" просто скомпилирует main .меньше файла (который включает в себя все маленькие .меньше файлов),
- Я бы создал правило сборки для обработки .меньше файлов, используйте скрипт для их компиляции.
скопируйте файл JS + CSS + HTM в некоторый каталог (~/Sites / projectX_debug), а также все графические ресурсы. Тогда в зависимости от выбрана "под-конфигурация", запуск либо симулятор iPhone, симулятор iPad, Safari или Chrome, очистить кэш (через AppleScript?) и откройте указатель.НТМ
- для этого вам просто нужно добавить свои файлы в фазу копирования в разделе "фазы сборки".
- вы можете установить каталог сборки в разделе "настройки сборки" вашей цели (~/Sites / projectX_debug, если хотите).
конфигурация "release", которая будет склеивать все файлы JS вместе и minify их компилируют и минимизируют .меньше файлов, измените индекс.htm в ссылка только на склеенный JS, а затем оптимизировать все PNGs с pngout/pngcrush / что угодно перед отправкой всего архива на локальный каталог (~/Sites / projectX_release) или sftp для моего производства сервер.
- для этой части вы можете создать новую цель и добавить различные правила и настройки.
или
Если выше тоже сложно:
- напишите два сценария bash.
- сделать две цели.
- добавьте свой скрипт bash в качестве фазы сборки в каждой цели.
надеюсь, это поможет.