OCP Java SE 17

Сертификация от фирмы Oracle – OCP Java SE 17

Собрав вместе все вопросы о целесообразности: “зачем тебе? Ты ведь и так в индустрии уже десять лет!”, “Что тебе даст это? Лучше сделать Cubernetes!”, “Java не особенно поменялась, все то же самое”…, а затем ответив себе на все эти вопосы, мотивация пройти сертификат только усилилась. По нескольким причинам. А именно:

  • сотни вопросов, примеров кода, разбора ошибок и тонкостей языка, mock-экзамены
  • равномерное и глубокое погружение в теорию – те разделы, которые не используешь на работе
  • вернуться и создать режим последовательного обучения и практики
  • работа с разными видами материалов и книгами: вопросники и документация.
  • пройти путь и достичь чего-то большого, последовательно, небольшими шагами, но целеустремленно и уверенно.

Проработав около ста вопросов, несмотря на тот факт, несмотря на мой опыт работы в Java, я был удивлен многочисленным тонкостям языка. Да, да – важно признать, что даже ежедневное написание кода не позволяет на работе не позволяет их использовать именно так как это было задумано. Время – ресурс ограниченый. Глубокий разбор и практика – не всегда возможны. Часто код ограничевается уверенным – но “старым” стилем. На “расширение границ” нет ресурса: часто проекты пишуться на JDK8/10/11. Примененить новые возможности языка шансов не остается.

Итак, ресурсы, которые я беру с собой:

  • OCP Oracle Certified Professional Java SE 17 Developer Practice Tests. Исчерпывающий сборник вопросов и ответов, состоящий из 15-ти тематических глав. Эта книга есть в библиотеке OReilly и, благодаря возможности маркировать цветом пройденные вопросы, позволяет последовательно изучать и продвигаться. Начальная задача – десять вопросов в день.
  • OCP Oracle Certified Professional Java SE 17 Developer Study Guide. Важная книга с последовательным изложением теории, разбором видов возможных вопросов, теории. Конечно, можно ее читать “от начала до конца”, но я предпочитаю обращаться к определенным разделам после того как столнулся с вопросом теста.
  • Java Sandbox. Незаменимый сервис от OReilly. Включен в абонемент. Среда разработки Java, где можно написать и запустить код. В эру, когда SAAS стал повсюду и нет необходимости в установки JDK/IntelliJ на домашний компьютер, а доступ к сервису – отовсюду, практика возможна и дома, и в офисе, и в кафе.
  • Сайт компании Oracle – там есть последние новости, примеры экзаменов и новый материал. Думаю, что будет очень полезным ближе к финишу.
  • JD+ V17 for Oracle Certified Professional – Java 17 Developer Certification – OCPJP 17 – еще один сборник из 20 mock экзаменов в 1200 вопросах, сопровожден с аппликацией, где можно отследить свой прогресс.

Примечательно, что проходной балл для сертификации – 68%.

Полезную информацию можно найти еще сдесь.

Continue Reading OCP Java SE 17

Pattern matching beyond the statement

The pattern matching in Java 17 reduces the boilerplate code by removing the convertion step.

What interesting is the extended scope of pattern created variable. The function whatIsIt1 has a if block, but the airplane and ship variables are extended out of if scope.

import java.time.LocalDate;

public class App {
  public static void main(String[] args) {
      var app = new App();
      var t1 = new Titanic();
      var b1 = new Boing();

      app.whatIsIt(t1);
      app.whatIsIt(b1);
      app.whatIsIt1(t1);
      app.whatIsIt1(b1);
  }

    public void whatIsIt(Object obj) {
      if ( obj instanceof Airplane airplane )
        System.out.println(airplane.name);
      else if (obj instanceof Ship ship ) {
        System.out.println(ship.name);
      }
      else 
        System.out.println("I Don't Know");
    }

    public void whatIsIt1(Object obj) {
      if ( !(obj instanceof Airplane airplane)) {
        if ( !(obj instanceof Ship ship )) {
          System.out.println("I Don't Know");
          return;
        }

        System.out.println(ship.name);
        return; 
      }
      
      System.out.println(airplane.name);
    }

    static class Airplane {
      public String name = "Airplane";
    }

    static class Ship {
      public String name = "Ship";
    }

    static class Boing extends Airplane {

    }

    static class Titanic extends Ship {

    }
}
Continue Reading Pattern matching beyond the statement

All cases of the switch will be printed

Strange, but in Java that’s how switch works.

In the following program, once numOfballs falls in the 1st case, all the rst cases will be visited regardless the condition.


public class App {
    public static void main(String[] args) {

      var numOfBalls = 1;
      switch (numOfBalls) {
          case 1:  System.out.println("One ball");
          case 2:  System.out.println("Two balls");
          case 3:  System.out.println("Three balls");
          case 4:  System.out.println("Four balls");
          case 5:  System.out.println("Five balls");
      } 
    }
}

Continue Reading All cases of the switch will be printed

Done! Course 2 – Improving Deep Neural Networks: Hyperparameter Tuning, Regularization and Optimization.

I just recently reached an additional milestone by finishing the 2nd course of Deep Learning AI specialization – Improving Deep Neural Networks: Hyperparameter Tuning, Regularization and Optimization.

This course dived into the core of deep learning by understanding performance drivers, analyzing bias/variance, and implementing neural networks using TensorFlow, as well as the skills in regularization techniques, optimization algorithms, and hyperparameter tuning for optimal AI applications.

Continue Reading Done! Course 2 – Improving Deep Neural Networks: Hyperparameter Tuning, Regularization and Optimization.

למה לי קריאת ספרים?

באחד הדיונים ברשת נשאלה השאלה על חשיבות קריאת ספרים. האם זה באמת חשוב בזמננו, כאשר רשתות חברתיות ממלאות לנו את הראש בתוכן? שאלתי את עצמי את השאלה לאחר גילוי לא נעים: אני מבלה ברשות כמו פייסבוק זמן מכובד. וגם, האם קריאת פוסטים נחשבת קריאה? לאחר שחשבתי זמן מה, הגעתי למסקנות האלה:

  • אוצר מלים. בני אדם מתקשרים באמצעות שפה, וככל שהיא מגוונת ומלאה יותר, כך גם התקשורת יותר טובה. אין כיום אמצעי יעיל יותר מקריאה. טלוויזיה, רשתות חברתיות, כל אלה מצוינים לבידור, אך לא לתקשורת עשירה ואוצר מלים.

  • עומק. קריאה היא כלי להבנה של העולם, שמאפשר בהילוך איטי להכיר ולהבין עולמות של אדם, אירועים, רגשות, לפעמים לגלות סיבות ותשובות.

  • מיקוד. בתקופה הזאת חיוני לקרוא ספר. סרטונים קצרים, דפדופי פייסבוק ואינסטגרם… כל אלה אפליקציות שנלחמות על הזמן ותשומת הלב שלנו, אך גם גורמות נזק לריכוז שלנו. כתוצאה, אנחנו לא מסוגלים להתמקד לזמן רב במשהו אחד, זקוקים לשינוי נושא. קריאת ספר מאפשרת ריכוז, מיקוד, מה שמרגיע ומאפשר לפתח יכולת לעשות דבר אחד ללא הפרעה.

Continue Reading למה לי קריאת ספרים?