tobotras: (ruki)
[personal profile] tobotras
После 14-летнего перерыва поинтересовался Явой. Боже, какой верблюд! И это я только одним глазком заглянул пока.

Annotations do not directly affect program semantics, but they do affect the way programs are treated by tools and libraries, which can in turn affect the semantics of the running program.

Запретите им!

Date: 2010-07-01 10:41 am (UTC)
From: [identity profile] maxcom.livejournal.com
что тебе не нравится в аннотациях?

Date: 2010-07-01 10:56 am (UTC)
From: [identity profile] kiltum.livejournal.com
Поздно :)

Date: 2010-07-01 11:18 am (UTC)
From: [identity profile] maxcom.livejournal.com
аннотации одновременно улучшают и код, и конфиги

Date: 2010-07-01 11:41 am (UTC)
From: [identity profile] joyfolk.livejournal.com
с аннотациями гораздо лучше чем без них

Date: 2010-07-01 11:43 am (UTC)
From: [identity profile] svv.livejournal.com
Аннотации это просто метаданные, привязанные к кускам кода, на которые можно ориентироваться при препроцессинге в рантайме. В принципе, такое есть не только в Java -- в том же питоне есть docstrings, в clojure метаданные в явном виде, в ruby можно менять классы конкретных экземпляров объектов, дописывая туда всякую мету.

В Java просто базовый язык очень ущербный, поэтому дополнения к нему (которыми пытаются компенсировать недостатки) выглядят довольно уродливо.

Date: 2010-07-01 11:57 am (UTC)
elentin: (Default)
From: [personal profile] elentin
Верблюд - это другой язык программирования ;-)

Date: 2010-07-01 11:57 am (UTC)
From: [identity profile] avnik.livejournal.com
В питоне есть еще декораторы, и __get__/__set__ с которыми можно такого наворотить ;)

Date: 2010-07-01 11:57 am (UTC)
From: [identity profile] dmzlj.livejournal.com
И уж поизящнее жабы, заметим.

Date: 2010-07-01 12:37 pm (UTC)
From: [identity profile] yurvor.livejournal.com
Что, кому? Кажется, кто-то не разобрался просто :)

Date: 2010-07-01 12:42 pm (UTC)
From: [identity profile] svv.livejournal.com
Я бы даже сказал -- позволяют удобным образом перенести часть конфигов (которые не надо менять в рантайме) в код.

Date: 2010-07-01 01:09 pm (UTC)
From: [identity profile] bish0nen.livejournal.com
Да уж, пояизящнее. Знаем-с, плавали.

Date: 2010-07-01 01:40 pm (UTC)
From: [identity profile] alexott.livejournal.com
Clojure Боря!

Date: 2010-07-01 01:56 pm (UTC)
From: [identity profile] dmzlj.livejournal.com
Scala еще

Date: 2010-07-01 03:17 pm (UTC)
From: [identity profile] klrlll.livejournal.com
*ликует*
)

Date: 2010-07-01 04:33 pm (UTC)
From: [identity profile] dmzlj.livejournal.com
а причем здесь перл?

Date: 2010-07-01 04:34 pm (UTC)
From: [identity profile] dmzlj.livejournal.com
Не, это скоро не мы маргиналы будем :)

Date: 2010-07-01 05:36 pm (UTC)
From: [identity profile] raydac.livejournal.com
аннотации это круто.. мож самое крутое что они догадались вставить

Date: 2010-07-01 06:38 pm (UTC)
From: [identity profile] alexott.livejournal.com
ну боре, как знатному схемоводу, кложура должна больше понравиться :-)

Date: 2010-07-01 08:34 pm (UTC)
avysk: (Default)
From: [personal profile] avysk
Точно маргиналы! Бери окамель, довольный будешь!

Date: 2010-07-01 08:54 pm (UTC)
vitus_wagner: My photo 2005 (Default)
From: [personal profile] vitus_wagner
А еще, кроме перечисленных сущностей кодом ты разговариваешь с человеком, которому через три года это поддерживать,

Date: 2010-07-01 09:16 pm (UTC)
From: [identity profile] dz.livejournal.com
Борь. Ява - это не язык. Точнее - это очень не только язык. Это называют термином "экосистема", хотя он и не вполне удачен.

На Яве делают а) много сложных (ДЕЙСТВИТЕЛЬНО сложных) вещей и б) много вещей, при разработке которых есть много автоматизации, в том числе автоматической генерации кода.

Всё это требует аннотаций.

Аннотации - способ связать в проекте собственно код с чем бы то ни было иным.

Например: Hibernate автоматически генерирует для явских классов интерфейс к базе данных. Аннотации позволяют сообщить ему о классе или поле класса то, что нельзя сказать обычным синтаксисом декларации переменной. Например, что данное поле - первичный ключ, или что для данного поля нужно генерировать тот или иной констрейнт.

Например: есть генераторы визуализации объектов, которым можно через аннотации объяснить, как именно данную сущность нужно визуализировать.

И так далее.

Ты сильно ошибаешься в оценках. Ява - как, в своё время и си - наилучший на сегодня компромисс в области инструментов для масштабной разработки софта. Непродуманных вещей в ней, пожалуй, нет. Всё, что есть - результат работы массы неглупых людей из Sun/Oracle/IBM/Intel.

А вообще если ты 14 лет не интересовался Явой, то, собственно, зачем начинать? Это не казуальный, в общем-то, я.п.

Date: 2010-07-02 07:24 am (UTC)
From: [identity profile] reedcat.livejournal.com
Вот и вырослоо поколение, которое не понимает при чем здесь перл :)

Date: 2010-07-02 07:32 am (UTC)
From: [identity profile] dmzlj.livejournal.com
Да какой смысл читать Camel Book, все равно не поможет. А верблюд это тотемное животное окамла, вообще-то.

Пруфпик:
Edited Date: 2010-07-02 07:34 am (UTC)

Date: 2010-07-02 07:39 am (UTC)
From: [identity profile] alexott.livejournal.com
когда он начал работать на jvm? ;-)

Date: 2010-07-02 07:50 am (UTC)
avysk: (Default)
From: [personal profile] avysk
Не начал, и это ему ещё один плюс :-)

Date: 2010-07-02 07:50 am (UTC)
From: [identity profile] alexott.livejournal.com
ну это местами спорный вопрос :-)

Date: 2010-07-02 09:49 am (UTC)
From: [identity profile] votez.livejournal.com
у меня тоже появился новый сотрудник, который на яву одним глазком вот сейчас взглядывает. Очень интересно послушать поток бреда про яву, который он выдает за обедом ;) К реальности этот поток имеет такое же отношение, как жалобы серфингиста на новые горные лыжи ;)

Date: 2010-07-02 11:07 am (UTC)
From: [identity profile] votez.livejournal.com
новые впечатления - всегда хорошо. Неважно даже поначалу, верные они или нет ;)

Date: 2010-07-02 11:58 am (UTC)
From: [identity profile] dz.livejournal.com
Бывает разное "программируют". Написать 200, 1000 и 100 000 строк - разные задачи. Аннотации актуальны больше в последнем случае. Поглядеть на это трудно.

Есть такая штука в Ява-мире - OSGI - http://ru.wikipedia.org/wiki/OSGi - чтобы ощущать в ней реальную потребность, нужно делать проект, который РЕАЛЬНО упирается в УПРАВЛЯЕМУЮ модульность. То есть - когда модуль имеет право на собственную жизнь. Один из примеров - проектная инфраструктура компании эйрбас, которую обеспечивает, в частности, система деплоймента, способная разбросать новую версию модуля по куче точек использования.

Ну то есть - в яве реально много инструментария для возни с реально сложными задачами. Чтобы ощущать ценность этого всего нужно реально нуждаться в решении задач сопоставимой сложности. Иначе оно вызывает реакцию как у тебя на аннотации...

Date: 2010-07-02 11:58 am (UTC)
From: [identity profile] dz.livejournal.com
PS: если чем-то могу помочь - я с радостью.

Profile

tobotras: (Default)
tobotras

December 2024

S M T W T F S
123 4567
891011121314
15161718192021
22232425262728
293031    

Most Popular Tags

Style Credit

Expand Cut Tags

No cut tags
Page generated Feb. 12th, 2026 11:21 am
Powered by Dreamwidth Studios