реклама на сайте
подробности

 
 
> Программирование на C++, А почему не С++?
KingGeorg
сообщение Oct 23 2004, 12:51
Сообщение #1





Группа: Свой
Сообщений: 9
Регистрация: 20-10-04
Пользователь №: 933



По идее, IAR должны были бы вместе с EC++ и стантдартными библиотеками предоставлять и библиотеки классов, описывающие микроконтроллеры, хотя бы тот же MSP430. Но я у них ничего подобного не нашёл, нет даже упоминаний. Интересно, кто-нибудь вообще в этом деле использует С++ как С++. Если да, давайте одсудим детали. Я (скромный такой rolleyes.gif ) за месяц с небольшим знакомства с предметной областью кое-что своё накарябал. Готов предъявить и получить заимечания.
Go to the top of the page
 
+Quote Post
 
Start new topic
Ответов
KingGeorg
сообщение Nov 4 2004, 11:38
Сообщение #2





Группа: Свой
Сообщений: 9
Регистрация: 20-10-04
Пользователь №: 933



Фишка вот в чём. Всё это нет никакого резона писать не только на С++, но и на С. Можно на ассемблере. Если нужно только сбрасывать в цикле сторожевой таймер, или только передать одно значение на ЦАП.
А если программа достаточно сложная, должна принимать решения в зависимости не от 3 -10, а от 500 условий? Причём условий имеющих разную природу?
С++ нужен не для того, чтобы делать что-то через него. А для того, чтобы описать на нём предметную область, выделить в ней объекты-субъекты, определить что каждый из них может делать, и забыть об их внутреннем устройстве. Каждый из объектов теперь можно считать "чёрным ящиком", о котором мы знаем как он себя ведёт и собираем систему из них. Это и есть ООП.
Конечно, любую предметную область можно описать и на процедурно-ориентированном языке. При этом хочешь -- не хочешь существует суперобъект "ПРОГРАМА", который всё и делает. Но предметные области не состоят из единственного объекта. Не состоят они и из "действий", непонятно кем производимых, над "данными". Предметные области состоят из сущностей которые взаимодейтствуют, влияют друг на друга, изменяют состояния друг друга, и, тем самым изменяют состояние всей системы. Так что объектно-ориентированное описание получается более адекватным.
По поводу лаконичности:
Лаконичным должен быть исполняемый код. Как этого добиться -- проблемы компилятора. Справляется. А исходный код должен быть понятен хотябы автору, даже через неделю. Ну устроены мы так, что подавай нам избыточность.
Go to the top of the page
 
+Quote Post

Сообщений в этой теме
- KingGeorg   Программирование на C++   Oct 23 2004, 12:51
- - IgorKossak   У IAR вообще всё идёт довольно медленно, но не буд...   Oct 23 2004, 13:20
- - KingGeorg   У меня есть классы: clocking -- инкапсулирует сист...   Oct 24 2004, 09:31
- - IgorKossak   Неплохо, а где можно на реализацию взглянуть?   Oct 24 2004, 10:29
- - KingGeorg   Ну, напимер, сторожевой таймер: Код #ifndef __WD...   Oct 27 2004, 14:54
- - KingGeorg   А вот код инкапсулирующий ЦАП Код#ifndef __DAC12_H...   Nov 1 2004, 16:11
- - lamerok   Уважаемый KingGeorg Я все таки так и не пойму, ...   Nov 2 2004, 04:50
- - -Tумблер-   Цитата(KingGeorg @ Nov 4 2004, 03:38 PM)А есл...   Nov 5 2004, 13:32
- - IgorKossak   Уже давно пишу на С++ для МК. Плевать на снижение ...   Nov 5 2004, 15:03
- - lamerok   KingGeorg Попробывал маленький проектик, аля миган...   Nov 10 2004, 09:42
- - froakch   ЦитатаУ меня есть классы: clocking -- инкапсулируе...   Nov 15 2004, 09:50
- - Slavik   C++ удобно применять где мегабайты текста. А для в...   Nov 29 2004, 10:11
|- - COMA   Цитата(Slavik @ Nov 29 2004, 13:11)На мой суб...   Nov 30 2004, 06:10
|- - IgorKossak   Цитата(COMA @ Nov 30 2004, 09:10)Код при комп...   Nov 30 2004, 09:49
|- - COMA   Цитата(IgorKossak @ Nov 30 2004, 12:49)Удивит...   Nov 30 2004, 14:41
|- - IgorKossak   Цитата(COMA @ Nov 30 2004, 17:41)Цитата(IgorK...   Dec 1 2004, 08:19
- - Slavik   Опять же, на мой субъективный взгляд, для встраива...   Nov 30 2004, 09:44


Reply to this topicStart new topic
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 


RSS Текстовая версия Сейчас: 19th July 2025 - 20:46
Рейтинг@Mail.ru


Страница сгенерированна за 0.01363 секунд с 7
ELECTRONIX ©2004-2016