> 2. что касается самого языка java, то погуглите java delegates, java >closures, delegation event model и т.д. все это реализуется и не >в виде костылей, а весьма элегантный oo-way. Перегрузка операторов появилась в >java 7, хотя я и не вижу необходимости этого, если нужна >перегрузка, можно юзать код groovy или scala. properties также не нужны, >прочитайте о java beans Про костыли уже сказали, добавлю лишь следующее: - properties это всего лишь синтаскический сахар. Вместо того чтобы писать A.get_B().get_C().get_D() можно написать просто A.B.C.D, что намного удобнее и читабельней. - oo-way only это уже само по себе криво. В том же c# есть лямбды, которые просто синтаксический сахар для анонимных делегатов. Их краткая запись позволяет писать очень окуратный и читабельный код. - перегрузка операторов - штука полезная в некоторых случаях. Я вот сейчас пишу приложение которое делает вычисления на основе кватернионов, перегрузил в них основные матоперации и упирьод. - Expression tree и LINQ в частности. Прощай SQL и прочие внешние конструкции которые нельзя проверить на этапе компиляции. Я пишу выражение на C#, а кто-то дальше его разберёт и сгенерит корректный sql. - Attribute. Это вообще мегавещь для метапрограммирования. Причём стоит заметить что атрибуты обрабатываются и доступны в run-time, а не в compile-time как в жабе. Кого ещё забыл?
|