Любая из дат, только
Гм, подозреваю, что нигде :)
В области компонентов, умеющих себя рендерить как для веба, так и для десктопа, я знаю только одну технологию, точнее пару — Eclipse RAP и Eclipse RCP. Но Eclipse RAP-таки лезет на сервер за каждым обновлением. На медленных линиях связи это очень неудобно. Это вообще довольно сложная и интересная тема. Например, в случае десктопного клиента и сервера на одной и той же машине вполне достаточно какого-то простого протокола обмена данными. В случае веба возникает необходимость использовать трансляцию Питона или Явы в Javascript, плюс пускать обмен данными между клиентом и сервером через WebSocket либо хотя бы организовывать long polling.
На тему многопоточности и компонентов я бы упомянул такую штуку, как circuits. В мире Явы, к сожалению, аналогов не знаю.
У меня в последнее время сложился образ технологии, с которой бы хотелось работать, будь-то путем использования того, что уже есть, либо создания чего-то нового. Я вкратце опишу, а вы не могли бы рассказать, что есть в мире Явы на эту тему?
Мне бы хотелось программировать компоненты, не блокирующие исполнение друг друга. Основной обмен между компонентами хотелось бы видеть в виде сообщений через что-то вроде общей шины, с возможностью подписаться на любое событие. Кроме того, те из компонентов, которые отвечают за интерфейс пользователя, должны уметь отображать себя в веб-представлении, в виде десктопного GUI, и в виде, пригодном для мобильных телефонов и планшетов. Да, и в случае веб-представления, очень не хотелось бы за каждым обновлением интерфейса лезть на сервер. Ну и, конечно, библиотека как чисто бекендовых средств, так и каких-то компонентов интерфейса пользователя.
Народ, джависты, а почему программисту на Питоне стоит попробовать Яву? Можно хотя бы несколько пунктов?
Очень интересно обсудить поднятую тему в сравнении аналогичными средствами из мира Python. Касательно деплоймента (предлагаю начать сравнение с этого) — я пользуюсь Fabric, и других хороших средств я не знаю. Судя по всему, вряд ли уровень Фабрика дотягивает до Капистрано, но во всяком случае, что касается практических нужд, он сэкономил мне немало времени и нервов:) Умеет выполнять локально и удаленно команды оболочки, в том числе и от имени суперюзера, передавать туда и обратно файлы, может обрабатывать массово несколько удаленных хостов.Интересно, как в Капистрано реализован откат операции? На основании чего определяется ее успешность/неуспешность? P.S. И, кстати, не раскрыта тема миграций БД в рельсах — я был бы благодарен за освещение (в одной из последующих статей?) этой преинтереснейшей области.
А как осуществляется откат операции? Если у меня, например, была операция «отправить все письма из тестовой очереди»? Как их вернуть назад?Неуспешность операции, если вылетело исключение ruby (это, например, если процесс вернул ненулевой код)
А с миграциями дело обстоит вот так: http://guides.rubyonrails.org/...Собственно это ж такая простая штука, какие проблемы могут быть с ними в том же python’е?
Операция простая, но осуществляется по разному. В рельсах миграции оперируют низкоуровневыми понятиями таблицы и колонки, для джанговских моделей есть несколько реализаций миграции, начиная от SQL-only до работающих исключительно на уровне ORM-моделей. По поводу проблематики миграций в приложении к Django, а также если есть желание ознакомиться с существующими решениями, я бы порекомендовал почитать вот эту статью. Лично мне нравится South — работает в основном на уровне моделей, что удобно, но позволяет в случае необходимости переключаться на SQL, но есть и другое мнение на этот счет.
Ну вот мы и пытались решить этот вопрос так, чтобы ни от кого в глаз не получать (если это возможно в принципе:) Хотите поучаствовать?
Ну на мой взгляд, для многоязычного сайта нужен ещё и особый подход — нам в проекте оказалось довольно трудно уделять внимание всем языкам не по остаточному принципу. Например, очень дискусионен вопрос о том, стоит ли при переключении языка интерфейса по возможности переводить имена и фамилии.
Кстати давно хотел спросить — на ДОУ был украинский язык интерфейса и потом его не стало. Хотелось бы поинтересоваться, с чем это связано:)
Уже несколько недель умеет как. Проблем не заметил пока.