Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > Философия программирования > объясните что такое фрейворк


Автор: slater 21.7.2010, 17:06
объясните попроще пожалуйста что такое фрейворк и в чем его суть

Автор: Abyx 21.7.2010, 17:51
slater, попробуйте использовать гугл и википедию.

Автор: kemiisto 21.7.2010, 18:07
Framework - это окружение для разработки программного обеспечения. Состав варьируется, но обычно:
  • Язык программирования.
  • Редактор кода.
  • Библиотечные коды.

Основные отличия каркасов (framework) по сравнению с библиотеками кода (libraries):
  • Inversion of Control (IoC). Инверсия управления. Общий путь исполнения программы определяется кодом, заложенным в каркас, а не пользовательским.
  • Наличие поведения по-умолчанию. Каркас, обычно, уже функционирующее ПО. Часто, каркасом является сама среда разработки.
  • Расширяемость путём переопределения части кода каркаса.

Принцип Голливуда во всей красе. "Don't call us, we'll call you." Пользовательский код (классы) получает информацию (сообщения) от (классов) каркаса. 

Это нужно один раз увидеть. Пощупать. Могу дать пару ссылок, если будет интерес.

Автор: slater 21.7.2010, 19:18
kemiisto,  спасибо за подробный ответ

если можно, то дайте пожалуйста ссылки

Автор: kemiisto 21.7.2010, 20:19
Посмотрите как организован подход к разработке в http://squeak.org/. Можно почитать http://squeakbyexample.org/ или найти книгу А. С. Лесневский, Объектно-ориентированное программирование для начинающих. Есть ещё свободный форк под названием http://www.pharo-project.org/home. ЯП: Smalltalk.

Посмотрите http://www.oberon.ch/blackbox.html. На http://www.oberoncore.ru/ русскоязычном ресурсе найдёте много информации. ЯП: Component Pascal. 

Посмотрите http://www.eclipse.org/platform/. ЯП: Java.

Ещё есть уйма веб-фреймворков. Но я про них ничего не знаю...

Автор: slater 21.7.2010, 20:29
kemiisto, спасибо преогромное smile , очень благодарен smile 

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)