29
March
2011

Сертификация Oracle Certified Master, Java SE 6 Developer (SCJD)

Posted in: Java technologies, J2SE, Ваш досуг. Полезные советы | 18 Comments

Новость, о которой я узнал сегодня, требует от меня быстрого принятия решения о выборе следующего экзамена по Java от Oracle.

Beginning August 1, 2011, Java Architect, Java Developer, Solaris System Administrator and Solaris Security Administrator certification path requirements will include a new mandatory course attendance requirement.

Для сдачи Sun Certified Java Developer после 1-го августа 2011 потребуется обязательное посещение одного (спасибо hkvd за уточнение) из следующих курсов:

  • Java Programming Language, Java SE 6
  • Fundamentals of the Java Programming Language, Java SE 6
  • Developing Applications With the Java SE 6 Platform
  • Object-Oriented Analysis and Design Using UML
  • Java SE Performance Tuning

Цены на посещение курсов просто сумасшедшие, а именно от 2250 до 3000 американских денег; посещение одного курса по времени займет 5 рабочих дней. Так что в прямом смысле “либо сейчас, либо никогда”…

Решил подробно посмотреть Certification path. SCJD и SCEA находятся на одном уровне (Oracle Certified Master), но SCEA состоит из трех шагов, тогда как SCJD - только из двух. Так как с Enterprise технологиями я последнее время особо не работал, а ограничение во времени достаточно серьезное, то выбор мне кажется очевидным. Сертификационные экзамены уровня Oracle Certified Expert пока что не требуют никаких обязательных посещений платных курсов, так что о них буду думать позже.

Теперь очень коротко о том, что нас ждет…
(more…)

27
March
2011

Запись денежной суммы словами (currency amount in words)

Posted in: Java open-source проекты, Java technologies, J2SE, Полезные программы | 8 Comments

Все же в финансовой сфере достаточно часто попадаются интересные вещи, что бы там не говорили.

Когда-то заказчики поставили перед нашей командой следующую задачу: на чеке необходмо отображать сумму не только цифрами, но и словами. После непродолжительного гугления был обнаружен небольшой класс, написанный на Java еще в 2003 году (к сожалению оригинал больше найти не получается). Код был немного устаревшим и содержал пару мелких ошибок. Тем не менее, за короткий промежуток времени код удалось исправить и успешно внедрить в проект, за что автору кода большое спасибо.

Сейчас дошли руки переписать этот класс (теперь он называется AmountInWords), избавиться от дублирования кода и слегка расширить функциональные возможности.

В этой статье я приведу основные варианты использования класса, а именно:

  • непосредственно использование класса для форматирования сумм;
  • добавление новых валют;
  • интеграция класса в уже написанную систему.

Начнем…
(more…)

16
March
2011

Получение сертификата Sun Certified Java Programmer (SCJP)

Posted in: Java technologies, J2SE, Ваш досуг. Полезные советы | 20 Comments

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

Цель. Заинтересовало получение сертификата SCJD или чего-то в этом роде. Предусловием к сдаче таких экзаменов как раз и является SCJP. Кроме того, сертификационный экзамен - это достаточно хороший способ систематизировать свои знания (в данном случае по Java SE) и восполнить пробелы в них. Тем более стоимость сдачи экзамена на данный момент - всего лишь 125 американских денег, возможно из-за (благодаря / вопреки) скорому выходу Java 1.7.

Подготовка. Использовал 3 мануала:
- Sun Certified Programmer for Java 6. Study Guide
- Java Language Specification
- The Java Virtual Machine Specification
(more…)

8
March
2011

Многопоточность. Wait / notify и приоритеты при захвате монитора. Spurious wakeups. Starvation.

Posted in: Java technologies, J2SE | 13 Comments

Продолжаю разрушать мифы по поводу многопоточности в Java.

Миф: Предположим, что несколько потоков (threads) висят на мониторе (monitor) объекта A. Поток T1 захватывает монитор (допустим, входит в synchronized блок) и через некоторое время уходит в wait. Если затем некоторый поток вызовет notify на объекте A, то приоритет по захвату монитора будет иметь тот поток, который уходил в wait, то есть T1.

Попытка объяснения мифа: Поток, который уходил в wait, мог сделать некоторые действия с учетом синхронизации по объекту A. Поэтому, чтобы свести к минимуму влияние работы других потоков на консистентность данных/состояния необходимо сначала дать возможность потоку T1 завершить свою работу в пределах блока синхронизации, а потом уже предоставить монитор объекта на растерзание другим потокам.

Предлагаю такой регламент: для начала совсем чуть-чуть порассуждаем самостоятельно, потом посмотрим, что по этому поводу думают “Java Language Specification” и “The Java Virtual Machine Specification”, ну и наконец проведем ряд тестов, для подтверждения сомнительных высказываний из спецификаций :).
(more…)

4
March
2011

Собеседование на java-программиста (java-developer interview). Часть 3: Роли

Posted in: Project Management, Ваш досуг. Полезные советы | 15 Comments

Это окончание цикла статей по поводу собеседований в аутсорсинговых (и не только) компаниях:
- Обзор процесса приема на работу в аутсорсинговых компаниях
- Вопросы для собеседования на java-программиста
- Прием на работу: основные действующие лица

В данной статье мы рассмотрим основных игроков, которые так или иначе решают вопрос “быть или не быть” вам сотрудником компании:

  • Рекрутер
  • Технический специалист
  • Менеджер проекта
  • Вы (да-да, от вас тоже многое зависит)

Со своей стороны постараюсь описать, как по моему мнению каждая из сторон должна себя вести и какие ошибки они иногда допускают.

Но для начала как обычно:

[Disclamer: В статье выражается до безобразия субъективное мнение. Резкие выражения используются исключительно для донесения своих мыслей до читателя: никого обижать я не собирался и не собираюсь. Людям с расшатанной психикой или зашкаливающим ЧСВ читать, и тем более комментировать, категорически воспрещается. К спамерам и троллям это не относится: каждый ваш комментарий как лучик света в этом царстве тьмы, и дай вам бог всем здоровьечка.]

(more…)