Reuse. Методология повторного использования: различия между версиями

Материал из Викиучебника — открытых книг для открытого мира
Содержимое удалено Содержимое добавлено
Нет описания правки
мНет описания правки
Строка 1: Строка 1:
{{Wikipedia|Повторное использование кода}}
{{Wikipedia|Повторное использование кода}}
Термин <b>reuse</b> активно используется программистами в практике.
Термин '''reuse''' («повторное использование») активно используется программистами в практике.
Например, нарисовали вы какую-нибудь красивую картинку, и теперь можно помещать её куда угодно -- и на свою домашнюю страницу, и в программы, и логотип из неё сделать, и ещё куда-нибудь сунуть. Или другой пример: написали вы библиотеку функций для работы с трёхмерной графикой и теперь можете использовать её во всех своих приложениях, где возникает надобность рисовать 3D-картинки. Это просто и очевидно.
Он означает буквально следующее: «используйте то, что уже сделано».
Например, нарисовали вы какую-нибудь красивую картинку, и теперь можно помещать
её куда угодно -- и на свою домашнюю страницу, и в программы, и логотип из неё сделать, и ещё куда-нибудь "всунуть".
Или другой пример: написали вы библиотеку функций для работы с
трёхмерной графикой и теперь можете использовать её во всех своих приложениях,
где возникает необходимость рисовать 3D-картинки.
Это просто и очевидно.
Но в действительности <b>reuse</b> является важнейшей и достаточно сложной методологией,
позволяющей решать задачи необъятной трудности и осуществлять ''мета-системные переходы'' в науке и технике.


Но в действительности ''reuse'' является важнейшей и достаточно сложной методологией, позволяющей решать задачи необъятной трудности и осуществлять ''мета-системные переходы'' в науке и технике.
Reuse – это оперирование имеющимися методами, инструментами,
алгоритмами и решениями с целью получения новых методов, инструментов для решений новых задач.


По сути, reuse – это важнейший метод, который позволяет осуществлять метасистемные п
Reuse – это оперирование имеющимися методами, инструментами, алгоритмами и решениями с целью получения новых методов, инструментов для решений новых задач. По сути, reuse – это важнейший метод, который позволяет осуществлять метасистемные переходы при построении компьютерных (и не только) систем.
ереходы при построении компьютерных (и не только компьютерных) систем.


{{Начало цитаты}}
{{Начало цитаты}}
Строка 21: Строка 11:
{{Конец цитаты}}
{{Конец цитаты}}


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


Приведём другой простой пример. Пусть есть несколько различных алгоритмов решения одной и той же задачи,
Приведём другой простой пример. Пусть есть несколько различных алгоритмов решения одной и той же задачи, которые успешны в различных случаях. Тогда удобно создать мета-алгоритм, который оценивает ситуацию на входе и использует ниболее подходящий для этой ситуации алгоритм.
которые успешны в различных случаях. Тогда удобно создать мета-алгоритм, который оценивает ситуацию на
входе и использует ниболее подходящий для этой ситуации алгоритм.


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


У программистов слово reuse означает, прежде всего, модульное программирование, то есть программирование, направленное на создание самостоятельных моделей – кирпичиков, из которых строятся сложные системы. Модуль должен представлять собой достаточно общий набор инструментов (функций, классов, библиотек функций), который может быть использован при решениие широкого класса задач и при создании других модулей. Итак суть идеи, которую обозначают словом reuse, можно выразить следующим образом:
У программистов слово reuse означает, прежде всего, модульное программирование, то есть программирование, направленное на создание самостоятельных моделей – кирпичиков, из которых строятся сложные системы. Модуль должен представлять собой достаточно общий набор инструментов (функций, классов, библиотек функций), который может быть использован при решениие широкого класса задач и при создании других модулей. Итак суть идеи, которую обозначают словом reuse, можно выразить следующим образом:


{{Рамка}}
{{Рамка}}
При решении задач используйте существующий стандартный набор инструментолов и предоставляйте результаты своего труда в виде максимально общего набора инструментов, оформленного в соответствии со стандартами, то есть в виде простых, но достаточно мощных и общих функций (классов), снабженных документацией, с простыми очевидными примерами использования и обозначеными путями интеграции с другими инструментами (системами).
При решении задач используйте существующий стандартный набор инструментов и предоставляйте результаты своего труда в виде максимально общего набора инструментов, оформленного в соответствии со стандартами, то есть в виде простых, но достаточно мощных и общих функций (классов), снабженных документацией, с простыми очевидными примерами использования и обозначеными путями интеграции с другими инструментами (системами).
{{акмар}}
{{акмар}}


Именно благодаря методу reuse людям удается решать сложные задачи и создавать сложные компьютерные системы.
Именно благодаря методу reuse людям удается решать сложные задачи и создавать сложные компьютерные системы.


==Дальнейшее чтение==
==См. также==
В Викиучебнике:
* [[Словарик философствующего информатика]] в Викиучебнике
* [[w:Повторное использование кода|Повторное использование кода]] в Википедии
* [[Словарик философствующего информатика]]

В Википедии:
* [[w:Повторное использование кода|Повторное использование кода]]



[[Категория:Информатика в журнале «Потенциал»]]
[[Категория:Информатика в журнале «Потенциал»]]

Версия от 22:12, 16 февраля 2007

Термин reuse («повторное использование») активно используется программистами в практике. Например, нарисовали вы какую-нибудь красивую картинку, и теперь можно помещать её куда угодно -- и на свою домашнюю страницу, и в программы, и логотип из неё сделать, и ещё куда-нибудь сунуть. Или другой пример: написали вы библиотеку функций для работы с трёхмерной графикой и теперь можете использовать её во всех своих приложениях, где возникает надобность рисовать 3D-картинки. Это просто и очевидно.

Но в действительности reuse является важнейшей и достаточно сложной методологией, позволяющей решать задачи необъятной трудности и осуществлять мета-системные переходы в науке и технике.

Reuse – это оперирование имеющимися методами, инструментами, алгоритмами и решениями с целью получения новых методов, инструментов для решений новых задач. По сути, reuse – это важнейший метод, который позволяет осуществлять метасистемные переходы при построении компьютерных (и не только) систем.

Метасистемный переход – это изменение (повышение уровня) организации системы, при котором элементарными объектами новой системы становятся системы предыдущего уровня. Этот термин ввёл В.Ф. Турчин в работе «Метасистемные переходы».

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

Приведём другой простой пример. Пусть есть несколько различных алгоритмов решения одной и той же задачи, которые успешны в различных случаях. Тогда удобно создать мета-алгоритм, который оценивает ситуацию на входе и использует ниболее подходящий для этой ситуации алгоритм.

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

У программистов слово reuse означает, прежде всего, модульное программирование, то есть программирование, направленное на создание самостоятельных моделей – кирпичиков, из которых строятся сложные системы. Модуль должен представлять собой достаточно общий набор инструментов (функций, классов, библиотек функций), который может быть использован при решениие широкого класса задач и при создании других модулей. Итак суть идеи, которую обозначают словом reuse, можно выразить следующим образом:

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

Именно благодаря методу reuse людям удается решать сложные задачи и создавать сложные компьютерные системы.

Дальнейшее чтение