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

Непрерывная интеграция в облакеВ последнее время разработчики все чаще и чаще обращаются к нам с просьбами реализовать CI в Jelastic. Для чего же нужна непрерывная интеграция? Как правило, в проекте, где над разными частями разработчики трудятся независимо, стадия интеграции является заключительной и довольно трудоемкой, соответственно требует дополнительных затрат времени. Переход к непрерывной интеграции позволяет снизить эту трудоемкость, а так же обнаружить и устранить ошибки заранее, пока они еще не укоренились и не выросли в более серьезную проблему. Да действительно, если осуществлять контроль качества на протяжении всего процесса разработки, можно сэкономить и время, и деньги, и усилия, при одновременном повышении качества. Такой подход особенно полезен для крупных проектов с участием большого количества разработчиков.

Сегодня мы покажем, как можно реализовать непрерывную интеграцию в облаке Jelastic на простом примере с использованием Jenkins.Читать полностью »

в 9:55, , рубрики: cloud, eclipse, IDE, java, Веб-разработка, метки: , , ,

Дано: «чистая» Linux машина.
Задача: создать простое Spring приложение из темплейта и развернуть его на Cloud Foundry.
Решение: На видео. Левая сторона: desktop подход (Maven, Tomcat, JVM, Eclipse...). Правая сторона: cloud, а конкретно, Codenvy.

Видео лучше развернуть на весь экран и смотреть в HD качестве

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

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

«Нет ничего проще!» — ответил я.
Читать полностью »

Да, это целая статья по самому обычному switch в JDK 7. Бывает так, что накопленный материал кажется интересным и малоизвестным, а потом оказывается, что любая бабка у подъезда уже 50 лет знает об особенностях реализации switch. Но я попробую. Для затравки, предлагаю 3 вопроса:

  1. (Простой) Каков результат работы этого кода?
    switch(5){
    default: System.out.print(0);
    case 1: System.out.print(1); break;
    case 4: System.out.print(4);
    case 2: System.out.print(2);
    }

  2. Следующие 2 варианта практически одинаковы. Немного отличаются литералами.
    //Вариант 1
    switch("BBBBBB"){
    case "AaAaAa": break; 
    case "AaAaBB": break;
    case "AaBBAa": break;
    case "AaBBBB": break;
    case "BBAaAa": break;
    case "BBAaBB": break;
    case "BBBBAa": break;
    case "BBBBBB": break;
    }
    //Вариант 2
    switch("BBBBBB_8"){
    case "AaAaAa_1": break;
    case "AaAaBB_2": break;
    case "AaBBAa_3": break;
    case "AaBBBB_4": break;
    case "BBAaAa_5": break;
    case "BBAaBB_6": break;
    case "BBBBAa_7": break;
    case "BBBBBB_8": break;
    }

    Почему первый switch выполняется в несколько раз медленнее, по крайней мере, с отключенным JIT (-Djava.compiler=NONE)? Сами проверьте в цикле! JIT таким кодом не проведешь, но если немного пошаманить, то небольшая разница будет заметна.

  3. Какова вычислительная сложность алгоритма нахождения совпадающего значения среди n case-ов (по крайней мере, в JDK 7)?

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

Почему стоит изучить Clojure?
Что такое хороший язык программирования? Какими качествами и характеристиками он должен обладать? Ответ дать сложно. Вот одно из возможных определений: хороший ЯП должен хорошо решать возложенные на него задачи. Ведь ЯП лишь инструмент в руках программиста. А инструмент обязан помогать нам в работе. В конце концов, это же и есть причина его создания. Разные ЯП стараются решать разные проблемы (с переменным успехом). Цель, которая ставилась при проектировании Clojure — сделать написанные нами программы простыми. И, как следствие, ускорить их создание, тестирование. А главное, уменьшить время на их понимание, изменение и сопровождение.
Читать полностью »

в 0:02, , рубрики: ADF, java, JDeveloper, oracle, метки: , , ,

Доброе время суток читатели. Моя предыдущая статья была небольшим интро в ADF. И так как по результатам опроса я вижу, что тема оказалась интересна, то я продолжаю писать об ADF.

Теперь после небольшого рассказа о данном фреймворке, можно «ринуться в бой» и рассмотреть фичи ADF более конкретно. Данная статья будет об ADF Business Components. О том как работать с ними декларативно и программно.
Читать полностью »

Добрый день жители хабра и остального мира. Эта статья является продолжением первого поста о сдаче экзамена Java Progammer I. Часть информации будет продублирована тут. Сегодня я хотел бы затронуть такие вопросы: image

  • зачем нужна сертификация;
  • какие виды сертификатов может получить инженер от Oracle;
  • что нужно знать или выучить, чтобы успешно сдать экзамены по Java Programmer I/II.

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

Продолжение темы переводов документации по JDeveloper 11g и Oracle ADF, начатой статьей JDeveloper 11g Разработка Веб-Приложений с Oracle ADF на русском.
На этот раз — перевод официального туториала Working with Bounded Task Flows, Regions and Routers на русский, великий и могучий, правдивый и свободный…
На сей раз, перевод более детальный, и сама тема более сложная и существенная. В данном документе рассматриваются и разжевываются такие необходимые базовые понятия как:

  • Managed beans — управляемые бины
  • Entity Object — объекты Сущности
  • View Object — объекты Представлений, или «Вьюшки»
  • Unbounded task flow — неограниченный поток задач
  • Bounded task flow — ограниченный поток задач
  • Data Control — Управление Данными ADF
  • и др...

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

Весёлые (сосисочные) рефакторинги

Привет, %habrausername%. Я хочу сыграть с тобой в игру.

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

От предыдущего разработчика осталась кучка кода и домашние тапочки. Ты осторожно кладёшь тапочки в мусорную корзину и начинаешь рефакторинг.

Этот код ужасен. Во-первых, нет никого, кто мог бы сказать, зачем этот код писался. Во-вторых, нет никакой документации. Нет даже комментариев, не говоря уже о юнит-тестах. В-третьих, код не структурирован, а имена классов и методов ни о чём не говорят. И, наконец, работать это должно начать не сегодня, и даже не вчера, а внезапно.
Ну как, %habrausername%, пробежал холодок по спине?Читать полностью »

Java. Новое поколение разработки. Техники Java 7 и многоязычное программирование

Название оригинала: The Well-Grounded Java Developer: Vital techniques of Java 7 and polyglot programming
Автор: Б. Эванс, М. Вербург
Перевод книги: Сивченко Олег
Дата выхода: осень 2013г.

Осенью у нас выходит новая переводная книга по Java. У книги очень хорошие отзывы и высокий рейтинг на сайте www.amazon.com.

Книги о Java — пожалуй, самая распространенная литература по отдельно взятому языку программирования. Но тем не менее большинство книг по Java относится к одной из двух категорий: это либо вводные пособия для начинающих, либо высокоспециализированные книги.
Читать полностью »


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