Translate

вівторок, 30 жовтня 2012 р.

Обновлено. Android 4.2. Сенді зірвала презентацію, але не вихід в світ.


Google "презентувала" Android 4.2 і Nexus 4. Точніше сама презентація була зірвана, але ціла лінійка Nexus була представлена.

Дуже потішили ціни на девайси. І в принципі загальний прогрес і рух платформи.



LG Nexus 4
Характеристики:



неділя, 28 жовтня 2012 р.

Java Concurrency and Volatile


 

Про службове слово volatile джава програмісти згадують в більшості перед співбесідами або на них. І мало хто до кінця розбирається що воно таке і з чим його їдять. Причина для цього досить проста, щоб знати коли його використовувати необхідно мати досить непогані знання в галузях cpu регістру, кешування. Інша причина полягає в тому, що досить важко продемонструвати наслідки не використання цоьго слова. Саме з цим ми постараємось розібратись з-за допомогою маленької задачки.

Отже до задачки, спочатку не запускаючи програму подумайте що станеться з таким кодом

1.   public class ConcurrencyFun implements Runnable  
2.   {  
3.       private String str;  
4.       void setStr(String str)  
5.       {  
6.           this.str = str;  
7.       }  
8.       public void run()  
9.       {  
10.          while (str == null);  
11.          System.out.println(str);  
12.      }  
13.      public static void main(String[] args) throws Exception  
14.      {  
15.          ConcurrencyFun fun = new ConcurrencyFun();  
16.          new Thread(fun).start();  
17.          Thread.sleep(1000);  
18.          fun.setStr("Hello world!!");  
19.      }  
20.  }  
Більшість мабуть скажуть що код буде чекати 1 секунду і виводити повідомлення "Hello World!". Новостворений (поороджений) потік чекає поки str не null  і виводить його. Основний потік запускає породжений(?) потік, чекає 1 сек і вставляє в str значення "Hello World!". Виглядає все просто? Чи не так?


пʼятниця, 26 жовтня 2012 р.

Open Source Developers




























Позитивних вам вихідних :)

ПС: А тим хто їде в київ - до зустрічі на JavaDay 2012

вівторок, 23 жовтня 2012 р.

Contest: Виграй SpringSource тренінг вартістю 2500$



У вас є чудова нагода виграти тренінг від  SpringSource  вартістю 2500$. Для цього достатньо підписатись на розсилку новин від SpringSource до 20-го Листопада. Результати конкурсу будуть оголошені 21-го Листопада. Переможці отримають код який можна буде використати на сторінці Spring Education і вибрати цікавий вам тренінг.


JVM параметри


Нещодавно шукав опис JVM параметрів і наткнувся ось на такі посилання:


Якщо Ви маєте джерела, де детальніше описані параметри, або більший список - постайте!

понеділок, 22 жовтня 2012 р.

WHAT’S NEW IN GROOVY 2.0? Webinar


25 Жовтня Spring  проведе вебінар "WHAT’S NEW IN GROOVY 2.0?"

Посилання на інформацію і реєстрацію: http://www.springsource.org/node/3668


А також 19 Жовтня була релізнута нова версія Spring Integration 2.1.4.RELEASE
і Spring Integration 2.2.0.RC2

Посилання на релізноутс: http://www.springsource.org/node/3710

пʼятниця, 19 жовтня 2012 р.

Тренд тижня. Білд :)


Як QA бачить новий білд



Як бачить новый білд кастомер:


Як бачить його девелопер:

і Менеджер:

Як насправді  виглядає білд:

Гарних і позитивних вихідних :)

четвер, 18 жовтня 2012 р.

"Best Practice"


Вчора знайомий скинув код методу. В ньому треба пофіксати багу. І звичайно тести є, але вони вже 2 роки закоментані .... :)

/**
 * Private method
 */
    private void setCombined() {
    // global list is grouped by AGC + FGC
    int currentAGC = this.allSortedNetlines.get(0).getAircraftGrpCode();
    int currentFGC = this.allSortedNetlines.get(0).getFlightGroupCode();
    // int nextAGC = 0;
    int sequentialFGC = 0;

    /* for the whole list */
    for (int i = 0; i < this.listSize; i++) {
        int initialGroupIndex = i;

        /* for each AGC */
        while (currentAGC == this.allSortedNetlines.get(i).getAircraftGrpCode()) {
        /* for each FGC


середа, 17 жовтня 2012 р.

SPRING DATA Released


15 Жовтня SPRING DATA Released

Посилання на release note: http://blog.springsource.org/2012/10/15/spring-data-release-train-arrived/

ПС: Ця частина Spring є достатньо цікава - можливо хтось виступить добровольцем і зробить призентацію/статтю про неї?

вівторок, 16 жовтня 2012 р.

Habr: Maven


Цікава стаття про досвід роботи з Maven


Посилання: http://habrahabr.ru/post/154779/

Коментарі за і проти можна залишати в коментарях
Також можливо когось цікавить щось детальніше - в коментарі.

 Спробую відповісти.





понеділок, 15 жовтня 2012 р.

Core: String part 2


В продовження попередньої статті про String http://jug-lviv.blogspot.com/2012/10/core-string-part-1.html друга стаття:

Магія String Об'экт/не об'єкт

Хоч String і є об'єктом, але він є immutable і створююється новий об'єкт і референс на старий об'єкт перетираються.
public class StringObject {

    public static void main(String[] args) {
        String val ="object";
        updateString(val);
        System.out.println(val);
    }

    private static void updateString(String val) {
        val ="not object";
        System.out.println(val);
    }
}
На консолі буде виведено:



субота, 13 жовтня 2012 р.

Apache Lucene 4 Released


Apache 12.10.2012 випустила 4 стабільний реліз популярної бібліотеки Apache Lucene.

Посилання на новину : http://lucene.apache.org/core/corenews.html

Сайт: http://lucene.apache.org/core/

Посталання на архів бібліотек: http://archive.apache.org/dist/lucene/java/

четвер, 11 жовтня 2012 р.

Вийшла NetBeans IDE 7.3 Beta


09.10.2012 Oracle випустив NetBeans IDE 7.3 Beta Release

Посилання на Release Overview: http://netbeans.org/community/releases/73/

Web Platform. Життя стане легшим


W3C разом з Google, Apple, Adobe, Facebook, HP, Microsoft, Mozilla, Nokia, та Opera об'єднались для запуску Web Platform – майданчика, який стане основним джерелом актуальної інформації про HTML5, CSS3 та інші веб-стандарти.

І як наслідок було створено Web Platform http://www.webplatform.org/

А це відео презентація сайта

середа, 10 жовтня 2012 р.

JUG Reload: Обновлення сайту.


Однією з ідей оживити Community - це створення/обновлення блогу.

Ідея полягає в перенесінні його на платний сервер, де ми зможемо мати:
- Блог
- Форум
- Колекцію відео
- Колекцію Java семплів
- Новини
- Розсилки
- Та інші корисні речі, які зара не зовсім комфортно робити.

І як наслідок шукаємо людину/людей/компанію, яка б допомогла нам в цій справі.
Для початку не плануємо нічого грандіозного, але з чогось треба розпочати.

Відписуйтесь тут або пишіть на почту bohdan.bandrivskyy@gmail.com.

Будем раді будь-якій допомозі або пораді :)

вівторок, 9 жовтня 2012 р.

Just Release: Spring STS and Spring Integration


Сьогодні VMWare обновила свою IDE Spring Tool Suite and Groovy/Grails Tool Suite до версії 3.1.0

Посилання на реліз ноутс: http://www.springsource.org/node/3690

І також в п'ятницю був обновлений інтегрейшен фреймворк  Spring Integration до версії 2.2

Посилання на реліз ноутс:
http://blog.springsource.org/2012/10/05/whats-new-in-spring-integration-2-2-part-3-jpa-support/

понеділок, 8 жовтня 2012 р.

Oracle JavaOne 2012 Сан-Франциско


З 30 вересня по 4 жовтня в Сан-Франциско проходила набільша Java конференція ініційована самими Oracle.

Ось лінка на сайт конференції: http://www.oracle.com/javaone/index.html

А це лінк на те, що ми всі чекаємо. Лінка на Java Strategy Keynote 2012: 
http://medianetwork.oracle.com/video/player/1871687106001

Ще б я хотів додати, що активну участь в організації конференції брав IBM, який був діамантовим партнером. Це як на мене означає "дружбу" корпррацій, що безумовно піде на користь Java. Також брали участь VMWare, а це може означати, що перестануть протиставляти Spring vs JEE.
Єдиний сумний момент, як на мене, - це те, що Google не був "активним", але сподіваємось, що відносини корпорацій зміняься.

І останнє: Відчувається, що Oracle має чіткі плани на Java, і  що найголовніше - має ресурси на втілення цих планів :)

ПС: Як написано нижче - ми намагаємось освіжити JUG і зробити його актуальнішим, але без ваших відгукув - це неможливо!!! Чекаємо на ваші думки, побажання, пропозиції ось тут: http://jug-lviv.blogspot.com/2012/10/jug-reset.html


четвер, 4 жовтня 2012 р.

Core: String part 1


Одним з наслідків ресету стане цикл статей про різні аспекти використання JAVA.
В цих статтях я намагатимусь пояснити магію, яка відбувається з кодом.
І звичайно коментарі, зауваження, пропозиці - вітаються!

Отже: Магія String part 1


Як ви знаєте String в Java це об'єкт для маніпуляції із масивами символів. Але не все так просто.

Магія String Immutable.

Що це означає?  це означає:

String a ="1";
System.out.println(a.hashCode());
a = a+"No.";
System.out.println(a.hashCode());



понеділок, 1 жовтня 2012 р.

JUG Reset


Після трьох років діяльності JUG of Lviv прийшло розуміння, що пора щось змінювати в діяльності групи. Але не хотілось б чинити щось зопалу - тому велике прохання, до всіх кому цікава наша діяльність, написати свій відгук. Щоб ви хотіли бачити/чути на наших зустрічах, на нашій сторінці, в нашій діяльності. Що саме цікаве вам і що на вашу думку буде цікаве іншим? Чим вам подобається група і чим не подобається? Куди повинна рухатись група та як розвиватись?
Питаннь багато тому раді всім вашим відповіддям.