> -- Валерий Лаптев писал(а):
> Я практически так же думал... Программист не должен работать с текстом, а должен работать сразу с конструкциями. При этом объявления типов, переменных (короче, всяких имен) собираются уже сразу в редакторе. И могут быть открыты программистом.Тогда лексический и синтаксический анализ практически не нужны становятся - в редакторе уже правильные конструкции заводятся. Символы программист вводит только там, где литерал требуется ввести, или имя первый раз. В общем - силно похоже, только я так детально не продумывал уровни после модуля (в первую очередь - для обучения хотел применить, а там до модуля достаточно).

Рад, что есть единомышленники. К сожалению, на этом форуме процентов 80 участников думают, что программист должен работать с текстом (оценка 80% грубая, никаких опросов не было). Единственное, в чем они отклоняются от своего догмата - это любовь к "Дракону", навеянная теплыми воспоминаниями о космической программе "Буран", военно-промышленном комплексе и былом могуществе державы.
Но "Дракон", конечно, совсем не то, прошлый век.
Да, и еще они с гордостью называют гипертекст красивым словом "активный объект", то есть ощущают необходимость гиперссылок в коде программы.

Мне кажется, что уровни выше модуля нужныи для обучения- по следующим причинам:
1. Имеет смысл обучать сразуправильнойтехнологии работы:
1.1 Проектирование модели сверху вниз с разбиением на модули по функционалу, используемым ресурсам и степени зависимости от той или иной платформы
1.2 Помодульная отладка с локализацией ошибок
1.3 Работа с библиотеками, поиск и использование готовых компонентов вместо изобретения велосипеда
1.4 Создание и оформление компонентов для многократного использования в других проектах и на продажу

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

2. Обучаемому может быть тяжело без поддержки верхних уровней модели системой программирования:
2.1 По мере обучения кавардак из собственных модулей может стать существенной помехой, как и отсутствие удобных средств работы с библиотеками
2.2 Сборка программы из модулей (собственных или библиотечных), зависимых друг от друга по цепочке, может стать довольно сложной задачей
2.3 Целостность программы может быть легко нарушена, если в одни модули вносятся исправления (даже переименования!) без учета других, а средства автоматического поддержания целостности отсутствуют

Кстати, на отсутствие поддержки уровней выше модуля в ББ жаловались многие в этом форуме.