Malcolm, в маскоте сделали доступными элементы матрици и это для меня намного удобнее. Если переменную нельзя изменять, то в коментарии напиши, что не лезь-убъёт! То что кто-то лишнее изменяет это его проблемы. Для других надо было сделать доступным. И даже наследуя м3г матрицу не подберёшся к её элементам.
DDDEN!SSS, подход полного доверия к программисту тоже существует. Вернее, он существовал задолго до появления Java, самый простой пример - ближайшие предшественники, С/С++, которые полностью доверяют программисту (особенно C), однако при неаккуратном программировании с их помощью можно даже повредить операционную систему, если не предусмотрена защита против кривых программ. Нет, DDDEN!SSS, если программист изменяет что-то не то, это проблема не только программиста или команды разработчиков, но и пользователей, которые будут запускать эти программы на свои головы. Что касается конкретных API, то тут мы ведь детали реализации не знаем. Методы get/set далеко не всегда просто достают и изменяют значения каких-то полей. Иногда возвращаемые значения зависят не от одного поля, иногда установка нового значения включает в себя какие-то дополнительные действия, которые если не провести, механизм не будет работать.
DDDEN!SSS, это на Java не повредишь, а на C - запросто. Чуть ошибешься с указателем или выйдешь за границу массива, и все, дальше начинаешь писать данные в область памяти, которая принадлежит другим программам.
DDDEN!SSS, seclub.org/forum/goto/7638539/ - C++ тоже до сих пор широко используется. Каждый подход имеет свои преимущества. Есть такой API, есть другой, вот SE молодцы, они сделали оба, да еще JSR 239 придачу. Декомпиляторы C, разумеется, есть. seclub.org/forum/goto/7638800/ - не-а. Просто пишешь static {}, а то, что нужно - внутри скобок.
4 мая 2009 в 19:25
То что кто-то лишнее изменяет это его проблемы. Для других надо было сделать доступным.
И даже наследуя м3г матрицу не подберёшся к её элементам.