Javenue logo

Javenue

Программирование на Java

Информационные технологии

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

В интернете очень много русскоязычных статей о подготовке к сдаче Oracle Certified Professional (ранее 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

Саму программу подготовки когда-то уже читал. В этот раз из-за нехватки времени успел просмотреть только первые 3 главы. Остальные - очень бегло, о чем теперь жалею. С другой стороны, сильный отпечаток в мозгах остался от огромного количества времени, проведенного на JavaBlackBelt и особенно на Quizful.

Место. Для сдачи была выбрана компания Prometric. О регистрации подробно рассказывать не буду - вроде бы все интуитивно. В Киеве много центров, где может проводиться сдача экзамена. Для меня территориально удобным местом оказался Knowledge Center компании Инком, который находится рядом со станцией метро Шулявская.

Из негатива: администратор практически ничего не знала о сертификации по Java, то есть задавать вопросы не имеет смысла. Экзамен был назначен на 9:00, просили прийти на полчаса раньше - пришел даже в 8:27 - ждал до 8:55. А вцелом центр понравился: регистрация прошла очень быстро; никаких задержек и сбоев не было; выделили индивидуальную тумбочку с ключом для личных вещей; комната с машинами была небольшая, но удобная; выдали минидоску с маркером; разрешили пользоваться шоколадкой :); и, что самое главное, - никто не мешал.

Процесс. Знакомые рассказывали, что экзамен по сравнению с предыдущими версиями упростили. Тоже так считаю, потому как вопросы из программы подготовки часто попадаются более сложные. Для успешной сдачи экзамена ответить нужно было на 60 вопросов за 3 часа. Проходной балл - 58%.

Во время сдачи (которая заняла полтора часа) отмечал вопросы, в которых не был уверен на 100% и считал нужным перепроверить. Их насобриалось 13 из 60. Перепроверка прошла очень быстро: почти все вопросы пропустил, кроме одного, в котором и нашел ошибку :). Сразу не заметил модификатор static у переменной, с которой работал нестатический synchronized метод.

Понравилось то, что brain-damage вопросы на битовые сдвиги и подсчеты значений во вложенных циклах убрали. Еще из позитива - появился интересный тип вопросов с drag-and-drop, например, на дополнение исходного кода сроками из пула. Не понравилось то, что было всего лишь 5 вопросов по многопоточности и, как мне показалось, слишком много вопросов по API, которое не очень часто используется в реальных проектах.

Результат. После нажатия заветной кнопки "End", администратор распечатала отчет. Неправильно ответил на один вопрос из темы Collections / Generics. С одной стороны, 98% это конечно хорошо. С другой стороны, 100% все же было бы лучше. Покопавшись в памяти, вопрос удалось обнаружить и приблизительно воспроизвести. Вот и он:

public class TreeSets {
    public static void main(String[] args) {
        TreeSet<Integer> set = new TreeSet<Integer>() {{
            add(2); add(4); add(6);
        }};
        TreeSet<Integer> subset = set.subSet(2, true, 5, true);
        subset.add(7);

        System.out.println(set + " " + subset);
    }
}

И куча вариантов с различными наборами цифр, один из которых я и выбрал, плюс варианты "compilation error" и "runtime error". В этом вопросе сразу 2 ошибки. Строка с созданием subset как раз и приведет к ошибке компиляции. Но даже если ее исправить, в следующей строке возникла бы ошибка времени выполнения. Скажу честно, API в случае с методом subSet я не помнил (хотя на счет inclusive / exclusive догадался), но мне кажется, что до правильного ответа можно было догадаться и без знания API. Вряд ли метод subSet возвращал бы конкретную имплементацию Set.

А этот абзац посвящен Лёхе. Леша, никогда не недооценивай непредсказуемость недобросовестной подготовки :). Но спорить со мной на деньги ни в коем случае не прекращай. Кстати, за этот спор хотел сказать тебе большое человеческое спасибо. Если надумаешь тоже писать статью о своих впечатлениях - дай знать, я ссылку на тебя оставлю. Увидимся.

Грядущее. Первый шаг на пути к SCJD сделан. А в том, что сдавать буду именно Sun Certified Java Developer, сомневаюсь с каждым днем все меньше.

Если еще что-нибудь интересное вспомню - обязательно напишу. Жду ваших вопросов и комментариев. Счастливо.


Комментариев: 5

  Выйти

  * для публикации комментариев нужно  

hkvd:

Добрый день. Поздравляю со сдачей SCJP! 98% - неплохо)

Тоже ранее сдавал SCJP (всего 90). Сейчас задумался о сдаче SCEA, при этом уже читал о том, что для его сдачи потребуется много времени (если совмещать с работой) и это может занять 4-6 месяцев. Учитываю, что потом для сертификации надо будет обязательно проходить курсы/тренинги, то хочу успеть сдать до 1 августа.

Хочу узнать о том, почему вы решили сдавать SCJD? Может узнав ваши цели я смогу сделать более осознанный выбор между SCJD/SCEA… Спасибо.

bura:

Поздравляю, отличный результат. SCJD, на мой взгляд, правильный выбор. Когда то для меня тоже вставал такой вопрос: SCJP взят, а что дальше и надо ли дальше? Сейчас уже вопрос стоит так: SCJD взят, а что дальше? Почти с 80-процентной уверенностью могу сказать, что дальше будет SCWCD - ныне Oracle Certified Expert, Java Platform, Enterprise Edition 6 JavaServer Pages and Servlet Developer.

c0nst:

2 hkvd: Ну как-то пока что не сильно я проникся Enterprise’ом… Чуть выше в комментариях писал другие причины, по которым сдавать хочу именно Java Developer. Один из ключевых моментов - интересная форма проведения экзамена, которая:

  • способствует более тщательной подготовке;
  • дает довольно неплохой охват технологий (например, давно хотел ближе познакомиться с RMI);
  • обращает внимание на такие вещи как usability, maintanability и т.д.
  • дает возможность попроектировать и поэкспериментировать.

Посмотрел подробно certification path на сайте Oracle. Почему-то раньше думал, что SCEA намного круче SCJD, но оказывается оба экзамена - это Certified Oracle Master.

2 bura: SCWCD - интересный вариант. Но если сервлеты я знаю хорошо и постоянно использую, то с JSP знаний не хватает, да как-то особо и не использую эту технологию, если есть такая возможность. SCWCD по версии Oracle сейчас называется Oracle Certified Professional, Java EE 5 Web Component Developer. А кроме него есть еще более сложный экзамен - Oracle Certified Expert, Java Platform, Enterprise Edition 6 JSP and Servlet Developer.

Ян Крик:

Здрасти, поздравляю вас, вы молодец. А не подскажете как выглядит этот сертификат? Годится ли он потом заграницей? например в США, ну т.е. есть перевод в скобках латиницей? Как думаете, сколько надо новичку заниматься и по каким книжкам, чтобы хорошо знать? Процент прохождения пишется прям на сертификате? И последний вопрос, подскажите пожалуйста, какие-нибудь хорошие центры в Москве, я нашел только один и цена там выше 11000. Спасибо

Andy:

Только сегодня мой сертификат пришел))

--как выглядит этот сертификат?

На плотной бумаге формата А4, с золотым тиснением. На нем имя фамилия, название программы сертификации, дата сдачи и подпись вице-президента Oracle). Все на английском, в том числе и имя с фамилией. Процент не пишется, он виден только в распечатке, которую дают сразу после теста и в профиле на сайте pearsonvue.

--Годится ли он потом заграницей?

Программа международная, поэтому по идее в какой стране сдавать, не важно.

--по каким книжкам?

Я в основном готовился по http://www.scribd.com/doc/49238605/A-Programmer-s-Guide-to-Java-SCJP-Certification-A-Comprehensive-Primer-3rd-Edition и нескольким бесплатным эмуляторам.

Цена кажется от центра не зависит. Удачи всем!