Вы делаете MDA (Образцовая Управляемая Архитектура) прямо сейчас? Если так, какие инструменты Вы используете, и как это удается?

Если вы хотите манипулировать своим значением перед его использованием, но не можете объявить const в JSX, определите функцию для манипулирования им. Это просто и понятно:

doSomethingWithGender(gender) {
    return gender + "some extra text";
}

render() {
    return <div>
        { this.doSomethingWithGender(this.props.form.getFieldValue('product_gender')) }
    </div>
}
9
задан Vladimir Vaschenko 27 October 2015 в 07:09
поделиться

4 ответа

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

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

0
ответ дан 4 December 2019 в 13:49
поделиться

Я провожу свое собственное независимое исследование в области Model-Driven Software Development с 1999. Я наконец разработал универсальную методологию моделирования в 2006, что я маркировал ABSE (Atom-Based Software Engineering).

Так, ABSE растет на двух фундаментальных аспектах:

  • Программирование о разложении задач
  • Все может быть представлено на дереве

Некоторые функции ABSE:

  • Это может поддерживать все другие формы разработки программного обеспечения, из традиционных файловых методов до Компонентно-ориентированной Разработки, Аспектно-ориентированного программирования, Проблемно-ориентированного Моделирования, Строк Программного продукта и Фабрик программного обеспечения.

  • Это достаточно универсально, чтобы быть примененным к программному обеспечению предприятия, встроенному, игры, авиационная радиоэлектроника, Интернет, любой домен на самом деле.

  • Вы не должны быть астрономом, чтобы использовать если эффективно. ABSE доступен для "простого смертного разработчика". Нет никакой сложности как та, найденная в oAW/MDA/XMI/GMF/etc наборах инструментальных средств.

  • Его метаметамодель разработана для поддержки 100%-й генерации кода из модели. Никакое необходимое распространение в прямом и обратном направлениях. Пользовательское/генерированное соединение кода непосредственно поддерживается метамоделью.

  • Моделью можно одновременно управлять. Рабочие процессы и управление версиями могут быть применены (необходимая поддержка инструмента).

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

Так, это не MDA (к счастью!), но по крайней мере очень управляемый подход. Как изобретатель ABSE, я понятно взволнован этим, но я уверен, что Управляемая Моделью Разработка программного обеспечения получит повышение в 2009!

Останьтесь настроенными...

4
ответ дан 4 December 2019 в 13:49
поделиться

Отсутствие ответа на этот вопрос является несколько зловещим..., возможно, я позволю полю Dijkstra это.

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

Как Вы все помните, прежде всего, цель была разработкой Elixir, которая даст тот, который выпил ее Вечная Молодежь. Но с тех пор нет большого количества точки в вечной бедности, мир науки быстро начал свой второй проект, то есть Философский камень, который позволит Вам сделать столько Золота, сколько Вам было нужно.

...

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

Два крупнейших потока можно отличить, поиски Камня и поиски Elixir.

Поиски Камня основаны на предположении, что наши "инструменты программирования" слишком слабы. Одним примером является вера, что текущие языки программирования испытывают недостаток в "функциях", в которых мы нуждаемся. PL/I был одним из более захватывающих потенциальных произведенных камней. Я все еще помню рекламу в Вычислительной технике, 1968, в котором улыбающаяся Susie Mayer объявляет в насыщенном цвете, что решила все свои проблемы программирования путем переключения на PL/I. Это было слишком обозримо, что несколько лет спустя бедная Susie Mayer больше не будет улыбаться. Само собой разумеется, поиски продолжались, и в установленный срок следующий потенциальный камень был произведен в форме Ada (позади Железного занавеса, проницательно называемого PL/II). Даже самая элементарная астрология для новичков достаточна, чтобы предсказать, что Ada не будет последним камнем этого типа.

...

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

6
ответ дан 4 December 2019 в 13:49
поделиться

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

MDA OMG - только один Подход, другие люди демонстрируют успех, используя предметно-ориентированные языки (которые не используют UML для моделирования).

Ключ заключается в том, чтобы генерировать код из моделей и обновлять ваш генератор, если он не генерирует то, что вы хотите, а не измени свой код Специальные инструменты, помогающие вам сделать это, существуют уже много лет, но интерес к этому подходу вырос за последние пять лет или около того благодаря переходу Microsoft в эту область и благодаря проектам с открытым исходным кодом, таким как openArchitectureWare в мире Eclipse.

Я управляю несколькими сайтами: www.modeldrivensoftware.net и www.

4
ответ дан 4 December 2019 в 13:49
поделиться
Другие вопросы по тегам:

Похожие вопросы: