Легко поместить всю вину на “ управление ” Но управление действительно сообщение, Вы к конкретно не делаете какое-либо поблочное тестирование?
управление в целом не делает (и вероятно не должен) говорить Вам, как сделать Ваше задание, является ли это модуляризацией, абстрактными типами данных, шаблонами разработки или поблочным тестированием. Это инструменты торговли, которую применяет успешный, компетентный разработчик программного обеспечения, но бедный инженер не делает.
я думаю, что реальный ответ на Ваш вопрос: поблочное тестирование является действительно трудным, и студенты информатики не обучены ему.
легко, когда Вы пишете свой собственный строковый класс. При тестировании реального продукта Вы сталкиваетесь с проблемами, о которых никто не сказал Вам в слайдах powerpoint:
одна вещь, в которой мы можем обвинить управление, состоит в том, что спецификации требований редко содержат любые требования к уровню качества поставляемого компонента.
В следующий раз Ваш босс просит, чтобы Вы сделали временную оценку, включали время для записи модульного теста и видели то, что происходит.
Сборщик драгоценных камней Иегуда Каца - очень хороший вариант ИМХО:
http://github.com/wycats/bundler
В любом случае,есть много других вариантов, таких как создание каталога vendor / в вашем пакете приложений, добавление каждого подкаталога vendor в путь поиска библиотеки ruby в rb_main.rb
:
$:.unshift File.join(File.dirname(__FILE__), 'vendor/rest-client/lib')
$:.unshift File.join(File.dirname(__FILE__), 'vendor/crack/lib')
require 'rest-client'
require 'crack'
Я использую второй подход здесь:
Первому пользователю нужно будет установить гем:
$ sudo gem install gem_name
затем просто потребуйте это в вашей программе, вам также придется потребовать 'rubygems':
require 'rubygems'
require 'gem_name'
Чтобы использовать драгоценные камни в проекте MacRuby, вам необходимо использовать:
$ sudo macgem install gem_name
Пока не все драгоценные камни совместимы с MacRuby.
Драгоценные камни, написанные на C, пока что нельзя использовать в MacRuby. Итак, пока нет nokogiri .
Для упаковки драгоценных камней только что выпущенная бета-версия MacRuby 0.5 включает инструмент macrubyc
, который упаковывает фреймворк MacRuby внутри вашего пакета. Они также добавили поддержку для выполнения этого прямо из Xcode всего за один шаг.