Рубрика «java» - 289

В этой статье я хочу поделиться опытом использования одной полезной утилиты, позволяющей автоматизировать сборку и анализ качества кода. Речь пойдет о Yasca — свободно распространяемом ПО, представляющем собой небольшой PHP движок и набор утилит для выполнения анализа Java, С++ или PHP кода, включающего в себя PMD, JLint и RATS. Сама интеграция выполнения этих утилит осуществляется путем разработки небольших плагинов, на языке PHP. О процессе разработки такого плагина и пойдет речь далее.
Читать полностью »

Обратная сторона мобильных клиентов — сервер.

Введение

Не открою секрета, что разработка мобильных приложений в тренде – этому способствует стремительное техническое развитие: мобильные устройства с каждым годом улучшаются по всем характеристикам и становятся доступнее для широкого круга людей. Почти каждый, кто имеет на руках мобильный гаджет (будь то смартфон, коммуникатор или планшет) пользуется приложениями: браузером, клиентом электронной почты и мгновенных сообщений, играми, бизнес или финансовыми программами. И зачастую от пользователей скрыто то, что многие из приложений взаимодействуют с удаленным сервером: обмениваются с ним данными через Интернет.
По роду деятельности (Java разработчик серверных приложений) мне в команде приходится разрабатывать сервера для мобильных клиентов (за последние 2 года участвовал в реализации 3-х таких проектов для зарубежных компаний). Определился набор Java-технологий для решения задач такого рода, который варьируется в зависимости от требований и целесообразности (другими словами — желания), благо свобода при выборе технологий позволяет экспериментировать. Сформировавшейся точкой зрения и опытом хотел бы поделиться с сообществом.Читать полностью »

Что это и для кого (вместо вступления)

В данной статье я бы хотел рассказать о небольших результатах своей научной деятельности в сфере Text Mining. Этими самыми «результатами» стал небольшой FrameWork, который, пока еще, и до либы то не очень дотягивает, но мы растем =). Данный проект — реализация на практике некоторых, разработанных мною, теоретических положений. Как следствие этого я представляю возможности, которыми он может потенциально обладать в конце внедрения всех идей. Названо сее творение: «Text Mining FrameWork»(TextMF). Давайте в кратце рассмотрим, что именно будет позволять TextMF в своей первой финальной версии и что работает уже сейчас.
Читать полностью »

16 ноября
18.30 — 21.00

ЕPАМ Systems при поддержке Java User Group KPI (JUG KPI) принимает в гостях Антона Архипова, разработчика компании ZeroTurnaround, известной своими продуктами LiveRebel (“Eclipse’s 2012 Hot New Product Award”) и JRebel (“Duke’s Choice Award/Oracle Innovation Award"). Читать полностью »

Disclaimer: нашел статью у себя в черновиках. Писал года полтора-два назад, почему не опубликовал — не помню. Просмотрел, вроде, не совсем бесполезная, пусть будет в открытом доступе.

В последнее время стало достаточно актуальным использование domain specific languages (DSL) — языков «заточенных» под конкретную предметную область. Слово «язык» в данном контексте не обязательно подразумевает именно новый язык программирования, зачастую можно обойтись и старым добрым.

На хабре не замечено ни одной статьи про fluent interface в контексте джавы, так что хотел бы поделиться своим опытом применения. Читать полностью »

Привет. Продолжаем сталкиваться с ошибками компилятора и его расхождением с поведением штатных анализаторов IDE. Имеем следующий код:

public class X {
    public static <T> T getValue(String key) {
        return t1;
    }

    public void testGenerics(String key) {
        int i = getValue(key);
    }
}

Вопрос: компилируется ли код?
Читать полностью »

в 17:39, , рубрики: certification, java, jpa, oracle, метки: , ,

Хочу поделиться опытом прохождения Java EE 6 Java Persistence API Developer Certified Expert Exam (OCEJPAD 6).

Немного о OCEJPAD 6

OCEJPAD 6 один из новых(относительно новых) сертификатов, который охватывает Java Persistence API. Ранее Java Persistence API входил в состав SCBCD, но с добавлением Criteria API в JPA 2.0, было создано 2 экзамена вместо одного:

  • Java EE 6 Java Persistence API Developer Certified Expert Exam 1Z0-898(EE6 JPA or OCEJPAD 6)
  • Java EE 6 Enterprise JavaBeans Developer Certified Expert Exam 1Z0-895(EE6 EJB or OCEEJB 6)

Для кого предназначен этот сертификат? На мой взгляд, для всех Java Developer’ов, так как редкий проект обходится без использования доступа к базам данных, а пользоваться только JDBC уже давно не по фэн шую. Так что крепкие знания JPA будут как нельзя кстати. Одна из наиболее часто используемых имплементаций JPA — Hibernate.

Что читать?

Я использовала для подготовки книгу Pro JPA 2: Mastering the Java™ Persistence API(ее можно скачать бесплатно в интернете), а также спецификацию JPA. На мой взгляд спецификацию нужно читать после тщательного изучения Pro JPA 2: Mastering the Java™ Persistence API или обращаться за разъяснением наиболее непонятных моментов. Следующие главы из этой книги содержат всю необходимую информацию для сдачи экзамена (все остальное можно смело пропустить):
Читать полностью »

Предисловие

Недавно портировал довольно большой проект с Qt (C++) на Android (Java), в процессе работы часто приходилось применять динамическое связывание объектов. Беда состояла в том что связывание (binding) в отличие от привычных сигналов и слотов в Qt в Java реализовано через лисенеры (listeners), и сколько я не пытался себя убедить что способ этот равноценен и тоже имеет место быть такого же удобства как при использовании сигналов и слотов достичь не удавалось.
Например, нам нужно связать бегунок (QSlider в Qt или SeekBar в Android) с каким либо действием, хотя бы привязать другой бегунок который будет послушно перемещаться следом за первым. В Qt подобная операция выглядит следующим образом:
Читать полностью »

Атака клонов.
Эпизод: покер.

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

Это не эпизод легендарной саги «Звёздные войны» и не превью фантастической повести. Это описание нагрузочного тестирования сервера (построенного на технологиях Java), проведенного в ходе разработки игрового приложения «Покер» для социальных сетей.

Читать полностью »

Океанский робот Mercury выдержал натиск урагана Sandy

На фото — автономный океанский робот Mercury, который около недели назад работал в открытом океане, осуществляя мониторинг погодных условий в самом эпицентре бушевавшего урагана Сенди. Робот проплыл около ста миль в условиях ветра скоростью 70 узлов и при перепаде атмосферного давления с 40 до 710 мм. рт. ст., при этом передавая собираемую информацию в режиме реального времени в командный центр компании-создателя Liquid Robotics. Интересно также и то, что создателями компании являются бывшие сотрудники Sun Mycrosystems, а одним из ведущих инженеров является не кто иной как Джеймс Гослинг (James Gosling) — создатель Java.

Калифорнийская компания Liquid Robotics, занимается разработкой роботизированных устройств для сбора и обработки информации о химико-физических свойствах морской воды, атмосферных и метеорологических параметров для научных и коммерческих целей. Среди патентов компании — система автономного движения океанских роботов с использованием энергии волн, получение электрической энергии для приборов робота при помощи солнечных панелей, а также управление ими в океане про помощи системы GPS.
Читать полностью »


https://ajax.googleapis.com/ajax/libs/jquery/3.4.1/jquery.min.js