powered by simpleCommunicator - 2.0.59     © 2025 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Программирование [игнор отключен] [закрыт для гостей] / Подходы к построению архитектуры в функциональном программировании
25 сообщений из 207, страница 8 из 9
Подходы к построению архитектуры в функциональном программировании
    #39922559
egorych
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
mayton
iOracleDev, так говоришь будто процедурно - это плохо. Все ядра операционных систем написаны на языке
в котором принципиально нет объектов. Наиболее популярные игры конца 2000х написаны на "C".
откуда вы решили, что в С нет объектов? на С прекрасно реализуются все абстракции ООП, пожалуй с инкапсуляцией есть некоторые проблемы. писать в ООП стиле на С муторно довольно, но не бином ньютона никакой.
...
Рейтинг: 0 / 0
Подходы к построению архитектуры в функциональном программировании
    #39922560
Фотография mayton
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Мысль здравая.

Господа. В нашем техническом споре наконец появились две оси.
Одна из них
- ООП
- Процедурное
Другая
- Бизнес программирование
- Низкоуровненое (для ядер ОС и игрушек)

Куда здесь приткнуть ФП я пока не знаю или это будет 3-е измерение (куб) или просто
как сегмент известных осей. Но вышеперечисленный квадрант мне нравится тем
что начала и концы осей - суть антагонисты.

По крайней мере они отражают природу нашего спора.
...
Рейтинг: 0 / 0
Подходы к построению архитектуры в функциональном программировании
    #39922563
booby
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
mayton,

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

вторая ось наверно понятнее, но что ею измерять планируешь - требования к инструментам разработки, или требования к программисту?
...
Рейтинг: 0 / 0
Подходы к построению архитектуры в функциональном программировании
    #39922564
Фотография полудух
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
iOracleDev
бизнес задачи решать на таком уровне как правило не удобно, кода слишком много, организация его плохая, вот и выходим на другие уровни абстракции.

просто не умеете готовить
mayton
Куда здесь приткнуть ФП я пока не знаю

может начать с обозначения ФП?
чем ФП отличается от процедурного, например?
...
Рейтинг: 0 / 0
Подходы к построению архитектуры в функциональном программировании
    #39922566
iOracleDev
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
mayton
Одна из них

Императивные, по повышению уровня абстракции (с примерами):
ассемблер -> процедурные (С) -> ООП (C++)

ассемблер и С - хороши для железа и систем непосредственно работающих на железе
без прослоек и требующих хорошей производительности.

С++ и развитие во всякие жавы, шарпы - решение задач более высокого уровня, например
построение систем для бизнеса.

mayton
Куда здесь приткнуть ФП я пока не знаю

В википедии его вроде в декларативные запихнули, вместе с SQL
...
Рейтинг: 0 / 0
Подходы к построению архитектуры в функциональном программировании
    #39922573
Basil A. Sidorov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
love_bach
Спрятал простыню
полудух
пропущено...

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

Да хрен там , объект это ещё не ООП! Тут только половина правды - "наследование" это уже ООП, а "совокупность объектов" - нет.
У вас же там просто структура без ООП-а (без того ООП-а, когда оно начинает работать, как ООП).

ООП это лишь способ сократить размер кода, убрать повторы, упростить сопровождение. А ему приписывают какие-то левые функции, которые часто вообще не про него.
Что я понимаю под чётким ООП, у него есть вполне определённый набор инструментов:
наследование, абстракция (интерфейсы), инкапсуляция (public/private) И конструкторы/деструкторы (почему-то про них все забывают, а они ведь имбово рулят в том же C++, позволяя на этапе создания класса проверить большинство параметров, чем сильно упрощают отлов багов.
В C++ вообще философия подхода к объектам очень сильно выпрямляет сознание после того же ПХП (откуда я пришёл), там в объекты пихают вообще всё-всё-всё уже, а в C++ нет, там наоборот уменьшают размер объектов и юзают их как мапы фактически).
Ещё есть полиморфизм (способность ф-и обрабатывать разные типы данных), но в C/C++ это обычный челлендж с шаблонами и к ООП не относится (т.е. опять деза, хоть и решает упрощение кода, но не всё то ООП, что упрощает код).

В C же вообще нет ООП, там нет наследования и нет private/protected, только public всегда.
А вместо наследования там это:
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
struct parent {
  /* ... */
}

struct child {
  struct parent p;
  /* ... */
}


А между тем, это самый настоящий объект .
пропущено...

Да, и создатели языка именно топят за то, чтобы делать классы как можно меньше :
пропущено...

Идеальная программа в C++ основана на неймспейсах, ф-ях и структурах, а классы это способ автоматизировать проверку данных на валидность.
Иерархия классов это громоздкая и сложная штука, её надо избегать, но иногда без неё никуда :(

+
И опять это злогремучее избыточное цитирование ...
Вы, что, охудели все?
Или настолько необучаемы, что неспособны использовать механизм ссылок, предоставляемый форумом???
...
Рейтинг: 0 / 0
Подходы к построению архитектуры в функциональном программировании
    #39922575
Basil A. Sidorov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
mayton
В нашем техническом споре наконец появились две оси.
Странное дробление: "ООП и процедурное" против "Деловое и низкоуровневое".

Любое программирование решает задачу и, в этом смысле, оно всегда "деловое". Задачи только разные. Низкоуровневые - в том числе.
А вот "процедурное", "объектное", "декларативное" и "функциональное" - методики решения. Или "вполне общие" или "достаточно узкоспециализированные".

Лично я считаю объектное и процедурное "вполне общим", а декларативное и функциональное - "достаточно узкоспециализированным".
Узкая специализация функциональщины следует из необратимости природы (так называемая стрела времени). Если на графике скалярной функции одной переменной (время -> координата) можно произвольно перемещаться по оси времени, то реальный мир всегда движется из прошлого в будущее - у мира есть состояние.
Закон сохранения энергии накладывает вполне конкретные ограничения на изменения состояния, но состояние существует и меняется со временем.
...
Рейтинг: 0 / 0
Подходы к построению архитектуры в функциональном программировании
    #39922714
Фотография hVostt
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Leonid Kudryavtsev
СИНГЛЕТОН ?

Дошли ((( Из всех патернов я знаю ровно один, пример mayton'а явно не синглетон (((


Ой да ладно вам. Если не нужно экземпляр передавать по ссылке, все остальные формальности выполнены.
...
Рейтинг: 0 / 0
Подходы к построению архитектуры в функциональном программировании
    #39922721
Фотография hVostt
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
mayton
Мысль здравая.

Господа. В нашем техническом споре наконец появились две оси.
Одна из них
- ООП
- Процедурное
Другая
- Бизнес программирование
- Низкоуровненое (для ядер ОС и игрушек)

Куда здесь приткнуть ФП я пока не знаю или это будет 3-е измерение (куб) или просто
как сегмент известных осей. Но вышеперечисленный квадрант мне нравится тем
что начала и концы осей - суть антагонисты.

По крайней мере они отражают природу нашего спора.


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

— Эх, я бы использовал ФП, да вот знаний хаскеля нет...
— А я бы бегал по утрам, да вот фитнес-трекера нет...

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

Конечно, F# удобнее для ФП, чем C#, но это не камень преткновения.

В реальном мире смешение техник, под задачу -- наиболее гибкий и эффективный способ разработки.
...
Рейтинг: 0 / 0
Подходы к построению архитектуры в функциональном программировании
    #39922727
Фотография mayton
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Я вот посмотрел wiki по top10 languages. И вобщем-то там нет строгой классификации.
Там - фасеты. Или просто сет свойств. Например С++ и Scala попадают в какое-то над-множество
технологий что лежат сразу во всех категориях или обладают всеми свойствами сразу.

Вобщем классификация это - многомерная. Я себе вижу что каждый язык - это точка в булевом
30-мерном пространстве.

Пока я отложу идею классификации.
...
Рейтинг: 0 / 0
Подходы к построению архитектуры в функциональном программировании
    #39922860
Фотография mayton
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
hVostt

В реальном мире смешение техник, под задачу -- наиболее гибкий и эффективный способ разработки.

Да я последние 15 лет то и делаю что мешаю разные коктейли из языков и технологий.
Вот уже год озабочен языком (или способом) описание крупнейшей области бизнеса.
Типа мета-данные для аналитики. Пробовал prolog. Щас хочу посмотреть каков Хаскель
в задачах просто описания и поиска фактов.
...
Рейтинг: 0 / 0
Подходы к построению архитектуры в функциональном программировании
    #39922990
Leonid Kudryavtsev
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
iOracleDev

С++ и развитие во всякие жавы, шарпы - решение задач более высокого уровня, например
построение систем для бизнеса.

Выдвину аксиому, с которой надеюсь большинство согласится

Для БИЗНЕСА - нужен FoxPro
А вот все эти ООП и джава, шарпы - исключительно Г.Бучу, UML-рисовальшикам (т.к. даже назвать их анал итиками язык не поворачивается, они, подозреваю, даже на анал из бизнес процессов не способны) и студентам в свободное от занятий время изобретающих велосипеды типа Hybernate, No-SQL и все такое прочее.

В качестве, опять таки, статистического тестирования данной аксиомы, предлагаю провести опрос:
Кто на работе рисует UML при реальной разработки заказной бизнес-системы?

IMHO & AFAIK
...
Рейтинг: 0 / 0
Подходы к построению архитектуры в функциональном программировании
    #39922992
Leonid Kudryavtsev
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
hVostt
Leonid Kudryavtsev
СИНГЛЕТОН ?

Дошли ((( Из всех патернов я знаю ровно один, пример mayton'а явно не синглетон (((


Ой да ладно вам. Если не нужно экземпляр передавать по ссылке, все остальные формальности выполнены.

mayton

Мы можем спуститься на уровень JVM и рассматривать экземпляр класса как объект.

Даже не аксиома, а теорема (т.к. есть доказательство!):

1) Теорема: Любая программа - реализует паттер синглетон
2) Следствие: Все в этом мире - синглетон

Доказательство:
В любой программе всегда существует экземпляр BIOS --> паттерн синглетон детектед
...
Рейтинг: 0 / 0
Подходы к построению архитектуры в функциональном программировании
    #39922995
Leonid Kudryavtsev
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
hVostt

...
Конечно, F# удобнее для ФП, чем C#, но это не камень преткновения.

В реальном мире смешение техник, под задачу -- наиболее гибкий и эффективный способ разработки.

+100500
...
Рейтинг: 0 / 0
Подходы к построению архитектуры в функциональном программировании
    #39922996
Basil A. Sidorov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Leonid Kudryavtsev
В любой программе всегда существует экземпляр BIOS --> паттерн синглетон детектед
Нет, обнаружена ложная индукция (неверна исходная посылка). С индукцией тоже всё плохо, но это уже мелочи.
...
Рейтинг: 0 / 0
Подходы к построению архитектуры в функциональном программировании
    #39922997
Фотография полудух
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Leonid Kudryavtsev
А вот все эти ООП и джава, шарпы - исключительно Г.Бучу, UML-рисовальшикам и студентам в свободное от занятий время изобретающих велосипеды типа Hybernate, No-SQL и все такое прочее.

ну ООП к UML приравнять это уже перебор
...
Рейтинг: 0 / 0
Подходы к построению архитектуры в функциональном программировании
    #39923021
Фотография mayton
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Leonid Kudryavtsev
hVostt
пропущено...


Ой да ладно вам. Если не нужно экземпляр передавать по ссылке, все остальные формальности выполнены.

mayton

Мы можем спуститься на уровень JVM и рассматривать экземпляр класса как объект.

Даже не аксиома, а теорема (т.к. есть доказательство!):

1) Теорема: Любая программа - реализует паттер синглетон
2) Следствие: Все в этом мире - синглетон

Доказательство:
В любой программе всегда существует экземпляр BIOS --> паттерн синглетон детектед

Давай обобщим. В конце концов программы пишут и для мобил и для чипованных карточек.

В любой программе у нас есть возможность использовать глобальную переменную.
...
Рейтинг: 0 / 0
Подходы к построению архитектуры в функциональном программировании
    #39923093
exp98
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Leonid Kudryavtsev
Выдвину аксиому, ...Для БИЗНЕСА - нужен FoxPro
для ГУИ БИЗНЕСА нужен "FoxPro", для данных - SQL/FQL.
авторА вот все эти ООП и джава ... жаба - в телефоны, ООП - если б не оно, в винде не случилось бы ускорение сопостоавимых разработок - это факт 90-х ещё.
авторКто на работе рисует UML при реальной разработки заказной бизнес-системы?Был и участником рисования, и необязательно заказной тоже, и необязательно строгий UML, можно и квазиUML. Ведь суть в дальнейшей автоматизации? Просто сам UML дорого стоит.

Т.о. остались дыры классификации "Не ГУИ", "не ООП" ...
...
Рейтинг: 0 / 0
Подходы к построению архитектуры в функциональном программировании
    #39923125
Фотография mayton
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Интересно что Линус Торвальдс и Алан Кей весьма нелицеприятно отзываются о современном ООП.
Один говорит - говно из говна. Другой - "я когда создавал ООП я не имел в виду ТАКОЕ ООП" ....e.t.c.

Вот такие вот пирожки.
...
Рейтинг: 0 / 0
Подходы к построению архитектуры в функциональном программировании
    #39923132
Фотография Anatoly Moskovsky
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
mayton
Интересно что Линус Торвальдс и Алан Кей весьма нелицеприятно отзываются о современном ООП.
Один говорит - говно из говна. Другой - "я когда создавал ООП я не имел в виду ТАКОЕ ООП" ....e.t.c.

Как человек, который с десяток раз переписывал код, потому что АПИ ядра Линукса для драйверов постоянно меняется, полностью согласен с Линусом - то ООП которое он применяет в ядре - полное гуано
...
Рейтинг: 0 / 0
Подходы к построению архитектуры в функциональном программировании
    #39923134
Фотография mayton
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Anatoly Moskovsky
mayton
Интересно что Линус Торвальдс и Алан Кей весьма нелицеприятно отзываются о современном ООП.
Один говорит - говно из говна. Другой - "я когда создавал ООП я не имел в виду ТАКОЕ ООП" ....e.t.c.

Как человек, который с десяток раз переписывал код, потому что АПИ ядра Линукса для драйверов постоянно меняется, полностью согласен с Линусом - то ООП которое он применяет в ядре - полное гуано

А чьи коммиты были?
...
Рейтинг: 0 / 0
Подходы к построению архитектуры в функциональном программировании
    #39923141
Фотография Anatoly Moskovsky
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
mayton
А чьи коммиты были?

А какая разница?
...
Рейтинг: 0 / 0
Подходы к построению архитектуры в функциональном программировании
    #39923143
Фотография mayton
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Ну.. я согласен что Линус иногда бывает мудаковатый. Но на его счету лежит обширная инженерия знаний
от железа сетей и дисков до планирования и прочее. Я думаю что он имеет право на своё мнение в части
ООП. Не потому что ООП плохо. А просто потому что ему (Линусу) ООП не нужно.
...
Рейтинг: 0 / 0
Подходы к построению архитектуры в функциональном программировании
    #39923148
Фотография полудух
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Anatoly Moskovsky
mayton
Интересно что Линус Торвальдс и Алан Кей весьма нелицеприятно отзываются о современном ООП.
Один говорит - говно из говна. Другой - "я когда создавал ООП я не имел в виду ТАКОЕ ООП" ....e.t.c.

Как человек, который с десяток раз переписывал код, потому что АПИ ядра Линукса для драйверов постоянно меняется, полностью согласен с Линусом - то ООП которое он применяет в ядре - полное гуано

ядро же на C?
в C нет ООП.
...
Рейтинг: 0 / 0
Подходы к построению архитектуры в функциональном программировании
    #39923150
egorych
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
полудух
в C нет ООП.
а мужики то и не знают, спасибо, что сказал)))
...
Рейтинг: 0 / 0
25 сообщений из 207, страница 8 из 9
Форумы / Программирование [игнор отключен] [закрыт для гостей] / Подходы к построению архитектуры в функциональном программировании
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]