Каковы некоторые методологии, которые должен использовать индивидуальный разработчик при создании программ cocoa?


Недавно я начал изучать разработку какао с довольно масштабным (вероятно, основанным на основных данных) приложением в качестве моей цели. Я изучал методологии разработки, которые могли бы помочь построить более качественный продукт с лучшим кодом, и хотя я нашел пару, которые я уверен, что хотел бы использовать, такие как управление версиями (вероятно, с помощью git), есть некоторые другие, такие как модульное тестирование, которые, похоже, будут трудны в использовании, когда большинство из них будут работать в режиме реального времени. приложение пишется с использованием IB и основных данных. Я был бы очень признателен за некоторые предложения относительно того, какие инструменты или методы рабочего процесса должен использовать индивидуальный разработчик.

Спасибо.

P.S. первый пост в SO!

EDIT: кстати, я в первую очередь планирую разрабатывать для OS X, а не для iPhone.

3 4

3 ответа:

Добро пожаловать в SO: -)

Одна вещь, с которой я борюсь как сольный Дэв, - это дисциплина...!

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

Яблоко большое руководство к модульного тестирования

Начиная с iOS 4, Apple добавила UIAutomation фреймворк для тестирования пользовательского интерфейса приложений. У о'Рейли есть руководство здесь , и вы, возможно, захотите иметь пик в официальной документации Apple для Маутоматизации

Он довольно новый, но не помешает взглянуть на него.

Также был запрос на SO оавтоматизированном тестировании приложений для iPhone .

Наш собственный Крис Хансон сделал серию сообщений о какао и юнит-тестировании. Это не так сложно, как вы думаете.

  1. Используйте git, это делает его действительно легко вернуться к предыдущим версиям
  2. прокомментируйте свой код, как упоминали другие, вам нужно будет посмотреть на него годы спустя и понять его
  3. Заведите привычку создавать себе многоразовые классы. Многие задачи, которые вы выполняете при разработке, необходимо будет дублировать в других проектах
  4. ожидайте, что независимо от того, насколько усердно вы стараетесь быть, у ваших пользователей будут проблемы. Таким образом, вы должны разработать методику, позволяющую вашим клиентам сообщайте о своих ошибках вам, что полезно. Я недавно реализовал это для себя. Это в основном способ получить значимые трассировки стека от пользователей по электронной почте. Я узнал это здесь .