Обновить
5
-1.5
Павел Васильев@Lastro

Архитектор

Отправить сообщение

Искусственный интеллект без иллюзий: как не сжечь бюджет компании на хайпе (Часть 2)

Уровень сложностиПростой
Время на прочтение3 мин
Охват и читатели7.2K

Это вторая часть цикла публикаций, где мы говорим не о теории искусственного интеллекта, а о суровой реальности его внедрения в бизнес. В первой части мы обсуждали стратегические ловушки, а теперь настал черед уровня данных, который оказался для нас минным полем.

Читать далее

Искусственный интеллект без иллюзий: как не сжечь бюджет компании на хайпе

Уровень сложностиСредний
Время на прочтение7 мин
Охват и читатели7.2K

Конечно, существуют и успешные кейсы внедрения ИИ в бизнес, но даже в удачных случаях всё не так гладко. Успешное внедрение всегда сопряжено с множеством оговорок и допущений. Эта статья будет интересна тем, у кого получилось, и тем, у кого не получилось, и тем, кто только собирается внедрить искусственный интеллект в свой бизнес.

Откуда у C‑level берётся представление о розовых единорогах?

Читать далее

Знакомимся с Javassist

Время на прочтение10 мин
Охват и читатели12K

Всем большой привет! Перед началом стоит сказать, что библиотека Javassist довольно мощный инструмент, так как стирает почти все границы у того безграничного языка JAVA, позволяя разработчику осуществлять манипуляции связанные с байткодом.

Конечно, получив доступ к байткоду, а ровно и к возможности воздействовать на этот самый байткод вам совсем не обязательно вклиниваться в него. Javassist можно использовать и в “мирных” целях!

При многообразии возможностей не стоит забывать о том, что использовать библиотеку нужно только тогда, когда это действительно необходимо. Использование данного инструмента делает основной код менее понятным, так как после применения Javassist у вас появится второе полноценное приложение, в котором будет жить Java со своей логикой.

Итак, если после всех предостережений вы все же решили использовать эту библиотеку, то давайте начинать!

В этой статье мы рассмотрим Javassist, как инструмент, с помощью которого мы будем вклиниваться в существующий байткод и трансформировать его.

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

Как и говорилось выше, после использования Javassist у вас появится второе полноценное приложение, в котором будет жить Java со своей логикой. Почему это происходит? Почему нельзя запаковать все в одно приложение?

Ответ очевиден – приложение не может само себя изменять. Т.е. приложение не может само изменять свой же байткод. Это должен делать кто-то другой. Этот кто-то другой – такое же Java приложение, но заточенное на работу с байткодом.

Читать далее

Информация

В рейтинге
Не участвует
Откуда
Москва, Москва и Московская обл., Россия
Дата рождения
Зарегистрирован
Активность