Димкин написал(а):
А почему локальные классы а не глобальные? В чем отличие? (Я начал в локальных, только потому что мне так писать быстрее и так весь код в исходниках - как в других языках, без вкладок и окошек se24).
Потому что "так писать быстрее и так весь код в исходниках"
. С какой-то версии, правда, для глобальных классов появилась кнопка "Source Code- Based". Но там названия переменных несколько отличаются от отображаемых, плюс se24 немножко форматирует код (добавляются комментарии с информацией о параметрах, комментарии перед методом вносятся внутрь).
+ все на виду
+ проще откатывать изменения, массово что-то менять, рефакторить
+ проще переносить код между системами (скопировал - вставил)
+ удобнее работать с исключениями (в se24 конструктор для них генерится)
+ при переносе глобального класса программы, его использующие и работающие в это время, начинают резко перегенерироваться, что совершенно не радует пользователей
Да и не люблю я САПовские конструкторы, и словарь предпочитаю использовать только при острой необходимости.
Димкин написал(а):
Как организовать локальные классы? (Я по аналогии с java - 1 класс = 1 инклюд)
Как Вам покажется удобным. Я в отдельные [библиотечные] инклуды запихиваю логически связанный [между собой], но независимый от конкретных программ код. Это может быть как отдельный класс, так и интерфейс и иерархия классов, или даже классы разных иерархий, которые работают вместе. Если возникает зависимость от кода из другого инклуда, этот инклуд просто подключается к текущему. Главное - не доподключаться до взаимных зависимостей
.
Димкин написал(а):
И какая разница будут правиться глобальные классы или локальные?
Глобальные классы неудобно править. Обычно приходится изменять сразу несколько методов или перемещать компоненты класса между секциями или по дереву наследования. Соответственно, приходится постоянно куда-то заходить-выходить, открывать в соседних сессиях и т.д. А если еще и посреди дороги передумал... В общем, править локальные гораздо проще.