Π Π°Π·Π½ΠΎΠ΅

Java core Ρ‡Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅: Java Core. Вопросы ΠΊ собСсСдованию, Ρ‡. 1

Π‘ΠΎΠ΄Π΅Ρ€ΠΆΠ°Π½ΠΈΠ΅

Java Core. Вопросы ΠΊ собСсСдованию, Ρ‡. 1

Для Ρ‚Π΅Ρ…, ΠΊΡ‚ΠΎ Π²ΠΏΠ΅Ρ€Π²Ρ‹Π΅ ΡΠ»Ρ‹ΡˆΠΈΡ‚ слово Java Core β€” это Ρ„ΡƒΠ½Π΄Π°ΠΌΠ΅Π½Ρ‚Π°Π»ΡŒΠ½Ρ‹Π΅ основы языка. Π‘ этими знаниями ΡƒΠΆΠ΅ смСло ΠΌΠΎΠΆΠ½ΠΎ ΠΈΠ΄Ρ‚ΠΈ Π½Π° стаТировку/ΠΈΠ½Ρ‚Π΅Ρ€Π½Π°Ρ‚ΡƒΡ€Ρƒ.

ΠŸΡ€ΠΈΠ²Π΅Π΄Π΅Π½Π½Ρ‹Π΅ вопросы ΠΏΠΎΠΌΠΎΠ³ΡƒΡ‚ Π²Π°ΠΌ ΠΎΡΠ²Π΅ΠΆΠΈΡ‚ΡŒ знания ΠΏΠ΅Ρ€Π΅Π΄ собСсСдованиСм, ΠΈΠ»ΠΈ ΠΏΠΎΡ‡Π΅Ρ€ΠΏΠ½ΡƒΡ‚ΡŒ для сСбя Ρ‡Ρ‚ΠΎ-Ρ‚ΠΎ Π½ΠΎΠ²ΠΎΠ΅. Для получСния практичСских Π½Π°Π²Ρ‹ΠΊΠΎΠ² Π·Π°Π½ΠΈΠΌΠ°ΠΉΡ‚Π΅ΡΡŒ Π½Π°

.

  • Как ΡΠΎΠ·Π΄Π°Ρ‚ΡŒ нСизмСняСмый ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ Π² Java? ΠŸΠ΅Ρ€Π΅Ρ‡ΠΈΡΠ»ΠΈΡ‚Π΅ всС прСимущСства

    НСизмСняСмый класс – это класс, состояниС ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ³ΠΎ Π½Π΅ ΠΌΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΎ послС создания. Π—Π΄Π΅ΡΡŒ состояниСм ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π° ΠΏΠΎ сущСству ΡΡ‡ΠΈΡ‚Π°ΡŽΡ‚ΡΡ значСния, Ρ…Ρ€Π°Π½ΠΈΠΌΡ‹Π΅ Π² экзСмплярС класса, Π±ΡƒΠ΄ΡŒ Ρ‚ΠΎ ΠΏΡ€ΠΈΠΌΠΈΡ‚ΠΈΠ²Π½Ρ‹Π΅ Ρ‚ΠΈΠΏΡ‹ ΠΈΠ»ΠΈ ссылочныС Ρ‚ΠΈΠΏΡ‹.

    Для Ρ‚ΠΎΠ³ΠΎ Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΡΠ΄Π΅Π»Π°Ρ‚ΡŒ класс нСизмСняСмым, Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ Π²Ρ‹ΠΏΠΎΠ»Π½ΠΈΡ‚ΡŒ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠ΅ условия:

    1. НС прСдоставляйтС сСттСры ΠΈΠ»ΠΈ ΠΌΠ΅Ρ‚ΠΎΠ΄Ρ‹, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΈΠ·ΠΌΠ΅Π½ΡΡŽΡ‚ поля ΠΈΠ»ΠΈ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Ρ‹, ΡΡΡ‹Π»Π°ΡŽΡ‰ΠΈΠ΅ΡΡ Π½Π° поля. Π‘Π΅Ρ‚Ρ‚Π΅Ρ€Ρ‹ ΠΏΠΎΠ΄Ρ€Π°Π·ΡƒΠΌΠ΅Π²Π°ΡŽΡ‚ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠ΅ состояния ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π° Π° это Ρ‚ΠΎ, Ρ‡Π΅Π³ΠΎ ΠΌΡ‹ Ρ…ΠΎΡ‚ΠΈΠΌ Ρ‚ΡƒΡ‚ ΠΈΠ·Π±Π΅ΠΆΠ°Ρ‚ΡŒ.
    2. Π‘Π΄Π΅Π»Π°ΠΉΡ‚Π΅ всС поля final ΠΈ private. Поля, ΠΎΠ±ΠΎΠ·Π½Π°Ρ‡Π΅Π½Π½Ρ‹Π΅ private, Π±ΡƒΠ΄ΡƒΡ‚ нСдоступными снаруТи класса, Π° ΠΎΠ±ΠΎΠ·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ ΠΈΡ… final Π³Π°Ρ€Π°Π½Ρ‚ΠΈΡ€ΡƒΠ΅Ρ‚, Ρ‡Ρ‚ΠΎ Π²Ρ‹ Π½Π΅ ΠΈΠ·ΠΌΠ΅Π½ΠΈΡ‚Π΅ ΠΈΡ… Π΄Π°ΠΆΠ΅ случайно.
    3. НС Ρ€Π°Π·Ρ€Π΅ΡˆΠ°ΠΉΡ‚Π΅ субклассам ΠΏΠ΅Ρ€Π΅ΠΎΠΏΡ€Π΅Π΄Π΅Π»ΡΡ‚ΡŒ ΠΌΠ΅Ρ‚ΠΎΠ΄Ρ‹. Π‘Π°ΠΌΡ‹ΠΉ простой способ это ΡΠ΄Π΅Π»Π°Ρ‚ΡŒ – ΠΎΠ±ΡŠΡΠ²ΠΈΡ‚ΡŒ класс ΠΊΠ°ΠΊ final. Π€ΠΈΠ½Π°Π»ΠΈΠ·ΠΈΡ€ΠΎΠ²Π°Π½Π½Ρ‹Π΅ классы Π² Java Π½Π΅ ΠΌΠΎΠ³ΡƒΡ‚ Π±Ρ‹Ρ‚ΡŒ ΠΏΠ΅Ρ€Π΅ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½Ρ‹.
    4. ВсСгда ΠΏΠΎΠΌΠ½ΠΈΡ‚Π΅, Ρ‡Ρ‚ΠΎ ваши экзСмпляры ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Ρ… ΠΌΠΎΠ³ΡƒΡ‚ Π±Ρ‹Ρ‚ΡŒ Π»ΠΈΠ±ΠΎ измСняСмыми, Π»ΠΈΠ±ΠΎ нСизмСняСмыми. ΠžΠΏΡ€Π΅Π΄Π΅Π»ΠΈΡ‚Π΅ ΠΈΡ… ΠΈ Π²ΠΎΠ·Π²Ρ€Π°Ρ‰Π°ΠΉΡ‚Π΅ Π½ΠΎΠ²Ρ‹Π΅ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Ρ‹ со скопированным содСрТимым для всСх измСняСмых ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ΠΎΠ² (ссылочныС Ρ‚ΠΈΠΏΡ‹). НСизмСняСмыС ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Π΅ (ΠΏΡ€ΠΈΠΌΠΈΡ‚ΠΈΠ²Π½Ρ‹Π΅ Ρ‚ΠΈΠΏΡ‹) ΠΌΠΎΠ³ΡƒΡ‚ Π±Ρ‹Ρ‚ΡŒ бСзопасно Π²ΠΎΠ·Π²Ρ€Π°Ρ‰Π΅Π½Ρ‹ Π±Π΅Π· Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹Ρ… усилий.

    Π’Π°ΠΊΠΆΠ΅, Π²Π°ΠΌ Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ ΠΏΠΎΠΌΠ½ΠΈΡ‚ΡŒ ΠΏΠΎΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠ΅ прСимущСства нСизмСняСмых классов. Π’ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎ ΠΎΠ½ΠΈ понадобятся вас Π½Π° собСсСдовании. НСизмСняСмыС классы:

    • Π»Π΅Π³ΠΊΠΎ ΠΊΠΎΠ½ΡΡ‚Ρ€ΡƒΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ, Ρ‚Π΅ΡΡ‚ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ ΠΈ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ
    • автоматичСски потокобСзопасны ΠΈ Π½Π΅ ΠΈΠΌΠ΅ΡŽΡ‚ ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌ синхронизации
    • Π½Π΅ Ρ‚Ρ€Π΅Π±ΡƒΡŽΡ‚ конструктора копирования
    • ΠΏΠΎΠ·Π²ΠΎΠ»ΡΡŽΡ‚ Π²Ρ‹ΠΏΠΎΠ»Π½ΠΈΡ‚ΡŒ Β«Π»Π΅Π½ΠΈΠ²ΡƒΡŽ ΠΈΠ½ΠΈΡ†ΠΈΠ°Π»ΠΈΠ·Π°Ρ†ΠΈΡŽΒ» Ρ…ΡΡˆΠΊΠΎΠ΄Π° ΠΈ ΠΊΡΡˆΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ Π²ΠΎΠ·Π²Ρ€Π°Ρ‰Π°Π΅ΠΌΠΎΠ΅ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅
    • Π½Π΅ Ρ‚Ρ€Π΅Π±ΡƒΡŽΡ‚ Π·Π°Ρ‰ΠΈΡ‰Π΅Π½Π½ΠΎΠ³ΠΎ копирования, ΠΊΠΎΠ³Π΄Π° ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽΡ‚ΡΡ ΠΊΠ°ΠΊ ΠΏΠΎΠ»Π΅
    • Π΄Π΅Π»Π°ΡŽΡ‚ Ρ…ΠΎΡ€ΠΎΡˆΠΈΠ΅ Map ΠΊΠ»ΡŽΡ‡ΠΈ ΠΈ Set элСмСнты (эти ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Ρ‹ Π½Π΅ Π΄ΠΎΠ»ΠΆΠ½Ρ‹ ΠΌΠ΅Π½ΡΡ‚ΡŒ состояниС, ΠΊΠΎΠ³Π΄Π° находятся Π² ΠΊΠΎΠ»Π»Π΅ΠΊΡ†ΠΈΠΈ)
    • Π΄Π΅Π»Π°ΡŽΡ‚ свой класс постоянным, Π΅Π΄ΠΈΠ½ΠΎΠΆΠ΄Ρ‹ создав Π΅Π³ΠΎ, Π° ΠΎΠ½ Π½Π΅ нуТдаСтся Π² ΠΏΠΎΠ²Ρ‚ΠΎΡ€Π½ΠΎΠΉ ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΊΠ΅
    • всСгда ΠΈΠΌΠ΅ΡŽΡ‚ Β«Π°Ρ‚ΠΎΠΌΠ°Ρ€Π½ΠΎΡΡ‚ΡŒ ΠΏΠΎ ΠΎΡ‚Π½ΠΎΡˆΠ΅Π½ΠΈΡŽ ΠΊ сбою» (failure atomicity, Ρ‚Π΅Ρ€ΠΌΠΈΠ½ ΠΏΡ€ΠΈΠΌΠ΅Π½ΠΈΠ» Π”ΠΆΠΎΡˆΡƒΠ° Π‘Π»ΠΎΡ…): Ссли нСизмСняСмый ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ бросаСт ΠΈΡΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠ΅, ΠΎΠ½ Π½ΠΈΠΊΠΎΠ³Π΄Π° Π½Π΅ останСтся Π² Π½Π΅ΠΆΠ΅Π»Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎΠΌ ΠΈΠ»ΠΈ Π½Π΅ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½Π½ΠΎΠΌ состоянии.

    ΠŸΠΎΡΠΌΠΎΡ‚Ρ€ΠΈΡ‚Π΅ Π½Π° ΠΏΡ€ΠΈΠΌΠ΅Ρ€, написанный Π² этом постС.

  • Π’ Java ΠΏΠ΅Ρ€Π΅Π΄Π°Ρ‡Π° ΠΏΠΎ Π·Π½Π°Ρ‡Π΅Π½ΠΈΡŽ ΠΈΠ»ΠΈ ΠΏΠΎ ссылкС?

    Java спСцификация гласит, Ρ‡Ρ‚ΠΎ всС Π² Java пСрСдаСтся ΠΏΠΎ Π·Π½Π°Ρ‡Π΅Π½ΠΈΡŽ. НСт Ρ‚Π°ΠΊΠΎΠ³ΠΎ понятия, ΠΊΠ°ΠΊ Β«ΠΏΠ΅Ρ€Π΅Π΄Π°Ρ‡Π° ΠΏΠΎ ссылкС» Π² Java. Π­Ρ‚ΠΈ условия связаны с Π²Ρ‹Π·ΠΎΠ²ΠΎΠΌ ΠΌΠ΅Ρ‚ΠΎΠ΄ΠΎΠ² ΠΈ ΠΏΠ΅Ρ€Π΅Π΄Π°Ρ‡Π΅ΠΉ ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Ρ…, ΠΊΠ°ΠΊ ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€ΠΎΠ² ΠΌΠ΅Ρ‚ΠΎΠ΄Π°. Π₯ΠΎΡ€ΠΎΡˆΠΎ, ΠΏΡ€ΠΈΠΌΠΈΡ‚ΠΈΠ²Π½Ρ‹Π΅ Ρ‚ΠΈΠΏΡ‹ всСгда ΠΏΠ΅Ρ€Π΅Π΄Π°ΡŽΡ‚ΡΡ ΠΏΠΎ Π·Π½Π°Ρ‡Π΅Π½ΠΈΡŽ Π±Π΅Π· ΠΊΠ°ΠΊΠΎΠΉ-Π»ΠΈΠ±ΠΎ ΠΏΡƒΡ‚Π°Π½ΠΈΡ†Ρ‹. Но, концСпция Π΄ΠΎΠ»ΠΆΠ½Π° Π±Ρ‹Ρ‚ΡŒ понятна Π² контСкстС ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€Π° ΠΌΠ΅Ρ‚ΠΎΠ΄Π° слоТных Ρ‚ΠΈΠΏΠΎΠ².

    Π’ Java, ΠΊΠΎΠ³Π΄Π° ΠΌΡ‹ ΠΏΠ΅Ρ€Π΅Π΄Π°Π΅Ρ‚ ссылку слоТного Ρ‚ΠΈΠΏΠ° ΠΊΠ°ΠΊ любой ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€ ΠΌΠ΅Ρ‚ΠΎΠ΄Π°, всСгда адрСс памяти копируСтся Π² Π½ΠΎΠ²ΡƒΡŽ ΡΡΡ‹Π»ΠΎΡ‡Π½ΡƒΡŽ ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½ΡƒΡŽ шаг Π·Π° шагом. ΠŸΠΎΡΠΌΠΎΡ‚Ρ€ΠΈΡ‚Π΅ Π½Π° ΠΈΠ·ΠΎΠ±Ρ€Π°ΠΆΠ΅Π½ΠΈΠ΅:

    Π’ ΠΏΡ€ΠΈΠ²Π΅Π΄Π΅Π½Π½ΠΎΠΌ ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π΅, Π±ΠΈΡ‚Ρ‹ адрСса ΠΏΠ΅Ρ€Π²ΠΎΠ³ΠΎ экзСмпляра ΠΊΠΎΠΏΠΈΡ€ΡƒΡŽΡ‚ΡΡ Π΄Ρ€ΡƒΠ³ΠΎΠΉ ссылочной ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½ΠΎΠΉ, Π² Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚Π΅ Ρ‡Π΅Π³ΠΎ ΠΎΠ±Π΅ ссылки ΡƒΠΊΠ°Π·Ρ‹Π²Π°ΡŽΡ‚ Π½Π° ΠΎΠ΄ΠΈΠ½ участок памяти, Π³Π΄Π΅ хранится ΠΎΠ±ΡŠΠ΅ΠΊΡ‚. ΠŸΠΎΠΌΠ½ΠΈΡ‚Π΅, Ρ‡Ρ‚ΠΎ присвоив Π²Ρ‚ΠΎΡ€ΠΎΠΉ ссылкС null, Π²Ρ‹ Π½Π΅ присвоитС null ΠΏΠ΅Ρ€Π²ΠΎΠΉ ссылкС. Но ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠ΅ состояния ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π° с ΠΎΠ΄Π½ΠΎΠΉ ΡΡΡ‹Π»Π°ΡŽΡ‰Π΅ΠΉΡΡ ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½ΠΎΠΉ, Π±ΡƒΠ΄Π΅Ρ‚ ΠΎΡ‚ΠΎΠ±Ρ€Π°ΠΆΠ΅Π½ΠΎ ΠΈ Π² Π΄Ρ€ΡƒΠ³ΠΎΠΉ ссылкС.

    ΠŸΠΎΠ΄Ρ€ΠΎΠ±Π½ΠΎΡΡ‚ΠΈ смотритС Ρ‚ΡƒΡ‚.

  • КакоС ΠΏΡ€ΠΈΠΌΠ΅Π½Π΅Π½ΠΈΠ΅ Π±Π»ΠΎΠΊΠ° finally? Π“Π°Ρ€Π°Π½Ρ‚ΠΈΡ€ΡƒΠ΅Ρ‚ этот Π±Π»ΠΎΠΊ Π²Ρ‹ΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅ своСго ΠΊΠΎΠ΄Π°? Когда finally Π±Π»ΠΎΠΊ Π½Π΅ вызываСтся?

    Π‘Π»ΠΎΠΊ finally всСгда вызываСтся, Ссли Π±Π»ΠΎΠΊ try сущСствуСт. Π­Ρ‚ΠΎ Π³Π°Ρ€Π°Π½Ρ‚ΠΈΡ€ΡƒΠ΅Ρ‚, Ρ‡Ρ‚ΠΎ Π±Π»ΠΎΠΊ finally вызываСтся Π΄Π°ΠΆΠ΅, Ссли случаСтся Π½Π΅ΠΎΠΆΠΈΠ΄Π°Π½Π½ΠΎΠ΅ ΠΈΡΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠ΅. Но finally являСтся Π±ΠΎΠ»Π΅Π΅ ΠΏΠΎΠ»Π΅Π·Π½Ρ‹ΠΌ, Ρ‡Π΅ΠΌ просто для ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ ΠΈΡΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠΉ – этот Π±Π»ΠΎΠΊ позволяСт Π²Ρ‹ΠΏΠΎΠ»Π½ΠΈΡ‚ΡŒ чистку ΠΊΠΎΠ΄Π°, случайно обошСдшСго Ρ‡Π΅Ρ€Π΅Π· return, continue ΠΈΠ»ΠΈ break. Π Π°Π·ΠΌΠ΅Ρ‰Π΅Π½ΠΈΠ΅ ΠΎΡ‡ΠΈΡ‰Π°ΡŽΡ‰Π΅Π³ΠΎ ΠΊΠΎΠ΄Π° Π² Π±Π»ΠΎΠΊ finally всСгда являСтся Ρ…ΠΎΡ€ΠΎΡˆΠ΅ΠΉ ΠΏΡ€Π°ΠΊΡ‚ΠΈΠΊΠΎΠΉ, Π΄Π°ΠΆΠ΅ ΠΊΠΎΠ³Π΄Π° Π½Π΅ оТидаСтся Π½ΠΈΠΊΠ°ΠΊΠΈΡ… ΠΈΡΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠΉ.

    Если Π²ΠΈΡ€Ρ‚ΡƒΠ°Π»ΡŒΠ½Π°Ρ машина Π·Π°Π²Π΅Ρ€ΡˆΠ°Π΅Ρ‚ Ρ€Π°Π±ΠΎΡ‚Ρƒ Π²ΠΎ врСмя выполнСния Π±Π»ΠΎΠΊΠ° try ΠΈΠ»ΠΈ catch, Ρ‚ΠΎΠ³Π΄Π° Π±Π»ΠΎΠΊ finally Π½Π΅ Π±ΡƒΠ΄Π΅Ρ‚ Π²Ρ‹ΠΏΠΎΠ»Π½Π΅Π½. Аналогично, Ссли Π½ΠΈΡ‚ΡŒ, выполняя Π±Π»ΠΎΠΊ try ΠΈΠ»ΠΈ catch, Π±ΡƒΠ΄Π΅Ρ‚ ΠΏΡ€Π΅Ρ€Π²Π°Π½Π° ΠΈΠ»ΠΈ ΡƒΠ±ΠΈΡ‚Π°, Π±Π»ΠΎΠΊ finally Π½Π΅ Π±ΡƒΠ΄Π΅Ρ‚ Π²Ρ‹ΠΏΠΎΠ»Π½Π΅Π½, Π΄Π°ΠΆΠ΅ Π½Π΅ смотря Π½Π° Ρ‚ΠΎ, Ρ‡Ρ‚ΠΎ ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ ΠΏΡ€ΠΎΠ΄ΠΎΠ»ΠΆΠ°Π΅Ρ‚ Ρ€Π°Π±ΠΎΡ‚Π°Ρ‚ΡŒ.

  • ΠŸΠΎΡ‡Π΅ΠΌΡƒ сущСствуСт Π΄Π²Π° класса Date, ΠΎΠ΄ΠΈΠ½ Π² java.util package Π° Π΄Ρ€ΡƒΠ³ΠΎΠΉ Π² java.sql?

    java.util.Date прСдставляСт Π΄Π°Ρ‚Ρƒ ΠΈ врСмя, Π° java.sql.Date прСдставляСт Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Π΄Π°Ρ‚Ρƒ. Π”ΠΎΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅ΠΌ ΠΊ java.sql.Date являСтся класс java.sql.Time, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ прСдставляСт Ρ‚ΠΎΠ»ΡŒΠΊΠΎ врСмя.

    Класс java.sql.Date являСтся субклассом (Ρ€Π°ΡΡˆΠΈΡ€Π΅Π½ΠΈΠ΅ΠΌ) класса java.util.Date. Π˜Ρ‚Π°ΠΊ, Ρ‡Ρ‚ΠΎ измСнилось Π² java.sql.Date:

    • toString() Ρ„ΠΎΡ€ΠΌΠΈΡ€ΡƒΠ΅Ρ‚ Π΄Ρ€ΡƒΠ³ΠΎΠ΅ прСдставлСниС строки: yyyy-mm-dd
    • статичСский ΠΌΠ΅Ρ‚ΠΎΠ΄ valueOf(String) создаСт Π΄Π°Ρ‚Ρƒ ΠΈΠ· строки с Π²Ρ‹ΡˆΠ΅ΡƒΠΊΠ°Π·Π°Π½Π½Ρ‹ΠΌ прСдставлСниСм
    • ΠΈΡΠΊΠ»ΡŽΡ‡Π΅Π½Ρ‹ Π³Π΅Ρ‚Ρ‚Π΅Ρ€Ρ‹ ΠΈ сСттСры для часов, ΠΌΠΈΠ½ΡƒΡ‚ ΠΈ сСкунд

    Класс java.sql.Date ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ Π² JDBC ΠΈ ΠΏΡ€Π΅Π΄Π½Π°Π·Π½Π°Ρ‡Π΅Π½, Ρ‡Ρ‚ΠΎΠ±Ρ‹ Π½Π΅ ΠΈΠΌΠ΅Ρ‚ΡŒ ΡΠΎΡΡ‚Π°Π²Π»ΡΡŽΡ‰ΡƒΡŽ Π²Ρ€Π΅ΠΌΠ΅Π½ΠΈ, Ρ‚ΠΎ Π΅ΡΡ‚ΡŒ часы, ΠΌΠΈΠ½ΡƒΡ‚Ρ‹, сСкунды ΠΈ миллисСкунды Π΄ΠΎΠ»ΠΆΠ½Ρ‹ Π±Ρ‹Ρ‚ΡŒ Π½ΡƒΠ»ΡŽβ€¦ Π½ΠΎ это Π½Π΅ являСтся ΠΎΠ±ΡΠ·Π°Ρ‚Π΅Π»ΡŒΠ½Ρ‹ΠΌ для класса.

  • Π Π°Π·ΡŠΡΡΠ½ΠΈΡ‚Π΅ интСрфСйсы-ΠΌΠ°Ρ€ΠΊΠ΅Ρ€Ρ‹.

    Π¨Π°Π±Π»ΠΎΠ½ интСрфСйса-ΠΌΠ°Ρ€ΠΊΠ΅Ρ€Π° – это шаблон проСктирования Π² ΠΊΠΎΠΌΠΏΡŒΡŽΡ‚Π΅Ρ€Π½Ρ‹Ρ… Π½Π°ΡƒΠΊΠ°Ρ…, ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅ΠΌΡ‹ΠΉ языками программирования, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΏΡ€Π΅Π΄ΠΎΡΡ‚Π°Π²Π»ΡΡŽΡ‚ ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΡŽ ΠΎΠ± ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π°Ρ… Π²ΠΎ врСмя выполнСния. Π­Ρ‚ΠΎ прСдоставляСт способ ассоциации ΠΌΠ΅Ρ‚Π°Π΄Π°Π½Π½Ρ‹Ρ… класса, Π³Π΄Π΅ язык Π½Π΅ ΠΈΠΌΠ΅Π΅Ρ‚ явной ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠΈ Ρ‚Π°ΠΊΠΈΡ… ΠΌΠ΅Ρ‚Π°Π΄Π°Π½Π½Ρ‹Ρ…. Π’ Java для этого ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽΡ‚ΡΡ интСрфСйсы Π±Π΅Π· указания ΠΌΠ΅Ρ‚ΠΎΠ΄ΠΎΠ².

    Π₯ΠΎΡ€ΠΎΡˆΠΈΠΌ ΠΏΡ€ΠΈΠΌΠ΅Ρ€ΠΎΠΌ примСнСния интСрфСйса-ΠΌΠ°Ρ€ΠΊΠ΅Ρ€Π° Π² Java являСтся интСрфСйс Serializable. Класс Ρ€Π΅Π°Π»ΠΈΠ·ΡƒΠ΅Ρ‚ этот интСрфСйс для указания, Ρ‡Ρ‚ΠΎ Π΅Π³ΠΎ Π½Π΅ transient Π΄Π°Π½Π½Ρ‹Π΅ ΠΌΠΎΠ³ΡƒΡ‚ Π±Ρ‹Ρ‚ΡŒ записаны Π² ΠΏΠΎΡ‚ΠΎΠΊ Π±Π°ΠΉΡ‚ΠΎΠ² ΠΈΠ»ΠΈ Π½Π° Ρ„Π°ΠΉΠ»ΠΎΠ²ΡƒΡŽ систСму.

    Π“Π»Π°Π²Π½ΠΎΠΉ ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΠΎΠΉ интСрфСйса-ΠΌΠ°Ρ€ΠΊΠ΅Ρ€Π° являСтся Ρ‚ΠΎ, Ρ‡Ρ‚ΠΎ интСрфСйс опрСдСляСт соглашСниС для Ρ€Π΅Π°Π»ΠΈΠ·ΡƒΡŽΡ‰ΠΈΡ… Π΅Π³ΠΎ классов, ΠΈ это соглашСниС наслСдуСтся всСми субклассами. Π­Ρ‚ΠΎ Π·Π½Π°Ρ‡ΠΈΡ‚, Ρ‡Ρ‚ΠΎ Π²Ρ‹ Π½Π΅ смоТСтС Β«Π΄Π΅-Ρ€Π΅Π°Π»ΠΈΠ·ΠΎΠ²Π°Ρ‚ΡŒΒ» ΠΌΠ°Ρ€ΠΊΠ΅Ρ€. Π’ ΠΏΡ€ΠΈΠ²Π΅Π΄Π΅Π½Π½ΠΎΠΌ ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π΅, Ссли Π²Ρ‹ создадитС субкласс, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ Π²Ρ‹ Π±Ρ‹ Π½Π΅ Ρ…ΠΎΡ‚Π΅Π»ΠΈ ΡΠ΅Ρ€ΠΈΠ°Π»ΠΈΠ·ΠΎΠ²Π°Ρ‚ΡŒ (Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎ ΠΏΠΎΡ‚ΠΎΠΌΡƒ, Ρ‡Ρ‚ΠΎ ΠΎΠ½ находится Π² прСходящСм (transient) состоянии), Π²Ρ‹ Π΄ΠΎΠ»ΠΆΠ½Ρ‹ ΠΏΡ€ΠΈΠ±Π΅Π³Π½ΡƒΡ‚ΡŒ ΠΊ явному Π±Ρ€ΠΎΡΠ°Π½ΠΈΡŽ NotSerializableException.

  • ΠŸΠΎΡ‡Π΅ΠΌΡƒ ΠΌΠ΅Ρ‚ΠΎΠ΄ main() объявлСн ΠΊΠ°ΠΊ public static void?

    ΠŸΠΎΡ‡Π΅ΠΌΡƒ public? ΠœΠ΅Ρ‚ΠΎΠ΄ main ΠΈΠΌΠ΅Π΅Ρ‚ ΠΌΠΎΠ΄ΠΈΡ„ΠΈΠΊΠ°Ρ‚ΠΎΡ€ доступа public, поэтому ΠΎΠ½ ΠΌΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ доступСн Π²Π΅Π·Π΄Π΅ ΠΈ для любого ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π°, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ Π·Π°Ρ…ΠΎΡ‡Π΅Ρ‚ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ этот ΠΌΠ΅Ρ‚ΠΎΠ΄ для запуска прилоТСния. Π’ΡƒΡ‚ я Π½Π΅ Π³ΠΎΠ²ΠΎΡ€ΡŽ, Ρ‡Ρ‚ΠΎ JDK/JRE ΠΈΠΌΠ΅ΡŽΡ‚ ΠΏΠΎΠ΄ΠΎΠ±Π½Ρ‹ΠΉ ΠΏΠΎΠ²ΠΎΠ΄, ΠΏΠΎΡΠΊΠΎΠ»ΡŒΠΊΡƒ java.exe ΠΈΠ»ΠΈ javaw.exe (для windows) ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽΡ‚ Java Native Interface (JNI) Π²Ρ‹Π·ΠΎΠ² для запуска ΠΌΠ΅Ρ‚ΠΎΠ΄Π°, поэтому ΠΎΠ½ΠΈ ΠΌΠΎΠ³ΡƒΡ‚ Π²Ρ‹Π·Π²Π°Ρ‚ΡŒ Π΅Π³ΠΎ Π² любом случаС, нСзависимо ΠΎΡ‚ ΠΌΠΎΠ΄ΠΈΡ„ΠΈΠΊΠ°Ρ‚ΠΎΡ€Π° доступа.

    ΠŸΠΎΡ‡Π΅ΠΌΡƒ static? Π”Π°Π²Π°ΠΉΡ‚Π΅ ΠΏΡ€Π΅Π΄ΠΏΠΎΠ»ΠΎΠΆΠΈΠΌ, Ρ‡Ρ‚ΠΎ Ρƒ нас ΠΌΠ΅Ρ‚ΠΎΠ΄ main Π½Π΅ статичСский. Π’Π΅ΠΏΠ΅Ρ€ΡŒ, для Π²Ρ‹Π·ΠΎΠ²Π° любого ΠΌΠ΅Ρ‚ΠΎΠ΄Π° Π²Π°ΠΌ Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌ экзСмпляр класса. Π’Π΅Ρ€Π½ΠΎ? Java Ρ€Π°Π·Ρ€Π΅ΡˆΠ°Π΅Ρ‚ ΠΈΠΌΠ΅Ρ‚ΡŒ ΠΏΠ΅Ρ€Π΅Π³Ρ€ΡƒΠΆΠ΅Π½Π½Ρ‹Π΅ конструкторы, это ΠΌΡ‹ всС Π·Π½Π°Π΅ΠΌ. Π’ΠΎΠ³Π΄Π° ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ ΠΈΠ· Π½ΠΈΡ… Π΄ΠΎΠ»ΠΆΠ΅Π½ Π±Ρ‹Ρ‚ΡŒ использован, ΠΈ ΠΎΡ‚ΠΊΡƒΠ΄Π° Π²ΠΎΠ·ΡŒΠΌΡƒΡ‚ΡΡ ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€Ρ‹ для ΠΏΠ΅Ρ€Π΅Π³Ρ€ΡƒΠΆΠ΅Π½Π½ΠΎΠ³ΠΎ конструктора?

    ΠŸΠΎΡ‡Π΅ΠΌΡƒ void? НСт примСнСния для Π²ΠΎΠ·Π²Ρ€Π°Ρ‰Π°Π΅ΠΌΠΎΠ³ΠΎ значСния Π² Π²ΠΈΡ€Ρ‚ΡƒΠ°Π»ΡŒΠ½ΠΎΠΉ машинС, которая фактичСски Π²Ρ‹Π·Ρ‹Π²Π°Π΅Ρ‚ этот ΠΌΠ΅Ρ‚ΠΎΠ΄. ЕдинствСнноС, Ρ‡Ρ‚ΠΎ ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ Π·Π°Ρ…ΠΎΡ‡Π΅Ρ‚ ΡΠΎΠΎΠ±Ρ‰ΠΈΡ‚ΡŒ Π²Ρ‹Π·Π²Π°Π²ΡˆΠ΅ΠΌΡƒ процСссу – это Π½ΠΎΡ€ΠΌΠ°Π»ΡŒΠ½ΠΎΠ΅ ΠΈΠ»ΠΈ Π½Π΅Π½ΠΎΡ€ΠΌΠ°Π»ΡŒΠ½ΠΎΠ΅ Π·Π°Π²Π΅Ρ€ΡˆΠ΅Π½ΠΈΠ΅. Π­Ρ‚ΠΎ ΡƒΠΆΠ΅ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡ System.exit(int). НС Π½ΡƒΠ»Π΅Π²ΠΎΠ΅ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ ΠΏΠΎΠ΄Ρ€Π°Π·ΡƒΠΌΠ΅Π²Π°Π΅Ρ‚ Π½Π΅Π½ΠΎΡ€ΠΌΠ°Π»ΡŒΠ½ΠΎΠ΅ Π·Π°Π²Π΅Ρ€ΡˆΠ΅Π½ΠΈΠ΅, ΠΈΠ½Π°Ρ‡Π΅ всС Π² порядкС.

  • Π’ Ρ‡Π΅ΠΌ Ρ€Π°Π·Π½ΠΈΡ†Π° ΠΌΠ΅ΠΆΠ΄Ρƒ созданиСм строки ΠΊΠ°ΠΊ new() ΠΈ Π»ΠΈΡ‚Π΅Ρ€Π°Π»ΠΎΠΌ (ΠΏΡ€ΠΈ ΠΏΠΎΠΌΠΎΡ‰ΠΈ Π΄Π²ΠΎΠΉΠ½Ρ‹Ρ… ΠΊΠ°Π²Ρ‹Ρ‡Π΅ΠΊ)?

    Когда ΠΌΡ‹ создаСм строку ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡ new(), ΠΎΠ½Π° создаСтся Π² Ρ…ΠΈΠΏΠ΅ ΠΈ Ρ‚Π°ΠΊΠΆΠ΅ добавляСтся Π² ΠΏΡƒΠ» строк, Π² Ρ‚ΠΎ ΠΆΠ΅ врСмя строка, созданная ΠΏΡ€ΠΈ ΠΏΠΎΠΌΠΎΡ‰ΠΈ Π»ΠΈΡ‚Π΅Ρ€Π°Π»Π°, создаСтся Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Π² ΠΏΡƒΠ»Π΅ строк.

    Π’Π°ΠΌ Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ ΠΎΠ·Π½Π°ΠΊΠΎΠΌΠΈΡ‚ΡŒΡΡ с понятиСм ΠΏΡƒΠ»Π° строк Π³Π»ΡƒΠ±ΠΆΠ΅, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΎΡ‚Π²Π΅Ρ‚ΠΈΡ‚ΡŒ Π½Π° этот ΠΈΠ»ΠΈ ΠΏΠΎΠ΄ΠΎΠ±Π½Ρ‹Π΅ вопросы. Мой совСт – ΠΊΠ°ΠΊ слСдуСт Π²Ρ‹ΡƒΡ‡ΠΈΡ‚Π΅ класс String ΠΈ ΠΏΡƒΠ» строк.

    Π£ нас Π² ΠΏΠ΅Ρ€Π΅Π²ΠΎΠ΄Π°Ρ… ΡƒΠΆΠ΅ Π΅ΡΡ‚ΡŒ Ρ…ΠΎΡ€ΠΎΡˆΠ°Ρ ΡΡ‚Π°Ρ‚ΡŒΡ ΠΎ строках ΠΈ строковом ΠΏΡƒΠ»Π΅: Π§Π°ΡΡ‚ΡŒ 1, Π§Π°ΡΡ‚ΡŒ 2.
  • Как Ρ€Π°Π±ΠΎΡ‚Π°Π΅Ρ‚ ΠΌΠ΅Ρ‚ΠΎΠ΄ substring() класса String?

    Как ΠΈ Π² Π΄Ρ€ΡƒΠ³ΠΈΡ… языках программирования, строки Π² Java ΡΠ²Π»ΡΡŽΡ‚ΡΡ ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΡŒΡŽ символов. Π­Ρ‚ΠΎΡ‚ класс большС ΠΏΠΎΡ…ΠΎΠΆ Π½Π° слуТСбный класс для Ρ€Π°Π±ΠΎΡ‚Ρ‹ с этой ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΡŒΡŽ. ΠŸΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΡŒ символов обСспСчиваСтся ΡΠ»Π΅Π΄ΡƒΡŽΡ‰Π΅ΠΉ ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½ΠΎΠΉ:

    
    /** The value is used for character storage. */ 
    /** Π—Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ для хранСния символов */
    private final char value[];
    Для доступа ΠΊ этому массиву Π² Ρ€Π°Π·Π»ΠΈΡ‡Π½Ρ‹Ρ… сцСнариях ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽΡ‚ΡΡ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠ΅ ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Π΅
    /** The offset is the first index of the storage that is used. */
    /** Π‘ΠΌΠ΅Ρ‰Π΅Π½ΠΈΠ΅ – это ΠΏΠ΅Ρ€Π²Ρ‹ΠΉ индСкс ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅ΠΌΠΎΠ³ΠΎ Ρ…Ρ€Π°Π½ΠΈΠ»ΠΈΡ‰Π°. */
    private final int offset;
    
    /** The count is the number of characters in the String. */
    /** Π‘Ρ‡Π΅Ρ‚ – это количСство символов Π² строкС. */
    private final int count;
    

    ΠšΠ°ΠΆΠ΄Ρ‹ΠΉ Ρ€Π°Π·, ΠΊΠΎΠ³Π΄Π° ΠΌΡ‹ создаСм подстроку ΠΎΡ‚ ΡΡƒΡ‰Π΅ΡΡ‚Π²ΡƒΡŽΡ‰Π΅Π³ΠΎ экзСмпляра строки, ΠΌΠ΅Ρ‚ΠΎΠ΄ substring() Ρ‚ΠΎΠ»ΡŒΠΊΠΎ устанавливаСт Π½ΠΎΠ²Ρ‹Π΅ значСния ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Ρ… offset ΠΈ count. Π’Π½ΡƒΡ‚Ρ€Π΅Π½Π½ΠΈΠΉ массив символов Π½Π΅ измСняСтся. Π­Ρ‚ΠΎ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½Ρ‹ΠΉ источник ΡƒΡ‚Π΅Ρ‡ΠΊΠΈ памяти, Ссли ΠΌΠ΅Ρ‚ΠΎΠ΄ substring() ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ нСостороТно:

    ΠŸΠ΅Ρ€Π²ΠΎΠ½Π°Ρ‡Π°Π»ΡŒΠ½ΠΎΠ΅ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ value[] Π½Π΅ измСняСтся. ΠŸΠΎΡΡ‚ΠΎΠΌΡƒ Ссли Π²Ρ‹ создадитС строку Π΄Π»ΠΈΠ½ΠΎΠΉ 10000 символов ΠΈ создадитС 100 подстрок с 5-10 символами Π² ΠΊΠ°ΠΆΠ΄ΠΎΠΉ, всС 101 ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Ρ‹ Π±ΡƒΠ΄ΡƒΡ‚ ΡΠΎΠ΄Π΅Ρ€ΠΆΠ°Ρ‚ΡŒ ΠΎΠ΄ΠΈΠ½ ΠΈ Ρ‚ΠΎΡ‚ ΠΆΠ΅ ΡΠΈΠΌΠ²ΠΎΠ»ΡŒΠ½Ρ‹ΠΉ массив Π΄Π»ΠΈΠ½ΠΎΠΉ 10000 символов. Π­Ρ‚ΠΎ Π±Π΅Π· сомнСния Ρ€Π°ΡΡ‚ΠΎΡ‡ΠΈΡ‚Π΅Π»ΡŒΡΡ‚Π²ΠΎ памяти.

    Π­Ρ‚ΠΎΠ³ΠΎ ΠΌΠΎΠΆΠ½ΠΎ ΠΈΠ·Π±Π΅ΠΆΠ°Ρ‚ΡŒ, ΠΈΠ·ΠΌΠ΅Π½ΠΈΠ² ΠΊΠΎΠ΄ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠΌ ΠΎΠ±Ρ€Π°Π·ΠΎΠΌ:

    Π·Π°ΠΌΠ΅Π½ΠΈΡ‚ΡŒ original.substring(beginIndex) Π½Π° new String(original.substring(beginIndex)),
    Π³Π΄Π΅ original – исходная строка.

    ΠŸΡ€ΠΈΠΌΠ΅Ρ‡Π°Π½ΠΈΠ΅ ΠΏΠ΅Ρ€Π΅Π²ΠΎΠ΄Ρ‡ΠΈΠΊΠ°: я Π·Π°Ρ‚Ρ€ΡƒΠ΄Π½ΡΡŽΡΡŒ ΡΠΊΠ°Π·Π°Ρ‚ΡŒ ΠΊ ΠΊΠ°ΠΊΠΎΠΉ вСрсии Java это ΠΏΡ€ΠΈΠΌΠ΅Π½ΠΈΠΌΠΎ, Π½ΠΎ Π½Π° Π΄Π°Π½Π½Ρ‹ΠΉ ΠΌΠΎΠΌΠ΅Π½Ρ‚ Π² Java 7 этот ΠΏΡƒΠ½ΠΊΡ‚ ΡΡ‚Π°Ρ‚ΡŒΠΈ Π½Π΅ Π°ΠΊΡ‚ΡƒΠ°Π»Π΅Π½. ΠœΠ΅Ρ‚ΠΎΠ΄ substring() Π²Ρ‹Π·Ρ‹Π²Π°Π΅Ρ‚ конструктор класса new String(value, beginIndex, subLen), ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ Π² свою ΠΎΡ‡Π΅Ρ€Π΅Π΄ΡŒ обращаСтся ΠΊ ΠΌΠ΅Ρ‚ΠΎΠ΄Ρƒ Arrays.copyOfRange(value, offset, offset+count). Π­Ρ‚ΠΎ Π·Π½Π°Ρ‡ΠΈΡ‚, Ρ‡Ρ‚ΠΎ Ρƒ нас Π±ΡƒΠ΄Π΅Ρ‚ ΠΊΠ°ΠΆΠ΄Ρ‹ΠΉ Ρ€Π°Π· Π½ΠΎΠ²ΠΎΠ΅ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½ΠΎΠΉ value[], содСрТащСС нашС Π½ΠΎΠ²ΠΎΠ΅ количСство символов.
  • ΠžΠ±ΡŠΡΡΠ½ΠΈΡ‚Π΅ Ρ€Π°Π±ΠΎΡ‚Ρƒ HashMap. Как Ρ€Π΅ΡˆΠ΅Π½Π° ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΠ° Π΄ΡƒΠ±Π»ΠΈΠΊΠ°Ρ‚ΠΎΠ²?

    Π‘ΠΎΠ»ΡŒΡˆΠΈΠ½ΡΡ‚Π²ΠΎ ΠΈΠ· вас навСрняка согласится, Ρ‡Ρ‚ΠΎ HashMap Π½Π°ΠΈΠ±ΠΎΠ»Π΅Π΅ любимая Ρ‚Π΅ΠΌΠ° для дискуссий Π½Π° ΠΈΠ½Ρ‚Π΅Ρ€Π²ΡŒΡŽ Π² настоящСС врСмя. Если ΠΊΡ‚ΠΎ-Π½ΠΈΠ±ΡƒΠ΄ΡŒ попросит мСня Ρ€Π°ΡΡΠΊΠ°Π·Π°Ρ‚ΡŒ «Как Ρ€Π°Π±ΠΎΡ‚Π°Π΅Ρ‚ HashMap?Β», я просто ΠΎΡ‚Π²Π΅Ρ‡Ρƒ: «По ΠΏΡ€ΠΈΠ½Ρ†ΠΈΠΏΡƒ Ρ…ΡΡˆΠΈΡ€ΠΎΠ²Π°Π½ΠΈΡΒ». Π’Π°ΠΊ просто, ΠΊΠ°ΠΊ это Π΅ΡΡ‚ΡŒ.

    Π˜Ρ‚Π°ΠΊ, Ρ…Π΅ΡˆΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ ΠΏΠΎ сути являСтся способом Π½Π°Π·Π½Π°Ρ‡ΠΈΡ‚ΡŒ ΡƒΠ½ΠΈΠΊΠ°Π»ΡŒΠ½Ρ‹ΠΉ ΠΊΠΎΠ΄ для любой ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½ΠΎΠΉ/ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π° послС примСнСния любой Ρ„ΠΎΡ€ΠΌΡƒΠ»Ρ‹/Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌΠ° ΠΊ своим свойствам.

    ΠžΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½ΠΈΠ΅ ΠΊΠ°Ρ€Ρ‚Ρ‹ (Map) Ρ‚Π°ΠΊΠΎΠ²ΠΎ: Β«ΠžΠ±ΡŠΠ΅ΠΊΡ‚, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ привязываСт ΠΊΠ»ΡŽΡ‡ΠΈ ΠΊ значСниям». ΠžΡ‡Π΅Π½ΡŒ просто, Π²Π΅Ρ€Π½ΠΎ? Π˜Ρ‚Π°ΠΊ, HashMap содСрТит собствСнный Π²Π½ΡƒΡ‚Ρ€Π΅Π½Π½ΠΈΠΉ класс Entry, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ ΠΈΠΌΠ΅Π΅Ρ‚ Π²ΠΈΠ΄:

    
    static class Entry implements Map.Entry
    {
    final K key;
    V value;
    Entry next;
    final int hash;
    …//More code goes here
    }
    

    Когда ΠΊΡ‚ΠΎ-Π»ΠΈΠ±ΠΎ пытаСтся ΠΏΠΎΠΌΠ΅ΡΡ‚ΠΈΡ‚ΡŒ ΠΏΠ°Ρ€Ρƒ ΠΊΠ»ΡŽΡ‡-Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ Π² HashMap, происходит ΡΠ»Π΅Π΄ΡƒΡŽΡ‰Π΅Π΅:

    • Π’ ΠΏΠ΅Ρ€Π²ΡƒΡŽ ΠΎΡ‡Π΅Ρ€Π΅Π΄ΡŒ, ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ ΠΊΠ»ΡŽΡ‡Π° провСряСтся Π½Π° null. Если ΠΊΠ»ΡŽΡ‡ null, Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ сохраняСтся Π² ΠΏΠΎΠ·ΠΈΡ†ΠΈΡŽ table[0]. ΠŸΠΎΡ‚ΠΎΠΌΡƒ Ρ‡Ρ‚ΠΎ Ρ…ΡΡˆΠΊΠΎΠ΄ для null всСгда 0.
    • Π—Π°Ρ‚Π΅ΠΌ, ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠΌ шагом вычисляСтся Ρ…ΡΡˆ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ вызывая Ρƒ ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½ΠΎΠΉ-ΠΊΠ»ΡŽΡ‡Π° свой ΠΌΠ΅Ρ‚ΠΎΠ΄ hashCode(). Π­Ρ‚ΠΎΡ‚ Ρ…ΡΡˆ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ для вычислСния индСкса Π² массивС для Ρ…Ρ€Π°Π½Π΅Π½ΠΈΠ΅ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π° Entry. Π Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠΈ JDK прСкрасно ΠΏΠΎΠ½ΠΈΠΌΠ°Π»ΠΈ, Ρ‡Ρ‚ΠΎ ΠΌΠ΅Ρ‚ΠΎΠ΄ hashCode() ΠΌΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ ΠΏΠ»ΠΎΡ…ΠΎ написан ΠΈ ΠΌΠΎΠΆΠ΅Ρ‚ Π²ΠΎΠ·Π²Ρ€Π°Ρ‰Π°Ρ‚ΡŒ ΠΎΡ‡Π΅Π½ΡŒ большоС ΠΈΠ»ΠΈ ΠΎΡ‡Π΅Π½ΡŒ малСнькоС Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅. Для Ρ€Π΅ΡˆΠ΅Π½ΠΈΡ этой ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΡ‹ ΠΎΠ½ΠΈ Π²Π²Π΅Π»ΠΈ Π΄Ρ€ΡƒΠ³ΠΎΠΉ hash() ΠΌΠ΅Ρ‚ΠΎΠ΄, ΠΈ ΠΏΠ΅Ρ€Π΅Π΄Π°ΡŽΡ‚ Ρ…ΡΡˆΠΊΠΎΠ΄ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π° этому ΠΌΠ΅Ρ‚ΠΎΠ΄Ρƒ для привСдСния этого значСния ΠΊ Π΄ΠΈΠ°ΠΏΠ°Π·ΠΎΠ½Ρƒ Ρ€Π°Π·ΠΌΠ΅Ρ€Π° индСкса массива.
    • Π’Π΅ΠΏΠ΅Ρ€ΡŒ вызываСтся ΠΌΠ΅Ρ‚ΠΎΠ΄ indexFor(hash, table.length) для вычислСния Ρ‚ΠΎΡ‡Π½ΠΎΠΉ ΠΏΠΎΠ·ΠΈΡ†ΠΈΠΈ для хранСния ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π° Entry.
    • Π’Π΅ΠΏΠ΅Ρ€ΡŒ главная Ρ‡Π°ΡΡ‚ΡŒ. Как ΠΌΡ‹ Π·Π½Π°Π΅ΠΌ, Π΄Π²Π° Π½Π΅ΠΎΠ΄ΠΈΠ½Π°ΠΊΠΎΠ²Ρ‹Ρ… ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π° ΠΌΠΎΠ³ΡƒΡ‚ ΠΈΠΌΠ΅Ρ‚ΡŒ ΠΎΠ΄ΠΈΠ½Π°ΠΊΠΎΠ²ΠΎΠ΅ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ Ρ…ΡΡˆΠΊΠΎΠ΄Π°, ΠΊΠ°ΠΊ Π΄Π²Π° Ρ€Π°Π·Π½Ρ‹Ρ… ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π° Π±ΡƒΠ΄Π΅Ρ‚ Ρ…Ρ€Π°Π½ΠΈΡ‚ΡŒΡΡ Π² ΠΎΠ΄ΠΈΠ½Π°ΠΊΠΎΠ²ΠΎΠΌ располоТСнии Π² Π°Ρ€Ρ…ΠΈΠ²Π΅ [называСтся ΠΊΠΎΡ€Π·ΠΈΠ½ΠΎΠΉ]?

    ΠžΡ‚Π²Π΅Ρ‚ – LinkedList. Если Π²Ρ‹ ΠΏΠΎΠΌΠ½ΠΈΡ‚Π΅, класс Entry ΠΈΠΌΠ΅Π΅Ρ‚ свойство β€œnext”. Π­Ρ‚ΠΎ свойство всСгда ΡƒΠΊΠ°Π·Ρ‹Π²Π°Π΅Ρ‚ Π½Π° ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠΉ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ Π² Ρ†Π΅ΠΏΠΈ. Π’Π°ΠΊΠΎΠ΅ ΠΏΠΎΠ²Π΅Π΄Π΅Π½ΠΈΠ΅ ΠΎΡ‡Π΅Π½ΡŒ ΠΏΠΎΡ…ΠΎΠΆΠ΅ Π½Π° LinkedList.

    Π˜Ρ‚Π°ΠΊ, Π² случаС совпадСний Ρ…ΡΡˆΠΊΠΎΠ΄ΠΎΠ², ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Ρ‹ Entry хранятся Π² Ρ„ΠΎΡ€ΠΌΠ΅ LinkedList. Когда ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ Entry Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ Ρ€Π°Π·ΠΌΠ΅ΡΡ‚ΠΈΡ‚ΡŒ Π½Π° ΠΊΠΎΠ½ΠΊΡ€Π΅Ρ‚Π½ΠΎΠΌ индСксС, HashMap провСряСт, сущСствуСт Π»ΠΈ Π½Π° этом мСстС Π΄Ρ€ΡƒΠ³ΠΎΠΉ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ Entry? Если Ρ‚Π°ΠΌ Π½Π΅Ρ‚ записи, наш ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ сохранится Π² этом мСстС.

    Если Π½Π° нашСм индСксС ΡƒΠΆΠ΅ находится Π΄Ρ€ΡƒΠ³ΠΎΠΉ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚, провСряСтся Π΅Π³ΠΎ ΠΏΠΎΠ»Π΅ next. Если ΠΎΠ½ΠΎ Ρ€Π°Π²Π½ΠΎ null, наш ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ становится ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠΌ ΡƒΠ·Π»ΠΎΠΌ Π² LinkedList. Если next Π½Π΅ Ρ€Π°Π²Π½ΠΎ null, эта ΠΏΡ€ΠΎΡ†Π΅Π΄ΡƒΡ€Π° повторяСтся, ΠΏΠΎΠΊΠ° Π½Π΅ Π±ΡƒΠ΄Π΅Ρ‚ Π½Π°ΠΉΠ΄Π΅Π½ΠΎ ΠΏΠΎΠ»Π΅ next Ρ€Π°Π²Π½ΠΎΠ΅ null.

    Π§Ρ‚ΠΎ Π±ΡƒΠ΄Π΅Ρ‚, Ссли ΠΌΡ‹ Π΄ΠΎΠ±Π°Π²ΠΈΠΌ Π΄Ρ€ΡƒΠ³ΠΎΠ΅ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ ΠΊΠ»ΡŽΡ‡Π°, Ρ€Π°Π²Π½ΠΎΠ΅ Π΄ΠΎΠ±Π°Π²Π»Π΅Π½Π½ΠΎΠΌΡƒ Ρ€Π°Π½Π΅Π΅? Π›ΠΎΠ³ΠΈΡ‡Π½ΠΎ, Ρ‡Ρ‚ΠΎ ΠΎΠ½ΠΎ Π΄ΠΎΠ»ΠΆΠ½ΠΎ Π·Π°ΠΌΠ΅Π½ΠΈΡ‚ΡŒ староС Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅. Как это происходит? ПослС опрСдСлСния индСкса ΠΏΠΎΠ·ΠΈΡ†ΠΈΠΈ для ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π° Entry, пробСгая ΠΏΠΎ LinkedList, располоТСнному Π½Π° нашСм индСксС, HashMap Π²Ρ‹Π·Ρ‹Π²Π°Π΅Ρ‚ ΠΌΠ΅Ρ‚ΠΎΠ΄ equals() для значСния ΠΊΠ»ΡŽΡ‡Π° для ΠΊΠ°ΠΆΠ΄ΠΎΠ³ΠΎ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π° Entry. ВсС эти ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Ρ‹ Entry Π² LinkedList ΠΈΠΌΠ΅ΡŽΡ‚ ΠΎΠ΄ΠΈΠ½Π°ΠΊΠΎΠ²ΠΎΠ΅ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ Ρ…ΡΡˆΠΊΠΎΠ΄Π°, Π½ΠΎ ΠΌΠ΅Ρ‚ΠΎΠ΄ equals() Π±ΡƒΠ΄Π΅Ρ‚ ΠΏΡ€ΠΎΠ²Π΅Ρ€ΡΡ‚ΡŒ Π½Π° настоящСС равСнство. Если ΠΊΠ»ΡŽΡ‡.equals(k) Π±ΡƒΠ΄Π΅Ρ‚ true, Ρ‚ΠΎΠ³Π΄Π° ΠΎΠ±Π° Π±ΡƒΠ΄ΡƒΡ‚ Π²ΠΎΡΠΏΡ€ΠΈΠ½ΠΈΠΌΠ°Ρ‚ΡŒΡΡ ΠΊΠ°ΠΊ ΠΎΠ΄ΠΈΠ½Π°ΠΊΠΎΠ²Ρ‹ΠΉ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚. Π­Ρ‚ΠΎ Π²Ρ‹Π·ΠΎΠ²Π΅Ρ‚ Π·Π°ΠΌΠ΅Π½Ρƒ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π°-Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ Π²Π½ΡƒΡ‚Ρ€ΠΈ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π° Entry.

    Π’Π°ΠΊΠΈΠΌ ΠΎΠ±Ρ€Π°Π·ΠΎΠΌ HashMap обСспСчиваСт ΡƒΠ½ΠΈΠΊΠ°Π»ΡŒΠ½ΠΎΡΡ‚ΡŒ ΠΊΠ»ΡŽΡ‡Π΅ΠΉ.

  • Различия ΠΌΠ΅ΠΆΠ΄Ρƒ интСрфСйсами ΠΈ абстрактными классами?

    Π­Ρ‚ΠΎ ΠΎΡ‡Π΅Π½ΡŒ распространСнный вопрос, Ссли Π²Ρ‹ ΠΏΡ€ΠΎΡ…ΠΎΠ΄ΠΈΡ‚Π΅ собСсСдованиС Π½Π° программиста уровня junior. НаиболСС Π·Π½Π°Ρ‡ΠΈΠΌΡ‹Π΅ различия ΠΏΡ€ΠΈΠ²Π΅Π΄Π΅Π½Ρ‹ Π½ΠΈΠΆΠ΅:

    • Π’ интСрфСйсах Java ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Π΅ Π°ΠΏΡ€ΠΈΠΎΡ€ΠΈ final. АбстрактныС классы ΠΌΠΎΠ³ΡƒΡ‚ ΡΠΎΠ΄Π΅Ρ€ΠΆΠ°Ρ‚ΡŒ Π½Π΅ final ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Π΅.
    • Π˜Π½Ρ‚Π΅Ρ€Ρ„Π΅ΠΉΡ Π² Java Π±Π΅Π·ΠΎΠ³ΠΎΠ²ΠΎΡ€ΠΎΡ‡Π½ΠΎ Π½Π΅ ΠΌΠΎΠΆΠ΅Ρ‚ ΠΈΠΌΠ΅Ρ‚ΡŒ Ρ€Π΅Π°Π»ΠΈΠ·Π°Ρ†ΠΈΠΈ. Абстрактный класс ΠΌΠΎΠΆΠ΅Ρ‚ ΠΈΠΌΠ΅Ρ‚ΡŒ экзСмпляры ΠΌΠ΅Ρ‚ΠΎΠ΄ΠΎΠ², ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Ρ€Π΅Π°Π»ΠΈΠ·ΡƒΡŽΡ‚ Π±Π°Π·ΠΎΠ²ΠΎΠ΅ ΠΏΠΎΠ²Π΅Π΄Π΅Π½ΠΈΠ΅.
    • Π‘ΠΎΡΡ‚Π°Π²Π»ΡΡŽΡ‰ΠΈΠ΅ интСрфСйса Π΄ΠΎΠ»ΠΆΠ½Ρ‹ Π±Ρ‹Ρ‚ΡŒ public. Абстрактный класс ΠΌΠΎΠΆΠ΅Ρ‚ ΠΈΠΌΠ΅Ρ‚ΡŒ ΠΌΠΎΠ΄ΠΈΡ„ΠΈΠΊΠ°Ρ‚ΠΎΡ€Ρ‹ доступа Π½Π° любой вкус.
    • Π˜Π½Ρ‚Π΅Ρ€Ρ„Π΅ΠΉΡ Π΄ΠΎΠ»ΠΆΠ΅Π½ Π±Ρ‹Ρ‚ΡŒ Ρ€Π΅Π°Π»ΠΈΠ·ΠΎΠ²Π°Π½ ΠΊΠ»ΡŽΡ‡Π΅Π²Ρ‹ΠΌ словом implements. Абстрактный класс Π΄ΠΎΠ»ΠΆΠ΅Π½ Π±Ρ‹Ρ‚ΡŒ Ρ€Π°ΡΡˆΠΈΡ€Π΅Π½ ΠΏΡ€ΠΈ ΠΏΠΎΠΌΠΎΡ‰ΠΈ ΠΊΠ»ΡŽΡ‡Π΅Π²ΠΎΠ³ΠΎ слова extends.
    • Π’ Java класс ΠΌΠΎΠΆΠ΅Ρ‚ Ρ€Π΅Π°Π»ΠΈΠ·ΠΎΠ²Ρ‹Π²Π°Ρ‚ΡŒ мноТСство интСрфСйсов, Π½ΠΎ ΠΌΠΎΠΆΠ΅Ρ‚ ΡƒΠ½Π°ΡΠ»Π΅Π΄ΠΎΠ²Π°Ρ‚ΡŒΡΡ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ ΠΎΡ‚ ΠΎΠ΄Π½ΠΎΠ³ΠΎ абстрактного класса.
    • Π˜Π½Ρ‚Π΅Ρ€Ρ„Π΅ΠΉΡ ΠΏΠΎΠ»Π½ΠΎΡΡ‚ΡŒΡŽ абстрактный ΠΈ Π½Π΅ ΠΌΠΎΠΆΠ΅Ρ‚ ΠΈΠΌΠ΅Ρ‚ΡŒ экзСмпляров. Абстрактный класс Ρ‚Π°ΠΊΠΆΠ΅ Π½Π΅ ΠΌΠΎΠΆΠ΅Ρ‚ ΠΈΠΌΠ΅Ρ‚ΡŒ экзСмпляров класса, Π½ΠΎ ΠΌΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ Π²Ρ‹Π·Π²Π°Π½, Ссли сущСствуСт ΠΌΠ΅Ρ‚ΠΎΠ΄ main().
    • Абстрактный класс слСгка быстрСС интСрфСйса, ΠΏΠΎΡ‚ΠΎΠΌΡƒ Ρ‡Ρ‚ΠΎ интСрфСйс ΠΏΡ€Π΅Π΄ΠΏΠΎΠ»Π°Π³Π°Π΅Ρ‚ поиск ΠΏΠ΅Ρ€Π΅Π΄ Π²Ρ‹Π·ΠΎΠ²ΠΎΠΌ любого ΠΏΠ΅Ρ€Π΅ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½Π½ΠΎΠ³ΠΎ ΠΌΠ΅Ρ‚ΠΎΠ΄Π° Π² Java. Π’ Π±ΠΎΠ»ΡŒΡˆΠΈΠ½ΡΡ‚Π²Π΅ случаСв это Π½Π΅Π·Π½Π°Ρ‡ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΠ΅ Ρ€Π°Π·Π»ΠΈΡ‡ΠΈΠ΅, Π½ΠΎ Ссли Π²Ρ‹ ΠΏΠΈΡˆΠΈΡ‚Π΅ ΠΊΡ€ΠΈΡ‚ΠΈΡ‡Π½ΠΎΠ΅ ΠΏΠΎ Π²Ρ€Π΅ΠΌΠ΅Π½ΠΈ ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅, Π²Π°ΠΌ Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ ΡƒΡ‡Π΅ΡΡ‚ΡŒ ΠΈ этот Ρ„Π°ΠΊΡ‚.
  • Когда Π²Ρ‹ пСрСопрСдСляСтС ΠΌΠ΅Ρ‚ΠΎΠ΄Ρ‹ hashCode() ΠΈ equals()?

    ΠœΠ΅Ρ‚ΠΎΠ΄Ρ‹ hashCode() ΠΈ equals() ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½Ρ‹ Ρƒ класса Object, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ являСтся Ρ€ΠΎΠ΄ΠΈΡ‚Π΅Π»ΡŒΡΠΊΠΈΠΌ классом для всСх ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ΠΎΠ² Java. По этой ΠΏΡ€ΠΈΡ‡ΠΈΠ½Π΅, всС ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Ρ‹ Java Π½Π°ΡΠ»Π΅Π΄ΡƒΡŽΡ‚ Π±Π°Π·ΠΎΠ²ΡƒΡŽ Ρ€Π΅Π°Π»ΠΈΠ·Π°Ρ†ΠΈΡŽ этих ΠΌΠ΅Ρ‚ΠΎΠ΄ΠΎΠ².

    ΠœΠ΅Ρ‚ΠΎΠ΄ hashCode() ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ для получСния ΡƒΠ½ΠΈΠΊΠ°Π»ΡŒΠ½ΠΎΠ³ΠΎ значСния integer для Π΄Π°Π½Π½ΠΎΠ³ΠΎ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π°. Π­Ρ‚ΠΎ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ для опрСдСлСния располоТСния ΠΊΠΎΡ€Π·ΠΈΠ½Ρ‹, ΠΊΠΎΠ³Π΄Π° ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ Ρ…Ρ€Π°Π½ΠΈΡ‚ΡŒ Π² структурС Π΄Π°Π½Π½Ρ‹Ρ… Π½Π°ΠΏΠΎΠ΄ΠΎΠ±ΠΈΠ΅ HashTable. По ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ ΠΌΠ΅Ρ‚ΠΎΠ΄ hashCode() Π²ΠΎΠ·Π²Ρ€Π°Ρ‰Π°Π΅Ρ‚ цСлочислСнноС прСдставлСниС адрСса памяти, Π³Π΄Π΅ хранится ΠΎΠ±ΡŠΠ΅ΠΊΡ‚.

    ΠœΠ΅Ρ‚ΠΎΠ΄ equals(), ΠΊΠ°ΠΊ ΠΏΡ€Π΅Π΄ΠΏΠΎΠ»Π°Π³Π°Π΅Ρ‚ Π½Π°Π·Π²Π°Π½ΠΈΠ΅, ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ для простой эквивалСнтности ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ΠΎΠ². Базовая рСализация ΠΌΠ΅Ρ‚ΠΎΠ΄Π° Π·Π°ΠΊΠ»ΡŽΡ‡Π°Π΅Ρ‚ΡΡ Π² ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΊΠ΅ ссылок Π΄Π²ΡƒΡ… ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ΠΎΠ² для ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΊΠΈ ΠΈΡ… эквивалСнтности.

    ΠžΠ±Ρ€Π°Ρ‚ΠΈΡ‚Π΅ Π²Π½ΠΈΠΌΠ°Π½ΠΈΠ΅, Ρ‡Ρ‚ΠΎ ΠΎΠ±Ρ‹Ρ‡Π½ΠΎ Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ ΠΏΠ΅Ρ€Π΅ΠΎΠΏΡ€Π΅Π΄Π΅Π»ΡΡ‚ΡŒ ΠΌΠ΅Ρ‚ΠΎΠ΄ hashCode() всякий Ρ€Π°Π·, ΠΊΠΎΠ³Π΄Π° ΠΏΠ΅Ρ€Π΅ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½ ΠΌΠ΅Ρ‚ΠΎΠ΄ equals(). Π­Ρ‚ΠΎ Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ для ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠΈ ΠΎΠ±Ρ‰Π΅Π³ΠΎ соглашСния ΠΌΠ΅Ρ‚ΠΎΠ΄Π° hashCode, Π² ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΌ говорится Ρ‡Ρ‚ΠΎ Ρ€Π°Π²Π½Ρ‹Π΅ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Ρ‹ Π΄ΠΎΠ»ΠΆΠ½Ρ‹ ΠΈΠΌΠ΅Ρ‚ΡŒ Ρ€Π°Π²Π½Ρ‹Π΅ Ρ…ΡΡˆΠΊΠΎΠ΄Ρ‹.

    ΠœΠ΅Ρ‚ΠΎΠ΄ equals() Π΄ΠΎΠ»ΠΆΠ΅Π½ ΠΎΠΏΡ€Π΅Π΄Π΅Π»ΡΡ‚ΡŒ равСнство ΠΎΡ‚Π½ΠΎΡˆΠ΅Π½ΠΈΠΉ (ΠΎΠ½ Π΄ΠΎΠ»ΠΆΠ΅Π½ Π±Ρ‹Ρ‚ΡŒ Π²ΠΎΠ·Π²Ρ€Π°Ρ‚Π½Ρ‹ΠΌ, симмСтричным ΠΈ Ρ‚Ρ€Π°Π½Π·ΠΈΡ‚ΠΈΠ²Π½Ρ‹ΠΌ). Π’ Π΄ΠΎΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅, ΠΎΠ½ Π΄ΠΎΠ»ΠΆΠ΅Π½ Π±Ρ‹Ρ‚ΡŒ устойчивым (Ссли ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ Π½Π΅ измСнялся, ΠΌΠ΅Ρ‚ΠΎΠ΄ Π΄ΠΎΠ»ΠΆΠ΅Π½ Π²ΠΎΠ·Π²Ρ€Π°Ρ‰Π°Ρ‚ΡŒ Ρ‚ΠΎ ΠΆΠ΅ самоС Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅). ΠšΡ€ΠΎΠΌΠ΅ Ρ‚ΠΎΠ³ΠΎ, o.equals(null) всСгда Π΄ΠΎΠ»ΠΆΠ½ΠΎ Π²ΠΎΠ·Π²Ρ€Π°Ρ‰Π°Ρ‚ΡŒ false.

    hashCode() Π΄ΠΎΠ»ΠΆΠ΅Π½ Π±Ρ‹Ρ‚ΡŒ Ρ‚Π°ΠΊΠΆΠ΅ устойчивым (Ссли ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ Π½Π΅ измСнялся ΠΏΠΎ условиям ΠΌΠ΅Ρ‚ΠΎΠ΄Π° equals(), ΠΎΠ½ Π΄ΠΎΠ»ΠΆΠ΅Π½ ΠΏΡ€ΠΎΠ΄ΠΎΠ»ΠΆΠ°Ρ‚ΡŒ Π²ΠΎΠ·Π²Ρ€Π°Ρ‰Π°Ρ‚ΡŒ Ρ‚ΠΎ ΠΆΠ΅ самоС Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅.

    ΠžΡ‚Π½ΠΎΡˆΠ΅Π½ΠΈΠ΅ ΠΌΠ΅ΠΆΠ΄Ρƒ двумя ΠΌΠ΅Ρ‚ΠΎΠ΄Π°ΠΌΠΈ Ρ‚Π°ΠΊΠΎΠ΅: всСгда, Ссли a.equals(b), Ρ‚ΠΎΠ³Π΄Π° a.hashCode() Π΄ΠΎΠ»ΠΆΠ½ΠΎ Π±Ρ‹Ρ‚ΡŒ Ρ‚Π°ΠΊΠΈΠΌ ΠΆΠ΅, ΠΊΠ°ΠΊ ΠΈ b.hashCode().

  • Руководство ΠΏΠΎ Java Core. Π’Π²Π΅Π΄Π΅Π½ΠΈΠ΅. – PROSELYTE

    Π―Π·Ρ‹ΠΊ программирования Java Π±Ρ‹Π» Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Π°Π½ ΠΊΠΎΠΌΠΏΠ°Π½ΠΈΠ΅ΠΉ ΠΈ Π±Ρ‹Π» прСдставлСн ΠΊΠ°ΠΊ ΠΊΠ»ΡŽΡ‡Π΅Π²ΠΎΠΉ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚ Sun Microsystems Java platform Π² 1995 Π³ΠΎΠ΄Ρƒ. Π­Ρ‚ΠΎΡ‚ ΠΈ Π³ΠΎΠ΄ ΠΈ считаСтся Π³ΠΎΠ΄ΠΎΠΌ выпуска Java 1.0.
    На Π΄Π°Π½Π½Ρ‹ΠΉ ΠΌΠΎΠΌΠ΅Π½Ρ‚ (Π€Π΅Π²Ρ€Π°Π»ΡŒ 2015 Π³ΠΎΠ΄Π°) ΠΊΡ€Π°ΠΉΠ½Π΅ΠΉ вСрсиСй являСтся Java SE 8.
    Π‘ Ρ€Π°Π·Π²ΠΈΡ‚ΠΈΠ΅ΠΌ Java Π±Ρ‹Π»ΠΈ созданы Π΅Ρ‘ Ρ€Π°Π·Π»ΠΈΡ‡Π½Ρ‹Π΅ Ρ‚ΠΈΠΏΡ‹:

    • J2SE – ΠΊΠ»ΡŽΡ‡Π΅Π²ΠΎΠΉ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΎΠ½Π°Π» языка Java.
    • J2EE – для Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ ΠΊΠΎΡ€ΠΏΠΎΡ€Π°Ρ‚ΠΈΠ²Π½Ρ‹Ρ… ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ
    • J2ME – для Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ ΠΌΠΎΠ±ΠΈΠ»ΡŒΠ½Ρ‹Ρ… ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ

    Π”Π΅Π²ΠΈΠ·ΠΎΠΌ Java являСтся: β€œWrite Once, Rune Anywhere”. Π”Ρ€ΡƒΠ³ΠΈΠΌΠΈ словами, Ρ€Π΅Ρ‡ΡŒ ΠΈΠ΄Ρ‘Ρ‚ ΠΎ кроссплатформСнности. Она достигаСтся Π·Π° счёт использования Π²ΠΈΡ€Ρ‚ΡƒΠ°Π»ΡŒΠ½ΠΎΠΉ ΠΌΠ°ΡˆΠΈΠ½Ρ‹ Java (Java Virtual Machine – JVM).

    КакиС ΡΠΈΠ»ΡŒΠ½Ρ‹Π΅ стороны самого популярного языка программирования Π² ΠΌΠΈΡ€Π΅ (Π½Π° Π€Π΅Π²Ρ€Π°Π»ΡŒ 2016 Π³ΠΎΠ΄Π°)?

    ΠœΡ‹ ΠΌΠΎΠΆΠ΅ΠΌ Π½Π°Π·Π²Π°Ρ‚ΡŒ Ρ‚Π°ΠΊΠΈΠ΅:

    • ΠŸΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΠ½Π°Ρ Π½Π΅Π·Π°Π²ΠΈΡΠΈΠΌΠΎΡΡ‚ΡŒ
      Наш класс, написанный Π½Π° Java компилируСтся Π² ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΠ½ΠΎ-зависимый Π±Π°ΠΉΡ‚-ΠΊΠΎΠ΄, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ интСрпрСтируСтся ΠΈ исполняСтся JVM.
    • ΠŸΡ€ΠΎΡΡ‚ΠΎΡ‚Π°
      Бинтаксис языка ΠΊΡ€Π°ΠΉΠ½Π΅ прост Π² ΠΈΠ·ΡƒΡ‡Π΅Π½ΠΈΠΈ. ΠžΡ‚ нас трСбуСтся лишь ΠΏΠΎΠ½ΠΈΠΌΠ°Π½ΠΈΠ΅ основ ООП, ΠΏΠΎΡ‚ΠΎΠΌΡƒ Ρ‡Ρ‚ΠΎ Java являСтся ΠΏΠΎΠ»Π½ΠΎΡΡ‚ΡŒΡŽ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π½ΠΎ-ΠΎΡ€ΠΈΠ΅Π½Ρ‚ΠΈΡ€ΠΎΠ²Π°Π½Π½ΠΎΠΉ.
    • ΠŸΠ΅Ρ€Π΅Π½ΠΎΡΠΈΠΌΠΎΡΡ‚ΡŒ
      Π’ΠΎΡ‚ Ρ„Π°ΠΊΡ‚, Ρ‡Ρ‚ΠΎ Java Π½Π΅ Ρ€Π΅Π°Π»ΠΈΠ·ΠΎΠ²Ρ‹Π²Π°Π΅Ρ‚ спСцифичных аспСктов для ΠΊΠ°ΠΆΠ΄ΠΎΠ³ΠΎ Ρ‚ΠΈΠΏΠ° машин, Π΄Π΅Π»Π°Π΅Ρ‚ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹, написанныС с Π΅Ρ‘ использованиСм пСрСносимыми.
    • ΠžΠ±ΡŠΠ΅ΠΊΡ‚ΠΎ-ΠΎΡ€ΠΈΠ΅Π½Ρ‚ΠΈΡ€ΠΎΠ²Π°Π½Π½ΠΎΡΡ‚ΡŒ
      Всё сущности Π² Java ΡΠ²Π»ΡΡŽΡ‚ΡΡ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π°ΠΌΠΈ, Ρ‡Ρ‚ΠΎ позволяСт Π½Π°ΠΌ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ всю ΠΌΠΎΡ‰ΡŒ ООП.
    • Π‘Π΅Π·ΠΎΠΏΠ°ΡΠ½ΠΎΡΡ‚ΡŒ
      Π‘Π΅Π·ΠΎΠΏΠ°ΡΠ½ΠΎΡΡ‚ΡŒ Java позволяСт Ρ€Π°Π·Ρ€Π°Π±Π°Ρ‚Ρ‹Π²Π°Ρ‚ΡŒ систСмы, Π·Π°Ρ‰ΠΈΡ‰Ρ‘Π½Π½Ρ‹Π΅ ΠΎΡ‚ вирусов ΠΈ Π²Π·Π»ΠΎΠΌΠΎΠ². Авторизация Π² Java основана Π½Π° ΡˆΠΈΡ„Ρ€ΠΎΠ²Π°Π½ΠΈΠΈ ΠΎΡ‚ΠΊΡ€Ρ‹Ρ‚ΠΎΠ³ΠΎ ΠΊΠ»ΡŽΡ‡Π°.
    • Π£ΡΡ‚ΠΎΠΉΡ‡ΠΈΠ²ΠΎΡΡ‚ΡŒ
      Π—Π°Ρ‰ΠΈΡ‚Π° ΠΎΡ‚ ошибок обСспСчиваСтся Π·Π° счёт ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΎΠΊ Π²ΠΎ врСмя компиляции ΠΈ Π²ΠΎ врСмя нСпосрСдствСнного выполнСния ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌ.
    • Π˜Π½Ρ‚Π΅Ρ€ΠΏΡ€Π΅Ρ‚ΠΈΡ€ΡƒΠ΅ΠΌΠΎΡΡ‚ΡŒ
      Π‘Π°ΠΉΡ‚-ΠΊΠΎΠ΄ Java транслируСтся Π² ΠΌΠ°ΡˆΠΈΠ½Π½Ρ‹Π΅ ΠΊΠΎΠΌΠ°Π½Π΄Ρ‹ β€œΠ½Π° лСту” ΠΈ Π½ΠΈΠ³Π΄Π΅ Π½Π΅ хранится.
    • Π Π°ΡΠΏΡ€Π΅Π΄Π΅Π»Ρ‘Π½Π½ΠΎΡΡ‚ΡŒ
      Java Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Π°Π½Π° для распрСдСлённого окруТСния Internet.
    • ΠœΠ½ΠΎΠ³ΠΎΠΏΠΎΡ‚ΠΎΡ‡Π½ΠΎΡΡ‚ΡŒ
      Π―Π·Ρ‹ΠΊ ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°Π΅Ρ‚ ΠΌΠ½ΠΎΠ³ΠΎΠΏΠΎΡ‚ΠΎΡ‡Π½ΠΎΡΡ‚ΡŒ (ΠΎΠ΄Π½ΠΎΠ²Ρ€Π΅ΠΌΠ΅Π½Π½ΠΎΠ΅ Π²Ρ‹ΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅ Π½Π΅ΡΠΊΠΎΠ»ΡŒΠΊΠΈΡ… Π·Π°Π΄Π°Ρ‡), Ρ‡Ρ‚ΠΎ позволяСт Π½Π°ΠΌ ΡΠΎΠ·Π΄Π°Π²Π°Ρ‚ΡŒ Ρ…ΠΎΡ€ΠΎΡˆΠΎ ΠΎΡ‚Π»Π°ΠΆΠ΅Π½Π½Ρ‹Π΅ прилоТСния
    • ΠŸΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΡŒ
      ИспользованиС JIT (Just-In-Time) компилятора, позволяСт Π΄ΠΎΡΡ‚ΠΈΠ³Π°Ρ‚ΡŒ высоких ΠΏΠΎΠΊΠ°Π·Π°Ρ‚Π΅Π»Π΅ΠΉ.

    Π§Ρ‚ΠΎ Π½Π°ΠΌ понадобится для Ρ‚ΠΎΠ³ΠΎ, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ Java:

    • ОБ Linux ΠΈΠ»ΠΈ Windows (для Π½Π°ΡˆΠΈΡ… ΡƒΡ€ΠΎΠΊΠΎΠ² ΠΏΡ€Π΅Π΄ΠΏΠΎΡ‡Ρ‚ΠΈΡ‚Π΅Π»ΡŒΠ½Π΅Π΅ Ubuntu)
    • Java JDK 8
    • IDE (для Π½Π°ΡˆΠΈΡ… ΡƒΡ€ΠΎΠΊΠΎΠ² ΠΏΡ€Π΅Π΄ΠΏΠΎΡ‡Ρ‚ΠΈΡ‚Π΅Π»ΡŒΠ½Π΅Π΅ Intellij IDEA 14)

    Π’ Ρ…ΠΎΠ΄Π΅ этого Ρ†ΠΈΠΊΠ»Π° ΡƒΡ€ΠΎΠΊΠΎΠ² Π’Ρ‹ ΡƒΠ²ΠΈΠ΄ΠΈΡ‚Π΅, ΠΊΠ°ΠΊ ΡΠΎΠ·Π΄Π°Π²Π°Ρ‚ΡŒ простыС, графичСскиС ΠΈ Π²Π΅Π± прилоТСния ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡ язык программирования Java.

    Π’ Π΄Π°Π»ΡŒΠ½Π΅ΠΉΡˆΠΈΡ… ΡƒΡ€ΠΎΠΊΠ°Ρ… ΠΌΡ‹ рассмотрим ΠΊΠ°ΠΊ ΡƒΡΡ‚Π°Π½ΠΎΠ²ΠΈΡ‚ΡŒ JDK ΠΈ создадим Π½Π°ΡˆΡƒ ΠΏΠ΅Ρ€Π²ΡƒΡŽ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡƒ Π½Π° Java.

    Как ΠΏΡ€ΠΎΠΉΡ‚ΠΈ собСсСдованиС Π½Π° ΠΏΠΎΠ·ΠΈΡ†ΠΈΡŽ Java-Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠ°?

    Π§Ρ‚ΠΎΠ±Ρ‹ ΠΏΠΎΠ»ΡƒΡ‡ΠΈΡ‚ΡŒ Ρ€Π°Π±ΠΎΡ‚Ρƒ, Π·Π½Π°Ρ‚ΡŒ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ Π½Π° Java нСдостаточно – Π½ΡƒΠΆΠ½ΠΎ Π½Π°ΠΉΡ‚ΠΈ вакансию ΠΈ ΠΏΡ€ΠΎΠΉΡ‚ΠΈ квСст ΠΏΠΎ Π½Π°ΠΉΠΌΡƒ. Π‘Π°ΠΉΡ‚ proglib.io рассказал ΠΎ ΠΏΠ»Π°Π½Π΅ ΠΏΠΎΠ΄Π³ΠΎΡ‚ΠΎΠ²ΠΊΠΈ ΠΊ ΠΈΠ½Ρ‚Π΅Ρ€Π²ΡŒΡŽ, часто Π²ΡΡ‚Ρ€Π΅Ρ‡Π°ΡŽΡ‰ΠΈΡ…ΡΡ вопросах ΠΏΠΎ Java Core ΠΈ Java EE ΠΈ ΠΏΡ€Π°Π²ΠΈΠ»ΡŒΠ½ΠΎΠΌ ΠΏΠΎΠ²Π΅Π΄Π΅Π½ΠΈΠΈ Π½Π° собСсСдовании.

    10 ΠΌΠ»Π½ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠΎΠ² ΠΏΠΎ всСму ΠΌΠΈΡ€Ρƒ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽΡ‚ Java для создания ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ ΠΏΠΎΠ΄ 15 ΠΌΠ»Ρ€Π΄. устройств. Бинтаксис этого языка прост ΠΈ поддСрТиваСтся всСми ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΎΠ½Π½Ρ‹ΠΌΠΈ систСмами. Π’ условиях ТСсткой ΠΊΠΎΠ½ΠΊΡƒΡ€Π΅Π½Ρ†ΠΈΠΈ ΠΎΡ€Π³Π°Π½ΠΈΠ·Π°Ρ†ΠΈΠΈ Π½ΡƒΠΆΠ΄Π°ΡŽΡ‚ΡΡ Π² профСссионалах, ΠΎΠ±Π»Π°Π΄Π°ΡŽΡ‰ΠΈΡ… знаниями, Π½Π°Π²Ρ‹ΠΊΠ°ΠΌΠΈ ΠΈ ΠΎΠΏΡ‹Ρ‚ΠΎΠΌ Π² области Java, ΠΈ способных эффСктивно ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ, ΠΊΠΎΠ΄ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ, Ρ€Π°Π·Ρ€Π°Π±Π°Ρ‚Ρ‹Π²Π°Ρ‚ΡŒ ΠΈ Ρ€Π°Π·Π²ΠΎΡ€Π°Ρ‡ΠΈΠ²Π°Ρ‚ΡŒ прилоТСния Ρ€Π°Π·Π»ΠΈΡ‡Π½ΠΎΠ³ΠΎ Ρ‚ΠΈΠΏΠ°.

    ΠžΡ‚Π»ΠΈΡ‡ΠΈΡ Π² ΠΈΠ½Ρ‚Π΅Ρ€Π²ΡŒΡŽ ΠΏΠΎ Java Core ΠΈ Java EE

    ΠŸΠΎΡΠΊΠΎΠ»ΡŒΠΊΡƒ Java Π² основном ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ ΠΊΠ°ΠΊ язык ΠΏΡ€ΠΈΠΊΠ»Π°Π΄Π½ΠΎΠ³ΠΎ программирования, основноС Π²Π½ΠΈΠΌΠ°Π½ΠΈΠ΅ удСляСтся вопросам, ΠΊΠ°ΡΠ°ΡŽΡ‰ΠΈΠΌΡΡ API, ΠΊΠΎΠ½Ρ†Π΅ΠΏΡ†ΠΈΠΉ ΠΈ шаблонов проСктирования.

    БобСсСдования ΠΏΠΎ Java ΠΌΠ΅Π½ΡΡŽΡ‚ΡΡ Π² зависимости ΠΎΡ‚ ΠΎΠΏΡ‹Ρ‚Π° ΠΊΠ°Π½Π΄ΠΈΠ΄Π°Ρ‚Π°. НапримСр, младшиС Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠΈ с ΠΎΠΏΡ‹Ρ‚ΠΎΠΌ ΠΎΡ‚ 1 Π΄ΠΎ 4 Π»Π΅Ρ‚ увидят Π±ΠΎΠ»ΡŒΡˆΠ΅Β Π²ΠΎΠΏΡ€ΠΎΡΠΎΠ²Β ΠΏΠΎ Ρ‚Π°ΠΊΠΈΠΌ Ρ‚Π΅ΠΌΠ°ΠΌ, ΠΊΠ°ΠΊ основы языка, API, структура Π΄Π°Π½Π½Ρ‹Ρ… ΠΈ Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌΡ‹.

    Π‘ΠΎΠ»Π΅Π΅ ΠΎΠΏΡ‹Ρ‚Π½Ρ‹Π΅ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠΈ, с ΠΎΠΏΡ‹Ρ‚ΠΎΠΌ ΠΎΡ‚ 5 Π΄ΠΎ 6 Π»Π΅Ρ‚, ΠΏΠΎΠ»ΡƒΡ‡Π°Ρ‚ вопросы ΠΎ ΠΏΠ°Ρ€Π°Π»Π»Π΅Π»ΡŒΠ½ΠΎΠΌ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠΈ, API, ΠΏΠ°Ρ€Π°Π»Π»Π΅Π»ΠΈΠ·ΠΌΠ΅ Java, Π²Π½ΡƒΡ‚Ρ€Π΅Π½Π½Π΅ΠΌ устройствС JVM, настройкС сборщика мусора ΠΈ ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΠΈ Java.

    БобСсСдования ΠΏΠΎ Java EE сильно ΠΎΡ‚Π»ΠΈΡ‡Π°ΡŽΡ‚ΡΡ ΠΎΡ‚ собСсСдований ΠΏΠΎ Java Core, ΠΏΠΎΡΠΊΠΎΠ»ΡŒΠΊΡƒ послСдниС Π² основном сосрСдоточСны Π½Π° основных концСпциях Java, Ρ‚Π°ΠΊΠΈΡ…, ΠΊΠ°ΠΊ ΠΏΠ°Ρ€Π°Π»Π»Π΅Π»ΠΈΠ·ΠΌ, ΠΊΠΎΠ»Π»Π΅ΠΊΡ†ΠΈΠΈ ΠΈ Π²Π½ΡƒΡ‚Ρ€Π΅Π½Π½Π΅Π΅ устройство JVM. БобСсСдования ΠΏΠΎ Java EE основаны Π½Π° JSF, Spring, Hibernate ΠΈ Π΄Ρ€ΡƒΠ³ΠΈΡ….

    План ΠΏΠΎΠ΄Π³ΠΎΡ‚ΠΎΠ²ΠΊΠΈ ΠΊ собСсСдованию

    БущСствуСт ΠΎΠ±Ρ‰ΠΈΠΉ список Ρ‚Π΅ΠΌ, с ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΌΠΈ стоит ΠΎΠ·Π½Π°ΠΊΠΎΠΌΠΈΡ‚ΡŒΡΡ, ΠΈΠ»ΠΈ ΠΎΡΠ²Π΅ΠΆΠΈΡ‚ΡŒ ΠΈΡ… Π² памяти ΠΏΠ΅Ρ€Π΅Π΄ собСсСдованиСм:

    • основы Java;
    • ООП;
    • Java core;
    • структура Π΄Π°Π½Π½Ρ‹Ρ…;
    • ΠΌΠ½ΠΎΠ³ΠΎΠΏΠΎΡ‚ΠΎΡ‡Π½ΠΎΡΡ‚ΡŒ;
    • сборка мусора;
    • Π±Π°Π·Ρ‹ Π΄Π°Π½Π½Ρ‹Ρ…;
    • Ρ„Ρ€Π΅ΠΉΠΌΠ²ΠΎΡ€ΠΊΠΈ;
    • сСтСвыС ΠΏΡ€ΠΎΡ‚ΠΎΠΊΠΎΠ»Ρ‹;
    • устройство JVM;
    • Π°Ρ€Ρ…ΠΈΡ‚Π΅ΠΊΡ‚ΡƒΡ€Π°;
    • ΠΏΠ°Ρ‚Ρ‚Π΅Ρ€Π½Ρ‹;
    • алгоритмичСскиС Π·Π°Π΄Π°Ρ‡ΠΈ;

    Π‘Ρ‚ΠΎΠΈΡ‚ ΡƒΡ‡ΠΈΡ‚Ρ‹Π²Π°Ρ‚ΡŒ, Ρ‡Ρ‚ΠΎ ΠΏΡ€ΠΈΠ²Π΅Π΄Π΅Π½Π½Ρ‹Π΅ Π½ΠΈΠΆΠ΅Β ΠΏΡ€ΠΈΠΌΠ΅Ρ€Ρ‹ вопросов – лишь Π²Π°Ρ€ΠΈΠ°Π½Ρ‚Ρ‹, Π½Π°ΠΈΠ±ΠΎΠ»Π΅Π΅ часто Π²ΡΡ‚Ρ€Π΅Ρ‡Π°ΡŽΡ‰ΠΈΠ΅ΡΡ Π½Π° собСсСдовании. Бписок ΠΊΠΎΠ½ΠΊΡ€Π΅Ρ‚Π½Ρ‹Ρ… вопросов Π±ΡƒΠ΄Π΅Ρ‚ Π² Π·Π½Π°Ρ‡ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΠΉ стСпСни Π·Π°Π²ΠΈΡΠ΅Ρ‚ΡŒ ΠΎΡ‚ вакансии ΠΈ вашСго ΠΎΠΏΡ‹Ρ‚Π°. Для ΠΏΠΎΠ΄Π³ΠΎΡ‚ΠΎΠ²ΠΊΠΈΒ ΠΊ ΠΈΠ½Ρ‚Π΅Ρ€Π²ΡŒΡŽ стоит Π²Π½ΠΈΠΌΠ°Ρ‚Π΅Π»ΡŒΠ½ΠΎ ΠΈΠ·ΡƒΡ‡ΠΈΡ‚ΡŒ Π΄ΠΎΠ»ΠΆΠ½ΠΎΡΡ‚Π½ΡƒΡŽ ΠΈΠ½ΡΡ‚Ρ€ΡƒΠΊΡ†ΠΈΡŽ, Ссли Ρ€Π°Π±ΠΎΡ‚ΠΎΠ΄Π°Ρ‚Π΅Π»ΡŒ прСдоставит Π²Π°ΠΌ Ρ‚Π°ΠΊΡƒΡŽ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚ΡŒ.

    Π’Ρ‹ Π½Π΅ обязаны Π·Π½Π°Ρ‚ΡŒ Π½Π°ΠΈΠ·ΡƒΡΡ‚ΡŒ всС аспСкты программирования Π½Π° Java ΠΏΠΎ ΡƒΡ‡Π΅Π±Π½ΠΈΠΊΡƒ. Достаточно Ρ€Π°ΡΡΠΊΠ°Π·Π°Ρ‚ΡŒ ΠΏΡ€ΠΎ ΠΎΠΏΡ‹Ρ‚ Ρ€Π°Π±ΠΎΡ‚Ρ‹, Π½ΠΎ основныС понятия ΠΈ Ρ‚Π΅Ρ€ΠΌΠΈΠ½Ρ‹ всС ΠΆΠ΅ стоит ΠΎΡΠ²Π΅ΠΆΠΈΡ‚ΡŒ Π² памяти, особСнно Ссли с Π½ΠΈΠΌΠΈ Π±ΡƒΠ΄Π΅Ρ‚ связана ваша Π΄Π΅ΡΡ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΡŒ Π² ΠΊΠΎΠΌΠΏΠ°Π½ΠΈΠΈ.

    ΠžΡΠ½ΠΎΠ²Ρ‹ Java

    ΠŸΡ€ΠΈΠΌΠ΅Ρ€Ρ‹ часто Π·Π°Π΄Π°Π²Π°Π΅ΠΌΡ‹Ρ… вопросов:

    1. Π’ Ρ‡Π΅ΠΌ Π²Π°ΠΆΠ½ΠΎΡΡ‚ΡŒ ΠΌΠ΅Ρ‚ΠΎΠ΄Π° main()?
    2. Π’ Ρ‡Π΅ΠΌ Ρ€Π°Π·Π½ΠΈΡ†Π° ΠΌΠ΅ΠΆΠ΄Ρƒ ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹ΠΌΠΈ path ΠΈ classpath?
    3. КакиС Π΅ΡΡ‚ΡŒ ΠΌΠΎΠ΄ΠΈΡ„ΠΈΠΊΠ°Ρ‚ΠΎΡ€Ρ‹ доступа?
    4. Π§Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ классы-ΠΎΠ±ΠΎΠ»ΠΎΡ‡ΠΊΠΈ?
    5. Π’ Ρ‡Π΅ΠΌ Ρ€Π°Π·Π½ΠΈΡ†Π° ΠΌΠ΅ΠΆΠ΄Ρƒ equals () ΠΈ ==?
    6. Π§Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ JIT-компилятор?
    7. Π’ Ρ‡Π΅ΠΌ Π·Π°ΠΊΠ»ΡŽΡ‡Π°ΡŽΡ‚ΡΡ особСнности языка программирования Java?
    8. Π§Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ статичСский ΠΈΠΌΠΏΠΎΡ€Ρ‚?
    9. Π§Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ Enum?
    10. Π§Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ композиция?

    Java core

    Часто Π½Π° собСсСдованиях Π·Π°Π΄Π°ΡŽΡ‚ вопросы ΠΏΡ€ΠΎ ΠΊΠΎΠ»Π»Π΅ΠΊΡ†ΠΈΠΈ, Π΄ΠΆΠ΅Π½Π΅Ρ€ΠΈΠΊΠΈ, Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΎΠ½Π°Π»ΡŒΠ½Ρ‹Π΅ интСрфСйсы, ΠΌΠ½ΠΎΠ³ΠΎΠΏΠΎΡ‚ΠΎΡ‡Π½ΠΎΡΡ‚ΡŒ:

    1. Как устроСна HashMap?
    2. Π§Π΅ΠΌ отличаСтся LinkedList ΠΎΡ‚ ArrayList?
    3. Π Π°Π·Π½ΠΈΡ†Π° ΠΌΠ΅ΠΆΠ΄Ρƒ String, StringBuffer ΠΈ StringBuilder?
    4. Π Π°Π·Π½ΠΈΡ†Π° ΠΌΠ΅ΠΆΠ΄Ρƒ интСрфСйсом Runnable ΠΈ Callable?
    5. Π Π°Π·Π½ΠΈΡ†Π° ΠΌΠ΅ΠΆΠ΄Ρƒ TreeSet ΠΈ TreeMap?
    6. ΠΠ°ΠΏΠΈΡˆΠΈΡ‚Π΅ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡƒ Π½Π° Java, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΈΡ‚ΡŒ, являСтся Π»ΠΈ число простым ΠΈΠ»ΠΈ Π½Π΅Ρ‚?
    7. Как ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΈΡ‚ΡŒ, содСрТит Π»ΠΈ связанный список Ρ†ΠΈΠΊΠ» Π² Java?
    8. ΠΠ°ΠΏΠΈΡΠ°Ρ‚ΡŒ Java-ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡƒ для ΠΎΠ±Ρ€Π°Ρ‚Π½ΠΎΠ³ΠΎ прСобразования String Π±Π΅Π· использования API?
    9. Π Π°Π·Π½ΠΈΡ†Π° ΠΌΠ΅ΠΆΠ΄Ρƒ ΠΏΠ΅Ρ€Π΅Ρ…ΠΎΠ΄Π½Ρ‹ΠΌ процСссом ΠΈ ΠΈΠ·ΠΌΠ΅Π½Ρ‡ΠΈΠ²Ρ‹ΠΌ Π² Java?
    10. Π Π°Π·Π½ΠΈΡ†Π° ΠΌΠ΅ΠΆΠ΄Ρƒ абстрактным классом ΠΈ интСрфСйсом?

    ООП

    ΠšΠ»Π°ΡΡΠΈΡ‡Π΅ΡΠΊΠΈΠ΅ вопросы, Π²Ρ€ΠΎΠ΄Π΅ Ρ€Π°Π·Π½ΠΈΡ†Ρ‹ ΠΌΠ΅ΠΆΠ΄Ρƒ интСрфСйсом ΠΈ абстрактным классом, ΠΏΡ€ΠΈΡΡƒΡ‚ΡΡ‚Π²ΡƒΡŽΡ‚ всСгда. Π’ послСдниС ΠΏΠ°Ρ€Ρƒ Π»Π΅Ρ‚ Π½Π° собСсСдованиях Π·Π°Π΄Π°ΡŽΡ‚ ΠΈ Π±ΠΎΠ»Π΅Π΅ слоТныС вопросы, основанныС Π½Π° ΠΏΠ΅Ρ€Π΅Π΄ΠΎΠ²Ρ‹Ρ… ΠΏΡ€ΠΈΠ½Ρ†ΠΈΠΏΠ°Ρ… ΠΈ ΡˆΠ°Π±Π»ΠΎΠ½Π°Ρ… проСктирования:

    1. Π§Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ ΠΏΠ΅Ρ€Π΅Π³Ρ€ΡƒΠ·ΠΊΠ° ΠΌΠ΅Ρ‚ΠΎΠ΄ΠΎΠ² Π² ООП ΠΈΠ»ΠΈ Java?
    2. Какой ΠΌΠ΅Ρ‚ΠΎΠ΄ скрытия ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ Π² Java?
    3. ЯвляСтся Π»ΠΈ Java чистым ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π½ΠΎ-ΠΎΡ€ΠΈΠ΅Π½Ρ‚ΠΈΡ€ΠΎΠ²Π°Π½Π½Ρ‹ΠΌ языком?
    4. ΠšΠ°ΠΊΠΎΠ²Ρ‹ ΠΏΡ€Π°Π²ΠΈΠ»Π° ΠΏΠ΅Ρ€Π΅Π³Ρ€ΡƒΠ·ΠΊΠΈ ΠΈ пСрСопрСдСлСния ΠΌΠ΅Ρ‚ΠΎΠ΄ΠΎΠ² Π² Java?
    5. Какова Ρ€Π°Π·Π½ΠΈΡ†Π° ΠΌΠ΅ΠΆΠ΄Ρƒ ΠΏΠ΅Ρ€Π΅Π³Ρ€ΡƒΠ·ΠΊΠΎΠΉ ΠΌΠ΅Ρ‚ΠΎΠ΄Π° ΠΈ ΠΏΠ΅Ρ€Π΅ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½ΠΈΠ΅ΠΌ?
    6. МоТСм Π»ΠΈ ΠΌΡ‹ ΠΏΡ€Π΅Π΄ΠΎΡ‚Π²Ρ€Π°Ρ‚ΠΈΡ‚ΡŒ ΠΏΠ΅Ρ€Π΅ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½ΠΈΠ΅ ΠΌΠ΅Ρ‚ΠΎΠ΄Π° Π±Π΅Π· использования ΠΌΠΎΠ΄ΠΈΡ„ΠΈΠΊΠ°Ρ‚ΠΎΡ€Π° final?
    7. Π§Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ ΠΊΠΎΠ²Π°Ρ€ΠΈΠ°Π½Ρ‚Π½Ρ‹ΠΉ ΠΌΠ΅Ρ‚ΠΎΠ΄ пСрСопрСдСлСния Π² Java?
    8. МоТСм Π»ΠΈ ΠΌΡ‹ ΠΈΠ·ΠΌΠ΅Π½ΠΈΡ‚ΡŒ Π²ΠΎΠ·Π²Ρ€Π°Ρ‰Π°Π΅ΠΌΡ‹ΠΉ Ρ‚ΠΈΠΏ ΠΌΠ΅Ρ‚ΠΎΠ΄Π° Π½Π° подкласс ΠΏΡ€ΠΈ ΠΏΠ΅Ρ€Π΅ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½ΠΈΠΈ?
    9. Как Π²Ρ‹ Π²Ρ‹Π·Ρ‹Π²Π°Π΅Ρ‚Π΅ ΡΡƒΠΏΠ΅Ρ€ΠΊΠ»Π°ΡΡΠΎΠ²ΡƒΡŽ Π²Π΅Ρ€ΡΠΈΡŽ ΠΌΠ΅Ρ‚ΠΎΠ΄Π° пСрСопрСдСлСния Π² подклассС?
    10. Π’ Ρ‡Π΅ΠΌ Ρ€Π°Π·Π½ΠΈΡ†Π° ΠΌΠ΅ΠΆΠ΄Ρƒ абстракциСй ΠΈ ΠΏΠΎΠ»ΠΈΠΌΠΎΡ€Ρ„ΠΈΠ·ΠΌΠΎΠΌ Π² Java?

    Π‘Ρ‚Ρ€ΡƒΠΊΡ‚ΡƒΡ€Π° Π΄Π°Π½Π½Ρ‹Ρ…

    ΠŸΡ€ΠΈΠΌΠ΅Ρ€Ρ‹ часто Π·Π°Π΄Π°Π²Π°Π΅ΠΌΡ‹Ρ… вопросов:

    1. Π§Π΅ΠΌ Π΄Π΅Ρ€Π΅Π²ΠΎ отличаСтся ΠΎΡ‚ Π³Ρ€Π°Ρ„Π°?
    2. Π§Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ АВЛ-Π΄Π΅Ρ€Π΅Π²ΡŒΡ?
    3. Π§Π΅ΠΌ стСк отличаСтся ΠΎΡ‚ ΠΎΡ‡Π΅Ρ€Π΅Π΄ΠΈ?
    4. КакиС классы Π² Java Ρ€Π΅Π°Π»ΠΈΠ·ΡƒΡŽΡ‚ стСк ΠΈΠ»ΠΈ ΠΎΡ‡Π΅Ρ€Π΅Π΄ΡŒ?
    5. Π§Π΅ΠΌ LinkedList отличаСтся ΠΎΡ‚ ArrayList?
    6. Π§Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ HashSet?
    7. Π§Π΅ΠΌ HashSet отличаСтся ΠΎΡ‚ TreeSet?
    8. Как Ρ€Π°Π±ΠΎΡ‚Π°Π΅Ρ‚ HashMap?
    9. НайдитС срСдний элСмСнт односвязного списока Π·Π° ΠΎΠ΄ΠΈΠ½ ΠΏΡ€ΠΎΡ…ΠΎΠ΄.
    10. Как Ρ€Π΅Π°Π»ΠΈΠ·ΠΎΠ²Π°Ρ‚ΡŒ Π±ΠΈΠ½Π°Ρ€Π½ΠΎΠ΅ Π΄Π΅Ρ€Π΅Π²ΠΎ поиска?

    ΠœΠ½ΠΎΠ³ΠΎΠΏΠΎΡ‚ΠΎΡ‡Π½ΠΎΡΡ‚ΡŒ

    НС всС программисты Ρ€Π°Π±ΠΎΡ‚Π°ΡŽΡ‚ с ΠΌΠ½ΠΎΠ³ΠΎΠΏΠΎΡ‚ΠΎΡ‡Π½ΠΎΡΡ‚ΡŒΡŽ, Π½ΠΎ Π±Π°Π·ΠΎΠ²Ρ‹Π΅ Π²Π΅Ρ‰ΠΈ стоит Π·Π½Π°Ρ‚ΡŒ хотя Π±Ρ‹ Π²Β Ρ‚Π΅ΠΎΡ€ΠΈΠΈ.

    ΠŸΡ€ΠΈΠΌΠ΅Ρ€Ρ‹ часто Π·Π°Π΄Π°Π²Π°Π΅ΠΌΡ‹Ρ… вопросов:

    1. Π§Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ ΠΏΠΎΡ‚ΠΎΠΊ?
    2. Π’ Ρ‡Π΅ΠΌ Ρ€Π°Π·Π½ΠΈΡ†Π° ΠΌΠ΅ΠΆΠ΄Ρƒ ΠΏΠΎΡ‚ΠΎΠΊΠΎΠΌ ΠΈ процСссом?
    3. Как Ρ€Π΅Π°Π»ΠΈΠ·ΠΎΠ²Π°Ρ‚ΡŒ ΠΏΠΎΡ‚ΠΎΠΊΠΈ?
    4. Когда Π½ΡƒΠΆΠ½ΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ Runnable vs Thread?
    5. Π’ Ρ‡Π΅ΠΌ Ρ€Π°Π·Π½ΠΈΡ†Π° ΠΌΠ΅ΠΆΠ΄Ρƒ ΠΌΠ΅Ρ‚ΠΎΠ΄Π°ΠΌΠΈ start () ΠΈ run () класса Thread?
    6. Π§Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ модСль памяти Java?
    7. Π§Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ volatile?
    8. Π§Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ измСнчивая пСрСмСнная Π² Java?
    9. Π§Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ ΠΏΠΎΡ‚ΠΎΠΊΠΎΠ±Π΅Π·ΠΎΠΏΠ°ΡΠ½ΠΎΡΡ‚ΡŒ? Vector – это потокобСзопасный класс?
    10. Π§Ρ‚ΠΎ происходит, ΠΊΠΎΠ³Π΄Π° Π² ΠΏΠΎΡ‚ΠΎΠΊΠ΅ Π²ΠΎΠ·Π½ΠΈΠΊΠ°Π΅Ρ‚ ΠΈΡΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠ΅?

    Π‘Π±ΠΎΡ€ΠΊΠ° мусора

    Вопросы ΠΏΠΎ сбору мусора ΠΎΡ‡Π΅Π½ΡŒ популярны ΠΊΠ°ΠΊ Π² Π±Π°Π·ΠΎΠ²Ρ‹Ρ…, Ρ‚Π°ΠΊ ΠΈ Π² ΠΏΡ€ΠΎΠ΄Π²ΠΈΠ½ΡƒΡ‚Ρ‹Ρ… собСсСдованиях:

    1. Какова структура Java Heap? Π§Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ пространство Perm Gen Π² ΠΊΡƒΡ‡Π΅?
    2. Как ΠΎΠΏΡ€Π΅Π΄Π΅Π»ΠΈΡ‚ΡŒ Π½Π΅Π·Π½Π°Ρ‡ΠΈΡ‚Π΅Π»ΡŒΠ½ΡƒΡŽ ΠΈ ΠΎΡΠ½ΠΎΠ²Π½ΡƒΡŽ сборку мусора Π² Java?
    3. Π’ Ρ‡Π΅ΠΌ Ρ€Π°Π·Π½ΠΈΡ†Π° ΠΌΠ΅ΠΆΠ΄Ρƒ сборщиками мусора ParNew ΠΈ DefNew Young Generation?
    4. Как Π²Ρ‹ ΠΎΠ±Π½Π°Ρ€ΡƒΠΆΠΈΡ‚Π΅, Ρ‡Ρ‚ΠΎ сборщик мусора ΠΏΡ€ΠΈΠ²Π΅Π» ΠΊ Π²Ρ‹Π·ΠΎΠ²Ρƒ System.gc ()?
    5. Π’ Ρ‡Π΅ΠΌ Ρ€Π°Π·Π½ΠΈΡ†Π° ΠΌΠ΅ΠΆΠ΄Ρƒ ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΠ½Ρ‹ΠΌ ΠΈ пропускным сборщиками мусора?
    6. Когда ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ ΠΏΠΎΠ»ΡƒΡ‡Π°Π΅Ρ‚ ΠΏΡ€Π°Π²ΠΎ Π½Π° сборку мусора Π² Java?
    7. Π§Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ ΠΌΠ΅Ρ‚ΠΎΠ΄ finalize Π² Java? Когда сборщик мусора Π²Ρ‹Π·Ρ‹Π²Π°Π΅Ρ‚ ΠΌΠ΅Ρ‚ΠΎΠ΄ finalize?
    8. Как ΠΎΡ‚ΡΠ»Π΅ΠΆΠΈΠ²Π°Ρ‚ΡŒ дСйствия ΠΏΠΎ сбору мусора?
    9. МоТно Π»ΠΈ ΠΏΡ€ΠΈΠ½ΡƒΠ΄ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎ Π·Π°ΠΏΡƒΡΡ‚ΠΈΡ‚ΡŒ сборщик мусора Π² любоС врСмя?
    10. ΠŸΡ€ΠΎΠΈΡΡ…ΠΎΠ΄ΠΈΡ‚ Π»ΠΈ сборка мусора Π² постоянном пространствС Π³Π΅Π½Π΅Ρ€Π°Ρ†ΠΈΠΈ Π² JVM?

    Π‘Π°Π·Ρ‹ Π΄Π°Π½Π½Ρ‹Ρ…

    ΠžΡΠ²Π΅ΠΆΠΈΡ‚Π΅ Π² памяти ваши знания ΠΏΠΎΒ SQLΒ ΠΈ JPQL.

    ΠŸΡ€ΠΈΠΌΠ΅Ρ€Ρ‹ часто Π·Π°Π΄Π°Π²Π°Π΅ΠΌΡ‹Ρ… вопросов:

    1. РСляционныС ΠΈ нСрСляционныС Π‘Π” – Π² Ρ‡Π΅ΠΌ Ρ€Π°Π·Π½ΠΈΡ†Π°? Π§Ρ‚ΠΎ ΠΈ ΠΊΠΎΠ³Π΄Π° ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ?
    2. Как строится запрос SQL?
    3. КакиС Π²ΠΈΠ΄Ρ‹ join-ΠΎΠ² ΡΡƒΡ‰Π΅ΡΡ‚Π²ΡƒΡŽΡ‚?
    4. Π§Π΅ΠΌ having отличаСтся ΠΎΡ‚ where?
    5. Π‘Ρ‹Π»ΠΈ Π»ΠΈ Ρƒ вас Π² ΠΏΡ€Π°ΠΊΡ‚ΠΈΠΊΠ΅ случаи ΠΎΠΏΡ‚ΠΈΠΌΠΈΠ·Π°Ρ†ΠΈΠΈ запросов?
    6. ΠŸΡ€ΠΈΡ…ΠΎΠ΄ΠΈΠ»ΠΎΡΡŒ Π»ΠΈ ΡΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ ΠΏΠ»Π°Π½ выполнСния запроса?
    7. Π§Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ entity manager?
    8. Π§Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ persistence context?
    9. Π§Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ JPQL ΠΈ Ρ‡Π΅ΠΌ ΠΎΠ½ отличаСтся ΠΎΡ‚ SQL?
    10. Π§Ρ‚ΠΎ ΠΎΠ·Π½Π°Ρ‡Π°Π΅Ρ‚ ΠΏΠΎΠ»ΠΈΠΌΠΎΡ€Ρ„ΠΈΠ·ΠΌ Π² запросах JPQL ΠΈ ΠΊΠ°ΠΊ Π΅Π³ΠΎ Β«Π²Ρ‹ΠΊΠ»ΡŽΡ‡ΠΈΡ‚ΡŒΒ»?

    Π€Ρ€Π΅ΠΉΠΌΠ²ΠΎΡ€ΠΊΠΈ

    Π’ Π±ΠΎΠ»ΡŒΡˆΠΈΠ½ΡΡ‚Π²Π΅ случаСв трСбуСтся Spring.

    ΠŸΡ€ΠΈΠΌΠ΅Ρ€Ρ‹ часто Π·Π°Π΄Π°Π²Π°Π΅ΠΌΡ‹Ρ… вопросов:

    1. Transactional – ΠΊΠ°ΠΊ ΠΎΠ½Π° Ρ€Π°Π±ΠΎΡ‚Π°Π΅Ρ‚? Π§Ρ‚ΠΎ Π² Π½Π΅ΠΉ ΠΌΠΎΠΆΠ½ΠΎ Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎ Π½Π°ΡΡ‚Ρ€ΠΎΠΈΡ‚ΡŒ?
    2. НазовитС Ρ€Π°Π·Π»ΠΈΡ‡Π½Ρ‹Π΅Β ΠΌΠΎΠ΄ΡƒΠ»ΠΈΒ Ρ„Ρ€Π΅ΠΉΠΌΠ²ΠΎΡ€ΠΊΠ° Spring.
    3. ΠŸΠ΅Ρ€Π΅Ρ‡ΠΈΡΠ»ΠΈΡ‚Π΅ Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Π²Π°ΠΆΠ½Ρ‹Π΅ Π°Π½Π½ΠΎΡ‚Π°Ρ†ΠΈΠΈ Π² ΠΊΠΎΠ½Ρ„ΠΈΠ³ΡƒΡ€Π°Ρ†ΠΈΠΈ Spring Π½Π° основС Π°Π½Π½ΠΎΡ‚Π°Ρ†ΠΈΠΉ.
    4. ΠžΠ±ΡŠΡΡΠ½ΠΈΡ‚Π΅ Bean Π² Spring ΠΈ пСрСчислитС Ρ€Π°Π·Π»ΠΈΡ‡Π½Ρ‹Π΅ области примСнСния Spring bean.
    5. ΠžΠ±ΡŠΡΡΠ½ΠΈΡ‚Π΅ Ρ€ΠΎΠ»ΡŒ DispatcherServlet ΠΈ ContextLoaderListener.
    6. Π’ Ρ‡Π΅ΠΌ Ρ€Π°Π·Π½ΠΈΡ†Π° ΠΌΠ΅ΠΆΠ΄Ρƒ Π²Π½Π΅Π΄Ρ€Π΅Π½ΠΈΠ΅ΠΌ конструктора ΠΈ Π²Π½Π΅Π΄Ρ€Π΅Π½ΠΈΠ΅ΠΌ установщика?
    7. Как ΠΎΠ±Ρ€Π°Π±Π°Ρ‚Ρ‹Π²Π°Ρ‚ΡŒ ΠΈΡΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΡ Π² Spring MVC Framework?
    8. КакиС Π²Π°ΠΆΠ½Ρ‹Π΅ Π°Π½Π½ΠΎΡ‚Π°Ρ†ΠΈΠΈ Spring Π²Ρ‹ использовали?
    9. Как ΠΈΠ½Ρ‚Π΅Π³Ρ€ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ Spring ΠΈ Hibernate Frameworks?
    10. НазовитС Ρ‚ΠΈΠΏΡ‹ управлСния транзакциями, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°Π΅Ρ‚ Spring.

    Π‘Π΅Ρ‚Π΅Π²Ρ‹Π΅ ΠΏΡ€ΠΎΡ‚ΠΎΠΊΠΎΠ»Ρ‹

    ΠŸΠΎΠ²Ρ‚ΠΎΡ€ΠΈΡ‚Π΅ ΡƒΡ€ΠΎΠ²Π½ΠΈ ΠΌΠΎΠ΄Π΅Π»ΠΈ OSI ΠΈ основныС ΠΏΡ€ΠΎΡ‚ΠΎΠΊΠΎΠ»Ρ‹: tcp, udp, https:

    1. Π§Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ IP-адрСс?
    2. Π§Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ Π²Π΅Π±-сСрвис?
    3. КакиС ΡΡƒΡ‰Π΅ΡΡ‚Π²ΡƒΡŽΡ‚ Ρ‚ΠΈΠΏΡ‹ Π²Π΅Π±-сСрвисов?
    4. Π’ Ρ‡Π΅ΠΌ ΠΎΡ‚Π»ΠΈΡ‡ΠΈΠ΅ host ΠΈ domain?
    5. КакиС ΠΌΠ΅Ρ‚ΠΎΠ΄Ρ‹ Π² HTTP Π²Ρ‹ Π·Π½Π°Π΅Ρ‚Π΅?
    6. Π§Π΅ΠΌ ΠΎΡ‚Π»ΠΈΡ‡Π°ΡŽΡ‚ΡΡ ΠΌΠ΅Ρ‚ΠΎΠ΄Ρ‹ GET, POST ΠΈ HEAD?
    7. Π§Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ REST?
    8. Π—Π°Ρ‡Π΅ΠΌ Π½ΡƒΠΆΠ΅Π½ класс Calendar Π² Java?
    9. Как ΠΏΡ€Π΅ΠΎΠ±Ρ€Π°Π·ΠΎΠ²Π°Ρ‚ΡŒ Π΄Π°Ρ‚Ρƒ Π² Java ΠΊ Π½ΡƒΠΆΠ½ΠΎΠΌΡƒ Ρ„ΠΎΡ€ΠΌΠ°Ρ‚Ρƒ?
    10. ΠžΡ‚Π»ΠΈΡ‡ΠΈΠ΅ классов Socket ΠΈ URL?

    JVM

    Одна ΠΈΠ· ΠΌΠ½ΠΎΠ³ΠΈΡ… Ρ‡Π΅Ρ€Ρ‚ Ρ…ΠΎΡ€ΠΎΡˆΠ΅Π³ΠΎ программиста – Ρ…ΠΎΡ€ΠΎΡˆΠ΅Π΅ ΠΏΠΎΠ½ΠΈΠΌΠ°Π½ΠΈΠ΅ основ. Если Π²Ρ‹ Ρ…ΠΎΡ‚ΠΈΡ‚Π΅ ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΈΡ‚ΡŒ основы программирования Π½Π° Java, вопрос ΠΎ Ρ€Π°Π·Π½ΠΈΡ†Π΅ ΠΌΠ΅ΠΆΠ΄Ρƒ ΠΊΡƒΡ‡Π΅ΠΉ ΠΈ стСковой ΠΏΠ°ΠΌΡΡ‚ΡŒΡŽ – Ρ…ΠΎΡ€ΠΎΡˆΠΈΠΉ Π²Ρ‹Π±ΠΎΡ€. НСсмотря Π½Π° Ρ‚ΠΎ, Ρ‡Ρ‚ΠΎ ΠΎΠ±Π° ΡΠ²Π»ΡΡŽΡ‚ΡΡ Ρ‡Π°ΡΡ‚ΡŒΡŽΒ JVMΒ ΠΈΒ Π²Ρ‹Π΄Π΅Π»Π΅Π½Π½ΠΎΠΉ для процСсса JavaΒ ΠΏΠ°ΠΌΡΡ‚ΡŒΡŽ потрСбитСля, ΠΌΠ΅ΠΆΠ΄Ρƒ Π½ΠΈΠΌΠΈ Π΅ΡΡ‚ΡŒ ΠΌΠ½ΠΎΠ³ΠΎ Ρ€Π°Π·Π»ΠΈΡ‡ΠΈΠΉ.

    ΠŸΡ€ΠΈΠΌΠ΅Ρ€Ρ‹ часто Π·Π°Π΄Π°Π²Π°Π΅ΠΌΡ‹Ρ… вопросов:

    1. Π§Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ ΠΊΡƒΡ‡Π° ΠΈ стСк?
    2. Как хранятся ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Ρ‹ Π² JVM?
    3. Π§Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ string pool?
    4. Π§Ρ‚ΠΎ обСспСчиваСт ΠΏΡ€ΠΈΠ½Ρ†ΠΈΠΏ happens before?
    5. Как Ρ€Π°Π±ΠΎΡ‚Π°Π΅Ρ‚ сборщик мусора?
    6. Π’ Ρ‡Π΅ΠΌ Ρ€Π°Π·Π½ΠΈΡ†Π° ΠΌΠ΅ΠΆΠ΄Ρƒ ΠΏΠΎΡ‚ΠΎΠΊΠΎΠΌ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Ρ ΠΈ ΠΏΠΎΡ‚ΠΎΠΊΠΎΠΌ Π΄Π΅ΠΌΠΎΠ½Π°?
    7. Π§Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ OutOfMemoryError Π² Java?
    8. МоТно/Π½ΡƒΠΆΠ½ΠΎ Π»ΠΈ ΠΎΠ±Ρ€Π°Π±Π°Ρ‚Ρ‹Π²Π°Ρ‚ΡŒ ошибки JVM?
    9. Π’ Ρ‡Π΅ΠΌ Ρ€Π°Π·Π½ΠΈΡ†Π° ΠΌΠ΅ΠΆΠ΄Ρƒ ошибкой ΠΈ ΠΈΡΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠ΅ΠΌ?
    10. ΠžΠ±ΡŠΡΡΠ½ΠΈΡ‚Π΅ Ρ‡Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ JDK, JRE ΠΈ JVM.

    АрхитСктура

    1. Когда Π½ΡƒΠΆΠ½ΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ микросСрвисы, Π° ΠΊΠΎΠ³Π΄Π° ΠΌΠΎΠ½ΠΎΠ»ΠΈΡ‚?
    2. Использовали Π»ΠΈ Π²Ρ‹ eureka ΠΈΠ»ΠΈ consul?
    3. Π’ Ρ‡Π΅ΠΌ Ρ€Π°Π·Π½ΠΈΡ†Π° ΠΌΠ΅ΠΆΠ΄Ρƒ Hibernate ΠΈ JDBC?
    4. ΠšΠ°ΠΊΠΎΠ²Ρ‹ прСимущСства использования Hibernate ΠΏΠ΅Ρ€Π΅Π΄ JDBC?
    5. Π’Ρ‹Π³ΠΎΠ΄Π½ΠΎ Π»ΠΈ использованиС срСды Spring для Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠΎΠ² Java?
    6. Если Ρƒ вас Π΅ΡΡ‚ΡŒ ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ Java с ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠ΅ΠΌ ΠΊ Π±Π°Π·Π΅ Π΄Π°Π½Π½Ρ‹Ρ…, ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ΅ Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ ΡƒΠ»ΡƒΡ‡ΡˆΠΈΡ‚ΡŒ, ΠΊΠ°ΠΊ Π±Ρ‹ Π²Ρ‹ Π΅Π³ΠΎ ΡƒΠ»ΡƒΡ‡ΡˆΠΈΠ»ΠΈ?
    7. Как ΠΈΠ·Π±Π΅ΠΆΠ°Ρ‚ΡŒ Ρ‚ΡƒΠΏΠΈΠΊΠ° Π±Π°Π·Ρ‹ Π΄Π°Π½Π½Ρ‹Ρ…?
    8. Π§Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ ΡˆΠ°Ρ€Π΄ΠΈΠ½Π³ ΠΈ насколько ΠΎΠ½ ΠΏΠΎΠ»Π΅Π·Π΅Π½?
    9. Π§Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ ΠΌΠ°ΡΡˆΡ‚Π°Π±ΠΈΡ€ΡƒΠ΅ΠΌΠΎΡΡ‚ΡŒ?
    10. Π§Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ балансировка Π½Π°Π³Ρ€ΡƒΠ·ΠΊΠΈ?

    ΠŸΠ°Ρ‚Ρ‚Π΅Ρ€Π½Ρ‹

    Никто Π½Π΅ ΠΏΠΎΡ‚Ρ€Π΅Π±ΡƒΠ΅Ρ‚ ΠΏΠ΅Ρ€Π΅Ρ‡ΠΈΡΠ»ΡΡ‚ΡŒ всС ΡΡƒΡ‰Π΅ΡΡ‚Π²ΡƒΡŽΡ‰ΠΈΠ΅ ΠΏΠ°Ρ‚Ρ‚Π΅Ρ€Π½Ρ‹, Π½ΠΎ Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅, ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅ΠΌΡ‹Π΅ Π² Java ΠΈΠ»ΠΈ Spring, Π·Π½Π°Ρ‚ΡŒ Π½Π°Π΄ΠΎ. НапримСр Immutable, Singleton, Prototype, Builder, Proxy, Abstract factory, Wrapper.

    Π Π°Π·Π½ΠΎΠ΅

    На ΠΈΠ½Ρ‚Π΅Ρ€Π²ΡŒΡŽ ΠΌΠΎΠ³ΡƒΡ‚ ΠΏΠΎΠΈΠ½Ρ‚Π΅Ρ€Π΅ΡΠΎΠ²Π°Ρ‚ΡŒΡΡ, Π·Π½Π°ΠΊΠΎΠΌΡ‹ Π»ΠΈ Π²Ρ‹ с Agile, Git ΠΈΠ»ΠΈ Gitflow, REST/SOAP, Docker, ΠΈ Kubernetes. Π’Π°ΠΊΠΆΠ΅ Π²ΡΡ‚Ρ€Π΅Ρ‡Π°ΡŽΡ‚ΡΡ вопросы ΠΎΠ± использовании Π² Ρ€Π°Π±ΠΎΡ‚Π΅ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΎΠ½Π°Π»ΡŒΠ½Ρ‹Ρ… ΠΈ ΠΈΠ½Ρ‚Π΅Π³Ρ€Π°Ρ†ΠΈΠΎΠ½Π½Ρ‹Ρ… тСстов.

    ΠŸΡ€Π°ΠΊΡ‚ΠΈΡ‡Π΅ΡΠΊΠ°Ρ Ρ‡Π°ΡΡ‚ΡŒ

    На собСсСдованиях приходится Ρ€Π΅ΡˆΠ°Ρ‚ΡŒ ΠΈ практичСскиС Π·Π°Π΄Π°Ρ‡ΠΈ. Π‘ΡƒΠ΄ΡŒΡ‚Π΅ Π³ΠΎΡ‚ΠΎΠ²Ρ‹, Ρ‡Ρ‚ΠΎ ΠΊΠΎΠ΄ придСтся ΠΏΠΈΡΠ°Ρ‚ΡŒ Π±Π΅Π· использования ΠΏΡ€ΠΈΠ²Ρ‹Ρ‡Π½ΠΎΠΉ срСды Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ. Часто соискатСлям Π΄Π°ΡŽΡ‚ стандартныС алгоритмичСскиС Π·Π°Π΄Π°Ρ‡ΠΈ.

    ΠŸΡ€ΠΎ сСбя

    РаботодатСля навСрняка заинтСрСсуСт практичСский ΠΎΠΏΡ‹Ρ‚ ΠΊΠ°Π½Π΄ΠΈΠ΄Π°Ρ‚Π°, поэтому Π΄Π°ΠΆΠ΅ самыС простыС ΠΎΡ‚Π²Π΅Ρ‚Ρ‹ стоит ΠΈΠ»Π»ΡŽΡΡ‚Ρ€ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π°ΠΌΠΈ ΠΈΠ· Ρ€Π΅ΡˆΠ΅Π½Π½Ρ‹Ρ… Π²Π°ΠΌΠΈ Π·Π°Π΄Π°Ρ‡.Β Π˜Π½Ρ‚Π΅Ρ€Π²ΡŒΡŽ ΠΌΠΎΠΆΠ΅Ρ‚ Π²ΠΊΠ»ΡŽΡ‡Π°Ρ‚ΡŒ вопросы ΠΎ ΠΌΠΎΡ‚ΠΈΠ²Π°Ρ†ΠΈΠΈ, стСпСни отвСтствСнности, амбициях ΠΈ повСдСнчСских особСнностях соискатСля. Π˜Ρ… Ρ†Π΅Π»ΡŒ – побольшС ΡƒΠ·Π½Π°Ρ‚ΡŒ ΠΎ Ρ‚ΠΎΠΌ, ΠΊΠ°ΠΊ Π²Ρ‹ Ρ€Π°Π±ΠΎΡ‚Π°Π΅Ρ‚Π΅ Π² ΠΊΠΎΠ»Π»Π΅ΠΊΡ‚ΠΈΠ²Π΅, ΡΠΏΡ€Π°Π²Π»ΡΠ΅Ρ‚Π΅ΡΡŒ с нСстандартными Π·Π°Π΄Π°Ρ‡Π°ΠΌΠΈ ΠΈ Π°Π²Ρ€Π°Π»Π°ΠΌΠΈ.

    Π’ ΠΊΠΎΠ½Ρ†Π΅ собСсСдования Π½Π΅ Π·Π°Π±ΡƒΠ΄ΡŒΡ‚Π΅ ΠΏΡ€ΠΎΡΠ²ΠΈΡ‚ΡŒ ΠΈΠ½ΠΈΡ†ΠΈΠ°Ρ‚ΠΈΠ²Ρƒ ΠΈ Π·Π°Π΄Π°ΠΉΡ‚Π΅ ΠΈΠ½Ρ‚Π΅Ρ€Π΅ΡΡƒΡŽΡ‰ΠΈΠ΅ вас вопросы Ρ€Π°Π±ΠΎΡ‚ΠΎΠ΄Π°Ρ‚Π΅Π»ΡŽ. ΠšΠ°Π½Π΄ΠΈΠ΄Π°Ρ‚ Ρ‚ΠΎΠΆΠ΅ Ρ€Π΅ΡˆΠ°Π΅Ρ‚, насколько компания Π΅ΠΌΡƒ ΠΏΠΎΠ΄Ρ…ΠΎΠ΄ΠΈΡ‚. К Ρ‚ΠΎΠΌΡƒ ΠΆΠ΅ это Ρ…ΠΎΡ€ΠΎΡˆΠΈΠΉ способ ΠΏΠΎΠ»ΡƒΡ‡ΠΈΡ‚ΡŒ ΠΎΠ±Ρ€Π°Ρ‚Π½ΡƒΡŽ связь ΠΎΡ‚ ΠΈΠ½Ρ‚Π΅Ρ€Π²ΡŒΡŽΠ΅Ρ€Π° ΠΎ вашСй Ρ€Π΅Π°Π»ΡŒΠ½ΠΎΠΉ цСнности ΠΊΠ°ΠΊ программиста.

    БобСсСдованиС Java Junior. Java Core Flashcards

    ВсС классы-ΠΈΡΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΡ Ρ€Π°ΡΡˆΠΈΡ€ΡΡŽΡ‚ класс Throwable — нСпосрСдствСнноС Ρ€Π°ΡΡˆΠΈΡ€Π΅Π½ΠΈΠ΅ класса object.
    Π£ класса Throwable ΠΈ Ρƒ всСх Π΅Π³ΠΎ Ρ€Π°ΡΡˆΠΈΡ€Π΅Π½ΠΈΠΉ ΠΏΠΎ Ρ‚Ρ€Π°Π΄ΠΈΡ†ΠΈΠΈ Π΄Π²Π° конструктора:

    Throwable ΠΎ — конструктор ΠΏΠΎ ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ;
    Throwable (String message) — создаваСмый ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ Π±ΡƒΠ΄Π΅Ρ‚ ΡΠΎΠ΄Π΅Ρ€ΠΆΠ°Ρ‚ΡŒ ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ»ΡŒΠ½ΠΎΠ΅ сообщСниС message.

    ЗаписанноС Π² конструкторС сообщСниС ΠΌΠΎΠΆΠ½ΠΎ ΠΏΠΎΠ»ΡƒΡ‡ΠΈΡ‚ΡŒ Π·Π°Ρ‚Π΅ΠΌ ΠΌΠ΅Ρ‚ΠΎΠ΄ΠΎΠΌ getMessage (). Если ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ создавался конструктором ΠΏΠΎ ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ, Ρ‚ΠΎ Π΄Π°Π½Π½Ρ‹ΠΉ ΠΌΠ΅Ρ‚ΠΎΠ΄ Π²ΠΎΠ·Π²Ρ€Π°Ρ‚ΠΈΡ‚ null.
    ΠœΠ΅Ρ‚ΠΎΠ΄ toString Π²ΠΎΠ·Π²Ρ€Π°Ρ‰Π°Π΅Ρ‚ ΠΊΡ€Π°Ρ‚ΠΊΠΎΠ΅ описаниС события, ΠΈΠΌΠ΅Π½Π½ΠΎ ΠΎΠ½ Ρ€Π°Π±ΠΎΡ‚Π°Π» Π² ΠΏΡ€Π΅Π΄Ρ‹Π΄ΡƒΡ‰ΠΈΡ… листингах.

    Π’Ρ€ΠΈ ΠΌΠ΅Ρ‚ΠΎΠ΄Π° выводят сообщСния ΠΎΠ±ΠΎ всСх ΠΌΠ΅Ρ‚ΠΎΠ΄Π°Ρ…, Π²ΡΡ‚Ρ€Π΅Ρ‚ΠΈΠ²ΡˆΠΈΡ…ΡΡ ΠΏΠΎ ΠΏΡƒΡ‚ΠΈ «ΠΏΠΎΠ»Π΅Ρ‚Π°» ΠΈΡΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΡ:

    printstackTrace() — Π²Ρ‹Π²ΠΎΠ΄ΠΈΡ‚ сообщСния Π² стандартный Π²Ρ‹Π²ΠΎΠ΄, ΠΊΠ°ΠΊ ΠΏΡ€Π°Π²ΠΈΠ»ΠΎ, это консоль;
    printStackTrace(PrintStream stream) — Π²Ρ‹Π²ΠΎΠ΄ΠΈΡ‚ сообщСния Π² Π±Π°ΠΉΡ‚ΠΎΠ²Ρ‹ΠΉ ΠΏΠΎΡ‚ΠΎΠΊ stream;
    printStackTrace(PrintWriter stream) — Π²Ρ‹Π²ΠΎΠ΄ΠΈΡ‚ сообщСния Π² ΡΠΈΠΌΠ²ΠΎΠ»ΡŒΠ½Ρ‹ΠΉ ΠΏΠΎΡ‚ΠΎΠΊ stream.

    Π£ класса Throwable Π΄Π²Π° нСпосрСдствСнных наслСдника — классы Error ΠΈ Exception. Они Π½Π΅ Π΄ΠΎΠ±Π°Π²Π»ΡΡŽΡ‚ Π½ΠΎΠ²Ρ‹Ρ… ΠΌΠ΅Ρ‚ΠΎΠ΄ΠΎΠ², Π° слуТат для раздСлСния классов-ΠΈΡΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠΉ Π½Π° Π΄Π²Π° Π±ΠΎΠ»ΡŒΡˆΠΈΡ… сСмСйства — сСмСйство классов-ошибок (error) ΠΈ сСмСйство собствСнно классов-ΠΈΡΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠΉ (exception).

    ΠšΠ»Π°ΡΡΡ‹-ошибки, Ρ€Π°ΡΡˆΠΈΡ€ΡΡŽΡ‰ΠΈΠ΅ класс Error, ΡΠ²ΠΈΠ΄Π΅Ρ‚Π΅Π»ΡŒΡΡ‚Π²ΡƒΡŽΡ‚ ΠΎ Π²ΠΎΠ·Π½ΠΈΠΊΠ½ΠΎΠ²Π΅Π½ΠΈΠΈ слоТных ситуаций Π² Π²ΠΈΡ€Ρ‚ΡƒΠ°Π»ΡŒΠ½ΠΎΠΉ машинС Java. Π˜Ρ… ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠ° Ρ‚Ρ€Π΅Π±ΡƒΠ΅Ρ‚ Π³Π»ΡƒΠ±ΠΎΠΊΠΎΠ³ΠΎ понимания всСх тонкостСй Ρ€Π°Π±ΠΎΡ‚Ρ‹ JVM. Π•Π΅ Π½Π΅ рСкомСндуСтся Π²Ρ‹ΠΏΠΎΠ»Π½ΡΡ‚ΡŒ Π² ΠΎΠ±Ρ‹Ρ‡Π½ΠΎΠΉ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ΅. НС ΡΠΎΠ²Π΅Ρ‚ΡƒΡŽΡ‚ Π΄Π°ΠΆΠ΅ Π²Ρ‹Π±Ρ€Π°ΡΡ‹Π²Π°Ρ‚ΡŒ ошибки ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€ΠΎΠΌ throw. He слСдуСт Π΄Π΅Π»Π°Ρ‚ΡŒ свои классы-ΠΈΡΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΡ Ρ€Π°ΡΡˆΠΈΡ€Π΅Π½ΠΈΡΠΌΠΈ класса Error ΠΈΠ»ΠΈ ΠΊΠ°ΠΊΠΎΠ³ΠΎ-Ρ‚ΠΎ Π΅Π³ΠΎ подкласса.

    ИмСна классов-ошибок, ΠΏΠΎ соглашСнию, Π·Π°ΠΊΠ°Π½Ρ‡ΠΈΠ²Π°ΡŽΡ‚ΡΡ словом Error.

    ΠšΠ»Π°ΡΡΡ‹-ΠΈΡΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΡ, Ρ€Π°ΡΡˆΠΈΡ€ΡΡŽΡ‰ΠΈΠ΅ класс Exception, ΠΎΡ‚ΠΌΠ΅Ρ‡Π°ΡŽΡ‚ Π²ΠΎΠ·Π½ΠΈΠΊΠ½ΠΎΠ²Π΅Π½ΠΈΠ΅ ΠΎΠ±Ρ‹Ρ‡Π½ΠΎΠΉ Π½Π΅ΡˆΡ‚Π°Ρ‚Π½ΠΎΠΉ ситуации, ΠΊΠΎΡ‚ΠΎΡ€ΡƒΡŽ ΠΌΠΎΠΆΠ½ΠΎ ΠΈ Π΄Π°ΠΆΠ΅ Π½ΡƒΠΆΠ½ΠΎ ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚Π°Ρ‚ΡŒ. Π’Π°ΠΊΠΈΠ΅ ΠΈΡΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΡ слСдуСт Π²Ρ‹Π±Ρ€ΠΎΡΠΈΡ‚ΡŒ ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€ΠΎΠΌ throw. Классов-ΠΈΡΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠΉ ΠΎΡ‡Π΅Π½ΡŒ ΠΌΠ½ΠΎΠ³ΠΎ, Π±ΠΎΠ»Π΅Π΅ двухсот. Они разбросаны Π±ΡƒΠΊΠ²Π°Π»ΡŒΠ½ΠΎ ΠΏΠΎ всСм ΠΏΠ°ΠΊΠ΅Ρ‚Π°ΠΌ J2SDK. Π’ Π±ΠΎΠ»ΡŒΡˆΠΈΠ½ΡΡ‚Π²Π΅ случаСв Π²Ρ‹ способны ΠΏΠΎΠ΄ΠΎΠ±Ρ€Π°Ρ‚ΡŒ Π³ΠΎΡ‚ΠΎΠ²Ρ‹ΠΉ класс-ΠΈΡΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠ΅ для ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ ΠΈΡΠΊΠ»ΡŽΡ‡ΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹Ρ… ситуаций Π² своСй ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ΅. ΠŸΡ€ΠΈ ΠΆΠ΅Π»Π°Π½ΠΈΠΈ ΠΌΠΎΠΆΠ½ΠΎ ΡΠΎΠ·Π΄Π°Ρ‚ΡŒ ΠΈ свой класс-ΠΈΡΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠ΅, Ρ€Π°ΡΡˆΠΈΡ€ΠΈΠ² класс Exception ΠΈΠ»ΠΈ любой Π΅Π³ΠΎ подкласс.

    Π‘Ρ€Π΅Π΄ΠΈ классов-ΠΈΡΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠΉ выдСляСтся класс RuntimeException — прямоС Ρ€Π°ΡΡˆΠΈΡ€Π΅Π½ΠΈΠ΅ класса Exception. Π’ Π½Π΅ΠΌ ΠΈ Π΅Π³ΠΎ подклассах ΠΎΡ‚ΠΌΠ΅Ρ‡Π°ΡŽΡ‚ΡΡ ΠΈΡΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΡ, возникшиС ΠΏΡ€ΠΈ Ρ€Π°Π±ΠΎΡ‚Π΅ JVM, Π½ΠΎ Π½Π΅ ΡΡ‚ΠΎΠ»ΡŒ ΡΠ΅Ρ€ΡŒΠ΅Π·Π½Ρ‹Π΅, ΠΊΠ°ΠΊ ошибки. Π˜Ρ… ΠΌΠΎΠΆΠ½ΠΎ ΠΎΠ±Ρ€Π°Π±Π°Ρ‚Ρ‹Π²Π°Ρ‚ΡŒ ΠΈ Π²Ρ‹Π±Ρ€Π°ΡΡ‹Π²Π°Ρ‚ΡŒ, Ρ€Π°ΡΡˆΠΈΡ€ΡΡ‚ΡŒ своими классами, Π½ΠΎ Π»ΡƒΡ‡ΡˆΠ΅ Π΄ΠΎΠ²Π΅Ρ€ΠΈΡ‚ΡŒ это JVM, ΠΏΠΎΡΠΊΠΎΠ»ΡŒΠΊΡƒ Ρ‡Π°Ρ‰Π΅ всСго это просто ошибка Π² ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ΅, ΠΊΠΎΡ‚ΠΎΡ€ΡƒΡŽ Π½Π°Π΄ΠΎ ΠΈΡΠΏΡ€Π°Π²ΠΈΡ‚ΡŒ. ΠžΡΠΎΠ±Π΅Π½Π½ΠΎΡΡ‚ΡŒ ΠΈΡΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠΉ Π΄Π°Π½Π½ΠΎΠ³ΠΎ класса Π² Ρ‚ΠΎΠΌ, Ρ‡Ρ‚ΠΎ ΠΈΡ… Π½Π΅ Π½Π°Π΄ΠΎ ΠΎΡ‚ΠΌΠ΅Ρ‡Π°Ρ‚ΡŒ Π² Π·Π°Π³ΠΎΠ»ΠΎΠ²ΠΊΠ΅ ΠΌΠ΅Ρ‚ΠΎΠ΄Π° ΠΏΠΎΠΌΠ΅Ρ‚ΠΊΠΎΠΉ throws.

    ИмСна классов-ΠΈΡΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠΉ, ΠΏΠΎ соглашСнию, Π·Π°ΠΊΠ°Π½Ρ‡ΠΈΠ²Π°ΡŽΡ‚ΡΡ словом Exception.

    JavaCore — JAVARUSH Home work

    ОписаниС¢

    ΠšΠ²Π΅ΡΡ‚ Β«Java CoreΒ» рассчитан Π½Π° Ρ‚Π΅Ρ…, ΠΊΡ‚ΠΎ ΡƒΠΆΠ΅ ΠΏΠΎΠ»ΡƒΡ‡ΠΈΠ» ΠΌΠΈΠ½ΠΈΠΌΠ°Π»ΡŒΠ½ΡƒΡŽ ΠΏΠΎΠ΄Π³ΠΎΡ‚ΠΎΠ²ΠΊΡƒ ΠΏΠΎ Java (Π² Ρ€Π°ΠΌΠΊΠ°Ρ… ΠšΠ²Π΅ΡΡ‚Π° Β«Java SyntaxΒ» JavaRush). Π—Π΄Π΅ΡΡŒ Π²Π°ΠΌ прСдстоит ΠΏΡ€ΠΎΠΉΡ‚ΠΈ 10 ΡƒΠ²Π»Π΅ΠΊΠ°Ρ‚Π΅Π»ΡŒΠ½Ρ‹Ρ… 
    ΡƒΡ€ΠΎΠ²Π½Π΅ΠΉ, Π² ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Ρ… Π²Ρ‹ ΠΈΠ·ΡƒΡ‡ΠΈΡ‚Π΅ основы ООП, ΠΏΠΎΠ·Π½Π°ΠΊΠΎΠΌΠΈΡ‚Π΅ΡΡŒ с ΠΏΠΎΡ‚ΠΎΠΊΠ°ΠΌΠΈ, сСриализациСй, ΠΏΠ΅Ρ€Π΅Π³Ρ€ΡƒΠ·ΠΊΠΎΠΉ ΠΌΠ΅Ρ‚ΠΎΠ΄ΠΎΠ², ΡƒΠ·Π½Π°Π΅Ρ‚Π΅ ΠΌΠ½ΠΎΠ³ΠΎ Π½ΠΎΠ²ΠΎΠ³ΠΎ ΠΎΠ± интСрфСйсах ΠΈ мноТСствСнном 
    наслСдовании. Π£Ρ‡Ρ‘Π±Π° ΡƒΠΆΠ΅ Π½Π΅ Ρ‚Π°ΠΊ проста, ΠΊΠ°ΠΊ Π½Π° ΠšΠ²Π΅ΡΡ‚Π΅ Β«Java SyntaxΒ», Π½ΠΎ рСгулярная ΠΏΡ€Π°ΠΊΡ‚ΠΈΠΊΠ° β€” Ρ€Π΅ΡˆΠ΅Π½ΠΈΠ΅ Π·Π°Π΄Π°Ρ‡ β€” ΠΏΠΎΠΌΠΎΠΆΠ΅Ρ‚ Π²Π°ΠΌ ΡƒΡΠΏΠ΅ΡˆΠ½ΠΎ ΠΏΡ€ΠΎΠΉΡ‚ΠΈ всС Π΅Π³ΠΎ 10 ΡƒΡ€ΠΎΠ²Π½Π΅ΠΉ ΠΈ Π±Ρ‹Ρ‚ΡŒ 
    Π³ΠΎΡ‚ΠΎΠ²Ρ‹ΠΌ ΠΊ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠ΅ ΠΌΠΈΠ½ΠΈ-ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ΠΎΠ² Π² самом блиТайшСм Π±ΡƒΠ΄ΡƒΡ‰Π΅ΠΌ.
    

    ОглавлСниС¢

    Java Core. Π£Ρ€ΠΎΠ²Π΅Π½ΡŒ 1 ΠžΡΠ½ΠΎΠ²Ρ‹ ООП: основныС ΠΏΡ€ΠΈΠ½Ρ†ΠΈΠΏΡ‹, наслСдованиС, инкапсуляция.
    Java Core. Π£Ρ€ΠΎΠ²Π΅Π½ΡŒ 2 ΠžΡΠ½ΠΎΠ²Ρ‹ ООП: ΠΏΠ΅Ρ€Π΅Π³Ρ€ΡƒΠ·ΠΊΠ°, ΠΏΠΎΠ»ΠΈΠΌΠΎΡ€Ρ„ΠΈΠ·ΠΌ, абстракция, интСрфСйсы.
    Java Core. Π£Ρ€ΠΎΠ²Π΅Π½ΡŒ 3 Π˜Π½Ρ‚Π΅Ρ€Ρ„Π΅ΠΉΡΡ‹: сравнСниС с абстрактным классом, мноТСствСнноС наслСдованиС.
    Java Core. Π£Ρ€ΠΎΠ²Π΅Π½ΡŒ 4 ΠŸΡ€ΠΈΠ²Π΅Π΄Π΅Π½ΠΈΠ΅ Ρ‚ΠΈΠΏΠΎΠ², instanceof. Π‘ΠΎΠ»ΡŒΡˆΠ°Ρ Π·Π°Π΄Π°Ρ‡Π° Π½Π° интСрфСйсы.
    Java Core. Π£Ρ€ΠΎΠ²Π΅Π½ΡŒ 5 ΠŸΠ΅Ρ€Π΅Π³Ρ€ΡƒΠ·ΠΊΠ° ΠΌΠ΅Ρ‚ΠΎΠ΄ΠΎΠ², ΠΎΡΠΎΠ±Π΅Π½Π½ΠΎΡΡ‚ΡŒ Π²Ρ‹Π·ΠΎΠ²Π° конструкторов.
    Java Core. Π£Ρ€ΠΎΠ²Π΅Π½ΡŒ 6 Знакомство с нитями: Thread, Runnable, start, join, interrupt, sleep
    Java Core. Π£Ρ€ΠΎΠ²Π΅Π½ΡŒ 7 Знакомство с нитями: synchronized, volatile, yield
    Java Core. Π£Ρ€ΠΎΠ²Π΅Π½ΡŒ 8 Знакомство с ΠΏΠΎΡ‚ΠΎΠΊΠ°ΠΌΠΈ: InputStream/OutputStream, FileInputStream, FileOutputStream
    Java Core. Π£Ρ€ΠΎΠ²Π΅Π½ΡŒ 9 ΠΈ 10 Знакомство с ΠΏΠΎΡ‚ΠΎΠΊΠ°ΠΌΠΈ: Reader/Writer, FileReader/FileWriter ΠΈ БСриализация


    Java Core. Π£Ρ€ΠΎΠ²Π΅Π½ΡŒ 1

    ΠžΡΠ½ΠΎΠ²Ρ‹ ООП: основныС ΠΏΡ€ΠΈΠ½Ρ†ΠΈΠΏΡ‹, наслСдованиС, инкапсуляция.ΒΆ

    1. ΠžΠ±ΡŠΠ΅ΠΊΡ‚Π½ΠΎ-ΠΎΡ€ΠΈΠ΅Π½Ρ‚ΠΈΡ€ΠΎΠ²Π°Π½Π½ΠΎΠ΅ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅
    2. НаслСдованиС как явлСниС

    Java Core. Π£Ρ€ΠΎΠ²Π΅Π½ΡŒ 2

    ΠžΡΠ½ΠΎΠ²Ρ‹ ООП: ΠΏΠ΅Ρ€Π΅Π³Ρ€ΡƒΠ·ΠΊΠ°, ΠΏΠΎΠ»ΠΈΠΌΠΎΡ€Ρ„ΠΈΠ·ΠΌ, абстракция, интСрфСйсы.ΒΆ

    1. Thinking in java: ΠŸΠΎΠ»ΠΈΠΌΠΎΡ€Ρ„ΠΈΠ·ΠΌ

    Java Core. Π£Ρ€ΠΎΠ²Π΅Π½ΡŒ 3

    Π˜Π½Ρ‚Π΅Ρ€Ρ„Π΅ΠΉΡΡ‹: сравнСниС с абстрактным классом, мноТСствСнноС наслСдованиС.ΒΆ

    1. Thinking in java: Π˜Π½Ρ‚Π΅Ρ€Ρ„Π΅ΠΉΡΡ‹

    Java Core. Π£Ρ€ΠΎΠ²Π΅Π½ΡŒ 4

    ΠŸΡ€ΠΈΠ²Π΅Π΄Π΅Π½ΠΈΠ΅ Ρ‚ΠΈΠΏΠΎΠ², instanceof. Π‘ΠΎΠ»ΡŒΡˆΠ°Ρ Π·Π°Π΄Π°Ρ‡Π° Π½Π° интСрфСйсы.ΒΆ

    1. Thinking in java: Π˜Π½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΡ ΠΎ Ρ‚ΠΈΠΏΠ°Ρ…

    Java Core. Π£Ρ€ΠΎΠ²Π΅Π½ΡŒ 5

    ΠŸΠ΅Ρ€Π΅Π³Ρ€ΡƒΠ·ΠΊΠ° ΠΌΠ΅Ρ‚ΠΎΠ΄ΠΎΠ², ΠΎΡΠΎΠ±Π΅Π½Π½ΠΎΡΡ‚ΡŒ Π²Ρ‹Π·ΠΎΠ²Π° конструкторов.ΒΆ

    1. Thinking in java: Π˜Π½ΠΈΡ†ΠΈΠ°Π»ΠΈΠ·Π°Ρ†ΠΈΡ Ρ‡Π»Π΅Π½ΠΎΠ² класса

    Java Core. Π£Ρ€ΠΎΠ²Π΅Π½ΡŒ 6

    Знакомство с нитями: Thread, Runnable, start, join, interrupt, sleepΒΆ

    1. Thinking in java: ΠŸΠ°Ρ€Π°Π»Π»Π΅Π»ΡŒΠ½ΠΎΠ΅ Π²Ρ‹ΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅

    Java Core. Π£Ρ€ΠΎΠ²Π΅Π½ΡŒ 7

    Знакомство с нитями: synchronized, volatile, yieldΒΆ

    1. Thinking in java: ΠšΡ€ΠΈΡ‚ΠΈΡ‡Π΅ΡΠΊΠΈΠ΅ сСкции

    Java Core. Π£Ρ€ΠΎΠ²Π΅Π½ΡŒ 8

    Знакомство с ΠΏΠΎΡ‚ΠΎΠΊΠ°ΠΌΠΈ: InputStream/OutputStream, FileInputStream, FileOutputStreamΒΆ

    1. Thinking in java: Π’Π²ΠΎΠ΄ ΠΈ Π²Ρ‹Π²ΠΎΠ΄
    2. JavaRush: Как ΠΏΡ€Π°Π²ΠΈΠ»ΡŒΠ½ΠΎ Π΄Π΅Π»Π°Ρ‚ΡŒ сортировку Π² Java

    Java Core.

    Π£Ρ€ΠΎΠ²Π΅Π½ΡŒ 9 ΠΈ 10 Знакомство с ΠΏΠΎΡ‚ΠΎΠΊΠ°ΠΌΠΈ: Reader/Writer, FileReader/FileWriter ΠΈ БСриализация¢

    1. Thinking in java: Π’Π²ΠΎΠ΄ ΠΈ Π²Ρ‹Π²ΠΎΠ΄
    2. Π§Π˜Π‘Π›Π ΠΠ ΠœΠ‘Π’Π ΠžΠΠ“Π
    3. Π˜Π·ΡƒΡ‡ΠΈΡ‚Π΅ сСкрСты Java Serialization API
    4. ΠŸΡΡ‚ΡŒ Π²Π΅Ρ‰Π΅ΠΉ, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Π²Ρ‹ Π½Π΅ Π·Π½Π°Π»ΠΈ ΠΎ… сСриализации Java-ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ΠΎΠ²
    5. Как я ΠΌΠΎΠ³Ρƒ ΠΎΠ±ΡŠΠ΅Π΄ΠΈΠ½ΠΈΡ‚ΡŒ Π΄Π²Π° массива Π² Java?
    6. Π‘ΠΎΡ€Ρ‚ΠΈΡ€ΠΎΠ²ΠΊΠ° HashMap значСниями
    7. Π€ΠžΠ ΠœΠΠ’Π˜Π ΠžΠ’ΠΠΠ˜Π• Π§Π˜Π‘Π•Π› И Π’Π•ΠšΠ‘Π’Π Π’ JAVA.
    8. Class Pattern
    9. НСвСрный Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚ Java Math.pow
    10. Поиск ΠΏΡ€ΡΠΌΠΎΡƒΠ³ΠΎΠ»ΡŒΠ½ΠΈΠΊΠΎΠ² Π² ΠΌΠ°Ρ‚Ρ€ΠΈΡ†Π΅
    11. Найти ΠΏΠΎΠ΄ΠΌΠ°Ρ‚Ρ€ΠΈΡ†Ρƒ ΠΏΠΎ условиям

    Java-программист Π ΠΎΠ±Π΅Ρ€Ρ‚ΠΎ ΠšΠΎΡ€Ρ‚Π΅Π· β€” ΠΎΠ± ΠΎΠ±ΡƒΡ‡Π΅Π½ΠΈΠΈ Java ΠΈ Π³Π»Π°Π²Π½Ρ‹Ρ… ΠΈΠ½Ρ„Π»ΡŽΠ΅Π½ΡΠ΅Ρ€Π°Ρ…


    Π ΠΎΠ±Π΅Ρ€Ρ‚ΠΎ ΠšΠΎΡ€Ρ‚Π΅Π· β€” Java-Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊ с Π±ΠΎΠ»Π΅Π΅ Ρ‡Π΅ΠΌ дСсятилСтним ΠΎΠΏΡ‹Ρ‚ΠΎΠΌ, Π³Π»Π°Π²Π° Coimbra JUG ΠΈ ΠΎΡΠ½ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒ JNation Conference Π² ΠŸΠΎΡ€Ρ‚ΡƒΠ³Π°Π»ΠΈΠΈ.

    Coimbra JUG β€” сообщСство программистов, Ρ€Π°Π±ΠΎΡ‚Π°ΡŽΡ‰ΠΈΡ… Π½Π° языкС Java. ΠžΠ±ΡŠΠ΅Π΄ΠΈΠ½ΡΠ΅Ρ‚ Π² ΠΏΠ΅Ρ€Π²ΡƒΡŽ ΠΎΡ‡Π΅Ρ€Π΅Π΄ΡŒ программистов ΠΈΠ· ΠšΠΎΠΈΠΌΠ±Ρ€Ρ‹ ΠΈ Π¦Π΅Π½Ρ‚Ρ€Π°Π»ΡŒΠ½ΠΎΠΉ Π·ΠΎΠ½Ρ‹ Π² ΠŸΠΎΡ€Ρ‚ΡƒΠ³Π°Π»ΠΈΠΈ. Coimbra JUG ΠΎΡ€Π³Π°Π½ΠΈΠ·ΡƒΠ΅Ρ‚ мСроприятия, посвящСнныС Java ΠΈ тСхнологиям, связанным с JVM (Π²ΠΈΡ€Ρ‚ΡƒΠ°Π»ΡŒΠ½Π°Ρ машина Java, основная Ρ‡Π°ΡΡ‚ΡŒ ΠΈΡΠΏΠΎΠ»Π½ΡΡŽΡ‰Π΅ΠΉ систСмы Java β€” Β«Π₯Π°ΠΉΡ‚Π΅ΠΊΒ»), с Ρ†Π΅Π»ΡŒΡŽ развития ΠΈ популяризации этого языка. НаиболСС извСстная конфСрСнция β€” JNation Conference, посвящСнная новСйшим Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠ°ΠΌ Π½Π° Java. ΠŸΡ€ΠΎΠ²ΠΎΠ΄ΠΈΡ‚ΡΡ Π΅ΠΆΠ΅Π³ΠΎΠ΄Π½ΠΎ Π² ΠšΠΎΠΈΠΌΠ±Ρ€Π΅.


    ΠŸΡ€ΠΎ язык Java

    β€” КакиС ΡΠΈΠ»ΡŒΠ½Ρ‹Π΅ ΠΈ основныС стороны Ρƒ Java ΠΊΠ°ΠΊ Ρƒ языка программирования?

    β€” Π‘Ρ‚Π°Π±ΠΈΠ»ΡŒΠ½Ρ‹ΠΉ ΠΈ Π²Ρ‹Ρ€Π°Π·ΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹ΠΉ язык. Для мСня самая Π»ΡƒΡ‡ΡˆΠ°Ρ Ρ‡Π΅Ρ€Ρ‚Π° Java β€” это экосистСма. БущСствуСт ΠΎΠ³Ρ€ΠΎΠΌΠ½ΠΎΠ΅ количСство Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊ с ΠΎΡ‚ΠΊΡ€Ρ‹Ρ‚Ρ‹ΠΌ исходным ΠΊΠΎΠ΄ΠΎΠΌ, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΌΠΎΠΆΠ½ΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΡƒΠΏΡ€ΠΎΡΡ‚ΠΈΡ‚ΡŒ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΡƒ прилоТСния. Они Ρ…ΠΎΡ€ΠΎΡˆΠΎ Π·Π°Π΄ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚ΠΈΡ€ΠΎΠ²Π°Π½Ρ‹ ΠΈ протСстированы, поэтому Π²Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ ΡΠΎΡΡ€Π΅Π΄ΠΎΡ‚ΠΎΡ‡ΠΈΡ‚ΡŒΡΡ Π½Π° Ρ€Π΅Π°Π»ΡŒΠ½Ρ‹Ρ… Π΄Π΅Π»ΠΎΠ²Ρ‹Ρ… потрСбностях.

    β€” Java Π°ΠΊΡ‚ΠΈΠ²Π½ΠΎ мСняСтся, ΠΊΠ°ΠΊΠΈΠ΅ Ρ‚Π΅Π½Π΄Π΅Π½Ρ†ΠΈΠΈ Π·Π°Π΄Π°ΡŽΡ‚ Ρ‚ΠΎΠ½ Π² этой области Π½Π° сСгодняшний дСнь?

    β€” ΠšΠΎΠ½Π΅Ρ‡Π½ΠΎ, ΠΎΠ±Π»Π°ΠΊΠΎ. И это ΠΎΡ‡Π΅Π½ΡŒ интСрСсная Π·Π°Π΄Π°Ρ‡Π° для Java, учитывая Ρ‚ΠΎΡ‚ Ρ„Π°ΠΊΡ‚, Ρ‡Ρ‚ΠΎ язык ΡƒΠΆΠ΅ сущСствовал Π·Π°Π΄ΠΎΠ»Π³ΠΎ Π΄ΠΎ Ρ‚ΠΎΠ³ΠΎ, ΠΊΠ°ΠΊ ΠΌΡ‹ ΠΏΠΎΠ»ΡƒΡ‡ΠΈΠ»ΠΈ ΠΎΠ±Π»Π°ΠΊΠΎ Π²Π΅Π·Π΄Π΅ ΠΈ для ΠΊΠ°ΠΆΠ΄ΠΎΠ³ΠΎ. Π’Π°ΠΊ Ρ‡Ρ‚ΠΎ ΠΎΠ½ Π½Π΅ Π±Ρ‹Π» Π³ΠΎΡ‚ΠΎΠ² ΠΊ этому, ΠΈ Π΅ΠΌΡƒ Ρ‚ΠΎΠΆΠ΅ ΠΏΡ€ΠΈΡˆΠ»ΠΎΡΡŒ Π°Π΄Π°ΠΏΡ‚ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒΡΡ. Если Π²Π·Π³Π»ΡΠ½ΡƒΡ‚ΡŒ Π½Π° ΠΈΡΡ‚ΠΎΡ€ΠΈΡŽ Java, основныС Ρ€Π΅Π»ΠΈΠ·Ρ‹ появлялись Ρ€Π°Π· Π² Ρ‚Ρ€ΠΈ-Ρ‡Π΅Ρ‚Ρ‹Ρ€Π΅ Π³ΠΎΠ΄Π°. Π’Π΅ΠΏΠ΅Ρ€ΡŒ язык приспособился Π²Ρ‹ΠΏΡƒΡΠΊΠ°Ρ‚ΡŒ Π·Π°ΠΏΠ»Π°Π½ΠΈΡ€ΠΎΠ²Π°Π½Π½Ρ‹Π΅ Ρ€Π΅Π»ΠΈΠ·Ρ‹ ΠΊΠ°ΠΆΠ΄Ρ‹Π΅ ΡˆΠ΅ΡΡ‚ΡŒ мСсяцСв, Ρ‡Ρ‚ΠΎΠ±Ρ‹ Π»ΡƒΡ‡ΡˆΠ΅ ΠΎΡ‚Π²Π΅Ρ‡Π°Ρ‚ΡŒ сСгодняшним ΠΈ Π·Π°Π²Ρ‚Ρ€Π°ΡˆΠ½ΠΈΠΌ Π²Ρ‹Π·ΠΎΠ²Π°ΠΌ.


    НовыС Ρ‚Π΅Π½Π΄Π΅Π½Ρ†ΠΈΠΈ Java:

    1. Π˜Π½Ρ‚Π΅Ρ€ΠΏΡ€Π΅Ρ‚Π°Ρ‚ΠΎΡ€ Java JShell для изучСния языка ΠΈ прототипирования ΠΊΠΎΠ΄Π°.
    2. NodeJS для создания ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌ для дСсктопных устройств ΠΈ сСрвСрных ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ Π±Π΅Π· использования Π±Ρ€Π°ΡƒΠ·Π΅Ρ€Π°.
    3. Π€Ρ€Π΅ΠΉΠΌΠ²ΠΎΡ€ΠΊΠΈ для Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ Π²Π΅Π±-сайтов ΠΈ ΠΌΠΎΠ±ΠΈΠ»ΡŒΠ½Ρ‹Ρ… ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ: ReactJS, AngularJS, Meteor.js ΠΈ Π΄Ρ€ΡƒΠ³ΠΈΠ΅. Π—Π½Π°Ρ‡ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎ ΡƒΠΏΡ€ΠΎΡ‰Π°ΡŽΡ‚ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΡƒ.

    О Ρ€Π°Π±ΠΎΡ‚Π΅ программиста

    β€” Π§Ρ‚ΠΎ Π±Ρ‹ Π²Ρ‹ посовСтовали Π½Π°Ρ‡ΠΈΠ½Π°ΡŽΡ‰ΠΈΠΌ программистам для погруТСния Π² ΡΠΏΠ΅Ρ†ΠΈΠ°Π»ΡŒΠ½ΠΎΡΡ‚ΡŒ ΠΈ поиска Ρ€Π°Π±ΠΎΡ‚Ρ‹?

    β€” Как насчСт Ρ‚ΠΎΠ³ΠΎ, Ρ‡Ρ‚ΠΎΠ±Ρ‹ просто вСсти свой Π±Π»ΠΎΠ³ ΠΈΠ»ΠΈ ΠΊΠ°ΠΊΠΎΠΉ-Ρ‚ΠΎ Π΄Ρ€ΡƒΠ³ΠΎΠΉ Π²ΠΈΠ΄ ΠΈΠ½Ρ‚Π΅Ρ€Π½Π΅Ρ‚-страницы? МногиС люди Ρ‚Π°ΠΊ ΠΈ Π½Π°Ρ‡ΠΈΠ½Π°Π»ΠΈ, ΠΈ это ΠΎΡ‚Π»ΠΈΡ‡Π½Ρ‹ΠΉ способ Π·Π°Π½ΡΡ‚ΡŒΡΡ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ΠΌ. Π― Ρ‚ΠΎΠΆΠ΅ Π½Π°Ρ‡ΠΈΠ½Π°Π» с Π±Π»ΠΎΠ³Π°. Π‘ΠΏΠ΅Ρ€Π²Π° с HTML, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ сам ΠΏΠΎ сСбС Π½Π΅ являСтся языком программирования, Π½ΠΎ Π² ΠΈΡ‚ΠΎΠ³Π΅ я Π½Π°Ρ‡Π°Π» ΡΠΎΠ·Π΄Π°Π²Π°Ρ‚ΡŒ всё Π±ΠΎΠ»Π΅Π΅ ΠΈ Π±ΠΎΠ»Π΅Π΅ ΠΏΡ€ΠΎΠ΄Π²ΠΈΠ½ΡƒΡ‚Ρ‹Π΅ Π²Π΅Ρ‰ΠΈ, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Ρ‚Ρ€Π΅Π±ΠΎΠ²Π°Π»ΠΈ ΠΎΡ‚ мСня использования JavaScript, Π° Π·Π°Ρ‚Π΅ΠΌ ΠΈ Java. МногиС люди Π½Π°Ρ‡ΠΈΠ½Π°ΡŽΡ‚ с Python, Ρ‡Ρ‚ΠΎ Ρ‚ΠΎΠΆΠ΅ Π·Π°ΠΌΠ΅Ρ‡Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎ. Π­Ρ‚ΠΎ Π½Π΅ ΠΎΡ‡Π΅Π½ΡŒ слоТно, ΠΈ Π²Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ Π΄ΠΎΡΡ‚ΠΈΡ‡ΡŒ ΡƒΠ΄ΠΈΠ²ΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹Ρ… Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚ΠΎΠ².

    β€” КакиС Ρ‚Π΅Ρ…Π½ΠΎΠ»ΠΎΠ³ΠΈΠΈ ΠΎΠ±ΡΠ·Π°Ρ‚Π΅Π»ΡŒΠ½Ρ‹ ΠΊ ΠΈΠ·ΡƒΡ‡Π΅Π½ΠΈΡŽ Java-программистом?

    β€” ΠšΠ°ΠΆΠ΄ΠΎΠΌΡƒ программисту Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌ Π½Π°Π±ΠΎΡ€ основ, ΠΈ это Π½Π΅ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ ΠΈΡΠΊΠ»ΡŽΡ‡ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎ для Java, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΏΠΎΠΌΠΎΠ³ΡƒΡ‚ Π΅ΠΌΡƒ ΡΡ„ΠΎΡ€ΠΌΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ ΠΎΠ±Ρ‰Π΅Π΅ прСдставлСниС ΠΎ Ρ‚ΠΎΠΌ, ΠΊΠ°ΠΊ всё Ρ€Π°Π±ΠΎΡ‚Π°Π΅Ρ‚. Полагаю, этот список ΠΌΠΎΠΆΠ½ΠΎ ΠΎΡΠΏΠΎΡ€ΠΈΡ‚ΡŒ, Π½ΠΎ я Π±Ρ‹ Π²ΠΊΠ»ΡŽΡ‡ΠΈΠ» Π² Π½Π΅Π³ΠΎ Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌΡ‹, созданиС сСти, ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΎΠ½Π½Ρ‹Π΅ систСмы, Π±Π°Π·Ρ‹ Π΄Π°Π½Π½Ρ‹Ρ…, распрСдСлСнныС систСмы, Π±Π΅Π·ΠΎΠΏΠ°ΡΠ½ΠΎΡΡ‚ΡŒ ΠΈ ΠΌΠ°Ρ‚Π΅ΠΌΠ°Ρ‚ΠΈΠΊΡƒ.

    β€” Π‘Ρ‚ΠΎΠΈΡ‚ Π»ΠΈ программисту Π²Ρ‹Π±ΠΈΡ€Π°Ρ‚ΡŒ ΠΌΠ΅ΠΆΠ΄Ρƒ full stack (ΡƒΠ½ΠΈΠ²Π΅Ρ€ΡΠ°Π»ΡŒΠ½Ρ‹ΠΌ) Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠΎΠΌ ΠΈ ΡƒΠ·ΠΊΠΈΠΌ спСциалистом?

    β€” БСйчас ΡƒΠΆΠ΅ Ρ‡Ρ€Π΅Π·Π²Ρ‹Ρ‡Π°ΠΉΠ½ΠΎ Ρ‚Ρ€ΡƒΠ΄Π½ΠΎ ΡΠΎΡΡ€Π΅Π΄ΠΎΡ‚ΠΎΡ‡ΠΈΡ‚ΡŒΡΡ Π½Π° ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½Π½ΠΎΠΉ Ρ‚Π΅Ρ…Π½ΠΎΠ»ΠΎΠ³ΠΈΠΈ, ΠΏΠΎΡΠΊΠΎΠ»ΡŒΠΊΡƒ всё развиваСтся ΠΈ мСняСтся ΠΎΡ‡Π΅Π½ΡŒ быстро. Но Π΅Ρ‰Π΅ слоТнСС ΡƒΡΠΏΠ΅Π²Π°Ρ‚ΡŒ ΠΈΠ΄Ρ‚ΠΈ Π² Π½ΠΎΠ³Ρƒ с мноТСством Ρ‚Π΅Ρ…Π½ΠΎΠ»ΠΎΠ³ΠΈΠΉ. НуТно Π±Ρ‹Ρ‚ΡŒ ΠΎΡ‚ΠΊΡ€Ρ‹Ρ‚Ρ‹ΠΌ ΠΊΠΎ всСму, особСнно Π² Π½Π°Ρ‡Π°Π»Π΅ ΠΊΠ°Ρ€ΡŒΠ΅Ρ€Ρ‹, ΠΈ Ρ€Π΅ΡˆΠΈΡ‚ΡŒ, Ρ‡Ρ‚ΠΎ большС всСго нравится, Π° ΡƒΠΆΠ΅ дальшС ΡΠΏΠ΅Ρ†ΠΈΠ°Π»ΠΈΠ·ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒΡΡ Π½Π° Ρ‡Π΅ΠΌ-Ρ‚ΠΎ.

    β€” Π•ΡΡ‚ΡŒ ΠΌΠ½Π΅Π½ΠΈΠ΅, Ρ‡Ρ‚ΠΎ фриланса Π½Π° Java Π½Π΅ Π±Ρ‹Π²Π°Π΅Ρ‚, ΠΈ этот язык β€” Π² ΠΏΠ΅Ρ€Π²ΡƒΡŽ ΠΎΡ‡Π΅Ρ€Π΅Π΄ΡŒ для ΠΊΠΎΡ€ΠΏΠΎΡ€Π°Ρ‚ΠΈΠ²Π½ΠΎΠΉ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ. Π”Π΅ΠΉΡΡ‚Π²ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎ Π»ΠΈ фриланс Π½Π° Java β€” ΠΈΡΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠ΅ ΠΈΠ· ΠΏΡ€Π°Π²ΠΈΠ»?

    β€” Π― Ρ‚Π°ΠΊ Π½Π΅ ΡΡ‡ΠΈΡ‚Π°ΡŽ. Будя ΠΏΠΎ ΠΌΠΎΠ΅ΠΌΡƒ ΠΎΠΏΡ‹Ρ‚Ρƒ, ΠΊΠΎΠ³Π΄Π° ΠΊΠΎΠΌΠΏΠ°Π½ΠΈΠΈ Π½Π°Π½ΠΈΠΌΠ°ΡŽΡ‚ фрилансСров, ΠΎΠ½ΠΈ ΠΆΠ΄ΡƒΡ‚ Ρ‡Π΅Π»ΠΎΠ²Π΅ΠΊΠ° с большим ΠΎΠΏΡ‹Ρ‚ΠΎΠΌ, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ ΠΌΠΎΠΆΠ΅Ρ‚ ΠΏΡ€ΠΈΠΉΡ‚ΠΈ ΠΈ ΠΏΠΎΠΌΠΎΡ‡ΡŒ ΠΈΠΌ ΡΠΏΡ€Π°Π²ΠΈΡ‚ΡŒΡΡ с ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΠ°ΠΌΠΈ. Π‘ΠΎΡΡ€Π΅Π΄ΠΎΡ‚ΠΎΡ‡Π΅Π½Π½ΠΎΡΡ‚ΡŒ Π½Π° ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½Π½ΠΎΠΉ Ρ‚Π΅Ρ…Π½ΠΎΠ»ΠΎΠ³ΠΈΠΈ Π΄Π°Π΅Ρ‚ Ρ‚Π°ΠΊΠΎΠΉ ΠΎΠΏΡ‹Ρ‚ ΠΈ позволяСт ΡΠΏΠ΅Ρ†ΠΈΠ°Π»ΠΈΠ·ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒΡΡ. Π‘ΡƒΠ΄ΡƒΡ‡ΠΈ ΠΎΠΏΡ‹Ρ‚Π½Ρ‹ΠΌ спСциалистом, ΠΌΠΎΠΆΠ½ΠΎ Ρ€Π°Π±ΠΎΡ‚Π°Ρ‚ΡŒ ΠΈ фрилансСром, ΠΈ Π² ΠΎΡ€Π³Π°Π½ΠΈΠ·Π°Ρ†ΠΈΠΈ.

    β€” Π’Ρ‹ Π½Π°Π·Ρ‹Π²Π°Π΅Ρ‚Π΅ сСбя страстным Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠΎΠΌ. Для вас ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ β€” Π² ΠΏΠ΅Ρ€Π²ΡƒΡŽ ΠΎΡ‡Π΅Ρ€Π΅Π΄ΡŒ творчСство ΠΈΠ»ΠΈ тСхничСский процСсс?

    β€” ΠŸΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ Π²ΠΊΠ»ΡŽΡ‡Π°Π΅Ρ‚ Π² сСбя ΠΌΠ½ΠΎΠ³ΠΎ творчСства. Когда Π²Ρ‹ Ρ…ΠΎΡ‚ΠΈΡ‚Π΅ Ρ‡Ρ‚ΠΎ-Ρ‚ΠΎ ΡΠ΄Π΅Π»Π°Ρ‚ΡŒ, Π΅ΡΡ‚ΡŒ мноТСство ΠΏΡƒΡ‚Π΅ΠΉ, ΠΏΠΎ ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΌ ΠΌΠΎΠΆΠ½ΠΎ ΠΏΠΎΠΉΡ‚ΠΈ. Π‘Ρ‹Π²Π°Π΅Ρ‚, Ρ‡Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ³ΠΎ способа ΠΈ вовсС Π½Π΅ сущСствуСт, Π½ΡƒΠΆΠ½ΠΎ ΡΠΎΠ·Π΄Π°Ρ‚ΡŒ Π΅Π³ΠΎ самому. ΠŸΡ€ΠΈΡ…ΠΎΠ΄ΠΈΡ‚ΡΡ Π΄ΡƒΠΌΠ°Ρ‚ΡŒ, ΠΏΡ€ΠΎΠ±ΠΎΠ²Π°Ρ‚ΡŒ Π²Π°Ρ€ΠΈΠ°Π½Ρ‚Ρ‹, Ρ‚Π΅Ρ€ΠΏΠ΅Ρ‚ΡŒ Π½Π΅ΡƒΠ΄Π°Ρ‡ΠΈ ΠΈ Π΄ΠΎΡΡ‚ΠΈΠ³Π°Ρ‚ΡŒ успСха. Π‘ Π΄Ρ€ΡƒΠ³ΠΎΠΉ стороны, Π² тСхничСском ΠΏΠ»Π°Π½Π΅ наша сфСра быстро развиваСтся, Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ постоянно Π·Π°Π½ΠΈΠΌΠ°Ρ‚ΡŒΡΡ исслСдованиями, ΠΈΠ·ΡƒΡ‡Π°Ρ‚ΡŒ Π½ΠΎΠ²Ρ‹Π΅ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ ΠΈ ΠΏΠΎΠ²Ρ‹ΡˆΠ°Ρ‚ΡŒ ΠΊΠ²Π°Π»ΠΈΡ„ΠΈΠΊΠ°Ρ†ΠΈΡŽ. Π’Ρ‹ Π΄ΠΎΠ»ΠΆΠ½Ρ‹ Π±Ρ‹Ρ‚ΡŒ страстно ΡƒΠ²Π»Π΅Ρ‡Π΅Π½Ρ‹ Ρ‚Π΅ΠΌ, Ρ‡Π΅ΠΌ Π·Π°Π½ΠΈΠΌΠ°Π΅Ρ‚Π΅ΡΡŒ, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΈΠ΄Ρ‚ΠΈ Π² Π½ΠΎΠ³Ρƒ со Π²Ρ€Π΅ΠΌΠ΅Π½Π΅ΠΌ, Π°ΠΊΡ‚ΡƒΠ°Π»ΡŒΠ½Ρ‹ΠΌΠΈ Π½ΠΎΠ²ΠΈΠ½ΠΊΠ°ΠΌΠΈ ΠΈ Π»ΡƒΡ‡ΡˆΠΈΠΌΠΈ Ρ€Π΅ΡˆΠ΅Π½ΠΈΡΠΌΠΈ.

    О Java-сообщСствах

    β€” Π—Π°Ρ‡Π΅ΠΌ Π½ΡƒΠΆΠ½Ρ‹ Java-сообщСства ΠΈ Ρ‡Π΅ΠΌ занимаСтся Coimbra JUG, ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ΅ Π²Ρ‹ возглавляСтС?

    β€” Π― возглавляю сообщСство Coimbra JUG Π² ΠŸΠΎΡ€Ρ‚ΡƒΠ³Π°Π»ΠΈΠΈ. ΠšΠΎΠΈΠΌΠ±Ρ€Π° β€” это нСбольшой Π³ΠΎΡ€ΠΎΠ΄ΠΎΠΊ, поэтому Π² сообщСствС всС Π΄Ρ€ΡƒΠ³ Π΄Ρ€ΡƒΠ³Π° Π·Π½Π°ΡŽΡ‚. Π›ΡŽΠ΄ΡΠΌ нравится ΡΠΎΠ±ΠΈΡ€Π°Ρ‚ΡŒΡΡ вмСстС, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΏΠΎΠ΄Π΅Π»ΠΈΡ‚ΡŒΡΡ своим ΠΎΠΏΡ‹Ρ‚ΠΎΠΌ, впСчатлСниями ΠΈ, ΠΊΠΎΠ½Π΅Ρ‡Π½ΠΎ, ΠΏΠΎΡΠ»ΡƒΡˆΠ°Ρ‚ΡŒ новости ΠΎ Ρ‚ΠΎΠΌ, Ρ‡Ρ‚ΠΎ происходит Π² ΠΌΠΈΡ€Π΅ ИВ. Π’Π°ΠΊΠΆΠ΅ ΠΌΡ‹ ΠΎΡ€Π³Π°Π½ΠΈΠ·ΡƒΠ΅ΠΌ ΠΊΠΎΠ½Ρ„Π΅Ρ€Π΅Π½Ρ†ΠΈΡŽ ΠΏΠΎΠ΄ Π½Π°Π·Π²Π°Π½ΠΈΠ΅ΠΌ JNation. Π­Ρ‚ΠΎ ΠΎΠ΄Π½ΠΎΠ΄Π½Π΅Π²Π½ΠΎΠ΅ мСроприятиС, ΠΊΡƒΠ΄Π° ΠΏΡ€ΠΈΠ³Π»Π°ΡˆΠ°Π΅ΠΌ Π½Π΅ΡΠΊΠΎΠ»ΡŒΠΊΠΈΡ… Π½Π°ΠΈΠ±ΠΎΠ»Π΅Π΅ извСстных Π² Java-сообщСствС Π΄ΠΎΠΊΠ»Π°Π΄Ρ‡ΠΈΠΊΠΎΠ².

    β€” КакиС JUG Π½Π°ΠΈΠ±ΠΎΠ»Π΅Π΅ извСстны ΠΈ Π²Π»ΠΈΡΡ‚Π΅Π»ΡŒΠ½Ρ‹?

    β€” Π― Π±Ρ‹ Π½ΠΎΠΌΠΈΠ½ΠΈΡ€ΠΎΠ²Π°Π» LJC (ЛондонскоС сообщСство Java β€” Β«Π₯Π°ΠΉΡ‚Π΅ΠΊΒ») ΠΈ SouJava (БообщСство ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Π΅ΠΉ Java Π² Π‘Ρ€Π°Π·ΠΈΠ»ΠΈΠΈ β€” Β«Π₯Π°ΠΉΡ‚Π΅ΠΊΒ»). Оба этих сообщСства Π°ΠΊΡ‚ΠΈΠ²Π½ΠΎ Π²ΠΎΠ²Π»Π΅Ρ‡Π΅Π½Ρ‹ Π² ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΡƒ JCP, AdoptOpenJDK ΠΈΠ»ΠΈ MicroProfile.


    Java Community Process (JCP) β€” сформированный Π² 1998 Π³ΠΎΠ΄Ρƒ Ρ„ΠΎΡ€ΠΌΠ°Π»ΡŒΠ½Ρ‹ΠΉ процСсс, ΠΏΠΎΠ·Π²ΠΎΠ»ΡΡŽΡ‰ΠΈΠΉ заинтСрСсованным Π»ΠΈΡ†Π°ΠΌ ΡƒΡ‡Π°ΡΡ‚Π²ΠΎΠ²Π°Ρ‚ΡŒ Π² Ρ„ΠΎΡ€ΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠΈ Π±ΡƒΠ΄ΡƒΡ‰ΠΈΡ… вСрсий спСцификаций ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌ языка Java.

    Java Development Kit (JDK) β€” бСсплатно распространяСмый ΠΊΠΎΠΌΠΏΠ°Π½ΠΈΠ΅ΠΉ Oracle Corporation ΠΊΠΎΠΌΠΏΠ»Π΅ΠΊΡ‚ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠ° ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ Π½Π° языкС Java, Π²ΠΊΠ»ΡŽΡ‡Π°ΡŽΡ‰ΠΈΠΉ Π² сСбя компилятор, стандартныС Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠΈ классов, ΠΏΡ€ΠΈΠΌΠ΅Ρ€Ρ‹, Π΄ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚Π°Ρ†ΠΈΡŽ, Ρ€Π°Π·Π»ΠΈΡ‡Π½Ρ‹Π΅ ΡƒΡ‚ΠΈΠ»ΠΈΡ‚Ρ‹ ΠΈ ΠΈΡΠΏΠΎΠ»Π½ΠΈΡ‚Π΅Π»ΡŒΠ½ΡƒΡŽ систСму.

    Microprofile, (Eclipse Microprofile) β€” ΠΎΡ‚ΠΊΡ€Ρ‹Ρ‚Ρ‹ΠΉ стандарт, Ρ€Π°Π·Ρ€Π°Π±Π°Ρ‚Ρ‹Π²Π°Π΅ΠΌΡ‹ΠΉ Π² Ρ€Π°ΠΌΠΊΠ°Ρ… Eclipse Foundation Π²Π΅Π½Π΄ΠΎΡ€Π°ΠΌΠΈ EE-сСрвСров, сторонними организациями ΠΈ просто Π²ΠΎΠ»ΠΎΠ½Ρ‚Π΅Ρ€Π°ΠΌΠΈ.

    Π”Ρ€ΡƒΠ³ΠΈΠ΅ извСстныС сообщСства JUG:

    1. JUG.ru (Π‘Π°Π½ΠΊΡ‚-ΠŸΠ΅Ρ‚Π΅Ρ€Π±ΡƒΡ€Π³, Россия). ЕТСмСсячно ΠΏΡ€ΠΎΠ²ΠΎΠ΄ΠΈΡ‚ встрСчи Π² ΠŸΠ΅Ρ‚Π΅Ρ€Π±ΡƒΡ€Π³Π΅, Π½Π° ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Ρ… экспСрты Java Ρ‡ΠΈΡ‚Π°ΡŽΡ‚ Π»Π΅ΠΊΡ†ΠΈΠΈ Π½Π° самыС острыС Ρ‚Π΅ΠΌΡ‹.
    2. Philly JUG (Π€ΠΈΠ»Π°Π΄Π΅Π»ΡŒΡ„ΠΈΡ, БША). БущСствуСт большС 15 Π»Π΅Ρ‚, ΠΏΡ€ΠΎΠ²ΠΎΠ΄ΠΈΡ‚ Π² Π€ΠΈΠ»Π°Π΄Π΅Π»ΡŒΡ„ΠΈΠΈ курсы ΠΏΠΎΠ²Ρ‹ΡˆΠ΅Π½ΠΈΡ ΠΊΠ²Π°Π»ΠΈΡ„ΠΈΠΊΠ°Ρ†ΠΈΠΈ для программистов Java.
    3. Morocco JUG (ΠœΠ°Ρ€Ρ€Π°ΠΊΠ΅Ρˆ, ΠœΠ°Ρ€ΠΎΠΊΠΊΠΎ). ΠŸΡ€ΠΎΠ²ΠΎΠ΄ΠΈΡ‚ Π΅ΠΆΠ΅Π³ΠΎΠ΄Π½Ρ‹Π΅ ΠΊΠΎΠ½Ρ„Π΅Ρ€Π΅Π½Ρ†ΠΈΠΈ ΠΈ ΠΎΠ±ΡƒΡ‡Π°ΡŽΡ‰ΠΈΠ΅ курсы ΠΎΠ½Π»Π°ΠΉΠ½ ΠΈ ΠΎΡ„Π»Π°ΠΉΠ½.

    β€” Π’Ρ‹ Ρ‚Π°ΠΊΠΆΠ΅ состоитС Π² Java Champion. Как ΠΏΡ€ΠΎΡ…ΠΎΠ΄ΠΈΡ‚ Π΅Π³ΠΎ взаимодСйствиС с Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠΎΠΌ Java, ΠΊΠΎΠΌΠΏΠ°Π½ΠΈΠ΅ΠΉ Oracle?

    β€” По своСй сути Java Champions β€” эксклюзивная Π³Ρ€ΡƒΠΏΠΏΠ° ΡƒΠ²Π»Π΅Ρ‡Π΅Π½Π½Ρ‹Ρ… Π»ΠΈΠ΄Π΅Ρ€ΠΎΠ² Ρ‚Π΅Ρ…Π½ΠΎΠ»ΠΎΠ³ΠΈΠΈ ΠΈ сообщСств, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Π²Ρ‹Π΄Π²ΠΈΠ³Π°ΡŽΡ‚ΡΡ самим сообщСством. ΠœΡ‹ прСдоставляСм ΠΎΠ±Ρ€Π°Ρ‚Π½ΡƒΡŽ связь, ΠΈΠ΄Π΅ΠΈ, Π½Π°ΠΏΡ€Π°Π²Π»Π΅Π½ΠΈΠ΅ ΠΈ ΠΎΡ€ΠΈΠ΅Π½Ρ‚ΠΈΡ€, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΏΠΎΠΌΠΎΠ³ΡƒΡ‚ Oracle Ρ€Π°ΡΡˆΠΈΡ€ΠΈΡ‚ΡŒ ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΡƒ Java ΠΈ Π² Ρ†Π΅Π»ΠΎΠΌ ΠΏΡ€ΠΎΠ΄Π²ΠΈΠ³Π°Ρ‚ΡŒ язык Π²ΠΎ всСм ΠΌΠΈΡ€Π΅. Π‘Π°ΠΌΠΎΠ΅ интСрСсноС Π² этой Π³Ρ€ΡƒΠΏΠΏΠ΅ Ρ‚ΠΎ, Ρ‡Ρ‚ΠΎ хотя ΠΎΠ½Π° ΠΈ поддСрТиваСтся Oracle, сама ΠΎΠ½Π° ΠΏΠΎΠ»Π½ΠΎΡΡ‚ΡŒΡŽ нСзависима. ΠŸΠΎΡΡ‚ΠΎΠΌΡƒ ΠΌΡ‹ ΠΌΠΎΠΆΠ΅ΠΌ ΠΈ свободно Ρ…Π²Π°Π»ΠΈΡ‚ΡŒ, ΠΈ ΠΊΡ€ΠΈΡ‚ΠΈΠΊΠΎΠ²Π°Ρ‚ΡŒ, ΠΊΠΎΠ³Π΄Π° это умСстно.

    β€” Какая ΠΈΠ· рСгулярно ΠΏΡ€ΠΎΠ²ΠΎΠ΄ΠΈΠΌΡ‹Ρ… ΠΊΠΎΠ½Ρ„Π΅Ρ€Π΅Π½Ρ†ΠΈΠΉ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠΎΠ² Java самая интСрСсная ΠΈ значимая?

    β€” БСйчас Π²Π΅Π·Π΄Π΅ проходят интСрСсныС ΠΊΠΎΠ½Ρ„Π΅Ρ€Π΅Π½Ρ†ΠΈΠΈ. Π‘ΠΎΠ»ΡŒΡˆΠΈΠ½ΡΡ‚Π²ΠΎ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠΎΠ² ΠΌΠΎΠ³ΡƒΡ‚ Π½Π°ΠΉΡ‚ΠΈ мСроприятия ΠΏΠΎ своСй Π»ΠΎΠΊΠ°Ρ†ΠΈΠΈ, Ρ‚Π°ΠΊ Ρ‡Ρ‚ΠΎ Π·ΠΎΠ½Π° ΠΎΡ…Π²Π°Ρ‚Π° Ρ…ΠΎΡ€ΠΎΡˆΠ°Ρ, ΠΈ ΠΎΠ½Π° ΠΏΡ€ΠΎΠ΄ΠΎΠ»ΠΆΠ°Π΅Ρ‚ расти с ΠΊΠ°ΠΆΠ΄Ρ‹ΠΌ Π³ΠΎΠ΄ΠΎΠΌ. ВсСгда ΠΌΠΎΠΆΠ½ΠΎ ΠΏΠΎΠ»ΠΎΠΆΠΈΡ‚ΡŒΡΡ Π½Π° ΠΊΠΎΠ½Ρ„Π΅Ρ€Π΅Π½Ρ†ΠΈΠΈ JNation, jPrime ΠΈΠ»ΠΈ JBCNConf, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ появились лишь нСсколько Π»Π΅Ρ‚ Π½Π°Π·Π°Π΄, Π½ΠΎ быстро становятся ΠΎΠ±Ρ€Π°Π·Ρ†ΠΎΠ²Ρ‹ΠΌΠΈ.


    jPrime β€” конфСрСнция, Π½Π° ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΉ рассказываСтся ΠΎ Java, Ρ€Π°Π·Π»ΠΈΡ‡Π½Ρ‹Ρ… языках Π² JVM, ΠΌΠΎΠ±ΠΈΠ»ΡŒΠ½Ρ‹Ρ… устройствах, Π²Π΅Π±-тСхнологиях ΠΈ Π»ΡƒΡ‡ΡˆΠΈΡ… Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠ°Ρ…. ΠžΡ€Π³Π°Π½ΠΈΠ·Π°Ρ‚ΠΎΡ€ β€” болгарскоС сообщСство Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠΎΠ² Java. ΠŸΡ€ΠΎΠ²ΠΎΠ΄ΠΈΡ‚ΡΡ Π΅ΠΆΠ΅Π³ΠΎΠ΄Π½ΠΎ Π² ΠΌΠ°Π΅ Π² Бофийском Ρ‚Π΅Ρ…Π½ΠΎΠΏΠ°Ρ€ΠΊΠ΅.

    JBCNConf β€” СТСгодная Java-конфСрСнция, организованная нСкоммСрчСской асоциациСй Barselona JUG, проводится Π² БарсСлонС. На ΠΊΠΎΠ½Ρ„Π΅Ρ€Π΅Π½Ρ†ΠΈΠΈ ΠΎΠ±ΡΡƒΠΆΠ΄Π°ΡŽΡ‚ΡΡ JVM-языки (Java, Scala, Clojure, Groovy, Kotlin), Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΎΠ½Π°Π»ΡŒΠ½ΠΎΠ΅ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅, тСстированиС, Π΄ΠΈΠ·Π°ΠΉΠ½, Π±Π»ΠΎΠΊΡ‡Π΅ΠΉΠ½, машинноС ΠΎΠ±ΡƒΡ‡Π΅Π½ΠΈΠ΅, искусствСнный ΠΈΠ½Ρ‚Π΅Π»Π»Π΅ΠΊΡ‚ ΠΈ ΠΌΠ½ΠΎΠ³ΠΎΠ΅ Π΄Ρ€ΡƒΠ³ΠΎΠ΅.


    β€” Π§Ρ‚ΠΎ ΠΎΠΊΠ°Π·Π°Π»ΠΎ наибольшСС влияниС Π½Π° вашС становлСниС ΠΊΠ°ΠΊ профСссионала?

    β€” Π― Π±Ρ‹ сказал, Ρ‡Ρ‚ΠΎ пСрвая ΠΏΠ°Ρ€Π° ΠΊΠΎΠ½Ρ„Π΅Ρ€Π΅Π½Ρ†ΠΈΠΉ. Π­Ρ‚ΠΎ Π΄Π°Π»ΠΎ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚ΡŒ ΠΏΠΎΠ·Π½Π°ΠΊΠΎΠΌΠΈΡ‚ΡŒΡΡ с ΡƒΠ΄ΠΈΠ²ΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹ΠΌ Java-сообщСством, ΠΈ я Π±Π»Π°Π³ΠΎΠ΄Π°Ρ€Π΅Π½ нСскольким людям, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ направляли мСня ΠΈΠ»ΠΈ заставляли Ρ‡Ρ‚ΠΎ-Ρ‚ΠΎ Π΄Π΅Π»Π°Ρ‚ΡŒ. Помню, ΠΊΠ°ΠΊ Таловался Π½Π° Ρ‚ΠΎ, Ρ‡Ρ‚ΠΎ сообщСство Π² ΠŸΠΎΡ€Ρ‚ΡƒΠ³Π°Π»ΠΈΠΈ Π½Π΅ ΠΎΡ‡Π΅Π½ΡŒ Π°ΠΊΡ‚ΠΈΠ²Π½ΠΎΠ΅, Π° Адам Π‘ΠΈΠ½ сказал ΠΌΠ½Π΅: Β«ΠŸΠΎΡ‡Π΅ΠΌΡƒ Π±Ρ‹ Ρ‚Π΅Π±Π΅ Π½Π΅ ΡΠΎΠ·Π΄Π°Ρ‚ΡŒ своС собствСнноС?Β» Π’Π°ΠΊ Ρ€ΠΎΠ΄ΠΈΠ»ΠΎΡΡŒ сообщСство Coimbra JUG. АндрСс АлмирСй ΠΈ Π₯ΠΈΠ·Π΅Ρ€ Π’Π°Π½ ΠšΡŒΡŽΡ€Π° ΠΏΠΎΠ·Π½Π°ΠΊΠΎΠΌΠΈΠ»ΠΈ мСня с Hackergarten, Π³Π΄Π΅ я Π½Π°Ρ‡Π°Π» Π²Π½ΠΎΡΠΈΡ‚ΡŒ свой Π²ΠΊΠ»Π°Π΄ Π² open source ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Ρ‹. НаконСц, Дэвид БлСвинс Π±Ρ‹Π» ΠΌΠΎΠΈΠΌ наставником ΠΈ ΠΏΠΎΠΌΠΎΠ³ ΠΌΠ½Π΅ вырасти ΠΊΠ°ΠΊ Π² тСхничСском, Ρ‚Π°ΠΊ ΠΈ Π² умствСнном ΠΏΠ»Π°Π½Π΅. Но, Ρ‡Ρ‚ΠΎ Π²Π°ΠΆΠ½Π΅Π΅ всСго, ΠΎΠ½ ΠΏΠΎΠ΄Ρ‚ΠΎΠ»ΠΊΠ½ΡƒΠ» ΠΊ Ρ‚ΠΎΠΌΡƒ, Ρ‡Ρ‚ΠΎΠ±Ρ‹ самому ΡΡ‚Π°Ρ‚ΡŒ наставником для Π΄Ρ€ΡƒΠ³ΠΈΡ… людСй. ИмСнно этим я ΠΈ ΠΏΡ€ΠΎΠ±ΡƒΡŽ Π·Π°Π½ΠΈΠΌΠ°Ρ‚ΡŒΡΡ сСйчас.


    Адам Π‘ΠΈΠ½ (ГСрмания) β€” ΠΊΠΎΠ½ΡΡƒΠ»ΡŒΡ‚Π°Π½Ρ‚, Ρ‚Ρ€Π΅Π½Π΅Ρ€, Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊ, Ρ‡Π»Π΅Π½ экспСртной Π³Ρ€ΡƒΠΏΠΏΡ‹ Java Champion ΠΈ ΠΌΠ½ΠΎΠ³ΠΈΡ… Π΄Ρ€ΡƒΠ³ΠΈΡ…, связанных с Java.

    АндрСс АлмирСй β€” Java/Groovy-Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊ ΠΈ Java Champion, Π±ΠΎΠ»Π΅Π΅ 17 Π»Π΅Ρ‚ ΠΎΠΏΡ‹Ρ‚Π° проСктирования ΠΈ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ ПО. ЗанимаСтся Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΎΠΉ Π²Π΅Π±-ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ ΠΈ ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ для дСсктопных ΠΊΠΎΠΌΠΏΡŒΡŽΡ‚Π΅Ρ€ΠΎΠ² с ΠΏΠ΅Ρ€Π²Ρ‹Ρ… Π΄Π½Π΅ΠΉ сущСствования Java. Π§Π»Π΅Π½-ΠΎΡΠ½ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π° Griffon ΠΈ сообщСства Hackergarten.

    Π₯ΠΈΠ·Π΅Ρ€ Π’Π°Π½ ΠšΡŒΡŽΡ€Π° β€” ΠΏΡ€Π΅Π΄ΡΠ΅Π΄Π°Ρ‚Π΅Π»ΡŒ JCP, ΠΎΡ€Π³Π°Π½ΠΈΠ·Π°Ρ‚ΠΎΡ€ ΠΊΠΎΠ½Ρ„Π΅Ρ€Π΅Π½Ρ†ΠΈΠΉ сообщСства Hackergarten, посвящСнных тСхнологиям Java.

    Дэвид БлСвинс β€” ΠΎΡΠ½ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ΠΎΠ² Apache TomEE, OpenEJB ΠΈ Geronimo, Ρ‡Π»Π΅Π½ экспСртных Π³Ρ€ΡƒΠΏΠΏ EJB 3.2 (JSR 345) ΠΈ Java EE 7 (JSR 342), Π°Π²Ρ‚ΠΎΡ€ ΠΌΠ°Ρ‚Π΅Ρ€ΠΈΠ°Π»ΠΎΠ² для Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ ПО Π½Π° основС ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚ΠΎΠ².


    Π Π°Π·Π½ΠΈΡ†Π° ΠΌΠ΅ΠΆΠ΄Ρƒ Java ΠΈ Core Java

    Java — это язык программирования высокого уровня ΠΎΠ±Ρ‰Π΅Π³ΠΎ назначСния, основанный Π½Π° концСпциях ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π½ΠΎ-ΠΎΡ€ΠΈΠ΅Π½Ρ‚ΠΈΡ€ΠΎΠ²Π°Π½Π½ΠΎΠ³ΠΎ программирования (ООП), синтаксис ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Ρ… заимствован ΠΈΠ· C ΠΈ C ++. Он ΡΠΏΠ΅Ρ†ΠΈΠ°Π»ΡŒΠ½ΠΎ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Π°Π½, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΈΠΌΠ΅Ρ‚ΡŒ мСньшС зависимостСй Ρ€Π΅Π°Π»ΠΈΠ·Π°Ρ†ΠΈΠΈ ΠΏΠΎ ΡΡ€Π°Π²Π½Π΅Π½ΠΈΡŽ с Π΅Π³ΠΎ ΠΏΡ€Π΅Π΄Ρ‹Π΄ΡƒΡ‰ΠΈΠΌΠΈ вСрсиями. Π­Ρ‚ΠΎ Π²Ρ‹Ρ‡ΠΈΡΠ»ΠΈΡ‚Π΅Π»ΡŒΠ½Π°Ρ ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΠ° для Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ ΠΏΡ€ΠΈΠΊΠ»Π°Π΄Π½ΠΎΠ³ΠΎ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½ΠΎΠ³ΠΎ обСспСчСния, разработанная Sun Microsystems, которая ΠΏΠΎΠ·ΠΆΠ΅ Π±Ρ‹Π»Π° ΠΏΡ€ΠΈΠΎΠ±Ρ€Π΅Ρ‚Π΅Π½Π° тСхнологичСским Π³ΠΈΠ³Π°Π½Ρ‚ΠΎΠΌ Oracle Corporation. Π―Π΄Ρ€ΠΎ Java фактичСски Π½ΠΈΠ³Π΄Π΅ Π½Π΅ опрСдСляСтся ΠΈ являСтся просто Ρ‚Π΅Ρ€ΠΌΠΈΠ½ΠΎΠΌ, ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅ΠΌΡ‹ΠΌ Sun Microsystems для Π»ΡƒΡ‡ΡˆΠ΅Π³ΠΎ описания Java Standard Edition (Java SE).Π­Ρ‚ΠΎ самая простая ΠΈ надСТная вСрсия Java, которая состоит ΠΈΠ· большого количСства API ΠΎΠ±Ρ‰Π΅Π³ΠΎ ΠΈ ΡΠΏΠ΅Ρ†ΠΈΠ°Π»ΡŒΠ½ΠΎΠ³ΠΎ назначСния. ΠŸΡ€ΠΈΡ‡ΠΈΠ½Π°, ΠΏΠΎ ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΉ ΠΎΠ½Π° называСтся стандартной вСрсиСй, ΠΏΠΎΡ‚ΠΎΠΌΡƒ Ρ‡Ρ‚ΠΎ ΠΎΠ½Π° ΠΏΠΎΡ€ΠΎΠ΄ΠΈΠ»Π° всС Π΄Ρ€ΡƒΠ³ΠΈΠ΅ Ρ€Π΅Π΄Π°ΠΊΡ†ΠΈΠΈ Java.

    Π§Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ Java?

    Java гипотСтичСски присутствуСт Π²Π΅Π·Π΄Π΅, благодаря своСй удобочитаСмости ΠΈ простотС. ΠžΡ‚ ΠΌΠΎΠ±ΠΈΠ»ΡŒΠ½Ρ‹Ρ… ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ Π΄ΠΎ Π²Π΅Π±-сайтов, ΠΎΡ‚ ΠΈΠ³Ρ€ΠΎΠ²Ρ‹Ρ… консолСй Π΄ΠΎ Ρ†Π΅Π½Ρ‚Ρ€ΠΎΠ² ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ Π΄Π°Π½Π½Ρ‹Ρ…, ΠΎΡ‚ ΠΌΠΎΠ±ΠΈΠ»ΡŒΠ½Ρ‹Ρ… Ρ‚Π΅Π»Π΅Ρ„ΠΎΠ½ΠΎΠ² Π΄ΠΎ Π˜Π½Ρ‚Π΅Ρ€Π½Π΅Ρ‚Π° — Java присутствуСт ΠΏΠΎΠ²ΡΡŽΠ΄Ρƒ.ΠœΠΈΠ»Π»ΠΈΠΎΠ½Ρ‹ устройств ΠΏΠΎ всСму ΠΌΠΈΡ€Ρƒ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽΡ‚ Java Π² качСствС основного языка программирования. Π”Π°ΠΆΠ΅ всС собствСнныС прилоТСния для Android встроСны Π² Java, ΠΈ Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΊΠΎΠΌΠΏΠ°Π½ΠΈΠΈ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽΡ‚ Java Π² качСствС языка сцСнариСв Π½Π° сторонС сСрвСра для Π²Π½ΡƒΡ‚Ρ€Π΅Π½Π½Π΅ΠΉ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ. МногиС прилоТСния ΠΈ Π²Π΅Π±-сайты Ρ‚Ρ€Π΅Π±ΡƒΡŽΡ‚ установки Java, ΠΏΠΎΡ‚ΠΎΠΌΡƒ Ρ‡Ρ‚ΠΎ это быстро ΠΈ бСзопасно. Π’ΠΎ, Ρ‡Ρ‚ΠΎ Π½Π°Ρ‡ΠΈΠ½Π°Π»ΠΎΡΡŒ просто ΠΊΠ°ΠΊ язык Π˜Π½Ρ‚Π΅Ρ€Π½Π΅Ρ‚Π°, стало ΠΎΠ΄Π½ΠΈΠΌ ΠΈΠ· самых ΡƒΠ½ΠΈΠ²Π΅Ρ€ΡΠ°Π»ΡŒΠ½Ρ‹Ρ… языков кроссплатформСнного программирования, ΠΊΠΎΠ³Π΄Π°-Π»ΠΈΠ±ΠΎ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Π°Π½Π½Ρ‹Ρ…. Π›ΡƒΡ‡ΡˆΠ΅Π΅, Ρ‡Ρ‚ΠΎ ΠΎΠ½ Ρ€Π°Π±ΠΎΡ‚Π°Π΅Ρ‚ Π±ΡƒΠΊΠ²Π°Π»ΡŒΠ½ΠΎ Π½Π° любом устройствС Π±Π΅Π· нСобходимости пСрСкомпиляции, ΠΎΡ‚ΡΡŽΠ΄Π° слоган «Напиши ΠΎΠ΄ΠΈΠ½ Ρ€Π°Π·, запусти Π³Π΄Π΅ ΡƒΠ³ΠΎΠ΄Π½ΠΎΒ».

    Π‘ тСхничСской Ρ‚ΠΎΡ‡ΠΊΠΈ зрСния, это язык программирования высокого уровня, ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π½ΠΎ-ΠΎΡ€ΠΈΠ΅Π½Ρ‚ΠΈΡ€ΠΎΠ²Π°Π½Π½Ρ‹ΠΉ, основанный Π½Π° классах ΠΈ ΡΠΏΠ΅Ρ†ΠΈΠ°Π»ΡŒΠ½ΠΎ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Π°Π½Π½Ρ‹ΠΉ, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΈΠΌΠ΅Ρ‚ΡŒ мСньшиС зависимости Ρ€Π΅Π°Π»ΠΈΠ·Π°Ρ†ΠΈΠΈ ΠΏΠΎ ΡΡ€Π°Π²Π½Π΅Π½ΠΈΡŽ с ΠΏΡ€Π΅Π΄Ρ‹Π΄ΡƒΡ‰ΠΈΠΌΠΈ языками. На Π½Π΅Π³ΠΎ повлиял язык V, ΠΈ большая Ρ‡Π°ΡΡ‚ΡŒ Π΅Π³ΠΎ синтаксиса заимствована ΠΈΠ· C ΠΈ C ++. ΠŸΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ Java ΠΎΠ±Ρ‹Ρ‡Π½ΠΎ ΠΊΠΎΠΌΠΏΠΈΠ»ΠΈΡ€ΡƒΡŽΡ‚ΡΡ Π² Π±Π°ΠΉΡ‚-ΠΊΠΎΠ΄, ΠΈ Ρ„Π°ΠΉΠ» класса, содСрТащий Π±Π°ΠΉΡ‚-ΠΊΠΎΠ΄ Java, ΠΌΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ Π²Ρ‹ΠΏΠΎΠ»Π½Π΅Π½ Π½Π° любой ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΠ΅, Π½Π° ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΉ Ρ€Π°Π±ΠΎΡ‚Π°Π΅Ρ‚ Π²ΠΈΡ€Ρ‚ΡƒΠ°Π»ΡŒΠ½Π°Ρ машина Java (JVM), нСзависимо ΠΎΡ‚ Π°Ρ€Ρ…ΠΈΡ‚Π΅ΠΊΡ‚ΡƒΡ€Ρ‹ ΠΊΠΎΠΌΠΏΡŒΡŽΡ‚Π΅Ρ€Π°.Он ΠΏΠΎΠ»Π½ΠΎΡΡ‚ΡŒΡŽ нСзависим ΠΎΡ‚ ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΡ‹, Ρ‡Ρ‚ΠΎ ΠΎΠ·Π½Π°Ρ‡Π°Π΅Ρ‚, Ρ‡Ρ‚ΠΎ ΠΎΠ½ ΠΌΠΎΠΆΠ΅Ρ‚ Π·Π°ΠΏΡƒΡΠΊΠ°Ρ‚ΡŒ любой скомпилированный ΠΊΠΎΠ΄ Π½Π° любой ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΠ΅. ОбилиС ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΈ ΠΈ Π΅Π΅ растущая ΠΏΠΎΠΏΡƒΠ»ΡΡ€Π½ΠΎΡΡ‚ΡŒ — Π²ΠΎΡ‚ ΠΏΠΎΡ‡Π΅ΠΌΡƒ программисты ΠΈ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠΈ ΠΏΡ€Π΅Π΄ΠΏΠΎΡ‡ΠΈΡ‚Π°ΡŽΡ‚ Java Π΄Ρ€ΡƒΠ³ΠΈΠΌ языкам программирования для Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ.

    Π§Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ Core Java?

    Π­Ρ‚ΠΎ ΠΎΠ±Ρ‰ΠΈΠΉ Ρ‚Π΅Ρ€ΠΌΠΈΠ½, ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅ΠΌΡ‹ΠΉ Sun Microsystems для описания стандартной вСрсии Java (JSE). Π­Ρ‚ΠΎ самая базовая вСрсия Java, которая Π·Π°ΠΊΠ»Π°Π΄Ρ‹Π²Π°Π΅Ρ‚ основу для всСх Π΄Ρ€ΡƒΠ³ΠΈΡ… Ρ€Π΅Π΄Π°ΠΊΡ†ΠΈΠΉ Java, Π° Ρ‚Π°ΠΊΠΆΠ΅ для Π½Π°Π±ΠΎΡ€Π° связанных Ρ‚Π΅Ρ…Π½ΠΎΠ»ΠΎΠ³ΠΈΠΉ, Ρ‚Π°ΠΊΠΈΡ… ΠΊΠ°ΠΊ CORBA, Java VM ΠΈ Ρ‚. Π”.Π―Π΄Ρ€ΠΎ Java относится ΠΊ Π½Π°Π±ΠΎΡ€Ρƒ Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊ, Π° Π½Π΅ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ ΠΊ языку программирования. Π­Ρ‚ΠΎ Ρ‡ΠΈΡΡ‚Π΅ΠΉΡˆΠ°Ρ Ρ„ΠΎΡ€ΠΌΠ° Java, которая Π² основном ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ для Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ ΠΎΠ±Ρ‹Ρ‡Π½Ρ‹Ρ… Π½Π°ΡΡ‚ΠΎΠ»ΡŒΠ½Ρ‹Ρ… ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ. ΠŸΡ€ΠΎΡ‰Π΅ говоря, это относится ΠΊ подмноТСству Ρ‚Π΅Ρ…Π½ΠΎΠ»ΠΎΠ³ΠΈΠΉ Java SE, ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ΅ состоит ΠΊΠ°ΠΊ ΠΈΠ· API ΠΎΠ±Ρ‰Π΅Π³ΠΎ назначСния, Ρ‚Π°ΠΊ ΠΈ ΠΈΠ· API ΡΠΏΠ΅Ρ†ΠΈΠ°Π»ΡŒΠ½ΠΎΠ³ΠΎ назначСния. Он обСспСчиваСт Π±Π°Π·ΠΎΠ²ΡƒΡŽ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΎΠ½Π°Π»ΡŒΠ½ΠΎΡΡ‚ΡŒ Java с Π³Π»ΡƒΠ±ΠΎΠΊΠΈΠΌ Π·Π½Π°Π½ΠΈΠ΅ΠΌ самого языка Java.

    Core Java — это всСго лишь Ρ‡Π°ΡΡ‚ΡŒ Java, которая ΠΎΠ·Π½Π°Ρ‡Π°Π΅Ρ‚ J2SE, ΡΠΎΠ΄Π΅Ρ€ΠΆΠ°Ρ‰ΡƒΡŽ всС основы Java, Π²ΠΊΠ»ΡŽΡ‡Π°Ρ Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΏΡ€ΠΈΠ½Ρ†ΠΈΠΏΡ‹ ΠΈ Π΄Π΅Ρ‚Π°Π»ΠΈ ΠΏΠ°ΠΊΠ΅Ρ‚Π°.Π­Ρ‚ΠΎ Π°Π²Ρ‚ΠΎΠ½ΠΎΠΌΠ½ΠΎΠ΅ ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ Java, ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ΅ ΠΎΡ…Π²Π°Ρ‚Ρ‹Π²Π°Π΅Ρ‚ всС: ΠΎΡ‚ ΠΊΠΎΠ½Ρ†Π΅ΠΏΡ†ΠΈΠΉ ООП Π΄ΠΎ ΡΠΏΠ΅Ρ†ΠΈΠ°Π»ΡŒΠ½Ρ‹Ρ… ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€ΠΎΠ², ΠΎΡ‚ Ρ‚ΠΈΠΏΠΎΠ² Π΄Π°Π½Π½Ρ‹Ρ… Π΄ΠΎ классов-ΠΎΠ±ΠΎΠ»ΠΎΡ‡Π΅ΠΊ, ΠΎΡ‚ связанного списка Π΄ΠΎ списка массивов ΠΈ ΠΎΡ‚ ΠΎΡ‡Π΅Ρ€Π΅Π΄ΠΈ Π΄ΠΎ ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ ΠΈΡΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠΉ. Π‘ΡƒΡ‰Π΅ΡΡ‚Π²ΡƒΡŽΡ‚ Ρ‚Ρ€ΠΈ Π²Ρ‹Ρ‡ΠΈΡΠ»ΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹Π΅ ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΡ‹, основанныС Π½Π° языкС программирования Java, Π²ΠΊΠ»ΡŽΡ‡Π°Ρ Java SE. Π­Ρ‚ΠΎ ΠΏΠΎ-ΠΏΡ€Π΅ΠΆΠ½Π΅ΠΌΡƒ Π½Π°ΠΈΠ±ΠΎΠ»Π΅Π΅ ΡˆΠΈΡ€ΠΎΠΊΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅ΠΌΠ°Ρ ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΠ°, основанная Π½Π° ΠΊΠΎΠ½Ρ†Π΅ΠΏΡ†ΠΈΠΈ ООП, ΠΈ ΠΎΠ±Ρ‹Ρ‡Π½ΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ для Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ ΠΏΠΎΡ€Ρ‚Π°Ρ‚ΠΈΠ²Π½Ρ‹Ρ… Π½Π°ΡΡ‚ΠΎΠ»ΡŒΠ½Ρ‹Ρ… ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ. Помимо API ΠΎΠ±Ρ‰Π΅Π³ΠΎ назначСния, ΠΎΠ½ состоит ΠΈΠ· инструмСнтов Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ, Π²ΠΈΡ€Ρ‚ΡƒΠ°Π»ΡŒΠ½ΠΎΠΉ ΠΌΠ°ΡˆΠΈΠ½Ρ‹ ΠΈ Π΄Ρ€ΡƒΠ³ΠΈΡ… Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊ классов.Он Ρ‚Π°ΠΊΠΆΠ΅ Π²ΠΊΠ»ΡŽΡ‡Π°Π΅Ρ‚ ΡΠΏΠ΅Ρ†ΠΈΡ„ΠΈΠΊΠ°Ρ†ΠΈΡŽ Π²ΠΈΡ€Ρ‚ΡƒΠ°Π»ΡŒΠ½ΠΎΠΉ ΠΌΠ°ΡˆΠΈΠ½Ρ‹ Java.

    Π Π°Π·Π½ΠΈΡ†Π° ΠΌΠ΅ΠΆΠ΄Ρƒ Java ΠΈ Core Java

    ΠžΡΠ½ΠΎΠ²Ρ‹ Java ΠΈ Core Java

    Java — это язык программирования ΠΎΠ±Ρ‰Π΅Π³ΠΎ назначСния, основанный Π½Π° концСпциях ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π½ΠΎ-ΠΎΡ€ΠΈΠ΅Π½Ρ‚ΠΈΡ€ΠΎΠ²Π°Π½Π½ΠΎΠ³ΠΎ языка программирования высокого уровня ΠΈ основанный Π½Π° синтаксисС C ΠΈ C ++. Π‘ Π΄Ρ€ΡƒΠ³ΠΎΠΉ стороны, Core Java — это всСго лишь Ρ‡Π°ΡΡ‚ΡŒ Java, ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅ΠΌΠ°Ρ для Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ пСрСносимого ΠΊΠΎΠ΄Π° ΠΊΠ°ΠΊ для Π½Π°ΡΡ‚ΠΎΠ»ΡŒΠ½Ρ‹Ρ… ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ, Ρ‚Π°ΠΊ ΠΈ для сСрвСрных срСд.

    ΠŸΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΠ° Java ΠΈ Core Java

    Java — это язык программирования, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°Π΅Ρ‚ кросс-ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΠ΅Π½Π½ΡƒΡŽ ΡΠΎΠ²ΠΌΠ΅ΡΡ‚ΠΈΠΌΠΎΡΡ‚ΡŒ ΠΈ ΠΈΠΌΠ΅Π΅Ρ‚ мСньшС зависимостСй Ρ€Π΅Π°Π»ΠΈΠ·Π°Ρ†ΠΈΠΈ ΠΏΠΎ ΡΡ€Π°Π²Π½Π΅Π½ΠΈΡŽ с Π΄Ρ€ΡƒΠ³ΠΈΠΌΠΈ языками программирования. Core Java — это Π²Ρ‹Ρ‡ΠΈΡΠ»ΠΈΡ‚Π΅Π»ΡŒΠ½Π°Ρ ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΠ°, ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅ΠΌΠ°Ρ для Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ Java для Π½Π°ΡΡ‚ΠΎΠ»ΡŒΠ½Ρ‹Ρ… ΠΊΠΎΠΌΠΏΡŒΡŽΡ‚Π΅Ρ€ΠΎΠ² ΠΈ сСрвСров.

    ΠŸΡ€ΠΈΠΌΠ΅Π½Π΅Π½ΠΈΠ΅ Java ΠΈ Core Java

    Java Π½Π°Π΄Π΅ΠΆΠ΅Π½, бСзопасСн ΠΈ Π½Π΅ зависит ΠΎΡ‚ ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΡ‹, Ρ‡Ρ‚ΠΎ Π΄Π΅Π»Π°Π΅Ρ‚ Π΅Π³ΠΎ ΠΈΠ΄Π΅Π°Π»ΡŒΠ½Ρ‹ΠΌ Π²Ρ‹Π±ΠΎΡ€ΠΎΠΌ для Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ ΠΏΡ€ΠΈΠΊΠ»Π°Π΄Π½ΠΎΠ³ΠΎ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½ΠΎΠ³ΠΎ обСспСчСния для ΡˆΠΈΡ€ΠΎΠΊΠΎΠ³ΠΎ спСктра ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌ, Π²ΠΊΠ»ΡŽΡ‡Π°Ρ ΠΌΠΎΠ±ΠΈΠ»ΡŒΠ½Ρ‹Π΅ Ρ‚Π΅Π»Π΅Ρ„ΠΎΠ½Ρ‹, Π²Π΅Π±-сайты, встроСнныС систСмы, сСрвСры ΠΈ Ρ‚. Π”.Core Java относится ΠΊ Java Standard Edition (Java SE), которая являСтся Π±Π°Π·ΠΎΠ²ΠΎΠΉ основой ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΡ‹ Java ΠΈ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ для Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ ΠΊΠΎΡ€ΠΏΠΎΡ€Π°Ρ‚ΠΈΠ²Π½ΠΎΠ³ΠΎ уровня ΠΊΠ°ΠΊ для Π½Π°ΡΡ‚ΠΎΠ»ΡŒΠ½Ρ‹Ρ… ΠΊΠΎΠΌΠΏΡŒΡŽΡ‚Π΅Ρ€ΠΎΠ², Ρ‚Π°ΠΊ ΠΈ для сСрвСров.

    ΡƒΡ€ΠΎΠ²Π΅Π½ΡŒ

    Java — это язык программирования Π±Π°Π·ΠΎΠ²ΠΎΠ³ΠΎ уровня для Π½Π°Ρ‡ΠΈΠ½Π°ΡŽΡ‰ΠΈΡ…, ΠΆΠ΅Π»Π°ΡŽΡ‰ΠΈΡ… ΠΈΠ·ΡƒΡ‡ΠΈΡ‚ΡŒ основы языка программирования Java ΠΈ Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ знания Java SE. Core Java ΡƒΡ‡ΠΈΡ‚ всСм основам ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ Java ΠΈ ΠΌΠ½ΠΎΠ³ΠΎΠΌΡƒ Π΄Ρ€ΡƒΠ³ΠΎΠΌΡƒ, Π²ΠΊΠ»ΡŽΡ‡Π°Ρ ΠΊΠΎΠ½Ρ†Π΅ΠΏΡ†ΠΈΠΈ ООП, ΠΌΠ½ΠΎΠ³ΠΎΠΏΠΎΡ‚ΠΎΡ‡Π½ΠΎΡΡ‚ΡŒ, ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΡƒ ΠΈΡΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠΉ, ΠΏΠΎΠ»ΠΈΠΌΠΎΡ€Ρ„ΠΈΠ·ΠΌ ΠΈ Ρ‚. Π”.

    Java ΠΈ Core Java: ΡΡ€Π°Π²Π½ΠΈΡ‚Π΅Π»ΡŒΠ½Π°Ρ Ρ‚Π°Π±Π»ΠΈΡ†Π°

    ΠžΠ±Π·ΠΎΡ€ Java ΠΈ Core Java

    ГипотСтичСски ΠΌΠ΅ΠΆΠ΄Ρƒ Π½ΠΈΠΌΠΈ Π½Π΅Ρ‚ Ρ€Π°Π·Π½ΠΈΡ†Ρ‹. ВсС просто Java. Оба Ρ‚Π΅Ρ€ΠΌΠΈΠ½Π° практичСски ΠΎΠ΄ΠΈΠ½Π°ΠΊΠΎΠ²Ρ‹, учитывая, Ρ‡Ρ‚ΠΎ Core Java — это всСго лишь Ρ‡Π°ΡΡ‚ΡŒ Java, которая ΠΎΠ·Π½Π°Ρ‡Π°Π΅Ρ‚ Java Standard Edition плюс Π½Π°Π±ΠΎΡ€ связанных Ρ‚Π΅Ρ…Π½ΠΎΠ»ΠΎΠ³ΠΈΠΉ. Java — это язык программирования высокого уровня Π½Π° основС классов, Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Π°Π½Π½Ρ‹ΠΉ Sun Microsystems, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ ΠΏΠΎΠ·ΠΆΠ΅ Π±Ρ‹Π» ΠΏΡ€ΠΈΠΎΠ±Ρ€Π΅Ρ‚Π΅Π½ Oracle Corporation.Π’ Ρ‚ΠΎ врСмя ΠΊΠ°ΠΊ Java ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ для Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ Π°ΠΏΠΏΠ»Π΅Ρ‚ΠΎΠ² ΠΈ ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ, Core Java Π² основном ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ для Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ ΠΏΡ€ΠΈΠΊΠ»Π°Π΄Π½ΠΎΠ³ΠΎ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½ΠΎΠ³ΠΎ обСспСчСния ΠΊΠ°ΠΊ для Π½Π°ΡΡ‚ΠΎΠ»ΡŒΠ½Ρ‹Ρ…, Ρ‚Π°ΠΊ ΠΈ для сСрвСрных срСд. Π―Π΄Ρ€ΠΎ Java — это самая простая ΠΈ чистая Ρ„ΠΎΡ€ΠΌΠ° Java, залоТившая основу для Π΄Ρ€ΡƒΠ³ΠΈΡ… Ρ€Π΅Π΄Π°ΠΊΡ†ΠΈΠΉ языка программирования.

    Π‘Π°Π³Π°Ρ€ Π₯ΠΈΠ»Π»Π°Ρ€ — ΠΏΠ»ΠΎΠ΄ΠΎΠ²ΠΈΡ‚Ρ‹ΠΉ Π°Π²Ρ‚ΠΎΡ€ ΠΊΠΎΠ½Ρ‚Π΅Π½Ρ‚Π° / статСй / Π±Π»ΠΎΠ³ΠΎΠ², Ρ€Π°Π±ΠΎΡ‚Π°ΡŽΡ‰ΠΈΠΉ ΡΡ‚Π°Ρ€ΡˆΠΈΠΌ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠΎΠΌ / писатСлСм ΠΊΠΎΠ½Ρ‚Π΅Π½Ρ‚Π° Π² извСстной Ρ„ΠΈΡ€ΠΌΠ΅ ΠΏΠΎ ΠΎΠ±ΡΠ»ΡƒΠΆΠΈΠ²Π°Π½ΠΈΡŽ ΠΊΠ»ΠΈΠ΅Π½Ρ‚ΠΎΠ², Π±Π°Π·ΠΈΡ€ΡƒΡŽΡ‰Π΅ΠΉΡΡ Π² Индии. Π£ Π½Π΅Π³ΠΎ Π΅ΡΡ‚ΡŒ ΠΆΠ΅Π»Π°Π½ΠΈΠ΅ ΠΈΡΡΠ»Π΅Π΄ΠΎΠ²Π°Ρ‚ΡŒ Ρ€Π°Π·Π½ΠΎΠΏΠ»Π°Π½ΠΎΠ²Ρ‹Π΅ Ρ‚Π΅ΠΌΡ‹ ΠΈ Ρ€Π°Π·Ρ€Π°Π±Π°Ρ‚Ρ‹Π²Π°Ρ‚ΡŒ высококачСствСнный ΠΊΠΎΠ½Ρ‚Π΅Π½Ρ‚, Ρ‡Ρ‚ΠΎΠ±Ρ‹ Π΅Π³ΠΎ ΠΌΠΎΠΆΠ½ΠΎ Π±Ρ‹Π»ΠΎ Π»ΡƒΡ‡ΡˆΠ΅ всСго Ρ‡ΠΈΡ‚Π°Ρ‚ΡŒ.Благодаря Π΅Π³ΠΎ страсти ΠΊ ΠΏΠΈΡΠ°Ρ‚Π΅Π»ΡŒΡΡ‚Π²Ρƒ, ΠΎΠ½ ΠΈΠΌΠ΅Π΅Ρ‚ Π±ΠΎΠ»Π΅Π΅ 7 Π»Π΅Ρ‚ ΠΏΡ€ΠΎΡ„Π΅ΡΡΠΈΠΎΠ½Π°Π»ΡŒΠ½ΠΎΠ³ΠΎ ΠΎΠΏΡ‹Ρ‚Π° Π² написании ΠΈ Ρ€Π΅Π΄Π°ΠΊΡ‚ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠΈ услуг Π½Π° самых Ρ€Π°Π·Π½Ρ‹Ρ… ΠΏΠ΅Ρ‡Π°Ρ‚Π½Ρ‹Ρ… ΠΈ элСктронных ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΠ°Ρ….

    Π’Π½Π΅ своСй ΠΏΡ€ΠΎΡ„Π΅ΡΡΠΈΠΎΠ½Π°Π»ΡŒΠ½ΠΎΠΉ ΠΆΠΈΠ·Π½ΠΈ Π‘Π°Π³Π°Ρ€ Π»ΡŽΠ±ΠΈΡ‚ ΠΎΠ±Ρ‰Π°Ρ‚ΡŒΡΡ с людьми ΠΈΠ· Ρ€Π°Π·Π½Ρ‹Ρ… ΠΊΡƒΠ»ΡŒΡ‚ΡƒΡ€ ΠΈ происхоТдСния. МоТно ΡΠΊΠ°Π·Π°Ρ‚ΡŒ, Ρ‡Ρ‚ΠΎ ΠΎΠ½ Π»ΡŽΠ±ΠΎΠΏΡ‹Ρ‚Π΅Π½ ΠΏΠΎ Π½Π°Ρ‚ΡƒΡ€Π΅. Он считаСт, Ρ‡Ρ‚ΠΎ ΠΊΠ°ΠΆΠ΄Ρ‹ΠΉ — это ΠΎΠΏΡ‹Ρ‚ обучСния, ΠΈ это приносит ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½Π½ΠΎΠ΅ Π²ΠΎΠ»Π½Π΅Π½ΠΈΠ΅, своСго Ρ€ΠΎΠ΄Π° Π»ΡŽΠ±ΠΎΠΏΡ‹Ρ‚ΡΡ‚Π²ΠΎ, ΠΏΠΎΠ·Π²ΠΎΠ»ΡΡŽΡ‰Π΅Π΅ ΠΏΡ€ΠΎΠ΄ΠΎΠ»ΠΆΠ°Ρ‚ΡŒ Ρ€Π°Π±ΠΎΡ‚Ρƒ. ΠŸΠΎΠ½Π°Ρ‡Π°Π»Ρƒ это ΠΌΠΎΠΆΠ΅Ρ‚ ΠΏΠΎΠΊΠ°Π·Π°Ρ‚ΡŒΡΡ Π³Π»ΡƒΠΏΡ‹ΠΌ, Π½ΠΎ Ρ‡Π΅Ρ€Π΅Π· Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ΅ врСмя это расслабляСт ΠΈ ΠΎΠ±Π»Π΅Π³Ρ‡Π°Π΅Ρ‚ Π½Π°Ρ‡Π°Π»ΠΎ Ρ€Π°Π·Π³ΠΎΠ²ΠΎΡ€Π° с ΡΠΎΠ²Π΅Ρ€ΡˆΠ΅Π½Π½ΠΎ Π½Π΅Π·Π½Π°ΠΊΠΎΠΌΡ‹ΠΌΠΈ людьми — Π²ΠΎΡ‚ Ρ‡Ρ‚ΠΎ ΠΎΠ½ сказал.»

    ПослСдниС сообщСния ΠΎΡ‚ Sagar Khillar (ΠΏΠΎΡΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ всС)

    : Если Π²Π°ΠΌ ΠΏΠΎΠ½Ρ€Π°Π²ΠΈΠ»Π°ΡΡŒ эта ΡΡ‚Π°Ρ‚ΡŒΡ ΠΈΠ»ΠΈ наш сайт. ΠŸΠΎΠΆΠ°Π»ΡƒΠΉΡΡ‚Π°, расскаТитС ΠΎΠ± этом. ΠŸΠΎΠ΄Π΅Π»ΠΈΡ‚Π΅ΡΡŒ ΠΈΠΌ с Π΄Ρ€ΡƒΠ·ΡŒΡΠΌΠΈ / сСмьСй.

    Π£ΠΊΠ°ΠΆΠΈΡ‚Π΅
    Π‘Π°Π³Π°Ρ€ Π₯ΠΈΠ»Π»Π°Ρ€. Β«Π Π°Π·Π½ΠΈΡ†Π° ΠΌΠ΅ΠΆΠ΄Ρƒ Java ΠΈ Core JavaΒ». DifferenceBetween.net. 14 фСвраля 2020.

    Π§Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ Core Java — Javatpoint

    Π‘Π»ΠΎΠ²ΠΎ Core описываСт Π±Π°Π·ΠΎΠ²ΡƒΡŽ ΠΊΠΎΠ½Ρ†Π΅ΠΏΡ†ΠΈΡŽ Ρ‡Π΅Π³ΠΎ-Π»ΠΈΠ±ΠΎ, Π° здСсь Ρ„Ρ€Π°Π·Π° Β«Core JavaΒ» опрСдСляСт Π±Π°Π·ΠΎΠ²ΡƒΡŽ Java, которая ΠΎΡ…Π²Π°Ρ‚Ρ‹Π²Π°Π΅Ρ‚ Π±Π°Π·ΠΎΠ²ΡƒΡŽ ΠΊΠΎΠ½Ρ†Π΅ΠΏΡ†ΠΈΡŽ языка программирования Java.ВсС ΠΌΡ‹ Π·Π½Π°Π΅ΠΌ, Ρ‡Ρ‚ΠΎ Java — ΠΎΠ΄ΠΈΠ½ ΠΈΠ· Ρ…ΠΎΡ€ΠΎΡˆΠΎ извСстных ΠΈ ΡˆΠΈΡ€ΠΎΠΊΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅ΠΌΡ‹Ρ… языков программирования, ΠΈ Ρ‡Ρ‚ΠΎΠ±Ρ‹ Π½Π°Ρ‡Π°Ρ‚ΡŒ с Π½Π΅Π³ΠΎ, Π½ΠΎΠ²ΠΈΡ‡ΠΎΠΊ Π΄ΠΎΠ»ΠΆΠ΅Π½ Π½Π°Ρ‡Π°Ρ‚ΡŒ свой ΠΏΡƒΡ‚ΡŒ с Core Java, Π° Π·Π°Ρ‚Π΅ΠΌ ΠΊ Advance Java. Π―Π·Ρ‹ΠΊ программирования Java — это язык программирования ΠΎΠ±Ρ‰Π΅Π³ΠΎ назначСния, основанный Π½Π° ΠΊΠΎΠ½Ρ†Π΅ΠΏΡ†ΠΈΠΈ ООП. ОкСан Java слишком Π³Π»ΡƒΠ±ΠΎΠΊ, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΈΠ·ΡƒΡ‡Π°Ρ‚ΡŒ Π΅Π³ΠΎ, Ρ‚.Π΅. Ρ‡Π΅ΠΌ большС Π²Ρ‹ ΡƒΠ·Π½Π°Π΅Ρ‚Π΅, Ρ‚Π΅ΠΌ Π³Π»ΡƒΠ±ΠΆΠ΅ Π²Ρ‹ ΡƒΠ·Π½Π°Π΅Ρ‚Π΅. Java — ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΠ΅Π½Π½ΠΎ-нСзависимый ΠΈ Π½Π°Π΄Π΅ΠΆΠ½Ρ‹ΠΉ язык программирования. ΠŸΡ€ΠΈΠ½Ρ†ΠΈΠΏ, ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΌΡƒ слСдуСт Java, — это WORA , Π² ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΌ говорится: : Β«Π—Π°ΠΏΠΈΡˆΠΈ ΠΎΠ΄ΠΈΠ½ Ρ€Π°Π·, запусти Π³Π΄Π΅ ΡƒΠ³ΠΎΠ΄Π½ΠΎΒ» .Π―Π·Ρ‹ΠΊ программирования довольно прост ΠΈ понятСн. Но слСдуСт Π·Π½Π°Ρ‚ΡŒ, Ρ‡Ρ‚ΠΎ Core Java Π½Π΅ отличаСтся ΠΎΡ‚ Java. Java Π·Π°Π²Π΅Ρ€ΡˆΠ΅Π½Π° сама ΠΏΠΎ сСбС, Π½ΠΎ для Π½ΠΎΠ²ΠΈΡ‡ΠΊΠΎΠ² СстСствСнно, Ρ‡Ρ‚ΠΎ Π½ΠΎΠ²ΠΈΡ‡ΠΎΠΊ Π΄ΠΎΠ»ΠΆΠ΅Π½ Π½Π°Ρ‡Π°Ρ‚ΡŒ с основных ΠΊΠΎΠ½Ρ†Π΅ΠΏΡ†ΠΈΠΉ Java. На самом Π΄Π΅Π»Π΅ Java ΠΈΠΌΠ΅Π΅Ρ‚ Ρ€Π°Π·Π½Ρ‹Π΅ Ρ€Π΅Π΄Π°ΠΊΡ†ΠΈΠΈ, Π³Π΄Π΅ Core Java являСтся ΠΎΠ΄Π½ΠΎΠΉ ΠΈΠ· частСй Ρ€Π΅Π΄Π°ΠΊΡ†ΠΈΠΈ.

    Выпуски Java

    Π―Π·Ρ‹ΠΊ программирования Java ΠΈΠΌΠ΅Π΅Ρ‚ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠ΅ ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½Π½Ρ‹Π΅ вСрсии, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΎΠ½ ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°Π΅Ρ‚:

    Java SE (стандартная вСрсия Java)

    Java SE — это Π²Ρ‹Ρ‡ΠΈΡΠ»ΠΈΡ‚Π΅Π»ΡŒΠ½Π°Ρ ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΠ°, ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅ΠΌΠ°Ρ для Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ Π½Π°ΡΡ‚ΠΎΠ»ΡŒΠ½Ρ‹Ρ… ΠΈΠ»ΠΈ ΠΎΠΊΠΎΠ½Π½Ρ‹Ρ… ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ.Π’Π°ΠΊΠΈΠΌ ΠΎΠ±Ρ€Π°Π·ΠΎΠΌ, ядро ​​Java — это Ρ‡Π°ΡΡ‚ΡŒ Java SE, Π³Π΄Π΅ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠΈ Ρ€Π°Π·Ρ€Π°Π±Π°Ρ‚Ρ‹Π²Π°ΡŽΡ‚ Π½Π°ΡΡ‚ΠΎΠ»ΡŒΠ½Ρ‹Π΅ прилоТСния, ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡ Π±Π°Π·ΠΎΠ²Ρ‹Π΅ ΠΊΠΎΠ½Ρ†Π΅ΠΏΡ†ΠΈΠΈ Java, Π³Π΄Π΅ JDK (Java Development Kit) — это довольно знакомая рСализация Java SE.

    Java EE (Java Enterprise Edition)

    Π’Π°ΠΊΠΆΠ΅ извСстСн ΠΊΠ°ΠΊ Java 2 Platform ΠΈΠ»ΠΈ J2EE . Π­Ρ‚ΠΎ корпоративная ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΠ°, Π½Π° ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΉ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊ Ρ€Π°Π·Ρ€Π°Π±Π°Ρ‚Ρ‹Π²Π°Π΅Ρ‚ прилоТСния Π½Π° сСрвСрах, Ρ‚ΠΎ Π΅ΡΡ‚ΡŒ корпоративная Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠ°. Π­Ρ‚Π° рСдакция ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ для Π²Π΅Π±-Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ.

    Java ME (Java Micro Edition)

    Π­Ρ‚ΠΎ ΠΌΠΈΠΊΡ€ΠΎ-ΠΈΠ·Π΄Π°Π½ΠΈΠ΅, ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ΅ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ для Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ для ΠΌΠΎΠ±ΠΈΠ»ΡŒΠ½Ρ‹Ρ… Ρ‚Π΅Π»Π΅Ρ„ΠΎΠ½ΠΎΠ². Π’Π°ΠΊΠΈΠΌ ΠΎΠ±Ρ€Π°Π·ΠΎΠΌ, для Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ ΠΌΠΎΠ±ΠΈΠ»ΡŒΠ½Ρ‹Ρ… ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ Java ME.

    Π’Π°ΠΊΠΈΠΌ ΠΎΠ±Ρ€Π°Π·ΠΎΠΌ, ΠΎΡ‡Π΅Π²ΠΈΠ΄Π½ΠΎ, Ρ‡Ρ‚ΠΎ Core Java являСтся Ρ‡Π°ΡΡ‚ΡŒΡŽ Java SE, Π° Java SE являСтся основой для всСх Π΄Ρ€ΡƒΠ³ΠΈΡ… Ρ€Π΅Π΄Π°ΠΊΡ†ΠΈΠΉ Java.

    ΠšΠΎΠ½Ρ†Π΅ΠΏΡ†ΠΈΠΈ, описанныС Π² Core Java

    Π‘Π»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠ΅ ΠΊΠΎΠ½Ρ†Π΅ΠΏΡ†ΠΈΠΈ ΡΠ²Π»ΡΡŽΡ‚ΡΡ ΠΎΠ΄Π½ΠΈΠΌΠΈ ΠΈΠ· основных основных ΠΊΠΎΠ½Ρ†Π΅ΠΏΡ†ΠΈΠΉ Java, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Π΄ΠΎΠ»ΠΆΠ΅Π½ ΠΏΡ€ΠΎΠΉΡ‚ΠΈ Π½ΠΎΠ²ΠΈΡ‡ΠΎΠΊ:

    Π₯отя эти основныС ΠΊΠΎΠ½Ρ†Π΅ΠΏΡ†ΠΈΠΈ ΡΠΎΡ…Ρ€Π°Π½ΡΡŽΡ‚ свою Π³Π»ΡƒΠ±ΠΈΠ½Ρƒ, послС получСния ΠΈ Ρ€Π΅Π°Π»ΠΈΠ·Π°Ρ†ΠΈΠΈ Π»ΡƒΡ‡ΡˆΠΈΡ… Π·Π½Π°Π½ΠΈΠΉ Π² Π±Π°Π·ΠΎΠ²Ρ‹Ρ… концСпциях Java ΠΌΠΎΠΆΠ½ΠΎ ΠΏΠ΅Ρ€Π΅ΠΉΡ‚ΠΈ ΠΊ Ρ€Π°ΡΡˆΠΈΡ€Π΅Π½Π½ΠΎΠΉ вСрсии Java, ΠΏΠΎΡΠΊΠΎΠ»ΡŒΠΊΡƒ Ρ€Π°ΡΡˆΠΈΡ€Π΅Π½Π½Ρ‹ΠΉ Ρ€Π°Π·Π΄Π΅Π» Java довольно интСрСсСн, Π½ΠΎ ΠΌΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ понят Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Ρ‚ΠΎΠ³Π΄Π°, ΠΊΠΎΠ³Π΄Π° основныС ΠΊΠΎΠ½Ρ†Π΅ΠΏΡ†ΠΈΠΈ Π―Π²Ρ‹ понятны.

    Core Java ΠΏΡ€ΠΎΡ‚ΠΈΠ². ΠŸΡ€Π΅Π΄Π²Π°Ρ€ΠΈΡ‚Π΅Π»ΡŒΠ½Π°Ρ вСрсия Java

    И Core Java, ΠΈ Advanced Java ΡΠ²Π»ΡΡŽΡ‚ΡΡ частями программирования Π½Π° Java, Π½ΠΎ для Π»ΡƒΡ‡ΡˆΠ΅Π³ΠΎ понимания всСй Java Π½Π°ΠΌ Π½ΡƒΠΆΠ½ΠΎ Ρ€Π°Π·Π»ΠΈΡ‡Π°Ρ‚ΡŒ ΠΎΠ±Π°. Π˜Ρ‚Π°ΠΊ, Π½ΠΈΠΆΠ΅ ΠΌΡ‹ описали Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ различия ΠΌΠ΅ΠΆΠ΄Ρƒ Π±Π°Π·ΠΎΠ²ΠΎΠΉ ΠΈ Ρ€Π°ΡΡˆΠΈΡ€Π΅Π½Π½ΠΎΠΉ Java:

    Π―Π΄Ρ€ΠΎ Java ΠŸΡ€ΠΎΠ΄Π²ΠΈΠ½ΡƒΡ‚Π°Ρ Java
    Core Java ΠΎΡ…Π²Π°Ρ‚Ρ‹Π²Π°Π΅Ρ‚ Π±Π°Π·ΠΎΠ²Ρ‹Π΅ ΠΊΠΎΠ½Ρ†Π΅ΠΏΡ†ΠΈΠΈ языка программирования Java. Advance Java ΠΎΡ…Π²Π°Ρ‚Ρ‹Π²Π°Π΅Ρ‚ слоТныС Ρ‚Π΅ΠΌΡ‹ ΠΈ ΠΊΠΎΠ½Ρ†Π΅ΠΏΡ†ΠΈΠΈ языка программирования Java.
    Core Java ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ для Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ ΠΊΠΎΠΌΠΏΡŒΡŽΡ‚Π΅Ρ€Π½Ρ‹Ρ… ΠΈΠ»ΠΈ Π½Π°ΡΡ‚ΠΎΠ»ΡŒΠ½Ρ‹Ρ… ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ. Advance Java ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ для Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ ΠΊΠΎΡ€ΠΏΠΎΡ€Π°Ρ‚ΠΈΠ²Π½Ρ‹Ρ… ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ.
    Π­Ρ‚ΠΎ ΠΏΠ΅Ρ€Π²Ρ‹ΠΉ шаг, для Π½Π°Ρ‡Π°Π»Π°, Java. Π­Ρ‚ΠΎ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠΉ шаг послС Π·Π°Π²Π΅Ρ€ΡˆΠ΅Π½ΠΈΡ Core Java.
    Core Java основан Π½Π° ΠΎΠ΄Π½ΠΎΡƒΡ€ΠΎΠ²Π½Π΅Π²ΠΎΠΉ Π°Ρ€Ρ…ΠΈΡ‚Π΅ΠΊΡ‚ΡƒΡ€Π΅. Advance Java основан Π½Π° Π΄Π²ΡƒΡ…ΡƒΡ€ΠΎΠ²Π½Π΅Π²ΠΎΠΉ Π°Ρ€Ρ…ΠΈΡ‚Π΅ΠΊΡ‚ΡƒΡ€Π΅.
    ΠŸΠΎΠ΄Ρ…ΠΎΠ΄ΠΈΡ‚ для Java SE. Он Ρ€Π°Π±ΠΎΡ‚Π°Π΅Ρ‚ ΠΏΠΎΠ΄ ΡƒΠΏΡ€Π°Π²Π»Π΅Π½ΠΈΠ΅ΠΌ Java EE ΠΈΠ»ΠΈ J2EE.
    Он ΠΎΡ…Π²Π°Ρ‚Ρ‹Π²Π°Π΅Ρ‚ основныС Ρ‚Π΅ΠΌΡ‹, Ρ‚Π°ΠΊΠΈΠ΅ ΠΊΠ°ΠΊ ООП, наслСдованиС, ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠ° ΠΈΡΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠΉ ΠΈ Ρ‚. Π”. Он ΠΎΡ…Π²Π°Ρ‚Ρ‹Π²Π°Π΅Ρ‚ слоТныС Ρ‚Π΅ΠΌΡ‹, Ρ‚Π°ΠΊΠΈΠ΅ ΠΊΠ°ΠΊ JDBC, сСрвлСты, JSP, Π²Π΅Π±-слуТбы ΠΈ Ρ‚. Π”.

    Core Java vs Advanced Java: ΠΏΠΎΠ΄Ρ€ΠΎΠ±Π½ΠΎΠ΅ сравнСниС

    ПослС большого изучСния Java сСгодня ΠΌΡ‹ обсудим Π½ΠΎΠ²ΡƒΡŽ Ρ‚Π΅ΠΌΡƒ: сравнСниС Π±Π°Π·ΠΎΠ²ΠΎΠΉ Java ΠΈ Ρ€Π°ΡΡˆΠΈΡ€Π΅Π½Π½ΠΎΠΉ Java.Π›ΡŽΠ±ΠΎΠΉ, ΠΊΡ‚ΠΎ занимаСтся ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ΠΌ ΠΈΠ»ΠΈ Π΄Π°ΠΆΠ΅ Π·Π½Π°Π΅Ρ‚ Π΅Π³ΠΎ повСрхностно, ΠΌΠΎΠΆΠ΅Ρ‚ Π·Π½Π°Ρ‚ΡŒ, Ρ‡Ρ‚ΠΎ Java — ΠΎΠ΄ΠΈΠ½ ΠΈΠ· ΠΏΠ΅Ρ€Π΅Π΄ΠΎΠ²Ρ‹Ρ… языков программирования Π² настоящСС врСмя. Π’ Π½Π΅ΠΌ масса Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΉ, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΎΠΏΡ€Π°Π²Π΄Ρ‹Π²Π°ΡŽΡ‚ , ΠΏΠΎΡ‡Π΅ΠΌΡƒ Java ΠΏΡ€Π΅Π΄ΠΏΠΎΡ‡ΠΈΡ‚Π°ΡŽΡ‚ Π½Π΅ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Π²Π΅Ρ‚Π΅Ρ€Π°Π½Ρ‹, Π½ΠΎ ΠΈ Π½ΠΎΠ²ΠΈΡ‡ΠΊΠΈ. .

    Π‘ ΠΌΠΎΠΌΠ΅Π½Ρ‚Π° своСго создания Π΅Ρ‰Π΅ Π² 1995 Π³ΠΎΠ΄Ρƒ, ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π½ΠΎ-ΠΎΡ€ΠΈΠ΅Π½Ρ‚ΠΈΡ€ΠΎΠ²Π°Π½Π½Ρ‹ΠΉ , ΠΎΡ€ΠΈΠ΅Π½Ρ‚ΠΈΡ€ΠΎΠ²Π°Π½Π½Ρ‹ΠΉ Π½Π° классы, , высокоуровнСвый язык программирования ΠΎΠ±Ρ‰Π΅Π³ΠΎ назначСния стал Π½Π΅ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ ΠΎΠ΄Π½ΠΈΠΌ ΠΈΠ· самых Π»ΡŽΠ±ΠΈΠΌΡ‹Ρ…, Π½ΠΎ ΠΈ ΠΎΠ΄Π½ΠΈΠΌ ΠΈΠ· самых Π²Π»ΠΈΡΡ‚Π΅Π»ΡŒΠ½Ρ‹Ρ… языков программирования. Π² ΠΌΠΈΡ€Π΅.

    Π’ Π˜Π½Ρ‚Π΅Ρ€Π½Π΅Ρ‚Π΅ ΠΌΠΎΠΆΠ½ΠΎ ΡƒΠ²ΠΈΠ΄Π΅Ρ‚ΡŒ мноТСство дискуссий ΠΎ различиях ΠΌΠ΅ΠΆΠ΄Ρƒ Π±Π°Π·ΠΎΠ²ΠΎΠΉ Java ΠΈ Ρ€Π°ΡΡˆΠΈΡ€Π΅Π½Π½ΠΎΠΉ Java Π½Π° Ρ€Π°Π·Π»ΠΈΡ‡Π½Ρ‹Ρ… Π²Π΅Π±-ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΠ°Ρ….

    ВСхнология Java — это Π½Π΅ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ язык программирования, Π½ΠΎ ΠΈ ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΠ°. Π˜Ρ‚Π°ΠΊ, ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΠ° Java — это срСда, которая ΠΎΠ±Π»Π΅Π³Ρ‡Π°Π΅Ρ‚ Π²Ρ‹ΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅ Java-ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ . ΠŸΡ€Π΅ΠΆΠ΄Π΅ Ρ‡Π΅ΠΌ ΠΏΠ΅Ρ€Π΅ΠΉΡ‚ΠΈ ΠΊ ΡΡ€Π°Π²Π½Π΅Π½ΠΈΡŽ Π±Π°Π·ΠΎΠ²ΠΎΠΉ Java ΠΈ Ρ€Π°ΡΡˆΠΈΡ€Π΅Π½Π½ΠΎΠΉ Java, Π΄Π°Π²Π°ΠΉΡ‚Π΅ сначала исслСдуСм Ρ€Π°Π·Π»ΠΈΡ‡Π½Ρ‹Π΅ ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΡ‹ Java.

    ΠŸΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΡ‹ Java

    БущСствуСт 4 Ρ€Π°Π·Π»ΠΈΡ‡Π½Ρ‹Ρ… ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΡ‹ языка программирования Java.Π­Ρ‚ΠΎ Java SE, Java EE, Java ME ΠΈ JavaFX. КаТдая ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΠ° Java поставляСтся с JVM (Π²ΠΈΡ€Ρ‚ΡƒΠ°Π»ΡŒΠ½Π°Ρ машина Java), ΠΈ API (интСрфСйс ΠΏΡ€ΠΈΠΊΠ»Π°Π΄Π½ΠΎΠ³ΠΎ программирования).

    JVM, Π² ΠΎΡ‚Π»ΠΈΡ‡ΠΈΠ΅ ΠΎΡ‚ Π±Π°ΠΉΡ‚-ΠΊΠΎΠ΄Π°, зависит ΠΎΡ‚ ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΡ‹, Π΅Π΅ ΠΌΠΎΠΆΠ½ΠΎ ΠΏΠΎΠ½ΠΈΠΌΠ°Ρ‚ΡŒ ΠΊΠ°ΠΊ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡƒ, ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅ΠΌΡƒΡŽ для запуска ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ Java. Π Π°Π·Π»ΠΈΡ‡Π½Ρ‹Π΅ JVM ΠΏΡ€Π΅Π΄Π½Π°Π·Π½Π°Ρ‡Π΅Π½Ρ‹ для выполнСния ΠΊΠΎΠ΄Π° Java Π½Π° Ρ€Π°Π·Π½Ρ‹Ρ… ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΠ°Ρ…. Java API Π°Π½Π°Π»ΠΎΠ³ΠΈΡ‡Π΅Π½ Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠ΅, ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅ΠΌΠΎΠΉ для создания Π΄Ρ€ΡƒΠ³ΠΈΡ… ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½Ρ‹Ρ… ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚ΠΎΠ².

    КаТдая ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΠ° Java поставляСтся с ΠΎΡ‚Π΄Π΅Π»ΡŒΠ½Ρ‹ΠΌ Π½Π°Π±ΠΎΡ€ΠΎΠΌ JVM ΠΈ Java API.Π‘Π»Π΅Π΄ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎ, ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅, написанноС для ΠΊΠΎΠ½ΠΊΡ€Π΅Ρ‚Π½ΠΎΠΉ ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΡ‹, ΠΌΠΎΠΆΠ΅Ρ‚ Ρ€Π°Π±ΠΎΡ‚Π°Ρ‚ΡŒ Π² любой совмСстимой систСмС, ΠΈΠΌΠ΅ΡŽΡ‰Π΅ΠΉ ΡΠΎΠΎΡ‚Π²Π΅Ρ‚ΡΡ‚Π²ΡƒΡŽΡ‰ΡƒΡŽ Π²ΠΈΡ€Ρ‚ΡƒΠ°Π»ΡŒΠ½ΡƒΡŽ ΠΌΠ°ΡˆΠΈΠ½Ρƒ Java.

    1. Java Standard Edition (Java SE)

    Java SE API ΠΏΡ€Π΅Π΄Π»Π°Π³Π°Π΅Ρ‚ основныС Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ языка программирования Java. Он опрСдСляСт всС: ΠΎΡ‚ Π±Π°Π·ΠΎΠ²Ρ‹Ρ… Ρ‚ΠΈΠΏΠΎΠ² Π΄Π°Π½Π½Ρ‹Ρ… Π΄ΠΎ , ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ΠΎΠ² ΠΈ высокоуровнСвых классов, ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅ΠΌΡ‹Ρ… для доступа ΠΊ Π±Π°Π·Π΅ Π΄Π°Π½Π½Ρ‹Ρ…, Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ графичСского интСрфСйса, Ρ€Π°Π±ΠΎΡ‚Ρ‹ Π² сСти, бСзопасности ΠΈ синтаксичСского Π°Π½Π°Π»ΠΈΠ·Π° XML.

    Помимо объСдинСния JVM с API, Java Standard Edition поставляСтся с тСхнологиями развСртывания, тСхнологиями Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ, Π΄Ρ€ΡƒΠ³ΠΈΠΌΠΈ Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠ°ΠΌΠΈ классов ΠΈ Π½Π°Π±ΠΎΡ€Π°ΠΌΠΈ инструмСнтов.

    Core Java — это ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½ΠΈΠ΅ Oracle для обозначСния подмноТСства Ρ‚Π΅Ρ…Π½ΠΎΠ»ΠΎΠ³ΠΈΠΉ Java SE. ЀактичСски, Ρ‚Π΅Ρ€ΠΌΠΈΠ½ ядро ​​Java Π½Π΅ относится ΠΊ языку программирования Java Π½Π° тСхничСском ΡƒΡ€ΠΎΠ²Π½Π΅ , это всСго лишь Π½Π°Π±ΠΎΡ€ Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Ρ… Π±Π°Π·ΠΎΠ²Ρ‹Ρ… ΠΏΠ°ΠΊΠ΅Ρ‚ΠΎΠ². Π’ настоящСС врСмя ядро ​​Java опрСдСляСтся ΠΊΠ°ΠΊ ΠΈΠΌΠ΅ΡŽΡ‰Π΅Π΅:

    • ΠœΠΎΠ½ΠΈΡ‚ΠΎΡ€ΠΈΠ½Π³ ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ ΠΈ ΡƒΠΏΡ€Π°Π²Π»Π΅Π½ΠΈΠ΅ ΠΈΠΌΠΈ
    • Π‘Π°Π·ΠΎΠ²Ρ‹Π΅ Ρ‚Π΅Ρ…Π½ΠΎΠ»ΠΎΠ³ΠΈΠΈ
    • CORBA
    • HotSpot VM
    • JNDI (Java Naming and Directory Interface)
    • Tools API
    • XML

    2 .Java Enterprise Edition (Java EE)

    ΠŸΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΠ° Java Enterprise Edition построСна Π½Π° основС Java SE. Как ΠΈ SE, ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΠ° Java EE поставляСтся с API, JVM ΠΈ JRE (Java Runtime Environment) для Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ ΠΈ запуска ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΡΠ²Π»ΡΡŽΡ‚ΡΡ высоконадСТными, ΠΌΠ½ΠΎΠ³ΠΎΡƒΡ€ΠΎΠ²Π½Π΅Π²Ρ‹ΠΌΠΈ, ΠΌΠ°ΡΡˆΡ‚Π°Π±ΠΈΡ€ΡƒΠ΅ΠΌΡ‹ΠΌΠΈ ΠΈ Π½Π°Π΄Π΅ΠΆΠ½ΠΎ Π·Π°Ρ‰ΠΈΡ‰Π΅Π½Π½Ρ‹ΠΌΠΈ.

    3. Java Micro Edition (Java ME)

    Π₯отя, ΠΊΠ°ΠΊ ΠΈ Π΅Π³ΠΎ Π±Ρ€Π°Ρ‚ΡŒΡ ΠΈ сСстры, Java ME поставляСтся с API ΠΈ JVM, основным ΠΎΡ‚Π»ΠΈΡ‡ΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹ΠΌ Ρ„Π°ΠΊΡ‚ΠΎΡ€ΠΎΠΌ являСтся ΠΊΡ€ΠΎΡˆΠ΅Ρ‡Π½Ρ‹ΠΉ Ρ€Π°Π·ΠΌΠ΅Ρ€ объСдинСнной Π²ΠΈΡ€Ρ‚ΡƒΠ°Π»ΡŒΠ½ΠΎΠΉ ΠΌΠ°ΡˆΠΈΠ½Ρ‹ Java.ΠžΠ±Ρ‹Ρ‡Π½ΠΎ прилоТСния Java ME ΡΠ²Π»ΡΡŽΡ‚ΡΡ ΠΊΠ»ΠΈΠ΅Π½Ρ‚Π°ΠΌΠΈ слуТб ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΡ‹ Java EE.

    ΠŸΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΠ° Java ME ΡΠΏΠ΅Ρ†ΠΈΠ°Π»ΡŒΠ½ΠΎ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Π°Π½Π° для Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ для ΠΌΠΎΠ±ΠΈΠ»ΡŒΠ½Ρ‹Ρ… ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌ, Ρ‚Π°ΠΊΠΈΡ… ΠΊΠ°ΠΊ смартфоны ΠΈ ΠΏΠ»Π°Π½ΡˆΠ΅Ρ‚Ρ‹. Java ME API — это подмноТСство Java SE API. ΠšΡ€ΠΎΠΌΠ΅ Ρ‚ΠΎΠ³ΠΎ, ΠΎΠ½ поставляСтся со ΡΠΏΠ΅Ρ†ΠΈΠ°Π»ΡŒΠ½Ρ‹ΠΌΠΈ Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠ°ΠΌΠΈ классов, ΠΏΡ€Π΅Π΄Π½Π°Π·Π½Π°Ρ‡Π΅Π½Π½Ρ‹ΠΌΠΈ для Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ для Π½Π΅Π±ΠΎΠ»ΡŒΡˆΠΈΡ… устройств.

    4. JavaFX

    ΠœΡ‹ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅ΠΌ ΠΎΠ±Π»Π΅Π³Ρ‡Π΅Π½Π½Ρ‹ΠΉ API JavaFX для создания ΠΏΠΎΠ»Π½ΠΎΡ„ΡƒΠ½ΠΊΡ†ΠΈΠΎΠ½Π°Π»ΡŒΠ½Ρ‹Ρ… Π˜Π½Ρ‚Π΅Ρ€Π½Π΅Ρ‚-ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ. ΠŸΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ, Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Π°Π½Π½Ρ‹Π΅ Π½Π° ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΠ΅ JavaFX, ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽΡ‚ Π³Ρ€Π°Ρ„ΠΈΠΊΡƒ с Π°ΠΏΠΏΠ°Ρ€Π°Ρ‚Π½Ρ‹ΠΌ ускорСниСм, Π° Ρ‚Π°ΠΊΠΆΠ΅ ΠΌΠ΅Π΄ΠΈΠ°-Π΄Π²ΠΈΠΆΠΊΠΈ.

    Для ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΡ ΠΊ сСтСвым источникам Π΄Π°Π½Π½Ρ‹Ρ… прилоТСния JavaFX ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽΡ‚ API высокого уровня. ΠžΠ±Ρ‹Ρ‡Π½ΠΎ прилоТСния JavaFX ΡΠ²Π»ΡΡŽΡ‚ΡΡ ΠΊΠ»ΠΈΠ΅Π½Ρ‚Π°ΠΌΠΈ слуТб ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΡ‹ Java EE.

    Core Java vs Advanced Java

    Π—Π΄Π΅ΡΡŒ Π²Ρ‹ ΡƒΠ²ΠΈΠ΄ΠΈΡ‚Π΅ сравнСниС основных Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΉ Java ΠΈ Advanced Java —

    1. ΠžΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½ΠΈΠ΅

    Π§Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ Core Java? — Core Java — это Ρ„ΡƒΠ½Π΄Π°ΠΌΠ΅Π½Ρ‚Π°Π»ΡŒΠ½Π°Ρ Ρ„ΠΎΡ€ΠΌΠ° Java. ΠœΡ‹ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅ΠΌ Π΅Π³ΠΎ Π²ΠΎ всСх ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΠ°Ρ… ΠΈ тСхнологиях Java. Π‘Π΅Π· прохоТдСния Π±Π°Π·ΠΎΠ²ΠΎΠΉ Java Π½Π΅Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎ ΠΏΠ΅Ρ€Π΅ΠΉΡ‚ΠΈ Π½Π° ΠΏΡ€ΠΎΠ΄Π²ΠΈΠ½ΡƒΡ‚ΡƒΡŽ Java.

    Π§Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ Advanced Java? — Π’ ΠΎΡ‚Π»ΠΈΡ‡ΠΈΠ΅ ΠΎΡ‚ Π±Π°Π·ΠΎΠ²ΠΎΠΉ Java, Ρ€Π°ΡΡˆΠΈΡ€Π΅Π½Π½Π°Ρ Java — это спСциализация Π±Π°Π·ΠΎΠ²ΠΎΠΉ Java Π² Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΉ ΠΊΠΎΠ½ΠΊΡ€Π΅Ρ‚Π½ΠΎΠΉ области, Ρ‚Π°ΠΊΠΎΠΉ ΠΊΠ°ΠΊ ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠ° Π±Π°Π· Π΄Π°Π½Π½Ρ‹Ρ…, Ρ€Π°Π±ΠΎΡ‚Π° Π² сСти ΠΈ Π˜Π½Ρ‚Π΅Ρ€Π½Π΅Ρ‚.

    2. Π Π°Π·Ρ€Π°Π±ΠΎΡ‚Π°Π½Π½Ρ‹Π΅ прилоТСния

    Core Java ΠΎΡ…Π²Π°Ρ‚Ρ‹Π²Π°Π΅Ρ‚ Ρ„ΡƒΠ½Π΄Π°ΠΌΠ΅Π½Ρ‚Π°Π»ΡŒΠ½Ρ‹Π΅ ΠΊΠΎΠ½Ρ†Π΅ΠΏΡ†ΠΈΠΈ языка программирования Java для Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ ΠΎΠ±Ρ‰ΠΈΡ… ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ. Advanced Java, с Π΄Ρ€ΡƒΠ³ΠΎΠΉ стороны, ΠΎΡ…Π²Π°Ρ‚Ρ‹Π²Π°Π΅Ρ‚ слоТныС Ρ‚Π΅ΠΌΡ‹, относящиСся ΠΊ языку программирования Java, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ ΠΏΠΎΠΌΠΎΠ³Π°Π΅Ρ‚ Π² создании ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ ΠΊΠΎΡ€ΠΏΠΎΡ€Π°Ρ‚ΠΈΠ²Π½ΠΎΠ³ΠΎ уровня.

    ΠŸΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ, Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Π°Π½Π½Ρ‹Π΅ с использованиСм ядра Java, ΠΎΠ±Ρ‹Ρ‡Π½ΠΎ ΡΠ²Π»ΡΡŽΡ‚ΡΡ Π°Π²Ρ‚ΠΎΠ½ΠΎΠΌΠ½Ρ‹ΠΌΠΈ прилоТСниями, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΌΠΎΠ³ΡƒΡ‚ Π±Ρ‹Ρ‚ΡŒ кроссплатформСнными ΠΈΠ»ΠΈ ΠΎΡ€ΠΈΠ΅Π½Ρ‚ΠΈΡ€ΠΎΠ²Π°Π½Π½Ρ‹ΠΌΠΈ Π½Π° ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΡƒ. ΠŸΡ€ΠΎΡ‰Π΅ говоря, ядро ​​Java ΠΏΠΎΠΌΠΎΠ³Π°Π΅Ρ‚ Π² создании ΠΎΠ±Ρ‰ΠΈΡ… ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ, Ρ‚Π°ΠΊΠΈΡ… ΠΊΠ°ΠΊ систСма управлСния ΠΏΠΎΡΠ΅Ρ‰Π°Π΅ΠΌΠΎΡΡ‚ΡŒΡŽ студСнтов, ΠΊΠ°Π»ΡŒΠΊΡƒΠ»ΡΡ‚ΠΎΡ€ EMI ΠΈΠ»ΠΈ классичСская ΠΈΠ³Ρ€Π° Π·ΠΌΠ΅ΠΉΠΊΠ°.

    Напротив, прилоТСния, Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Π°Π½Π½Ρ‹Π΅ с использованиСм Ρ€Π°ΡΡˆΠΈΡ€Π΅Π½Π½ΠΎΠΉ Java, — это прилоТСния, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽΡ‚ прСдприятия ΠΈΠ»ΠΈ находятся Π½Π° ΡƒΡ€ΠΎΠ²Π½Π΅ прСдприятия. Бюда входят прилоТСния, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Ρ€Π°Π±ΠΎΡ‚Π°ΡŽΡ‚ Π½Π° сСрвСрах, Ρ‚ΠΎ Π΅ΡΡ‚ΡŒ Π²Π΅Π±-прилоТСния.

    3.АрхитСктура

    Π―Π΄Ρ€ΠΎ Java ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ ΠΎΠ΄Π½ΠΎΡƒΡ€ΠΎΠ²Π½Π΅Π²ΡƒΡŽ Π°Ρ€Ρ…ΠΈΡ‚Π΅ΠΊΡ‚ΡƒΡ€Ρƒ. Π‘ Π΄Ρ€ΡƒΠ³ΠΎΠΉ стороны, Ρ€Π°ΡΡˆΠΈΡ€Π΅Π½Π½Π°Ρ Java ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ экзСмпляры Π΄Π²ΡƒΡ…ΡƒΡ€ΠΎΠ²Π½Π΅Π²ΠΎΠΉ Π°Ρ€Ρ…ΠΈΡ‚Π΅ΠΊΡ‚ΡƒΡ€Ρ‹, Ρ‚Π°ΠΊΠΎΠΉ ΠΊΠ°ΠΊ ΠΊΠ»ΠΈΠ΅Π½Ρ‚-сСрвСрная Π°Ρ€Ρ…ΠΈΡ‚Π΅ΠΊΡ‚ΡƒΡ€Π° .

    Π’ ΠΎΠ΄Π½ΠΎΡƒΡ€ΠΎΠ²Π½Π΅Π²ΠΎΠΉ Π°Ρ€Ρ…ΠΈΡ‚Π΅ΠΊΡ‚ΡƒΡ€Π΅ Π΄Π°Π½Π½Ρ‹Π΅ хранятся Π² локальной систСмС ΠΈΠ»ΠΈ Π½Π° ΠΎΠ±Ρ‰Π΅ΠΌ дискС. Π’ Π½Π΅ΠΌ Π΅ΡΡ‚ΡŒ всС ΡƒΡ€ΠΎΠ²Π½ΠΈ, Ρ‚Π°ΠΊΠΈΠ΅ ΠΊΠ°ΠΊ бизнСс, доступ ΠΊ Π΄Π°Π½Π½Ρ‹ΠΌ ΠΈ прСзСнтация.

    АрхитСктура, Π² ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΉ ΡƒΡ€ΠΎΠ²Π΅Π½ΡŒ прСдставлСния ΠΈΠ»ΠΈ ΡƒΡ€ΠΎΠ²Π΅Π½ΡŒ интСрфСйса выполняСтся Π½Π° ΠΊΠ»ΠΈΠ΅Π½Ρ‚Π΅, Π° ΡƒΡ€ΠΎΠ²Π΅Π½ΡŒ Π΄Π°Π½Π½Ρ‹Ρ… ΠΈΠ»ΠΈ структура Π΄Π°Π½Π½Ρ‹Ρ… хранится Π½Π° сСрвСрС, называСмая Π΄Π²ΡƒΡ…ΡƒΡ€ΠΎΠ²Π½Π΅Π²ΠΎΠΉ Π°Ρ€Ρ…ΠΈΡ‚Π΅ΠΊΡ‚ΡƒΡ€ΠΎΠΉ.

    4. ΠŸΠ°ΠΊΠ΅Ρ‚Ρ‹ Java

    ВсС основныС ΠΏΠ°ΠΊΠ΅Ρ‚Ρ‹ Java ΠΈΠΌΠ΅ΡŽΡ‚ соглашСниС ΠΎΠ± ΠΈΠΌΠ΅Π½Π°Ρ… java.lang.somepackage. Напротив, ΠΏΠ°ΠΊΠ΅Ρ‚Ρ‹ для ΠΏΡ€ΠΎΠ΄Π²ΠΈΠ½ΡƒΡ‚ΠΎΠΉ Java слСдуСт Π·Π° javax.servlet.somepackage.

    5. Π—Π½Π°Π½ΠΈΠ΅

    ΠžΠ±Ρ‹Ρ‡Π½ΠΎ сущСствуСт Ρ‚Ρ€ΠΈ уровня Π·Π½Π°Π½ΠΈΠΉ Java, Π° ΠΈΠΌΠ΅Π½Π½ΠΎ Java, базовая Java ΠΈ продвинутая Java. Π‘Π»Π΅Π΄ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎ, ΠΈ базовая Java, ΠΈ продвинутая Java Ρ€Π°Π·Π»ΠΈΡ‡Π°ΡŽΡ‚ΡΡ с Ρ‚ΠΎΡ‡ΠΊΠΈ зрСния Π·Π½Π°Π½ΠΈΠΉ.

    • Java Π‘Π°Π·ΠΎΠ²Ρ‹ΠΉ ΡƒΡ€ΠΎΠ²Π΅Π½ΡŒ.Π—Π΄Π΅ΡΡŒ ΠΌΠΎΠΆΠ½ΠΎ ΡƒΠ·Π½Π°Ρ‚ΡŒ, , ΠΊΠ°ΠΊ ΠΏΠΈΡΠ°Ρ‚ΡŒ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡƒ Hello World Π½Π° Java ΠΈ ΡΠΎΠ·Π΄Π°Π²Π°Ρ‚ΡŒ Π±Π°Π·ΠΎΠ²Ρ‹Π΅ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ Π½Π° Java.
    • Core Java Π­Ρ‚ΠΎ ΡƒΡ€ΠΎΠ²Π΅Π½ΡŒ владСния Java, Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΡ‹ΠΉ ΠΊΠ°ΠΊ ΠΌΠΈΠ½ΠΈΠΌΡƒΠΌ для получСния Ρ€Π°Π±ΠΎΡ‚Ρ‹. На этом ΡƒΡ€ΠΎΠ²Π½Π΅ Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ ΠΈΠΌΠ΅Ρ‚ΡŒ ΠΎΠΏΡ‹Ρ‚ Π² коллСкциях Java , ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠ΅ ΠΈΡΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠΉ Java, многопоточности Java, OOPS , ΠΏΠΎΠ»ΠΈΠΌΠΎΡ€Ρ„ΠΈΠ·ΠΌΠ΅ ΠΈ Ρ‚. Π”.
    • Advanced Java Π’ Π΄ΠΎΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅ ΠΊ знанию ядра Java, Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ ΠΈΠΌΠ΅Ρ‚ΡŒ Ρ…ΠΎΡ€ΠΎΡˆΠ΅Π΅ прСдставлСниС ΠΎ Ρ€Π°Π·Π»ΠΈΡ‡Π½Ρ‹Ρ… связанных ΠΏΠ°ΠΊΠ΅Ρ‚Π°Ρ… ΠΈ ​​продвинутых концСпциях, Ρ‚Π°ΠΊΠΈΡ… ΠΊΠ°ΠΊ синтаксичСский Π°Π½Π°Π»ΠΈΠ· JSON, созданиС слуТбы REST ΠΈ ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠ° XML.

    Для Ρ‚Π΅Ρ…, ΠΊΡ‚ΠΎ Ρ…ΠΎΡ‡Π΅Ρ‚ Π²Ρ‹ΠΉΡ‚ΠΈ Π·Π° Ρ€Π°ΠΌΠΊΠΈ ΠΏΡ€ΠΎΠ΄Π²ΠΈΠ½ΡƒΡ‚ΠΎΠΉ Java, Π΅ΡΡ‚ΡŒ ΡƒΡ€ΠΎΠ²Π΅Π½ΡŒ Π°Ρ€Ρ…ΠΈΡ‚Π΅ΠΊΡ‚ΠΎΡ€Π°.ΠžΠ±ΡƒΡ‡Π°ΡŽΡ‰ΠΈΠ΅ Ρ„Ρ€Π΅ΠΉΠΌΠ²ΠΎΡ€ΠΊΠΈ, Ρ‚Π°ΠΊΠΈΠ΅ ΠΊΠ°ΠΊ Hibernate, Java Design Patterns ΠΈ Spring , становятся ΠΎΠ±ΡΠ·Π°Ρ‚Π΅Π»ΡŒΠ½Ρ‹ΠΌΠΈ Π½Π° этом ΡƒΡ€ΠΎΠ²Π½Π΅.

    6. Выбранная ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΠ°

    Π’ Ρ‚ΠΎ врСмя ΠΊΠ°ΠΊ Java Standard Edition (Java SE) Π²Ρ…ΠΎΠ΄ΠΈΡ‚ Π² состав Π±Π°Π·ΠΎΠ²ΠΎΠΉ Java, Ρ€Π°ΡΡˆΠΈΡ€Π΅Π½Π½Π°Ρ Java Π²ΠΊΠ»ΡŽΡ‡Π°Π΅Ρ‚ Π² сСбя Java Enterprise Edition (Java EE).

    7. ΠžΡ…Π²Π°Ρ‡Π΅Π½Π½Ρ‹Π΅ Ρ‚Π΅ΠΌΡ‹

    Core Java ΠΎΡ…Π²Π°Ρ‚Ρ‹Π²Π°Π΅Ρ‚ Π±Π°Π·ΠΎΠ²Ρ‹Π΅ ΠΊΠΎΠ½Ρ†Π΅ΠΏΡ†ΠΈΠΈ ΠΈ Ρ‚Π΅ΠΌΡ‹, относящиСся ΠΊ языку программирования Java. Бюда входят Ρ‚ΠΈΠΏΡ‹ Π΄Π°Π½Π½Ρ‹Ρ…, , ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠ° ΠΈΡΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠΉ, , ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€Ρ‹ ΠΈ ΠΏΠΎΡ‚ΠΎΠΊΠΈ.

    Π‘ Π΄Ρ€ΡƒΠ³ΠΎΠΉ стороны, продвинутая Java Π²Π»Π΅Ρ‡Π΅Ρ‚ Π·Π° собой слоТныС Ρ‚Π΅ΠΌΡ‹ ΠΈ ΠΊΠΎΠ½Ρ†Π΅ΠΏΡ†ΠΈΠΈ, Ρ‚Ρ€Π΅Π±ΡƒΡŽΡ‰ΠΈΠ΅ Ρ‚Π΅Ρ…Π½ΠΎΠ»ΠΎΠ³ΠΈΠΉ, ΠΎΡ‚Π»ΠΈΡ‡Π½Ρ‹Ρ… ΠΎΡ‚ Java. НСкоторыми ΠΏΡ€ΠΈΠΌΠ΅Ρ‡Π°Ρ‚Π΅Π»ΡŒΠ½Ρ‹ΠΌΠΈ ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π°ΠΌΠΈ ΡΠ²Π»ΡΡŽΡ‚ΡΡ ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠ΅ ΠΊ Π±Π°Π·Π΅ Π΄Π°Π½Π½Ρ‹Ρ…, EJB, JSP, сСрвлСты ΠΈ Π²Π΅Π±-слуТбы.

    Π‘Π²ΠΎΠ΄ΠΊΠ°

    На этом сравнСниС Π±Π°Π·ΠΎΠ²ΠΎΠΉ Java ΠΈ Ρ€Π°ΡΡˆΠΈΡ€Π΅Π½Π½ΠΎΠΉ Java Π·Π°Π²Π΅Ρ€ΡˆΠ΅Π½ΠΎ. Π’ Ρ‚ΠΎ врСмя ΠΊΠ°ΠΊ ΠΏΠ΅Ρ€Π²Ρ‹ΠΉ являСтся Ρ„ΡƒΠ½Π΄Π°ΠΌΠ΅Π½Ρ‚Π°Π»ΡŒΠ½ΠΎΠΉ Ρ‡Π°ΡΡ‚ΡŒΡŽ языка программирования Java, Π²Ρ‚ΠΎΡ€ΠΎΠΉ — это ΠΏΠ΅Ρ€Π²Ρ‹ΠΉ плюс ΠΏΠ΅Ρ€Π΅Π΄ΠΎΠ²Ρ‹Π΅ ΠΊΠΎΠ½Ρ†Π΅ΠΏΡ†ΠΈΠΈ ΠΈ Π²Π΅Π±-ΠΏΠΎΠ΄Ρ…ΠΎΠ΄.

    НСльзя ΠΎΡ‚Ρ€ΠΈΡ†Π°Ρ‚ΡŒ Ρ‚ΠΎΡ‚ Ρ„Π°ΠΊΡ‚, Ρ‡Ρ‚ΠΎ провСсти Ρ‡Π΅Ρ‚ΠΊΠΎΠ΅ Ρ€Π°Π·Π»ΠΈΡ‡ΠΈΠ΅ ΠΌΠ΅ΠΆΠ΄Ρƒ Π±Π°Π·ΠΎΠ²ΠΎΠΉ Java ΠΈ ΠΏΡ€ΠΎΠ΄Π²ΠΈΠ½ΡƒΡ‚ΠΎΠΉ Java — нСпростая Π·Π°Π΄Π°Ρ‡Π°.Однако Π²Ρ‹ΡˆΠ΅ΡƒΠΏΠΎΠΌΡΠ½ΡƒΡ‚Ρ‹Π΅ ΠΌΠΎΠΌΠ΅Π½Ρ‚Ρ‹, бСзусловно, ΡƒΠ»ΡƒΡ‡ΡˆΠ°Ρ‚ вашС ΠΏΠΎΠ½ΠΈΠΌΠ°Π½ΠΈΠ΅ Π΄Π²ΡƒΡ… Ρ‚ΠΈΠΏΠΎΠ² Java, ΠΏΠΎ ΠΊΡ€Π°ΠΉΠ½Π΅ΠΉ ΠΌΠ΅Ρ€Π΅, Π½Π΅ΠΌΠ½ΠΎΠ³ΠΎ.

    Π˜Π·ΡƒΡ‡ΠΈΡ‚Π΅ Java Π»ΡƒΡ‡ΡˆΠ΅ с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Ρ… ΠΈΠ· Π»ΡƒΡ‡ΡˆΠΈΡ… руководств, Ρ€Π΅ΠΊΠΎΠΌΠ΅Π½Π΄ΠΎΠ²Π°Π½Π½Ρ‹Ρ… DataFlair. ΠšΡ€ΠΎΠΌΠ΅ Ρ‚ΠΎΠ³ΠΎ, Π½Π΅ Π·Π°Π±ΡƒΠ΄ΡŒΡ‚Π΅ ΠΎΡΡ‚Π°Π²ΠΈΡ‚ΡŒ свой ΠΎΡ‚Π·Ρ‹Π² ΠΎ Π±Π°Π·ΠΎΠ²ΠΎΠΉ Java ΠΈ Ρ€Π°ΡΡˆΠΈΡ€Π΅Π½Π½ΠΎΠΉ Java Π² ΡΡ‚Π°Ρ‚ΡŒΠ΅ Π² ΡΠΏΠ΅Ρ†ΠΈΠ°Π»ΡŒΠ½ΠΎΠΌ ΠΎΠΊΠ½Π΅ ΠΊΠΎΠΌΠΌΠ΅Π½Ρ‚Π°Ρ€ΠΈΠ΅Π² Π½ΠΈΠΆΠ΅. ΠœΡ‹ Π±Ρ‹ Ρ…ΠΎΡ‚Π΅Π»ΠΈ ΡΠ΄Π΅Π»Π°Ρ‚ΡŒ Π΅Π³ΠΎ Π»ΡƒΡ‡ΡˆΠ΅! Π’Ρ‹ Π΄ΠΎΠ»ΠΆΠ½Ρ‹ ΡΡ‹Π³Ρ€Π°Ρ‚ΡŒ Π² послСднюю Π²ΠΈΠΊΡ‚ΠΎΡ€ΠΈΠ½Ρƒ ΠΏΠΎ Java , Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΈΡ‚ΡŒ своС ΠΏΠΎΠ½ΠΈΠΌΠ°Π½ΠΈΠ΅ Java .

    ΠœΡ‹ ΠΎΡ‡Π΅Π½ΡŒ ΠΌΠ½ΠΎΠ³ΠΎ Ρ€Π°Π±ΠΎΡ‚Π°Π΅ΠΌ, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΏΡ€Π΅Π΄ΠΎΡΡ‚Π°Π²ΠΈΡ‚ΡŒ Π²Π°ΠΌ качСствСнный ΠΌΠ°Ρ‚Π΅Ρ€ΠΈΠ°Π»
    НС ΠΌΠΎΠ³Π»ΠΈ Π±Ρ‹ Π²Ρ‹ ΡƒΠ΄Π΅Π»ΠΈΡ‚ΡŒ 15 сСкунд ΠΈ ΠΏΠΎΠ΄Π΅Π»ΠΈΡ‚ΡŒΡΡ своим счастливым ΠΎΠΏΡ‹Ρ‚ΠΎΠΌ Π½Π° Google | Facebook

    Новичок Π² Π¦Π΅Π½Ρ‚Ρ€Π΅ программирования Π½Π° Java

    Java Embedded ΠΈ Java ME

    ΠžΡ‚ ΠΏΡ€ΠΈΠ½Ρ‚Π΅Ρ€ΠΎΠ² ΠΈ банковских Π°Π²Ρ‚ΠΎΠΌΠ°Ρ‚ΠΎΠ² Π΄ΠΎ устройств чтСния элСктронных ΠΊΠ½ΠΈΠ³ ΠΈ Π°Π²Ρ‚ΠΎΠΌΠΎΠ±ΠΈΠ»Π΅ΠΉ — тСхнология Java ΠΏΡ€Π΅ΠΎΠ±Π»Π°Π΄Π°Π΅Ρ‚ Π²ΠΎ встроСнных систСмах.Он находится Π² 5 ΠΌΠΈΠ»Π»ΠΈΠ°Ρ€Π΄Π°Ρ… SIM-ΠΊΠ°Ρ€Ρ‚ ΠΈ смарт-ΠΊΠ°Ρ€Ρ‚, Π² 3 ΠΌΠΈΠ»Π»ΠΈΠ°Ρ€Π΄Π°Ρ… ΠΌΠΎΠ±ΠΈΠ»ΡŒΠ½Ρ‹Ρ… Ρ‚Π΅Π»Π΅Ρ„ΠΎΠ½ΠΎΠ², 80 ΠΌΠΈΠ»Π»ΠΈΠΎΠ½Π°Ρ… Ρ‚Π΅Π»Π΅Π²ΠΈΠ·ΠΈΠΎΠ½Π½Ρ‹Ρ… устройств, Π²ΠΊΠ»ΡŽΡ‡Π°Ρ ΠΊΠ°ΠΆΠ΄Ρ‹ΠΉ поставлСнный ΠΏΡ€ΠΎΠΈΠ³Ρ€Ρ‹Π²Π°Ρ‚Π΅Π»ΡŒ Blu-ray, ΠΈ Π²ΠΎ ΠΌΠ½ΠΎΠ³ΠΈΡ… Π΄Ρ€ΡƒΠ³ΠΈΡ… встроСнных Ρ€Π΅ΡˆΠ΅Π½ΠΈΡΡ…. Для встраиваСмых систСм Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Π°Π½Ρ‹ Ρ‚Ρ€ΠΈ Ρ‚Π΅Ρ…Π½ΠΎΠ»ΠΎΠ³ΠΈΠΈ: Java SE Embedded для устройств с 32 ΠœΠ‘; Java ME Embedded для устройств с 8 ΠœΠ‘ ΠΈ Java Embedded Suite для устройств, ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π°ΡŽΡ‰ΠΈΡ…ΡΡ ΠΊ Π±Π°Π·Π΅ Π΄Π°Π½Π½Ρ‹Ρ…. Java ME — это срСда для ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ, Ρ€Π°Π±ΠΎΡ‚Π°ΡŽΡ‰ΠΈΡ… Π² ΠΌΠΎΠ±ΠΈΠ»ΡŒΠ½Ρ‹Ρ… ΠΈ встроСнных систСмах.

    Java SE Embedded ΠΈ нСбольшиС устройства

    Π’ выпускС Java Magazine Internet of Things (IoT) Π₯Π΅Π½Ρ€ΠΈΠΊ Π¨Ρ‚Π°Π»ΡŒ обсуТдаСт Π˜Π½Ρ‚Π΅Ρ€Π½Π΅Ρ‚ Π²Π΅Ρ‰Π΅ΠΉ для Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠΎΠ² Java.Π£Π·Π½Π°ΠΉΡ‚Π΅, ΠΊΠ°ΠΊ ΡΠΎΠ·Π΄Π°Π²Π°Ρ‚ΡŒ прилоТСния для ΡƒΠΌΠ½ΠΎΠ³ΠΎ Π΄ΠΎΠΌΠ° с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π° Eclipse SmartHome, Π³ΠΈΠ±ΠΊΠΎΠΉ ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΡ‹ с ΠΎΡ‚ΠΊΡ€Ρ‹Ρ‚Ρ‹ΠΌ исходным ΠΊΠΎΠ΄ΠΎΠΌ для создания Ρ€Π΅ΡˆΠ΅Π½ΠΈΠΉ для массового Ρ€Ρ‹Π½ΠΊΠ°. Π’ своСм Π±Π»ΠΎΠ³Π΅ Java-Π°Ρ€Ρ…ΠΈΡ‚Π΅ΠΊΡ‚ΠΎΡ€ Π₯ΠΈΠ½ΠΊΠΌΠΎΠ½Π΄ Π’ΠΎΠ½Π³ описываСт Ρ‚Π΅Ρ…Π½ΠΎΠ»ΠΎΠ³ΠΈΠΈ Π˜Π½Ρ‚Π΅Ρ€Π½Π΅Ρ‚Π° Π²Π΅Ρ‰Π΅ΠΉ ΠΈ способы создания ΠΈΠ½Π½ΠΎΠ²Π°Ρ†ΠΈΠΎΠ½Π½Ρ‹Ρ… ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ΠΎΠ² Java ΠΈ Π˜Π½Ρ‚Π΅Ρ€Π½Π΅Ρ‚Π° Π²Π΅Ρ‰Π΅ΠΉ.

    Наборы Lego Mindstorms EV3 — ΠΎΡ‚Π»ΠΈΡ‡Π½Ρ‹ΠΉ способ Π½Π°Ρ‡Π°Ρ‚ΡŒ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ Π΄Π°Ρ‚Ρ‡ΠΈΠΊΠΈ с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ Java. Π’ΠΈΠ΄Π΅ΠΎ, руководство ΠΈ Π·Π°Π³Ρ€ΡƒΠ·ΠΊΠΈ доступны здСсь. Π”Ρ€ΡƒΠ³ΠΎΠΉ способ Π½Π°Ρ‡Π°Ρ‚ΡŒ — с Raspberry Pi, ΠΎΠ΄ΠΈΠ½Π°Ρ€Π½ΠΎΠΉ ΠΊΠΎΠΌΠΏΡŒΡŽΡ‚Π΅Ρ€Π½ΠΎΠΉ ΠΏΠ»Π°Ρ‚Ρ‹. Π’ ΡΡ‚Π°Ρ‚ΡŒΠ΅ Java Evangelist АндТСла КайсСдо ΠΎΠ±ΡŠΡΡΠ½ΡΠ΅Ρ‚, Β«ΠΊΠ°ΠΊ ΡΡ‚Π°Ρ‚ΡŒ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠΎΠΌ встраиваСмых систСм Π·Π° считанныС ΠΌΠΈΠ½ΡƒΡ‚Ρ‹.»Π’ сСрии Π²ΠΈΠ΄Π΅ΠΎ ΠΎΡ‚ ΡΡ‚Π°Ρ€ΡˆΠ΅Π³ΠΎ ΠΈΠ½ΠΆΠ΅Π½Π΅Ρ€Π° Винисиуса Π‘Π΅Π½Π³Π΅Ρ€Π° Π²Ρ‹ ΠΏΠΎΠ·Π½Π°ΠΊΠΎΠΌΠΈΡ‚Π΅ΡΡŒ со всСми тонкостями Raspberry Pi ΠΈ ΡƒΠ·Π½Π°Π΅Ρ‚Π΅, ΠΊΠ°ΠΊ ΡΠΎΠ·Π΄Π°Ρ‚ΡŒ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚.

    Π Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠΈ

    Java ΠΏΠΎΠ΄Ρ€ΠΎΠ±Π½ΠΎ рассказали JavaOne ΠΎ создании ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ Π½Π΅Π±ΠΎΠ»ΡŒΡˆΠΈΡ… устройств с ΠΎΡ‚ΠΊΡ€Ρ‹Ρ‚Ρ‹ΠΌ исходным ΠΊΠΎΠ΄ΠΎΠΌ, Ρ‚Π°ΠΊΠΈΡ… ΠΊΠ°ΠΊ Arduino, Nao Robot, Raspberry Pi ΠΈ Π΄Ρ€ΡƒΠ³ΠΈΡ…. Π’ΠΎΡ‚ список Π΄ΠΎΠΊΠ»Π°Π΄ΠΎΠ², ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Π²Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ бСсплатно ΠΏΠΎΡΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ Π½Π° тСхничСских сСссиях JavaOne:

    • Как Ρ€Π°Π·Π³ΠΎΠ²Π°Ρ€ΠΈΠ²Π°Ρ‚ΡŒ со своим Π΄ΠΎΠΌΠΎΠΌ [CON11218]
    • ДТСймс Гослинг, Π ΠΎΠ±ΠΎΡ‚Ρ‹, Raspberry Pi ΠΈ нСбольшиС устройства [UGF8907]
    • Java Π³ΠΎΠ²ΠΎΡ€ΠΈΡ‚ Π½Π° языкС Π˜Π½Ρ‚Π΅Ρ€Π½Π΅Ρ‚Π° Π²Π΅Ρ‰Π΅ΠΉ [CON11348]
    • ΠœΠ°Π³ΠΈΡ‡Π΅ΡΠΊΠΎΠ΅ ΡˆΠΎΡƒ Π˜Π½Ρ‚Π΅Ρ€Π½Π΅Ρ‚Π° Π²Π΅Ρ‰Π΅ΠΉ [CON4636]
    • Π£ΠΌΠ½Ρ‹Π΅ Π΄ΠΎΠΌΠ° для масс [CON3213]
    • БоСдиняя ΠΌΠΈΡ€Ρ‹ ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΎΠ½Π½Ρ‹Ρ… Ρ‚Π΅Ρ…Π½ΠΎΠ»ΠΎΠ³ΠΈΠΉ ΠΈ Ρ€ΠΎΠ±ΠΎΡ‚ΠΎΡ‚Π΅Ρ…Π½ΠΈΠΊΠΈ [CON3922]
    • ВымысСл ΠΈΠ»ΠΈ Ρ€Π΅Π°Π»ΡŒΠ½ΠΎΡΡ‚ΡŒ? Π£ΠΏΡ€Π°Π²Π»Π΅Π½ΠΈΠ΅ ТСстами ΠΈ новая Π²ΠΎΠ»Π½Π° устройств с Ρ‚Ρ€Π΅Ρ…ΠΌΠ΅Ρ€Π½ΠΎΠΉ ΠΊΠ°ΠΌΠ΅Ρ€ΠΎΠΉ [CON2526]
    • Π Π°Π·Π²Π»Π΅Ρ‡Π΅Π½ΠΈΠ΅ с Ρ€ΠΎΠ±ΠΎΡ‚ΠΎΠΌ NAO ΠΈ Java [HOL12424]
    • ΠŸΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ Ρ€Π΅Π°Π»ΡŒΠ½ΠΎΠ³ΠΎ ΠΌΠΈΡ€Π° [CON6378]
    • Π£ вас Π΅ΡΡ‚ΡŒ Raspberry Pi? Π‘ΠΎΠ·Π΄Π°ΠΉΡ‚Π΅ свой собствСнный ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π΅Π½Π½Ρ‹ΠΉ ΠΈΠ½Ρ‚Π΅Π»Π»Π΅ΠΊΡ‚ΡƒΠ°Π»ΡŒΠ½Ρ‹ΠΉ Π΄Π°Ρ‚Ρ‡ΠΈΠΊ с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ Java ME Embedded [HOL3982]
    ΠŸΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ Java ME Π½Π° ΠΌΠΎΠ±ΠΈΠ»ΡŒΠ½Ρ‹Ρ… устройствах

    НачнитС ΡΠΎΠ·Π΄Π°Π²Π°Ρ‚ΡŒ ΠΈ Π·Π°ΠΏΡƒΡΠΊΠ°Ρ‚ΡŒ ΠΏΠ΅Ρ€Π²ΠΎΠ΅ ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ с ΠΎΠ±ΡƒΡ‡Π°ΡŽΡ‰ΠΈΠΌΠΈ рСсурсами Java ME.Для Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ Java ME Embedded с Raspberry Pi слСдуйтС сСрии руководств Oracle Learning Library. ΠŸΡ€ΠΎΠΉΠ΄ΠΈΡ‚Π΅ бСсплатно ΠΏΠ΅Ρ€Π²Ρ‹Π΅ Π΄Π²Π° ΡƒΡ€ΠΎΠΊΠ° Massive Open Online Course (MOOC) ΠΏΠΎ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠ΅ Java ME Π½Π° Raspberry Pi. Π’ ΡΡ‚Π°Ρ‚ΡŒΠ΅ Π₯осС ΠšΡ€ΡƒΠ· описываСт, ΠΊΠ°ΠΊ ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡ΠΈΡ‚ΡŒ Π΄Π°Ρ‚Ρ‡ΠΈΠΊΠΈ ΠΊ Raspberry Pi ΠΈ ΡƒΠΏΡ€Π°Π²Π»ΡΡ‚ΡŒ ΠΈΠΌΠΈ с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ Java. Агус ΠšΡƒΡ€Π½ΠΈΠ°Π²Π°Π½ написал ΠΊΠ½ΠΈΠ³Ρƒ ΠΏΠΎΠ΄ Π½Π°Π·Π²Π°Π½ΠΈΠ΅ΠΌ «Начало Ρ€Π°Π±ΠΎΡ‚Ρ‹ с Java ME Embedded 8 ΠΈ Raspberry PiΒ».

    Бинтаксис Java, класс Java ΠΈ основныС ΠΊΠΎΠ½Ρ†Π΅ΠΏΡ†ΠΈΠΈ Java

    Π­Ρ‚ΠΎ руководство прСдставляСт собой Π²Π²Π΅Π΄Π΅Π½ΠΈΠ΅ Π² основы языка программирования Java.ΠœΡ‹ прСдставим Ρ‚Π°ΠΊΠΈΠ΅ Ρ‚Π΅ΠΌΡ‹, ΠΊΠ°ΠΊ класс Java, OOPS, синтаксис ΠΈ основныС ΠΊΠΎΠ½Ρ†Π΅ΠΏΡ†ΠΈΠΈ Java:

    Π’ Π½Π°ΡˆΠΈΡ… ΠΏΡ€Π΅Π΄Ρ‹Π΄ΡƒΡ‰ΠΈΡ… руководствах ΠΌΡ‹ обсуТдали характСристики ΠΈ возмоТности языка Java. ΠœΡ‹ Ρ‚Π°ΠΊΠΆΠ΅ ΡƒΠ·Π½Π°Π»ΠΈ ΠΎ прилоТСниях Java. ΠœΡ‹ познакомились с Π·Π°Π³Ρ€ΡƒΠ·ΠΊΠΎΠΉ, установкой ΠΈ Ρ€Π°Π·Π»ΠΈΡ‡Π½Ρ‹ΠΌΠΈ Java IDE, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΌΡ‹ ΠΌΠΎΠΆΠ΅ΠΌ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ для Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌ ΠΈ ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ Π½Π° Java.

    => ΠžΡ‚ΠΌΠ΅Ρ‚ΡŒΡ‚Π΅ Π’Π‘Π• ΡƒΡ‡Π΅Π±Π½Ρ‹Π΅ пособия ΠΏΠΎ Java здСсь.

    ΠžΡΠ½ΠΎΠ²Ρ‹ программирования Π½Π° Java

    Π’ послСднСм руководствС ΠΌΡ‹ обсудили Π½Π°ΡˆΡƒ ΠΏΠ΅Ρ€Π²ΡƒΡŽ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡƒ Π½Π° Java Β«Hello, WorldΒ».На этом ΠΌΡ‹ ΠΈΠ·ΡƒΡ‡ΠΈΠ»ΠΈ Π±Π°Π·ΠΎΠ²Ρ‹ΠΉ синтаксис, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ Π½Π°ΠΌ Π½ΡƒΠΆΠ΅Π½, Ρ‡Ρ‚ΠΎΠ±Ρ‹ просто ΠΎΡ‚ΠΎΠ±Ρ€Π°Π·ΠΈΡ‚ΡŒ сообщСниС Β«Hello, WorldΒ». Но просто Π½Π°ΡƒΡ‡ΠΈΡ‚ΡŒΡΡ ΠΎΡ‚ΠΎΠ±Ρ€Π°ΠΆΠ°Ρ‚ΡŒ сообщСниС нСдостаточно.

    Если Π²Ρ‹ Ρ…ΠΎΡ‚ΠΈΡ‚Π΅ ΠΎΠ²Π»Π°Π΄Π΅Ρ‚ΡŒ языком, Π²Π°ΠΌ Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ сначала ΠΏΠΎΠ½ΡΡ‚ΡŒ основной синтаксис ΠΈ сСмантичСскиС ΠΏΡ€Π°Π²ΠΈΠ»Π° языка, Π° Ρ‚Π°ΠΊΠΆΠ΅ Ρ€Π°Π·Π»ΠΈΡ‡Π½Ρ‹Π΅ конструкции, матСматичСскиС ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΈ, Π° Ρ‚Π°ΠΊΠΆΠ΅ ΠΏΠΎΠ²Ρ‚ΠΎΡ€ΡΡŽΡ‰ΠΈΠ΅ΡΡ конструкции программирования.

    Π’Π°ΠΌ Ρ‚Π°ΠΊΠΆΠ΅ Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ Π·Π½Π°Ρ‚ΡŒ ΠΎ Ρ€Π°Π·Π»ΠΈΡ‡Π½Ρ‹Ρ… функциях ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π½ΠΎ-ΠΎΡ€ΠΈΠ΅Π½Ρ‚ΠΈΡ€ΠΎΠ²Π°Π½Π½ΠΎΠ³ΠΎ программирования Java, структурах Π΄Π°Π½Π½Ρ‹Ρ… ΠΈ Ρ‚ΠΈΠΏΠ°Ρ… Π΄Π°Π½Π½Ρ‹Ρ…, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ Java.Если Π²Ρ‹ Π΄ΡƒΠΌΠ°Π΅Ρ‚Π΅, Ρ‡Ρ‚ΠΎ освоили всС это срСди Ρ€Π°Π·Π»ΠΈΡ‡Π½Ρ‹Ρ… Π΄Ρ€ΡƒΠ³ΠΈΡ… Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΉ, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΏΡ€Π΅Π΄Π»Π°Π³Π°Π΅Ρ‚ Java, Π²Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ Π½Π°Π·Ρ‹Π²Π°Ρ‚ΡŒ сСбя Π·Π½Π°Ρ‚ΠΎΠΊΠΎΠΌ языка Java.

    Π’ этом руководствС ΠΌΡ‹ ΠΏΠΎΠ·Π½Π°ΠΊΠΎΠΌΠΈΠΌ вас с основами всСх Ρ‚Π΅ΠΌ программирования, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΌΡ‹ собираСмся ΠΎΡ…Π²Π°Ρ‚ΠΈΡ‚ΡŒ Π²ΠΎ всСй этой сСрии руководств ΠΏΠΎ Java.

    Π”Π°Π²Π°ΠΉΡ‚Π΅ Π½Π°Ρ‡Π½Π΅ΠΌ с синтаксиса Java !!

    Бинтаксис Java

    ΠšΠ°ΠΆΠ΄Ρ‹ΠΉ язык программирования ΠΈΠΌΠ΅Π΅Ρ‚ ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½Π½Ρ‹Π΅ ΠΏΡ€Π°Π²ΠΈΠ»Π° ΠΈ полоТСния, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΌ программист Π΄ΠΎΠ»ΠΆΠ΅Π½ ΡΠ»Π΅Π΄ΠΎΠ²Π°Ρ‚ΡŒ ΠΏΡ€ΠΈ написании ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌ.ΠšΠΎΠΌΠΏΠΈΠ»ΡΡ‚ΠΎΡ€ ΡΠΎΠΎΡ‚Π²Π΅Ρ‚ΡΡ‚Π²ΡƒΡŽΡ‰Π΅Π³ΠΎ языка провСряСт Π²Π°ΡˆΡƒ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡƒ Π½Π° синтаксичСскиС ΠΏΡ€Π°Π²ΠΈΠ»Π° ΠΈ ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΊΡƒ. Π’ Java Ρ‚Π°ΠΊΠΆΠ΅ Π΅ΡΡ‚ΡŒ мноТСство конструкций ΠΈ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚ΠΎΠ², ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΡƒΠΏΡ€ΠΎΡ‰Π°ΡŽΡ‚ программистам написаниС качСствСнных ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌ.

    ΠŸΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ° Β«Hello, WorldΒ» ΠΈΠ· ΠΏΡ€Π΅Π΄Ρ‹Π΄ΡƒΡ‰Π΅Π³ΠΎ руководства Π΄Π°Π»Π° Π²Π°ΠΌ прСдставлСниС ΠΎΠ± основной структурС ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ Java Π² дСталях. Π’Π΅ΠΏΠ΅Ρ€ΡŒ ΠΏΠ΅Ρ€Π΅ΠΉΠ΄Π΅ΠΌ ΠΊ Π΄Ρ€ΡƒΠ³ΠΈΠΌ конструкциям / ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚Π°ΠΌ, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Π±ΡƒΠ΄Π΅Ρ‚ Π²ΠΊΠ»ΡŽΡ‡Π°Ρ‚ΡŒ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ° Java.

    БоглашСния Java

    НиТС ΠΏΡ€ΠΈΠ²Π΅Π΄Π΅Π½Ρ‹ Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ соглашСния, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΌ Π΄ΠΎΠ»ΠΆΠ΅Π½ ΡΠ»Π΅Π΄ΠΎΠ²Π°Ρ‚ΡŒ Java-программист ΠΏΡ€ΠΈ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠΈ Π½Π° Java.

    (i) ИмСна классов: Π’ Java пСрвая Π±ΡƒΠΊΠ²Π° ΠΈΠΌΠ΅Π½ΠΈ класса для ΠΊΠ°ΠΆΠ΄ΠΎΠ³ΠΎ класса Π΄ΠΎΠ»ΠΆΠ½Π° Π±Ρ‹Ρ‚ΡŒ Π² Π²Π΅Ρ€Ρ…Π½Π΅ΠΌ рСгистрС. НапримСр, , классовая Π·Π°Ρ€ΠΏΠ»Π°Ρ‚Π° Π² соотвСтствии с соглашСниСм Π±ΡƒΠ΄Π΅Ρ‚ Π½Π°Π·Ρ‹Π²Π°Ρ‚ΡŒΡΡ Β«Π—Π°Ρ€ΠΏΠ»Π°Ρ‚Π°Β».

    Если Ρƒ вас Π΅ΡΡ‚ΡŒ имя класса, Π² ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΌ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ Π±ΠΎΠ»Π΅Π΅ ΠΎΠ΄Π½ΠΎΠ³ΠΎ слова, каТдая Π±ΡƒΠΊΠ²Π° ΠΏΠ΅Ρ€Π²ΠΎΠ³ΠΎ слова Π±ΡƒΠ΄Π΅Ρ‚ Π·Π°Π³Π»Π°Π²Π½ΠΎΠΉ.

    НапримСр, класс MyHelloWorld.

    (ii) Имя ΠΌΠ΅Ρ‚ΠΎΠ΄Π°: ВсС ΠΈΠΌΠ΅Π½Π° ΠΌΠ΅Ρ‚ΠΎΠ΄ΠΎΠ² Π² Java Π½Π°Ρ‡ΠΈΠ½Π°ΡŽΡ‚ΡΡ со строчной Π±ΡƒΠΊΠ²Ρ‹.Если имя ΠΌΠ΅Ρ‚ΠΎΠ΄Π° состоит ΠΈΠ· Π±ΠΎΠ»Π΅Π΅ Ρ‡Π΅ΠΌ ΠΎΠ΄Π½ΠΎΠ³ΠΎ слова, Ρ‚ΠΎ пСрвая Π±ΡƒΠΊΠ²Π° ΠΊΠ°ΠΆΠ΄ΠΎΠ³ΠΎ ΠΈΠ· этих Π²Π½ΡƒΡ‚Ρ€Π΅Π½Π½ΠΈΡ… слов Π±ΡƒΠ΄Π΅Ρ‚ Π² Π²Π΅Ρ€Ρ…Π½Π΅ΠΌ рСгистрС.

    ΠŸΡ€ΠΈΠΌΠ΅Ρ€: display (), myMethod () => это допустимыС ΠΈΠΌΠ΅Π½Π° ΠΌΠ΅Ρ‚ΠΎΠ΄ΠΎΠ² Π² Java.

    (iii) Имя Ρ„Π°ΠΉΠ»Π° ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹: Имя Ρ„Π°ΠΉΠ»Π° ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ Π½Π° Java Π΄ΠΎΠ»ΠΆΠ½ΠΎ ΡΠΎΠ²ΠΏΠ°Π΄Π°Ρ‚ΡŒ с ΠΈΠΌΠ΅Π½Π΅ΠΌ ΠΎΡ‚ΠΊΡ€Ρ‹Ρ‚ΠΎΠ³ΠΎ класса с Ρ€Π°ΡΡˆΠΈΡ€Π΅Π½ΠΈΠ΅ΠΌ Β«.javaΒ».

    НапримСр, , Ссли имя ΠΎΡ‚ΠΊΡ€Ρ‹Ρ‚ΠΎΠ³ΠΎ класса — Β«MyFirstClassΒ», Π²Ρ‹ сохраняСтС этот ΠΊΠΎΠ΄ Π² Ρ„Π°ΠΉΠ»Π΅ с ΠΈΠΌΠ΅Π½Π΅ΠΌ Β«MyFirstClass.Π―Π²Π°».

    ΠžΠ±Ρ€Π°Ρ‚ΠΈΡ‚Π΅ Π²Π½ΠΈΠΌΠ°Π½ΠΈΠ΅, Ρ‡Ρ‚ΠΎ исходный ΠΊΠΎΠ΄ java ΠΌΠΎΠΆΠ΅Ρ‚ Π½Π΅ ΠΈΠΌΠ΅Ρ‚ΡŒ ΠΎΡ‚ΠΊΡ€Ρ‹Ρ‚ΠΎΠ³ΠΎ класса. Π’ этом случаС Π²Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ ΡƒΠΊΠ°Π·Π°Ρ‚ΡŒ своС имя для исходного Ρ„Π°ΠΉΠ»Π°.

    (iv) РСгистр: Π―Π·Ρ‹ΠΊ программирования Java чувствитСлСн ΠΊ рСгистру. Π­Ρ‚ΠΎ ΠΎΠ·Π½Π°Ρ‡Π°Π΅Ρ‚, Ρ‡Ρ‚ΠΎ Β«ΠΏΡ€ΠΈΠ²Π΅Ρ‚Β» ΠΈ Β«ΠΏΡ€ΠΈΠ²Π΅Ρ‚Β» — это Π΄Π²Π° Ρ€Π°Π·Π½Ρ‹Ρ… ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€Π°.

    (v) Основной ΠΌΠ΅Ρ‚ΠΎΠ΄: ΠœΠ΅Ρ‚ΠΎΠ΄ Β«mainΒ» являСтся ΠΎΡ‚ΠΏΡ€Π°Π²Π½ΠΎΠΉ Ρ‚ΠΎΡ‡ΠΊΠΎΠΉ выполнСния ΠΈ являСтся ΠΎΠ±ΡΠ·Π°Ρ‚Π΅Π»ΡŒΠ½Ρ‹ΠΌ ΠΌΠ΅Ρ‚ΠΎΠ΄ΠΎΠΌ Π²ΠΎ всСх ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ°Ρ… Java.

    Π˜Π΄Π΅Π½Ρ‚ΠΈΡ„ΠΈΠΊΠ°Ρ‚ΠΎΡ€Ρ‹ Java

    Π˜Π΄Π΅Π½Ρ‚ΠΈΡ„ΠΈΠΊΠ°Ρ‚ΠΎΡ€Ρ‹ — это ΠΈΠΌΠ΅Π½Π°, присваиваСмыС Ρ€Π°Π·Π»ΠΈΡ‡Π½Ρ‹ΠΌ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½Ρ‹ΠΌ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚Π°ΠΌ, Ρ‚Π°ΠΊΠΈΠΌ ΠΊΠ°ΠΊ ΠΌΠ΅Ρ‚ΠΎΠ΄Ρ‹, классы, ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Π΅, ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Ρ‹ ΠΈ Ρ‚. Π”.

    ΠŸΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡΡ‚ Π½Π° Java Π΄ΠΎΠ»ΠΆΠ΅Π½ ΡΠΎΠ±Π»ΡŽΠ΄Π°Ρ‚ΡŒ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠ΅ ΠΏΡ€Π°Π²ΠΈΠ»Π° для ΠΈΠ΄Π΅Π½Ρ‚ΠΈΡ„ΠΈΠΊΠ°Ρ‚ΠΎΡ€ΠΎΠ²:

    • Π˜Π΄Π΅Π½Ρ‚ΠΈΡ„ΠΈΠΊΠ°Ρ‚ΠΎΡ€ всСгда Π΄ΠΎΠ»ΠΆΠ΅Π½ Π½Π°Ρ‡ΠΈΠ½Π°Ρ‚ΡŒΡΡ с Π±ΡƒΠΊΠ² (A-Z / a-z), символа подчСркивания (_) ΠΈΠ»ΠΈ символа Π²Π°Π»ΡŽΡ‚Ρ‹ ($).
    • Имя ΠΈΠ΄Π΅Π½Ρ‚ΠΈΡ„ΠΈΠΊΠ°Ρ‚ΠΎΡ€Π° Π½Π΅ ΠΌΠΎΠΆΠ΅Ρ‚ ΡΠΎΠ²ΠΏΠ°Π΄Π°Ρ‚ΡŒ с ΠΈΠΌΠ΅Π½Π΅ΠΌ Π·Π°Ρ€Π΅Π·Π΅Ρ€Π²ΠΈΡ€ΠΎΠ²Π°Π½Π½ΠΎΠ³ΠΎ ΠΊΠ»ΡŽΡ‡Π΅Π²ΠΎΠ³ΠΎ слова Java.
    • Помимо ΠΏΠ΅Ρ€Π²ΠΎΠ³ΠΎ символа, ΠΈΠ΄Π΅Π½Ρ‚ΠΈΡ„ΠΈΠΊΠ°Ρ‚ΠΎΡ€ ΠΌΠΎΠΆΠ΅Ρ‚ ΡΠΎΠ΄Π΅Ρ€ΠΆΠ°Ρ‚ΡŒ Π»ΡŽΠ±ΡƒΡŽ ΠΊΠΎΠΌΠ±ΠΈΠ½Π°Ρ†ΠΈΡŽ символов.
    • Π’ Java, ΠΊΠ°ΠΊ ΠΈ Π² синтаксисС Π΄Ρ€ΡƒΠ³ΠΈΡ… языков, ΠΈΠ΄Π΅Π½Ρ‚ΠΈΡ„ΠΈΠΊΠ°Ρ‚ΠΎΡ€Ρ‹ Ρ‚Π°ΠΊΠΆΠ΅ Ρ‡ΡƒΠ²ΡΡ‚Π²ΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹ ΠΊ рСгистру.

    Π‘Π»Π΅Π΄ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎ, согласно ΠΏΡ€ΠΈΠ²Π΅Π΄Π΅Π½Π½Ρ‹ΠΌ Π²Ρ‹ΡˆΠ΅ ΠΏΡ€Π°Π²ΠΈΠ»Π°ΠΌ, ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠ΅ ΠΈΠ΄Π΅Π½Ρ‚ΠΈΡ„ΠΈΠΊΠ°Ρ‚ΠΎΡ€Ρ‹ Π΄Π΅ΠΉΡΡ‚Π²ΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹.

    myVar, _salary, $ сумма

    Π‘Π»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠ΅ ΠΈΠ΄Π΅Π½Ρ‚ΠΈΡ„ΠΈΠΊΠ°Ρ‚ΠΎΡ€Ρ‹ Π½Π΅Π΄Π΅ΠΉΡΡ‚Π²ΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹.

    123var, * ΠΌΡƒΠ»ΡŒΡ‚, Π²Π½ΡƒΡ‚Ρ€.

    ΠœΠΎΠ΄ΠΈΡ„ΠΈΠΊΠ°Ρ‚ΠΎΡ€Ρ‹ Java

    ΠœΠΎΠ΄ΠΈΡ„ΠΈΠΊΠ°Ρ‚ΠΎΡ€Ρ‹ ΠΈΠ·ΠΌΠ΅Π½ΡΡŽΡ‚ Π΄ΠΎΡΡ‚ΡƒΠΏΠ½ΠΎΡΡ‚ΡŒ ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Ρ…, ΠΌΠ΅Ρ‚ΠΎΠ΄ΠΎΠ² ΠΈ Ρ‚. Π”.

    Π’ Java Π΅ΡΡ‚ΡŒ Π΄Π²Π° Ρ‚ΠΈΠΏΠ° ΠΌΠΎΠ΄ΠΈΡ„ΠΈΠΊΠ°Ρ‚ΠΎΡ€ΠΎΠ²:

    • ΠœΠΎΠ΄ΠΈΡ„ΠΈΠΊΠ°Ρ‚ΠΎΡ€Ρ‹ доступа: Π’ Java Π΅ΡΡ‚ΡŒ Ρ‡Π΅Ρ‚Ρ‹Ρ€Π΅ ΠΌΠΎΠ΄ΠΈΡ„ΠΈΠΊΠ°Ρ‚ΠΎΡ€Π° доступа, Π° ΠΈΠΌΠ΅Π½Π½ΠΎ: ΠΎΡ‚ΠΊΡ€Ρ‹Ρ‚Ρ‹ΠΉ, Π·Π°Ρ‰ΠΈΡ‰Π΅Π½Π½Ρ‹ΠΉ, частный ΠΈ ΠΏΠΎ ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ. Они ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽΡ‚ΡΡ для опрСдСлСния доступности для ΠΏΠ°ΠΊΠ΅Ρ‚ΠΎΠ², классов, Ρ‡Π»Π΅Π½ΠΎΠ² классов ΠΈ Ρ‚. Π”.
    • ΠœΠΎΠ΄ΠΈΡ„ΠΈΠΊΠ°Ρ‚ΠΎΡ€Ρ‹ Π±Π΅Π· доступа: Java ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°Π΅Ρ‚ ΠΌΠΎΠ΄ΠΈΡ„ΠΈΠΊΠ°Ρ‚ΠΎΡ€Ρ‹ Π±Π΅Π· доступа, Π° ΠΈΠΌΠ΅Π½Π½ΠΎ — final, abstract ΠΈ strictfp. Π’ основном ΠΎΠ½ΠΈ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽΡ‚ΡΡ для опрСдСлСния наслСдования, стиля ΠΏΠΎΠ»ΠΈΠΌΠΎΡ€Ρ„ΠΈΠ·ΠΌΠ° ΠΈ Ρ‚. Π”.
    Π’ΠΈΠΏΡ‹ Π΄Π°Π½Π½Ρ‹Ρ…

    Π›ΡŽΠ±Π°Ρ пСрСмСнная, которая содСрТит Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅, Π΄ΠΎΠ»ΠΆΠ½Π° ΠΈΠΌΠ΅Ρ‚ΡŒ Ρ‚ΠΈΠΏ значСния, ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ΅ ΠΎΠ½Π° Π±ΡƒΠ΄Π΅Ρ‚ ΡƒΠ΄Π΅Ρ€ΠΆΠΈΠ²Π°Ρ‚ΡŒ, Ρ‚.Π΅. Π±ΡƒΠ΄Π΅Ρ‚ Π»ΠΈ пСрСмСнная ΡΠΎΠ΄Π΅Ρ€ΠΆΠ°Ρ‚ΡŒ числовоС, строковоС ΠΈΠ»ΠΈ символьноС Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅. Π­Ρ‚ΠΎ называСтся Ρ‚ΠΈΠΏΠΎΠΌ Π΄Π°Π½Π½Ρ‹Ρ… ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½ΠΎΠΉ.

    Java ΠΈΠΌΠ΅Π΅Ρ‚ Ρ€Π°Π·Π»ΠΈΡ‡Π½Ρ‹Π΅ Ρ‚ΠΈΠΏΡ‹ Π΄Π°Π½Π½Ρ‹Ρ…, ΠΊΠ°ΠΊ ΠΏΠΎΠΊΠ°Π·Π°Π½ΠΎ Π½Π° Π΄ΠΈΠ°Π³Ρ€Π°ΠΌΠΌΠ΅ Π½ΠΈΠΆΠ΅.

    ΠœΡ‹ обсудим ΠΊΠ°ΠΆΠ΄Ρ‹ΠΉ ΠΈΠ· этих Ρ‚ΠΈΠΏΠΎΠ² Π΄Π°Π½Π½Ρ‹Ρ… Π² ΠΎΡ‚Π΄Π΅Π»ΡŒΠ½Ρ‹Ρ… руководствах.

    ΠŸΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Π΅

    Java ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°Π΅Ρ‚ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠ΅ Ρ‚Ρ€ΠΈ Ρ‚ΠΈΠΏΠ° ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Ρ…:

    • Класс ΠΈΠ»ΠΈ статичСскиС ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Π΅: К этому Ρ‚ΠΈΠΏΡƒ ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½ΠΎΠΉ ΠΌΠΎΠΆΠ½ΠΎ ΠΏΠΎΠ»ΡƒΡ‡ΠΈΡ‚ΡŒ доступ Π±Π΅Π· ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π°.
    • НСстатичСскиС ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Π΅ ΠΈΠ»ΠΈ ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Π΅ экзСмпляра: Π­Ρ‚ΠΈ ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Π΅ ΡΠ²Π»ΡΡŽΡ‚ΡΡ ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹ΠΌΠΈ-Ρ‡Π»Π΅Π½Π°ΠΌΠΈ, доступ ΠΊ ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΌ осущСствляСтся с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π° класса.
    • Π›ΠΎΠΊΠ°Π»ΡŒΠ½Ρ‹Π΅ ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Π΅: Π›ΠΎΠΊΠ°Π»ΡŒΠ½Ρ‹Π΅ ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Π΅ ΡΠ²Π»ΡΡŽΡ‚ΡΡ Π»ΠΎΠΊΠ°Π»ΡŒΠ½Ρ‹ΠΌΠΈ для ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½Π½ΠΎΠ³ΠΎ Π±Π»ΠΎΠΊΠ° ΠΊΠΎΠ΄Π° ΠΈ ΠΏΠ΅Ρ€Π΅ΡΡ‚Π°ΡŽΡ‚ ΡΡƒΡ‰Π΅ΡΡ‚Π²ΠΎΠ²Π°Ρ‚ΡŒ Π²Π½Π΅ этого Π±Π»ΠΎΠΊΠ°.
    ΠšΠ»ΡŽΡ‡Π΅Π²Ρ‹Π΅ слова

    Π’ языкС Java Π΅ΡΡ‚ΡŒ ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½Π½Ρ‹Π΅ слова, Π·Π°Ρ€Π΅Π·Π΅Ρ€Π²ΠΈΡ€ΠΎΠ²Π°Π½Π½Ρ‹Π΅ для собствСнного использования, ΠΈ ΠΈΡ… нСльзя ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ Π² качСствС ΠΈΠΌΠ΅Π½ ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Ρ… ΠΈΠ»ΠΈ ΠΈΠ΄Π΅Π½Ρ‚ΠΈΡ„ΠΈΠΊΠ°Ρ‚ΠΎΡ€ΠΎΠ².

    Π’ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰Π΅ΠΉ Ρ‚Π°Π±Π»ΠΈΡ†Π΅ приводится список этих слов, извСстных ΠΊΠ°ΠΊ Β«ΠšΠ»ΡŽΡ‡Π΅Π²Ρ‹Π΅ слова».

    ΠšΠΎΠΌΠΌΠ΅Π½Ρ‚Π°Ρ€ΠΈΠΈ — это инструкции, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ компилятор ΠΈΠ³Π½ΠΎΡ€ΠΈΡ€ΡƒΠ΅Ρ‚. Π’Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ ΠΊΠΎΠΌΠΌΠ΅Π½Ρ‚ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ свой ΠΊΠΎΠ΄, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΡΠ΄Π΅Π»Π°Ρ‚ΡŒ Π΅Π³ΠΎ Π±ΠΎΠ»Π΅Π΅ Ρ‡ΠΈΡ‚Π°Π΅ΠΌΡ‹ΠΌ ΠΈ понятным.

    Java ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°Π΅Ρ‚ Ρ‚Ρ€ΠΈ Ρ‚ΠΈΠΏΠ° ΠΊΠΎΠΌΠΌΠ΅Π½Ρ‚Π°Ρ€ΠΈΠ΅Π²:

    • ΠžΠ΄Π½ΠΎΡΡ‚Ρ€ΠΎΡ‡Π½Ρ‹Π΅ ΠΊΠΎΠΌΠΌΠ΅Π½Ρ‚Π°Ρ€ΠΈΠΈ, ΠΎΠ±ΠΎΠ·Π½Π°Ρ‡Π΅Π½Π½Ρ‹Π΅ Β«//Β»
    • ΠœΠ½ΠΎΠ³ΠΎΡΡ‚Ρ€ΠΎΡ‡Π½Ρ‹Π΅ ΠΊΠΎΠΌΠΌΠ΅Π½Ρ‚Π°Ρ€ΠΈΠΈ, прСдставлСнныС ΠΊΠ°ΠΊ Β«/ *… * /Β»
    • ΠšΠΎΠΌΠΌΠ΅Π½Ρ‚Π°Ρ€ΠΈΠΈ ΠΊ Π΄ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚Π°Ρ†ΠΈΠΈ, ΠΎΠ±ΠΎΠ·Π½Π°Ρ‡Π΅Π½Π½Ρ‹Π΅ β€˜/ ** ****** /

    Π’Ρ‹ ΡƒΠ·Π½Π°Π΅Ρ‚Π΅ большС ΠΎΠ± этих коммСнтариях Π² Π½Π°ΡˆΠΈΡ… ΠΏΠΎΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΡ… ΡƒΡ€ΠΎΠΊΠ°Ρ….

    ΠžΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€Ρ‹

    ΠžΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€Ρ‹ — это символы, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Π²Ρ‹ΠΏΠΎΠ»Π½ΡΡŽΡ‚ логичСскиС ΠΈ матСматичСскиС ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΈ с ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹ΠΌΠΈ ΠΈΠ»ΠΈ ΠΈΠ΄Π΅Π½Ρ‚ΠΈΡ„ΠΈΠΊΠ°Ρ‚ΠΎΡ€Π°ΠΌΠΈ. Π­Ρ‚ΠΈ ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Π΅ ΠΈΠ»ΠΈ ΠΈΠ΄Π΅Π½Ρ‚ΠΈΡ„ΠΈΠΊΠ°Ρ‚ΠΎΡ€Ρ‹ Π½Π°Π·Ρ‹Π²Π°ΡŽΡ‚ΡΡ ΠΎΠΏΠ΅Ρ€Π°Π½Π΄Π°ΠΌΠΈ.

    Java ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°Π΅Ρ‚ Ρ€Π°Π·Π»ΠΈΡ‡Π½Ρ‹Π΅ ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€Ρ‹, ΠΊΠ°ΠΊ ΠΏΠΎΠΊΠ°Π·Π°Π½ΠΎ Π½Π° Π΄ΠΈΠ°Π³Ρ€Π°ΠΌΠΌΠ΅ Π½ΠΈΠΆΠ΅:

    ΠŸΠΎΠ΄Ρ€ΠΎΠ±Π½Π΅Π΅ ΠΎΠ± ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€Π°Ρ… Π² Java Π±ΡƒΠ΄Π΅Ρ‚ рассказано Π² ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΡ… руководствах.

    ΠŸΡ€ΠΈΠ½ΡΡ‚ΠΈΠ΅ Ρ€Π΅ΡˆΠ΅Π½ΠΈΠΉ

    Π’Π°ΠΊΠΆΠ΅ называСтся ΡƒΠΏΡ€Π°Π²Π»ΡΡŽΡ‰ΠΈΠΌΠΈ ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€Π°ΠΌΠΈ. Π­Ρ‚ΠΈ ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€Ρ‹ ΠΈΠ·ΠΌΠ΅Π½ΡΡŽΡ‚ ΠΈΠ»ΠΈ ΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»ΠΈΡ€ΡƒΡŽΡ‚ Π²Ρ‹ΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ Π² зависимости ΠΎΡ‚ ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½Π½ΠΎΠ³ΠΎ условия.Если условиС истинно, выполняСтся Π±Π»ΠΎΠΊ ΠΊΠΎΠ΄Π°, ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠΉ Π·Π° этим условиСм, ΠΈΠ½Π°Ρ‡Π΅ выполняСтся Π΄Ρ€ΡƒΠ³ΠΎΠΉ Π±Π»ΠΎΠΊ.

    Java ΠΈΠΌΠ΅Π΅Ρ‚ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠ΅ ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€Ρ‹ управлСния / принятия Ρ€Π΅ΡˆΠ΅Π½ΠΈΠΉ.

    ΠŸΠ΅Ρ‚Π»ΠΈ

    Π’ языках программирования Ρ†ΠΈΠΊΠ» Π²ΠΊΠ»ΡŽΡ‡Π΅Π½ для ΠΌΠ½ΠΎΠ³ΠΎΠΊΡ€Π°Ρ‚Π½ΠΎΠ³ΠΎ выполнСния Π±Π»ΠΎΠΊΠ° ΠΊΠΎΠ΄Π°. Π¦ΠΈΠΊΠ» ΠΎΠ±Ρ‹Ρ‡Π½ΠΎ начинаСтся с тСста, ΠΈ Π±Π»ΠΎΠΊ ΠΊΠΎΠ΄Π° выполняСтся ΠΏΠΎΠ²Ρ‚ΠΎΡ€Π½ΠΎ фиксированноС количСство Ρ€Π°Π·, Π½Π°Π·Ρ‹Π²Π°Π΅ΠΌΡ‹Ρ… итСрациями, ΠΈΠ»ΠΈ ΠΏΠΎΠΊΠ° Π½Π΅ Π±ΡƒΠ΄Π΅Ρ‚ Π²Ρ‹ΠΏΠΎΠ»Π½Π΅Π½ΠΎ условиС.

    Π’ Java Ρƒ вас Π΅ΡΡ‚ΡŒ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠ΅ конструкции Ρ†ΠΈΠΊΠ»Π°.

    ΠœΡ‹ ΠΏΠΎΠ΄Ρ€ΠΎΠ±Π½ΠΎ ΠΈΠ·ΡƒΡ‡ΠΈΠΌ Ρ†ΠΈΠΊΠ»Ρ‹ Π² Π½Π°ΡˆΠΈΡ… ΠΏΠΎΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΡ… ΡƒΡ€ΠΎΠΊΠ°Ρ….

    ΠœΠ°ΡΡΠΈΠ²Ρ‹ Java

    ΠœΠ°ΡΡΠΈΠ²Ρ‹ — это Π½Π΅ Ρ‡Ρ‚ΠΎ ΠΈΠ½ΠΎΠ΅, ΠΊΠ°ΠΊ структура Π΄Π°Π½Π½Ρ‹Ρ…, которая ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ для ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎΠ³ΠΎ хранСния элСмСнтов Π΄Π°Π½Π½Ρ‹Ρ… ΠΎΠ΄Π½ΠΎΠ³ΠΎ Ρ‚ΠΈΠΏΠ°.

    ΠœΠ°ΡΡΠΈΠ²Ρ‹ Java Ρ‚Π°ΠΊΠΆΠ΅ ΠΏΠΎΡ…ΠΎΠΆΠΈ Π½Π° массивы Π² C / C ++ ΠΈ Π΄Ρ€ΡƒΠ³ΠΈΡ… языках программирования.

    Java ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°Π΅Ρ‚:

    • ΠžΠ΄Π½ΠΎΠΌΠ΅Ρ€Π½Ρ‹Π΅ массивы: ΠŸΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΡŒ элСмСнтов ΠΎΠ΄Π½ΠΎΠ³ΠΎ Ρ‚ΠΈΠΏΠ°, ΠΊ ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΉ ΠΌΠΎΠΆΠ½ΠΎ ΠΏΠΎΠ»ΡƒΡ‡ΠΈΡ‚ΡŒ доступ, ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡ имя массива.
    • ΠœΠ½ΠΎΠ³ΠΎΠΌΠ΅Ρ€Π½Ρ‹ΠΉ массив: Π­Π»Π΅ΠΌΠ΅Π½Ρ‚Ρ‹ располоТСны Π² Π²ΠΈΠ΄Π΅ строк ΠΈ столбцов, Ρ‚ΠΎ Π΅ΡΡ‚ΡŒ Π² Π²ΠΈΠ΄Π΅ ΠΌΠ°Ρ‚Ρ€ΠΈΡ†Ρ‹.

    Класс Java и OOPS

    Класс — это ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ любой Ρ€Π΅Π°Π»ΡŒΠ½ΠΎΠΉ сущности, Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€ , Π°Π²Ρ‚ΠΎΠΌΠΎΠ±ΠΈΠ»ΡŒ. Класс Π² Java состоит ΠΈΠ· ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Ρ… Π΄Π°Π½Π½Ρ‹Ρ… ΠΈ ΠΌΠ΅Ρ‚ΠΎΠ΄ΠΎΠ² ΠΈΠ»ΠΈ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΉ, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Ρ€Π°Π±ΠΎΡ‚Π°ΡŽΡ‚ с этими Π΄Π°Π½Π½Ρ‹ΠΌΠΈ.

    ΠŸΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Π΅ Π΄Π°Π½Π½Ρ‹Ρ… ΠΈΠ»ΠΈ ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Π΅-Ρ‡Π»Π΅Π½Ρ‹ ΠΈ ΠΌΠ΅Ρ‚ΠΎΠ΄Ρ‹ ΠΎΠΏΠΈΡΡ‹Π²Π°ΡŽΡ‚ ΠΏΠΎΠ²Π΅Π΄Π΅Π½ΠΈΠ΅ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ΠΎΠ², ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΡΠ²Π»ΡΡŽΡ‚ΡΡ экзСмплярами класса. Π­Ρ‚ΠΎ ΠΎΠ·Π½Π°Ρ‡Π°Π΅Ρ‚, Ρ‡Ρ‚ΠΎ состояниС ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π°, прСдставлСнного классом, Π² любой ΠΌΠΎΠΌΠ΅Π½Ρ‚ Π²Ρ€Π΅ΠΌΠ΅Π½ΠΈ опрСдСляСтся ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ΠΎΠΌ.

    Π˜Π½Ρ‚Π΅Ρ€Ρ„Π΅ΠΉΡΡ‹ Java

    Π˜Π½Ρ‚Π΅Ρ€Ρ„Π΅ΠΉΡ Π² Java — это Π½Π°Π±ΠΎΡ€ сигнатур ΠΌΠ΅Ρ‚ΠΎΠ΄ΠΎΠ² ΠΈ ΠΏΠΎΠ»Π΅ΠΉ. Π˜Π½Ρ‚Π΅Ρ€Ρ„Π΅ΠΉΡ Π½Π΅ ΠΈΠΌΠ΅Π΅Ρ‚ Ρ€Π΅Π°Π»ΠΈΠ·Π°Ρ†ΠΈΠΈ ΠΌΠ΅Ρ‚ΠΎΠ΄ΠΎΠ². Класс ΠΌΠΎΠΆΠ΅Ρ‚ Π½Π°ΡΠ»Π΅Π΄ΠΎΠ²Π°Ρ‚ΡŒ ΠΎΡ‚ интСрфСйса, Π° Π·Π°Ρ‚Π΅ΠΌ Ρ€Π΅Π°Π»ΠΈΠ·ΠΎΠ²Ρ‹Π²Π°Ρ‚ΡŒ ΠΌΠ΅Ρ‚ΠΎΠ΄Ρ‹ интСрфСйса.

    ΠŸΠ°ΠΊΠ΅Ρ‚Ρ‹ Java

    ΠšΠ»Π°ΡΡΡ‹ ΠΈ интСрфСйсы, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΈΠΌΠ΅ΡŽΡ‚ схоТиС Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ ΠΈΠ»ΠΈ зависимости, Π³Ρ€ΡƒΠΏΠΏΠΈΡ€ΡƒΡŽΡ‚ΡΡ Π² ΠΏΠ°ΠΊΠ΅Ρ‚. ΠŸΠ°ΠΊΠ΅Ρ‚ ΡƒΠΏΡ€ΠΎΡ‰Π°Π΅Ρ‚ ΠΌΠΎΠ΄ΡƒΠ»ΡΡ€ΠΈΠ·Π°Ρ†ΠΈΡŽ ΠΊΠΎΠ΄Π° Π² Java.

    Часто Π·Π°Π΄Π°Π²Π°Π΅ΠΌΡ‹Π΅ вопросы

    Q # 1) Π§Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ ядро ​​Java?

    ΠžΡ‚Π²Π΅Ρ‚: Core Java — это базовая концСпция Java-ΠΏΠΎΠ΄ΠΎΠ±Π½Ρ‹Ρ… ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Ρ…, Ρ‚ΠΈΠΏΠΎΠ² Π΄Π°Π½Π½Ρ‹Ρ…, массивов, OOPS ΠΈ Ρ‚. Π”.Π—Π΄Π΅ΡΡŒ Π²Ρ‹ ΡƒΠ²ΠΈΠ΄ΠΈΡ‚Π΅ ΠΎΠ±Π·ΠΎΡ€ всСх основных ΠΊΠΎΠ½Ρ†Π΅ΠΏΡ†ΠΈΠΉ Java. Π―Π΄Ρ€ΠΎ Java ΠΎΠ±Ρ‹Ρ‡Π½ΠΎ являСтся Ρ‡Π°ΡΡ‚ΡŒΡŽ Ρ€Π΅Π΄Π°ΠΊΡ†ΠΈΠΈ Java SE, ΠΏΠΎΠ·Π²ΠΎΠ»ΡΡŽΡ‰Π΅ΠΉ Ρ€Π°Π·Ρ€Π°Π±Π°Ρ‚Ρ‹Π²Π°Ρ‚ΡŒ ΠΎΠ±Ρ‰ΠΈΠ΅ прилоТСния Java.

    Q # 2) КакиС Ρ‚ΠΈΠΏΡ‹ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌ Java?

    ΠžΡ‚Π²Π΅Ρ‚: Π˜ΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡ Java, Π²Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ Ρ€Π°Π·Ρ€Π°Π±Π°Ρ‚Ρ‹Π²Π°Ρ‚ΡŒ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠ΅ прилоТСния.

    1. Java-ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅: ВыполняСтся Π½Π° клиСнтском ΠΊΠΎΠΌΠΏΡŒΡŽΡ‚Π΅Ρ€Π΅
    2. Java-Π°ΠΏΠΏΠ»Π΅Ρ‚: Π Π°Π±ΠΎΡ‚Π°Π΅Ρ‚ Π² Π²Π΅Π±-Π±Ρ€Π°ΡƒΠ·Π΅Ρ€Π΅
    3. ΠŸΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ Java Swing: ΠŸΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ с графичСским интСрфСйсом ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Ρ
    4. JAR (Π°Ρ€Ρ…ΠΈΠ² Java): ΠŸΠ°ΠΊΠ΅Ρ‚Π½ΠΎΠ΅ ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅
    5. Π‘Π΅Ρ€Π²Π»Π΅Ρ‚: ВыполняСтся Π½Π° Π²Π΅Π±-сСрвСрС
    6. EJB (Enterprise Java Beans): Π˜ΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ для Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ Π²Π΅Π±-сайтов ΠΈ запускаСтся Π½Π° Π²Π΅Π±-сСрвСрС.

    Π—Π°ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠ΅

    Π’ этом руководствС ΠΌΡ‹ ΡƒΠ²ΠΈΠ΄Π΅Π»ΠΈ ΠΊΡ€Π°Ρ‚ΠΊΠΈΠΉ ΠΎΠ±Π·ΠΎΡ€ ΠΊΠ°ΠΆΠ΄ΠΎΠΉ ΠΈΠ· Ρ‚Π΅ΠΌ, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΌΡ‹ классифицируСм ΠΊΠ°ΠΊ основы Java. ΠœΡ‹ рассмотрим ΠΊΠ°ΠΆΠ΄ΡƒΡŽ Ρ‚Π΅ΠΌΡƒ ΠΏΠΎΠ΄Ρ€ΠΎΠ±Π½ΠΎ ΠΎΡ‚Π΄Π΅Π»ΡŒΠ½ΠΎ Π² Π½Π°ΡˆΠΈΡ… ΠΏΠΎΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΡ… ΡƒΡ€ΠΎΠΊΠ°Ρ… этой сСрии.

    Наряду с Π²Ρ‹ΡˆΠ΅ΡƒΠΏΠΎΠΌΡΠ½ΡƒΡ‚Ρ‹ΠΌΠΈ Ρ‚Π΅ΠΌΠ°ΠΌΠΈ ΠΌΡ‹ Ρ‚Π°ΠΊΠΆΠ΅ рассмотрим Ρ€Π°ΡΡˆΠΈΡ€Π΅Π½Π½Ρ‹Π΅ Ρ‚Π΅ΠΌΡ‹, Ρ‚Π°ΠΊΠΈΠ΅ ΠΊΠ°ΠΊ структура сбора, ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠ° ΠΈΡΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠΉ, ΠΌΠ½ΠΎΠ³ΠΎΠΏΠΎΡ‚ΠΎΡ‡Π½ΠΎΡΡ‚ΡŒ ΠΈ Ρ‚. Π”., Π‘Ρ€Π΅Π΄ΠΈ ΠΏΡ€ΠΎΡ‡Π΅Π³ΠΎ.

    => ΠŸΠΎΡΠ΅Ρ‚ΠΈΡ‚Π΅ здСсь, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΡƒΠ²ΠΈΠ΄Π΅Ρ‚ΡŒ ΡΠ΅Ρ€ΠΈΡŽ ΠΎΠ±ΡƒΡ‡Π°ΡŽΡ‰ΠΈΡ… ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌ ΠΏΠΎ Java для всСх.

    5 Π»ΡƒΡ‡ΡˆΠΈΡ… ΠΊΠ½ΠΈΠ³ ΠΏΠΎ ΠΈΠ·ΡƒΡ‡Π΅Π½ΠΈΡŽ Core Java для Π½Π°Ρ‡ΠΈΠ½Π°ΡŽΡ‰ΠΈΡ…

    ΠŸΡ€ΠΈΠ²Π΅Ρ‚, рСбята, Π² ΠΏΡ€ΠΎΡˆΠ»ΠΎΠΌ я подСлился мноТСством ΠΊΠ½ΠΈΠ³, связанных с Java ΠΈ связанными тСхнологиями, Ρ‚Π°ΠΊΠΈΠΌΠΈ ΠΊΠ°ΠΊ ΠΊΠ½ΠΈΠ³ΠΈ ΠΈ ΠΎΠ½Π»Π°ΠΉΠ½-курсы для изучСния Spring, Hibernate, Π²Π½ΡƒΡ‚Ρ€Π΅Π½Π½Π΅Π³ΠΎ устройства JVM, настройки ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΠΈ Java, многопоточности ΠΈ ΠΏΠ°Ρ€Π°Π»Π»Π΅Π»ΠΈΠ·ΠΌΠ°, шаблонов проСктирования, структуры Π΄Π°Π½Π½Ρ‹Ρ… , Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌΡ‹ ΠΈ Ρ‚. Π΄., Π½ΠΎ я Π΅Ρ‰Π΅ Π½Π΅ подСлился ΠΊΠ½ΠΈΠ³Π°ΠΌΠΈ для основных ΠΊΠ½ΠΈΠ³ Java для Π½Π°Ρ‡ΠΈΠ½Π°ΡŽΡ‰ΠΈΡ… . НСсмотря Π½Π° Ρ‚ΠΎ, Ρ‡Ρ‚ΠΎ я врСмя ΠΎΡ‚ Π²Ρ€Π΅ΠΌΠ΅Π½ΠΈ ΡƒΠΏΠΎΠΌΠΈΠ½Π°Π» нСсколько популярных Π½Π°Π·Π²Π°Π½ΠΈΠΉ, Ρƒ мСня Π΄Π΅ΠΉΡΡ‚Π²ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎ Π½Π΅ Π±Ρ‹Π»ΠΎ ΠΏΠΎΠ»Π½ΠΎΠΉ компиляции основных основных ΠΊΠ½ΠΈΠ³ ΠΏΠΎ Java для Π½Π°Ρ‡ΠΈΠ½Π°ΡŽΡ‰ΠΈΡ…. ΠŸΠΎΡΠΊΠΎΠ»ΡŒΠΊΡƒ Java — ΠΎΠ΄ΠΈΠ½ ΠΈΠ· самых популярных языков программирования ΠΈ ΠΎΡ‡Π΅Π½ΡŒ ΠΏΠΎΠ»Π΅Π·Π΅Π½ для Ρ€Π°Π±ΠΎΡ‚Ρ‹ Π² качСствС Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠ° ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½ΠΎΠ³ΠΎ обСспСчСния, ΠΎΠ½ стал ΠΏΡ€Π΅Π΄ΠΏΠΎΡ‡Ρ‚ΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹ΠΌ языком программирования для Π½Π°Ρ‡Π°Π»Π° изучСния программирования ΠΈ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ, поэтому ΠΈΠΌΠ΅Π΅Ρ‚ смысл Ρ…ΠΎΡ€ΠΎΡˆΠΎ Π½Π°Ρ‡Π°Ρ‚ΡŒ с ядра Java.

    Π­Ρ‚Π° ΡΡ‚Π°Ρ‚ΡŒΡ содСрТит ΠΊΠ½ΠΈΠ³ΠΈ, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Π½Π°ΡƒΡ‡Π°Ρ‚ вас ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ Π½Π° языкС программирования Java. Π’ ΠΌΠΈΠ½ΡƒΠ²ΡˆΡƒΡŽ эпоху, ΠΊΠΎΠ³Π΄Π° C ΠΈ C ++ ΠΏΡ€Π°Π²ΠΈΠ»ΠΈ Π°ΠΊΠ°Π΄Π΅ΠΌΠΈΠΊΠ°ΠΌΠΈ, Π° Ρ‚Π°ΠΊΠΆΠ΅ ΠΏΠ΅Ρ€Π²Ρ‹ΠΌΠΈ языками, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΈΠ½ΠΆΠ΅Π½Π΅Ρ€Ρ‹ ΠΈ программисты использовали для обучСния ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΡŽ, Ρƒ нас ΠΎΠ±Ρ‹Ρ‡Π½ΠΎ Π΅ΡΡ‚ΡŒ нСсколько Ρ…ΠΎΡ€ΠΎΡˆΠΈΡ… Ρ€Π΅ΠΊΠΎΠΌΠ΅Π½Π΄Π°Ρ†ΠΈΠΉ для Π½Π°Ρ‡Π°Π»Π°, Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, язык программирования C ΠΎΡ‚ самого ДСнниса Π ΠΈΡ‡ΠΈ.

    Книга Head First Java ΡƒΠΆΠ΅ ΠΌΠ½ΠΎΠ³ΠΎ Π»Π΅Ρ‚ слуТит Ρ‚ΠΎΠΉ ΠΆΠ΅ Ρ†Π΅Π»ΠΈ для Java-программистов, Π½ΠΎ Π±ΡƒΠ΄Π΅Ρ‚ Π»ΠΈ ΠΎΠ½Π° Π°ΠΊΡ‚ΡƒΠ°Π»ΡŒΠ½Π° Π² 2020 Π³ΠΎΠ΄Ρƒ? ОсобСнно Π² эпоху Java 13? Π§Ρ‚ΠΎ ΠΆ, ΠΌΡ‹ скоро ΡƒΠ·Π½Π°Π΅ΠΌ ΠΎΠ± этом Π² этой ΡΡ‚Π°Ρ‚ΡŒΠ΅.

    Π§Ρ‚ΠΎ Π΅Ρ‰Π΅ Π±ΠΎΠ»Π΅Π΅ Π²Π°ΠΆΠ½ΠΎ, я подСлился 5 Π»ΡƒΡ‡ΡˆΠΈΠΌΠΈ ΠΊΠ½ΠΈΠ³Π°ΠΌΠΈ ΠΏΠΎ основам Java для Π½Π°Ρ‡ΠΈΠ½Π°ΡŽΡ‰ΠΈΡ… . Π― Π²Ρ‹Π±Ρ€Π°Π» эти ΠΊΠ½ΠΈΠ³ΠΈ ΠΏΠΎ Ρ‚Ρ€Π΅ΠΌ ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€Π°ΠΌ: ΠΏΠ΅Ρ€Π²ΠΎΠ΅ — ΡƒΠ΄ΠΎΠ±ΠΎΡ‡ΠΈΡ‚Π°Π΅ΠΌΠΎΡΡ‚ΡŒ, Π²Ρ‚ΠΎΡ€ΠΎΠ΅ — ΠΏΡ€ΠΈΠΌΠ΅Ρ€Ρ‹ ΠΈ Ρ‚Ρ€Π΅Ρ‚ΡŒΠ΅ — содСрТаниС. Π­Ρ‚ΠΈ ΠΊΠ½ΠΈΠ³ΠΈ ΠΎΡ‚Π»ΠΈΡ‡Π½ΠΎ подходят для Ρ‚Π΅Ρ…, ΠΊΡ‚ΠΎ ΠΏΠ»ΠΎΡ…ΠΎ Π·Π½Π°ΠΊΠΎΠΌ с Java, Π½ΠΎ Ρ‚Π°ΠΊΠΆΠ΅ Ρ…ΠΎΡ€ΠΎΡˆΠΈ для Ρ‚Π΅Ρ…, ΠΊΡ‚ΠΎ ΠΈΠΌΠ΅Π΅Ρ‚ ΠΎΠΏΡ‹Ρ‚ Ρ€Π°Π±ΠΎΡ‚Ρ‹ с Java ΠΎΡ‚ 1 Π΄ΠΎ 2 Π»Π΅Ρ‚ ΠΈ Ρ…ΠΎΡ‡Π΅Ρ‚ Π·Π°ΠΏΠΎΠ»Π½ΠΈΡ‚ΡŒ ΠΏΡ€ΠΎΠ±Π΅Π»Ρ‹ Π² своСм ΠΎΠ±ΡƒΡ‡Π΅Π½ΠΈΠΈ.

    Π― Ρ‚Π°ΠΊΠΆΠ΅ ΠΏΡ€Π΅Π΄Π»Π°Π³Π°ΡŽ Π²Π°ΠΌ ΠΎΠ±ΡŠΠ΅Π΄ΠΈΠ½ΠΈΡ‚ΡŒ ΠΎΠ΄Π½Ρƒ ΠΈΠ· этих ΠΊΠ½ΠΈΠ³ с ΠΎΠ½Π»Π°ΠΉΠ½-курсом, Ρ‚Π°ΠΊΠΈΠΌ ΠΊΠ°ΠΊ The Complete Java Masterclass , это Π΄Π΅ΠΉΡΡ‚Π²ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎ Π·Π΄ΠΎΡ€ΠΎΠ²ΠΎ Π½Π΅ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ для быстрого понимания Π²Π°ΠΆΠ½Ρ‹Ρ… ΠΊΠΎΠ½Ρ†Π΅ΠΏΡ†ΠΈΠΉ, Π½ΠΎ ΠΈ для ΠΈΡ… ΡƒΠ³Π»ΡƒΠ±Π»Π΅Π½Π½ΠΎΠ³ΠΎ изучСния, ΠΈ Π² наши Π΄Π½ΠΈ ΠΎΠ½Π»Π°ΠΉΠ½-курсы Ρ‚Π°ΠΊΠΆΠ΅ мСньшС Π΄ΠΎΡ€ΠΎΠΆΠ΅, Ρ‡Π΅ΠΌ ΠΊΠ½ΠΈΠ³ΠΈ.

    5 Π»ΡƒΡ‡ΡˆΠΈΡ… Π±Π°Π·ΠΎΠ²Ρ‹Ρ… ΠΊΠ½ΠΈΠ³ ΠΏΠΎ Java для Π½Π°Ρ‡ΠΈΠ½Π°ΡŽΡ‰ΠΈΡ…

    Π’ΠΎΡ‚ моя коллСкция Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Ρ… ΠΈΠ· Π»ΡƒΡ‡ΡˆΠΈΡ… ΠΊΠ½ΠΈΠ³ ΠΏΠΎ ΠΈΠ·ΡƒΡ‡Π΅Π½ΠΈΡŽ ядра Java, особСнно для Π½Π°Ρ‡ΠΈΠ½Π°ΡŽΡ‰ΠΈΡ…, Ρƒ ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Ρ… Π½Π΅Ρ‚ ΠΈΠ»ΠΈ ΠΎΡ‡Π΅Π½ΡŒ ΠΌΠ°Π»ΠΎ ΠΎΠΏΡ‹Ρ‚Π° Π² ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠΈ ΠΈ Java. Π­Ρ‚ΠΈ ΠΊΠ½ΠΈΠ³ΠΈ Π½Π°ΡƒΡ‡Π°Ρ‚ вас Π½Π΅ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ основам языка программирования Java, Π½ΠΎ ΠΈ ΠΌΠ½ΠΎΠ³ΠΈΠΌ Π²Π°ΠΆΠ½Ρ‹ΠΌ классам ΠΈΠ· Java API, Ρ‚Π°ΠΊΠΈΠΌ ΠΊΠ°ΠΊ String, Java Collection Framework, Thread, Java Executor Framework, Java IO, Java Networking ΠΈ Ρ‚. Π”.

    Π­Ρ‚ΠΎΡ‚ список ΠΊΠ½ΠΈΠ³ Ρ‚Π°ΠΊΠΆΠ΅ ΠΏΠΎΠ»Π΅Π·Π½ΠΎ для всСх, ΠΊΡ‚ΠΎ ΠΈΠ·ΡƒΡ‡Π°Π» Java Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Π² школС ΠΈ ΠΊΠΎΠ»Π»Π΅Π΄ΠΆΠ°Ρ… ΠΈΠ»ΠΈ ΠΈΠΌΠ΅Π΅Ρ‚ нСбольшой ΠΎΠΏΡ‹Ρ‚ программирования.Π­Ρ‚ΠΎ ΠΏΠΎΠΌΠΎΠΆΠ΅Ρ‚ Π²Π°ΠΌ Π·Π°ΠΏΠΎΠ»Π½ΠΈΡ‚ΡŒ ΠΏΡ€ΠΎΠ±Π΅Π»Ρ‹ Π² вашСм ΠΏΠΎΠ½ΠΈΠΌΠ°Π½ΠΈΠΈ языка Java ΠΈ Π΅Π³ΠΎ Π±ΠΎΠ³Π°Ρ‚ΠΎΠ³ΠΎ API.

    1. Java: ΠΊΠ°ΠΊ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ Deitel ΠΈ Deitel

    Π­Ρ‚ΠΎ Π΅Ρ‰Π΅ ΠΎΠ΄Π½Π° отличная ΠΊΠ½ΠΈΠ³Π° ΠΏΠΎ основам Java для Π½Π°Ρ‡ΠΈΠ½Π°ΡŽΡ‰ΠΈΡ…. Он эффСктивно объСдинил Ρ‚ΠΎ, Ρ‡Ρ‚ΠΎ сдСлал КСй Π‘. Π₯орстманн, Π² Π΄Π²ΡƒΡ… Ρ‚ΠΎΠΌΠ°Ρ… Core Java, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΌΡ‹ обсуТдали Π² послСднСм Ρ€Π°Π·Π΄Π΅Π»Π΅. Π― люблю эту ΠΊΠ½ΠΈΠ³Ρƒ Π·Π° Π΅Π΅ ΠΏΡ€ΠΈΠΌΠ΅Ρ€Ρ‹, прСдупрСТдСния ΠΎΠ± ΠΎΡˆΠΈΠ±ΠΊΠ°Ρ… программирования ΠΈ простыС для понимания языки. Π­Ρ‚ΠΎ Ρ‚Π°ΠΊΠΆΠ΅ ΠΎΠ΄Π½Π° ΠΈΠ· самых Π²ΡΠ΅ΠΎΠ±ΡŠΠ΅ΠΌΠ»ΡŽΡ‰ΠΈΡ… ΠΊΠ½ΠΈΠ³, написанных Π½Π° Java, ΠΎΡ…Π²Π°Ρ‚Ρ‹Π²Π°ΡŽΡ‰Π°Ρ Π΄Π°ΠΆΠ΅ слоТныС Ρ‚Π΅ΠΌΡ‹, Ρ‚Π°ΠΊΠΈΠ΅ ΠΊΠ°ΠΊ JDBC, AWT, Swing ΠΈ Ρ‚. Π”.

    11-Π΅ ΠΈΠ·Π΄Π°Π½ΠΈΠ΅ ΠΊΠ½ΠΈΠ³ΠΈ ΠΎΡ…Π²Π°Ρ‚Ρ‹Π²Π°Π΅Ρ‚ всС Π½ΠΎΠ²Ρ‹Π΅ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ Java 8, Ρ‚Π°ΠΊΠΈΠ΅ ΠΊΠ°ΠΊ лямбда-Π²Ρ‹Ρ€Π°ΠΆΠ΅Π½ΠΈΠ΅, Stream API, Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹ΠΉ API, API Π΄Π°Ρ‚Ρ‹ ΠΈ Π²Ρ€Π΅ΠΌΠ΅Π½ΠΈ, Π° Ρ‚Π°ΠΊΠΆΠ΅ языковыС ΡƒΠ»ΡƒΡ‡ΡˆΠ΅Π½ΠΈΡ, Ρ‚Π°ΠΊΠΈΠ΅ ΠΊΠ°ΠΊ ΠΌΠ΅Ρ‚ΠΎΠ΄Ρ‹ ΠΏΠΎ ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ, статичСскиС ΠΌΠ΅Ρ‚ΠΎΠ΄Ρ‹ Π² интСрфСйсС ΠΈ Ρ‚. Π”.

    Он Ρ‚Π°ΠΊΠΆΠ΅ ΠΎΡ…Π²Π°Ρ‚Ρ‹Π²Π°Π΅Ρ‚ Π½ΠΎΠ²Ρ‹Π΅ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ, прСдставлСнныС Π² Java 9, Ρ‚Π°ΠΊΠΈΠ΅ ΠΊΠ°ΠΊ статичСскиС Ρ„Π°Π±Ρ€ΠΈΡ‡Π½Ρ‹Π΅ ΠΌΠ΅Ρ‚ΠΎΠ΄Ρ‹ Π² интСрфСйсах Collections, List, Set ΠΈ Π΄Ρ€ΡƒΠ³ΠΈΡ…, HTTP 2, ΡƒΠ»ΡƒΡ‡ΡˆΠ΅Π½ΠΈΡ JVM ΠΈ Π΄Ρ€ΡƒΠ³ΠΈΠ΅. Если Π²Π°ΠΌ интСрСсно ΡƒΠ·Π½Π°Ρ‚ΡŒ ΠΎ Π΄Ρ€ΡƒΠ³ΠΈΡ… функциях Java 8 ΠΈ 9, Π° Ρ‚Π°ΠΊΠΆΠ΅ ΠΎ Π΄Ρ€ΡƒΠ³ΠΈΡ… функциях, прСдставлСнных Π² Java 10, 11, 12 ΠΈ Java 13 сСйчас, взглянитС Π½Π° эти Π½ΠΎΠ²Ρ‹Π΅ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ Java (Java 12, Java 11, Java 10, Java9 & Java8) курс ΠΏΠΎ Udemy.Он ΠΎΡ…Π²Π°Ρ‚Ρ‹Π²Π°Π΅Ρ‚ всС Π²Π°ΠΆΠ½Ρ‹Π΅ Π½ΠΎΠ²Ρ‹Π΅ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Π΄ΠΎΠ»ΠΆΠ΅Π½ ΠΈΠ·ΡƒΡ‡ΠΈΡ‚ΡŒ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊ Core Java.

    2. Core Java для Π½Π΅Ρ‚Π΅Ρ€ΠΏΠ΅Π»ΠΈΠ²Ρ‹Ρ…

    Π― ΠΎΠ±Π½Π°Ρ€ΡƒΠΆΠΈΠ», Ρ‡Ρ‚ΠΎ Π½ΠΎΠ²ΠΈΡ‡ΠΊΠΈ Π½Π΅ΠΌΠ½ΠΎΠ³ΠΎ Π½Π΅Ρ‚Π΅Ρ€ΠΏΠ΅Π»ΠΈΠ²Ρ‹, Ρ‚. Π•. Π₯отят быстро ΡƒΡ‡ΠΈΡ‚ΡŒΡΡ. Π”Π°ΠΆΠ΅ я сам, ΠΊΠΎΠ³Π΄Π° Π½Π°Ρ‡ΠΈΠ½Π°ΡŽ с Ρ‡Π΅Π³ΠΎ-Ρ‚ΠΎ Π°Π±ΡΠΎΠ»ΡŽΡ‚Π½ΠΎ Π½ΠΎΠ²ΠΎΠ³ΠΎ, Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, ΠΈΠ³Ρ€Π°ΡŽ Π½Π° Π½ΠΎΠ²ΠΎΠΌ ΠΌΡƒΠ·Ρ‹ΠΊΠ°Π»ΡŒΠ½ΠΎΠΌ инструмСнтС, я Ρ…ΠΎΡ‡Ρƒ быстро ΡƒΡ‡ΠΈΡ‚ΡŒ Π³Π°ΠΌΠΌΡ‹, Π°ΠΊΠΊΠΎΡ€Π΄Ρ‹, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΈΠ³Ρ€Π°Ρ‚ΡŒ ΠΏΠΎΠ»Π½Ρ‹Π΅ пСсни.

    Π’ΠΎΡ‚ ΠΏΠΎΡ‡Π΅ΠΌΡƒ я ΡΡ‚Π°Π²Π»ΡŽ Core Java для Π½Π΅Ρ‚Π΅Ρ€ΠΏΠ΅Π»ΠΈΠ²Ρ‹Ρ… Π½Π° ΠΏΠ΅Ρ€Π²ΠΎΠ΅ мСсто, ΠΊΠΎΠ³Π΄Π° Π΄ΠΎΡ…ΠΎΠ΄ΠΈΡ‚ Π΄ΠΎ Ρ€Π΅ΠΊΠΎΠΌΠ΅Π½Π΄Π°Ρ†ΠΈΠΈ ΠΊΠ½ΠΈΠ³ΠΈ ΠΏΠΎ основам Java для Π½ΠΎΠ²ΠΈΡ‡ΠΊΠΎΠ².Как слСдуСт ΠΈΠ· названия, Π² Π½Π΅ΠΌ ΠΎΠ±ΡŠΡΡΠ½ΡΡŽΡ‚ΡΡ основныС основныС ΠΊΠΎΠ½Ρ†Π΅ΠΏΡ†ΠΈΠΈ Java, опуская ΠΌΠ΅Π½Π΅Π΅ Π²Π°ΠΆΠ½Ρ‹Π΅ Π΄Π΅Ρ‚Π°Π»ΠΈ ΠΈ Π²ΠΊΠ»ΡŽΡ‡Π°Ρ Π±ΠΎΠ»Π΅Π΅ свСТиС Π΄Π΅Ρ‚Π°Π»ΠΈ, Ρ‚Π°ΠΊΠΈΠ΅ ΠΊΠ°ΠΊ лямбда-выраТСния Java 8 ΠΈ ΠΏΠΎΡ‚ΠΎΠΊΠΈ.

    Π’ эпоху Java 13 ΠΈ Java 14 это Π±Ρ‹Π»Π°, вСроятно, Π»ΡƒΡ‡ΡˆΠ°Ρ ΠΊΠ½ΠΈΠ³Π° ΠΏΠΎ Java для Π½ΠΎΠ²ΠΈΡ‡ΠΊΠΎΠ², Π½ΠΎ Ссли Π²Π°ΠΌ Π½ΡƒΠΆΠ΅Π½ ΠΈΡΡ‡Π΅Ρ€ΠΏΡ‹Π²Π°ΡŽΡ‰ΠΈΠΉ ΠΎΠ±Π·ΠΎΡ€, это ΠΌΠΎΠΆΠ½ΠΎ Π½Π°ΠΉΡ‚ΠΈ Π² Ρ‚ΠΎΠΌΠ°Ρ… 1 ΠΈ 2 Core Java Ρ‚ΠΎΠ³ΠΎ ΠΆΠ΅ Π°Π²Ρ‚ΠΎΡ€Π°. Если Ρ…ΠΎΡ‚ΠΈΡ‚Π΅, ΠΎΠ±ΡŠΠ΅Π΄ΠΈΠ½ΠΈΡ‚Π΅ эту ΠΊΠ½ΠΈΠ³Ρƒ с ΠΌΠΎΠΈΠΌ Π»ΡŽΠ±ΠΈΠΌΡ‹ΠΌ курсом The Complete Java Masterclass ΠΎΡ‚ Udemy, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΏΠΎΠ»ΡƒΡ‡ΠΈΡ‚ΡŒ Π»ΡƒΡ‡ΡˆΠ΅Π΅ ΠΈΠ· ΠΎΠ±ΠΎΠΈΡ… ΠΌΠΈΡ€ΠΎΠ².

    3. Π―Π΄Ρ€ΠΎ Java, Ρ‚ΠΎΠΌ 1 ΠΈ 2, КСй Π‘. Π₯орстманн

    Π’Π΅Π»ΠΈΠΊΠΈΠΉ КСй Π‘. Π₯орстманн — ΠΎΠ΄ΠΈΠ½ ΠΈΠ· ΠΌΠΎΠΈΡ… Π»ΡŽΠ±ΠΈΠΌΡ‹Ρ… Π°Π²Ρ‚ΠΎΡ€ΠΎΠ² ΠΊΠ½ΠΈΠ³ ΠΏΠΎ Java. МнС ΠΎΡ‡Π΅Π½ΡŒ нравится, ΠΊΠ°ΠΊ КСй ΠΎΠ±ΡŠΡΡΠ½ΡΠ΅Ρ‚ Π²Π΅Ρ‰ΠΈ ΠΈ Π²ΠΊΠ»Π°Π΄Ρ‹Π²Π°Π΅Ρ‚ ΡΡ‚ΠΎΠ»ΡŒΠΊΠΎ содСрТания Π² Ρ‚Π°ΠΊΠΎΠ΅ ΠΊΠΎΡ€ΠΎΡ‚ΠΊΠΎΠ΅ слово. Он Π½Π΅ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ ΠΎΠ±ΡŠΡΡΠ½ΡΠ΅Ρ‚ ΠΊΠΎΠ½Ρ†Π΅ΠΏΡ†ΠΈΠΈ, Π½ΠΎ ΠΈ ΠΎΠ±ΡŠΡΡΠ½ΡΠ΅Ρ‚, Ρ‡Ρ‚ΠΎ Π΄Π΅Π»Π°Ρ‚ΡŒ, Π° Ρ‡Ρ‚ΠΎ Π½Π΅ Π΄Π΅Π»Π°Ρ‚ΡŒ.

    Если Π²Ρ‹ ΡƒΠΆΠ΅ Π·Π½Π°ΠΊΠΎΠΌΡ‹ с C ΠΈ C ++, эта ΠΊΠ½ΠΈΠ³Π° станСт для вас Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹ΠΌ стимулом. Π’ Π½Π΅ΠΌ ΠΎΠ±ΡŠΡΡΠ½ΡΡŽΡ‚ΡΡ ΠΈ ΡΡ€Π°Π²Π½ΠΈΠ²Π°ΡŽΡ‚ΡΡ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ C ++ с ΡΠΎΠΎΡ‚Π²Π΅Ρ‚ΡΡ‚Π²ΡƒΡŽΡ‰ΠΈΠΌΠΈ функциями Java, Ρ‚Π°ΠΊΠΈΠΌΠΈ ΠΊΠ°ΠΊ конструкторы, ΡˆΠ°Π±Π»ΠΎΠ½Ρ‹, обобщСния ΠΈ Ρ‚. Π”.

    ПослСднСС ΠΈΠ·Π΄Π°Π½ΠΈΠ΅ этой ΠΊΠ½ΠΈΠ³ΠΈ, Core Java 11th Edition, ΠΏΠΎΠ»Π½ΠΎΡΡ‚ΡŒΡŽ ΠΎΠ±Π½ΠΎΠ²Π»Π΅Π½ΠΎ ΠΈ ΠΎΡ…Π²Π°Ρ‚Ρ‹Π²Π°Π΅Ρ‚ Java SE 8, 9, 10 ΠΈ 11, Ρ‡Ρ‚ΠΎ ΠΎΠ·Π½Π°Ρ‡Π°Π΅Ρ‚, Ρ‡Ρ‚ΠΎ Π²Ρ‹ ΠΈΠ·ΡƒΡ‡ΠΈΡ‚Π΅ всС Π²Π°ΠΆΠ½Ρ‹Π΅ Π½ΠΎΠ²Ρ‹Π΅ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ, Ρ‚Π°ΠΊΠΈΠ΅ ΠΊΠ°ΠΊ лямбда-Π²Ρ‹Ρ€Π°ΠΆΠ΅Π½ΠΈΠ΅, Stream API, Π½Π΅ΠΎΠ±ΡΠ·Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎ, Π΄Π°Ρ‚Π° ΠΈ врСмя. API ΠΈΠ· Java 8, Ρ„Π°Π±Ρ€ΠΈΡ‡Π½Ρ‹Π΅ ΠΌΠ΅Ρ‚ΠΎΠ΄Ρ‹ Π² коллСкциях ΠΈΠ· Java 9, var для локальной ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½ΠΎΠΉ ΠΈΠ· Java 10 ΠΈ ΠΌΠ½ΠΎΠ³ΠΈΠ΅ Π΄Ρ€ΡƒΠ³ΠΈΠ΅.

    Π’ случаС, Ссли Π²Ρ‹ ΡƒΠΆΠ΅ Π·Π½Π°ΠΊΠΎΠΌΡ‹ с Java ΠΈ Ρ…ΠΎΡ‚ΠΈΡ‚Π΅ ΡƒΠ·Π½Π°Ρ‚ΡŒ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ ΠΎ Π½ΠΎΠ²Ρ‹Ρ… функциях Java, Π²Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΈΡ‚ΡŒ ΠΌΠΎΠΉ список курсов, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΡƒΠ·Π½Π°Ρ‚ΡŒ ΠΎ Π½ΠΎΠ²Ρ‹Ρ… возмоТностях ΠΎΡ‚ Java 9 Π΄ΠΎ Java 12.Π­Ρ‚Π° ΠΊΠ½ΠΈΠ³Π° Ρ‚Π°ΠΊΠΆΠ΅ содСрТит ΡΠΎΠΎΡ‚Π²Π΅Ρ‚ΡΡ‚Π²ΡƒΡŽΡ‰ΠΈΠ΅ Π·Π°ΠΌΠ΅Ρ‚ΠΊΠΈ ΠΎ схоТих функциях C ++, Ρ‡Ρ‚ΠΎ Π΄Π΅Π»Π°Π΅Ρ‚ Π΅Π΅, ΠΏΠΎΠΆΠ°Π»ΡƒΠΉ, Π»ΡƒΡ‡ΡˆΠ΅ΠΉ ΠΊΠ½ΠΈΠ³ΠΎΠΉ ΠΏΠΎ основам Java для программистов Π½Π° C / C ++.

    4. Π“Π»Π°Π²Π° пСрвая Java

    Всякий Ρ€Π°Π·, ΠΊΠΎΠ³Π΄Π° я ΡƒΠΏΠΎΠΌΠΈΠ½Π°ΡŽ Head First Java, ΠΏΠ΅Ρ€Π²Ρ‹ΠΉ вопрос, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ ΠΏΡ€ΠΈΡ…ΠΎΠ΄ΠΈΡ‚ Π² Π³ΠΎΠ»ΠΎΠ²Ρƒ, — Π°ΠΊΡ‚ΡƒΠ°Π»ΡŒΠ½Π° Π»ΠΈ эта ΠΊΠ½ΠΈΠ³Π° сСгодня ΠΈΠ»ΠΈ Π½Π΅Ρ‚. ΠŸΠΎΡΠΊΠΎΠ»ΡŒΠΊΡƒ ΠΊΠ½ΠΈΠ³Π° Π½Π΅ ΠΎΠ±Π½ΠΎΠ²Π»Π΅Π½Π° ​​для Java SE 8, это явно Π½Π΅ самая соврСмСнная ΠΊΠ½ΠΈΠ³Π° ΠΏΠΎ Java для Π½Π°Ρ‡ΠΈΠ½Π°ΡŽΡ‰ΠΈΡ…, Π½ΠΎ ΠΊΠΎΠ³Π΄Π° Π΄Π΅Π»ΠΎ Π΄ΠΎΡ…ΠΎΠ΄ΠΈΡ‚ Π΄ΠΎ Π²Ρ‹Π±ΠΎΡ€Π° ΠΊΠ½ΠΈΠ³ для Π½Π°Ρ‡ΠΈΠ½Π°ΡŽΡ‰ΠΈΡ…, ΡΡ‚ΠΈΠ»ΡŒ обучСния ΠΈΠ³Ρ€Π°Π΅Ρ‚ Π²Π°ΠΆΠ½ΡƒΡŽ Ρ€ΠΎΠ»ΡŒ, Π° ΠΊΠ½ΠΈΠ³ΠΈ Head First ΠΏΠΎΠ»ΡƒΡ‡Π°ΡŽΡ‚ ΠΎΡ†Π΅Π½ΠΊΡƒ большой Ρ‚Π°ΠΌ.

    Π•Ρ‰Π΅ ΠΎΠ΄Π½Π° Π²Π΅Ρ‰ΡŒ, которая Ρ€Π°Π±ΠΎΡ‚Π°Π΅Ρ‚ Π² ΠΏΠΎΠ»ΡŒΠ·Ρƒ Head First Java, Π·Π°ΠΊΠ»ΡŽΡ‡Π°Π΅Ρ‚ΡΡ Π² Ρ‚ΠΎΠΌ, Ρ‡Ρ‚ΠΎ основы Java Π½Π΅ сильно измСнились Π·Π° послСдниС Π΄Π΅ΡΡΡ‚ΡŒ ΠΈΠ»ΠΈ Π΄Π²Π° дСсятилСтия. Π˜Ρ‚Π°ΠΊ, ΠΊΠ°ΠΊ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Π²Ρ‹ построитС основы, Π²Ρ‹ всСгда ΠΌΠΎΠΆΠ΅Ρ‚Π΅ ΠΎΠ±Π½ΠΎΠ²ΠΈΡ‚ΡŒ сСбя, ΠΏΡ€ΠΎΡ‡ΠΈΡ‚Π°Π² Π»ΡŽΠ±Ρ‹Π΅ ΠΏΡ€ΠΈΠ»ΠΈΡ‡Π½Ρ‹Π΅ ΠΊΠ½ΠΈΠ³ΠΈ ΠΏΠΎ Java 8 ΠΈΠ»ΠΈ ΠΏΡ€ΠΈΡΠΎΠ΅Π΄ΠΈΠ½ΠΈΠ²ΡˆΠΈΡΡŒ ΠΊ курсу, Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, Π§Ρ‚ΠΎ Π½ΠΎΠ²ΠΎΠ³ΠΎ Π² Java 8 Π½Π° Pluralsight.

    ΠšΠΎΡ€ΠΎΡ‡Π΅ говоря, Head First Java — Π½Π΅ Π»ΡƒΡ‡ΡˆΠ°Ρ ΠΊΠ½ΠΈΠ³Π° ΠΏΠΎ ядру Java , ΠΏΠΎΡΠΊΠΎΠ»ΡŒΠΊΡƒ ΠΎΠ½Π° Π½Π΅ самая соврСмСнная, Π½ΠΎ всС ΠΆΠ΅ Ρ…ΠΎΡ€ΠΎΡˆΠ°Ρ для Π½ΠΎΠ²ΠΈΡ‡ΠΊΠΎΠ². Π― ΠΎΡ‡Π΅Π½ΡŒ надСюсь, Ρ‡Ρ‚ΠΎ Π°Π²Ρ‚ΠΎΡ€ ΠΈ ΠΈΠ·Π΄Π°Ρ‚Π΅Π»ΡŒΡΡ‚Π²ΠΎ осознали, Ρ‡Ρ‚ΠΎ ΠΏΠΎΡ€Π° ΠΎΠ±Π½ΠΎΠ²ΠΈΡ‚ΡŒ ΠΊΠ½ΠΈΠ³Ρƒ для Java 8 ΠΈ снова ΡΠ΄Π΅Π»Π°Ρ‚ΡŒ Π΅Π΅ Π²Π΅Π»ΠΈΠΊΠΎΠ»Π΅ΠΏΠ½ΠΎΠΉ.

    5. Java: руководство для Π½Π°Ρ‡ΠΈΠ½Π°ΡŽΡ‰ΠΈΡ…

    Если Π²Ρ‹ Π½ΠΎΠ²ΠΈΡ‡ΠΎΠΊ Π² ΠΌΠΈΡ€Π΅ программирования ΠΈ ΡƒΡ‡ΠΈΡ‚Π΅ΡΡŒ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ языка программирования Java, Ρ‚ΠΎ Π²Π°ΠΌ слСдуСт Π²Ρ‹Π±Ρ€Π°Ρ‚ΡŒ эту ΠΊΠ½ΠΈΠ³Ρƒ. Книга начинаСтся с нуля, Π° Π·Π°Ρ‚Π΅ΠΌ строится ΠΎΡ‚Ρ‚ΡƒΠ΄Π°.

    Π’Ρ‹ Π½Π°ΠΉΠ΄Π΅Ρ‚Π΅ мноТСство простых для понимания ΠΏΡ€ΠΈΠΌΠ΅Ρ€ΠΎΠ², сопровоТдаСмых Ρ‚Π²Π΅Ρ€Π΄ΠΎΠΉ Ρ‚Π΅ΠΎΡ€ΠΈΠ΅ΠΉ ΠΈ объяснСниями. ΠšΠΎΡ€ΠΎΡ‡Π΅ говоря, это простая ΠΈ фантастичСская ΠΊΠ½ΠΈΠ³Π° для программистов, Π½Π΅ ΠΈΠΌΠ΅ΡŽΡ‰ΠΈΡ… ΠΎΠΏΡ‹Ρ‚Π° программирования. Π›ΡƒΡ‡ΡˆΠ°Ρ Ρ‡Π°ΡΡ‚ΡŒ ΠΊΠ½ΠΈΠ³ΠΈ — это Ρ‚ΠΎ, Ρ‡Ρ‚ΠΎ ΠΎΠ½Π° постоянно обновлялась, послСднСС ΠΈΠ·Π΄Π°Π½ΠΈΠ΅ этой ΠΊΠ½ΠΈΠ³ΠΈ, Java: A Beginner’s Guide, 8th Edition ΠΎΡ…Π²Π°Ρ‚Ρ‹Π²Π°Π΅Ρ‚ Π΄ΠΎ Java SE 11, Ρ‡Ρ‚ΠΎ идСально.

    ΠŸΡ€ΠΈ ΠΏΠΎΠΊΡƒΠΏΠΊΠ΅ ΠΊΠ½ΠΈΠ³ΠΈ ΡƒΠ±Π΅Π΄ΠΈΡ‚Π΅ΡΡŒ, Ρ‡Ρ‚ΠΎ Π²Ρ‹ ΠΏΠΎΠΊΡƒΠΏΠ°Π΅Ρ‚Π΅ ΠΊΠ½ΠΈΠ³Ρƒ Π² мягкой ΠΎΠ±Π»ΠΎΠΆΠΊΠ΅ ΠΈ ΡΠ»Π΅ΠΊΡ‚Ρ€ΠΎΠ½Π½ΡƒΡŽ ΠΊΠ½ΠΈΠ³Ρƒ, это даст Π²Π°ΠΌ Π²Π΅Ρ€ΡΠΈΡŽ ΠΊΠ½ΠΈΠ³ΠΈ Π² Ρ„ΠΎΡ€ΠΌΠ°Ρ‚Π΅ PDF, ΠΊΠΎΡ‚ΠΎΡ€ΡƒΡŽ Π²Ρ‹ смоТСтС Ρ‡ΠΈΡ‚Π°Ρ‚ΡŒ Π²ΠΎ врСмя ΠΏΡƒΡ‚Π΅ΡˆΠ΅ΡΡ‚Π²ΠΈΡ. Π’Π°ΠΊΠΆΠ΅ доступна вСрсия для Kindle. Π― Ρ‚Π°ΠΊΠΆΠ΅ Ρ€Π΅ΠΊΠΎΠΌΠ΅Π½Π΄ΡƒΡŽ ΠΎΠ±ΡŠΠ΅Π΄ΠΈΠ½ΠΈΡ‚ΡŒ эту ΠΊΠ½ΠΈΠ³Ρƒ с Π²ΡΠ΅ΠΎΠ±ΡŠΠ΅ΠΌΠ»ΡŽΡ‰ΠΈΠΌ курсом Java, Ρ‚Π°ΠΊΠΈΠΌ ΠΊΠ°ΠΊ The Complete Java Masterclass , Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΡƒΡ‡ΠΈΡ‚ΡŒΡΡ Π»ΡƒΡ‡ΡˆΠ΅. ΠšΡƒΡ€Ρ ΠΏΠΎΠΌΠΎΠ³Π°Π΅Ρ‚ Π² Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΌ Π°ΠΊΡ‚ΠΈΠ²Π½ΠΎΠΌ ΠΎΠ±ΡƒΡ‡Π΅Π½ΠΈΠΈ, Π° ΠΊΠ½ΠΈΠ³Π° Π΄Π°Π΅Ρ‚ ΠΏΠΎΠ΄Ρ€ΠΎΠ±Π½Ρ‹Π΅ объяснСния.

    Π­Ρ‚ΠΎ всС ΠΎ Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Ρ… ΠΈΠ· Π»ΡƒΡ‡ΡˆΠΈΡ… ΠΊΠ½ΠΈΠ³ ΠΏΠΎ основам Java для Π½Π°Ρ‡ΠΈΠ½Π°ΡŽΡ‰ΠΈΡ…. .Если Π²Ρ‹ Π½Π°Ρ‡ΠΈΠ½Π°Π΅Ρ‚Π΅ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ Π½Π° Java, эта ΠΊΠ½ΠΈΠ³Π° ΠΏΠΎΠΌΠΎΠΆΠ΅Ρ‚ Π²Π°ΠΌ Π»ΡƒΡ‡ΡˆΠ΅ ΠΏΠΎΠ½ΡΡ‚ΡŒ основы ядра Java. Π― Π½Π°ΡΡ‚ΠΎΡΡ‚Π΅Π»ΡŒΠ½ΠΎ Ρ€Π΅ΠΊΠΎΠΌΠ΅Π½Π΄ΡƒΡŽ Π²Ρ‹Π±Ρ€Π°Ρ‚ΡŒ ΠΎΠ΄Π½Ρƒ ΠΈΠ· ΠΊΠ½ΠΈΠ³ ΠΈΠ· списка ΠΈ Π·Π°ΠΏΠΎΠ»Π½ΠΈΡ‚ΡŒ Π΅Π΅ Π΄Π²Π°ΠΆΠ΄Ρ‹, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΏΠΎΠ»ΡƒΡ‡ΠΈΡ‚ΡŒ Π±ΠΎΠ»ΡŒΡˆΠΈΠ½ΡΡ‚Π²ΠΎ ΠΈΠ· Π½ΠΈΡ….

    ΠŸΡ€ΠΎΡ‡ΠΈΡ‚Π°Π² ΠΊΠ½ΠΈΠ³Ρƒ Π΄Π²Π°ΠΆΠ΄Ρ‹, Π²Ρ‹ ΠΏΠΎΠΉΠΌΠ΅Ρ‚Π΅ всС основы Java ΠΈ Π΅Π΅ Π²Π΅Π»ΠΈΠΊΠΎΠ»Π΅ΠΏΠ½ΠΎΠ³ΠΎ API. ПослС этого Π²Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ Π²Ρ‹Π±Ρ€Π°Ρ‚ΡŒ большС ΠΊΠ½ΠΈΠ³, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΡƒΠ»ΡƒΡ‡ΡˆΠΈΡ‚ΡŒ свои знания языка Java ΠΈ API, Π²Π°ΠΌ Π½Π΅ Π½ΡƒΠΆΠ½ΠΎ Ρ‡ΠΈΡ‚Π°Ρ‚ΡŒ ΠΈΡ… слово Π² слово, Π²Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ ΠΏΡ€ΠΎΡΠΌΠ°Ρ‚Ρ€ΠΈΠ²Π°Ρ‚ΡŒ Π³Π»Π°Π²Ρ‹ ΠΈ Π΄Π΅Ρ‚Π°Π»ΠΈ, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Π²Ρ‹ ΡƒΠΆΠ΅ Π·Π½Π°Π΅Ρ‚Π΅.

    ΠŸΠΎΡΠΊΠΎΠ»ΡŒΠΊΡƒ Java ΠΎΠ±ΡˆΠΈΡ€Π½Π° ΠΈ нСдостаточно просто Π·Π½Π°Ρ‚ΡŒ основы, послС Ρ‚ΠΎΠ³ΠΎ, ΠΊΠ°ΠΊ Π²Ρ‹ ΠΈΠ·ΡƒΡ‡ΠΈΡ‚Π΅ основы ΠΈ ΠΏΠΎΠΉΠΌΠ΅Ρ‚Π΅ Java, Π²Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ ΠΈΠ·ΡƒΡ‡ΠΈΡ‚ΡŒ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠΉ список ΠΊΠ½ΠΈΠ³, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΏΠΎ-настоящСму ΡΡ‚Π°Ρ‚ΡŒ ΠΎΠΏΡ‹Ρ‚Π½Ρ‹ΠΌ программистом Π½Π° Java. ΠšΠ°ΠΆΠ΄Ρ‹ΠΉ список содСрТит ΠΊΠ½ΠΈΠ³ΠΈ, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΡΠ΄Π΅Π»Π°ΡŽΡ‚ вас экспСртом Π² этой ΠΊΠΎΠ½ΠΊΡ€Π΅Ρ‚Π½ΠΎΠΉ области, Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, ΠΏΠ°Ρ€Π°Π»Π»Π΅Π»ΠΈΠ·ΠΌ, Π²Π½ΡƒΡ‚Ρ€Π΅Π½Π½Π΅Π΅ устройство JVM ΠΈ настройка ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΠΈ, ΠΌΠΎΠ΄ΡƒΠ»ΡŒΠ½ΠΎΠ΅ тСстированиС, Spring, Hibernate ΠΈ Ρ‚. Π”.

    Π­Ρ‚ΠΎΡ‚ список особСнно ΠΏΠΎΠ»Π΅Π·Π΅Π½ для ΠΎΠΏΡ‹Ρ‚Π½Ρ‹Ρ… ΠΈ срСдних Java-программистов с нСсколькими Π»Π΅Ρ‚ Ρ€Π΅Π°Π»ΡŒΠ½ΠΎΠ³ΠΎ ΠΎΠΏΡ‹Ρ‚Π° программирования Π½Π° Java.

    Π”ΠΎΠΏΠΎΠ»Π½ΠΈΡ‚Π΅Π»ΡŒΠ½Π°Ρ Π»ΠΈΡ‚Π΅Ρ€Π°Ρ‚ΡƒΡ€Π°

    Бпасибо, Ρ‡Ρ‚ΠΎ ΠΏΡ€ΠΎΡ‡ΠΈΡ‚Π°Π»ΠΈ эту ΡΡ‚Π°Ρ‚ΡŒΡŽ, Ссли Ρƒ вас Π΅ΡΡ‚ΡŒ прСдлоТСния, Π½Π΅ ΡΡ‚Π΅ΡΠ½ΡΠΉΡ‚Π΅ΡΡŒ ΠΎΡΡ‚Π°Π²Π»ΡΡ‚ΡŒ ΠΊΠΎΠΌΠΌΠ΅Π½Ρ‚Π°Ρ€ΠΈΠΈ. Если Π²Π°ΠΌ ΠΏΠΎΠ½Ρ€Π°Π²ΠΈΠ»Π°ΡΡŒ эта ΡΡ‚Π°Ρ‚ΡŒΡ ΠΈ Ρ€Π΅ΠΊΠΎΠΌΠ΅Π½Π΄ΠΎΠ²Π°Π½Π½Ρ‹Π΅ ΠΊΠ½ΠΈΠ³ΠΈ, ΠΏΠΎΠ΄Π΅Π»ΠΈΡ‚Π΅ΡΡŒ Сю с Π΄Ρ€ΡƒΠ·ΡŒΡΠΌΠΈ ΠΈ ΠΊΠΎΠ»Π»Π΅Π³Π°ΠΌΠΈ.

    Если Π²Ρ‹ ΠΈΡ‰Π΅Ρ‚Π΅ бСсплатныС ΠΎΠ½Π»Π°ΠΉΠ½-курсы, Ρ‡Ρ‚ΠΎΠ±Ρ‹ Π½Π°Ρ‡Π°Ρ‚ΡŒ своС ΠΏΡƒΡ‚Π΅ΡˆΠ΅ΡΡ‚Π²ΠΈΠ΅ ΠΏΠΎ Core Java, Π²Ρ‹ Ρ‚Π°ΠΊΠΆΠ΅ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ ΠΎΠ·Π½Π°ΠΊΠΎΠΌΠΈΡ‚ΡŒΡΡ со списком

    для Π½Π°Ρ‡ΠΈΠ½Π°ΡŽΡ‰ΠΈΡ… Π½Π° Medium.

    10 основных ΠΊΠΎΠ½Ρ†Π΅ΠΏΡ†ΠΈΠΉ Java

    [ВсСго: 3 Π‘Ρ€Π΅Π΄Π½Π΅Π΅: 3.7/5]

    Java — ΡΡ‚Π°Ρ€Π΅ΠΉΡˆΠΈΠΉ язык программирования, ΠΏΡ€ΠΈΠΌΠ΅Π½ΠΈΠΌΠΎΡΡ‚ΡŒ ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ³ΠΎ ΠΏΡ€ΠΎΠ΄ΠΎΠ»ΠΆΠ°Π΅Ρ‚ расти. Как Π½ΠΈ ΠΊΡ€ΡƒΡ‚ΠΈ, Java ΠΏΠΎ-ΠΏΡ€Π΅ΠΆΠ½Π΅ΠΌΡƒ ΠΏΡ€Π΅Π΄Π»Π°Π³Π°Π΅Ρ‚ Π³ΠΈΠ±ΠΊΠΎΡΡ‚ΡŒ, ΠΌΠ°ΡΡˆΡ‚Π°Π±ΠΈΡ€ΡƒΠ΅ΠΌΠΎΡΡ‚ΡŒ ΠΈ ΠΏΡ€ΠΎΠ΄ΠΎΠ»ΠΆΠ°Π΅Ρ‚ ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°Ρ‚ΡŒ Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΈΠ· самых слоТных Π²Ρ‹Ρ‡ΠΈΡΠ»ΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹Ρ… систСм Π² ΠΌΠΈΡ€Π΅ .

    НСкоторыС ΠΏΡ‹Ρ‚Π°ΡŽΡ‚ΡΡ ΠΎΡΠ½ΠΎΠ²Ρ‹Π²Π°Ρ‚ΡŒΡΡ Π½Π° Java, ΠΏΡ‹Ρ‚Π°ΡΡΡŒ ΡΠΎΠ·Π΄Π°Ρ‚ΡŒ Π°Π»ΡŒΡ‚Π΅Ρ€Π½Π°Ρ‚ΠΈΠ²Ρƒ (Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, Scala ΠΈ Kotlin) для ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½Π½Ρ‹Ρ… случаСв использования, Ρ‚Π°ΠΊΠΈΡ… ΠΊΠ°ΠΊ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠ° для Android. Однако Π΄Ρ€Π΅Π²Π½ΠΈΠΉ Π³ΠΈΠ³Π°Π½Ρ‚ Π½Π΅ ΠΏΠΎΠ΄Π°Π΅Ρ‚ ΠΏΡ€ΠΈΠ·Π½Π°ΠΊΠΎΠ² отступлСния, ΠΈ, ΠΊ ΡΡ‡Π°ΡΡ‚ΡŒΡŽ, Π―Π²Π° — довольно мягкий Π²Π΅Π»ΠΈΠΊΠ°Π½, Ссли Π²Ρ‹ ΠΏΠΎΠ΄Ρ€ΡƒΠΆΠΈΡ‚Π΅ΡΡŒ с Π½ΠΈΠΌ.Как? ПониманиС Ρ‚ΠΎΠ³ΠΎ, Ρ‡Ρ‚ΠΎ Π²Π»Π°Π΄Π΅Π½ΠΈΠ΅ синтаксисом ΠΈ спортивная Ρ€ΡƒΠ±Π°ΡˆΠΊΠ° — Π½Π΅ СдинствСнноС, Ρ‡Ρ‚ΠΎ Π²Π°ΠΌ Π½ΡƒΠΆΠ½ΠΎ, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΡΡ‚Π°Ρ‚ΡŒ ΠΎΡ‚Π»ΠΈΡ‡Π½Ρ‹ΠΌ Java-Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠΎΠΌ.

    Π•ΡΡ‚ΡŒ большая Ρ€Π°Π·Π½ΠΈΡ†Π° ΠΌΠ΅ΠΆΠ΄Ρƒ ΠΈΠ·ΡƒΡ‡Π΅Π½ΠΈΠ΅ΠΌ основных ΠΏΡ€ΠΈΠ½Ρ†ΠΈΠΏΠΎΠ² ООП Π² Java ΠΈ Ρ‚Π΅ΠΌ, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΡΡ‚Π°Ρ‚ΡŒ Ρ…ΠΎΡ€ΠΎΡˆΠΈΠΌ Java-Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠΎΠΌ. ΠŸΠ΅Ρ€Π²ΠΎΠ΅ — это Ρ‚ΠΎ, Ρ‡Ρ‚ΠΎ ΠΊΠ°ΠΆΠ΄Ρ‹ΠΉ, Ρƒ ΠΊΠΎΠ³ΠΎ Π΅ΡΡ‚ΡŒ доступ ΠΊ Π˜Π½Ρ‚Π΅Ρ€Π½Π΅Ρ‚Ρƒ, ΠΌΠΎΠΆΠ΅Ρ‚ ΠΏΠΎΠ»ΡƒΡ‡ΠΈΡ‚ΡŒ Π·Π° довольно ΠΊΠΎΡ€ΠΎΡ‚ΠΊΠΎΠ΅ врСмя. Π’Ρ‚ΠΎΡ€ΠΎΠ΅ — Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚ Π½Π°ΠΊΠΎΠΏΠ»Π΅Π½Π½ΠΎΠ³ΠΎ ΠΎΠΏΡ‹Ρ‚Π° Π² сочСтании с Ρ‚Π²Π΅Ρ€Π΄Ρ‹ΠΌ ΠΏΠΎΠ½ΠΈΠΌΠ°Π½ΠΈΠ΅ΠΌ ΠΏΡ€ΠΈΠ½Ρ†ΠΈΠΏΠΎΠ² ΠΈ соглашСний проСктирования, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Π΄Π΅Π»Π°ΡŽΡ‚ прилоТСния ΠΈ ΠΊΠΎΠ΄ Π±ΠΎΠ»Π΅Π΅ эффСктивными Π² сопровоТдСнии.

    ΠžΠ±Ρ€Π°Ρ‚ΠΈΡ‚Π΅ Π²Π½ΠΈΠΌΠ°Π½ΠΈΠ΅, Ρ‡Ρ‚ΠΎ Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΈΠ· ΠΏΡ€ΠΈΠ²Π΅Π΄Π΅Π½Π½Ρ‹Ρ… Π½ΠΈΠΆΠ΅ ΠΊΠΎΠ½Ρ†Π΅ΠΏΡ†ΠΈΠΉ Π°ΠΊΡ‚ΡƒΠ°Π»ΡŒΠ½Ρ‹ Π½Π΅ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ для Java, Π½ΠΎ ΠΈ для Π±ΠΎΠ»ΡŒΡˆΠΈΠ½ΡΡ‚Π²Π° ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π½ΠΎ-ΠΎΡ€ΠΈΠ΅Π½Ρ‚ΠΈΡ€ΠΎΠ²Π°Π½Π½Ρ‹Ρ… языков.

    Если Π²Ρ‹ Π½ΠΎΠ²ΠΈΡ‡ΠΎΠΊ Π² Java, это ΠΊΡ€Π°Ρ‚ΠΊΠΎΠ΅ Π²Π²Π΅Π΄Π΅Π½ΠΈΠ΅ Π² Π½Π°ΠΈΠ±ΠΎΠ»Π΅Π΅ Π²Π°ΠΆΠ½Ρ‹Π΅ основныС ΠΊΠΎΠ½Ρ†Π΅ΠΏΡ†ΠΈΠΈ Java (ΠΈ ООП Π² Ρ†Π΅Π»ΠΎΠΌ) ΠΌΠΎΠΆΠ΅Ρ‚ ΠΏΠΎΡΠ»ΡƒΠΆΠΈΡ‚ΡŒ ΠΎΡ‚Π»ΠΈΡ‡Π½ΠΎΠΉ ΡˆΠΏΠ°Ρ€Π³Π°Π»ΠΊΠΎΠΉ Π½Π° вашСм ΠΏΡƒΡ‚ΠΈ ΠΊ Π±ΠΎΠ»Π΅Π΅ эффСктивному ΠΈ дСйствСнному ΠΊΠΎΠ΄ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΡŽ. . I Если Π²Ρ‹ ΠΎΠΏΡ‹Ρ‚Π½Ρ‹ΠΉ ΡΡ‚Π°Ρ€ΡˆΠΈΠΉ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊ, эта коллСкция ΠΈΠ· 10 основных ΠΊΠΎΠ½Ρ†Π΅ΠΏΡ†ΠΈΠΉ проСктирования ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½ΠΎΠ³ΠΎ обСспСчСния Java станСт прСкрасным Π½Π°ΠΏΠΎΠΌΠΈΠ½Π°Π½ΠΈΠ΅ΠΌ ΠΎ Ρ‚ΠΎΠΌ, Ρ‡Ρ‚ΠΎ Π²Π°ΠΆΠ½ΠΎ ΠΏΠΎΠΌΠ½ΠΈΡ‚ΡŒ .

    1.

    DRY & Abstraction

    Π― Π½Π°ΠΏΠΈΡˆΡƒ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ ΠΎΠ΄ΠΈΠ½ Ρ€Π°Π·: ΠΏΠΎΠ²Ρ‚ΠΎΡ€Π΅Π½ΠΈΠ΅ нСэффСктивно. ΠŸΡ€ΠΈΠ½Ρ†ΠΈΠΏ DRY, ΠΏΡ€ΠΈΠΌΠ΅Π½ΠΈΠΌΡ‹ΠΉ Π½Π΅ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ ΠΊ Java, ООП ΠΈΠ»ΠΈ Π΄Π°ΠΆΠ΅ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΡŽ, ΠΎΠ·Π½Π°Ρ‡Π°Π΅Ρ‚ просто Β«Π½Π΅ повторяйся». Если ΡƒΡ‚ΠΎΡ‡Π½ΠΈΡ‚ΡŒ, это ΡƒΠΊΠ°Π·Π°Π½ΠΎ ΠΊΠ°ΠΊ «КаТдая Ρ‡Π°ΡΡ‚ΡŒ знания Π΄ΠΎΠ»ΠΆΠ½Π° ΠΈΠΌΠ΅Ρ‚ΡŒ СдинствСнноС, нСдвусмыслСнноС ΠΈ Π°Π²Ρ‚ΠΎΡ€ΠΈΡ‚Π΅Ρ‚Π½ΠΎΠ΅ прСдставлСниС Π² систСмС».

    Как Π²Ρ‹, Π½Π°Π²Π΅Ρ€Π½ΠΎΠ΅, Π·Π½Π°Π΅Ρ‚Π΅, ΠΎΠ΄Π½ΠΎΠΉ ΠΈΠ· основных ΡΠΈΠ»ΡŒΠ½Ρ‹Ρ… сторон Java являСтся Π΅Π΅ ΡΡ„Ρ„Π΅ΠΊΡ‚ΠΈΠ²Π½ΠΎΡΡ‚ΡŒ Π² ΠΌΠ½ΠΎΠ³ΠΎΠΊΡ€Π°Ρ‚Π½ΠΎΠΌ использовании ΠΊΠΎΠ΄Π° ΠΈ рСсурсов, ΠΈ этот ΠΏΡ€ΠΈΠ½Ρ†ΠΈΠΏ являСтся лишь ΠΎΠ΄Π½ΠΈΠΌ ΠΈΠ· Π½Π΅ΡΠΊΠΎΠ»ΡŒΠΊΠΈΡ…, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ это ΠΎΡ‚Ρ€Π°ΠΆΠ°ΡŽΡ‚.Π’Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ ΠΈΠ·Π±Π΅ΠΆΠ°Ρ‚ΡŒ ΠΏΠΎΠ²Ρ‚ΠΎΡ€Π΅Π½ΠΈΠΉ, ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡ Π°Π±ΡΡ‚Ρ€Π°ΠΊΡ†ΠΈΡŽ , ΠΎΠ΄ΠΈΠ½ ΠΈΠ· Ρ‡Π΅Ρ‚Ρ‹Ρ€Π΅Ρ… основных ΠΏΡ€ΠΈΠ½Ρ†ΠΈΠΏΠΎΠ² ООП.

    Π’ Java это ΠΎΠ·Π½Π°Ρ‡Π°Π΅Ρ‚ использованиС интСрфСйсов ΠΈ абстрактных классов , ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Π΄Π΅Π»Π°ΡŽΡ‚ большС, Ρ‡Π΅ΠΌ просто экономят наТатия клавиш. Помимо Ρ‚ΠΎΠ³ΠΎ, Ρ‡Ρ‚ΠΎ абстракция ΠΏΠΎΠΌΠΎΠ³Π°Π΅Ρ‚ ΠΈΠ·Π±Π΅ΠΆΠ°Ρ‚ΡŒ ΠΏΠΎΠ²Ρ‚ΠΎΡ€Π΅Π½ΠΈΠΉ, ΠΎΠ½Π° ΠΏΡ€ΠΈΠ·Π²Π°Π½Π° Β«ΡΠΊΡ€Ρ‹Ρ‚ΡŒΒ» Π²Π½ΡƒΡ‚Ρ€Π΅Π½Π½ΠΈΠ΅ Π΄Π΅Ρ‚Π°Π»ΠΈ Ρ€Π΅Π°Π»ΠΈΠ·Π°Ρ†ΠΈΠΈ. Вакая консолидация ΡƒΠΏΡ€ΠΎΡ‰Π°Π΅Ρ‚ Ρ‡Ρ‚Π΅Π½ΠΈΠ΅ ΠΈ сопровоТдСниС ΠΊΠΎΠ΄Π°.

    2.

    ΠŸΠΎΠ»ΠΈΠΌΠΎΡ€Ρ„ΠΈΠ·ΠΌ

    Π”Ρ€ΡƒΠ³ΠΎΠΉ ΠΏΡ€ΠΈΠ½Ρ†ΠΈΠΏ ООП для ΠΏΠΎΠ²Ρ‚ΠΎΡ€Π½ΠΎΠ³ΠΎ использования ΠΈ ΠΏΠΎΠ²Ρ‹ΡˆΠ΅Π½ΠΈΡ эффСктивности — это ΠΏΠΎΠ»ΠΈΠΌΠΎΡ€Ρ„ΠΈΠ·ΠΌ , ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ способствуСт использованию ΠΎΠ±Ρ‰Π΅Π³ΠΎ интСрфСйса вмСсто ΠΊΠΎΠ½ΠΊΡ€Π΅Ρ‚Π½ΠΎΠΉ Ρ€Π΅Π°Π»ΠΈΠ·Π°Ρ†ΠΈΠΈ .ΠŸΠΎΡΠΊΠΎΠ»ΡŒΠΊΡƒ ΠΏΠΎΠ»ΠΈΠΌΠΎΡ€Ρ„ΠΈΠ·ΠΌ Π±ΡƒΠΊΠ²Π°Π»ΡŒΠ½ΠΎ ΠΎΠ·Π½Π°Ρ‡Π°Π΅Ρ‚ Π½Π°Π»ΠΈΡ‡ΠΈΠ΅ ΠΎΠ΄Π½ΠΎΠΉ Π²Π΅Ρ‰ΠΈ Π²ΠΎ ΠΌΠ½ΠΎΠ³ΠΈΡ… Ρ„ΠΎΡ€ΠΌΠ°Ρ…, ΠΎΠ½ позволяСт ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ ΠΎΠ΄ΠΈΠ½ ΠΎΠ±Ρ‰ΠΈΠΉ интСрфСйс для ΠΎΠ±Ρ‰Π΅Π³ΠΎ класса дСйствий. ИспользованиС ΠΎΠ±Ρ‰Π΅Π³ΠΎ интСрфСйса позволяСт ΡƒΠΏΡ€ΠΎΡΡ‚ΠΈΡ‚ΡŒ ΠΈ ΡƒΡΠΊΠΎΡ€ΠΈΡ‚ΡŒ ΠΈΠ½Ρ‚Π΅Π³Ρ€Π°Ρ†ΠΈΡŽ Π½ΠΎΠ²Ρ‹Ρ… Ρ‚Ρ€Π΅Π±ΠΎΠ²Π°Π½ΠΈΠΉ ΠΈΠ»ΠΈ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΉ Π±Π΅Π· Ρ€ΡƒΡ‡Π½ΠΎΠ³ΠΎ измСнСния всСй ΠΊΠΎΠ΄ΠΎΠ²ΠΎΠΉ Π±Π°Π·Ρ‹.

    Π’ Java ΠΏΠΎΠ»ΠΈΠΌΠΎΡ€Ρ„ΠΈΠ·ΠΌ Ρ€Π΅Π°Π»ΠΈΠ·ΠΎΠ²Π°Π½ с ΠΏΠ΅Ρ€Π΅Π³Ρ€ΡƒΠ·ΠΊΠΎΠΉ ΠΌΠ΅Ρ‚ΠΎΠ΄Π° ΠΈ ΠΏΠ΅Ρ€Π΅ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½ΠΈΠ΅ΠΌ ΠΌΠ΅Ρ‚ΠΎΠ΄Π° . Когда Π² ΠΎΠ΄Π½ΠΎΠΌ классС ΠΏΡ€ΠΈΡΡƒΡ‚ΡΡ‚Π²ΡƒΡŽΡ‚ Ρ€Π°Π·Π»ΠΈΡ‡Π½Ρ‹Π΅ ΠΌΠ΅Ρ‚ΠΎΠ΄Ρ‹ с ΠΎΠ΄Π½ΠΈΠΌ ΠΈ Ρ‚Π΅ΠΌ ΠΆΠ΅ ΠΈΠΌΠ΅Π½Π΅ΠΌ, происходит ΠΏΠ΅Ρ€Π΅Π³Ρ€ΡƒΠ·ΠΊΠ° ΠΌΠ΅Ρ‚ΠΎΠ΄Π°.Π Π°Π·Π»ΠΈΡ‡Π½Ρ‹Π΅ ΠΌΠ΅Ρ‚ΠΎΠ΄Ρ‹, хотя ΠΈ ΠΈΠ΄Π΅Π½Ρ‚ΠΈΡ‡Π½Ρ‹ ΠΏΠΎ названию, Ρ€Π°Π·Π»ΠΈΡ‡Π°ΡŽΡ‚ΡΡ ΠΏΠΎ количСству, порядку ΠΈ Ρ‚ΠΈΠΏΠ°ΠΌ ΠΈΡ… ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€ΠΎΠ². Когда Π΄ΠΎΡ‡Π΅Ρ€Π½ΠΈΠΉ класс пСрСопрСдСляСт ΠΌΠ΅Ρ‚ΠΎΠ΄ своСго родитСля, происходит ΠΏΠ΅Ρ€Π΅ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½ΠΈΠ΅ ΠΌΠ΅Ρ‚ΠΎΠ΄Π°.

    3.

    Π˜Π½ΠΊΠ°ΠΏΡΡƒΠ»ΡΡ†ΠΈΡ

    НС ΠΌΠ΅Π½Π΅Π΅ Π²Π°ΠΆΠ½Ρ‹ΠΌ, Ρ‡Π΅ΠΌ ΡΡ„Ρ„Π΅ΠΊΡ‚ΠΈΠ²Π½ΠΎΡΡ‚ΡŒ вашСго кодирования, являСтся Π·Π°Ρ‰ΠΈΡ‚Π° Π΄Π°Π½Π½Ρ‹Ρ…, хранящихся Π² полях Π²Π½ΡƒΡ‚Ρ€ΠΈ классов, ΠΎΡ‚ общСсистСмного доступа. Π­Ρ‚ΠΎ достигаСтся Π·Π° счСт инкапсуляции — Π²ΠΈΡ€Ρ‚ΡƒΠ°Π»ΡŒΠ½ΠΎΠΉ капсулы для Π΄Π°Π½Π½Ρ‹Ρ… ΠΈ ΠΊΠΎΠ΄Π° Π²Π½ΡƒΡ‚Ρ€ΠΈ самого класса.

    Π’ Java инкапсуляция ΠΌΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ Ρ€Π΅Π°Π»ΠΈΠ·ΠΎΠ²Π°Π½Π° посрСдством сохранСния Π·Π°ΠΊΡ€Ρ‹Ρ‚Ρ‹Ρ… ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Ρ… ΠΈ ΠΌΠ΅Ρ‚ΠΎΠ΄ΠΎΠ² класса ΠΏΠΎ ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ ΠΈ прСдоставлСния доступа ΠΊ Π½ΠΈΠΌ Ρ‡Π΅Ρ€Π΅Π· общСдоступныС ΠΌΠ΅Ρ‚ΠΎΠ΄Ρ‹ получСния ΠΈ установки. ΠŸΡ€ΠΈΠΌΠ΅Ρ€ΠΎΠΌ ΠΏΠΎΠ»Π½ΠΎΡΡ‚ΡŒΡŽ инкапсулированных классов ΡΠ²Π»ΡΡŽΡ‚ΡΡ Java Beans.

    ΠšΡ€ΠΎΠΌΠ΅ Ρ‚ΠΎΠ³ΠΎ, инкапсуляция ΠΈΠΌΠ΅Π΅Ρ‚ Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΠ΅ прСимущСство, Π·Π°ΠΊΠ»ΡŽΡ‡Π°ΡŽΡ‰Π΅Π΅ΡΡ Π² ΡƒΠΏΡ€ΠΎΡ‰Π΅Π½ΠΈΠΈ тСстирования ΠΈ сопровоТдСния ΠΊΠΎΠ΄Π°, Π° нСсколько шаблонов проСктирования Java эффСктивно ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽΡ‚ Π΅Π΅.

    4.

    ДСлСгация

    Если Ρƒ вас ΠΊΠΎΠ³Π΄Π°-Π»ΠΈΠ±ΠΎ Π±Ρ‹Π»Π° Π³Ρ€ΡƒΠΏΠΏΠ° Π΄Ρ€ΡƒΠ·Π΅ΠΉ, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΏΠΎΠΌΠΎΠ³Π°Π»ΠΈ Π²Π°ΠΌ ΠΏΠ΅Ρ€Π΅Π΅Ρ…Π°Ρ‚ΡŒ, Π²Ρ‹ ΠΏΠΎΠ»Π½ΠΎΡΡ‚ΡŒΡŽ ΠΏΠΎΠ½ΠΈΠΌΠ°Π΅Ρ‚Π΅ Π²Π°ΠΆΠ½ΠΎΡΡ‚ΡŒ дСлСгирования ΠΏΠΎΠ»Π½ΠΎΠΌΠΎΡ‡ΠΈΠΉ.Π’Ρ‹ просто Π½Π΅ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ ΡΠ΄Π΅Π»Π°Ρ‚ΡŒ всС ΡΠ°ΠΌΠΎΡΡ‚ΠΎΡΡ‚Π΅Π»ΡŒΠ½ΠΎ, поэтому, ΠΊΠΎΠ³Π΄Π° ΠΌΠΎΠΆΠ΅Ρ‚Π΅ — Π΄Π΅Π»Π΅Π³ΠΈΡ€ΡƒΠΉΡ‚Π΅.

    ΠœΡ‹ Π½Π΅ Π±ΡƒΠ΄Π΅ΠΌ Π²Π΄Π°Π²Π°Ρ‚ΡŒΡΡ Π² споры ΠΌΠ΅ΠΆΠ΄Ρƒ Π΄Π΅Π»Π΅Π³ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ΠΌ ΠΈ наслСдованиСм ΠΈΠ»ΠΈ Ρ€Π΅ΡˆΠ°Ρ‚ΡŒ, Ρ‡Ρ‚ΠΎ Π»ΡƒΡ‡ΡˆΠ΅. ΠŸΡ€ΠΈ этом Delegation — это ΠΌΠ΅Ρ…Π°Π½ΠΈΠ·ΠΌ абстракции, Ρ†Π΅Π½Ρ‚Ρ€Π°Π»ΠΈΠ·ΡƒΡŽΡ‰ΠΈΠΉ ΠΏΠΎΠ²Π΅Π΄Π΅Π½ΠΈΠ΅ ΠΌΠ΅Ρ‚ΠΎΠ΄Π° , ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ΅ ΠΏΠΎΡ…ΠΎΠΆΠ΅ Π½Π° наслСдованиС, выполняСмоС Π²Ρ€ΡƒΡ‡Π½ΡƒΡŽ Ρ‡Π΅Ρ€Π΅Π· ΠΊΠΎΠΌΠΏΠΎΠ·ΠΈΡ†ΠΈΡŽ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ΠΎΠ².

    По сути, шаблон проСктирования дСлСгирования позволяСт ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Ρƒ Π΄Π΅Π»Π΅Π³Π°Ρ‚Π° Π²Ρ‹Π³Ρ€ΡƒΠΆΠ°Ρ‚ΡŒ Π·Π°Π΄Π°Ρ‡ΠΈ Π²ΠΎ Π²ΡΠΏΠΎΠΌΠΎΠ³Π°Ρ‚Π΅Π»ΡŒΠ½Ρ‹ΠΉ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚. РаспространСнная рСализация этого ΠΏΡ€ΠΈΠ½Ρ†ΠΈΠΏΠ° — Π΄Π΅Π»Π΅Π³ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ событий, ΠΊΠΎΠ³Π΄Π° события ΠΎΡ‚ΠΏΡ€Π°Π²Π»ΡΡŽΡ‚ΡΡ ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠ°ΠΌ.

    ΠšΠ»ΡŽΡ‡Π΅Π²Ρ‹ΠΌΠΈ прСимущСствами дСлСгирования ΠΊΠ°ΠΊ ΠΏΡ€ΠΈΠ½Ρ†ΠΈΠΏΠ° проСктирования являСтся ΡƒΠΌΠ΅Π½ΡŒΡˆΠ΅Π½ΠΈΠ΅ дублирования ΠΊΠΎΠ΄Π° ΠΈ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚ΡŒ Π±ΠΎΠ»Π΅Π΅ Π»Π΅Π³ΠΊΠΎΠ³ΠΎ измСнСния повСдСния, Ρ‡Π΅ΠΌ ΠΏΡ€ΠΈ наслСдовании.

    ΠŸΡ€ΠΈΠΌΠ΅Ρ€Ρ‹ дСлСгирования

    5.

    ΠŸΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ° для интСрфСйса, Π° Π½Π΅ рСализация

    Π­Ρ‚ΠΎ простоС ΠΏΡ€Π΅Π΄Π»ΠΎΠΆΠ΅Π½ΠΈΠ΅, ΠΏΡ€ΠΈΠ΄ΡƒΠΌΠ°Π½Π½ΠΎΠ΅ Π­Ρ€ΠΈΡ…ΠΎΠΌ Π“Π°ΠΌΠΌΠΎΠΉ Π² Π½Π°Ρ‡Π°Π»Π΅ 90-Ρ… Π³ΠΎΠ΄ΠΎΠ² Π² ΠΊΠ½ΠΈΠ³Π΅ Design Patterns: Elements of Reusable Object-Oriented Software (Ρ‚Π°ΠΊΠΆΠ΅ извСстной ΠΊΠ°ΠΊ GoF — Gang of Four), являСтся ΠΎΠ΄Π½ΠΎΠΉ ΠΈΠ· Π½Π°ΠΈΠ±ΠΎΠ»Π΅Π΅ Π²Π°ΠΆΠ½Ρ‹Ρ… ΠΊΠΎΠ½Ρ†Π΅ΠΏΡ†ΠΈΠΉ Π΄ΠΈΠ·Π°ΠΉΠ½Π° Π² ООП Π² Ρ†Π΅Π»ΠΎΠΌ. ΠΈ Π² частности Π² Java.И это Ρ‚ΠΎ, Ρ‡Ρ‚ΠΎ Π²Ρ‹ Π΄ΠΎΠ»ΠΆΠ½Ρ‹ ΠΏΡ€ΠΈΠΌΠ΅Π½ΠΈΡ‚ΡŒ Π² своСм ΠΊΠΎΠ΄Π΅.

    ΠŸΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ для интСрфСйсов — это способ записи классов Π½Π° основС интСрфСйса, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ опрСдСляСт ΠΏΠΎΠ²Π΅Π΄Π΅Π½ΠΈΠ΅ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π° . ΠŸΠ΅Ρ€Π²ΠΎΠ½Π°Ρ‡Π°Π»ΡŒΠ½ΠΎ ΠΌΠΎΠΆΠ΅Ρ‚ ΠΏΠΎΠΊΠ°Π·Π°Ρ‚ΡŒΡΡ, Ρ‡Ρ‚ΠΎ Π²Π°ΠΌ Π½ΡƒΠΆΠ½ΠΎ большС Ρ€Π°Π±ΠΎΡ‚Π°Ρ‚ΡŒ, ΠΏΠΎΡΠΊΠΎΠ»ΡŒΠΊΡƒ Π²Ρ‹ сначала создаСтС интСрфСйс, Π·Π°Ρ‚Π΅ΠΌ опрСдСляСтС Π΅Π³ΠΎ ΠΌΠ΅Ρ‚ΠΎΠ΄Ρ‹ ΠΈ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Π·Π°Ρ‚Π΅ΠΌ ΠΏΠΈΡˆΠ΅Ρ‚Π΅ фактичСский класс с Ρ€Π΅Π°Π»ΠΈΠ·Π°Ρ†ΠΈΠ΅ΠΉ.

    Однако использованиС Ρ‚ΠΈΠΏΠ° интСрфСйса для ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Ρ…, Π²ΠΎΠ·Π²Ρ€Π°Ρ‰Π°Π΅ΠΌΡ‹Ρ… Ρ‚ΠΈΠΏΠΎΠ² ΠΌΠ΅Ρ‚ΠΎΠ΄ΠΎΠ² ΠΈΠ»ΠΈ Ρ‚ΠΈΠΏΠΎΠ² Π°Ρ€Π³ΡƒΠΌΠ΅Π½Ρ‚ΠΎΠ² Π² Java Π΄Π΅Π»Π°Π΅Ρ‚ ΠΊΠΎΠ΄ Π³ΠΈΠ±ΠΊΠΈΠΌ, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ Ρ‚Π°ΠΊΠΆΠ΅ Π»Π΅Π³Ρ‡Π΅ Ρ‚Π΅ΡΡ‚ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ.

    ПослСдниС ΠΏΡΡ‚ΡŒ Π² нашСм спискС — это Ρ‚Π²Π΅Ρ€Π΄Ρ‹Π΅ ΠΏΡ€ΠΈΠ½Ρ†ΠΈΠΏΡ‹. Π’ΠΏΠ΅Ρ€Π²Ρ‹Π΅ ΠΎΠ½ΠΈ Π±Ρ‹Π»ΠΈ ΠΊΠΎΠ½Ρ†Π΅ΠΏΡ‚ΡƒΠ°Π»ΠΈΠ·ΠΈΡ€ΠΎΠ²Π°Π½Ρ‹ Π ΠΎΠ±Π΅Ρ€Ρ‚ΠΎΠΌ К. ΠœΠ°Ρ€Ρ‚ΠΈΠ½ΠΎΠΌ Π² Π΅Π³ΠΎ ΡΡ‚Π°Ρ‚ΡŒΠ΅ 2000 Π³ΠΎΠ΄Π° Β«ΠŸΡ€ΠΈΠ½Ρ†ΠΈΠΏΡ‹ Π΄ΠΈΠ·Π°ΠΉΠ½Π° ΠΈ ΡˆΠ°Π±Π»ΠΎΠ½Ρ‹ Π΄ΠΈΠ·Π°ΠΉΠ½Π°Β», Π° Π·Π°Ρ‚Π΅ΠΌ Π±Ρ‹Π»ΠΈ ΡƒΡΠΎΠ²Π΅Ρ€ΡˆΠ΅Π½ΡΡ‚Π²ΠΎΠ²Π°Π½Ρ‹ Майклом ЀСзСрсом, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ Ρ‚Π°ΠΊΠΆΠ΅ ΠΏΠΎΠ·Π½Π°ΠΊΠΎΠΌΠΈΠ» нас с Π°Π±Π±Ρ€Π΅Π²ΠΈΠ°Ρ‚ΡƒΡ€ΠΎΠΉ S.O.L.I.D.

    Основная Ρ†Π΅Π»ΡŒ, лСТащая Π² основС ΠΏΡ€ΠΈΠ½Ρ†ΠΈΠΏΠΎΠ² SOLID, — это созданиС ΠΊΠΎΠ΄Π°, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ Π»Π΅Π³ΠΊΠΎ ΠΏΠΎΠ½ΡΡ‚ΡŒ ΠΈ ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°Ρ‚ΡŒ, с ΡƒΠΌΠ΅Π½ΡŒΡˆΠ΅Π½ΠΈΠ΅ΠΌ слоТности Π΄Π°ΠΆΠ΅ ΠΏΡ€ΠΈ ΡƒΠ²Π΅Π»ΠΈΡ‡Π΅Π½ΠΈΠΈ Ρ€Π°Π·ΠΌΠ΅Ρ€Π° ΠΈ объСма вашСго прилоТСния.

    6.

    ΠŸΡ€ΠΈΠ½Ρ†ΠΈΠΏ Π΅Π΄ΠΈΠ½ΠΎΠΉ отвСтствСнности

    ΠŸΡ€ΠΈΠ½Ρ†ΠΈΠΏ Π΅Π΄ΠΈΠ½ΠΎΠΉ отвСтствСнности (SRP) гласит, Ρ‡Ρ‚ΠΎ класс Π΄ΠΎΠ»ΠΆΠ΅Π½ ΠΈΠΌΠ΅Ρ‚ΡŒ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ ΠΎΠ΄Π½Ρƒ ΠΎΡ‚Π²Π΅Ρ‚ΡΡ‚Π²Π΅Π½Π½ΠΎΡΡ‚ΡŒ ΠΈ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ ΠΎΠ΄Π½Ρƒ ΠΏΡ€ΠΈΡ‡ΠΈΠ½Ρƒ для измСнСния .

    Π­Ρ‚ΠΎ ΠΈΠΌΠ΅Π΅Ρ‚ смысл (ΠΈ поэтому Ρ‚Ρ€Π΅Π±ΡƒΠ΅Ρ‚ нСбольшого объяснСния), ΠΏΠΎΡΠΊΠΎΠ»ΡŒΠΊΡƒ Π½Π°Π»ΠΈΡ‡ΠΈΠ΅ Π½Π΅ΡΠΊΠΎΠ»ΡŒΠΊΠΈΡ… ΠΏΡ€ΠΈΡ‡ΠΈΠ½ для измСнСния Π² ΠΎΠ΄Π½ΠΎΠΌ классС повлияСт Π½Π° Π²Ρ‹Π²ΠΎΠ΄ ΠΈ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΎΠ½Π°Π»ΡŒΠ½ΠΎΡΡ‚ΡŒ ΠΈ ΠΏΡ€ΠΈΠ²Π΅Π΄Π΅Ρ‚ ΠΊ Ρ‚ΠΎΠΌΡƒ, Ρ‡Ρ‚ΠΎ ваш ΠΊΠΎΠ΄ станСт Π½Π΅ΠΏΠΎΡΠ»ΡƒΡˆΠ½Ρ‹ΠΌ бСспорядком.

    7.

    ΠŸΡ€ΠΈΠ½Ρ†ΠΈΠΏ ΠΎΡ‚ΠΊΡ€Ρ‹Ρ‚-Π·Π°ΠΊΡ€Ρ‹Ρ‚

    Π₯отя Π½Π°Π·Π²Π°Π½ΠΈΠ΅ Π·Π²ΡƒΡ‡ΠΈΡ‚ ΠΎΡ‡Π΅Π½ΡŒ ΠΏΡ€ΠΎΡ‚ΠΈΠ²ΠΎΡ€Π΅Ρ‡ΠΈΠ²ΠΎ (ΠΊΠ°ΠΊ Ρ‡Ρ‚ΠΎ-Ρ‚ΠΎ ΠΌΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ ΠΎΡ‚ΠΊΡ€Ρ‹Ρ‚ΠΎ ΠΈ Π·Π°ΠΊΡ€Ρ‹Ρ‚ΠΎ ΠΎΠ΄Π½ΠΎΠ²Ρ€Π΅ΠΌΠ΅Π½Π½ΠΎ?), На самом Π΄Π΅Π»Π΅ ΠΎΠ½ΠΎ ΠΎΡ‡Π΅Π½ΡŒ просто ΠΈ Π»ΠΎΠ³ΠΈΡ‡Π½ΠΎ. ΠŸΡ€ΠΈΠ½Ρ†ΠΈΠΏ гласит, Ρ‡Ρ‚ΠΎ сущностСй ΠΈΠ»ΠΈ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ΠΎΠ² Π΄ΠΎΠ»ΠΆΠ½Ρ‹ ΠΎΡΡ‚Π°Π²Π°Ρ‚ΡŒΡΡ ΠΎΡ‚ΠΊΡ€Ρ‹Ρ‚Ρ‹ΠΌΠΈ для Ρ€Π°ΡΡˆΠΈΡ€Π΅Π½ΠΈΡ, Π½ΠΎ ΠΎΡΡ‚Π°Π²Π°Ρ‚ΡŒΡΡ Π·Π°ΠΊΡ€Ρ‹Ρ‚Ρ‹ΠΌΠΈ для ΠΌΠΎΠ΄ΠΈΡ„ΠΈΠΊΠ°Ρ†ΠΈΠΈ .

    Π’ Java это ΠΎΠ·Π½Π°Ρ‡Π°Π΅Ρ‚, Ρ‡Ρ‚ΠΎ классы, ΠΌΠ΅Ρ‚ΠΎΠ΄Ρ‹ ΠΈΠ»ΠΈ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ Π΄ΠΎΠ»ΠΆΠ½Ρ‹ Π±Ρ‹Ρ‚ΡŒ ΠΎΡ‚ΠΊΡ€Ρ‹Ρ‚Ρ‹ для добавлСния Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΎΠ½Π°Π»ΡŒΠ½ΠΎΡΡ‚ΠΈ, Π½ΠΎ Π·Π°ΠΊΡ€Ρ‹Ρ‚Ρ‹ для измСнСния Ρ€Π°Π½Π΅Π΅ протСстированного ΠΈ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΎΠ½Π°Π»ΡŒΠ½ΠΎΠ³ΠΎ ΠΊΠΎΠ΄Π°. Π—Π° ΠΈΡΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠ΅ΠΌ, ΠΊΠΎΠ½Π΅Ρ‡Π½ΠΎ, Ρ‚Π΅Ρ… случаСв, ΠΊΠΎΠ³Π΄Π° ΠΊΡ‚ΠΎ-Ρ‚ΠΎ ΠΎΠ±Π½Π°Ρ€ΡƒΠΆΠΈΠ²Π°Π΅Ρ‚, Ρ‡Ρ‚ΠΎ ΠΎΠ½ Π½Π΅ Ρ‚Π°ΠΊ протСстирован ΠΈ Π½Π΅ Ρ€Π°Π±ΠΎΡ‚Π°Π΅Ρ‚, ΠΈ ошибки Ρ‚Ρ€Π΅Π±ΡƒΡŽΡ‚ исправлСния.

    8. Лисков ΠŸΡ€ΠΈΠ½Ρ†ΠΈΠΏ замСщСния

    ΠŸΡ€ΠΈΠ½Ρ†ΠΈΠΏ замСщСния Лискова (LSP), прСдставлСнный Π‘Π°Ρ€Π±Π°Ρ€ΠΎΠΉ Лисков Π΅Ρ‰Π΅ Π² ΠΊΠΎΠ½Ρ†Π΅ 1980-Ρ…, Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎ, самый слоТный для объяснСния Π² нашСм спискС. ВСроятно, ΠΏΠΎΡ‚ΠΎΠΌΡƒ Ρ‡Ρ‚ΠΎ Π΅Π³ΠΎ ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½ΠΈΠ΅ ΠΎΡ‡Π΅Π½ΡŒ матСматичСскоС ΠΈ нСсколько Π·Π°ΠΏΡƒΡ‚Π°Π½Π½ΠΎΠ΅.

    ΠŸΡƒΡΡ‚ΡŒ Ξ¦ (x) — свойство, Π΄ΠΎΠΊΠ°Π·ΡƒΠ΅ΠΌΠΎΠ΅ для ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ΠΎΠ² x Ρ‚ΠΈΠΏΠ° T. Π’ΠΎΠ³Π΄Π° Ξ¦ (y) Π΄ΠΎΠ»ΠΆΠ½ΠΎ Π±Ρ‹Ρ‚ΡŒ истинным для ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ΠΎΠ² y Ρ‚ΠΈΠΏΠ° S, Π³Π΄Π΅ S — ΠΏΠΎΠ΄Ρ‚ΠΈΠΏ T.

    ΠŸΡ€ΠΈ ΠΏΠ΅Ρ€Π΅Π²ΠΎΠ΄Π΅ Π½Π° простой английский ΠΏΡ€ΠΈΠ½Ρ†ΠΈΠΏ ΠΏΡ€Π΅Π΄ΠΏΠΎΠ»Π°Π³Π°Π΅Ρ‚, Ρ‡Ρ‚ΠΎ любой класс, ΡΠ²Π»ΡΡŽΡ‰ΠΈΠΉΡΡ Π΄ΠΎΡ‡Π΅Ρ€Π½ΠΈΠΌ ΠΏΠΎ ΠΎΡ‚Π½ΠΎΡˆΠ΅Π½ΠΈΡŽ ΠΊ Ρ€ΠΎΠ΄ΠΈΡ‚Π΅Π»ΡŒΡΠΊΠΎΠΌΡƒ классу (подклассу), Π΄ΠΎΠ»ΠΆΠ΅Π½ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒΡΡ вмСсто Π΅Π³ΠΎ Ρ€ΠΎΠ΄ΠΈΡ‚Π΅Π»ΡŒΡΠΊΠΎΠ³ΠΎ класса (супСркласса) Π±Π΅Π· ΠΊΠ°ΠΊΠΎΠ³ΠΎ-Π»ΠΈΠ±ΠΎ Π½Π΅ΠΎΠΆΠΈΠ΄Π°Π½Π½ΠΎΠ³ΠΎ повСдСния . Π’Π°ΠΊΠΈΠΌ ΠΎΠ±Ρ€Π°Π·ΠΎΠΌ, ΠΏΠ΅Ρ€Π΅ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½Π½Ρ‹ΠΉ ΠΌΠ΅Ρ‚ΠΎΠ΄ подкласса Π΄ΠΎΠ»ΠΆΠ΅Π½ ΠΈΠΌΠ΅Ρ‚ΡŒ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚ΡŒ ΠΏΡ€ΠΈΠ½ΠΈΠΌΠ°Ρ‚ΡŒ Ρ‚Π΅ ΠΆΠ΅ значСния Π²Ρ…ΠΎΠ΄Π½Ρ‹Ρ… ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€ΠΎΠ², Ρ‡Ρ‚ΠΎ ΠΈ ΠΌΠ΅Ρ‚ΠΎΠ΄ супСркласса.

    По ΠΌΠΎΠ΅ΠΌΡƒ Π»ΠΈΡ‡Π½ΠΎΠΌΡƒ мнСнию, Π»ΡƒΡ‡ΡˆΠ΅ всСго это ΠΎΠ±ΡŠΡΡΠ½ΡΠ΅Ρ‚ΡΡ этим ΠΌΠ΅ΠΌΠΎΠΌ:

    9.

    ΠŸΡ€ΠΈΠ½Ρ†ΠΈΠΏ раздСлСния интСрфСйса

    Π’ соотвСтствии с ΠΏΡ€ΠΈΠ½Ρ†ΠΈΠΏΠΎΠΌ раздСлСния интСрфСйсов (ISP) ΠΊΠ»ΠΈΠ΅Π½Ρ‚ Π½Π΅ Π΄ΠΎΠ»ΠΆΠ΅Π½ Π±Ρ‹Ρ‚ΡŒ Π²Ρ‹Π½ΡƒΠΆΠ΄Π΅Π½ Ρ€Π΅Π°Π»ΠΈΠ·ΠΎΠ²Ρ‹Π²Π°Ρ‚ΡŒ интСрфСйс, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ ΠΎΠ½ Π½Π΅ смоТСт ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ . Π”Ρ€ΡƒΠ³ΠΈΠΌΠΈ словами, Π±ΠΎΠ»Π΅Π΅ ΠΊΡ€ΡƒΠΏΠ½Ρ‹Π΅ интСрфСйсы Π΄ΠΎΠ»ΠΆΠ½Ρ‹ Π±Ρ‹Ρ‚ΡŒ Ρ€Π°Π·Π΄Π΅Π»Π΅Π½Ρ‹ Π½Π° Π±ΠΎΠ»Π΅Π΅ ΠΌΠ΅Π»ΠΊΠΈΠ΅, Ρ‡Ρ‚ΠΎΠ±Ρ‹ Π³Π°Ρ€Π°Π½Ρ‚ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ, Ρ‡Ρ‚ΠΎ Ρ€Π΅Π°Π»ΠΈΠ·ΡƒΡŽΡ‰ΠΈΠ΅ классы «заботятся» Ρ‚ΠΎΠ»ΡŒΠΊΠΎ ΠΎ ΡΠΎΠΎΡ‚Π²Π΅Ρ‚ΡΡ‚Π²ΡƒΡŽΡ‰ΠΈΡ… ΠΌΠ΅Ρ‚ΠΎΠ΄Π°Ρ….

    Π₯отя ΠΏΠΎΠ½Π°Ρ‡Π°Π»Ρƒ это ΠΌΠΎΠΆΠ΅Ρ‚ ΠΏΠΎΠΊΠ°Π·Π°Ρ‚ΡŒΡΡ большим объСмом Ρ€Π°Π±ΠΎΡ‚Ρ‹ ΠΏΠΎ ΠΊΠΎΠ΄ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΡŽ, Π½Π° самом Π΄Π΅Π»Π΅ это эффСктивно, ΠΏΠΎΡΠΊΠΎΠ»ΡŒΠΊΡƒ сниТаСт ΡΠ»ΠΎΠΆΠ½ΠΎΡΡ‚ΡŒ зависимостСй, ΠΏΠΎΡΠΊΠΎΠ»ΡŒΠΊΡƒ Π½Π΅ позволяСт ΠΊΠ»ΠΈΠ΅Π½Ρ‚Ρƒ Π·Π°Π²ΠΈΡΠ΅Ρ‚ΡŒ ΠΎΡ‚ ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½Π½Ρ‹Ρ… Π²Π΅Ρ‰Π΅ΠΉ, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Π΅ΠΌΡƒ Π½Π° самом Π΄Π΅Π»Π΅ Π½Π΅ Π½ΡƒΠΆΠ½Ρ‹.

    Π”ΠΎΠ±Π°Π²ΠΈΡ‚ΡŒ ΠΊΠΎΠΌΠΌΠ΅Π½Ρ‚Π°Ρ€ΠΈΠΉ

    Π’Π°Ρˆ адрСс email Π½Π΅ Π±ΡƒΠ΄Π΅Ρ‚ ΠΎΠΏΡƒΠ±Π»ΠΈΠΊΠΎΠ²Π°Π½. ΠžΠ±ΡΠ·Π°Ρ‚Π΅Π»ΡŒΠ½Ρ‹Π΅ поля ΠΏΠΎΠΌΠ΅Ρ‡Π΅Π½Ρ‹ *