2010-10-10 3 views
3

Я столкнулся с этим вопросом много раз назад и снова увидел термины и не знал их реальной концепции в компьютерной инженерии.Что относятся к терминам платформы и рамочной платформы?

Что такое платформа и каркас?

Я вижу много терминов, таких как платформо-независимые и платформы разработки, а также такие же для фреймворков, но я не могу их спокойно понять. Они относятся к библиотекам? они относятся к разным видам операционной системы?

ответ

3

Термин каркас очень хорошо определен: каркас очень похож на библиотеку, за исключением того, что элемент управления инвертирован. (Inversion Of Control - , определяющий характеристику того, что представляет собой структуру.) IOW: вы звоните в библиотеку, но фреймворк вызывает вас.

Другой способ подумать об этом - это то, что вы напишите заявку, но оставьте все незаинтересованные данные пустым и используйте библиотеки, чтобы заполнить их. Рамкой OTOH является приложение. Это приложение, в котором есть все интересные детали, оставленные пустым для , вы заполняете. (Конечно, в коде, который вы используете, чтобы заполнить пробелы, вы можете сами по себе самим создавать библиотеки вызовов. вызывать библиотеки для реализации своих внутренних работ. И, как правило, фреймворки поставляются в комплекте с богатым набором библиотек, которые тесно интегрированы с каркасом. Однако различие все еще остается ясным.Просто потому, что структура и библиотеки поставляются вместе в одном пакете, не означает, что нет различия.)

Термин платформа, однако, не так четко определена. Он также сильно перегружен. В контексте переноса собственных приложений он обычно относится к комбинации ISA процессора (например, x86, AMD64, IA-64, POWER, MIPS, ARMv9, Sparc), аппаратной архитектуры (ПК, CHRP, PReP, Mac), ядра (Linux, NT) и базовые библиотеки (POSIX, Win32, Core Foundation).

В более широком контексте разработки программного обеспечения «платформа» обычно буквально означает «то, на что стоит ваш код». Для собственного приложения, которое может быть в основном таким же, как указано выше, для приложения JVM это может быть JVM плюс JRE плюс OSGI.

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

+0

örg: Я бы хотел проголосовать за этот ответ еще раз: D, большое спасибо. –

+0

örg: это определение рамки слишком узкое. Например, на платформах Mac OS X и iOS инфраструктура представляет собой набор, содержащий библиотеку и набор поддерживающих ресурсов. Не подразумевается инверсия контроля. – 2010-10-11 08:43:36

2

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

+0

Спасибо, очень помог мне для лучшего понимания. –

3

Платформа представляет собой аморфный термин, который может означать:

  • Аппаратные средства (обычно процессор/Архитектура), например, x86, Alpha и т. д.
  • Операционная система, например. Unix, Windows, Linux, Mac OS X и т. Д.
  • Виртуальная машина, например.Java JVM, FlashPlayer AVM

Каркасы с другой стороны, как правило, набор инструментов: который может быть программное обеспечение, аппаратные средства, методология/шаблон на основе (хотя и не обязательно все это в какой-либо конкретной структуры), которые объединяют чтобы обеспечить способ создания приложений (или конкретные слои приложения)

несколько примеров рамок являются:

Software

  • Java Swing
  • Microsoft WPF
  • Adobe Flex
  • Рубин на Rails
  • Django на Python

Оборудование/Программное обеспечение

  • Arduino (спорно)
  • Trusted ILLIAC

Метод/Patterns (или процесса)

  • SCRUM
  • IBM Rational Unified Process
+0

Я бы сказал, что Arduino - это платформа. –

+1

Да, я не мог придумать хороший пример аппаратной структуры (о которой люди, о которых бы слышали, как правило, слышали), но Ардуино (возможно) и платформа, и фреймворк. – ocodo

1

Вы можете иметь чтения о платформах и программного обеспечения рамочные здесь: link text

1

Я попробую часть платформы. Платформа используется, чтобы говорить о чем-то, на чем вы «опираетесь», или вы можете думать как о «стоять» для буквальной аналогии, чтобы что-то сделать. Я использовал «платформы телефонии», которые состоят из программных и аппаратных компонентов, которые позволяют разрабатывать интерактивные системы голосового ответа.

+0

Спасибо, серая область в моем сознании освещена. –

Смежные вопросы