Translate

Середа, 22 травня 2013 р.

JDay registration opened


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



Udacity. Introduction to Programming. Java


Udacity розпочинає курс Introduction to Programming. Java.

Якщо Ви маєте знайомих, які б хотіли почити програмувати - це дуже вдаллий час розпочати!

Посилання на курс тут

Вівторок, 21 травня 2013 р.

Обзор java.util.concurrent.*


В повседневной работе не так уж часто приходится сталкиваться с пакетом для многопоточности java.util.concurrent. Иногда существуют проектные ограничения по использованию java 1.4.2, где нет данного пакета, но чаще всего хватает обычной синхронизации и не требуется ничего сверхъестественного. К счастью, периодически возникают задачи, заставляющие немного пораскинуть мозгами и либо написать велосипед, либо порыться в javadoc'ах и найти что-то более подходящее. С велосипедом проблем нет — просто берешь и пишешь, благо ничего суперсложного в многопоточности нет. С другой стороны, меньше кода — меньше багов. Тем более, что на многопоточность никто в здравом уме юнит тестов не пишет, т.к. это уже полноценные интеграционные тесты получаются со всеми вытекающими последствиями.

Что выбрать для конкретного случая? В условиях запарки и deadline'ов довольно сложно охватить весь java.util.concurrent. Выбирается что то похожее и вперед! Так, постепенно, в коде появляются ArrayBlockingQueue, ConcurrentHashMap, AtomicInteger, Collections.synchronizedList(new LinkedList()) и другие интересности. Иногда правильно, иногда нет. В какой то момент времени начинаешь осознавать, что более 95% стандартных классов в java вообще не используются при разработке продукта. Коллекции, примитивы, перекладывание байтиков с одного места на другое, hibernate, spring или EJB, еще какая то библиотека и, вуаля, приложение готово.

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


Learning Scala by example


Друзі, дехто з вас висловив бажання почитати про мову Scala в якомусь більш практичному середовищі - наприклад, розробка веб-аплікації з нуля. Я почав серію блог постів (англійською) на цю тему, вона доступна за лінкою.

Буду вдячний за питання, коментарі і пропозиції

Понеділок, 20 травня 2013 р.

400 Пост JUG L'viv


Минулої п'ятниці відбулася знакова подія для нашого блогу ми пересікли позначку в 400 постів.
Цим постом став пост про нашу конференцію: http://jug-lviv.blogspot.com/2013/05/jday-lviv.html

ПС. Маєте бажання долучитись до досягнення наступного великого числа? Пишіть!
ПС2. Капітан очевидність.... :)

Five advanced Java Synchronizers you probably don’t know


Besides the common synchronize which is based in the lock bit that every Java object has, you have more sophisticated synchronizers in java, such as:
  • Semaphore – Use the concept of a permit to indicate a max number of allowed threads in a place. When you use the value 1, the behavior its similar to synchronize, also called binary semaphore. There is however a big difference here, you acquire a permit on the semaphore, not a locking object,its just a variable to count when a thread acquires a permit and when a thread releases a permit, some kind of a counter. The only thing you really have are threads locking until a permit be available. In the example below, we define 3 as the number of permits, so after 3 acquires the 4 thread will wait for a release before continue its execution.
// Define the semaphore to control 3 permits. 
// 3 Threads can acquire the mySemaphore 
Semaphore mySemaphore = new Semaphore(3, true);

// 3 threads can execute this line of code. The 4 thread must wait for a release
mySemaphore.acquire();

// .. somewhere in the code a thread releases the mySemaphore, 
// and now the next waiting thread can acquire
mySemaphore.release();


Пʼятниця, 17 травня 2013 р.

Amazon WS workshop at JDay


Сьогодні Amazon долучився до JDay.

Представники Amazon проведуть воркшоп по AWS.
Детальний опис буде зовсім скоро. А поки що, прошу всіх небайдужих відповісти на запитання тут.
Пам'ятайте, ваша відповідь важлива.