Как вы находите код, предназначенный для повторного использования, если вы не знаете, что он существует? В большой базе кода со многими библиотечными функциями, как вы знаете, написан ли код, который вы намереваетесь написать?Поиск Многоразовый код
ответ
Я прочитал документацию. Если документации нет, ее нельзя использовать повторно.
Повторное использование - это не то, что приходит бесплатно. Например, взгляните на библиотеку Stddddd Stdddard std :: string class - считаете ли вы, что вы сможете повторно использовать это в своем коде, если бы многие люди не успевали документировать, как это работает ? Вам нужно сделать то же самое, чтобы сделать свой собственный код повторно используемым.
Проверьте документацию, если ее нет, посмотрите, можно ли легко отделить какой-либо код. Например, часть кода может быть скомпилирована в отдельную библиотеку.
Помимо этих двух вариантов, это сводится к поиску старой доброй моды.
Если есть документация базы кода - посмотрите там.
Если нет документации, и вам все равно придется искать путь к исходному средству просмотра или мощный текстовый редактор с анализом исходного кода и навигацией, например SlickEdit. Я бы лично просто ctag источник и использовать vim для навигации вокруг, но это немного старомодно. Хорошая навигация по исходному коду (поиск вызывающих абонентов для функции, отображение графиков вызовов и т. Д.) Очень полезна для поиска вашего пути в недокументированном коде.
И не забудьте задокументировать выводы, поэтому следующий парень после вас не будет иметь такую же проблему.
Используйте инструмент просмотра кода по вашему выбору. Visual Studio, Eclipse и многие другие проверяют исходную базу и предлагают возможности просмотра. Это позволяет вам отслеживать интересные ссылки на другие классы или функции.
Чтобы сделать код надлежащим образом повторным, степень повторного использования должна быть такой же, как и степень детализации выпуска. Таким образом, вы должны иметь возможность видеть, что ваша система управления кодом выделяет компоненты, и вы должны понять, что делает каждый компонент.
Если код предназначен для повторного использования и не выпускается отдельно, то действуйте с осторожностью.
Отличный способ сделать код обнаруживается - это применять понятную последовательную систему именования. Например, если я ищу функцию, которая меняет содержимое строки, я, скорее всего, буду искать «ReverseString» (или «String.Reverse» в более OO-системах). Если кто-то написал такую функцию, но назвал ее «RevString» или «FastStrRev» или «gnirts» или что-то еще, я с меньшей вероятностью найду ее. Хотя этот последний был бы довольно забавным.
Как в стороне, вы всегда должны искать возможности для повторного использования кода (по крайней мере, внутри системы). Если вы видите что-то, что почти делает то, что вам нужно для этого, но не совсем, реорганизуйте его так, чтобы все случаи удовлетворялись с минимальным дублированием. Это помогает предотвратить кодовое соединение и увеличивает репутацию StackOverflow.
Спросите кого-нибудь еще в команде - они могут сказать вам с головы. В противном случае выполните поиск кода или имени файла для чего-то похожего на то, что вы делаете.
Затем скопируйте и вставьте код :-)
Я считаю, что дублирование даже простых функций плохо, поэтому любое повторное использование, которое вы можете сделать, это хорошо.
- 1. Многоразовый код/класс Репозитории
- 2. Многоразовый код в usercript
- 3. Многоразовый HTML код/виджеты
- 4. многоразовый код для классов
- 5. Многоразовый код на холсте?
- 6. xml "многоразовый" код
- 7. Попытка «инкапсулировать» многоразовый код javascript
- 8. многоразовый код в одном модуле
- 9. CakePHP 3 - многоразовый код таблицы Entities
- 10. Поверните код в многоразовый класс - Android
- 11. Многоразовый код для вызовов $ http в угловом
- 12. Как создать многоразовый код в iOS?
- 13. Многоразовый тестовый код, ожидающий ввода-вывода
- 14. Как написать многоразовый код в cakePHP?
- 15. делая код многоразовый с помощью метода расширения
- 16. Многоразовый код дротика/Угловые компоненты Дарта
- 17. Использует обработчики событий как «многоразовый код»?
- 18. Как создать многоразовый код с ember.computed?
- 19. Где должен быть выполнен код, многоразовый код анимации?
- 20. многоразовый NSMutableDictionary
- 21. Многоразовый MBProgressHUD
- 22. Многоразовый многоугольник
- 23. Многоразовый AbstractTableModel
- 24. Elasticsearhc- как сделать многоразовый поиск на плагине Sense или Head
- 25. PHP MySQL table, многоразовый
- 26. Java JPanel Многоразовый вид
- 27. многоразовый запрос с изменениями?
- 28. Многоразовый uiscrollview класс
- 29. knockoutjs многоразовый шаблон управления
- 30. многоразовый флажок частичный вид