OberonCore
https://forum.oberoncore.ru/

Проблема описания абстракций предметной области
https://forum.oberoncore.ru/viewtopic.php?f=86&t=4264
Страница 1 из 2

Автор:  Иван Кузьмицкий [ Понедельник, 18 Февраль, 2013 10:39 ]
Заголовок сообщения:  Проблема описания абстракций предметной области

Часто оказывается, что предметная область богаче и шире предоставляемых языком средств описания. Например, что даёт нам Оберон?

  • базовые типы
  • структуры
  • процедуры
  • модули

Собственно, всё. Несмотря на то, что эти средства довольно выразительны и из них можно строить бесконечные комбинации, они слишком "широки" и недостаточно "глубоки". И это кажется проблемой. Я пока не могу толком сформулировать вопрос, который находится где-то между проектированием и конечным продуктом и связан с описанием абстракций предметной области.
Другими словами, ООП ощущается несколько слабым для хорошего, мощного и удобного описания предметной области. Мелковат. Приходится, грубо говоря, из мелких винтиков и дощечек лепить вещи, которые удобнее было бы описывать через более крупные и специализированные понятия.

Функциональные языки и прочие руби со скалами - жалкие потуги обрести способы такого описания, как мне кажется - не сочтите за троллинг, потому что не сильно далеко они ушли от обыкновенного ООП как способа нарезать реальность на куски.

Что может нам предложить программная инженерия в XXI веке для решения этой проблемы? Или мне только кажется, что это проблема?

Автор:  Info21 [ Понедельник, 18 Февраль, 2013 11:19 ]
Заголовок сообщения:  Re: Проблема описания абстракций предметной области

Иван Кузьмицкий писал(а):
Что может нам предложить программная инженерия в XXI веке для решения этой проблемы?
Или мне только кажется, что это проблема?
Это проблема, но это не проблема программной инженерии, по-моему.

Смесь формального и неформального текстов -- как во всех прочих областях чел. деятельности :)

ИТ тут не лучше, и не хуже, по-моему.
Ср. документацию к ББ.

Автор:  Дмитрий Грачёв [ Понедельник, 18 Февраль, 2013 12:37 ]
Заголовок сообщения:  Re: Проблема описания абстракций предметной области

Посмотрите MPS. Там на основе явы можно написать предметно-ориентированный язык под Вашу задачу и пользоваться им. В конечном счете все это будет работать на JRE.

Автор:  Валерий Лаптев [ Понедельник, 18 Февраль, 2013 14:57 ]
Заголовок сообщения:  Re: Проблема описания абстракций предметной области

Еще можно посмотреть книгу Мартина Фаулера о предметно ориентированных языках: http://www.ozon.ru/context/detail/id/6967089/

Автор:  Илья Ермаков [ Понедельник, 18 Февраль, 2013 21:55 ]
Заголовок сообщения:  Re: Проблема описания абстракций предметной области

Это всё равно будет языком программирования. А Иван, как я понимаю, говорит о языке документирования анализа задачи и принимаемых проектных решений.
Об инструменте, когда я, условно говоря, могу восстановить весь ход решений проектирования, приведший к появлению некоторого куска кода...

На эту тему Алексей Донской неоднократно выкладывал фидошные обсуждения с Седовым - очень любопытные...

А DSL уровня программирования, кроме некоторых задач - игрушка красивая... Пока не наиграешься - интересно :) И не новая игрушка - ЛИСПы-ФОРТы - всё ведь уже там пробовано :) С плюсами и минусами...

Автор:  Валерий Лаптев [ Понедельник, 18 Февраль, 2013 23:33 ]
Заголовок сообщения:  Re: Проблема описания абстракций предметной области

Не. Дело в том, что при разработке DSL мы ведь вольны спроектировать абстракции сколь угодно высокого уровня. Можно двигаться в любом направлении при создании таких абстракций.
Не обязательно реализовывать это в исполняемый язык.
Вспомните APL - его ведь мужик придумал специально для описания своих задач. И только много лет спустя это дело реализовали как исполняемый язык программирования.

Автор:  Alexey_Donskoy [ Вторник, 19 Февраль, 2013 07:40 ]
Заголовок сообщения:  Re: Проблема описания абстракций предметной области

Валерий Лаптев писал(а):
Не. Дело в том, что при разработке DSL мы ведь вольны спроектировать абстракции сколь угодно высокого уровня.
Мне представляется, что это не из той оперы.

Вот посмотрите, у нас есть следующие стадии решения IT-задачи (упрощённо и укрупнённо, и используя производственную терминологию):
1) НИР - научно-исследовательские работы (исследование предметной области);
2) ОКР - опытно-конструкторские разработки (алгоритмизация и всяко разно, вплоть до прототипов);
3) ТПП - технологическая подготовка производства (собственно программирование, кодирование);
4) производство (эксплуатация программы).

Вы говорите об этапе (3), максимум (2), да и то фрагментарно.
А меня интересует (1)!

Автор:  Валерий Лаптев [ Вторник, 19 Февраль, 2013 08:56 ]
Заголовок сообщения:  Re: Проблема описания абстракций предметной области

Alexey_Donskoy писал(а):
Валерий Лаптев писал(а):
Не. Дело в том, что при разработке DSL мы ведь вольны спроектировать абстракции сколь угодно высокого уровня.
Мне представляется, что это не из той оперы.

Вот посмотрите, у нас есть следующие стадии решения IT-задачи (упрощённо и укрупнённо, и используя производственную терминологию):
1) НИР - научно-исследовательские работы (исследование предметной области);
2) ОКР - опытно-конструкторские разработки (алгоритмизация и всяко разно, вплоть до прототипов);
3) ТПП - технологическая подготовка производства (собственно программирование, кодирование);
4) производство (эксплуатация программы).

Вы говорите об этапе (3), максимум (2), да и то фрагментарно.
А меня интересует (1)!

Спасибо за аналогию. Я подобную аналогию проводил на строителях :
архитектурный проект, инженерный проект, проект производства работ.
Что касается 1...
Может быть, надо вспомнить Андрея Петровича Ершова и его деловую прозу?
У архитекторов-строителей же явно есть свой профессиональный язык.
А в ИТ его просто нет по причине молодости отрасли.
ИМХО - пока обходиться естественным и придумывать терминологию по мере накопления опыта.

Автор:  Владислав Жаринов [ Вторник, 19 Февраль, 2013 09:04 ]
Заголовок сообщения:  Re: Проблема описания абстракций предметной области

А может, речь о "программе как части системы"?.. в смысле обсуждавшегося здесь, например: viewtopic.php?p=77645#p77645 и далее: viewtopic.php?p=77646#p77646 ?..

Автор:  Alexey_Donskoy [ Вторник, 19 Февраль, 2013 09:07 ]
Заголовок сообщения:  Re: Проблема описания абстракций предметной области

Валерий Лаптев писал(а):
У архитекторов-строителей же явно есть свой профессиональный язык.
А в ИТ его просто нет по причине молодости отрасли.
Да опять же не в этом дело!!!

Этап (4) имеет дело с конкретным готовым инструментом (программа) и состоит в строго регламентированном его использовании.

Этап (3) имеет дело с конкретным готовым инструментом (язык) и состоит в конкретизированном действии (кодирование).

Этап (2) имеет дело обычно с конкретными методиками (в том числе использующими язык математики и DSL) и состоит в "инженерном творчестве" - проектировании по известным методикам.

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

Автор:  Владислав Жаринов [ Вторник, 19 Февраль, 2013 09:14 ]
Заголовок сообщения:  Re: Проблема описания абстракций предметной области

Кстати, регламентация каждого этапа - это, видимо, система техпроцессов... :)

Автор:  Илья Ермаков [ Вторник, 19 Февраль, 2013 09:31 ]
Заголовок сообщения:  Re: Проблема описания абстракций предметной области

Валерий Лаптев писал(а):
Вспомните APL - его ведь мужик придумал специально для описания своих задач.


Не представляю, какие узкоспециальные задачи решает APL.
Матрично-векторную обработку реализует уйма людей - и на Фортране прекрасно реализует :)
Так что мужик просто решил ещё раз "спасти мир", сделав язык более высокого уровня "из общих соображений" о том, что было бы полезно осчастливить всех... :)

Автор:  Владислав Жаринов [ Вторник, 19 Февраль, 2013 09:39 ]
Заголовок сообщения:  Re: Проблема описания абстракций предметной области

Да, по 4) - эксплуатация - это производство чего?.. ведь результатов работы программы?..

Автор:  Alexey_Donskoy [ Вторник, 19 Февраль, 2013 09:46 ]
Заголовок сообщения:  Re: Проблема описания абстракций предметной области

Владислав Жаринов писал(а):
Да, по 4) - эксплуатация - это производство чего?.. ведь результатов работы программы?..
В общем виде программа - один из инструментов производства, а результаты её работы - промужуточный (в частном случае - окончательный) продукт.

Автор:  Владислав Жаринов [ Вторник, 19 Февраль, 2013 10:37 ]
Заголовок сообщения:  Re: Проблема описания абстракций предметной области

Так вот и определить бы прежде всего абстракцию работы системы по этим стадиям... А программы - уже как разновидности инструментов работы... сами взаимо-действующие в такой абстракции... :) Может, тогда для основы больше ничего и не надо?.. а специфики предметок пусть "по-человечески" для начала описывают... как привыкли... главное, чтоб всё было к системе привязано...

Автор:  Alexey_Donskoy [ Вторник, 19 Февраль, 2013 10:57 ]
Заголовок сообщения:  Re: Проблема описания абстракций предметной области

Владислав Жаринов писал(а):
Так вот и определить бы прежде всего абстракцию работы системы по этим стадиям...
Опять растеклись мыслию по древу. Какой системы-то?!

Цитата:
Может, тогда для основы больше ничего и не надо?.. а специфики предметок пусть "по-человечески" для начала описывают... как привыкли... главное, чтоб всё было к системе привязано...
Ну. может, тогда и вообще ничего не надо. И без компов раньше сидели, и не жужжали, и латынь изучали, и изобретали, и открывали законы природы в промежутке между военными действиями...

Автор:  Владислав Жаринов [ Вторник, 19 Февраль, 2013 12:13 ]
Заголовок сообщения:  Re: Проблема описания абстракций предметной области

Какой-какой... :) Создателей софта вместе с потребителями и прочими причастными... как предприятия из 6 кружков... :) И сказано "для начала"... а то и этому ещё надо учиться, несмотря на наличие реализаций в виде базовых геометрических форм... :wink:

Это к тому, что так должны описываться и эти вещи: viewtopic.php?p=73812#p73812. Или есть другие варианты?..

Автор:  Пётр Кушнир [ Вторник, 19 Февраль, 2013 16:46 ]
Заголовок сообщения:  Re: Проблема описания абстракций предметной области

Владислав, вы не пробовали для излияния подобных "догадайся сам"-реплик использовать сервис Twitter?

Автор:  Владислав Жаринов [ Среда, 20 Февраль, 2013 14:34 ]
Заголовок сообщения:  Re: Проблема описания абстракций предметной области

Ну дык это (Вы, наверное, первую часть имеете в виду) же ответ Алексею... :) На его конкретный вопрос (тут уточню, что речь шла о подходах Усова к вопросу, поставленному Кузьмицким). В случае дальнейшего обсуждения, может, станет ясно, каков путь описания задачи этапа 1)...

Автор:  Пётр Кушнир [ Среда, 20 Февраль, 2013 16:27 ]
Заголовок сообщения:  Re: Проблема описания абстракций предметной области

Здесь ведь не микроблог, а вы организуете ковровые постометания в твиттер-стиле, поди вас пойми.

Страница 1 из 2 Часовой пояс: UTC + 3 часа
Powered by phpBB® Forum Software © phpBB Group
https://www.phpbb.com/