ВходНаше всё Теги codebook 无线电组件 Поиск Опросы Закон Суббота
18 мая
155299
Evgeny_CD, Архитектор (01.05.2009 18:17, просмотров: 542)
Обобщенное программирование: похоже, идеи таки пошли в народ... Наткнулся я на такую замолодь, как effo -> Рекомендую почитать 2 pdf'ки по ссылкам. http://code.google.com/p/effo/downloads/list
Все танцует вокруг канонической идеи о разделении интерфейса и реализации. Впервые это возникло в головах продвинутых афттаров, писавших о С++, но потом вышло за пределы конкретного языка программирования и стало универсальной концепцией. Я сам постил тут кучку информации по идеям вокруг VMDL (желающие могут поискать). Написано там было мутно и непонятно (в том числе и мне самому :) ). Еще рекомундую почитать совершенно фантастическую книгу М.М.Горбунов-Посадов РАСШИРЯЕМЫЕ ПРОГРАММЫ http://www.keldysh.ru/gorbunov/ архив внизу страницы Народ их проекта effo пытается сделать некую интегрированную среду, которая бы сильно облегчила повторное использование кода. Мысль проста: * код пишем с разделением на интерфейс и реализацию * все, что испольщуется внешнего по отношению к коду - только через интерфейсы * кодогенератор, который "подстраивает" интерфейсы друг к другу при создании компилируемого файла Еще раз, к С++, их отсутствию или наличию это отношения не имеет, хотя "фишки" ++ хорошо подходят для реализации этой идеи. Вопрос в том, что у народа из effo получится. Насколько все будет удобно. Ибо, чтобы решить эту задачу, им надо решить кучу сопутствующих задач: * создание универсальной объектной базы данных, в которой и будут содержаться куски кода до их "сращивания" в один файл * язык описания интерфейсов. Можно, конечно, пойти по пути требований к .h файлам, что они и сделали, но лучше всего все-таки для описания интерфейсов сделать некий "язык сборки" (термин из книги М.М.Горбунова-Посадова) Книги по теме Interface Oriented Design http://book.pdfchm …-oriented-design-4472/ http://slil.ru/27500704 - можно скачать C Interfaces and Implementations: Techniques for Creating Reusable Software http://www.amazon. …/0201498413/drh-cii-20 (найти нигде не удалось - может кто поможет?)