Как Π½Π°ΡƒΡ‡ΠΈΡ‚ΡŒΡΡ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ Π½Π° Java β€” ΠΏΠΎΠ»Π½ΠΎΠ΅ руководство. Π’Π΅Ρ…Π½ΠΎΠ»ΠΎΠ³ΠΈΠΈ Java ΠΈ созданиС Web-ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ. Π€ΡƒΠ½ΠΊΡ†ΠΈΠΈ языка программирования Java

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

Π’Ρ‹ - Π½Π°Ρ‡ΠΈΠ½Π°ΡŽΡ‰ΠΈΠΉ Java-Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊ? На этой страницС Π²Ρ‹ Π½Π°ΠΉΠ΄Π΅Ρ‚Π΅ ΠΎΠ±Π·ΠΎΡ€ основных Javaβ„’-Ρ‚Π΅Ρ…Π½ΠΎΠ»ΠΎΠ³ΠΈΠΉ ΠΈ ΠΈΡ… мСста Π² Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠ΅ соврСмСнного ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½ΠΎΠ³ΠΎ обСспСчСния. Π­Ρ‚Π° страница, содСрТащая ссылки Π½Π° Π²Π²ΠΎΠ΄Π½Ρ‹Π΅ ΡΡ‚Π°Ρ‚ΡŒΠΈ developerWorks ΠΏΠΎ этой ΠΈ смСТным Ρ‚Π΅ΠΌΠ°ΠΌ, Π΄Ρ€ΡƒΠ³ΠΈΠ΅ ΠΎΠ±Ρ€Π°Π·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΠ½Ρ‹Π΅ ΠΌΠ°Ρ‚Π΅Ρ€ΠΈΠ°Π»Ρ‹, Π° Ρ‚Π°ΠΊΠΆΠ΅ Π½Π° ΠΌΠ°Ρ‚Π΅Ρ€ΠΈΠ°Π»Ρ‹ для Π·Π°Π³Ρ€ΡƒΠ·ΠΊΠΈ ΠΈ ΠΏΡ€ΠΎΠ΄ΡƒΠΊΡ‚Ρ‹ IBM, являСтся прСвосходной ΠΎΡ‚ΠΏΡ€Π°Π²Π½ΠΎΠΉ Ρ‚ΠΎΡ‡ΠΊΠΎΠΉ для изучСния Java.

Π§Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ "Ρ‚Π΅Ρ…Π½ΠΎΠ»ΠΎΠ³ΠΈΠΈ Java"?

Java - это ΠΎΠ΄Π½ΠΎΠ²Ρ€Π΅ΠΌΠ΅Π½Π½ΠΎ язык программирования ΠΈ ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΠ°.

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

Π’ΠΎ-Π²Ρ‚ΠΎΡ€Ρ‹Ρ…, Java - это программная ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΠ° , вСрсии ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΉ ΠΏΠΎΡΡ‚Π°Π²Π»ΡΡŽΡ‚ΡΡ для Ρ€Π°Π·Π»ΠΈΡ‡Π½Ρ‹Ρ… Π°ΠΏΠΏΠ°Ρ€Π°Ρ‚Π½Ρ‹Ρ… систСм. Π‘ΡƒΡ‰Π΅ΡΡ‚Π²ΡƒΡŽΡ‚ Ρ‚Ρ€ΠΈ вСрсии Java (см. Ρ€Π°Π·Π΄Π΅Π» Π Π΅Π΄Π°ΠΊΡ†ΠΈΠΈ ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΡ‹ Java Π½ΠΈΠΆΠ΅). ΠŸΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΠ° Π²ΠΊΠ»ΡŽΡ‡Π°Π΅Ρ‚ Π² сСбя JVM ΠΈ интСрфСйс ΠΏΡ€ΠΈΠΊΠ»Π°Π΄Π½ΠΎΠ³ΠΎ программирования Π½Π° Java (API), ΠΏΡ€Π΅Π΄ΡΡ‚Π°Π²Π»ΡΡŽΡ‰ΠΈΠΉ собой ΠΎΠ±ΡˆΠΈΡ€Π½Ρ‹ΠΉ Π½Π°Π±ΠΎΡ€ Π³ΠΎΡ‚ΠΎΠ²Ρ‹Ρ… ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½Ρ‹Ρ… ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚ΠΎΠ² (классов), ΠΎΠ±Π»Π΅Π³Ρ‡Π°ΡŽΡ‰ΠΈΡ… Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΡƒ ΠΈ Ρ€Π°Π·Π²Π΅Ρ€Ρ‚Ρ‹Π²Π°Π½ΠΈΠ΅ Π°ΠΏΠΏΠ»Π΅Ρ‚ΠΎΠ² ΠΈ ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ. API Java ΠΎΡ…Π²Π°Ρ‚Ρ‹Π²Π°Π΅Ρ‚ ΠΌΠ½ΠΎΠ³ΠΈΠ΅ аспСкты Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ Π½Π° Java, Π² Ρ‚ΠΎΠΌ числС ΠΌΠ°Π½ΠΈΠΏΡƒΠ»ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ Π±Π°Π·ΠΎΠ²Ρ‹ΠΌΠΈ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π°ΠΌΠΈ, сСтСвоС ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅, обСспСчСниС бСзопасности, Π³Π΅Π½Π΅Ρ€Π°Ρ†ΠΈΡŽ XML ΠΈ Web-сСрвисы. API ΠΎΡ€Π³Π°Π½ΠΈΠ·ΠΎΠ²Π°Π½ Π² Π²ΠΈΠ΄Π΅ Π½Π°Π±ΠΎΡ€Π° Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊ, ΠΈΠΌΠ΅Π½ΡƒΠ΅ΠΌΡ‹Ρ… ΠΏΠ°ΠΊΠ΅Ρ‚Π°ΠΌΠΈ , ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ содСрТат классы ΠΈ интСрфСйсы для Ρ€Π΅ΡˆΠ΅Π½ΠΈΡ связанных Π΄Ρ€ΡƒΠ³ с Π΄Ρ€ΡƒΠ³ΠΎΠΌ Π·Π°Π΄Π°Ρ‡.

Π’ Π΄ΠΎΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅ ΠΊ API каТдая полноцСнная рСализация ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΡ‹ Java Π΄ΠΎΠ»ΠΆΠ½Π° Π²ΠΊΠ»ΡŽΡ‡Π°Ρ‚ΡŒ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰Π΅Π΅:

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

JVM Ρ‚Π°ΠΊΠΆΠ΅ являСтся ΠΏΡ€ΠΎΠ²Π΅Ρ€Π΅Π½Π½ΠΎΠΉ срСдой для выполнСния ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ, написанных Π½Π° ΠΎΡ‚Π»ΠΈΡ‡Π½Ρ‹Ρ… ΠΎΡ‚ Java языках. Π’ частности, Groovy, Scala ΠΈ спСциализированныС Ρ€Π΅Π°Π»ΠΈΠ·Π°Ρ†ΠΈΠΈ Ruby ΠΈ Python ΠΏΡ€Π΅Π΄ΠΎΡΡ‚Π°Π²Π»ΡΡŽΡ‚ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠ°ΠΌ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚ΡŒ исполнСния Π½Π° JVM динамичСских ΠΈ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΎΠ½Π°Π»ΡŒΠ½Ρ‹Ρ… языков (Π±ΠΎΠ»Π΅Π΅ подробная информация ΠΏΡ€ΠΈΠ²Π΅Π΄Π΅Π½Π° Π² Ρ€Π°Π·Π΄Π΅Π»Π΅ КакоС ΠΎΡ‚Π½ΠΎΡˆΠ΅Π½ΠΈΠ΅ ΠΈΠΌΠ΅Π΅Ρ‚ Java ΠΊ динамичСским языкам ΠΈ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΎΠ½Π°Π»ΡŒΠ½ΠΎΠΌΡƒ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΡŽ?).

Π―Π·Ρ‹ΠΊ Java Π±Ρ‹Π» Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Π°Π½ ΠΊΠΎΠΌΠΏΠ°Π½ΠΈΠ΅ΠΉ Sun Microsystems. Π’ настоящСС врСмя Ρ€Π°Π·Π²ΠΈΡ‚ΠΈΠ΅ Java-Ρ‚Π΅Ρ…Π½ΠΎΠ»ΠΎΠ³ΠΈΠΉ, Π² Ρ‚ΠΎΠΌ числС Ρ€Π°Π±ΠΎΡ‚Π° Π½Π°Π΄ спСцификациями, эталонными рСализациями ΠΈ тСстами совмСстимости, осущСствляСтся ΠΏΠΎΠ΄ ΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»Π΅ΠΌ ΠΎΡ‚ΠΊΡ€Ρ‹Ρ‚ΠΎΠΉ нСкоммСрчСской ΠΎΡ€Π³Π°Π½ΠΈΠ·Π°Ρ†ΠΈΠΈ JCP (Java Community Process), которая ΠΎΠ±ΡŠΠ΅Π΄ΠΈΠ½ΡΠ΅Ρ‚ Java-Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠΎΠ² ΠΈ Π΄Π΅Ρ€ΠΆΠ°Ρ‚Π΅Π»Π΅ΠΉ Π»ΠΈΡ†Π΅Π½Π·ΠΈΠΉ. Π’ 2007 Π³. Sun выпустила ΡΠ²ΠΎΠ±ΠΎΠ΄Π½ΡƒΡŽ Π²Π΅Ρ€ΡΠΈΡŽ Java, Π²ΠΊΠ»ΡŽΡ‡Π°ΡŽΡ‰ΡƒΡŽ основныС ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚Ρ‹ ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΡ‹, ΠΏΠΎΠ΄ Π»ΠΈΡ†Π΅Π½Π·ΠΈΠ΅ΠΉ GNU GPL v2 (GPLv2). ΠŸΠΎΠ΄Ρ€ΠΎΠ±Π½Π΅Π΅ ΠΎΠ± этой вСрсии ΠΌΠΎΠΆΠ½ΠΎ ΠΏΡ€ΠΎΡ‡ΠΈΡ‚Π°Ρ‚ΡŒ Π² Ρ€Π°Π·Π΄Π΅Π»Π΅ Java ΠΈ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠ° свободного ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½ΠΎΠ³ΠΎ обСспСчСния.

Π—Π°Ρ‡Π΅ΠΌ слСдуСт ΠΈΠ·ΡƒΡ‡Π°Ρ‚ΡŒ Java?

ОсновноС прСимущСство языка Java выраТаСтся Π² пСрСносимости Java-ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ, Ρ‚.Π΅. способности Ρ€Π°Π±ΠΎΡ‚Π°Ρ‚ΡŒ Π½Π° Π»ΡŽΠ±Ρ‹Ρ… Π°ΠΏΠΏΠ°Ρ€Π°Ρ‚Π½Ρ‹Ρ… ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΠ°Ρ… ΠΈ ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΎΠ½Π½Ρ‹Ρ… систСмах, ΠΏΠΎΡΠΊΠΎΠ»ΡŒΠΊΡƒ всС JVM, нСзависимо ΠΎΡ‚ Ρ‚ΠΎΠ³ΠΎ, Π½Π° ΠΊΠ°ΠΊΠΎΠΉ ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΠ΅ ΠΎΠ½ΠΈ Ρ€Π°Π±ΠΎΡ‚Π°ΡŽΡ‚, способны ΠΈΡΠΏΠΎΠ»Π½ΡΡ‚ΡŒ ΠΎΠ΄ΠΈΠ½ ΠΈ Ρ‚ΠΎΡ‚ ΠΆΠ΅ Π±Π°ΠΉΡ‚-ΠΊΠΎΠ΄.

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

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

  • ΠžΠ·Π½Π°ΠΊΠΎΠΌΡŒΡ‚Π΅ΡΡŒ с ΠΏΠΎΠ΄Ρ…ΠΎΠ΄ΠΎΠΌ ΠΊ , принятым Π² IBM, ΠΈ ΡƒΠ·Π½Π°ΠΉΡ‚Π΅, ΠΊΠ°ΠΊ SOA ΠΏΠΎΠΌΠΎΠ³Π°Π΅Ρ‚ ΡΠΎΠ·Π΄Π°Π²Π°Ρ‚ΡŒ Π³Π΅Ρ‚Π΅Ρ€ΠΎΠ³Π΅Π½Π½Ρ‹Π΅ прилоТСния, Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΎΠ½Π°Π»ΡŒΠ½ΠΎΡΡ‚ΡŒ ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Ρ… обСспСчиваСтся ΠΈΠ· Ρ€Π°Π·Π½Ρ‹Ρ… источников ΠΊΠ°ΠΊ Π²Π½ΡƒΡ‚Ρ€ΠΈ, Ρ‚Π°ΠΊ ΠΈ Π·Π° ΠΏΡ€Π΅Π΄Π΅Π»Π°ΠΌΠΈ прСдприятия, Ρ‚Π΅ΠΌ самым поддСрТивая Π³ΠΎΡ€ΠΈΠ·ΠΎΠ½Ρ‚Π°Π»ΡŒΠ½Ρ‹Π΅ бизнСс-процСссы. IBM прСдоставляСт ряд , ΠΎΡ€ΠΈΠ΅Π½Ρ‚ΠΈΡ€ΠΎΠ²Π°Π½Π½Ρ‹Ρ… Π½Π° бизнСс-ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Π΅ΠΉ ΠΈ ИВ-спСциалистов, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΏΠΎΠΌΠΎΠ³ΡƒΡ‚ Π²Π°ΠΌ Π½Π°Ρ‡Π°Ρ‚ΡŒ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ эту Ρ‚Π΅Ρ…Π½ΠΎΠ»ΠΎΠ³ΠΈΡŽ.
  • - это ΠΏΡ€Π΅Π΄Π»Π°Π³Π°Π΅ΠΌΡ‹ΠΉ IBM ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚Π½Ρ‹ΠΉ ΠΏΠΎΠ΄Ρ…ΠΎΠ΄, ΠΏΡ€Π΅Π΄ΠΎΡΡ‚Π°Π²Π»ΡΡŽΡ‰ΠΈΠΉ вСсь спСктр возмоТностСй для провСдСния стратСгичСских ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠΉ. ΠŸΡ€Π΅Π΄ΠΎΡΡ‚Π°Π²Π»ΡΠ΅ΠΌΡ‹Π΅ Ρ€Π΅ΡˆΠ΅Π½ΠΈΡ Π±Π°Π·ΠΈΡ€ΡƒΡŽΡ‚ΡΡ Π½Π° Π³ΠΈΠ±ΠΊΠΎΠΌ, Ρ€Π°ΡΡˆΠΈΡ€ΡΠ΅ΠΌΠΎΠΌ, основанном Π½Π° ΠΎΡ‚ΠΊΡ€Ρ‹Ρ‚Ρ‹Ρ… стандартах ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½ΠΎΠΌ обСспСчСнии (Π² Ρ‚ΠΎΠΌ числС Java) ΠΈ Π°ΠΏΠΏΠ°Ρ€Π°Ρ‚Π½ΠΎΠΉ инфраструктурС.

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

  • Java SE (Java Platform, Standard Edition) . Π˜ΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡ Java SE, Π²Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ ΡΠΎΠ·Π΄Π°Π²Π°Ρ‚ΡŒ ΠΈ Ρ€Π°Π·Π²Π΅Ρ€Ρ‚Ρ‹Π²Π°Ρ‚ΡŒ Java-прилоТСния для Π½Π°ΡΡ‚ΠΎΠ»ΡŒΠ½Ρ‹Ρ… ΠΊΠΎΠΌΠΏΡŒΡŽΡ‚Π΅Ρ€ΠΎΠ² ΠΈ сСрвСров, Π° Ρ‚Π°ΠΊΠΆΠ΅ Ρ€Π°Π·Ρ€Π°Π±Π°Ρ‚Ρ‹Π²Π°Ρ‚ΡŒ встроСнноС ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½ΠΎΠ΅ обСспСчСниС ΠΈ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ для систСм Ρ€Π΅Π°Π»ΡŒΠ½ΠΎΠ³ΠΎ Π²Ρ€Π΅ΠΌΠ΅Π½ΠΈ. РСдакция Java SE Π²ΠΊΠ»ΡŽΡ‡Π°Π΅Ρ‚ классы, Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΡ‹Π΅ для создания Web-сСрвисов, ΠΈ Π±Π°Π·ΠΎΠ²Ρ‹Π΅ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚Ρ‹ Java EE (Java Platform, Enterprise Edition). Π’Π΅ΠΊΡƒΡ‰Π΅ΠΉ вСрсиСй ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΡ‹ Java SE являСтся Java SE 6, Ρ‚Π°ΠΊΠΆΠ΅ извСстная ΠΊΠ°ΠΊ "ΠœΡƒΡΡ‚Π°Π½Π³". ΠŸΡ€ΠΈ этом ΠΌΠ½ΠΎΠ³ΠΈΠ΅ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠΈ ΠΏΠΎ-ΠΏΡ€Π΅ΠΆΠ½Π΅ΠΌΡƒ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽΡ‚ Java SE 5 (Java 5.0, ΠΈΠ»ΠΈ "Π’ΠΈΠ³Ρ€").
    • ΠŸΡ€Π΅ΠΊΡ€Π°ΡΠ½Ρ‹ΠΉ ΠΎΠ±Π·ΠΎΡ€ возмоТностСй Java SE 5 ΠΏΡ€ΠΈΠ²Π΅Π΄Π΅Π½ Π² ΡΡ‚Π°Ρ‚ΡŒΡΡ… ΠΊΠΎΠ»ΠΎΠ½ΠΊΠΈ . Π‘ΠΎΠ»ΡŒΡˆΠ°Ρ Ρ‡Π°ΡΡ‚ΡŒ аспСктов программирования для ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΡ‹ Java SE 5, для ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΉ Π±Ρ‹Π»ΠΈ созданы ΠΌΠ½ΠΎΠ³ΠΈΠ΅ ΡΡƒΡ‰Π΅ΡΡ‚Π²ΡƒΡŽΡ‰ΠΈΠ΅ прилоТСния, ΠΏΠΎ-ΠΏΡ€Π΅ΠΆΠ½Π΅ΠΌΡƒ Π°ΠΊΡ‚ΡƒΠ°Π»ΡŒΠ½Ρ‹ ΠΈ для Java SE 6.
    • Π’ ΡΡ‚Π°Ρ‚ΡŒΠ΅ ΠΎΠΏΠΈΡΡ‹Π²Π°ΡŽΡ‚ΡΡ Π½ΠΎΠ²Ρ‹Π΅ возмоТности Java SE 6, слуТащиС для ΠΌΠΎΠ½ΠΈΡ‚ΠΎΡ€ΠΈΠ½Π³Π° ΠΈ ΠΎΡ†Π΅Π½ΠΊΠΈ ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΠΈ ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ.
    • Π’ ΡΡ‚Π°Ρ‚ΡŒΠ΅ приводится Π²Π²Π΅Π΄Π΅Π½ΠΈΠ΅ Π² скриптовый язык, Ρ€Π°Π±ΠΎΡ‚Π°ΡŽΡ‰ΠΈΠΉ ΠΏΠΎΠ²Π΅Ρ€Ρ… ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΡ‹ Java SE 6 ΠΈ слуТащий для упрощСния программирования слоТных ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΡΠΊΠΈΡ… интСрфСйсов.
    • Π’ сСрии ΠΈΠ· Π΄Π²ΡƒΡ… статСй ΠΏΠΎΠ΄ Π½Π°Π·Π²Π°Π½ΠΈΠ΅ΠΌ содСрТится Π²Π²Π΅Π΄Π΅Π½ΠΈΠ΅ Π² API, прСдоставляСмый Java SE 6, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ позволяСт Java-прилоТСниям Π²Ρ‹ΠΏΠΎΠ»Π½ΡΡ‚ΡŒ динамичСский скриптовый ΠΊΠΎΠ΄ ΠΈ Π½Π°ΠΎΠ±ΠΎΡ€ΠΎΡ‚. .
  • Java EE (Java Platform, Enterprise Edition) . Π­Ρ‚Π° корпоративная вСрсия ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΡ‹ ΠΏΠΎΠΌΠΎΠ³Π°Π΅Ρ‚ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠ°ΠΌ ΡΠΎΠ·Π΄Π°Π²Π°Ρ‚ΡŒ ΠΈ Ρ€Π°Π·Π²Π΅Ρ€Ρ‚Ρ‹Π²Π°Ρ‚ΡŒ пСрСносимыС, Π½Π°Π΄Π΅ΠΆΠ½Ρ‹Π΅, ΠΌΠ°ΡΡˆΡ‚Π°Π±ΠΈΡ€ΡƒΠ΅ΠΌΡ‹Π΅ ΠΈ бСзопасныС сСрвСрныС прилоТСния Π½Π° Java. Развивая возмоТности Java SE, Java EE прСдоставляСт API Web-сСрвисов, ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚Π½Ρ‹Ρ… ΠΌΠΎΠ΄Π΅Π»Π΅ΠΉ, ΡƒΠ΄Π°Π»Π΅Π½Π½ΠΎΠ³ΠΎ взаимодСйствия ΠΈ управлСния для Ρ€Π΅Π°Π»ΠΈΠ·Π°Ρ†ΠΈΠΈ ΠΊΠΎΡ€ΠΏΠΎΡ€Π°Ρ‚ΠΈΠ²Π½ΠΎΠ³ΠΎ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½ΠΎΠ³ΠΎ обСспСчСния ΠΏΠΎ ΠΏΡ€ΠΈΠ½Ρ†ΠΈΠΏΠ°ΠΌ SOA ΠΈ Web 2.0.
    • ΠŸΡ€ΠΎΡ‡ΠΈΡ‚Π°ΠΉΡ‚Π΅ ΡΡ‚Π°Ρ‚ΡŒΠΈ ΠΈ , Π² ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Ρ… содСрТится Π²Π²ΠΎΠ΄Π½Ρ‹ΠΉ ΠΎΠ±Π·ΠΎΡ€ возмоТностСй послСднСй вСрсии ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΡ‹ Java EE.
    • ΠžΠ±Ρ€Π°Ρ‚ΠΈΡ‚Π΅ Π²Π½ΠΈΠΌΠ°Π½ΠΈΠ΅ Π½Π° ΡΠ΅Ρ€ΠΈΡŽ - популярной инфраструктурС для создания лСгковСсных ΠΈ Π½Π°Π΄Π΅ΠΆΠ½Ρ‹Ρ… ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ Java EE.
    • Π”ΠΎΠΏΠΎΠ»Π½ΠΈΡ‚Π΅Π»ΡŒΠ½Π°Ρ информация ΠΎ Java EE приводится Π² ΡΡ‚Π°Ρ‚ΡŒΡΡ… ΠΊΠΎΠ»ΠΎΠ½ΠΊΠΈ .
    • Π‘Ρ‚Π°Ρ‚ΡŒΠΈ сСрии Начало ΠΏΡƒΡ‚ΠΈ: ΠœΠΈΠ³Ρ€Π°Ρ†ΠΈΡ Π½Π° ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΡƒ Java (EN) Π±Ρ‹Π»ΠΈ написаны ΡΠΏΠ΅Ρ†ΠΈΠ°Π»ΡŒΠ½ΠΎ для Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠΎΠ².NET, ΠΊΠ»ΠΈΠ΅Π½Ρ‚-сСрвСрных ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ для Windows ΠΈ ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ ASP, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΏΠΎΠΌΠΎΡ‡ΡŒ ΠΈΠΌ ΠΏΠ΅Ρ€Π΅ΠΉΡ‚ΠΈ Π½Π° Java.
  • Java ME (Java Platform, Micro Edition) . Java ME прСдоставляСт срСду для выполнСния ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ, созданных для ΡˆΠΈΡ€ΠΎΠΊΠΎΠ³ΠΎ ΠΊΡ€ΡƒΠ³Π° ΠΌΠΎΠ±ΠΈΠ»ΡŒΠ½Ρ‹Ρ… ΠΈ встроСнных систСм, Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€ ΠΌΠΎΠ±ΠΈΠ»ΡŒΠ½Ρ‹Ρ… Ρ‚Π΅Π»Π΅Ρ„ΠΎΠ½ΠΎΠ², ΠΊΠ°Ρ€ΠΌΠ°Π½Π½Ρ‹Ρ… ΠΊΠΎΠΌΠΏΡŒΡŽΡ‚Π΅Ρ€ΠΎΠ², Ρ‚Π΅Π»Π΅Π²ΠΈΠ·ΠΈΠΎΠ½Π½Ρ‹Ρ… приставок ΠΈ ΠΏΡ€ΠΈΠ½Ρ‚Π΅Ρ€ΠΎΠ². Π­Ρ‚Π° рСдакция ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΡ‹ прСдоставляСт срСдства создания Π³ΠΈΠ±ΠΊΠΈΡ… ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΡΠΊΠΈΡ… интСрфСйсов, Π½Π°Π΄Π΅ΠΆΠ½ΡƒΡŽ модСль обСспСчСния бСзопасности, ΠΏΠΎΠ»Π½Ρ‹ΠΉ спСктр встроСнных сСтСвых ΠΏΡ€ΠΎΡ‚ΠΎΠΊΠΎΠ»ΠΎΠ², Π° Ρ‚Π°ΠΊΠΆΠ΅ ΠΌΠΎΡ‰Π½ΡƒΡŽ ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΡƒ сСтСвых ΠΈ ΠΎΡ„Ρ„Π»Π°ΠΉΠ½ΠΎΠ²Ρ‹Ρ… динамичСски Π·Π°Π³Ρ€ΡƒΠΆΠ°Π΅ΠΌΡ‹Ρ… ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ. ΠŸΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ, Π±Π°Π·ΠΈΡ€ΡƒΡŽΡ‰ΠΈΠ΅ΡΡ Π½Π° спСцификациях Java ME, ΠΌΠΎΠ³ΡƒΡ‚ Π±Ρ‹Ρ‚ΡŒ Π·Π°ΠΏΡƒΡ‰Π΅Π½Ρ‹ Π½Π° мноТСствС устройств ΠΈ ΠΏΡ€ΠΈ этом способны эффСктивно Π·Π°Π΄Π΅ΠΉΡΡ‚Π²ΠΎΠ²Π°Ρ‚ΡŒ ΠΈΡ… систСмныС возмоТности.

КакиС Ρ‚Π΅Ρ…Π½ΠΎΠ»ΠΎΠ³ΠΈΠΈ ΡΠ²Π»ΡΡŽΡ‚ΡΡ основными ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚Π°ΠΌΠΈ ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΡ‹ Java?

Π’ Ρ€Π°Π·Π΄Π΅Π»Π΅ Java Π½Π° сайтС developerWorks содСрТится , входящих Π² состав Java. НиТС пСрСчислСны Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΈΠ· ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚ΠΎΠ², Π²ΠΎΠ·ΠΌΠΎΠΆΠ½Ρ‹Ρ… Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹Ρ… ΠΏΠ°ΠΊΠ΅Ρ‚ΠΎΠ² ΠΈ Ρ€Π°ΡΡˆΠΈΡ€Π΅Π½ΠΈΠΉ, входящих Π² состав ΠΊΠ°ΠΆΠ΄ΠΎΠΉ Ρ€Π΅Π΄Π°ΠΊΡ†ΠΈΠΈ ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΡ‹. Для ΠΊΠ°ΠΆΠ΄ΠΎΠΉ Ρ‚Π΅Ρ…Π½ΠΎΠ»ΠΎΠ³ΠΈΠΈ ΠΏΡ€ΠΈΠ²Π΅Π΄Π΅Π½ΠΎ ΠΊΡ€Π°Ρ‚ΠΊΠΎΠ΅ описаниС, Π° Ρ‚Π°ΠΊΠΆΠ΅ ссылка Π½Π° ΠΌΠ°Ρ‚Π΅Ρ€ΠΈΠ°Π»Ρ‹, Π² ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Ρ… описываСтся Π΅Π΅ мСсто Π² ΠΌΠΈΡ€Π΅ Java. ΠžΠ±Ρ€Π°Ρ‚ΠΈΡ‚Π΅ Π²Π½ΠΈΠΌΠ°Π½ΠΈΠ΅, Ρ‡Ρ‚ΠΎ ΠΌΠ½ΠΎΠ³ΠΈΠ΅ ΠΈΠ· ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚ΠΎΠ² входят Π² состав всСх Ρ‚Ρ€Π΅Ρ… Ρ€Π΅Π΄Π°ΠΊΡ†ΠΈΠΉ ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΡ‹ Java.

Π’Π΅Ρ…Π½ΠΎΠ»ΠΎΠ³ΠΈΠΈ, входящиС Π² состав Java SE:

  • Java Foundation Classes (Swing) (JFC) - это Π½Π°Π±ΠΎΡ€ Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊ Java-классов, слуТащих для создания графичСских интСрфСйсов ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Ρ ΠΈ Ρ€Π΅Π°Π»ΠΈΠ·Π°Ρ†ΠΈΠΈ Π΄Ρ€ΡƒΠ³ΠΈΡ… графичСских Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΉ Π² клиСнтских Java-прилоТСниях. Руководство .
  • JavaHelp - это нСзависимая ΠΎΡ‚ ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΡ‹ Ρ€Π°ΡΡˆΠΈΡ€ΡΠ΅ΠΌΠ°Ρ справочная систСма, ΠΏΠΎΠ·Π²ΠΎΠ»ΡΡŽΡ‰Π°Ρ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠ°ΠΌ ΠΈ тСхничСским писатСлям Π²ΡΡ‚Ρ€Π°ΠΈΠ²Π°Ρ‚ΡŒ справочныС страницы Π² Π°ΠΏΠΏΠ»Π΅Ρ‚Ρ‹, ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½Ρ‹Π΅ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚Ρ‹, прилоТСния, ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΎΠ½Π½Ρ‹Π΅ систСмы ΠΈ устройства, Π° Ρ‚Π°ΠΊΠΆΠ΅ ΡΠΎΠ·Π΄Π°Π²Π°Ρ‚ΡŒ справочныС Web-систСмы. ΠžΠ±Ρ€Π°Ρ‚ΠΈΡ‚Π΅ΡΡŒ ΠΊ ΡΡ‚Π°Ρ‚ΡŒΠ΅ .
  • Благодаря Java Native Interface (JNI) Java-прилоТСния, Π²Ρ‹ΠΏΠΎΠ»Π½ΡΡŽΡ‰ΠΈΠ΅ΡΡ Π²Π½ΡƒΡ‚Ρ€ΠΈ JVM, ΠΌΠΎΠ³ΡƒΡ‚ Π²Π·Π°ΠΈΠΌΠΎΠ΄Π΅ΠΉΡΡ‚Π²ΠΎΠ²Π°Ρ‚ΡŒ с ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ°ΠΌΠΈ ΠΈ Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠ°ΠΌΠΈ, написанными Π½Π° Π΄Ρ€ΡƒΠ³ΠΈΡ… языках программирования.
  • ВСхнология Java Web Start ΡƒΠΏΡ€ΠΎΡ‰Π°Π΅Ρ‚ Ρ€Π°Π·Π²Π΅Ρ€Ρ‚Ρ‹Π²Π°Π½ΠΈΠ΅ Java-ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ, позволяя ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡΠΌ Π·Π°Π³Ρ€ΡƒΠΆΠ°Ρ‚ΡŒ ΠΈ Π·Π°ΠΏΡƒΡΠΊΠ°Ρ‚ΡŒ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΎΠ½Π°Π»ΡŒΠ½ΠΎ насыщСнныС ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½Ρ‹Π΅ срСдства, Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, элСктронныС Ρ‚Π°Π±Π»ΠΈΡ†Ρ‹, ΠΎΠ΄Π½ΠΈΠΌ Π½Π°ΠΆΠ°Ρ‚ΠΈΠ΅ΠΌ Π½Π° ΠΊΠ½ΠΎΠΏΠΊΡƒ ΠΌΡ‹ΡˆΠΈ, Π±Π΅Π· инсталляции (см. ΡΡ‚Π°Ρ‚ΡŒΡŽ ).
  • Java Database Connectivity (JDBC) - это API, ΠΏΡ€Π΅Π΄ΠΎΡΡ‚Π°Π²Π»ΡΡŽΡ‰ΠΈΠΉ срСдства для доступа ΠΊ Π±ΠΎΠ»ΡŒΡˆΠΈΠ½ΡΡ‚Π²Ρƒ рСляционных источников Π΄Π°Π½Π½Ρ‹Ρ… ΠΈΠ· Java-ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ. Π‘ Π΅Π³ΠΎ ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ ΠΌΠΎΠΆΠ½ΠΎ ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π°Ρ‚ΡŒΡΡ ΠΊ мноТСству Π±Π°Π· Π΄Π°Π½Π½Ρ‹Ρ… SQL, Π° Ρ‚Π°ΠΊΠΆΠ΅ Π΄Ρ€ΡƒΠ³ΠΈΠΌ Ρ‚Π°Π±Π»ΠΈΡ‡Π½Ρ‹ΠΌ источникам Π΄Π°Π½Π½Ρ‹Ρ…, Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, элСктронным Ρ‚Π°Π±Π»ΠΈΡ†Π°ΠΌ ΠΈ нСструктурированным Ρ„Π°ΠΉΠ»Π°ΠΌ.
  • Java Advanced Imaging (JAI) - это ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π½ΠΎ-ΠΎΡ€ΠΈΠ΅Π½Ρ‚ΠΈΡ€ΠΎΠ²Π°Π½Π½Ρ‹ΠΉ API, ΠΏΡ€Π΅Π΄ΠΎΡΡ‚Π°Π²Π»ΡΡŽΡ‰ΠΈΠΉ ΠΏΡ€ΠΎΡΡ‚ΡƒΡŽ Π²Ρ‹ΡΠΎΠΊΠΎΡƒΡ€ΠΎΠ²Π½Π΅Π²ΡƒΡŽ модСль программирования, ΡƒΠΏΡ€ΠΎΡ‰Π°ΡŽΡ‰ΡƒΡŽ ΠΌΠ°Π½ΠΈΠΏΡƒΠ»ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ изобраТСниями.
  • Java Authentication and Authorization Service (JAAS) - это тСхнология, ΠΏΡ€Π΅Π΄ΠΎΡΡ‚Π°Π²Π»ΡΡŽΡ‰Π°Ρ сСрвисам срСдства для Π°ΡƒΡ‚Π΅Π½Ρ‚ΠΈΡ„ΠΈΠΊΠ°Ρ†ΠΈΠΈ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Π΅ΠΉ ΠΈ ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΊΠΈ ΠΈΡ… ΠΏΡ€Π°Π² доступа. Она Π²ΠΊΠ»ΡŽΡ‡Π°Π΅Ρ‚ Java-Ρ€Π΅Π°Π»ΠΈΠ·Π°Ρ†ΠΈΡŽ стандартной инфраструктуры PAM (Pluggable Authentication Module) ΠΈ ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°Π΅Ρ‚ Π°Π²Ρ‚ΠΎΡ€ΠΈΠ·Π°Ρ†ΠΈΡŽ Π½Π° ΡƒΡ€ΠΎΠ²Π½Π΅ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Π΅ΠΉ.
  • Java Cryptography Extension (JCE) - это Π½Π°Π±ΠΎΡ€ ΠΏΠ°ΠΊΠ΅Ρ‚ΠΎΠ², ΠΏΡ€Π΅Π΄ΠΎΡΡ‚Π°Π²Π»ΡΡŽΡ‰ΠΈΡ… инфраструктуру ΠΈ Ρ€Π΅Π°Π»ΠΈΠ·Π°Ρ†ΠΈΠΈ Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌΠΎΠ² ΡˆΠΈΡ„Ρ€ΠΎΠ²Π°Π½ΠΈΡ, Π³Π΅Π½Π΅Ρ€Π°Ρ†ΠΈΠΈ ΠΈ ΠΎΠ±ΠΌΠ΅Π½Π° ΠΊΠ»ΡŽΡ‡Π°ΠΌΠΈ ΠΈ установлСния подлинности сообщСний (Message Authentication Code - MAC). Π­Ρ‚Π° тСхнология Ρ‚Π°ΠΊΠΆΠ΅ Π²ΠΊΠ»ΡŽΡ‡Π°Π΅Ρ‚ ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΡƒ симмСтричных, асиммСтричных, Π±Π»ΠΎΡ‡Π½Ρ‹Ρ… ΠΈ ΠΏΠΎΡ‚ΠΎΡ‡Π½Ρ‹Ρ… ΡˆΠΈΡ„Ρ€ΠΎΠ², Π° Ρ‚Π°ΠΊΠΆΠ΅ бСзопасных ΠΏΠΎΡ‚ΠΎΠΊΠΎΠ² ΠΈ ΠΎΠΏΠ΅Ρ‡Π°Ρ‚Π°Π½Π½Ρ‹Ρ… ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ΠΎΠ² (sealed objects). Π‘ΠΎΠ»Π΅Π΅ ΠΏΠΎΠ΄Ρ€ΠΎΠ±Π½ΡƒΡŽ ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΡŽ ΠΌΠΎΠΆΠ½ΠΎ ΠΏΠΎΠ»ΡƒΡ‡ΠΈΡ‚ΡŒ Π² руководствС .
  • Java Data Objects (JDO) - это стандартная абстрактная модСль Π΄ΠΎΠ»Π³ΠΎΠ²Ρ€Π΅ΠΌΠ΅Π½Π½ΠΎΠ³ΠΎ хранСния Java-ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ΠΎΠ², Π±Π°Π·ΠΈΡ€ΡƒΡŽΡ‰Π°ΡΡΡ Π½Π° интСрфСйсах. Π‘ Π΅Π΅ ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠΈ ΠΌΠΎΠ³ΡƒΡ‚ Π½Π°ΠΏΡ€ΡΠΌΡƒΡŽ ΡΠΎΡ…Ρ€Π°Π½ΡΡ‚ΡŒ экзСмпляры Java-классов ΠΏΡ€Π΅Π΄ΠΌΠ΅Ρ‚Π½ΠΎΠΉ области Π² постоянном Ρ…Ρ€Π°Π½ΠΈΠ»ΠΈΡ‰Π΅ (Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, Π±Π°Π·Π΅ Π΄Π°Π½Π½Ρ‹Ρ…). Π­Ρ‚Π° модСль Π² рядС случаСв ΠΌΠΎΠΆΠ΅Ρ‚ Π·Π°ΠΌΠ΅Π½ΡΡ‚ΡŒ ΠΏΡ€ΡΠΌΡƒΡŽ запись Π² Ρ„Π°ΠΉΠ», ΡΠ΅Ρ€ΠΈΠ°Π»ΠΈΠ·Π°Ρ†ΠΈΡŽ, JDBC, Π° Ρ‚Π°ΠΊΠΆΠ΅ использованиС сСрвСрных ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚ΠΎΠ² EJB, ΠΊΠ°ΠΊ управляСмых ΠΊΠΎΠ½Ρ‚Π΅ΠΉΠ½Π΅Ρ€Π°ΠΌΠΈ (Container Managed Persistence - CMP), Ρ‚Π°ΠΊ ΠΈ ΡΠ°ΠΌΠΎΡΡ‚ΠΎΡΡ‚Π΅Π»ΡŒΠ½ΠΎ хранящих состояниС (Bean Managed Persistence - BMP).
  • ΠŸΠ°ΠΊΠ΅Ρ‚ Java Management Extensions (JMX) содСрТит срСдства для создания распрСдСлСнных, ΠΌΠΎΠ΄ΡƒΠ»ΡŒΠ½Ρ‹Ρ…, динамичСских ΠΈ доступных Ρ‡Π΅Ρ€Π΅Π· Web ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ для управлСния ΠΈ ΠΌΠΎΠ½ΠΈΡ‚ΠΎΡ€ΠΈΠ½Π³Π° устройств, ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½ΠΎΠ³ΠΎ обСспСчСния ΠΈ сСтСй, основанных Π½Π° прСдоставлСнии сСрвисов (см. ΡΡ‚Π°Ρ‚ΡŒΡŽ ).
  • Java Media Framework (JMF) позволяСт Π΄ΠΎΠ±Π°Π²Π»ΡΡ‚ΡŒ Π°ΡƒΠ΄ΠΈΠΎ-, Π²ΠΈΠ΄Π΅ΠΎ- ΠΈ Π΄Ρ€ΡƒΠ³ΡƒΡŽ ΠΌΠ΅Π΄ΠΈΠ°-ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΡŽ Π² прилоТСния ΠΈ Π°ΠΏΠΏΠ»Π΅Ρ‚Ρ‹ Π½Π° Java (см. руководство ).
  • Java Naming and Directory Interface (JNDI) - это ΡƒΠ½ΠΈΡ„ΠΈΡ†ΠΈΡ€ΠΎΠ²Π°Π½Π½Ρ‹ΠΉ интСрфСйс для обращСния ΠΊ Ρ€Π°Π·Π»ΠΈΡ‡Π½Ρ‹ΠΌ сСрвисам ΠΈΠΌΠ΅Π½ ΠΈ ΠΊΠ°Ρ‚Π°Π»ΠΎΠ³ΠΎΠ² Π² ΠΊΠΎΡ€ΠΏΠΎΡ€Π°Ρ‚ΠΈΠ²Π½ΠΎΠΉ сСти. Π‘ Π΅Π³ΠΎ ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ прилоТСния ΠΌΠΎΠ³ΡƒΡ‚ эффСктивно ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π°Ρ‚ΡŒΡΡ ΠΊ Ρ€Π°Π·Π»ΠΈΡ‡Π½Ρ‹ΠΌ слуТбам ΠΈΠΌΠ΅Π½ ΠΈ ΠΊΠ°Ρ‚Π°Π»ΠΎΠ³ΠΎΠ² Π² Π³Π΅Ρ‚Π΅Ρ€ΠΎΠ³Π΅Π½Π½ΠΎΠΉ срСдС уровня прСдприятия.
  • Java Secure Socket Extensions (JSSE) - это Π½Π°Π±ΠΎΡ€ ΠΏΠ°ΠΊΠ΅Ρ‚ΠΎΠ² для обСспСчСния бСзопасного ΠΎΠ±ΠΌΠ΅Π½Π° ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠ΅ΠΉ Π² Π˜Π½Ρ‚Π΅Ρ€Π½Π΅Ρ‚Π΅. Они Ρ€Π΅Π°Π»ΠΈΠ·ΡƒΡŽΡ‚ Java-Π²Π΅Ρ€ΡΠΈΡŽ ΠΏΡ€ΠΎΡ‚ΠΎΠΊΠΎΠ»ΠΎΠ² SSL (Secure Sockets Layer) ΠΈ TLS (Transport Layer Security) ΠΈ ΠΏΡ€Π΅Π΄ΠΎΡΡ‚Π°Π²Π»ΡΡŽΡ‚ срСдства для ΡˆΠΈΡ„Ρ€ΠΎΠ²Π°Π½ΠΈΡ Π΄Π°Π½Π½Ρ‹Ρ…, ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΊΠΈ цСлостности сообщСний, Π°ΡƒΡ‚Π΅Π½Ρ‚ΠΈΡ„ΠΈΠΊΠ°Ρ†ΠΈΠΈ Π½Π° сСрвСрС ΠΈ Π½Π° ΠΊΠ»ΠΈΠ΅Π½Ρ‚Π΅ (послСдняя Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚ΡŒ Π½Π΅ являСтся ΠΎΠ±ΡΠ·Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎΠΉ).
  • Java Speech API (JSAPI) Π²ΠΊΠ»ΡŽΡ‡Π°Π΅Ρ‚ Π² сСбя спСцификации JSGF (Ρ„ΠΎΡ€ΠΌΠ°Ρ‚ Π³Ρ€Π°ΠΌΠΌΠ°Ρ‚ΠΈΠΊΠΈ Java Speech) ΠΈ JSML (язык Ρ€Π°Π·ΠΌΠ΅Ρ‚ΠΊΠΈ Java Speech). Π­Ρ‚ΠΎΡ‚ ΠΏΠ°ΠΊΠ΅Ρ‚ прСдоставляСт возмоТности для использования Ρ€Π΅Ρ‡Π΅Π²Ρ‹Ρ… Ρ‚Π΅Ρ…Π½ΠΎΠ»ΠΎΠ³ΠΈΠΉ Π² ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΡΠΊΠΎΠΌ интСрфСйсС. JSAPI - это кросс-ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΠ΅Π½Π½Ρ‹ΠΉ API для ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠΈ распознавания голосовых ΠΊΠΎΠΌΠ°Π½Π΄, систСм Ρ€Π΅Ρ‡Π΅Π²ΠΎΠ³ΠΎ Π²Π²ΠΎΠ΄Π° Π΄Π°Π½Π½Ρ‹Ρ… ΠΈ синтСза Ρ€Π΅Ρ‡ΠΈ. Π—Π° Π±ΠΎΠ»Π΅Π΅ ΠΏΠΎΠ΄Ρ€ΠΎΠ±Π½ΠΎΠΉ ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠ΅ΠΉ ΠΎΠ±Ρ€Π°Ρ‚ΠΈΡ‚Π΅ΡΡŒ ΠΊ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰Π΅ΠΌΡƒ Ρ€Π°Π·Π΄Π΅Π»Ρƒ ΡΡ‚Π°Ρ‚ΡŒΠΈ .
  • Java 3D - это API, ΠΏΡ€Π΅Π΄ΠΎΡΡ‚Π°Π²Π»ΡΡŽΡ‰ΠΈΠΉ кросс-ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΠ΅Π½Π½Ρ‹Π΅ ΠΈ ΠΌΠ°ΡΡˆΡ‚Π°Π±ΠΈΡ€ΡƒΠ΅ΠΌΡ‹Π΅ возмоТности для Ρ€Π°Π±ΠΎΡ‚Ρ‹ с 3D-Π³Ρ€Π°Ρ„ΠΈΠΊΠΎΠΉ Π² Java-прилоТСниях. API ΠΎΡ€Π³Π°Π½ΠΈΠ·ΠΎΠ²Π°Π½ Π² Π²ΠΈΠ΄Π΅ Π½Π°Π±ΠΎΡ€Π° ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π½ΠΎ-ΠΎΡ€ΠΈΠ΅Π½Ρ‚ΠΈΡ€ΠΎΠ²Π°Π½Π½Ρ‹Ρ… интСрфСйсов, ΡΠΊΠ»Π°Π΄Ρ‹Π²Π°ΡŽΡ‰ΠΈΡ…ΡΡ Π² Π΅Π΄ΠΈΠ½ΡƒΡŽ ΠΏΡ€ΠΎΡΡ‚ΡƒΡŽ Π²Ρ‹ΡΠΎΠΊΠΎΡƒΡ€ΠΎΠ²Π½Π΅Π²ΡƒΡŽ модСль программирования.
  • ΠœΠ΅Ρ…Π°Π½ΠΈΠ·ΠΌ Metadata Facility позволяСт Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠ°ΠΌ ΠΎΠΏΡ€Π΅Π΄Π΅Π»ΡΡ‚ΡŒ Π°Ρ‚Ρ€ΠΈΠ±ΡƒΡ‚Ρ‹ для классов, интСрфСйсов, ΠΏΠΎΠ»Π΅ΠΉ ΠΈ ΠΌΠ΅Ρ‚ΠΎΠ΄ΠΎΠ², благодаря Ρ‡Π΅ΠΌΡƒ ΠΎΠ½ΠΈ ΠΌΠΎΠ³ΡƒΡ‚ ΠΏΠΎΠ΄Π²Π΅Ρ€Π³Π°Ρ‚ΡŒΡΡ ΡΠΏΠ΅Ρ†ΠΈΠ°Π»ΡŒΠ½ΠΎΠΉ ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠ΅ со стороны срСдств Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ, развСртывания ΠΈ сторонних Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊ Π½Π° этапС выполнСния прилоТСния (см. ΡΡ‚Π°Ρ‚ΡŒΡŽ ).
  • Java Content Repository API - это API для доступа ΠΊ рСпозиториям ΠΊΠΎΠ½Ρ‚Π΅Π½Ρ‚Π° Π² Java SE нСзависимо ΠΎΡ‚ ΠΈΡ… Ρ€Π΅Π°Π»ΠΈΠ·Π°Ρ†ΠΈΠΈ. ΠŸΠΎΠ΄ΠΎΠ±Π½Ρ‹Π΅ Ρ€Π΅ΠΏΠΎΠ·ΠΈΡ‚ΠΎΡ€ΠΈΠΈ ΠΏΡ€Π΅Π΄ΡΡ‚Π°Π²Π»ΡΡŽΡ‚ собой высокоуровнСвыС систСмы управлСния ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠ΅ΠΉ ΠΈ ΡΠ²Π»ΡΡŽΡ‚ΡΡ Ρ€Π°ΡΡˆΠΈΡ€Π΅Π½Π½Ρ‹ΠΌΠΈ Π²Π°Ρ€ΠΈΠ°Π½Ρ‚Π°ΠΌΠΈ классичСских Ρ€Π΅ΠΏΠΎΠ·ΠΈΡ‚ΠΎΡ€ΠΈΠ΅Π² Π΄Π°Π½Π½Ρ‹Ρ….
  • Enumerations (пСрСчислСниС) - это Ρ‚ΠΈΠΏ Π΄Π°Π½Π½Ρ‹Ρ…, ΠΏΠΎΠ·Π²ΠΎΠ»ΡΡŽΡ‰ΠΈΠΉ ΠΎΠΏΠΈΡΡ‹Π²Π°Ρ‚ΡŒ Ρ€Π°Π·Π»ΠΈΡ‡Π½Ρ‹Π΅ элСмСнты Π΄Π°Π½Π½Ρ‹Ρ… Π² Π²ΠΈΠ΄Π΅ Ρ‚ΠΈΠΏΠΈΠ·ΠΈΡ€ΠΎΠ²Π°Π½Π½ΠΎΠ³ΠΎ Π½Π°Π±ΠΎΡ€Π° констант.
  • Generics (ΠΎΠ±ΠΎΠ±Ρ‰Π΅Π½Π½Ρ‹Π΅ Ρ‚ΠΈΠΏΡ‹) ΠΏΠΎΠ·Π²ΠΎΠ»ΡΡŽΡ‚ ΡΠΎΠ·Π΄Π°Π²Π°Ρ‚ΡŒ классы с ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€Π°ΠΌΠΈ (абстрактными Ρ‚ΠΈΠΏΠ°ΠΌΠΈ), ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΡƒΠΊΠ°Π·Ρ‹Π²Π°ΡŽΡ‚ΡΡ Π½Π° этапС инстанциирования. Π—Π° подробностями ΠΎΠ±Ρ€Π°Ρ‚ΠΈΡ‚Π΅ΡΡŒ ΠΊ ΡΡ‚Π°Ρ‚ΡŒΠ΅ , Π° Ρ‚Π°ΠΊΠΆΠ΅ ΠΎΠ·Π½Π°ΠΊΠΎΠΌΡŒΡ‚Π΅ΡΡŒ со ΡΡ‚Π°Ρ‚ΡŒΠ΅ΠΉ , Π² ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΉ рассказываСтся ΠΎ Ρ‚ΠΎΠΌ, ΠΊΠ°ΠΊ ΠΎΠ±ΠΎΠ±Ρ‰Π΅Π½Π½Ρ‹Π΅ Ρ‚ΠΈΠΏΡ‹ ΠΎΠ±Π»Π΅Π³Ρ‡Π°ΡŽΡ‚ Ρ€Π°Π±ΠΎΡ‚Ρƒ с коллСкциями Π² Java SE 6.0.
  • Π£Ρ‚ΠΈΠ»ΠΈΡ‚Ρ‹ Concurrency - это Π½Π°Π±ΠΎΡ€ классов, ΠΏΡ€Π΅Π΄ΠΎΡΡ‚Π°Π²Π»ΡΡŽΡ‰ΠΈΡ… Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΎΠ½Π°Π»ΡŒΠ½ΠΎΡΡ‚ΡŒ срСднСго уровня, которая ΠΎΠ±Ρ‹Ρ‡Π½ΠΎ трСбуСтся прилоТСниям, Π²Ρ‹ΠΏΠΎΠ»Π½ΡΡŽΡ‰ΠΈΠΌ ΠΏΠ°Ρ€Π°Π»Π»Π΅Π»ΡŒΠ½ΡƒΡŽ ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΡƒ Π΄Π°Π½Π½Ρ‹Ρ….
  • Java API for XML Processing (JAXP) - это API, ΠΏΡ€ΠΈ ΠΏΠΎΠΌΠΎΡ‰ΠΈ ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ³ΠΎ Java-прилоТСния ΠΌΠΎΠ³ΡƒΡ‚ Ρ€Π°Π·Π±ΠΈΡ€Π°Ρ‚ΡŒ ΠΈ ΠΏΡ€Π΅ΠΎΠ±Ρ€Π°Π·ΠΎΠ²Ρ‹Π²Π°Ρ‚ΡŒ XML-Π΄ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚Ρ‹ Π²Π½Π΅ зависимости ΠΎΡ‚ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅ΠΌΠΎΠ³ΠΎ процСссора XML. Π­Ρ‚ΠΎ позволяСт прилоТСниям Π»Π΅Π³ΠΊΠΎ ΠΏΠ΅Ρ€Π΅ΠΊΠ»ΡŽΡ‡Π°Ρ‚ΡŒΡΡ ΠΌΠ΅ΠΆΠ΄Ρƒ Ρ€Π°Π·Π½Ρ‹ΠΌΠΈ процСссорами Π±Π΅Π· ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠΉ Π² ΠΏΡ€ΠΈΠΊΠ»Π°Π΄Π½ΠΎΠΌ ΠΊΠΎΠ΄Π΅. Π’ свою ΠΎΡ‡Π΅Ρ€Π΅Π΄ΡŒ, тСхнология JAXB (Java API for XML Binding ) прСдоставляСт возмоТности для Π°Π²Ρ‚ΠΎΠΌΠ°Ρ‚ΠΈΠ·Π°Ρ†ΠΈΠΈ сопоставлСния Π΄ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚ΠΎΠ² XML ΠΈ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ΠΎΠ² Java.
  • SOAP with Attachments API for Java (SAAJ) прСдоставляСт Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠ°ΠΌ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ для формирования ΠΈ ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ сообщСний Π² соотвСтствии со спСцификациСй SOAP 1.1 c ΡƒΠΊΠ°Π·Π°Π½ΠΈΠ΅ΠΌ SOAP with Attachments (SOAP с влоТСниями). Π—Π° Π±ΠΎΠ»Π΅Π΅ ΠΏΠΎΠ΄Ρ€ΠΎΠ±Π½ΠΎΠΉ ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠ΅ΠΉ ΠΎΠ±Ρ€Π°Ρ‚ΠΈΡ‚Π΅ΡΡŒ ΠΊ ΡΡ‚Π°Ρ‚ΡŒΠ΅ ).

Π’Π΅Ρ…Π½ΠΎΠ»ΠΎΠ³ΠΈΠΈ, входящиС Π² состав J2EE:

  • Enterprise JavaBeans (EJB) - это компонСнтная модСль, которая ΡƒΠΏΡ€ΠΎΡ‰Π°Π΅Ρ‚ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΡƒ ΡΠ²ΡΠ·ΡƒΡŽΡ‰Π΅Π³ΠΎ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½ΠΎΠ³ΠΎ обСспСчСния, прСдоставляя Ρ‚Π°ΠΊΠΈΠ΅ сСрвисы, ΠΊΠ°ΠΊ ΡƒΠΏΡ€Π°Π²Π»Π΅Π½ΠΈΠ΅ транзакциями, обСспСчСниС бСзопасности ΠΈ ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠ΅ ΠΊ Π±Π°Π·Π°ΠΌ Π΄Π°Π½Π½Ρ‹Ρ….
  • БпСцификация ΠΏΠΎΡ€Ρ‚Π»Π΅Ρ‚ΠΎΠ² опрСдСляСт Π½Π°Π±ΠΎΡ€ API для создания ΠΏΠΎΡ€Ρ‚Π°Π»ΠΎΠ² Π½Π° Java, охватывая Ρ‚Π°ΠΊΠΈΠ΅ аспСкты, ΠΊΠ°ΠΊ Π°Π³Ρ€Π΅Π³ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ ΠΈ прСдставлСниС ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΈ, пСрсонализация ΠΈ обСспСчСниС бСзопасности (см. ΡΡ‚Π°Ρ‚ΡŒΡŽ ).
  • JavaMail - это API, ΠΏΡ€Π΅Π΄ΠΎΡΡ‚Π°Π²Π»ΡΡŽΡ‰ΠΈΠΉ Π½Π°Π±ΠΎΡ€ абстрактных классов, ΠΌΠΎΠ΄Π΅Π»ΠΈΡ€ΡƒΡŽΡ‰ΠΈΡ… ΠΏΠΎΡ‡Ρ‚ΠΎΠ²ΡƒΡŽ систСму.
  • Java Message Service (JMS) - это API, ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°ΡŽΡ‰ΠΈΠΉ созданиС пСрСносимых Java-ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ Π½Π° основС ΠΌΠ΅Ρ…Π°Π½ΠΈΠ·ΠΌΠ° ΠΎΠ±ΠΌΠ΅Π½Π° сообщСниями. Он опрСдСляСт ΠΎΠ±Ρ‰ΠΈΠΉ Π½Π°Π±ΠΎΡ€ Π±Π°Π·ΠΎΠ²Ρ‹Ρ… понятий ΠΈ стратСгий программирования для всСх систСм ΠΎΠ±ΠΌΠ΅Π½Π° сообщСниями, совмСстимых с JMS .
  • JavaServer Faces (JSF) прСдоставляСт ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½ΡƒΡŽ модСль, ΠΏΠΎΠΌΠΎΠ³Π°ΡŽΡ‰ΡƒΡŽ ΡΠΎΠ·Π΄Π°Π²Π°Ρ‚ΡŒ Web-прилоТСния ΠΏΡƒΡ‚Π΅ΠΌ ΠΊΠΎΠΌΠΏΠΎΠ½ΠΎΠ²ΠΊΠΈ страниц ΠΈΠ· ΠΌΠ½ΠΎΠ³ΠΎΠΊΡ€Π°Ρ‚Π½ΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅ΠΌΡ‹Ρ… ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚ΠΎΠ² ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΡΠΊΠΎΠ³ΠΎ интСрфСйса, Π° Ρ‚Π°ΠΊΠΆΠ΅ связывания этих ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚ΠΎΠ² с источниками Π΄Π°Π½Π½Ρ‹Ρ…, Π° событий, Π³Π΅Π½Π΅Ρ€ΠΈΡ€ΡƒΠ΅ΠΌΡ‹Ρ… Π½Π° ΠΊΠ»ΠΈΠ΅Π½Ρ‚Π΅ - с сСрвСрными ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠ°ΠΌΠΈ. Π—Π° Π±ΠΎΠ»Π΅Π΅ ΠΏΠΎΠ΄Ρ€ΠΎΠ±Π½ΠΎΠΉ ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠ΅ΠΉ ΠΎΠ±Ρ€Π°Ρ‚ΠΈΡ‚Π΅ΡΡŒ ΠΊ руководству ΠΈΠ· Π΄Π²ΡƒΡ… частСй ΠΈ сСрии статСй ΠΊΠΎΠ»ΠΎΠ½ΠΊΠΈ .
  • JavaServer Pages (JSP) прСдоставляСт Web-Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠ°ΠΌ срСдства для быстрого создания ΠΈ простой ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠΈ динамичСских, кросс-ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΠ΅Π½Π½Ρ‹Ρ… Web-страниц, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Ρ€Π°Π·Π΄Π΅Π»ΡΡŽΡ‚ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΡΠΊΠΈΠΉ интСрфСйс ΠΈ Π³Π΅Π½Π΅Ρ€Π°Ρ†ΠΈΡŽ ΠΊΠΎΠ½Ρ‚Π΅Π½Ρ‚Π°, благодаря Ρ‡Π΅ΠΌΡƒ Π΄ΠΈΠ·Π°ΠΉΠ½Π΅Ρ€Ρ‹ ΠΌΠΎΠ³ΡƒΡ‚ ΠΈΠ·ΠΌΠ΅Π½ΡΡ‚ΡŒ Ρ€Π°Π·ΠΌΠ΅Ρ‚ΠΊΡƒ, Π½Π΅ трогая динамичСски Ρ„ΠΎΡ€ΠΌΠΈΡ€ΡƒΠ΅ΠΌΠΎΠ΅ содСрТимоС (см. руководство .
  • Бтандартная Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠ° Ρ‚Π΅Π³ΠΎΠ² для JavaServer Pages (JSTL) - это Π½Π°Π±ΠΎΡ€ спСциализированных Ρ‚Π΅Π³ΠΎΠ², ΠΏΡ€Π΅Π΄ΠΎΡΡ‚Π°Π²Π»ΡΡŽΡ‰ΠΈΡ… стандартный Ρ„ΠΎΡ€ΠΌΠ°Ρ‚ для выполнСния дСйствий, Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΡ‹Ρ… ΠΌΠ½ΠΎΠ³ΠΈΠΌ Web-прилоТСниям. ΠžΠ·Π½Π°ΠΊΠΎΠΌΡŒΡ‚Π΅ΡΡŒ со ΡΡ‚Π°Ρ‚ΡŒΠ΅ΠΉ ΠžΠ±Π½ΠΎΠ²ΠΈΡ‚Π΅ ваши страницы JSP ΠΏΡ€ΠΈ ΠΏΠΎΠΌΠΎΡ‰ΠΈ JSTL (EN) ΠΈ сСриСй ΠΈΠ· Ρ‡Π΅Ρ‚Ρ‹Ρ€Π΅Ρ… частСй ΠΏΠΎΠ΄ Π½Π°Π·Π²Π°Π½ΠΈΠ΅ΠΌ .
  • Π‘Π΅Ρ€Π²Π»Π΅Ρ‚Ρ‹ Java Ρ€Π°ΡΡˆΠΈΡ€ΡΡŽΡ‚ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΎΠ½Π°Π»ΡŒΠ½ΠΎΡΡ‚ΡŒ Web-сСрвСров, прСдоставляя кросс-ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΠ΅Π½Π½Ρ‹ΠΉ, ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚Π½Ρ‹ΠΉ ΠΏΠΎΠ΄Ρ…ΠΎΠ΄ ΠΊ созданию Web-ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ, свободный ΠΎΡ‚ ΠΎΠ³Ρ€Π°Π½ΠΈΡ‡Π΅Π½ΠΈΠΉ ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΠΈ, Ρ…Π°Ρ€Π°ΠΊΡ‚Π΅Ρ€Π½Ρ‹Ρ… для CGI.
  • J2EE Connector Architecture (JCA) прСдоставляСт ΡΡ‚Π°Π½Π΄Π°Ρ€Ρ‚Π½ΡƒΡŽ Π°Ρ€Ρ…ΠΈΡ‚Π΅ΠΊΡ‚ΡƒΡ€Ρƒ для ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΡ ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ J2EE ΠΊ Ρ€Π°Π·Π½ΠΎΡ€ΠΎΠ΄Π½Ρ‹ΠΌ ΠΊΠΎΡ€ΠΏΠΎΡ€Π°Ρ‚ΠΈΠ²Π½Ρ‹ΠΌ ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΎΠ½Π½Ρ‹ΠΌ систСмам (EIS). Π­Ρ‚Π° Π°Ρ€Ρ…ΠΈΡ‚Π΅ΠΊΡ‚ΡƒΡ€Π° опрСдСляСт Π½Π°Π±ΠΎΡ€ ΠΌΠ°ΡΡˆΡ‚Π°Π±ΠΈΡ€ΡƒΠ΅ΠΌΡ‹Ρ… ΠΈ бСзопасных ΠΌΠ΅Ρ…Π°Π½ΠΈΠ·ΠΌΠΎΠ² Π½Π° основС Ρ‚Ρ€Π°Π½Π·Π°ΠΊΡ†ΠΈΠΉ, ΠΏΡ€ΠΈ ΠΏΠΎΠΌΠΎΡ‰ΠΈ ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Ρ… поставщики EIS ΠΌΠΎΠ³ΡƒΡ‚ ΠΏΡ€Π΅Π΄ΠΎΡΡ‚Π°Π²Π»ΡΡ‚ΡŒ стандартныС Π°Π΄Π°ΠΏΡ‚Π΅Ρ€Ρ‹ рСсурсов для Π²ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΡ Π² сСрвСр ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ. Π—Π° Π±ΠΎΠ»Π΅Π΅ ΠΏΠΎΠ΄Ρ€ΠΎΠ±Π½ΠΎΠΉ ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠ΅ΠΉ ΠΎΠ±Ρ€Π°Ρ‚ΠΈΡ‚Π΅ΡΡŒ ΠΊ ΡΡ‚Π°Ρ‚ΡŒΡΠΌ , ΠΈ руководству .
  • БпСцификация J2EE Management (JMX) опрСдСляСт ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΎΠ½Π½ΡƒΡŽ модСль управлСния для ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΡ‹ J2EE. Π­Ρ‚Π° модСль Π±Ρ‹Π»Π° ΡΠΏΠ΅Ρ†ΠΈΠ°Π»ΡŒΠ½ΠΎ спроСктирована для взаимодСйствия со ΠΌΠ½ΠΎΠ³ΠΈΠΌΠΈ систСмами ΠΈ ΠΏΡ€ΠΎΡ‚ΠΎΠΊΠΎΠ»Π°ΠΌΠΈ управлСния. Она содСрТит стандартныС срСдства для сопоставлСния с ΠΎΠ±Ρ‰Π΅ΠΉ ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΎΠ½Π½ΠΎΠΉ модСлью (Common Information Model - CIM), ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΎΠ½Π½ΠΎΠΉ Π±Π°Π·ΠΎΠΉ управлСния SNMP (SNMP Management Information Base - MIB) ΠΈ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π½ΠΎΠΉ модСлью Java ΠΏΡ€ΠΈ ΠΏΠΎΠΌΠΎΡ‰ΠΈ Ρ€Π΅Π·ΠΈΠ΄Π΅Π½Ρ‚Π½ΠΎΠ³ΠΎ сСрвСрного ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚Π° EJB (J2EE Management EJB Component - MEJB).
  • Java Transaction API (JTA) – это высокоуровнСвая рСализация ΠΈ нСзависимый ΠΎΡ‚ ΠΏΡ€ΠΎΡ‚ΠΎΠΊΠΎΠ»ΠΎΠ² API, ΠΏΡ€Π΅Π΄ΠΎΡΡ‚Π°Π²Π»ΡΡŽΡ‰ΠΈΠΉ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ°ΠΌ ΠΈ сСрвСрам ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ срСдства для доступа ΠΊ транзакциям. Java Transaction Service (JTS) опрСдСляСт Ρ€Π΅Π°Π»ΠΈΠ·Π°Ρ†ΠΈΡŽ ΠΌΠ΅Π½Π΅Π΄ΠΆΠ΅Ρ€Π° Ρ‚Ρ€Π°Π½Π·Π°ΠΊΡ†ΠΈΠΉ, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°Π΅Ρ‚ JTA ΠΈ Ρ€Π΅Π°Π»ΠΈΠ·ΡƒΠ΅Ρ‚ Π½Π° Π½ΠΈΠΆΠ΅Π»Π΅ΠΆΠ°Ρ‰Π΅ΠΌ ΡƒΡ€ΠΎΠ²Π½Π΅ сопоставлСниС с ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π½Ρ‹ΠΌ Ρ‚Ρ€Π°Π½Π·Π°ΠΊΡ†ΠΈΠΎΠ½Π½Ρ‹ΠΌ сСрвисом OMG (Object Transaction Service - OTS 1.1). РаспространСниС Ρ‚Ρ€Π°Π½Π·Π°ΠΊΡ†ΠΈΠΉ Π² JTS рСализуСтся ΠΏΡ€ΠΈ ΠΏΠΎΠΌΠΎΡ‰ΠΈ ΠΏΡ€ΠΎΡ‚ΠΎΠΊΠΎΠ»Π° Inter-ORB (IIOP). Π—Π° Π±ΠΎΠ»Π΅Π΅ ΠΏΠΎΠ΄Ρ€ΠΎΠ±Π½ΠΎΠΉ ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠ΅ΠΉ ΠΎΠ±Ρ€Π°Ρ‚ΠΈΡ‚Π΅ΡΡŒ ΠΊ ΡΡ‚Π°Ρ‚ΡŒΠ΅ .

Π’Π΅Ρ…Π½ΠΎΠ»ΠΎΠ³ΠΈΠΈ, входящиС Π² состав J2ME:

  • Mobile Information Device Profile (MIDP) - это ΠΎΠ΄Π½Π° ΠΈΠ· Π΄Π²ΡƒΡ… ΠΊΠΎΠ½Ρ„ΠΈΠ³ΡƒΡ€Π°Ρ†ΠΈΠΉ, ΡΠΎΡΡ‚Π°Π²Π»ΡΡŽΡ‰ΠΈΡ… срСду выполнСния Java для ΠΌΠΎΠ±ΠΈΠ»ΡŒΠ½Ρ‹Ρ… устройств с ΠΎΠ³Ρ€Π°Π½ΠΈΡ‡Π΅Π½Π½Ρ‹ΠΌΠΈ рСсурсами. MIDP прСдоставляСт прилоТСниям Π±Π°Π·ΠΎΠ²ΡƒΡŽ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΎΠ½Π°Π»ΡŒΠ½ΠΎΡΡ‚ΡŒ, Π²ΠΊΠ»ΡŽΡ‡Π°ΡŽΡ‰ΡƒΡŽ Π² сСбя срСдства для создания интСрфСйсов ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Ρ, ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΡ ΠΊ сСтСвым рСсурсам, локального хранСния Π΄Π°Π½Π½Ρ‹Ρ… ΠΈ управлСния ΠΆΠΈΠ·Π½Π΅Π½Π½Ρ‹ΠΌ Ρ†ΠΈΠΊΠ»ΠΎΠΌ.
  • Connected Device Configuration (CDC) – это стандартизированная инфраструктура для создания ΠΈ развСртывания ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ, доступ ΠΊ ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΌ ΠΌΠΎΠΆΠ΅Ρ‚ ΠΎΡΡƒΡ‰Π΅ΡΡ‚Π²Π»ΡΡ‚ΡŒΡΡ со стороны ΠΌΠ½ΠΎΠ³ΠΈΡ… сСтСвых ΠΈ встроСнных устройств.
  • Mobile 3D Graphics API для J2ME (M3G) - это лСгковСсный ΠΈΠ½Ρ‚Π΅Ρ€Π°ΠΊΡ‚ΠΈΠ²Π½Ρ‹ΠΉ API для Ρ€Π΅Π°Π»ΠΈΠ·Π°Ρ†ΠΈΠΈ Ρ‚Ρ€Π΅Ρ…ΠΌΠ΅Ρ€Π½ΠΎΠΉ Π³Ρ€Π°Ρ„ΠΈΠΊΠΈ, ΡΠ²Π»ΡΡŽΡ‰ΠΈΠΉΡΡ Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹ΠΌ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚ΠΎΠΌ J2ME. ΠŸΠΎΠ΄Ρ€ΠΎΠ±Π½Π΅Π΅ ΠΎ Π½Π΅ΠΌ ΠΌΠΎΠΆΠ½ΠΎ ΠΏΡ€ΠΎΡ‡ΠΈΡ‚Π°Ρ‚ΡŒ Π² сСрии ΠΈΠ· Π΄Π²ΡƒΡ… частСй .

Π’Π΅Ρ…Π½ΠΎΠ»ΠΎΠ³ΠΈΠΈ Java ΠΈ созданиС Web-ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ

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

ΠžΠ·Π½Π°ΠΊΠΎΠΌΡŒΡ‚Π΅ΡΡŒ с ΠΏΡ€ΠΈΠ²Π΅Π΄Π΅Π½Π½Ρ‹ΠΌΠΈ Π½ΠΈΠΆΠ΅ ΠΌΠ°Ρ‚Π΅Ρ€ΠΈΠ°Π»Π°ΠΌΠΈ, посвящСнным вопросам Web-Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ Π½Π° Java.

  • Π‘Ρ‚Π°Ρ‚ΡŒΠΈ ΠΊΠΎΠ»ΠΎΠ½ΠΊΠΈ Ρ€Π°ΡΡΠΊΠ°Π·Ρ‹Π²Π°ΡŽΡ‚ ΠΎ Grails – соврСмСнной инфраструктурС для создания Web-ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ, написанных Π½Π° Groovy. Grails позволяСт ΠΎΡ€Π³Π°Π½ΠΈΡ‡Π½ΠΎ ΡΠΎΡ‡Π΅Ρ‚Π°Ρ‚ΡŒ Ρ€Π°Π½Π΅Π΅ написанный ΠΊΠΎΠ΄ Π½Π° Java с Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚ΡŒΡŽ использования Π³ΠΈΠ±ΠΊΠΎΠ³ΠΎ ΠΈ динамичСского скриптового языка. Π‘ΠΎΠ»Π΅Π΅ подробная информация ΠΎ Groovy ΠΏΡ€ΠΈΠ²Π΅Π΄Π΅Π½Π° Π½ΠΈΠΆΠ΅, Π² Ρ€Π°Π·Π΄Π΅Π»Π΅ КакоС ΠΎΡ‚Π½ΠΎΡˆΠ΅Π½ΠΈΠ΅ ΠΈΠΌΠ΅Π΅Ρ‚ Java ΠΊ динамичСским языкам ΠΈ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΎΠ½Π°Π»ΡŒΠ½ΠΎΠΌΡƒ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΡŽ?.
  • Ajax – это мСтодология программирования, ΠΏΡ€Π΅Π΄ΡƒΡΠΌΠ°Ρ‚Ρ€ΠΈΠ²Π°ΡŽΡ‰Π°Ρ использованиС скриптовых языков Π½Π° сторонС ΠΊΠ»ΠΈΠ΅Π½Ρ‚Π° для ΠΎΠ±ΠΌΠ΅Π½Π° Π΄Π°Π½Π½Ρ‹ΠΌΠΈ с Web-сСрвСром, Ρ‡Ρ‚ΠΎ позволяСт быстро ΠΎΠ±Π½ΠΎΠ²Π»ΡΡ‚ΡŒ ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΡŽ Π½Π° страницах Π±Π΅Π· нСобходимости ΠΈΡ… ΠΏΠΎΠ»Π½ΠΎΠΉ ΠΏΠ΅Ρ€Π΅Π·Π°Π³Ρ€ΡƒΠ·ΠΊΠΈ. ΠŸΡ€ΠΎΡ‡ΠΈΡ‚Π°Π² сСрии статСй ΠΈ , Π²Ρ‹ ΡƒΠ·Π½Π°Π΅Ρ‚Π΅, Ρ‡Π΅ΠΌ Ajax ΠΌΠΎΠΆΠ΅Ρ‚ ΠΏΠΎΠΌΠΎΡ‡ΡŒ Π²Π°ΠΌ ΠΊΠ°ΠΊ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΡƒ Java-ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ. Π—Π° Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΠΉ ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠ΅ΠΉ Π²Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ ΠΎΠ±Ρ€Π°Ρ‚ΠΈΡ‚Π΅ΡΡŒ ΠΊ Π½Π° сайтС developerWorks.
  • JavaServer Faces (JSF) прСдоставляСт ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½ΡƒΡŽ модСль, ΠΏΠΎΠΌΠΎΠ³Π°ΡŽΡ‰ΡƒΡŽ ΡΠΎΠ·Π΄Π°Π²Π°Ρ‚ΡŒ Web-прилоТСния ΠΏΡƒΡ‚Π΅ΠΌ ΠΊΠΎΠΌΠΏΠΎΠ½ΠΎΠ²ΠΊΠΈ страниц ΠΈΠ· ΠΌΠ½ΠΎΠ³ΠΎΠΊΡ€Π°Ρ‚Π½ΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅ΠΌΡ‹Ρ… ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚ΠΎΠ² ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΡΠΊΠΎΠ³ΠΎ интСрфСйса, Π° Ρ‚Π°ΠΊΠΆΠ΅ связывания этих ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚ΠΎΠ² с источниками Π΄Π°Π½Π½Ρ‹Ρ…, Π° событий, Π³Π΅Π½Π΅Ρ€ΠΈΡ€ΡƒΠ΅ΠΌΡ‹Ρ… Π½Π° ΠΊΠ»ΠΈΠ΅Π½Ρ‚Π΅ - с сСрвСрными ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠ°ΠΌΠΈ. Π—Π° Π±ΠΎΠ»Π΅Π΅ ΠΏΠΎΠ΄Ρ€ΠΎΠ±Π½ΠΎΠΉ ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠ΅ΠΉ ΠΎΠ±Ρ€Π°Ρ‚ΠΈΡ‚Π΅ΡΡŒ ΠΊ руководству ΠΈΠ· Π΄Π²ΡƒΡ… частСй ΠΈ сСрии статСй ΠΊΠΎΠ»ΠΎΠ½ΠΊΠΈ .
  • ΠŸΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΠ° Web-инструмСнтария Eclipse (Web Tools Platform – WTP) Ρ€Π°ΡΡˆΠΈΡ€ΡΠ΅Ρ‚ ΠΏΠΎΠΏΡƒΠ»ΡΡ€Π½ΡƒΡŽ срСду Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ Eclipse, добавляя Π² Π½Π΅Π΅ срСдства для создания Web-ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ Π½Π° основС Ρ‚Π΅Ρ…Π½ΠΎΠ»ΠΎΠ³ΠΈΠΉ Java EE (см. руководство ).
  • Π’ Π½Π° сайтС developerWorks ΠΌΠΎΠΆΠ½ΠΎ Π½Π°ΠΉΡ‚ΠΈ мноТСство Π΄Ρ€ΡƒΠ³ΠΈΡ… прСвосходных ΠΌΠ°Ρ‚Π΅Ρ€ΠΈΠ°Π»ΠΎΠ² ΠΏΠΎ этим вопросам.

Π’Π΅Ρ…Π½ΠΎΠ»ΠΎΠ³ΠΈΠΈ Java, SOA ΠΈ Web-сСрвисы

БСрвис-ориСнтированная Π°Ρ€Ρ…ΠΈΡ‚Π΅ΠΊΡ‚ΡƒΡ€Π° (SOA) – это компонСнтная модСль, ΡΠ²ΡΠ·Ρ‹Π²Π°ΡŽΡ‰Π°Ρ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΎΠ½Π°Π»ΡŒΠ½Ρ‹Π΅ ΠΌΠΎΠ΄ΡƒΠ»ΠΈ прилоТСния (извСстныС ΠΊΠ°ΠΊ сСрвисы , ΠΎΡ‚ΠΊΡƒΠ΄Π° ΠΏΡ€ΠΎΠΈΠ·ΠΎΡˆΠ΅Π» Ρ‚Π΅Ρ€ΠΌΠΈΠ½ Web-сСрвисы ) Ρ‡Π΅Ρ€Π΅Π· строго описанныС интСрфСйсы ΠΈ ΠΊΠΎΠ½Ρ‚Ρ€Π°ΠΊΡ‚Ρ‹. ΠžΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½ΠΈΡ интСрфСйсов Π½Π΅ зависят ΠΎΡ‚ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅ΠΌΠΎΠ³ΠΎ Π°ΠΏΠΏΠ°Ρ€Π°Ρ‚Π½ΠΎΠ³ΠΎ обСспСчСния, ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΎΠ½Π½ΠΎΠΉ систСмы ΠΈ языка программирования, Π½Π° ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΌ Ρ€Π΅Π°Π»ΠΈΠ·ΠΎΠ²Π°Π½ сСрвис, благодаря Ρ‡Π΅ΠΌΡƒ поддСрТиваСтся ΡƒΠ½ΠΈΡ„ΠΈΡ†ΠΈΡ€ΠΎΠ²Π°Π½Π½ΠΎΠ΅ взаимодСйствиС ΠΌΠ΅ΠΆΠ΄Ρƒ сСрвисами, ΡΠ²Π»ΡΡŽΡ‰ΠΈΠΌΠΈΡΡ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚Π°ΠΌΠΈ Ρ€Π°Π·Π½Ρ‹Ρ… систСм. SOA – это ΠΏΡ€ΠΈΠΌΠ΅Ρ€ слабо связанной ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½ΠΎΠΉ ΠΌΠΎΠ΄Π΅Π»ΠΈ, ΠΏΡ€Π΅Π΄ΡΡ‚Π°Π²Π»ΡΡŽΡ‰Π΅ΠΉ собой Π°Π»ΡŒΡ‚Π΅Ρ€Π½Π°Ρ‚ΠΈΠ²Ρƒ классичСским сильно связанным ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π½ΠΎ-ΠΎΡ€ΠΈΠ΅Π½Ρ‚ΠΈΡ€ΠΎΠ²Π°Π½Π½Ρ‹ΠΌ модСлям.

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

Π‘ΠΎΠ»Π΅Π΅ ΠΏΠΎΠ΄Ρ€ΠΎΠ±Π½ΡƒΡŽ ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΡŽ ΠΌΠΎΠΆΠ½ΠΎ ΠΏΠΎΠ»ΡƒΡ‡ΠΈΡ‚ΡŒ, ΠΏΡ€ΠΎΡ‡ΠΈΡ‚Π°Π² ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠ΅ ΠΌΠ°Ρ‚Π΅Ρ€ΠΈΠ°Π»Ρ‹:

  • Π‘Ρ‚Ρ€Π°Π½ΠΈΡ†Ρ‹ ΠΈ Π½Π° сайтС developerWorks ΠΏΠΎΠΌΠΎΠ³ΡƒΡ‚ Π²Π°ΠΌ ΡΠΎΡ€ΠΈΠ΅Π½Ρ‚ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒΡΡ Π² этих нСпростых тСхнологиях.
  • Π’ ΡΡ‚Π°Ρ‚ΡŒΡΡ… сСрии рассказываСтся ΠΎΠ± инфраструктурах Web-сСрвисов Π½Π° Java, Π° Ρ‚Π°ΠΊΠΆΠ΅ ΠΎ Π½ΠΎΠ²Ρ‹Ρ… Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΎΠ½Π°Π»ΡŒΠ½Ρ‹Ρ… слоях, созданных Π½Π° Π±Π°Π·Π΅ этих сСрвисов.
  • Π’ ΡΡ‚Π°Ρ‚ΡŒΠ΅ приводится Π²Π²Π΅Π΄Π΅Π½ΠΈΠ΅ Π² элСгантный ΡΡ‚ΠΈΠ»ΡŒ проСктирования Web-сСрвисов ΠΏΠΎΠ΄ Π½Π°Π·Π²Π°Π½ΠΈΠ΅ΠΌ ΠŸΠ΅Ρ€Π΅Π΄Π°Ρ‡Π° Ρ€Π΅ΠΏΡ€Π΅Π·Π΅Π½Ρ‚Π°Ρ‚ΠΈΠ²Π½ΠΎΠ³ΠΎ состояния (Representational State Transfer - REST) ΠΈ рассказываСтся ΠΎΠ± использовании Java для создания Web-сСрвисов ΠΏΠΎ ΠΏΡ€ΠΈΠ½Ρ†ΠΈΠΏΠ°ΠΌ REST.
  • ПониманиС Ρ‚Π΅Ρ…Π½ΠΎΠ»ΠΎΠ³ΠΈΠΈ JAX-RPC (RPC Π½Π° основС API Java для Ρ€Π°Π±ΠΎΡ‚Ρ‹ с XML) ΠΈΠΌΠ΅Π΅Ρ‚ большоС Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ для создания эффСктивных Web-сСрвисов Π½Π° Java.
  • JAX-WS – это ΠΎΡ‡Π΅Π²ΠΈΠ΄Π½Ρ‹ΠΉ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠΉ шаг Π² Ρ€Π°Π·Π²ΠΈΡ‚ΠΈΠΈ JAX-RPC. ΠŸΡ€Π°ΠΊΡ‚ΠΈΡ‡Π΅ΡΠΊΠΎΠ΅ Π²Π²Π΅Π΄Π΅Π½ΠΈΠ΅ Π² этот Π½ΠΎΠ²Ρ‹ΠΉ API Π΄Π°Π½ΠΎ Π² руководствС .
  • БСрия статСй прСдставляСт собой руководство ΠΏΠΎ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚Π½ΠΎΠΉ Π°Ρ€Ρ…ΠΈΡ‚Π΅ΠΊΡ‚ΡƒΡ€Π΅ сСрвисов (Service Component Architecture - SCA) - спСцификации, ΠΎΠΏΠΈΡΡ‹Π²Π°ΡŽΡ‰Π΅ΠΉ модСль Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ ΠΈ систСм ΠΏΠΎ ΠΏΡ€ΠΈΠ½Ρ†ΠΈΠΏΠ°ΠΌ SOA.
  • Π’ ΡΡ‚Π°Ρ‚ΡŒΠ΅ приводится Π²Π²Π΅Π΄Π΅Π½ΠΈΠ΅ Π² инфраструктуру Service Data Objects (ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Ρ‹ Π΄Π°Π½Π½Ρ‹Ρ… сСрвисов), которая ΡƒΠΏΡ€ΠΎΡ‰Π°Π΅Ρ‚ модСль Ρ€Π°Π±ΠΎΡ‚Ρ‹ с Π΄Π°Π½Π½Ρ‹ΠΌΠΈ Π² Java EE ΠΏΡ€ΠΈ создании SOA-ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ.

КакоС ΠΎΡ‚Π½ΠΎΡˆΠ΅Π½ΠΈΠ΅ ΠΈΠΌΠ΅Π΅Ρ‚ Java ΠΊ динамичСским языкам ΠΈ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΎΠ½Π°Π»ΡŒΠ½ΠΎΠΌΡƒ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΡŽ?

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

ΠŸΠΎΠ΄Ρ€ΠΎΠ±Π½Π΅Π΅ ΠΎ возмоТностях примСнСния динамичСских ΠΈ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΎΠ½Π°Π»ΡŒΠ½Ρ‹Ρ… языков Π½Π° ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΠ΅ Java ΠΌΠΎΠΆΠ½ΠΎ ΠΏΡ€ΠΎΡ‡ΠΈΡ‚Π°Ρ‚ΡŒ Π² ΠΌΠ°Ρ‚Π΅Ρ€ΠΈΠ°Π»Π°Ρ…, ссылки Π½Π° ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΏΡ€ΠΈΠ²Π΅Π΄Π΅Π½Ρ‹ Π½ΠΈΠΆΠ΅.

  • Π‘ΠΊΡ€ΠΈΠΏΡ‚ΠΎΠ²Ρ‹ΠΉ язык Groovy позволяСт Java-Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠ°ΠΌ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ Π½Π°ΠΈΠ±ΠΎΠ»Π΅Π΅ ΠΏΡ€ΠΈΠ²Ρ‹Ρ‡Π½Ρ‹Π΅ языковыС конструкции ΠΈ Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠΈ, ΠΏΡ€ΠΈ этом прСдоставляя Π³ΠΈΠ±ΠΊΡƒΡŽ, Π΄ΠΈΠ½Π°ΠΌΠΈΡ‡Π΅ΡΠΊΡƒΡŽ срСду Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ, которая Π½Π΅ Ρ‚Ρ€Π΅Π±ΡƒΠ΅Ρ‚ компиляции, ΡƒΠΏΡ€ΠΎΡ‰Π°Π΅Ρ‚ синтаксис ΠΈ ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°Π΅Ρ‚ Π²Ρ‹ΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅ скриптов Π²Π½ΡƒΡ‚Ρ€ΠΈ ΠΎΠ±Ρ‹Ρ‡Π½Ρ‹Ρ… Java-ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ. Π”Π΅Ρ‚Π°Π»ΡŒΠ½Ρ‹ΠΉ ΠΎΠ±Π·ΠΎΡ€ возмоТностСй этого языка приводится Π² ΡΡ‚Π°Ρ‚ΡŒΡΡ… сСрии .
  • Новый API скриптов Π² Java SE 6, ΠΎΠ±Π΅ΡΠΏΠ΅Ρ‡ΠΈΠ²Π°ΡŽΡ‰ΠΈΠΉ ΠΎΠ±Ρ€Π°Ρ‚Π½ΡƒΡŽ ΡΠΎΠ²ΠΌΠ΅ΡΡ‚ΠΈΠΌΠΎΡΡ‚ΡŒ с Java SE 5 ΠΈ содСрТащий нСбольшой Π½Π°Π±ΠΎΡ€ интСрфСйсов ΠΈ классов, прСдоставляСт простой способ Π²Ρ‹Π·ΠΎΠ²Π° ΠΈΠ· Java-ΠΊΠΎΠ΄Π° скриптов, написанных Π½Π° дСсятках языков. Π‘ Π΅Π³ΠΎ ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ Π²Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ Π·Π°Π³Ρ€ΡƒΠΆΠ°Ρ‚ΡŒ ΠΈ Π²Ρ‹Π·Ρ‹Π²Π°Ρ‚ΡŒ внСшниС скрипты Π½Π° этапС выполнСния, динамичСски измСняя ΠΏΠΎΠ²Π΅Π΄Π΅Π½ΠΈΠ΅ прилоТСния. ΠŸΠΎΠ΄Ρ€ΠΎΠ±Π½Π΅Π΅ ΠΎΠ± этом API ΠΌΠΎΠΆΠ½ΠΎ ΠΏΡ€ΠΎΡ‡ΠΈΡ‚Π°Ρ‚ΡŒ Π² сСрии ΠΈΠ· Π΄Π²ΡƒΡ… статСй ΠΏΠΎΠ΄ Π½Π°Π·Π²Π°Π½ΠΈΠ΅ΠΌ .
  • Π’Ρ‹ - горячий сторонник Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΎΠ½Π°Π»ΡŒΠ½ΠΎΠ³ΠΎ программирования? Π’ΠΎΠ³Π΄Π° Π²Π°ΠΌ слСдуСт ΠΎΠ±Ρ€Π°Ρ‚ΠΈΡ‚ΡŒ Π²Π½ΠΈΠΌΠ°Π½ΠΈΠ΅ Π½Π° ΠΊΠΎΠ»ΠΎΠ½ΠΊΡƒ , Π² ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΉ рассказываСтся ΠΎ Scala - языкС программирования для JVM, ΡΠΎΡ‡Π΅Ρ‚Π°ΡŽΡ‰Π΅ΠΌ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΎΠ½Π°Π»ΡŒΠ½Ρ‹ΠΉ ΠΈ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π½ΠΎ-ΠΎΡ€ΠΈΠ΅Π½Ρ‚ΠΈΡ€ΠΎΠ²Π°Π½Π½Ρ‹ΠΉ ΠΏΠΎΠ΄Ρ…ΠΎΠ΄ ΠΊ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠ΅.
  • VM ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°ΡŽΡ‚ Π°Π»ΡŒΡ‚Π΅Ρ€Π½Π°Ρ‚ΠΈΠ²Π½Ρ‹Π΅ языки программирования ΡƒΠΆΠ΅ Π½Π° протяТСнии Π΄Π»ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΠ³ΠΎ Π²Ρ€Π΅ΠΌΠ΅Π½ΠΈ. Π’ ΡΡ‚Π°Ρ‚ΡŒΡΡ… ΠΊΠΎΠ»ΠΎΠ½ΠΊΠΈ ΠΌΠΎΠΆΠ½ΠΎ ΠΏΡ€ΠΎΡ‡ΠΈΡ‚Π°Ρ‚ΡŒ ΠΎ рСализациях для JVM Ρ‚Π°ΠΊΠΈΡ… языков, ΠΊΠ°ΠΊ Rexx, Ruby, JavaScript, Python ΠΈ Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Ρ… Π΄Ρ€ΡƒΠ³ΠΈΡ….

Java ΠΈ созданиС свободного ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½ΠΎΠ³ΠΎ обСспСчСния

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

  • ΠžΡ€Π³Π°Π½ΠΈΠ·Π°Ρ†ΠΈΡ Apache Software Foundation(EN) ΠΎΠ±ΡŠΠ΅Π΄ΠΈΠ½ΡΠ΅Ρ‚ мноТСство ΠΎΡ‚ΠΊΡ€Ρ‹Ρ‚Ρ‹Ρ… ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ΠΎΠ², Π±ΠΎΠ»ΡŒΡˆΠΈΠ½ΡΡ‚Π²ΠΎ ΠΈΠ· ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Ρ… Ρ€Π°Π·Ρ€Π°Π±Π°Ρ‚Ρ‹Π²Π°ΡŽΡ‚ΡΡ Π½Π° основС Ρ‚Π΅Ρ…Π½ΠΎΠ»ΠΎΠ³ΠΈΠΉ Java. НиТС пСрСчислСны Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ прСдставитСли этого сСмСйства ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ΠΎΠ².
    • Apache Struts(EN) - это инфраструктура для создания Web-ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ, Π°Ρ€Ρ…ΠΈΡ‚Π΅ΠΊΡ‚ΡƒΡ€Π° ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Ρ… слСдуСт ΠΏΡ€ΠΈΠ½Ρ†ΠΈΠΏΡƒ "МодСль-ΠŸΡ€Π΅Π΄ΡΡ‚Π°Π²Π»Π΅Π½ΠΈΠ΅-ΠšΠΎΠ½Ρ‚Ρ€ΠΎΠ»Π»Π΅Ρ€" (Model-View-Controller).
    • Apache Shale(EN) - Π΅Ρ‰Π΅ ΠΎΠ΄Π½Π° соврСмСнная инфраструктура для создания Web-ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ, ΡΠ²Π»ΡΡŽΡ‰Π°ΡΡΡ наслСдницСй Struts ΠΈ Π±Π°Π·ΠΈΡ€ΡƒΡŽΡ‰Π°ΡΡΡ Π½Π° Ρ‚Π΅Ρ…Π½ΠΎΠ»ΠΎΠ³ΠΈΠΈ JSP (JavaServer Pages). Π’Π²Π΅Π΄Π΅Π½ΠΈΠ΅ Π² Shale содСрТится Π² ΡΡ‚Π°Ρ‚ΡŒΡΡ… сСрии .
    • Apache Ant являСтся фактичСским стандартом для Π°Π²Ρ‚ΠΎΠΌΠ°Ρ‚ΠΈΠ·Π°Ρ†ΠΈΠΈ процСсса сборки Java-ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ.
    • БрСдство сборки Apache Maven(EN) ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ΠΈΡ€ΠΎΠ²Π°Π»ΠΎΡΡŒ с ΡƒΡ‡Π΅Ρ‚ΠΎΠΌ Ρ‚Ρ€Π΅Π±ΠΎΠ²Π°Π½ΠΈΠΉ соврСмСнных ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ΠΎΠ² ΠΏΠΎ созданию ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½ΠΎΠ³ΠΎ обСспСчСния, для ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Ρ… Ρ…Π°Ρ€Π°ΠΊΡ‚Π΅Ρ€Π½Ρ‹ Π΄ΠΈΠ½Π°ΠΌΠΈΡ‡Π½ΠΎΠ΅ взаимодСйствиС ΠΌΠ΅ΠΆΠ΄Ρƒ Π³Ρ€ΡƒΠΏΠΏΠ°ΠΌΠΈ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠΎΠ² ΠΈ Π·Π°Π²ΠΈΡΠΈΠΌΠΎΡΡ‚ΡŒ ΠΎΡ‚ мноТСства нСзависимо ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°Π΅ΠΌΡ‹Ρ… ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚ΠΎΠ² (см. руководство ).
    • Apache Tomcat - это популярный Web-ΠΊΠΎΠ½Ρ‚Π΅ΠΉΠ½Π΅Ρ€, ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°ΡŽΡ‰ΠΈΠΉ сСрвлСты ΠΈ сСрвСрныС страницы Java (JSP).
    • ΠŸΡ€ΠΎΠ΅ΠΊΡ‚ Apache Geronimo(EN) Π·Π°ΠΊΠ»ΡŽΡ‡Π°Π΅Ρ‚ΡΡ Π² создании ΠΏΠΎΠ»Π½ΠΎΡΡ‚ΡŒΡŽ ΡΠΎΠΎΡ‚Π²Π΅Ρ‚ΡΡ‚Π²ΡƒΡŽΡ‰Π΅Π³ΠΎ спСцификации сСрвСра ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ Java EE Π½Π° основС ΠΈΡΠΊΠ»ΡŽΡ‡ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎ свободных Ρ‚Π΅Ρ…Π½ΠΎΠ»ΠΎΠ³ΠΈΠΉ. ΠŸΠΎΠ΄Ρ€ΠΎΠ±Π½Π΅Π΅ ΠΎ Geronimo ΠΌΠΎΠΆΠ½ΠΎ ΠΏΡ€ΠΎΡ‡ΠΈΡ‚Π°Ρ‚ΡŒ Π² ΡΡ‚Π°Ρ‚ΡŒΠ΅ , Π° Ρ‚Π°ΠΊΠΆΠ΅ Π² Π½Π° сайтС developerWorks, содСрТащСм мноТСство ΠΏΠΎΠ»Π΅Π·Π½Ρ‹Ρ… ΠΌΠ°Ρ‚Π΅Ρ€ΠΈΠ°Π»ΠΎΠ².
    • Apache Derby(EN) - это сСрвСр рСляционных Π±Π°Π· Π΄Π°Π½Π½Ρ‹Ρ…, ΠΏΠΎΠ»Π½ΠΎΡΡ‚ΡŒΡŽ Ρ€Π΅Π°Π»ΠΈΠ·ΠΎΠ²Π°Π½Π½Ρ‹ΠΉ Π½Π° Java. Π’Π²Π΅Π΄Π΅Π½ΠΈΠ΅ Π² Derby приводится Π² ΡΡ‚Π°Ρ‚ΡŒΠ΅ .
  • Eclipse(EN) – это открытая ΠΈ нСзависимая ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΠ° Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ, Π° Ρ‚Π°ΠΊΠΆΠ΅ Π½Π°Π±ΠΎΡ€ Π±Π°Π·ΠΎΠ²Ρ‹Ρ… инструмСнтов для создания ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½ΠΎΠ³ΠΎ обСспСчСния. Она написана Π½Π° Java ΠΈ прСдоставляСт инфраструктуру Π½Π° основС ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π°Π΅ΠΌΡ‹Ρ… ΠΌΠΎΠ΄ΡƒΠ»Π΅ΠΉ, ΠΎΠ±Π»Π΅Π³Ρ‡Π°ΡŽΡ‰ΡƒΡŽ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΡƒ, ΠΈΠ½Ρ‚Π΅Π³Ρ€Π°Ρ†ΠΈΡŽ ΠΈ использованиС ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½Ρ‹Ρ… срСдств. IBM являСтся ΠΎΠ΄Π½ΠΈΠΌ ΠΈΠ· ΡƒΡ‡Ρ€Π΅Π΄ΠΈΡ‚Π΅Π»Π΅ΠΉ Eclipse.org ΠΈ Π°ΠΊΡ‚ΠΈΠ²Π½ΠΎ участвуСт Π² совСтС ΡƒΠΏΡ€Π°Π²Π»ΡΡŽΡ‰ΠΈΡ… этого ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π°, Π° Ρ‚Π°ΠΊΠΆΠ΅ Π΅Π³ΠΎ ΠΏΠΎΠ΄ΠΊΠΎΠΌΠΈΡ‚Π΅Ρ‚Π°Ρ…. О Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Ρ… ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚Π½Ρ‹Ρ… тСхнологиях ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΡ‹ Eclipse, Π½Π°ΠΏΡ€Π°Π²Π»Π΅Π½Π½Ρ‹Ρ… Π½Π° созданиС Java-ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ, ΠΌΠΎΠΆΠ½ΠΎ ΠΏΡ€ΠΎΡ‡ΠΈΡ‚Π°Ρ‚ΡŒ Π² ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΡ… ΠΌΠ°Ρ‚Π΅Ρ€ΠΈΠ°Π»Π°Ρ…:
    • AspectJ(EN) - это аспСктно-ΠΎΡ€ΠΈΠ΅Π½Ρ‚ΠΈΡ€ΠΎΠ²Π°Π½Π½ΠΎΠ΅ Ρ€Π°ΡΡˆΠΈΡ€Π΅Π½ΠΈΠ΅ языка Java, ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ΅ ΠΌΠΎΠΆΠ΅Ρ‚ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒΡΡ для ΠΌΠΎΠ΄ΡƒΠ»ΡŒΠ½ΠΎΠΉ Ρ€Π΅Π°Π»ΠΈΠ·Π°Ρ†ΠΈΠΈ сквозной Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΎΠ½Π°Π»ΡŒΠ½ΠΎΡΡ‚ΠΈ, Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€ Турналирования ΠΈΠ»ΠΈ ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ ΠΈΡΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠΉ.
    • Standard Widget Toolkit(EN) (SWT) - это инструмСнтарий, ΠΏΠΎΠ·Π²ΠΎΠ»ΡΡŽΡ‰ΠΈΠΉ Π·Π°Π΄Π΅ΠΉΡΡ‚Π²ΠΎΠ²Π°Ρ‚ΡŒ возмоТности ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΎΠ½Π½ΠΎΠΉ систСмы для создания элСмСнтов ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΡΠΊΠΈΡ… интСрфСйсов эффСктивным ΠΈ пСрСносимым ΠΎΠ±Ρ€Π°Π·ΠΎΠΌ.
    • Mylyn(EN) - это мощная систСма управлСния заданиями для ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Π΅ΠΉ Eclipse. ΠŸΠΎΠ΄Ρ€ΠΎΠ±Π½ΠΎΠ΅ руководство содСрТится Π² ΡΡ‚Π°Ρ‚ΡŒΡΡ… ΠΈ, Ρ€Π°Π½Π΅Π΅ извСстный ΠΊΠ°ΠΊ "систСма бСзопасности Acegi для Spring" - это ΠΌΠΎΡ‰Π½ΠΎΠ΅ ΠΈ Π³ΠΈΠ±ΠΊΠΎΠ΅ Ρ€Π΅ΡˆΠ΅Π½ΠΈΠ΅ для обСспСчСния бСзопасности Π² ΠΊΠΎΡ€ΠΏΠΎΡ€Π°Ρ‚ΠΈΠ²Π½Ρ‹Ρ… прилоТСниях, созданных Π½Π° Π±Π°Π·Π΅ инфраструктуры Spring. Она ΠΏΠΎΠ΄Ρ€ΠΎΠ±Π½ΠΎ рассматриваСтся Π² Ρ‡Π΅Ρ‚Ρ‹Ρ€Π΅Ρ… ΡΡ‚Π°Ρ‚ΡŒΡΡ… сСрии .
  • Компания Sun Microsystems Ρ‚Π°ΠΊΠΆΠ΅ Π½Π°Ρ‡Π°Π»Π° Ρ€Π°Π±ΠΎΡ‚Ρƒ ΠΏΠΎ , запустив ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠ΅ общСствСнныС ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Ρ‹ Π½Π° сайтС java.net(EN) :
    • OpenJDK

Как Ρ€Π°Π·Π²ΠΈΠ²Π°Ρ‚ΡŒ Π½Π°Π²Ρ‹ΠΊΠΈ программирования Π½Π° Java?

Π•ΡΡ‚ΡŒ Π΄Π²Π° основных ΠΏΡƒΡ‚ΠΈ развития Π²Π°ΡˆΠΈΡ… Π½Π°Π²Ρ‹ΠΊΠΎΠ² программирования Π½Π° Java: ΠΏΡ€ΠΎΠΉΡ‚ΠΈ ΡΠΏΠ΅Ρ†ΠΈΠ°Π»ΡŒΠ½Ρ‹ΠΉ курс обучСния (с Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚ΡŒΡŽ сСртификации) ΠΈΠ»ΠΈ ΠΈΠ·ΡƒΡ‡Π°Ρ‚ΡŒ Java ΡΠ°ΠΌΠΎΡΡ‚ΠΎΡΡ‚Π΅Π»ΡŒΠ½ΠΎ, ΠΏΡ€Π°ΠΊΡ‚ΠΈΠΊΡƒΡΡΡŒ Π² написании ΠΊΠΎΠ΄Π°. ΠžΠ±ΡƒΡ‡Π°ΡŽΡ‰ΠΈΠ΅ курсы Π½Π΅ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ ΠΏΠΎΠ·Π²ΠΎΠ»ΡΡŽΡ‚ Π²Π°ΠΌ ΠΏΠ΅Ρ€Π΅Π½ΡΡ‚ΡŒ ΠΎΠΏΡ‹Ρ‚ ΠΊΠ²Π°Π»ΠΈΡ„ΠΈΡ†ΠΈΡ€ΠΎΠ²Π°Π½Π½Ρ‹Ρ… Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠΎΠ², Π½ΠΎ ΠΈ Π΄Π°ΡŽΡ‚ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚ΡŒ получСния сСртификата, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ ΠΌΠΎΠΆΠ΅Ρ‚ ΡƒΠ±Π΅Π΄ΠΈΡ‚ΡŒ ΠΏΠΎΡ‚Π΅Π½Ρ†ΠΈΠ°Π»ΡŒΠ½ΠΎΠ³ΠΎ работодатСля, Ρ‡Ρ‚ΠΎ Π²Ρ‹ ΠΎΠ±Π»Π°Π΄Π°Π΅Ρ‚Π΅ Π½Π°Π²Ρ‹ΠΊΠ°ΠΌΠΈ, Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΡ‹ΠΌΠΈ для Ρ€Π΅ΡˆΠ΅Π½ΠΈΡ стоящих ΠΏΠ΅Ρ€Π΅Π΄ Π½Π°ΠΌ тСхничСских Π·Π°Π΄Π°Ρ‡. ΠŸΡ€ΠΈ этом Π²Ρ‹ смоТСтС ΡƒΠ³Π»ΡƒΠ±ΠΈΡ‚ΡŒ свои знания Π² Ρ€Π°Π·Π»ΠΈΡ‡Π½Ρ‹Ρ… областях Java, экспСримСнтируя ΡΠ°ΠΌΠΎΡΡ‚ΠΎΡΡ‚Π΅Π»ΡŒΠ½ΠΎ ΠΈ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡ всС доступныС рСсурсы. Какой Π±Ρ‹ ΠΏΡƒΡ‚ΡŒ Π²Ρ‹ Π½ΠΈ Π²Ρ‹Π±Ρ€Π°Π»ΠΈ, Π²Π°ΠΌ ΠΏΠΎΠΌΠΎΠ³ΡƒΡ‚ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠ΅ ΠΌΠ°Ρ‚Π΅Ρ€ΠΈΠ°Π»Ρ‹.

  • Руководства ΠΈ ΡΡ‚Π°Ρ‚ΡŒΠΈ
    • На сайтС developerWorks прСдставлСна ΠΎΠ±ΡˆΠΈΡ€Π½Π°Ρ коллСкция , ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΏΠΎ стСпСни полСзности Π² процСссС изучСния Java ΡƒΡΡ‚ΡƒΠΏΠ°ΡŽΡ‚ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ ΡΠ°ΠΌΠΎΡΡ‚ΠΎΡΡ‚Π΅Π»ΡŒΠ½ΠΎΠΌΡƒ написанию ΠΊΠΎΠ΄Π°.
    • Π‘Ρ‚Π°Ρ‚ΡŒΠΈ сСрий ΠΈ прСкрасно подходят для ΡΠΎΠ²Π΅Ρ€ΡˆΠ΅Π½ΡΡ‚Π²ΠΎΠ²Π°Π½ΠΈΡ вашСй Ρ‚Π΅Ρ…Π½ΠΈΠΊΠΈ владСния Java.
    • ΠŸΡ€ΠΈΠΌΠ΅Π½Π΅Π½ΠΈΠ΅ Ρ‚Π΅ΠΎΡ€ΠΈΠΈ проСктирования ΠΏΡ€ΠΈ создании Ρ€Π΅Π°Π»ΡŒΠ½Ρ‹Ρ… ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ рассматриваСтся Π² ΡΡ‚Π°Ρ‚ΡŒΡΡ… сСрии .
    • ΠžΠΏΡ‹Ρ‚Π½Ρ‹Π΅ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠΈ Java Π·Π°Ρ€Π°Π½Π΅Π΅ Π·Π°ΠΊΠ»Π°Π΄Ρ‹Π²Π°ΡŽΡ‚ Π² свои прилоТСния срСдства для ΠΈΡ… ΠΎΡ‚Π»Π°Π΄ΠΊΠΈ ΠΈ тСстирования. На сайтС developerWorks прСдставлСны нСсколько статСй сСрии - это ΠΈΠ³Ρ€Ρ‹ Ρ€Π΅Π°Π»ΡŒΠ½ΠΎΠ³ΠΎ Π²Ρ€Π΅ΠΌΠ΅Π½ΠΈ Π½Π° Π±Π°Π·Π΅ ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΡ‹ Eclipse, Π½Π°ΠΏΡ€Π°Π²Π»Π΅Π½Π½Ρ‹Π΅ Π½Π° ΠΈΠ·ΡƒΡ‡Π΅Π½ΠΈΠ΅ программирования Π½Π° Java. Вводная информация ΠΎ CodeRuler приводится Π² ΡΡ‚Π°Ρ‚ΡŒΠ΅ Π—Π°Π²ΠΎΠ΅Π²Π°Π½ΠΈΠ΅ срСднСвСковых королСвств вмСстС с CodeRuler (EN).
  • ВСхничСскиС ΠΎΠ±ΡƒΡ‡Π°ΡŽΡ‰ΠΈΠ΅ курсы IBM
    • Π’Π°ΡˆΠ΅ΠΌΡƒ вниманию прСдлагаСтся большой Π²Ρ‹Π±ΠΎΡ€ ΠΎΠ½Π»Π°ΠΉΠ½ΠΎΠ²Ρ‹Ρ…, ΠΎΡ‡Π½Ρ‹Ρ… ΠΈ ΠΌΡƒΠ»ΡŒΡ‚ΠΈΠΌΠ΅Π΄ΠΈΠΉΠ½Ρ‹Ρ… курсов ΠΏΠΎ Java, Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Π°Π½Π½Ρ‹Ρ… ΠΏΠΎΠ΄Ρ€Π°Π·Π΄Π΅Π»Π΅Π½ΠΈΠ΅ΠΌ IBM Global Services.
  • БСртификация
    • Π’Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ ΡΠ΄Π°Ρ‚ΡŒ нСсколько экзамСнов для получСния сСртификатов, ΡΠ²ΠΈΠ΄Π΅Ρ‚Π΅Π»ΡŒΡΡ‚Π²ΡƒΡŽΡ‰ΠΈΡ… ΠΎ Π²Π°ΡˆΠΈΡ… Π½Π°Π²Ρ‹ΠΊΠ°Ρ… программирования Π½Π° Java. ΠœΠ°Ρ‚Π΅Ρ€ΠΈΠ°Π»Ρ‹, посвящСнныС курсам с ΠΏΠΎΡΠ»Π΅Π΄ΡƒΡŽΡ‰Π΅ΠΉ сСртификациСй, находятся Π½Π° сайтС Java Certification(EN) .
    • IBM прСдоставляСт Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚ΡŒ Π²Π°ΡˆΠΈΡ… Π½Π°Π²Ρ‹ΠΊΠΎΠ² Π² Ρ‚Π°ΠΊΠΈΡ… тСхнологиях, ΠΈΠΌΠ΅ΡŽΡ‰ΠΈΡ… ΠΎΡ‚Π½ΠΎΡˆΠ΅Π½ΠΈΡ ΠΊ Java, ΠΊΠ°ΠΊ созданиС ΠΊΠΎΡ€ΠΏΠΎΡ€Π°Ρ‚ΠΈΠ²Π½Ρ‹Ρ… ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ для WebSphere, ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½ΠΎΠ΅ обСспСчСниС Rational, DB2, XML ΠΈ SOA.
  • Π€ΠΎΡ€ΡƒΠΌΡ‹
    • , ΠΌΠΎΠ΄Π΅Ρ€ΠΈΡ€ΡƒΠ΅ΠΌΡ‹Π΅ экспСртами, Π·Π° ΠΏΠ»Π΅Ρ‡Π°ΠΌΠΈ ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Ρ… ΠΌΠ½ΠΎΠ³ΠΎΠ»Π΅Ρ‚Π½ΠΈΠΉ ΠΎΠΏΡ‹Ρ‚ Ρ€Π°Π±ΠΎΡ‚Ρ‹ с Java-тСхнологиями - это Π½Π°ΠΈΠ±ΠΎΠ»Π΅Π΅ ΠΈΠ½Ρ‚Π΅Ρ€Π°ΠΊΡ‚ΠΈΠ²Π½Ρ‹ΠΉ ΠΈΠ· способов изучСния языка Java.

ΠŸΡ€ΠΎΠ΄ΡƒΠΊΡ‚Ρ‹ ΠΈ Ρ‚Π΅Ρ…Π½ΠΎΠ»ΠΎΠ³ΠΈΠΈ IBM для Java-Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠΎΠ²

IBM Π·Π°Π½ΠΈΠΌΠ°Π΅Ρ‚ ΠΎΠ΄Π½ΠΈΠΌ ΠΈΠ· Π»ΠΈΠ΄Π΅Ρ€ΠΎΠ² Π² практичСском ΠΏΡ€ΠΈΠΌΠ΅Π½Π΅Π½ΠΈΠΈ Java-Ρ‚Π΅Ρ…Π½ΠΎΠ»ΠΎΠ³ΠΈΠΉ. НиТС ΠΏΡ€ΠΈΠ²Π΅Π΄Π΅Π½Ρ‹ ссылки Π½Π° Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΏΡ€ΠΎΠ΄ΡƒΠΊΡ‚Ρ‹ ΠΈ Ρ‚Π΅Ρ…Π½ΠΎΠ»ΠΎΠ³ΠΈΠΈ IBM, ΠΏΡ€Π΅Π΄Π»Π°Π³Π°Π΅ΠΌΡ‹Π΅ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠ°ΠΌ ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ для ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΡ‹ Java.

  • БСсплатно Π·Π°Π³Ρ€ΡƒΠΆΠ°Π΅ΠΌΡ‹Π΅ ΠΏΡ€ΠΎΠ΄ΡƒΠΊΡ‚Ρ‹:
    • (Java Developer Kit) - это Π½Π°Π±ΠΎΡ€ срСдств для создания ΠΈ тСстирования Π°ΠΏΠΏΠ»Π΅Ρ‚ΠΎΠ² ΠΈ ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ для Java SE ΠΈ Java ME Π½Π° мноТСствС популярных ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΎΠ½Π½Ρ‹Ρ… систСм, Π² Ρ‚ΠΎΠΌ числС Windows, Linux ΠΈ AIX.
    • (IBM Development Package for Eclipse) - это основанный Π½Π° Eclipse Π½Π΅ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°Π΅ΠΌΡ‹ΠΉ инструмСнтарий Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠ°, ΠΏΠΎΠ·Π²ΠΎΠ»ΡΡŽΡ‰ΠΈΠΉ ΡΠΎΠ·Π΄Π°Π²Π°Ρ‚ΡŒ ΠΈ Π·Π°ΠΏΡƒΡΠΊΠ°Ρ‚ΡŒ прилоТСния Π² собствСнной Π³ΠΎΡ‚ΠΎΠ²ΠΎΠΉ срСдС Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ.
    • : Π’Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ Π·Π°Π³Ρ€ΡƒΠ·ΠΈΡ‚ΡŒ ΠΏΠ°ΠΊΠ΅Ρ‚Ρ‹ свободного ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½ΠΎΠ³ΠΎ обСспСчСния Eclipse c сайта developerWorks, Π² Ρ‚ΠΎΠΌ числС ΠΏΠ°Ρ€Π°Π»Π»Π΅Π»ΡŒΠ½ΠΎ выпускаСмыС ΠΏΡ€ΠΎΠ΄ΡƒΠΊΡ‚Ρ‹ Calisto ΠΈ Europa.
    • - это Π²ΠΈΡ€Ρ‚ΡƒΠ°Π»ΡŒΠ½ΠΎΠ΅ Ρ…Ρ€Π°Π½ΠΈΠ»ΠΈΡ‰Π΅ пСрспСктивных Java-Ρ‚Π΅Ρ…Π½ΠΎΠ»ΠΎΠ³ΠΈΠΉ, Ρ€Π°Π·Ρ€Π°Π±Π°Ρ‚Ρ‹Π²Π°Π΅ΠΌΡ‹Ρ… Π² IBM. К Π½ΠΈΠΌ относятся API, ΠΈΠ½Ρ‚Π΅Π³Ρ€ΠΈΡ€ΠΎΠ²Π°Π½Π½Ρ‹Π΅ срСды Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ, ΠΊΠΎΠΌΠΏΠ»Π΅ΠΊΡ‚Ρ‹ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠ°, эталонныС Ρ€Π΅Π°Π»ΠΈΠ·Π°Ρ†ΠΈΠΈ ΠΈ ΡƒΡ‚ΠΈΠ»ΠΈΡ‚Ρ‹. НиТС ΠΏΡ€ΠΈΠ²Π΅Π΄Π΅Π½Ρ‹ ссылки Π½Π° Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Ρ‚Π΅Ρ…Π½ΠΎΠ»ΠΎΠ³ΠΈΠΈ, прСдставлСнныС Π² alphaWorks.
    • . Π­Ρ‚Π° ΡƒΡ‚ΠΈΠ»ΠΈΡ‚Π° ΠΏΠΎΠΌΠΎΠ³Π°Π΅Ρ‚ Π°Π½Π°Π»ΠΈΠ·ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ ΠΈ Π³Π΅Π½Π΅Ρ€ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ ΠΏΡ€ΠΈΠ³ΠΎΠ΄Π½Ρ‹Π΅ для тСстирования Ant-скрипты для сборки ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ΠΎΠ², Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Π°Π½Π½Ρ‹Ρ… ΠΏΡ€ΠΈ ΠΏΠΎΠΌΠΎΡ‰ΠΈ Eclipse, Rational ΠΈ WebSphere IDE для ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌ Java EE ΠΈ SCA.
    • (IBM Pattern Modeling and Analysis Tool for Java Garbage Collector). Данная ΡƒΡ‚ΠΈΠ»ΠΈΡ‚Π° Ρ€Π°Π·Π±ΠΈΡ€Π°Π΅Ρ‚ ΠΏΠΎΠ΄Ρ€ΠΎΠ±Π½Ρ‹Π΅ трассировочныС Ρ„Π°ΠΉΠ»Ρ‹ GC, Π°Π½Π°Π»ΠΈΠ·ΠΈΡ€ΡƒΠ΅Ρ‚ использованиС динамичСской памяти (ΠΊΡƒΡ‡ΠΈ) ΠΈ Ρ€Π΅ΠΊΠΎΠΌΠ΅Π½Π΄ΡƒΠ΅Ρ‚ настройки прилоТСния Π½Π° основС ΠΏΠΎΠ»ΡƒΡ‡Π΅Π½Π½Ρ‹Ρ… Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚ΠΎΠ² модСлирования Ρ€Π°Π±ΠΎΡ‚Ρ‹ с ΠΏΠ°ΠΌΡΡ‚ΡŒΡŽ. (Secure Shell Library for Java) - это лСгковСсная рСализация ΠΏΡ€ΠΎΡ‚ΠΎΠΊΠΎΠ»Π° SSH-2, Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Π°Π½Π½ΠΎΠ³ΠΎ ΠΊΠΎΠΌΠΈΡ‚Π΅Ρ‚ΠΎΠΌ IETF (Internet Engineering Task Force). Он прСдоставляСт срСдства для бСзопасной Π°ΡƒΡ‚Π΅Π½Ρ‚ΠΈΡ„ΠΈΠΊΠ°Ρ†ΠΈΠΈ ΠΈ Π΄Ρ€ΡƒΠ³ΠΈΠ΅ Π·Π°Ρ‰ΠΈΡ‰Π΅Π½Π½Ρ‹Π΅ сСрвисы, Ρ€Π°Π±ΠΎΡ‚Π°ΡŽΡ‰ΠΈΠ΅ Π² условиях Π½Π΅Π·Π°Ρ‰ΠΈΡ‰Π΅Π½Π½ΠΎΠΉ сСти. позволяСт ΠΊΠΎΠ½ΡΠΎΠ»ΠΈΠ΄ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ ΠΈ ΠΏΡ€Π΅ΠΎΠ±Ρ€Π°Π·ΠΎΠ²Ρ‹Π²Π°Ρ‚ΡŒ Π΄Π°Π½Π½Ρ‹Π΅, Ρ‚Π΅ΠΌ самым ΠΏΠΎΠ²Ρ‹ΡˆΠ°Ρ ΠΏΡ€ΠΎΠ΄ΡƒΠΊΡ‚ΠΈΠ²Π½ΠΎΡΡ‚ΡŒ, Π³ΠΈΠ±ΠΊΠΎΡΡ‚ΡŒ ΠΈ ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΡŒ вашСго бизнСса Π·Π° счСт ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΈΠ²Π½ΠΎΠ³ΠΎ доступа ΠΊ Π½ΡƒΠΆΠ½ΠΎΠΉ ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΈ.

ΠžΡ‚ΠΏΡ€Π°Π²ΠΈΡ‚ΡŒ свою Ρ…ΠΎΡ€ΠΎΡˆΡƒΡŽ Ρ€Π°Π±ΠΎΡ‚Ρƒ Π² Π±Π°Π·Ρƒ Π·Π½Π°Π½ΠΈΠΉ просто. Π˜ΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠΉΡ‚Π΅ Ρ„ΠΎΡ€ΠΌΡƒ, Ρ€Π°ΡΠΏΠΎΠ»ΠΎΠΆΠ΅Π½Π½ΡƒΡŽ Π½ΠΈΠΆΠ΅

Π‘Ρ‚ΡƒΠ΄Π΅Π½Ρ‚Ρ‹, аспиранты, ΠΌΠΎΠ»ΠΎΠ΄Ρ‹Π΅ ΡƒΡ‡Π΅Π½Ρ‹Π΅, ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽΡ‰ΠΈΠ΅ Π±Π°Π·Ρƒ Π·Π½Π°Π½ΠΈΠΉ Π² своСй ΡƒΡ‡Π΅Π±Π΅ ΠΈ Ρ€Π°Π±ΠΎΡ‚Π΅, Π±ΡƒΠ΄ΡƒΡ‚ Π²Π°ΠΌ ΠΎΡ‡Π΅Π½ΡŒ Π±Π»Π°Π³ΠΎΠ΄Π°Ρ€Π½Ρ‹.

Π Π°Π·ΠΌΠ΅Ρ‰Π΅Π½ΠΎ Π½Π° http://www.allbest.ru/

НиТСгородский государствСнный тСхничСский унивСрситСт

Π˜Π½ΡΡ‚ΠΈΡ‚ΡƒΡ‚ радиоэлСктроники ΠΈ ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΎΠ½Π½Ρ‹Ρ… Ρ‚Π΅Ρ…Π½ΠΎΠ»ΠΎΠ³ΠΈΠΉ

ΠšΠ°Ρ„Π΅Π΄Ρ€Π° Β«Π˜Π½Ρ„ΠΎΡ€ΠΌΠ°Ρ‚ΠΈΠΊΠ° ΠΈ систСмы управлСния»

ΠœΠ΅Ρ‚ΠΎΠ΄Ρ‹ ΠΈ срСдства Π·Π°Ρ‰ΠΈΡ‚Ρ‹ ΠΊΠΎΠΌΠΏΡŒΡŽΡ‚Π΅Ρ€Π½ΠΎΠΉ ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΈ

«БистСма бСзопасности JavaΒ»

НиТний Новгород, 2007

1. ΠŸΡ€ΠΈΠ½Ρ†ΠΈΠΏ Ρ€Π°Π±ΠΎΡ‚Ρ‹ Java

2. Π—Π°Ρ‰ΠΈΡ‚Π° Java-Π°ΠΏΠ»Π΅Ρ‚ΠΎΠ²

3. МодСль бСзопасности JDK1.2

4. ΠšΡ€ΠΈΠΏΡ‚ΠΎΠ³Ρ€Π°Ρ„ΠΈΡ‡Π΅ΡΠΊΠ°Ρ Π°Ρ€Ρ…ΠΈΡ‚Π΅ΠΊΡ‚ΡƒΡ€Π° Java

5. ΠžΠ±ΡŠΠ΅ΠΊΡ‚Π½Π°Ρ организация ΠΌΠ΅Ρ…Π°Π½ΠΈΠ·ΠΌΠΎΠ² бСзопасности

Бписок ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅ΠΌΠΎΠΉ Π»ΠΈΡ‚Π΅Ρ€Π°Ρ‚ΡƒΡ€Ρ‹

1. ΠŸΡ€ΠΈΠ½Ρ†ΠΈΠΏ Ρ€Π°Π±ΠΎΡ‚Ρ‹ Java

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

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

ΠšΡ€ΠΎΠΌΠ΅ Π²ΠΈΡ€Ρ‚ΡƒΠ°Π»ΡŒΠ½ΠΎΠ³ΠΎ процСссора, тСхнология Java Π²ΠΊΠ»ΡŽΡ‡Π°Π΅Ρ‚ Π² сСбя (Π² качСствС Π½Π΅ΠΎΠ±ΡΠ·Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎΠ³ΠΎ элСмСнта) ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π½ΠΎ-ΠΎΡ€ΠΈΠ΅Π½Ρ‚ΠΈΡ€ΠΎΠ²Π°Π½Π½Ρ‹ΠΉ язык программирования, построСнный Π½Π° основС языка C++, ΠΊ ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΌΡƒ Π΄ΠΎΠ±Π°Π²ΠΈΠ»ΠΈ Π½ΠΎΠ²Ρ‹Π΅ ΠΌΠ΅Ρ…Π°Π½ΠΈΠ·ΠΌΡ‹ для обСспСчСния бСзопасности ΠΈ распрСдСлСнных вычислСний.

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

2. Π—Π°Ρ‰ΠΈΡ‚Π° Java -Π°ΠΏΠ»Π΅Ρ‚ΠΎΠ²

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

Β· ΠΏΡ€ΠΎΠ²Π΅Ρ€ΡΡ‚ΡŒ сущСствованиС ΠΈ ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€Ρ‹ ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½Π½ΠΎΠ³ΠΎ Ρ„Π°ΠΉΠ»Π°;

Β· ΠΎΡΡƒΡ‰Π΅ΡΡ‚Π²Π»ΡΡ‚ΡŒ доступ ΠΏΠΎ сСти ΠΊ ΡƒΠ΄Π°Π»Π΅Π½Π½ΠΎΠΌΡƒ ΠΊΠΎΠΌΠΏΡŒΡŽΡ‚Π΅Ρ€Ρƒ;

Β· ΠΏΠΎΠ»ΡƒΡ‡Π°Ρ‚ΡŒ список сСтСвых сСансов связи, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ устанавливаСт Π»ΠΎΠΊΠ°Π»ΡŒΠ½Ρ‹ΠΉ ΠΊΠΎΠΌΠΏΡŒΡŽΡ‚Π΅Ρ€ с Π΄Ρ€ΡƒΠ³ΠΈΠΌΠΈ ΠΊΠΎΠΌΠΏΡŒΡŽΡ‚Π΅Ρ€Π°ΠΌΠΈ;

Β· ΠΏΠΎΠ»ΡƒΡ‡Π°Ρ‚ΡŒ свСдСния ΠΎ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Π΅ ΠΈΠ»ΠΈ Π΅Π³ΠΎ домашнСй Π΄ΠΈΡ€Π΅ΠΊΡ‚ΠΎΡ€ΠΈΠΈ;

Β· Π²Ρ‹Ρ…ΠΎΠ΄ΠΈΡ‚ΡŒ ΠΈΠ· ΠΈΠ½Ρ‚Π΅Ρ€ΠΏΡ€Π΅Ρ‚Π°Ρ‚ΠΎΡ€Π° Java;

Π­Ρ‚ΠΈ ΠΏΡ€Π°Π²ΠΈΠ»Π° ΠΎΠ±Π΅ΡΠΏΠ΅Ρ‡ΠΈΠ²Π°ΡŽΡ‚ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠ΅ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚Ρ‹ Java-Ρ‚Π΅Ρ…Π½ΠΎΠ»ΠΎΠ³ΠΈΠΈ.

Β· БобствСнно Π²ΠΈΡ€Ρ‚ΡƒΠ°Π»ΡŒΠ½Ρ‹ΠΉ Java-процСссор, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ постоянно ΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»ΠΈΡ€ΡƒΠ΅Ρ‚ своС состояниС.

Β· Π—Π°Π³Ρ€ΡƒΠ·Ρ‡ΠΈΠΊ Π°ΠΏΠ»Π΅Ρ‚ΠΎΠ² ΠΈ Java-ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌ, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ ΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»ΠΈΡ€ΡƒΠ΅Ρ‚ Π·Π°Π³Ρ€ΡƒΠΆΠ°Π΅ΠΌΡ‹Π΅ ΠΊΠΎΠ΄Ρ‹.

Β· ДиспСтчСр бСзопасности (Secu-rityManager), ΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»ΠΈΡ€ΡƒΡŽΡ‰ΠΈΠΉ ΠΈ Π±Π»ΠΎΠΊΠΈΡ€ΡƒΡŽΡ‰ΠΈΠΉ опасныС дСйствия Π°ΠΏΠ»Π΅Ρ‚ΠΎΠ².

Π’ классС SecurityManager пСрСчислСны ΠΌΠ΅Ρ‚ΠΎΠ΄Ρ‹, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽΡ‚ΡΡ систСмой для контроля дСйствий Π°ΠΏΠ»Π΅Ρ‚Π° Π² зависимости ΠΎΡ‚ характСристик ΠΎΠΊΡ€ΡƒΠΆΠ°ΡŽΡ‰Π΅ΠΉ срСды

Ѐункция Π·Π°Π³Ρ€ΡƒΠ·Ρ‡ΠΈΠΊΠ° - вСрификация Π±Π°ΠΉΡ‚-ΠΊΠΎΠ΄ΠΎΠ², Ρ‚. Π΅. ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΊΠ° ΠΏΡ€Π°Π²ΠΈΠ»ΡŒΠ½ΠΎΡΡ‚ΠΈ ΠΏΠΎΠ»ΡƒΡ‡Π΅Π½Π½ΠΎΠ³ΠΎ элСмСнта Java-ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ ΠΈ Π΅Π³ΠΎ цСлостности. Π’ процСссС Π²Π΅Ρ€ΠΈΡ„ΠΈΠΊΠ°Ρ†ΠΈΠΈ выясняСтся ΡΠ»Π΅Π΄ΡƒΡŽΡ‰Π΅Π΅:

Β· соотвСтствуСт Π»ΠΈ вСрсия ΠΏΠΎΠ»ΡƒΡ‡Π΅Π½Π½ΠΎΠ³ΠΎ Π±Π»ΠΎΠΊΠ° вСрсиям ΠΎΡΡ‚Π°Π»ΡŒΠ½Ρ‹Ρ… элСмСнтов систСмы;

Β· соотвСтствуСт Π»ΠΈ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ° спСцификации ΠΊΠΎΠ½ΠΊΡ€Π΅Ρ‚Π½ΠΎΠ³ΠΎ Π²ΠΈΡ€Ρ‚ΡƒΠ°Π»ΡŒΠ½ΠΎΠ³ΠΎ Java-процСссора;

ЦСлями Ρ‚Π°ΠΊΠΎΠΉ ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΊΠΈ ΡΠ²Π»ΡΡŽΡ‚ΡΡ выявлСниС Π½Π΅ΠΏΡ€Π°Π²ΠΈΠ»ΡŒΠ½ΠΎΠ³ΠΎ использования косвСнной адрСсации, ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ΅ ΠΌΠΎΠΆΠ΅Ρ‚ привСсти ΠΊ Π½Π°Ρ€ΡƒΡˆΠ΅Π½ΠΈΡŽ Π² Ρ€Π°Π±ΠΎΡ‚Π΅ Π²ΠΈΡ€Ρ‚ΡƒΠ°Π»ΡŒΠ½ΠΎΠ³ΠΎ процСссора, ΠΈ ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΊΠ° цСлостности Π°ΠΏΠ»Π΅Ρ‚Π°.

Π—Π°Ρ‰ΠΈΡ‚Π½Ρ‹Π΅ ΠΌΠ΅Ρ…Π°Π½ΠΈΠ·ΠΌΡ‹ этой Ρ‚Π΅Ρ…Π½ΠΎΠ»ΠΎΠ³ΠΈΠΈ ΠΎΡ‡Π΅Π½ΡŒ Ρ…ΠΎΡ€ΠΎΡˆΠΎ ΠΏΡ€ΠΎΠ΄ΡƒΠΌΠ°Π½Ρ‹, Π½ΠΎ ΠΈΡ… рСализация Π΅Ρ‰Π΅ Π΄Π°Π»Π΅ΠΊΠ° ΠΎΡ‚ ΡΠΎΠ²Π΅Ρ€ΡˆΠ΅Π½ΡΡ‚Π²Π°. ΠŸΠΎΡΡ‚ΠΎΠΌΡƒ Π΄Π°Π»Π΅Π΅ ΠΏΡ€ΠΈΠ²Π΅Π΄Π΅Π½ нСбольшой список Π²ΠΎΠ·ΠΌΠΎΠΆΠ½Ρ‹Ρ… "Π½Π°ΠΏΠ°Π΄Π΅Π½ΠΈΠΉ".

Π‘Π»ΠΎΠΊΠΈΡ€ΠΎΠ²ΠΊΠ° сСрвиса

Π’ Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚Π΅ этого частично ΠΈΠ»ΠΈ ΠΏΠΎΠ»Π½ΠΎΡΡ‚ΡŒΡŽ блокируСтся Ρ€Π°Π±ΠΎΡ‚Π° ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Ρ ΠΈ Π΄Π°ΠΆΠ΅ ΠΌΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ Π²Ρ‹Π²Π΅Π΄Π΅Π½ ΠΈΠ· строя Π±Ρ€Π°ΡƒΠ·Π΅Ρ€. Π’ΠΎΡ‚ Π΄Π°Π»Π΅ΠΊΠΎ Π½Π΅ ΠΏΠΎΠ»Π½Ρ‹ΠΉ список Π²ΠΎΠ·ΠΌΠΎΠΆΠ½Ρ‹Ρ… Π²Π°Ρ€ΠΈΠ°Π½Ρ‚ΠΎΠ² Ρ‚Π°ΠΊΠΎΠ³ΠΎ "нападСния":

Β· Π·Π°ΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅ всСй свободной памяти;

Β· Π·Π°Ρ…Π²Π°Ρ‚ Π²Π°ΠΆΠ½Ρ‹Ρ… систСмных классов.

"Π’Π°ΠΉΠ½Ρ‹Π΅" ΠΊΠ°Π½Π°Π»Ρ‹

Π­Ρ‚ΠΈ ΠΊΠ°Π½Π°Π»Ρ‹ ΠΏΠΎΠ·Π²ΠΎΠ»ΡΡŽΡ‚ ΠΏΠΎΠ»ΡƒΡ‡Π°Ρ‚ΡŒ ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΡŽ Π΄Π°ΠΆΠ΅ Ρ‡Π΅Ρ€Π΅Π· систСму Π·Π°Ρ‰ΠΈΡ‚Ρ‹ (брандмауэры). БущСствованиС "Ρ‚Π°ΠΉΠ½Ρ‹Ρ…" ΠΊΠ°Π½Π°Π»ΠΎΠ² Π² Π±Ρ€Π°ΡƒΠ·Π΅Ρ€Π΅ Π΄Π΅Π»Π°Π΅Ρ‚ Π΅Π³ΠΎ ΠΎΡ‡Π΅Π½ΡŒ опасным. Π’ качСствС "Ρ‚Π°ΠΉΠ½ΠΎΠ³ΠΎ" ΠΊΠ°Π½Π°Π»Π° ΠΌΠΎΠΆΠ½ΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠ΅ дСйствия Π°ΠΏΠ»Π΅Ρ‚ΠΎΠ²:

Β· посылку ΠΏΠΎΡ‡Ρ‚Ρ‹ Ρ‡Π΅Ρ€Π΅Π· SMTP-ΠΏΠΎΡ€Ρ‚ сСрвСра (ΠΏΡ€ΠΈΡ‡Π΅ΠΌ ΠΏΠΎΡ‡Ρ‚Π° посылаСтся ΠΎΡ‚ ΠΈΠΌΠ΅Π½ΠΈ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Ρ, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ Ρ€Π°Π±ΠΎΡ‚Π°Π΅Ρ‚ с Π°ΠΏΠ»Π΅Ρ‚ΠΎΠΌ);

Β· запрос Π½Π° поиск ΠΏΠΎ Π½Π΅ΡΡƒΡ‰Π΅ΡΡ‚Π²ΡƒΡŽΡ‰Π΅ΠΌΡƒ URL-адрСсу, Π² ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΌ Π² качСствС ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€ΠΎΠ² ΠΏΠ΅Ρ€Π΅Π΄Π°ΡŽΡ‚ΡΡ Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΡ‹Π΅ "Π²Π·Π»ΠΎΠΌΡ‰ΠΈΠΊΡƒ" Π΄Π°Π½Π½Ρ‹Π΅;

Β· ΠΏΠΎΠΏΡ‹Ρ‚ΠΊΡƒ доступа ΠΏΠΎ Π½Π΅ΡΡƒΡ‰Π΅ΡΡ‚Π²ΡƒΡŽΡ‰Π΅ΠΌΡƒ адрСсу (ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΡŒ Π΄ΠΈΡ€Π΅ΠΊΡ‚ΠΎΡ€ΠΈΠΉ ΠΌΠΎΠΆΠ΅Ρ‚ ΡΠΎΠ΄Π΅Ρ€ΠΆΠ°Ρ‚ΡŒ Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΡ‹Π΅ Π΄Π°Π½Π½Ρ‹Π΅).

Π˜Π½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΡ, извСстная Π°ΠΏΠ»Π΅Ρ‚Π°ΠΌ

Π‘ ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ этой ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΈ ΠΌΠΎΠΆΠ½ΠΎ ΠΏΠΎΠ»ΡƒΡ‡ΠΈΡ‚ΡŒ Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ свСдСния, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ впослСдствии ΠΌΠΎΠ³ΡƒΡ‚ Π±Ρ‹Ρ‚ΡŒ ΠΈΠΌ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Π½Ρ‹ для "Π²Π·Π»ΠΎΠΌΠ°". Π­Ρ‚Ρƒ ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΡŽ ΠΌΠΎΠΆΠ½ΠΎ ΠΏΠ΅Ρ€Π΅Π΄Π°Π²Π°Ρ‚ΡŒ Π΄Π°ΠΆΠ΅ Ρ‡Π΅Ρ€Π΅Π· брандмауэры ΠΏΠΎ Ρ‚Π°ΠΉΠ½Ρ‹ΠΌ ΠΊΠ°Π½Π°Π»Π°ΠΌ, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ описаны Π²Ρ‹ΡˆΠ΅. АплСтам ΠΎΠ±Ρ‹Ρ‡Π½ΠΎ извСстна ΡΠ»Π΅Π΄ΡƒΡŽΡ‰Π°Ρ систСмная информация:

Β· систСмноС врСмя;

Β· Π½Π°Π·Π²Π°Π½ΠΈΠ΅ ΠΈ вСрсия ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΎΠ½Π½ΠΎΠΉ систСмы;

Β· Π°Ρ€Ρ…ΠΈΡ‚Π΅ΠΊΡ‚ΡƒΡ€Π° процСссора.

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

3. МодСль бСзопасности JDK 1.2

Π’ Java-Ρ‚Π΅Ρ…Π½ΠΎΠ»ΠΎΠ³ΠΈΠΈ прСдусмотрСн Ρ†Π΅Π»Ρ‹ΠΉ ряд Π·Π°Ρ‰ΠΈΡ‚Π½Ρ‹Ρ… Ρ€ΡƒΠ±Π΅ΠΆΠ΅ΠΉ, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΌΠΎΠΆΠ½ΠΎ Ρ€Π°Π·Π΄Π΅Π»ΠΈΡ‚ΡŒ Π½Π° Ρ‚Ρ€ΠΈ Π³Ρ€ΡƒΠΏΠΏΡ‹:

Β· Π½Π°Π΄Π΅ΠΆΠ½ΠΎΡΡ‚ΡŒ языка;

Β· ΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»ΡŒ ΠΏΡ€ΠΈ ΠΏΠΎΠ»ΡƒΡ‡Π΅Π½ΠΈΠΈ ΠΈ Π·Π°Π³Ρ€ΡƒΠ·ΠΊΠ΅ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌ;

Β· ΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»ΡŒ ΠΏΡ€ΠΈ Π²Ρ‹ΠΏΠΎΠ»Π½Π΅Π½ΠΈΠΈ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌ.

Java обСспСчиваСт Π±Π΅Π·ΠΎΠΏΠ°ΡΠ½ΠΎΡΡ‚ΡŒ Π·Π° счСт срСдств статичСского ΠΈ динамичСского контроля. Π•Ρ‰Π΅ ΠΎΠ΄Π½ΠΎ Java -- автоматичСскоС ΡƒΠΏΡ€Π°Π²Π»Π΅Π½ΠΈΠ΅ ΠΏΠ°ΠΌΡΡ‚ΡŒΡŽ, ΠΈΡΠΊΠ»ΡŽΡ‡Π°ΡŽΡ‰Π΅Π΅ появлСниС "висячих" ΡƒΠΊΠ°Π·Π°Ρ‚Π΅Π»Π΅ΠΉ.

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

Β· ΠΏΠΎΠ΄Π΄Π΅Π»ΠΊΠ° ΡƒΠΊΠ°Π·Π°Ρ‚Π΅Π»Π΅ΠΉ (Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, ΠΏΠΎΠ»ΡƒΡ‡Π΅Π½ΠΈΠ΅ указатСля ΠΊΠ°ΠΊ Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚ выполнСния арифмСтичСской ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΈ);

Β· Π½Π°Ρ€ΡƒΡˆΠ΅Π½ΠΈΠ΅ ΠΏΡ€Π°Π² доступа ΠΊ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚Π°ΠΌ классов;

Β· Π²Ρ‹Π·ΠΎΠ² ΠΌΠ΅Ρ‚ΠΎΠ΄ΠΎΠ² ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ΠΎΠ² с нСдопустимым Π½Π°Π±ΠΎΡ€ΠΎΠΌ ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€ΠΎΠ²;

Β· нСдопустимоС ΠΏΡ€Π΅ΠΎΠ±Ρ€Π°Π·ΠΎΠ²Π°Π½ΠΈΠ΅ Ρ‚ΠΈΠΏΠΎΠ²;

Β· ΠΏΠ΅Ρ€Π΅ΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅ ΠΈΠ»ΠΈ исчСрпаниС стСка.

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

Если ΠΏΡ€ΠΎΠ΄ΠΎΠ»ΠΆΠΈΡ‚ΡŒ Π΄Π΅Π»Π΅Π½ΠΈΠ΅ Π½Π° Π³Ρ€ΡƒΠΏΠΏΡ‹ ΠΈ ΡƒΡ€ΠΎΠ²Π½ΠΈ, Ρ‚ΠΎ ΠΏΠΎΠ»Π΅Π·Π½ΠΎ Π²Ρ‹Π΄Π΅Π»ΠΈΡ‚ΡŒ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠ΅ Π΄Π²Π° аспСкта Java-бСзопасности:

Β· Π·Π°Ρ‰ΠΈΡ‚Π° Java-окруТСния Π²Ρ€Π΅ΠΌΠ΅Π½ΠΈ выполнСния ΠΈ рСсурсов Π°ΠΏΠΏΠ°Ρ€Π°Ρ‚Π½ΠΎ-ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½ΠΎΠΉ ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΡ‹ ΠΎΡ‚ врСдоносного ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½ΠΎΠ³ΠΎ обСспСчСния;

Β· Ρ€Π°Π·Π³Ρ€Π°Π½ΠΈΡ‡Π΅Π½ΠΈΠ΅ доступа ΡΡƒΠ±ΡŠΠ΅ΠΊΡ‚ΠΎΠ² ΠΊ рСсурсам ΠΏΡ€ΠΈΠΊΠ»Π°Π΄Π½ΠΎΠ³ΠΎ уровня.

Основная Ρ†Π΅Π»ΡŒ ΠΌΠ΅Ρ€ бСзопасности Π² Java -- ΠΎΠ±Π΅ΡΠΏΠ΅Ρ‡ΠΈΡ‚ΡŒ Π·Π°Ρ‰ΠΈΡ‚Ρƒ Java-окруТСния ΠΎΡ‚ врСдоносных ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌ. Для достиТСния этой Ρ†Π΅Π»ΠΈ Π±Ρ‹Π»Π° ΠΏΡ€Π΅Π΄Π»ΠΎΠΆΠ΅Π½Π° концСпция "пСсочницы" (sandbox ) -- Π·Π°ΠΌΠΊΠ½ΡƒΡ‚ΠΎΠΉ срСды, Π² ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΉ Π²Ρ‹ΠΏΠΎΠ»Π½ΡΡŽΡ‚ΡΡ ΠΏΠΎΡ‚Π΅Π½Ρ†ΠΈΠ°Π»ΡŒΠ½ΠΎ Π½Π΅Π½Π°Π΄Π΅ΠΆΠ½Ρ‹Π΅ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹. Π’Π°ΠΊΠΎΠ²Ρ‹ΠΌΠΈ ΡΡ‡ΠΈΡ‚Π°Π»ΠΈΡΡŒ Π°ΠΏΠ»Π΅Ρ‚Ρ‹, ΠΏΠΎΡΡ‚ΡƒΠΏΠΈΠ²ΡˆΠΈΠ΅ ΠΏΠΎ сСти. Π’Π΅ΡΡŒ "Ρ€ΠΎΠ΄Π½ΠΎΠΉ" ΠΊΠΎΠ΄ (Ρ‚ΠΎ Π΅ΡΡ‚ΡŒ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹, Ρ€Π°ΡΠΏΠΎΠ»Π°Π³Π°ΡŽΡ‰ΠΈΠ΅ΡΡ Π½Π° локальном ΠΊΠΎΠΌΠΏΡŒΡŽΡ‚Π΅Ρ€Π΅) считался Π°Π±ΡΠΎΠ»ΡŽΡ‚Π½ΠΎ Π½Π°Π΄Π΅ΠΆΠ½Ρ‹ΠΌ ΠΈ Π΅ΠΌΡƒ Π±Ρ‹Π»ΠΎ доступно всС, Ρ‡Ρ‚ΠΎ доступно Π²ΠΈΡ€Ρ‚ΡƒΠ°Π»ΡŒΠ½ΠΎΠΉ Java-машинС.

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

Π§Ρ‚ΠΎΠ±Ρ‹ ΠΊΠ°ΠΊ-Ρ‚ΠΎ ΡΠΏΡ€Π°Π²ΠΈΡ‚ΡŒΡΡ с этой ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΠΎΠΉ, Π²Π²Π΅Π»ΠΈ понятиС элСктронной подписи, ΠΊΠΎΡ‚ΠΎΡ€ΡƒΡŽ ставит Ρ€Π°ΡΠΏΡ€ΠΎΡΡ‚Ρ€Π°Π½ΠΈΡ‚Π΅Π»ΡŒ Π°ΠΏΠ»Π΅Ρ‚Π°. Java-машина Π² соотвСтствии со своСй ΠΏΠΎΠ»ΠΈΡ‚ΠΈΠΊΠΎΠΉ бСзопасности Π΄Π΅Π»ΠΈΡ‚ распространитСлСй ΠΈ, соотвСтствСнно, ΠΈΡ… Π°ΠΏΠ»Π΅Ρ‚Ρ‹ Π½Π° Π΄Π²Π΅ ΠΊΠ°Ρ‚Π΅Π³ΠΎΡ€ΠΈΠΈ -- Π½Π°Π΄Π΅ΠΆΠ½Ρ‹Π΅ ΠΈ Π½Π΅Π½Π°Π΄Π΅ΠΆΠ½Ρ‹Π΅. НадСТныС Π°ΠΏΠ»Π΅Ρ‚Ρ‹ Π±Ρ‹Π»ΠΈ ΠΏΡ€ΠΈΡ€Π°Π²Π½Π΅Π½Ρ‹ Π² ΠΏΡ€Π°Π²Π°Ρ… ΠΊ "Ρ€ΠΎΠ΄Π½ΠΎΠΌΡƒ" ΠΊΠΎΠ΄Ρƒ.

ΠžΡ„ΠΎΡ€ΠΌΠΈΠ»ΠΈΡΡŒ Ρ‚Ρ€ΠΈ основных понятия:

Β· источник ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹;

Β· ΠΏΡ€Π°Π²ΠΎ ΠΈ мноТСство ΠΏΡ€Π°Π²;

Β· ΠΏΠΎΠ»ΠΈΡ‚ΠΈΠΊΠ° бСзопасности.

Π˜ΡΡ‚ΠΎΡ‡Π½ΠΈΠΊ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ опрСдСляСтся ΠΏΠ°Ρ€ΠΎΠΉ (ΡƒΠ½ΠΈΠ²Π΅Ρ€ΡΠ°Π»ΡŒΠ½Ρ‹ΠΉ Π»ΠΎΠΊΠ°Ρ‚ΠΎΡ€ рСсурсов -- URL, распространитСли ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹). URL ΠΌΠΎΠΆΠ΅Ρ‚ ΡƒΠΊΠ°Π·Ρ‹Π²Π°Ρ‚ΡŒ Π½Π° Ρ„Π°ΠΉΠ» Π² локальной Ρ„Π°ΠΉΠ»ΠΎΠ²ΠΎΠΉ систСмС ΠΈΠ»ΠΈ ΠΆΠ΅ Π½Π° рСсурс ΡƒΠ΄Π°Π»Π΅Π½Π½ΠΎΠΉ систСмы.

ΠŸΡ€Π°Π²ΠΎ -- это абстрактноС понятиС, Π·Π° ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΌ, ΠΊΠ°ΠΊ ΠΎΠ±Ρ‹Ρ‡Π½ΠΎ Π² Java, стоят классы ΠΈ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Ρ‹. Π’ Π±ΠΎΠ»ΡŒΡˆΠΈΠ½ΡΡ‚Π²Π΅ случаСв ΠΏΡ€Π°Π²ΠΎ опрСдСляСтся двумя Ρ†Π΅ΠΏΠΎΡ‡ΠΊΠ°ΠΌΠΈ символов -- ΠΈΠΌΠ΅Π½Π΅ΠΌ рСсурса ΠΈ дСйствиСм. НапримСр, Π² качСствС рСсурса ΠΌΠΎΠΆΠ΅Ρ‚ Π²Ρ‹ΡΡ‚ΡƒΠΏΠ°Ρ‚ΡŒ Ρ„Π°ΠΉΠ», Π° Π² качСствС дСйствия -- Ρ‡Ρ‚Π΅Π½ΠΈΠ΅.

ΠŸΠΎΠ»ΠΈΡ‚ΠΈΠΊΠ° бСзопасности Π·Π°Π΄Π°Π΅Ρ‚ соотвСтствиС ΠΌΠ΅ΠΆΠ΄Ρƒ источником ΠΈ ΠΏΡ€Π°Π²Π°ΠΌΠΈ ΠΏΠΎΡΡ‚ΡƒΠΏΠΈΠ²ΡˆΠΈΡ… ΠΈΠ· Π½Π΅Π³ΠΎ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌ. "Π ΠΎΠ΄Π½Ρ‹Π΅" ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ Π½Π΅ ΠΈΠΌΠ΅ΡŽΡ‚ ΠΊΠ°ΠΊΠΈΡ…-Π»ΠΈΠ±ΠΎ ΠΏΡ€ΠΈΠ²ΠΈΠ»Π΅Π³ΠΈΠΉ Π² ΠΏΠ»Π°Π½Π΅ бСзопасности ΠΈ ΠΏΠΎΠ»ΠΈΡ‚ΠΈΠΊΠ° ΠΏΠΎ ΠΎΡ‚Π½ΠΎΡˆΠ΅Π½ΠΈΡŽ ΠΊ Π½ΠΈΠΌ ΠΌΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ любой.

По сути имССтся Ρ‚Ρ€Π°Π΄ΠΈΡ†ΠΈΠΎΠ½Π½Ρ‹ΠΉ для соврСмСнных ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΎΠ½Π½Ρ‹Ρ… систСм ΠΈ систСм управлСния Π±Π°Π·Π°ΠΌΠΈ Π΄Π°Π½Π½Ρ‹Ρ… ΠΌΠ΅Ρ…Π°Π½ΠΈΠ·ΠΌ ΠΏΡ€Π°Π² доступа со ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠΌΠΈ особСнностями:

Β· Π‘ΡƒΠ±ΡŠΠ΅ΠΊΡ‚ΠΎΠΌ доступа являСтся Π½Π΅ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒ, Π° источник ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹. Π’ΠΏΡ€ΠΎΡ‡Π΅ΠΌ, Ρ„ΠΎΡ€ΠΌΠ°Π»ΡŒΠ½ΠΎ ΠΌΠΎΠΆΠ½ΠΎ ΡΡ‡ΠΈΡ‚Π°Ρ‚ΡŒ, Ρ‡Ρ‚ΠΎ Π²ΠΎ врСмя исполнСния ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ Π΅Π΅ источник становится;

Β· НСт понятия Π²Π»Π°Π΄Π΅Π»ΡŒΡ†Π° рСсурса, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ (Π²Π»Π°Π΄Π΅Π»Π΅Ρ†) ΠΌΠΎΠ³ Π±Ρ‹ ΠΌΠ΅Π½ΡΡ‚ΡŒ ΠΏΡ€Π°Π²Π°; послСдниС Π·Π°Π΄Π°ΡŽΡ‚ΡΡ ΠΈΡΠΊΠ»ΡŽΡ‡ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎ ΠΏΠΎΠ»ΠΈΡ‚ΠΈΠΊΠΎΠΉ бСзопасности.

МодСль бСзопасности Π² JDK 1.2

4. ΠšΡ€ΠΈΠΏΡ‚ΠΎΠ³Ρ€Π°Ρ„ΠΈΡ‡Π΅ΡΠΊΠ°Ρ Π°Ρ€Ρ…ΠΈΡ‚Π΅ΠΊΡ‚ΡƒΡ€Π° Java

Π‘Π΅Π· ΠΊΡ€ΠΈΠΏΡ‚ΠΎΠ³Ρ€Π°Ρ„ΠΈΠΈ Π½Π΅Π²ΠΎΠ·ΠΌΠΎΠΆΠ½Ρ‹ надСТная аутСнтификация, ΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»ΡŒ цСлостности ΠΈ сохранСниС ΠΊΠΎΠ½Ρ„ΠΈΠ΄Π΅Π½Ρ†ΠΈΠ°Π»ΡŒΠ½ΠΎΡΡ‚ΠΈ.

ΠšΡ€ΠΈΠΏΡ‚ΠΎΠ³Ρ€Π°Ρ„ΠΈΡ‡Π΅ΡΠΊΠ°Ρ Π°Ρ€Ρ…ΠΈΡ‚Π΅ΠΊΡ‚ΡƒΡ€Π° Java (Java Cryptography Architecture, JCA) Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Π°Π½Π° для прСдоставлСния ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΡ… сСрвисов:

Β· постановка/ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΊΠ° элСктронной подписи;

Β· вычислСниС Ρ…ΡΡˆ-Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ;

Β· гСнСрация ΠΏΠ°Ρ€ ΠΊΠ»ΡŽΡ‡Π΅ΠΉ ΠΎΡ‚ΠΊΡ€Ρ‹Ρ‚Ρ‹ΠΉ/сСкрСтный;

Β· созданиС сСртификатов, ΠΏΠΎΠ΄Ρ‚Π²Π΅Ρ€ΠΆΠ΄Π°ΡŽΡ‰ΠΈΡ… Π°ΡƒΡ‚Π΅Π½Ρ‚ΠΈΡ‡Π½ΠΎΡΡ‚ΡŒ ΠΎΡ‚ΠΊΡ€Ρ‹Ρ‚Ρ‹Ρ… ΠΊΠ»ΡŽΡ‡Π΅ΠΉ;

Β· Ρ…Ρ€Π°Π½Π΅Π½ΠΈΠ΅ ΠΊΠ»ΡŽΡ‡Π΅ΠΉ, Π° Ρ‚Π°ΠΊΠΆΠ΅ сСртификатов Π½Π°Π΄Π΅ΠΆΠ½Ρ‹Ρ… ΠΏΠ°Ρ€Ρ‚Π½Π΅Ρ€ΠΎΠ²;

Β· ΠΏΡ€Π΅ΠΎΠ±Ρ€Π°Π·ΠΎΠ²Π°Π½ΠΈΠ΅ ΠΊΠ»ΡŽΡ‡Π΅ΠΉ ΠΈΠ· прСдставлСния со скрытой структурой Π² общСпонятноС прСдставлСниС ΠΈ Π½Π°ΠΎΠ±ΠΎΡ€ΠΎΡ‚;

Β· гСнСрация ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€ΠΎΠ² криптографичСских Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌΠΎΠ²;

Β· гСнСрация (псСвдо)случайных чисСл;

Β· симмСтричноС ΡˆΠΈΡ„Ρ€ΠΎΠ²Π°Π½ΠΈΠ΅;

Β· Π²Ρ‹Ρ€Π°Π±ΠΎΡ‚ΠΊΠ° ΠΎΠ±Ρ‰Π΅Π³ΠΎ ΠΊΠ»ΡŽΡ‡Π΅Π²ΠΎΠ³ΠΎ ΠΌΠ°Ρ‚Π΅Ρ€ΠΈΠ°Π»Π°.

ΠšΡ€ΠΎΠΌΠ΅ Ρ‚ΠΎΠ³ΠΎ, криптографичСская Π°Ρ€Ρ…ΠΈΡ‚Π΅ΠΊΡ‚ΡƒΡ€Π° Π΄ΠΎΠ»ΠΆΠ½Π° ΡƒΠ΄ΠΎΠ²Π»Π΅Ρ‚Π²ΠΎΡ€ΡΡ‚ΡŒ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠΌ тСхнологичСским трСбованиям:

Β· ΠΎΠ±Π΅ΡΠΏΠ΅Ρ‡ΠΈΠ²Π°Ρ‚ΡŒ Π½Π΅Π·Π°Π²ΠΈΡΠΈΠΌΠΎΡΡ‚ΡŒ ΠΎΡ‚ Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌΠΎΠ² ΠΈ ΠΈΡ… Ρ€Π΅Π°Π»ΠΈΠ·Π°Ρ†ΠΈΠΉ;

Β· ΠΎΠ±Π΅ΡΠΏΠ΅Ρ‡ΠΈΠ²Π°Ρ‚ΡŒ Π²Π·Π°ΠΈΠΌΠ½ΡƒΡŽ ΡΠΎΠ²ΠΌΠ΅ΡΡ‚ΠΈΠΌΠΎΡΡ‚ΡŒ Ρ€Π΅Π°Π»ΠΈΠ·Π°Ρ†ΠΈΠΉ;

Β· ΠΎΠ±Π΅ΡΠΏΠ΅Ρ‡ΠΈΠ²Π°Ρ‚ΡŒ Ρ€Π°ΡΡˆΠΈΡ€ΡΠ΅ΠΌΠΎΡΡ‚ΡŒ Π½Π°Π±ΠΎΡ€Π° Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌΠΎΠ² ΠΈ ΠΈΡ… Ρ€Π΅Π°Π»ΠΈΠ·Π°Ρ†ΠΈΠΉ.

ΠšΠ°ΠΆΠ΄Ρ‹ΠΉ сСрвис ΠΌΠΎΠΆΠ΅Ρ‚ ΠΎΠ±Π΅ΡΠΏΠ΅Ρ‡ΠΈΠ²Π°Ρ‚ΡŒΡΡ нСсколькими Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌΠ°ΠΌΠΈ, ΠΊΠ°ΠΆΠ΄Ρ‹ΠΉ ΠΈΠ· ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Ρ…, Π² свою ΠΎΡ‡Π΅Ρ€Π΅Π΄ΡŒ, ΠΌΠΎΠΆΠ΅Ρ‚ ΠΈΠΌΠ΅Ρ‚ΡŒ нСсколько Ρ€Π΅Π°Π»ΠΈΠ·Π°Ρ†ΠΈΠΉ. НапримСр, для вычислСния Ρ…ΡΡˆ-Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ ΠΏΡ€Π΅Π΄Π½Π°Π·Π½Π°Ρ‡Π΅Π½Ρ‹ Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌΡ‹ MD5/SHA-1 (Ρ€Π°Π²Π½ΠΎ ΠΊΠ°ΠΊ ΠΈ российский Π“ΠžΠ‘Π’ "Ѐункция Ρ…ΡΡˆΠΈΡ€ΠΎΠ²Π°Π½ΠΈΡ"), для Π²Ρ‹Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ ΠΈ ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΊΠΈ элСктронной подписи -- Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌΡ‹ RSA/DSA, российский Π“ΠžΠ‘Π’ "ΠŸΡ€ΠΎΡ†Π΅Π΄ΡƒΡ€Ρ‹ Π²Ρ‹Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ ΠΈ ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΊΠΈ элСктронной Ρ†ΠΈΡ„Ρ€ΠΎΠ²ΠΎΠΉ подписи" ΠΈ Ρ‚.Π΄.

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

Π”Π²Π° послСдних элСмСнта Π² спискС сСрвисов (симмСтричноС ΡˆΠΈΡ„Ρ€ΠΎΠ²Π°Π½ΠΈΠ΅ ΠΈ Π²Ρ‹Ρ€Π°Π±ΠΎΡ‚ΠΊΠ° ΠΎΠ±Ρ‰Π΅Π³ΠΎ ΠΊΠ»ΡŽΡ‡Π΅Π²ΠΎΠ³ΠΎ ΠΌΠ°Ρ‚Π΅Ρ€ΠΈΠ°Π»Π°) ΠΏΠΎΠ΄Π²Π΅Ρ€ΠΆΠ΅Π½Ρ‹ экспортным ограничСниям БША, поэтому ΠΎΠ½ΠΈ, Π² ΠΎΡ‚Π»ΠΈΡ‡ΠΈΠ΅ ΠΎΡ‚ ΠΎΡΡ‚Π°Π»ΡŒΠ½Ρ‹Ρ… пСрСчислСнных сСрвисов, ΠΎΡ„ΠΎΡ€ΠΌΠ»Π΅Π½Ρ‹ ΠΊΠ°ΠΊ Ρ€Π°ΡΡˆΠΈΡ€Π΅Π½ΠΈΠ΅ (Java Cryptography Extension, JCE), ΡΠ²Π»ΡΡŽΡ‰Π΅Π΅ΡΡ ΠΎΡ‚Π΄Π΅Π»ΡŒΠ½Ρ‹ΠΌ ΠΏΡ€ΠΎΠ΄ΡƒΠΊΡ‚ΠΎΠΌ.

Π˜Π΅Ρ€Π°Ρ€Ρ…ΠΈΡ криптографичСских сСрвисов, Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌΠΎΠ² ΠΈ Ρ€Π΅Π°Π»ΠΈΠ·Π°Ρ†ΠΈΠΉ

5. ΠžΠ±ΡŠΠ΅ΠΊΡ‚Π½Π°Ρ ΠΎΡ€Π³Π° низация ΠΌΠ΅Ρ…Π°Π½ΠΈΠ·ΠΌΠΎΠ² бСзопасности

java Π°ΠΏΠ»Π΅Ρ‚ Π·Π°Ρ‰ΠΈΡ‚Π° криптографичСский

ΠœΠ΅Ρ…Π°Π½ΠΈΠ·ΠΌΡ‹ бСзопасности Π² JDK 1.2 ΠΎΡ„ΠΎΡ€ΠΌΠ»Π΅Π½Ρ‹ Π² Π²ΠΈΠ΄Π΅ Ρ‡Π΅Ρ‚Ρ‹Ρ€Π΅Ρ… основных ΠΏΠ°ΠΊΠ΅Ρ‚ΠΎΠ² ΠΈ Ρ‚Ρ€Π΅Ρ… ΠΏΠ°ΠΊΠ΅Ρ‚ΠΎΠ² Ρ€Π°ΡΡˆΠΈΡ€Π΅Π½ΠΈΡ. Π’ΠΎΡ‚ Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΈΠ· Π½ΠΈΡ…

Β· java.security -- содСрТит интСрфСйсы ΠΈ классы, ΡΠΎΡΡ‚Π°Π²Π»ΡΡŽΡ‰ΠΈΠ΅ каркас ΠΌΠ΅Ρ…Π°Π½ΠΈΠ·ΠΌΠΎΠ² бСзопасности. Бюда входят рассмотрСнныС Π²Ρ‹ΡˆΠ΅ срСдства разграничСния доступа, Π° Ρ‚Π°ΠΊΠΆΠ΅ криптографичСскиС срСдства, Ρ‚Π°ΠΊΠΈΠ΅ ΠΊΠ°ΠΊ Π²Ρ‹Ρ€Π°Π±ΠΎΡ‚ΠΊΠ° элСктронной подписи, вычислСниС Ρ…ΡΡˆ-Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ ΠΈ Ρ‚.ΠΏ.

Β· java.security.interfaces -- срСдства Π³Π΅Π½Π΅Ρ€Π°Ρ†ΠΈΠΈ RSA- ΠΈ DSA-ΠΊΠ»ΡŽΡ‡Π΅ΠΉ.

Β· javax.crypto -- интСрфСйс ΠΈ классы для симмСтричного ΡˆΠΈΡ„Ρ€ΠΎΠ²Π°Π½ΠΈΡ.

НаиболСС Π²Π°ΠΆΠ½Ρ‹Π΅ с ΠΊΠΎΠ½Ρ†Π΅ΠΏΡ‚ΡƒΠ°Π»ΡŒΠ½ΠΎΠΉ Ρ‚ΠΎΡ‡ΠΊΠΈ зрСния интСрфСйсы ΠΈ классы сосрСдоточСны Π² ΠΏΠ°ΠΊΠ΅Ρ‚Π΅ java.security .

ΠŸΠΎΠ»ΠΈΡ‚ΠΈΠΊΠ° бСзопасности

ΠŸΠΎΠ»ΠΈΡ‚ΠΈΠΊΠ° бСзопасности Π² устанавливаСт соотвСтствиС ΠΌΠ΅ΠΆΠ΄Ρƒ источниками ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌ ΠΈ ΠΈΡ… ΠΏΡ€Π°Π²Π°ΠΌΠΈ доступа. Π’ Java-машинС Π² ΠΊΠ°ΠΆΠ΄Ρ‹ΠΉ ΠΌΠΎΠΌΠ΅Π½Ρ‚ Π²Ρ€Π΅ΠΌΠ΅Π½ΠΈ ΠΎΠ½Π° прСдставлСна ΠΎΠ΄Π½ΠΈΠΌ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ΠΎΠΌ класса, ΡΠ²Π»ΡΡŽΡ‰Π΅Π³ΠΎΡΡ ΠΏΡ€Π΅Π΅ΠΌΠ½ΠΈΠΊΠΎΠΌ абстрактного класса Policy . ΠœΠ΅Ρ‚ΠΎΠ΄Ρ‹ класса Policy ΠΏΠΎΠ·Π²ΠΎΠ»ΡΡŽΡ‚ ΠΏΠΎΠ»ΡƒΡ‡ΠΈΡ‚ΡŒ/ΡƒΡΡ‚Π°Π½ΠΎΠ²ΠΈΡ‚ΡŒ Ρ‚Π΅ΠΊΡƒΡ‰ΡƒΡŽ ΠΏΠΎΠ»ΠΈΡ‚ΠΈΠΊΡƒ, Π° Ρ‚Π°ΠΊΠΆΠ΅ Π²Ρ‹ΡΡΠ½ΠΈΡ‚ΡŒ ΠΏΡ€Π°Π²Π° доступа, ассоциированныС с Π·Π°Π΄Π°Π½Π½Ρ‹ΠΌ источником ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌ.

ΠŸΡ€ΠΎΠ²Π΅Ρ€ΠΊΠ° ΠΏΡ€Π°Π² доступа

Для контроля ΠΏΡ€Π°Π² доступа ΠΌΠΎΠΆΠ½ΠΎ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒΡΡ двумя срСдствами:

Β· встроСнным ΠΌΠ΅Π½Π΅Π΄ΠΆΠ΅Ρ€ΠΎΠΌ бСзопасности, ΠΏΠΎΠ»ΡƒΡ‡ΠΈΠ²ΡˆΠΈΠΌ Π½Π°Π·Π²Π°Π½ΠΈΠ΅ AccessController ;

Β· динамичСски измСняСмым ΠΌΠ΅Π½Π΅Π΄ΠΆΠ΅Ρ€ΠΎΠΌ бСзопасности -- SecurityManager .

Класс AccessController прСдоставляСт Π΅Π΄ΠΈΠ½Ρ‹ΠΉ ΠΌΠ΅Ρ‚ΠΎΠ΄ для ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΊΠΈ Π·Π°Π΄Π°Π½Π½ΠΎΠ³ΠΎ ΠΏΡ€Π°Π²Π° Π² Ρ‚Π΅ΠΊΡƒΡ‰Π΅ΠΌ контСкстС -- checkPermission.

ΠšΡ€ΠΈΠΏΡ‚ΠΎΠ³Ρ€Π°Ρ„ΠΈΡ‡Π΅ΡΠΊΠΈΠ΅ интСрфСйсы ΠΈ классы

ΠžΠ±ΡŠΠ΅ΠΊΡ‚Π½Π°Ρ организация криптографичСской подсистСмы Java СстСствСнным ΠΎΠ±Ρ€Π°Π·ΠΎΠΌ ΠΎΡ‚Ρ€Π°ΠΆΠ°Π΅Ρ‚ ΠΎΠΏΠΈΡΠ°Π½Π½ΡƒΡŽ Π²Ρ‹ΡˆΠ΅ ΠΊΡ€ΠΈΠΏΡ‚ΠΎΠ³Ρ€Π°Ρ„ΠΈΡ‡Π΅ΡΠΊΡƒΡŽ. ΠšΠ°ΠΆΠ΄ΠΎΠΌΡƒ сСрвису соотвСтствуСт абстрактный класс, ΠΎΠΏΠΈΡΡ‹Π²Π°ΡŽΡ‰ΠΈΠΉ Π΅Π³ΠΎ (сСрвиса) ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½Ρ‹ΠΉ интСрфСйс, Π° Ρ‚Π°ΠΊΠΆΠ΅ класс, ΠΎΠΏΠΈΡΡ‹Π²Π°ΡŽΡ‰ΠΈΠΉ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½Ρ‹ΠΉ интСрфСйс поставщика сСрвиса. Π’Π°ΠΆΠ½Ρ‹ΠΌΠΈ ΡΠ²Π»ΡΡŽΡ‚ΡΡ классы Provider ΠΈ Security . Π’ ΠΏΠ΅Ρ€Π²ΠΎΠΌ собраны ΠΎΠ±Ρ‰ΠΈΠ΅ ΠΌΠ΅Ρ‚ΠΎΠ΄Ρ‹ поставщиков криптографичСских услуг, Π²ΠΎ Π²Ρ‚ΠΎΡ€ΠΎΠΌ -- ΠΌΠ΅Ρ‚ΠΎΠ΄Ρ‹ управлСния поставщиками ΠΈ ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€Π°ΠΌΠΈ Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌΠΎΠ².

Бписок ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅ΠΌΠΎΠΉ Π»ΠΈΡ‚Π΅Ρ€Π°Ρ‚ΡƒΡ€Ρ‹

1. http://www.jetinfo.ru/1998/11-12/1/article1.11-12.19981237.html

2. http://vestnik.sci.pfu.edu.ru/archiv-cs/articles-cs/2004-3-1/pdf/kulyabov-2004.pdf

3. http://ru.wikipedia.org/wiki/Java

4. http://infocity.kiev.ua/hack/content/hack081.phtml

5. http://citforum.uar.net/security/web/java_seq.shtml

6. http://www.htc-cs.ru/press/tribune/java.html

7. http://www.ccc.ru/magazine/depot/00_11/print.html?web3.htm

Π Π°Π·ΠΌΠ΅Ρ‰Π΅Π½ΠΎ Π½Π° Allbest.ru

ΠŸΠΎΠ΄ΠΎΠ±Π½Ρ‹Π΅ Π΄ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚Ρ‹

    АрхитСктура Java ΠΈ Java RMI, ΠΈΡ… основныС свойства, базовая систСма ΠΈ элСмСнты. Π‘Π΅Π·ΠΎΠΏΠ°ΡΠ½ΠΎΡΡ‚ΡŒ ΠΈ Π²ΠΈΡ€Ρ‚ΡƒΠ°Π»ΡŒΠ½Π°Ρ Java-машина. Π˜Π½Ρ‚Π΅Ρ€Ρ„Π΅ΠΉΡ Java API. ΠŸΡ€ΠΈΠΌΠ΅Ρ€ использования прилоТСния RMI. Π Π°Π±ΠΎΡ‚Π° с ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΎΠΉ "Calculator". Π£Π½ΠΈΠ²Π΅Ρ€ΡΠ°Π»ΡŒΠ½ΠΎΡΡ‚ΡŒ, ΠΏΠΎΡ€Ρ‚Π°Ρ‚ΠΈΠ²Π½ΠΎΡΡ‚ΡŒ ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌ.

    курсовая Ρ€Π°Π±ΠΎΡ‚Π° , Π΄ΠΎΠ±Π°Π²Π»Π΅Π½ 03.12.2013

    ΠŸΠΎΠ½ΡΡ‚ΠΈΠ΅ ΠΈ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΎΠ½Π°Π»ΡŒΠ½Ρ‹Π΅ особСнности Java Card ΠΊΠ°ΠΊ вСрсии Java-ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΡ‹ для устройств с ΠΊΡ€Π°ΠΉΠ½Π΅ ΠΎΠ³Ρ€Π°Π½ΠΈΡ‡Π΅Π½Π½Ρ‹ΠΌΠΈ Π²Ρ‹Ρ‡ΠΈΡΠ»ΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹ΠΌΠΈ рСсурсами, ΠΎΡ†Π΅Π½ΠΊΠ° Π΅Π΅ возмоТностСй ΠΈ Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΡ‹Ρ… рСсурсов. Анализ стСпСни бСзопасности ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΡ‹, взаимодСйствиС ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚ΠΎΠ².

    прСзСнтация , Π΄ΠΎΠ±Π°Π²Π»Π΅Π½ 19.05.2014

    Π‘Π΅Ρ‚Π΅Π²Ρ‹Π΅ возмоТности языков программирования. ΠŸΡ€Π΅ΠΈΠΌΡƒΡ‰Π΅ΡΡ‚Π²Π° использования Java-Π°ΠΏΠΏΠ»Π΅Ρ‚ΠΎΠ². ΠšΠ»Π°ΡΡΡ‹, входящиС Π² состав Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠΈ java.awt. Π‘ΠΎΠ·Π΄Π°Π½ΠΈΠ΅ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΡΠΊΠΎΠ³ΠΎ интСрфСйса. Π‘ΠΎΠΊΠ΅Ρ‚Π½ΠΎΠ΅ соСдинСниС с сСрвСром. Π“Ρ€Π°Ρ„ΠΈΠΊΠ° Π² Java. ЗначСния ΡΠΎΡΡ‚Π°Π²Π»ΡΡŽΡ‰ΠΈΡ… Ρ†Π²Π΅Ρ‚Π°.

    курсовая Ρ€Π°Π±ΠΎΡ‚Π° , Π΄ΠΎΠ±Π°Π²Π»Π΅Π½ 10.11.2014

    Π˜ΡΡ‚ΠΎΡ€ΠΈΡ создания языка Java. ΠžΡΠ½ΠΎΠ²Π½Ρ‹Π΅ ΠΏΡ€ΠΈΠ½Ρ†ΠΈΠΏΡ‹ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π½ΠΎ-ΠΎΡ€ΠΈΠ΅Π½Ρ‚ΠΈΡ€ΠΎΠ²Π°Π½Π½ΠΎΠ³ΠΎ программирования. Π‘Ρ‚Ρ€ΡƒΠΊΡ‚ΡƒΡ€Π°, особСнности синтаксиса ΠΈ ΠΏΡ€ΠΈΠΌΠ΅Ρ€Ρ‹ ΠΏΡ€ΠΈΠΊΠ»Π°Π΄Π½Ρ‹Ρ… возмоТностСй использования языка Java, Π΅Π³ΠΎ прСимущСства. ΠŸΠ΅Ρ€ΡΠΏΠ΅ΠΊΡ‚ΠΈΠ²Ρ‹ Ρ€Π°Π±ΠΎΡ‚Ρ‹ программистом Π½Π° языкС Java.

    курсовая Ρ€Π°Π±ΠΎΡ‚Π° , Π΄ΠΎΠ±Π°Π²Π»Π΅Π½ 14.12.2012

    Основа ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΡΠΊΠΎΠ³ΠΎ интСрфСйса. ВозмоТности ΠΏΠ°ΠΊΠ΅Ρ‚ΠΎΠ² java.awt.geom, java.awt, классов java.awt.Graphics ΠΈ java.awt.Graphics2D. ΠžΡΠ½ΠΎΠ²Π½Ρ‹Π΅ графичСскиС ΠΏΡ€ΠΈΠΌΠΈΡ‚ΠΈΠ²Ρ‹ ΠΈ Ρ€Π°Π±ΠΎΡ‚Π° с ΠΏΠΎΡ‚ΠΎΠΊΠ°ΠΌΠΈ. Листинг ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ ΠΈ составлСниС ΠΊΠΎΠΌΠΏΠΎΠ·ΠΈΡ†ΠΈΠΈ Π°Ρ„Ρ„ΠΈΠ½Π½Ρ‹Ρ… ΠΏΡ€Π΅ΠΎΠ±Ρ€Π°Π·ΠΎΠ²Π°Π½ΠΈΠΉ.

    ΠΌΠ΅Ρ‚ΠΎΠ΄ΠΈΡ‡ΠΊΠ° , Π΄ΠΎΠ±Π°Π²Π»Π΅Π½ 30.06.2009

    АрхитСктура уровня ΠΊΠΎΠΌΠ°Π½Π΄ ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΡ‹ Java, Ρ„ΠΎΡ€ΠΌΠ°Ρ‚ Ρ„Π°ΠΉΠ»Π° класса Java. ΠšΠΎΠΌΠΏΠΈΠ»ΡΡ‚ΠΎΡ€ ассСмблСроподобного языка, ΠΏΠΎΠ·Π²ΠΎΠ»ΡΡŽΡ‰ΠΈΠΉ ΡΠΎΠ·Π΄Π°Π²Π°Ρ‚ΡŒ Ρ„Π°ΠΉΠ»Ρ‹ классов, ΠΊΠΎΡ€Ρ€Π΅ΠΊΡ‚Π½ΠΎ ΠΎΠ±Ρ€Π°Π±Π°Ρ‚Ρ‹Π²Π°Π΅ΠΌΡ‹Π΅ Ρ€Π΅Π°Π»ΡŒΠ½ΠΎΠΉ JVM, ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°ΡŽΡ‰ΠΈΠΉ всС ΠΊΠΎΠΌΠ°Π½Π΄Ρ‹ Π±Π°ΠΉΡ‚-ΠΊΠΎΠ΄Π° Java ΠΈ ваТнСйшиС возмоТности JVM.

    курсовая Ρ€Π°Π±ΠΎΡ‚Π° , Π΄ΠΎΠ±Π°Π²Π»Π΅Π½ 17.09.2008

    ΠšΡ€Π°Ρ‚ΠΊΠ° историчСская справка развития языка Java. Анализ ΠΏΡ€Π΅Π΄ΠΌΠ΅Ρ‚Π½ΠΎΠΉ области. Java platform, enterprise and standart edition. АпплСты, сСрвлСты, gui-прилоТСния. Π ΠΎΠ·Ρ€Π°Π±ΠΎΡ‚ΠΊΠ° ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½ΠΎΠ³ΠΎ ΠΊΠΎΠ΄Π°, консольноС ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅. Π Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚Ρ‹ Ρ€Π°Π±ΠΎΡ‚Ρ‹ Π°ΠΏΠΏΠ»Π΅Ρ‚Π°, сСрвлСта.

    курсовая Ρ€Π°Π±ΠΎΡ‚Π° , Π΄ΠΎΠ±Π°Π²Π»Π΅Π½ 23.12.2015

    ΠŸΡ€Π΅ΠΈΠΌΡƒΡ‰Π΅ΡΡ‚Π²ΠΎ использования ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌ, написанных Π½Π° Java, трСбования ΠΊ Π½ΠΈΠΌ ΠΈ настройки Π½Π° клиСнтском ПК. Π Π°Π·Π²Π΅Ρ€Ρ‚Ρ‹Π²Π°Π½ΠΈΠ΅ ΠΈ ΠΏΠΎΡΠ»Π΅Π΄ΡƒΡŽΡ‰Π΅Π΅ "автоматичСскоС" ΠΎΠ±Π½ΠΎΠ²Π»Π΅Π½ΠΈΠ΅ вСрсий GUI ΠΊΠ»ΠΈΠ΅Π½Ρ‚Π° с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ использования Ρ‚Π΅Ρ…Π½ΠΎΠ»ΠΎΠ³ΠΈΠΈ Java Web Start Π² срСдС Windows.

    Ρ€Π΅Ρ„Π΅Ρ€Π°Ρ‚ , Π΄ΠΎΠ±Π°Π²Π»Π΅Π½ 16.05.2011

    Π‘ΠΎΠ·Π΄Π°Π½ΠΈΠ΅ языка программирования с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ прилоТСния "Java". Π˜ΡΡ‚ΠΎΡ€ΠΈΡ названия ΠΈ эмблСмы Java. ΠžΠ±Π·ΠΎΡ€ многообразия соврСмСнных тСкстовых Ρ€Π΅Π΄Π°ΠΊΡ‚ΠΎΡ€ΠΎΠ². ΠžΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠ° строки. ΠœΠ΅Ρ‚ΠΎΠ΄Ρ‹ Π² классС String. Java: Π·Π°Π΄Π°Ρ‡ΠΈ ΠΏΠΎ ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠ΅ тСкста. ΠŸΡ€ΠΈΠΌΠ΅Ρ€Ρ‹ программирования.

    курсовая Ρ€Π°Π±ΠΎΡ‚Π° , Π΄ΠΎΠ±Π°Π²Π»Π΅Π½ 19.07.2014

    Π Π°ΡΡˆΠΈΡ€ΡΠ΅ΠΌΡ‹ΠΉ язык Ρ€Π°Π·ΠΌΠ΅Ρ‚ΠΊΠΈ XML. ОписаниС Ρ‚ΠΈΠΏΠ° Π΄ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚Π° DTD. Π—Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ XML ΠΈ ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΡ‹ Java. ΠžΠ±Π·ΠΎΡ€ стандартных Π°Π½Π°Π»ΠΈΠ·Π°Ρ‚ΠΎΡ€ΠΎΠ² DOM ΠΈ SAX. ВСхнология Java Servlet, Java Server Pages (JSP), JavaBeans. ΠžΠ±Ρ‰Π°Ρ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΎΠ½Π°Π»ΡŒΠ½ΠΎΡΡ‚ΡŒ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½ΠΎΠ³ΠΎ ΠΏΡ€ΠΎΠ΄ΡƒΠΊΡ‚Π°. МодСль Π΄Π°Π½Π½Ρ‹Ρ….

Π§Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ информационная Π±Π΅Π·ΠΎΠΏΠ°ΡΠ½ΠΎΡΡ‚ΡŒ? Π­Ρ‚ΠΎ состояниС защищСнности ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΈ, ΠΏΡ€ΠΈ ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΌ ΠΎΠ±Π΅ΡΠΏΠ΅Ρ‡ΠΈΠ²Π°ΡŽΡ‚ΡΡ Π΅Ρ‘ ΠΊΠΎΠ½Ρ„ΠΈΠ΄Π΅Π½Ρ†ΠΈΠ°Π»ΡŒΠ½ΠΎΡΡ‚ΡŒ, Π΄ΠΎΡΡ‚ΡƒΠΏΠ½ΠΎΡΡ‚ΡŒ ΠΈ Ρ†Π΅Π»ΠΎΡΡ‚Π½ΠΎΡΡ‚ΡŒ.

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

На ΠΌΠΎΠΉ взгляд, Π½Π΅Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎ ΠΎΡ†Π΅Π½ΠΈΡ‚ΡŒ Π±Π΅Π·ΠΎΠΏΠ°ΡΠ½ΠΎΡΡ‚ΡŒ ΠΎΡ‚Π΄Π΅Π»ΡŒΠ½ΠΎ взятой Ρ‚Π΅Ρ…Π½ΠΎΠ»ΠΎΠ³ΠΈΠΈ ΠΈΠ»ΠΈ языка программирования Π±Π΅Π· привязки ΠΊ ΠΊΠΎΠ½ΠΊΡ€Π΅Ρ‚Π½ΠΎΠΌΡƒ способу Ρ€Π΅Π°Π»ΠΈΠ·Π°Ρ†ΠΈΠΈ, Ρ‚. Π΅. Π±Π΅Π· ΠΊΠΎΠ½ΠΊΡ€Π΅Ρ‚Π½ΠΎΠ³ΠΎ Π³ΠΎΡ‚ΠΎΠ²ΠΎΠ³ΠΎ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½ΠΎΠ³ΠΎ ΠΏΡ€ΠΎΠ΄ΡƒΠΊΡ‚Π° Π½Π° языкС, Ρƒ ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ³ΠΎ Π΅ΡΡ‚ΡŒ Π΄Π΅Ρ‚Π°Π»ΡŒΠ½ΠΎΠ΅ Π’Π— с описаниСм Π°Ρ€Ρ…ΠΈΡ‚Π΅ΠΊΡ‚ΡƒΡ€Ρ‹ ΠΈ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΎΠ½Π°Π»Π°. Но ΠΈ этого Ρ‚ΠΎΠΆΠ΅ Π±ΡƒΠ΄Π΅Ρ‚ ΠΌΠ°Π»ΠΎ, Ρ‚Π°ΠΊ ΠΊΠ°ΠΊ Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ ΠΎΡ†Π΅Π½ΠΈΠ²Π°Ρ‚ΡŒ состояниС защищСнности Π³ΠΎΡ‚ΠΎΠ²ΠΎΠΉ ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΎΠ½Π½ΠΎΠΉ систСмы со своСй спСцифичной Π°Ρ€Ρ…ΠΈΡ‚Π΅ΠΊΡ‚ΡƒΡ€ΠΎΠΉ, Π½Π°Π±ΠΎΡ€ΠΎΠΌ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚ΠΎΠ², бизнСс-процСссами, ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠ΅ΠΉ ΠΈ, Π½Π°ΠΊΠΎΠ½Π΅Ρ†, людьми. ΠŸΡ€ΠΈΠ²Π΅Π΄Ρƒ ΠΏΡ€ΠΈΠΌΠ΅Ρ€ с постройкой Π΄ΠΎΠΌΠ°. Π£ нас Π΅ΡΡ‚ΡŒ ΠΌΠ°Ρ‚Π΅Ρ€ΠΈΠ°Π»Ρ‹ (пСсок, Ρ†Π΅ΠΌΠ΅Π½Ρ‚, Ρ‰Π΅Π±Π΅Π½ΡŒ, ΠΊΠΈΡ€ΠΏΠΈΡ‡ ΠΈ Ρ‚. Π΄.) ΠΈ инструмСнты (Π²Π΅Π΄Ρ€ΠΎ, Π»ΠΎΠΏΠ°Ρ‚Π°, ΡˆΠΏΠ°Ρ‚Π΅Π»ΡŒ ΠΈ Ρ‚. ΠΏ.). ΠžΡ†Π΅Π½ΠΈΡ‚ΡŒ ΠΈΡΠΊΠ»ΡŽΡ‡ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎ ΠΏΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅ΠΌΡ‹ΠΌ ΠΌΠ°Ρ‚Π΅Ρ€ΠΈΠ°Π»Π°ΠΌ/инструмСнтам качСство ΠΈ Π½Π°Π΄Π΅ΠΆΠ½ΠΎΡΡ‚ΡŒ Π³ΠΎΡ‚ΠΎΠ²ΠΎΠ³ΠΎ Π΄ΠΎΠΌΠ° ΠΌΡ‹ Π½Π΅ смоТСм: сколько ΠΎΠ½ простоит, Π±ΡƒΠ΄ΡƒΡ‚ Π»ΠΈ Π² Π½Π΅ΠΌ Ρ‚Ρ€Π΅Ρ‰ΠΈΠ½Ρ‹, Π±ΡƒΠ΄Π΅Ρ‚ Π»ΠΈ Π² Π½Π΅ΠΌ Ρ…ΠΎΠ»ΠΎΠ΄Π½ΠΎ ΠΈΠ»ΠΈ Ρ‚ΠΈΡ…ΠΎ. НуТно Π²Ρ‹Π±Ρ€Π°Ρ‚ΡŒ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ Π΄ΠΎΠΌΠ°, Ρ‚Π΅Ρ…Π½ΠΎΠ»ΠΎΠ³ΠΈΠΈ ΡΡ‚Ρ€ΠΎΠΈΡ‚Π΅Π»ΡŒΡΡ‚Π²Π° ΠΈ Π±Ρ€ΠΈΠ³Π°Π΄Ρƒ мастСров. И Ρ‚ΠΎΠ»ΡŒΠΊΠΎ послС Π·Π°Π²Π΅Ρ€ΡˆΠ΅Π½ΠΈΡ ΡΡ‚Ρ€ΠΎΠΈΡ‚Π΅Π»ΡŒΡΡ‚Π²Π° ΠΌΡ‹ смоТСм провСсти измСрСния соотвСтствия ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Ρƒ, Π“ΠžΠ‘Π’Ρƒ, БНиПам, ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΈΡ‚ΡŒ измСрСния ΠΏΠΎ Ρ‚Π΅ΠΏΠ»ΠΎΠ·Π°Ρ‰ΠΈΡ‚Π΅, ΡˆΡƒΠΌΡƒ, Π½Π°Π³Ρ€ΡƒΠ·ΠΊΠ°ΠΌ, провСсти Π°Π½Π°Π»ΠΈΠ· качСства Ρ†Π΅ΠΌΠ΅Π½Ρ‚Π° ΠΈ ΠΎΡ‚Π²Π΅Ρ‚ΠΈΡ‚ΡŒ Π½Π° Π±ΠΎΠ»ΡŒΡˆΠΈΠ½ΡΡ‚Π²ΠΎ вопросов. Но Π½Π° Π³Π»Π°Π²Π½Ρ‹ΠΉ вопрос «сколько ΠΎΠ½ простоит?Β» Ρƒ нас Π½Π΅ Π±ΡƒΠ΄Π΅Ρ‚ Ρ‚ΠΎΡ‡Π½ΠΎΠ³ΠΎ ΠΎΡ‚Π²Π΅Ρ‚Π°, Ρ‚Π°ΠΊ ΠΊΠ°ΠΊ ΠΌΡ‹ Π½Π΅ Π·Π½Π°Π΅ΠΌ всСх условий эксплуатации Π΄ΠΎΠΌΠ° ΠΈ всСх Ρ„Π°ΠΊΡ‚ΠΎΡ€ΠΎΠ², ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Π±ΡƒΠ΄ΡƒΡ‚ Π²ΠΎΠ·Π΄Π΅ΠΉΡΡ‚Π²ΠΎΠ²Π°Ρ‚ΡŒ Π½Π° протяТСнии всСго Π²Ρ€Π΅ΠΌΠ΅Π½ΠΈ.

Как ΠΎΠ±Π΅ΡΠΏΠ΅Ρ‡ΠΈΡ‚ΡŒ Π±Π΅Π·ΠΎΠΏΠ°ΡΠ½ΠΎΡΡ‚ΡŒ Π² Java

Π’ΠΎΠ·ΡŒΠΌΠ΅ΠΌ ΠΊ ΠΏΡ€ΠΈΠΌΠ΅Ρ€Ρƒ Java. Π­Ρ‚ΠΎ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π½ΠΎ-ΠΎΡ€ΠΈΠ΅Π½Ρ‚ΠΈΡ€ΠΎΠ²Π°Π½Π½Ρ‹ΠΉ язык программирования; ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹, написанныС Π½Π° Java, Ρ‚Ρ€Π°Π½ΡΠ»ΠΈΡ€ΡƒΡŽΡ‚ΡΡ Π² Π±Π°ΠΉΡ‚-ΠΊΠΎΠ΄ Java, выполняСмый Π²ΠΈΡ€Ρ‚ΡƒΠ°Π»ΡŒΠ½ΠΎΠΉ машиной Java (JVM) - ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΎΠΉ, ΠΎΠ±Ρ€Π°Π±Π°Ρ‚Ρ‹Π²Π°ΡŽΡ‰Π΅ΠΉ Π±Π°ΠΉΡ‚ΠΎΠ²Ρ‹ΠΉ ΠΊΠΎΠ΄ ΠΈ ΠΏΠ΅Ρ€Π΅Π΄Π°ΡŽΡ‰Π΅ΠΉ инструкции ΠΎΠ±ΠΎΡ€ΡƒΠ΄ΠΎΠ²Π°Π½ΠΈΡŽ ΠΊΠ°ΠΊ ΠΈΠ½Ρ‚Π΅Ρ€ΠΏΡ€Π΅Ρ‚Π°Ρ‚ΠΎΡ€. Достоинством ΠΏΠΎΠ΄ΠΎΠ±Π½ΠΎΠ³ΠΎ способа выполнСния ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌ являСтся полная Π½Π΅Π·Π°Π²ΠΈΡΠΈΠΌΠΎΡΡ‚ΡŒ Π±Π°ΠΉΡ‚-ΠΊΠΎΠ΄Π° ΠΎΡ‚ ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΎΠ½Π½ΠΎΠΉ систСмы ΠΈ оборудования, Ρ‡Ρ‚ΠΎ позволяСт Π²Ρ‹ΠΏΠΎΠ»Π½ΡΡ‚ΡŒ Java-прилоТСния Π½Π° любом устройствС, для ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ³ΠΎ сущСствуСт ΡΠΎΠΎΡ‚Π²Π΅Ρ‚ΡΡ‚Π²ΡƒΡŽΡ‰Π°Ρ Π²ΠΈΡ€Ρ‚ΡƒΠ°Π»ΡŒΠ½Π°Ρ машина.

Β« Π£Π½ΠΈΠ²Π΅Ρ€ΡΠ°Π»ΡŒΠ½Ρ‹ΠΉ язык» Π·Π²ΡƒΡ‡ΠΈΡ‚ красиво, Π½ΠΎ самая распространённая ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΠ° - это ΠΎΠ΄Π½ΠΎΠ²Ρ€Π΅ΠΌΠ΅Π½Π½ΠΎ ΠΈ обратная сторона ΠΌΠ΅Π΄Π°Π»ΠΈ - ΡƒΡ‚Π΅Ρ‡ΠΊΠ° памяти Π² JVM, Ρ‡Ρ‚ΠΎ ΠΏΡ€ΠΈΠ²ΠΎΠ΄ΠΈΡ‚ ΠΊ ΠΏΠ΅Ρ€Π΅ΠΏΠΎΠ»Π½Π΅Π½ΠΈΡŽ памяти ΠΈ сбоям. Π’ связи с этой ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΠΎΠΉ Π½Π΅ ΠΈΡΠΊΠ»ΡŽΡ‡Π΅Π½Ρ‹ уязвимости, вСдь основной постулат надСТности - Ρ‡Π΅ΠΌ ΠΏΡ€ΠΎΡ‰Π΅, Ρ‚Π΅ΠΌ Π»ΡƒΡ‡ΡˆΠ΅. Π’ Π΄Π°Π½Π½ΠΎΠΌ ΠΆΠ΅ случаС собираСтся Ρ‚Π°ΠΊΠΎΠΉ слоТный ΠΏΠΈΡ€ΠΎΠ³ ΠΈΠ· обСспСчСния совмСстимости большого количСства ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌ ΠΈ ОБ, Ρ‡Ρ‚ΠΎ практичСски Π½Π΅Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎ ΠΎΡ‚ΡΠ»Π΅ΠΆΠΈΠ²Π°Ρ‚ΡŒ ΠΈ Π·Π°ΠΊΡ€Ρ‹Π²Π°Ρ‚ΡŒ всС Π½Π°ΠΉΠ΄Π΅Π½Π½Ρ‹Π΅ Π² Π½ΠΈΡ… уязвимости ΠΈ ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΈΠ²Π½ΠΎ ΠΈΡ… ΡƒΡΡ‚Ρ€Π°Π½ΡΡ‚ΡŒ. Π£ Ρ‚ΠΎΠΉ ΠΆΠ΅ Microsoft уязвимости ΠΌΠΎΠ³ΡƒΡ‚ Π±Ρ‹Ρ‚ΡŒ Π½Π°ΠΉΠ΄Π΅Π½Ρ‹ ΠΈ исправлСны спустя 4-8 Π»Π΅Ρ‚, ΠΈ это Ссли Π½Π΅ Π±Ρ€Π°Ρ‚ΡŒ Π² расчёт оставлСнныС Π½Π°ΠΌΠ΅Ρ€Π΅Π½Π½ΠΎ ΠΈΠ»ΠΈ ΠΏΠΎ ошибкС Π½Π΅Π΄Π΅ΠΊΠ»Π°Ρ€ΠΈΡ€ΠΎΠ²Π°Π½Π½Ρ‹Π΅ возмоТности.

Из ΠΌΠΎΠ΅ΠΉ ΠΏΡ€Π°ΠΊΡ‚ΠΈΠΊΠΈ: ΠΊΠΎΠ³Π΄Π° программисты Π΄ΠΎΠ±Π°Π²Π»ΡΡŽΡ‚ Π½ΠΎΠ²Ρ‹ΠΉ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΎΠ½Π°Π», ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ связан с ΡƒΠΆΠ΅ Ρ€Π΅Π°Π»ΠΈΠ·ΠΎΠ²Π°Π½Π½Ρ‹ΠΌ, ΠΈΠ»ΠΈ ΠΈΡΠΏΡ€Π°Π²Π»ΡΡŽΡ‚ старый Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΎΠ½Π°Π», Ρ‚ΠΎ Π² 15% случаях ΠΎΠ½ΠΈ Π»ΠΎΠΌΠ°ΡŽΡ‚ Ρ€Π°Π½Π΅Π΅ Ρ€Π°Π±ΠΎΡ‚Π°ΡŽΡ‰ΠΈΠΉ ΠΏΡ€ΠΎΠ΄ΡƒΠΊΡ‚. И Ссли ΠΏΡ€ΠΈ этом Π½Π΅ проводят ΠΏΠΎΠ»Π½ΠΎΠ΅ тСстированиС - Π½Π° Π²Ρ‹Ρ…ΠΎΠ΄Π΅ ΠΈΠΌΠ΅Π΅ΠΌ ΠΏΡ€ΠΎΠ΄ΡƒΠΊΡ‚ с Π½ΠΎΠ²Ρ‹ΠΌ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΎΠ½Π°Π»ΠΎΠΌ, Π½ΠΎ с частично Π½Π΅ Ρ€Π°Π±ΠΎΡ‚Π°ΡŽΡ‰ΠΈΠΌ старым. Π’Π°ΠΊΠΆΠ΅ ΡΡƒΡ‰Π΅ΡΡ‚Π²ΡƒΡŽΡ‚ различия написания ΠΊΠΎΠ΄Π° для Ρ€Π°Π·Π½Ρ‹Ρ… ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌ, вСрсий ОБ, ПО. Π’ связи с этим ΠΌΠΎΠΆΠ½ΠΎ сСбС ΠΏΡ€Π΅Π΄ΡΡ‚Π°Π²ΠΈΡ‚ΡŒ, насколько тяТСло ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°Ρ‚ΡŒ язык программирования JavΠ° ΠΈ JVM, Π½Π΅ говоря ΡƒΠΆΠ΅ ΠΏΡ€ΠΎ вопросы бСзопасности.

На Ρ‚Π΅ΠΊΡƒΡ‰ΠΈΠΉ ΠΌΠΎΠΌΠ΅Π½Ρ‚ Π²Ρ‹ΠΏΡƒΡ‰Π΅Π½ Java Development Kit 10, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ ΠΏΡ€Π΅Π΄Π»Π°Π³Π°Π΅Ρ‚ Π½Π°ΠΌ ΡˆΡ‚Π°Ρ‚Π½Ρ‹Π΅ ΠΌΠ΅Ρ…Π°Π½ΠΈΠ·ΠΌΡ‹ обСспСчСния бСзопасности, Π²Ρ‹ΠΏΡƒΡ‰Π΅Π½Π½Ρ‹Π΅ Π΅Ρ‰Π΅ для Java SE 8 ΠΈ описанныС Π² Security Documentation. Π’ дСсятой вСрсии Π½Π΅ добавилось Π½ΠΈΡ‡Π΅Π³ΠΎ Π½ΠΎΠ²ΠΎΠ³ΠΎ.

ΠžΡ‚ΠΌΠ΅Ρ‡Ρƒ, Ρ‡Ρ‚ΠΎ Ρƒ Oracle сущСствуСт рСсурсный Ρ†Π΅Π½Ρ‚Ρ€ бСзопасности Java . Π’ Ρ†Π΅Π»ΠΎΠΌ компания раздСляСт Π±Π΅Π·ΠΎΠΏΠ°ΡΠ½ΠΎΡΡ‚ΡŒ Java Π½Π° Ρ‡Π΅Ρ‚Ρ‹Ρ€Π΅ основных Ρ€Π°Π·Π΄Π΅Π»Π°:

А) Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠΈ Π΄ΠΎΠ»ΠΆΠ½Ρ‹:

Π‘Π»Π΅Π΄ΠΈΡ‚ΡŒ ΠΈ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ всС послСдниС обновлСния срСды Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ ΠΈ бСзопасности;

Π˜ΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ контроля коррСктности ΠΊΠΎΠ΄Π° (Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, Checker Framework);

Π‘) систСмныС администраторы Π΄ΠΎΠ»ΠΆΠ½Ρ‹:

Π‘Π»Π΅Π΄ΠΈΡ‚ΡŒ ΠΈ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ всС послСдниС обновлСния для Java ΠΈ Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΡ‹Π΅ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚Ρ‹ для Ρ€Π°Π±ΠΎΡ‚Ρ‹ ΠΏΡ€ΠΎΠ΄ΡƒΠΊΡ‚Π° (Π² Ρ‚. Ρ‡. ОБ, Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠΈ, Ρ„Ρ€Π΅ΠΉΠΌΠ²ΠΎΡ€ΠΊΠΈ, ΠΈ Ρ‚. Π΄.);

Π˜ΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ ΠΏΡ€Π°Π²ΠΈΠ»Π° развСртывания Java, описанныС ΠΈ ;

Π˜ΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ Π½Π°Π΄Ρ‘ΠΆΠ½ΡƒΡŽ ΠΌΠ΅Ρ‚ΠΊΡƒ Π²Ρ€Π΅ΠΌΠ΅Π½ΠΈ.

Π’) ΠΊΠΎΠ½Π΅Ρ‡Π½Ρ‹Π΅ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΠΈ Π΄ΠΎΠ»ΠΆΠ½Ρ‹:

ВсСгда ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ послСднюю ΠΎΡ€ΠΈΠ³ΠΈΠ½Π°Π»ΡŒΠ½ΡƒΡŽ Π²Π΅Ρ€ΡΠΈΡŽ Java;

Π“) профСссионалам Π² области бСзопасности Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ:

Π˜ΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ Ρ€Π°ΡΡˆΠΈΡ€Π΅Π½Π½Ρ‹Π΅ инструмСнты управлСния ΠΈ ΠΏΠΎΠ²Ρ‹ΡˆΠ΅Π½ΠΈΡ бСзопасности (Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, Advanced Management Console);

ΠšΠΎΠ½Ρ‚Ρ€ΠΎΠ»ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ ΡΠ²ΠΎΠ΅Π²Ρ€Π΅ΠΌΠ΅Π½Π½ΡƒΡŽ установку всСх ΠΎΠ±Π½ΠΎΠ²Π»Π΅Π½ΠΈΠΉ бСзопасности;

Π’Π°ΠΆΠ½ΠΎ, Ρ‡Ρ‚ΠΎΠ±Ρ‹ всС слСдовали ΠΈ выполняли ΠΏΡ€Π°Π²ΠΈΠ»Π° ΠΈ трСбования бСзопасности. Π”ΠΎΡΡ‚ΠΈΡ‡ΡŒ состояния бСзопасности Π½Π° Π°Π΄Π΅ΠΊΠ²Π°Ρ‚Π½ΠΎΠΌ ΡƒΡ€ΠΎΠ²Π½Π΅ ΠΌΠΎΠΆΠ½ΠΎ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ сообща ΠΈ примСняя всС доступныС ΠΌΠ΅Ρ€Ρ‹ (тСхничСскиС, ΠΎΡ€Π³Π°Π½ΠΈΠ·Π°Ρ†ΠΈΠΎΠ½Π½Ρ‹Π΅). Как ΠΏΠΎΠΊΠ°Π·Ρ‹Π²Π°Π΅Ρ‚ моя ΠΏΡ€Π°ΠΊΡ‚ΠΈΠΊΠ°, Π² 60% ΠΎΡ€Π³Π°Π½ΠΈΠ·Π°Ρ†ΠΈΠΉ Ρƒ ИВ- ΠΈ Π˜Π‘-слуТб всС Π½ΠΎΡ€ΠΌΠ°Π»ΡŒΠ½ΠΎ с Π±Π΅Π·ΠΎΠΏΠ°ΡΠ½ΠΎΡΡ‚ΡŒΡŽ, Π° Ρ‚Π°ΠΊΠΆΠ΅ с ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡΠΌΠΈ, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽΡ‚ ΠΊΠΎΡ€ΠΏΠΎΡ€Π°Ρ‚ΠΈΠ²Π½Ρ‹Π΅ устройства ΠΈ ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π΅Π½Ρ‹ ΠΊ Π΅Π΄ΠΈΠ½ΠΎΠΌΡƒ Π΄ΠΎΠΌΠ΅Π½Ρƒ. А Π²ΠΎΡ‚ самыми Π½Π΅ΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»ΠΈΡ€ΡƒΠ΅ΠΌΡ‹ΠΌΠΈ Π² этой области ΡΠ²Π»ΡΡŽΡ‚ΡΡ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠΈ, Ρ‚ΠΈΠΌΠ»ΠΈΠ΄Ρ‹, Π°Ρ€Ρ…ΠΈΡ‚Π΅ΠΊΡ‚ΠΎΡ€Ρ‹.

Π Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠ° ПО ΠΈ вопросы бСзопасности

Если Π²Π·ΡΡ‚ΡŒ ΡˆΠΈΡ€Π΅, Ρ‚ΠΎ основныС ΠΏΡ€ΠΈΡ‡ΠΈΠ½Ρ‹ возникновСния ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌ бСзопасности Π² прилоТСниях ΠΏΡ€ΠΈ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠ΅ ПО ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠ΅:

А) ΠžΡ‚ΡΡƒΡ‚ΡΡ‚Π²ΠΈΠ΅ понимания Ρ‚Π΅Ρ€ΠΌΠΈΠ½ΠΎΠ»ΠΎΠ³ΠΈΠΈ бСзопасности Π² Ρ†Π΅Π»ΠΎΠΌ, Π½Π΅ говоря ΠΎ спСцифичСских знаниях ΠΈ примСняСмых Ρ€Π΅ΡˆΠ΅Π½ΠΈΡΡ….

Как ΠΏΡ€Π°Π²ΠΈΠ»ΠΎ, Ρƒ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠΎΠ² Π±Π΅Π·ΠΎΠΏΠ°ΡΠ½ΠΎΡΡ‚ΡŒ Π² Π»ΡƒΡ‡ΡˆΠ΅ΠΌ случаС ассоциируСтся со ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠΌΠΈ Π²Π΅Ρ‰Π°ΠΌΠΈ: ΡƒΠΏΡ€Π°Π²Π»Π΅Π½ΠΈΠ΅ ΠΈ ΠΆΡƒΡ€Π½Π°Π»ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ доступа ΠΈ ΠΏΠ°Ρ€ΠΎΠ»ΡŒΠ½Π°Ρ Π·Π°Ρ‰ΠΈΡ‚Π°, Ρ€Π΅ΠΆΠ΅ - Π·Π°Ρ‰ΠΈΡ‚Π° соСдинСния Π½Π° ΡƒΡ€ΠΎΠ²Π½Π΅ https (использованиС ΠΌΠ΅Ρ…Π°Π½ΠΈΠ·ΠΌΠΎΠ² ΡˆΠΈΡ„Ρ€ΠΎΠ²Π°Π½ΠΈΡ, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ доступны ΠΈΠ· ΠΊΠΎΡ€ΠΎΠ±ΠΊΠΈ ΠΏΠΎ ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ). Π’. Π΅. Ρ„ΠΎΡ€ΠΌΠ°Π»ΡŒΠ½ΠΎ ΠΎΠ½ΠΈ Π±ΡƒΠ΄ΡƒΡ‚ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ ΠΌΠ΅Ρ‚ΠΎΠ΄Ρ‹ обСспСчСния бСзопасности, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΏΠΎ Ρ„Π°ΠΊΡ‚Ρƒ останутся Ρ„ΠΎΡ€ΠΌΠ°Π»ΡŒΠ½Ρ‹ΠΌΠΈ, «для Π³Π°Π»ΠΎΡ‡ΠΊΠΈΒ», Π±Π΅Π· ΡƒΡ‡Π΅Ρ‚Π° Ρ‚Ρ€Π΅Π±ΠΎΠ²Π°Π½ΠΈΠΉ ΠΈ нюансов:

Для ΠΏΠ°Ρ€ΠΎΠ»Π΅ΠΉ: ΠΎΠ±Ρ‹Ρ‡Π½ΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽΡ‚ΡΡ значСния ΠΏΠΎ ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ ΠΈ Π½Π΅ Π½Π°ΡΡ‚Ρ€Π°ΠΈΠ²Π°ΡŽΡ‚ΡΡ Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎ Π΄Π»ΠΈΠ½Π°, ΡΡ‚ΠΎΠΉΠΊΠΎΡΡ‚ΡŒ, частота смСны, Π½Π΅ΠΏΠΎΠ²Ρ‚ΠΎΡ€ΡΠ΅ΠΌΠΎΡΡ‚ΡŒ, количСство ΠΏΠΎΠΏΡ‹Ρ‚ΠΎΠΊ. Π”ΠΎΠ²ΠΎΠ»ΡŒΠ½ΠΎ часто эти ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€Ρ‹ нСльзя Π΄ΠΎΠ½Π°ΡΡ‚Ρ€ΠΎΠΈΡ‚ΡŒ, Ρ‚Π°ΠΊ ΠΊΠ°ΠΊ ΠΎΠ½ΠΈ Π½Π΅ Π±Ρ‹Π»ΠΈ Π²ΠΊΠ»ΡŽΡ‡Π΅Π½Ρ‹ Π² скоуп-Π·Π°Π΄Π°Ρ‡Ρƒ ΠΏΠΎ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠ΅ ПО, Ρ‡Ρ‚ΠΎ ΠΏΡ€ΠΈΠ²ΠΎΠ΄ΠΈΡ‚ ΠΊ нСобходимости Π΄ΠΎΠΏΠΈΡΡ‹Π²Π°Ρ‚ΡŒ ΠΊΠΎΠ΄.

По ΡƒΠΏΡ€Π°Π²Π»Π΅Π½ΠΈΡŽ ΠΈ ΠΆΡƒΡ€Π½Π°Π»ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΡŽ доступа: Π² Π»ΡƒΡ‡ΡˆΠ΅ΠΌ случаС Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠ°ΠΌ описали Π³Ρ€ΡƒΠΏΠΏΡ‹ ΠΈΠ»ΠΈ Ρ€ΠΎΠ»ΠΈ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Π΅ΠΉ ΠΈ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Ρ‹ доступа, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Π΄ΠΎΠ»ΠΆΠ½Ρ‹ Π±Ρ‹Ρ‚ΡŒ доступны Π² ПО. Π’ Ρ…ΡƒΠ΄ΡˆΠ΅ΠΌ - Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠΈ сами Β«ΠΏΠΎΠ΄Π΅Π»ΠΈΠ»ΠΈΒ» Ρ€Π°Π·Π΄Π΅Π»Ρ‹ ΠΈ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Ρ‹ Π½Π° Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΡ‹Π΅ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡΠΌ ΠΈ администраторам. Π’ ΠΏΠ΅Ρ€Π²ΠΎΠΌ случаС ΠΏΠΎΠ»ΡƒΡ‡Π°Π΅ΠΌ систСму, ΠΊΠΎΡ‚ΠΎΡ€ΡƒΡŽ ΠΌΠΎΠΆΠ½ΠΎ Π³ΠΈΠ±ΠΊΠΎ Π½Π°ΡΡ‚Ρ€ΠΎΠΈΡ‚ΡŒ, Π½ΠΎ трСбуСтся ΠΏΠΎΡ‚Ρ€Π°Ρ‚ΠΈΡ‚ΡŒ Π·Π½Π°Ρ‡ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΠ΅ количСство Π²Ρ€Π΅ΠΌΠ΅Π½ΠΈ Π½Π° настройку ΠΈ согласованиС ΠΏΡ€Π°Π². Π’ΠΎ Π²Ρ‚ΠΎΡ€ΠΎΠΌ - Ρ„ΠΎΡ€ΠΌΠ°Π»ΡŒΠ½ΡƒΡŽ систСму разграничСния доступа. ΠšΡ€ΠΎΠΌΠ΅ Ρ‚ΠΎΠ³ΠΎ, Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠ°ΠΌ Π½Π°Π΄ΠΎ ΠΏΠΎΠ½ΠΈΠΌΠ°Ρ‚ΡŒ, ΠΊΠ°ΠΊΡƒΡŽ ΠΈΠΌΠ΅Π½Π½ΠΎ ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΡŽ ΠΈ Π² ΠΊΠ°ΠΊΠΎΠΌ ΠΎΠ±ΡŠΡ‘ΠΌΠ΅ Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ ΠΆΡƒΡ€Π½Π°Π»ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ. Однако Π·Π°Ρ‡Π°ΡΡ‚ΡƒΡŽ ΠΈΠΌ эту ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΡŽ Π½Π΅ ΠΏΡ€Π΅Π΄ΠΎΡΡ‚Π°Π²Π»ΡΡŽΡ‚, Ρ‡Ρ‚ΠΎ ΠΏΡ€ΠΈΠ²ΠΎΠ΄ΠΈΡ‚ ΠΊ нСдостаточной Π΄Π΅Ρ‚Π°Π»ΠΈΠ·Π°Ρ†ΠΈΠΈ ΠΆΡƒΡ€Π½Π°Π»ΠΎΠ² для Ρ€Π°Π·Π±ΠΎΡ€Π° ΠΈΠ½Ρ†ΠΈΠ΄Π΅Π½Ρ‚ΠΎΠ² ΠΈΠ»ΠΈ понимания Ρ‚ΠΎΠ³ΠΎ, Ρ‡Ρ‚ΠΎ происходит Π² ПО. Или ΠΆΠ΅ ΠΊ ΠΈΠ·Π±Ρ‹Ρ‚ΠΎΡ‡Π½ΠΎΠΌΡƒ Ρ…Ρ€Π°Π½Π΅Π½ΠΈΡŽ Π»ΠΎΠ³ΠΎΠ² ΠΈ большого ΠΎΠ±ΡŠΡ‘ΠΌΠ° ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΈ, Ρ‡Ρ‚ΠΎ Π½Π°ΠΊΠ»Π°Π΄Ρ‹Π²Π°Π΅Ρ‚ сущСствСнныС ограничСния Π½Π° Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚ΡŒ хранСния ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΈ Π² Ρ‚Π΅Ρ‡Π΅Π½ΠΈΠ΅ Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎΠ³ΠΎ ΠΏΠ΅Ρ€ΠΈΠΎΠ΄Π° Π²Ρ€Π΅ΠΌΠ΅Π½ΠΈ (Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, ΠΎΠ΄ΠΈΠ½-Ρ‚Ρ€ΠΈ Π³ΠΎΠ΄Π°) ΠΈΠ»ΠΈ Π²ΠΎΠ·Π½ΠΈΠΊΠ°Π΅Ρ‚ Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎΡΡ‚ΡŒ Π·Π°ΠΊΡƒΠΏΠΊΠΈ Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹Ρ… Ρ…Ρ€Π°Π½ΠΈΠ»ΠΈΡ‰ ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΈ. ΠŸΡ€ΠΈ ΠΈΠ·Π±Ρ‹Ρ‚ΠΎΡ‡Π½ΠΎΠΉ записи ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΈ Π²ΠΎΠ·Π½ΠΈΠΊΠ°ΡŽΡ‚ Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹Π΅ ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΡ‹ со ΡΠΊΠΎΡ€ΠΎΡΡ‚ΡŒΡŽ Π°Π½Π°Π»ΠΈΠ·Π° ΠΈ Ρ€Π°Π·Π±ΠΎΡ€Π° ΠΈΠ½Ρ†ΠΈΠ΄Π΅Π½Ρ‚ΠΎΠ² ΠΈ быстротой поиска Π½ΡƒΠΆΠ½ΠΎΠΉ ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΈ. Π˜Π·Π±Ρ‹Ρ‚ΠΎΡ‡Π½ΠΎΡΡ‚ΡŒ Ρ‚Π°ΠΊΠΆΠ΅ ΠΌΠΎΠΆΠ΅Ρ‚ ΠΏΠΎΡ‚Ρ€Π΅Π±ΠΎΠ²Π°Ρ‚ΡŒ Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΠ³ΠΎ финансирования Π½Π° Ρ€Π°ΡΡˆΠΈΡ€Π΅Π½ΠΈΠ΅ ΡˆΡ‚Π°Ρ‚Π°, Π·Π°ΠΊΡƒΠΏΠΊΡƒ SIEM-систСм с настройкой ΡƒΠ½ΠΈΠΊΠ°Π»ΡŒΠ½Ρ‹Ρ… ΠΏΡ€Π°Π²ΠΈΠ» ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΈ ΠΈΠ»ΠΈ вСсти ΠΊ рискам, связанным с Π½Π΅Π°ΠΊΡ‚ΡƒΠ°Π»ΡŒΠ½ΠΎΡΡ‚ΡŒΡŽ ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΈ. ΠŸΡ€ΠΈ этом тратится слишком ΠΌΠ½ΠΎΠ³ΠΎ Π²Ρ€Π΅ΠΌΠ΅Π½ΠΈ Π½Π° Π°Π½Π°Π»ΠΈΠ· ΠΈ ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΡƒ ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΈ.

Π—Π°Ρ‰ΠΈΡ‚Π° ΠΊΠ°Π½Π°Π»ΠΎΠ² связи - Π½Π΅ ΠΌΠ΅Π½Π΅Π΅ сущСствСнный ΠΌΠΎΠΌΠ΅Π½Ρ‚, особСнно для ΠΏΠ»Π°Ρ‚Π΅ΠΆΠ½Ρ‹Ρ… ΠΈ банковских систСм, Π³Π΄Π΅ ΠΏΠΎΠΌΠΈΠΌΠΎ Ρ€Π°Π·Π³Π»Π°ΡˆΠ΅Π½ΠΈΡ ΠΏΠ΅Ρ€ΡΠΎΠ½Π°Π»ΡŒΠ½Ρ‹Ρ… ΠΈ Π»ΠΈΡ‡Π½Ρ‹Ρ… Π΄Π°Π½Π½Ρ‹Ρ… Π²ΠΎΠ·ΠΌΠΎΠΆΠ½Ρ‹ финансовыС ΠΏΠΎΡ‚Π΅Ρ€ΠΈ. Π§Π°Ρ‰Π΅ всСго Π±Ρ‹Π²Π°Π΅Ρ‚, Ρ‡Ρ‚ΠΎ ΠΎ Π·Π°Ρ‰ΠΈΡ‚Π΅ ΠΊΠ°Π½Π°Π»ΠΎΠ² ΠΈ срСды ΠΏΠ΅Ρ€Π΅Π΄Π°Ρ‡ΠΈ ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΈ Π½Π΅ Π΄ΡƒΠΌΠ°ΡŽΡ‚, Π° Ссли ΠΈ Π΄ΡƒΠΌΠ°ΡŽΡ‚, Ρ‚ΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽΡ‚ настройки Β«ΠΏΠΎ ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽΒ», Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, TLS/SSL. Но Ρ‚Π°ΠΌ вСдь Ρ‚ΠΎΠΆΠ΅ Π΅ΡΡ‚ΡŒ свои особСнности ΠΏΠΎ Π²Ρ‹Π±ΠΎΡ€Ρƒ вСрсии ΠΏΡ€ΠΎΡ‚ΠΎΠΊΠΎΠ»Π° (TLS 1.1, 1.2, 1.3 ΠΈΠ»ΠΈ SSL v1-3), Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌΠ° ΡˆΠΈΡ„Ρ€ΠΎΠ²Π°Π½ΠΈΡ (RC4, IDEA, Triple DES, SEED, Camellia ΠΈΠ»ΠΈ AES), Π΄Π»ΠΈΠ½Ρ‹ ΠΊΠ»ΡŽΡ‡Π°. Иногда выбираСтся, Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, ΠΏΡ€Π°Π²ΠΈΠ»ΡŒΠ½Ρ‹ΠΉ ΠΏΡ€ΠΎΡ‚ΠΎΠΊΠΎΠ» TLS 1.2, с ΡˆΠΈΡ„Ρ€ΠΎΠ²Π°Π½ΠΈΠ΅ΠΌ ΠΏΠΎ AES, Π΄Π»ΠΈΠ½ΠΎΠΉ ΠΊΠ»ΡŽΡ‡Π° 256 Π±ΠΈΡ‚, Π½ΠΎ забываСтся ΠΏΡ€ΠΎ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚ΡŒ Π²Ρ‹Π±ΠΎΡ€Π° адрСса ΠΏΠΎ ΠΏΠΎΡ€Ρ‚Ρƒ 443 для HTTPS ΠΈ ΠΈΠ»ΠΈ 80-ΠΉ ΠΏΠΎΡ€Ρ‚ для HTTP, вмСсто Π±Π»ΠΎΠΊΠΈΡ€ΠΎΠ²ΠΊΠΈ 80-Π³ΠΎ ΠΏΠΎΡ€Ρ‚Π°, Π² Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚Π΅ Ρ‡Π΅Π³ΠΎ появляСтся Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚ΡŒ ΠΏΠΎΠ»ΡƒΡ‡Π°Ρ‚ΡŒ доступ ΠΏΠΎ Π½Π΅Π·Π°Ρ‰ΠΈΡ‰Π΅Π½Π½ΠΎΠΌΡƒ ΠΊΠ°Π½Π°Π»Ρƒ. Или, Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, ΠΏΠΎΠ΄Π½ΠΈΠΌΠ°ΡŽΡ‚ инфраструктуру Π½Π° Π²ΠΈΡ€Ρ‚ΡƒΠ°Π»ΡŒΠ½Ρ‹Ρ… ΠΌΠ°ΡˆΠΈΠ½Π°Ρ… ΠΈ совсСм Π½Π΅ Π΄ΡƒΠΌΠ°ΡŽΡ‚ ΠΎ нСобходимости Π·Π°ΠΊΡ€Ρ‹Ρ‚ΡŒ сСтСвой доступ ΠΌΠ΅ΠΆΠ΄Ρƒ Π²ΠΈΡ€Ρ‚ΡƒΠ°Π»ΡŒΠ½Ρ‹ΠΌΠΈ машинами.

Π‘) Вторая ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΠ° связана с бизнСсом, Ρ‚Π°ΠΊ ΠΊΠ°ΠΊ ΠΎΠ½ Π²ΠΊΠ»Π°Π΄Ρ‹Π²Π°Π΅Ρ‚ дСньги Π² ΠΊΠΎΠ½ΠΊΡ€Π΅Ρ‚Π½Ρ‹ΠΉ ΡΠΏΠ΅Ρ†ΠΈΠ°Π»ΡŒΠ½Ρ‹ΠΉ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΎΠ½Π°Π», ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ Π½Π΅ ΡƒΡ‡ΠΈΡ‚Ρ‹Π²Π°Π΅Ρ‚ Π±Π»ΠΎΠΊΠΈ бСзопасности.

К соТалСнию, бизнСс Π½Π΅ всСгда ΠΏΠΎΠ½ΠΈΠΌΠ°Π΅Ρ‚, Π·Π°Ρ‡Π΅ΠΌ Π΅ΠΌΡƒ Ρ‚Ρ€Π°Ρ‚ΠΈΡ‚ΡŒ рСсурсы Π½Π° Π±Π»ΠΎΠΊΠΈ бСзопасности, Ссли ΠΎΡ‚ Π½ΠΈΡ… Π½Π΅Ρ‚ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΎΠ½Π°Π»ΡŒΠ½ΠΎΠΉ ΠΏΠΎΠ»ΡŒΠ·Ρ‹, Π΄Π΅Π½Π΅Π³ большС ΠΏΡ€ΠΎΠ΄ΡƒΠΊΡ‚ Π½Π΅ принСсёт, Π° Π΅ΡΡ‚ΡŒ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ вСроятныС риски, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΌΠΎΠ³ΡƒΡ‚ ΠΈ Π½Π΅ ΡΡ€Π°Π±ΠΎΡ‚Π°Ρ‚ΡŒ. БизнСс Ρ‡Π°Ρ‰Π΅ ΠΏΠΎΠ½ΠΈΠΌΠ°Π΅Ρ‚ Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎΡΡ‚ΡŒ Π²ΠΊΠ»Π°Π΄Ρ‹Π²Π°Ρ‚ΡŒΡΡ Π² Π±Π΅Π·ΠΎΠΏΠ°ΡΠ½ΠΎΡΡ‚ΡŒ, ΠΊΠΎΠ³Π΄Π° ΠΈΠ½Ρ†ΠΈΠ΄Π΅Π½Ρ‚ Π˜Π‘ ΡƒΠΆΠ΅ ΠΏΡ€ΠΎΠΈΠ·ΠΎΡˆΠ΅Π».

К соТалСнию, Π² этом Π²ΠΈΠ½ΠΎΠ²Π°Ρ‚ Π½Π΅ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ бизнСс, Π½ΠΎ ΠΈ Π΅Π³ΠΎ ΠΎΠΊΡ€ΡƒΠΆΠ΅Π½ΠΈΠ΅, ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ΅:

Π’Π°ΠΊΠΆΠ΅ Π½Π΅ ΠΏΠΎΠ½ΠΈΠΌΠ°Π΅Ρ‚ Π² бСзопасности;

ПоТалСло Π±ΡŽΠ΄ΠΆΠ΅Ρ‚ Π½Π° спСциалистов ΠΏΠΎ Π˜Π‘ (Π½Π΅ Π½Π°Π½ΠΈΠΌΠ°ΡŽΡ‚ΡΡ Π²ΠΎΠΎΠ±Ρ‰Π΅ ΠΈΠ»ΠΈ Π½Π°Π½ΠΈΠΌΠ°ΡŽΡ‚ΡΡ узкоспСциализированныС спСциалисты, ΠΈΠ»ΠΈ нанимаСтся ΠΎΠ΄ΠΈΠ½ Ρ‡Π΅Π»ΠΎΠ²Π΅ΠΊ, ΠΎΡ‚Π²Π΅Ρ‡Π°ΡŽΡ‰ΠΈΠΉ Π·Π° всС);

НС смогло Π°Ρ€Π³ΡƒΠΌΠ΅Π½Ρ‚ΠΈΡ€ΠΎΠ²Π°Π½ΠΎ донСсти Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎΡΡ‚ΡŒ Π² бСзопасности ΠΈ ΠΏΡ€Π°Π²ΠΈΠ»ΡŒΠ½ΠΎ ΠΎΠ±ΠΎΡΠ½ΠΎΠ²Π°Ρ‚ΡŒ Ρ‚Π΅ΠΊΡƒΡ‰ΠΈΠ΅ риски (Ρ€Π΅ΠΏΡƒΡ‚Π°Ρ†ΠΈΠΎΠ½Π½Ρ‹Π΅, финансовыС, врСмСнны́С).

Π’) ΠŸΡ€ΠΎΠ±Π»Π΅ΠΌΠ° с ΠΊΠΎΠΌΠΌΡƒΠ½ΠΈΠΊΠ°Ρ†ΠΈΠ΅ΠΉ Π² ΠΊΠΎΠΌΠΏΠ°Π½ΠΈΠΈ ΠΈΠ»ΠΈ отсутствиС ΠΎΠ½ΠΎΠΉ.

Π­Ρ‚ΠΎ Ρ‚ΠΎΡ‚ случай, ΠΊΠΎΠ³Π΄Π° бизнСс ΠΈ Π΅Π³ΠΎ ΠΎΠΊΡ€ΡƒΠΆΠ΅Π½ΠΈΠ΅ ΠΏΠΎΠ½ΠΈΠΌΠ°ΡŽΡ‚ Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎΡΡ‚ΡŒ ΠΈ Π²Π°ΠΆΠ½ΠΎΡΡ‚ΡŒ Π˜Π‘. Они Π²Ρ‹Π΄Π΅Π»ΠΈΠ»ΠΈ Π±ΡŽΠ΄ΠΆΠ΅Ρ‚Ρ‹, наняли ΡΠΎΠΎΡ‚Π²Π΅Ρ‚ΡΡ‚Π²ΡƒΡŽΡ‰ΠΈΡ… спСциалистов, Π½ΠΎ Π²ΠΎΠ·Π½ΠΈΠΊΠ°ΡŽΡ‚ слоТности Π² ΠΊΠΎΠΌΠΌΡƒΠ½ΠΈΠΊΠ°Ρ†ΠΈΠΈ ΠΌΠ΅ΠΆΠ΄Ρƒ бизнСс-подраздСлСниями ΠΈ слуТбами Π˜Π‘/ИВ, Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠ°ΠΌΠΈ.

Π“) НСдостаточная ΠΎΡΠ²Π΅Π΄ΠΎΠΌΠ»Π΅Π½Π½ΠΎΡΡ‚ΡŒ простых ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Π΅ΠΉ ΠΊΠΎΠΌΠΏΠ°Π½ΠΈΠΈ Π² вопросах Π˜Π‘.

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

Π”) НСхватка Π°Ρ€Ρ…ΠΈΡ‚Π΅ΠΊΡ‚ΠΎΡ€ΠΎΠ² Π˜Π‘ - Π½Π΅ всСгда Π² Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠ΅ ПО ΡƒΡ‡Π°ΡΡ‚Π²ΡƒΡŽΡ‚ спСциалисты ΠΏΠΎ Π˜Π‘, ΠΈ программисты сами Π΄ΡƒΠΌΠ°ΡŽΡ‚ ΠΎ бСзопасности Π°Ρ€Ρ…ΠΈΡ‚Π΅ΠΊΡ‚ΡƒΡ€Ρ‹ ΠΈ ΠΏΡ€ΠΈΠΌΠ΅Π½Π΅Π½ΠΈΠΈ написанных ΠΈ Π³ΠΎΡ‚ΠΎΠ²Ρ‹Ρ… шаблонов бСзопасности (Security patterns).

ВсСх нюансов Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠΈ Π½Π΅ Π·Π½Π°ΡŽΡ‚ ΠΈ Π½Π΅ ΠΌΠΎΠ³ΡƒΡ‚ Π·Π½Π°Ρ‚ΡŒ, Ρ‚Π°ΠΊ ΠΊΠ°ΠΊ ΠΈΡ… Π·Π°Π΄Π°Ρ‡Π° - Π²Ρ‹ΠΏΠΎΠ»Π½ΠΈΡ‚ΡŒ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΡƒ ΠΈ ΠΏΠ΅Ρ€Π΅ΠΉΡ‚ΠΈ ΠΊ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰Π΅ΠΉ. Если ΡƒΠ³Π»ΡƒΠ±ΠΈΡ‚ΡŒΡΡ Π² саму Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΡƒ, Ρ‚ΠΎ процСсс Π½Π°ΠΌΠ½ΠΎΠ³ΠΎ слоТнСС, Ρ‡Π΅ΠΌ каТСтся. ΠŸΠΎΡΡ‚ΠΎΠΌΡƒ Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ Ρ‡Π΅Ρ‚ΠΊΠΎ ΠΏΠΎΠ»ΡƒΡ‡ΠΈΡ‚ΡŒ Π·Π°Π΄Π°Ρ‡Ρƒ ΠΎΡ‚ бизнСса, Π΄Π΅ΠΊΠΎΠΌΠΏΠΎΠ·ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ Π΅Π΅ Π½Π° понятныС ΠΌΠΈΠ½ΠΈ-Π·Π°Π΄Π°Ρ‡ΠΈ для Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠΎΠ², провСсти Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΡƒ, провСсти Π°Π»ΡŒΡ„Π°- ΠΈ Π±Π΅Ρ‚Π°-тСстирования, Π½Π°Π³Ρ€ΡƒΠ·ΠΎΡ‡Π½Ρ‹Π΅, Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΎΠ½Π°Π»ΡŒΠ½Ρ‹Π΅ тСстирования, ΠΈΡΠΏΡ€Π°Π²ΠΈΡ‚ΡŒ ошибки, Π²Π΅Ρ€Π½ΡƒΡ‚ΡŒΡΡ ΠΊ тСстам - этот процСсс Ρ†ΠΈΠΊΠ»ΠΈΡ‡Π½Ρ‹ΠΉ ΠΈ Π΄ΠΎΠ»Π³ΠΈΠΉ. ΠŸΠΎΡΡ‚ΠΎΠΌΡƒ Π½Π΅ΡƒΠ΄ΠΈΠ²ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎ, Ρ‡Ρ‚ΠΎ Ρƒ Π½ΠΈΡ… Π½Π΅ Ρ…Π²Π°Ρ‚Π°Π΅Ρ‚ рСсурсов ΠΏΡ€ΠΎΠ΄ΡƒΠΌΠ°Ρ‚ΡŒ Π΄ΠΎ ΠΌΠ΅Π»ΠΎΡ‡Π΅ΠΉ Π±Π΅Π·ΠΎΠΏΠ°ΡΠ½ΠΎΡΡ‚ΡŒ ΠΏΡ€ΠΎΠ΄ΡƒΠΊΡ‚Π°.

Π§Ρ‚ΠΎΠ±Ρ‹ ΠΌΠΎΠΆΠ½ΠΎ Π±Ρ‹Π»ΠΎ Π³ΠΎΠ²ΠΎΡ€ΠΈΡ‚ΡŒ ΠΎ бСзопасности, Π½ΡƒΠΆΠ½ΠΎ Ρ€Π΅ΡˆΠΈΡ‚ΡŒ описанныС Π²Ρ‹ΡˆΠ΅ ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΡ‹. Π― ΡΠΏΠ΅Ρ†ΠΈΠ°Π»ΡŒΠ½ΠΎ Π½Π΅ ΠΎΠΏΠΈΡΡ‹Π²Π°ΡŽ Π²Π°Ρ€ΠΈΠ°Π½Ρ‚Ρ‹ Ρ€Π΅ΡˆΠ΅Π½ΠΈΠΉ, Ρ‚Π°ΠΊ ΠΊΠ°ΠΊ всС зависит ΠΎΡ‚ ΠΊΠΎΠ½ΠΊΡ€Π΅Ρ‚Π½Ρ‹Ρ… ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌ, срСды, условий. Π£Π½ΠΈΠ²Π΅Ρ€ΡΠ°Π»ΡŒΠ½ΠΎΠΉ пилюли Π½Π΅ сущСствуСт ΠΈ Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ всС Π²ΠΎΠ·ΠΌΠΎΠΆΠ½Ρ‹Π΅ ΠΌΠ΅Ρ€Ρ‹. Основная Π·Π°Π΄Π°Ρ‡Π° состоит Π² Ρ‚ΠΎΠΌ, Ρ‡Ρ‚ΠΎΠ±Ρ‹ всС Ρ€Π°Π±ΠΎΡ‚Π½ΠΈΠΊΠΈ ΠΊΠΎΠΌΠΏΠ°Π½ΠΈΠΈ Π²Π½ΠΈΠΊΠ°Π»ΠΈ, ΠΏΠΎΠ½ΠΈΠΌΠ°Π»ΠΈ ΠΈ выполняли трСбования Π˜Π‘ ΠΈ Π±Ρ‹Π»ΠΈ заинтСрСсованы Π² ΠΈΡ… соблюдСнии. И Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Ρ‚ΠΎΠ³Π΄Π° ΠΌΠΎΠΆΠ½ΠΎ Π±ΡƒΠ΄Π΅Ρ‚ Π³ΠΎΠ²ΠΎΡ€ΠΈΡ‚ΡŒ ΠΎΠ± эффСктивности ΠΈ Ρ…ΠΎΡ€ΠΎΡˆΠ΅ΠΌ ΡƒΡ€ΠΎΠ²Π½Π΅ зрСлости Π˜Π‘ Π² ΠΊΠΎΠΌΠΏΠ°Π½ΠΈΠΈ.

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

Π’ Π΄Π°Π½Π½ΠΎΠΌ Ρ€Π°Π·Π΄Π΅Π»Π΅ анализируСтся концСпция бСзопасности Π² ΠΎΠ±Ρ‰Π΅ΠΌ контСкстС взаимодСйствия Π² сСти Web ΠΈ рСализация Π·Π°Ρ‰ΠΈΡ‚Ρ‹ посрСдством исполняСмого ΠΊΠΎΠ΄Π°.

Π‘Π½Π°Ρ‡Π°Π»Π° рассмотрим Π΄Π²ΠΎΠΉΡΡ‚Π²Π΅Π½Π½ΠΎΡΡ‚ΡŒ вопроса бСзопасности Π² ΠΎΡ‚Π½ΠΎΡˆΠ΅Π½ΠΈΠΈ сСти Web ΠΈ ΡΠ²ΠΎΠ»ΡŽΡ†ΠΈΡŽ сСти Web ΠΊΠ°ΠΊ срСды Π² контСкстС этой двойствСнности. Π—Π°Ρ‚Π΅ΠΌ ΠΌΠΎΠΆΠ½ΠΎ Π½Π°Ρ‡ΠΈΠ½Π°Ρ‚ΡŒ описаниС ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΡ‹ Π·Π°Ρ‰ΠΈΡ‚Ρ‹ Π² контСкстС исполняСмого ΠΊΠΎΠ΄Π°.

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

Π”ΠΎΠ»ΠΆΠ΅Π½ Π»ΠΈ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒ ΠΏΠΎΠ»Π½ΠΎΡΡ‚ΡŒΡŽ ΠΈΠ·ΠΎΠ»ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ внСшнюю ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡƒ ΠΎΡ‚ рСсурсов ΠΊΠΎΠΌΠΏΡŒΡŽΡ‚Π΅Ρ€Π°? ΠšΠΎΠ½Π΅Ρ‡Π½ΠΎ ΠΆΠ΅, Π½Π΅Ρ‚. Π’ ΠΏΠΎΠ΄ΠΎΠ±Π½ΠΎΠΌ случаС исполняСмый ΠΊΠΎΠ΄ Π½Π΅ смог Π±Ρ‹ ΡΠ΄Π΅Π»Π°Ρ‚ΡŒ Π½ΠΈΡ‡Π΅Π³ΠΎ ΠΏΠΎΠ»Π΅Π·Π½ΠΎΠ³ΠΎ. Π‘ΠΎΠ»Π΅Π΅ ΠΏΠΎΠ»Π½ΠΎΠ΅ ΠΈ эффСктивноС Ρ€Π΅ΡˆΠ΅Π½ΠΈΠ΅ ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΡ‹ бСзопасности ΠΌΠΎΠΆΠ½ΠΎ Ρ€Π°Π·Π±ΠΈΡ‚ΡŒ Π½Π° ΡˆΠ΅ΡΡ‚ΡŒ этапов:

1. ΠŸΡ€Π΅Π΄ΡƒΠ³Π°Π΄Π°Ρ‚ΡŒ Π»ΡŽΠ±Ρ‹Π΅ ΠΏΠΎΡ‚Π΅Π½Ρ†ΠΈΠ°Π»ΡŒΠ½ΠΎ опасныС дСйствия ΠΈ ΠΌΠ΅Ρ‚ΠΎΠ΄Ρ‹ вторТСния.

2. БвСсти Π»ΡŽΠ±Ρ‹Π΅ опасныС дСйствия ΠΊ ΠΌΠΈΠ½ΠΈΠΌΠ°Π»ΡŒΠ½ΠΎΠΌΡƒ Π½Π°Π±ΠΎΡ€Ρƒ ΠΏΡ€ΠΎΡΡ‚Π΅ΠΉΡˆΠΈΡ… ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΉ.

3. ΠŸΠΎΡΡ‚Ρ€ΠΎΠΈΡ‚ΡŒ срСду программирования ΠΈ ΠΊΠΎΠΌΠΏΡŒΡŽΡ‚Π΅Ρ€Π½Ρ‹ΠΉ язык, явно Π·Π°ΠΏΡ€Π΅Ρ‰Π°ΡŽΡ‰ΠΈΠ΅ ΠΌΠΈΠ½ΠΈΠΌΠ°Π»ΡŒΠ½Ρ‹ΠΉ Π½Π°Π±ΠΎΡ€ опасных ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΉ, ΠΈ, ΡΠ»Π΅Π΄ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎ, Π»ΡŽΠ±Ρ‹Π΅ Π·Π»ΠΎΠ½Π°ΠΌΠ΅Ρ€Π΅Π½Π½Ρ‹Π΅ дСйствия.

4. Π”ΠΎΠΊΠ°Π·Π°Ρ‚ΡŒ логичСски ΠΈΠ»ΠΈ, Ссли Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎ, ΠΏΠΎΠΊΠ°Π·Π°Ρ‚ΡŒ ΠΊΠ°ΠΊ ΠΎΡ‡Π΅Π²ΠΈΠ΄Π½ΠΎΠ΅ Ρ‚ΠΎΡ‚ Ρ„Π°ΠΊΡ‚, Ρ‡Ρ‚ΠΎ язык ΠΈ срСда Π΄Π΅ΠΉΡΡ‚Π²ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎ Π·Π°Ρ‰ΠΈΡ‰Π΅Π½Ρ‹ ΠΏΡ€ΠΎΡ‚ΠΈΠ² ΠΌΠ΅Ρ‚ΠΎΠ΄ΠΎΠ² ΠΏΡ€Π΅Π΄Π½Π°ΠΌΠ΅Ρ€Π΅Π½Π½ΠΎΠ³ΠΎ вторТСния.

5. Π Π΅Π°Π»ΠΈΠ·ΠΎΠ²Π°Ρ‚ΡŒ язык ΠΈ Ρ€Π°Π·Ρ€Π΅ΡˆΠΈΡ‚ΡŒ исполняСмым ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ°ΠΌ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒΡΡ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ этим ΡƒΡ‚Π²Π΅Ρ€ΠΆΠ΄Π΅Π½Π½Ρ‹ΠΌ бСзопасным языком.

Π‘Ρ†Π΅Π½Π°Ρ€ΠΈΠΈ внСшнСй Π°Ρ‚Π°ΠΊΠΈ ΠΌΠΎΠΆΠ½ΠΎ Ρ€Π°Π·Π±ΠΈΡ‚ΡŒ Π½Π° ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠ΅ Π³Ρ€ΡƒΠΏΠΏΡ‹ (список Π½Π΅ ΠΏΠΎΠ»Π½Ρ‹ΠΉ):

Β· ΠŸΠΎΠ²Ρ€Π΅ΠΆΠ΄Π΅Π½ΠΈΠ΅ ΠΈΠ»ΠΈ Π½Π°Ρ€ΡƒΡˆΠ΅Π½ΠΈΠ΅ цСлостности Π΄Π°Π½Π½Ρ‹Ρ… ΠΈ/ΠΈΠ»ΠΈ состояния выполняСмой ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹;

Β· Π‘Π±ΠΎΡ€ ΠΈΠ»ΠΈ ΠΊΠΎΠΏΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ ΠΊΠΎΠ½Ρ„ΠΈΠ΄Π΅Π½Ρ†ΠΈΠ°Π»ΡŒΠ½ΠΎΠΉ ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΈ;

Β· Π‘Π»ΠΎΠΊΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ рСсурсов, вслСдствиС ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ³ΠΎ ΠΎΠ½ΠΈ становятся нСдоступными для Π·Π°ΠΊΠΎΠ½Π½Ρ‹Ρ… ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Π΅ΠΉ ΠΈ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌ;

Β· Π—Π°Ρ…Π²Π°Ρ‚ рСсурсов ΠΈ ΠΈΡ… использованиС внСшнСй Π½Π΅Π°Π²Ρ‚ΠΎΡ€ΠΈΠ·ΠΎΠ²Π°Π½Π½ΠΎΠΉ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΎΠΉ;

Β· Π‘ΠΎΠ·Π΄Π°Π½ΠΈΠ΅ Π½Π΅Ρ„Π°Ρ‚Π°Π»ΡŒΠ½Ρ‹Ρ… ситуаций, ΡΠ½ΠΈΠΆΠ°ΡŽΡ‰ΠΈΡ… ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΡŒ, особСнно Π² устройствах Π²Ρ‹Π²ΠΎΠ΄Π°;

Β· ΠŸΡ€ΠΈΡΠ²ΠΎΠ΅Π½ΠΈΠ΅ ΠΏΡ€Π°Π² доступа ΠΈ использованиС ΠΈΡ… ΠΈΠ»ΠΈ ΠΊΠΎΠΌΠΏΡŒΡŽΡ‚Π΅Ρ€Π° ΠΊΠ»ΠΈΠ΅Π½Ρ‚Π° для вторТСния Π² Π΄Ρ€ΡƒΠ³ΠΈΠ΅ элСмСнты сСти.

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

Π’Π°Π±Π»ΠΈΡ†Π°1.1 ΠŸΠΎΡ‚Π΅Π½Ρ†ΠΈΠ°Π»ΡŒΠ½ΠΎ уязвимыС ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Ρ‹ ΠΈ Ρ‚ΠΈΠΏΡ‹ воздСйствиС

ΠΠ°Ρ€ΡƒΡˆΠ΅Π½ΠΈΠ΅ цСлостности

ΠŸΠ΅Ρ€Π΅Ρ…Π²Π°Ρ‚ ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΈ

Π‘Π»ΠΎΠΊΠΈΡ€ΠΎΠ²ΠΊΠ°/ ИзмСнСниС ΠΏΡ€Π°Π²

Π—Π°Ρ…Π²Π°Ρ‚ рСсурса

ΠΠ΅Ρ„Π°Ρ‚Π°Π»ΡŒΠ½Ρ‹Π΅ ΠΏΠΎΠΌΠ΅Ρ…ΠΈ

Π—Π°Ρ…Π²Π°Ρ‚ ΠΏΠΎΠ»Π½ΠΎΠΌΠΎΡ‡ΠΈΠΉ

Ѐайловая систСма

ΠΠ°Ρ€ΡƒΡˆΠ΅Π½ΠΈΠ΅ цСлостности

ΠŸΠ΅Ρ€Π΅Ρ…Π²Π°Ρ‚ ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΈ

Π‘Π»ΠΎΠΊΠΈΡ€ΠΎΠ²ΠΊΠ°/ ИзмСнСниС ΠΏΡ€Π°Π²

Π—Π°Ρ…Π²Π°Ρ‚ рСсурса

ΠΠ΅Ρ„Π°Ρ‚Π°Π»ΡŒΠ½Ρ‹Π΅ ΠΏΠΎΠΌΠ΅Ρ…ΠΈ

Π—Π°Ρ…Π²Π°Ρ‚ ΠΏΠΎΠ»Π½ΠΎΠΌΠΎΡ‡ΠΈΠΉ

ΠšΠΎΠ½Ρ„ΠΈΠ΄Π΅Π½Ρ†ΠΈΠ°Π»ΡŒΠ½Π°Ρ информация

Π¦Π΅Π½Ρ‚Ρ€Π°Π»ΡŒΠ½Ρ‹ΠΉ

процСссор

Устройства Π²Ρ‹Π²ΠΎΠ΄Π°

Устройства Π²Π²ΠΎΠ΄Π°

ОБ, состояниС ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌ

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

Говоря ΠΊΠΎΠ½ΠΊΡ€Π΅Ρ‚Π½ΠΎ, схСма Π·Π°Ρ‰ΠΈΡ‚Ρ‹ языка Java рассматриваСт ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠ΅ уязвимыС ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Ρ‹:

Β· ΠŸΠ°ΠΌΡΡ‚ΡŒ;

Β· ОБ/состояниС ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌ;

Β· Ѐайловая систСма ΠΊΠ»ΠΈΠ΅Π½Ρ‚Π°;

Β· ΠŸΡ€ΠΈ этом ΡƒΡ‡ΠΈΡ‚Ρ‹Π²Π°ΡŽΡ‚ΡΡ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠ΅ Ρ‚ΠΈΠΏΡ‹ Π²ΠΌΠ΅ΡˆΠ°Ρ‚Π΅Π»ΡŒΡΡ‚Π², пСрСчислСнныС Π² Ρ‚Π°Π±Π». 1.1;

Β· ΠΠ°Ρ€ΡƒΡˆΠ΅Π½ΠΈΠ΅ цСлостности ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌ Π² клиСнтской машинС. ΠžΠ±Ρ‹Ρ‡Π½ΠΎ вызываСтся вирусами, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Π·Π°ΠΏΠΈΡΡ‹Π²Π°ΡŽΡ‚ сСбя Π² ΠΏΠ°ΠΌΡΡ‚ΡŒ ΠΈ Ρ€Π°Π·Ρ€ΡƒΡˆΠ°ΡŽΡ‚ ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½Π½Ρ‹Π΅ Ρ„Π°ΠΉΠ»Ρ‹ ΠΏΡ€ΠΈ Π²ΠΎΠ·Π½ΠΈΠΊΠ½ΠΎΠ²Π΅Π½ΠΈΠΈ Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ³ΠΎ события ΠΈΠ»ΠΈ ΠΏΠΎ достиТСнии Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΉ Π΄Π°Ρ‚Ρ‹;

Β· Π‘Π»ΠΎΠΊΠΈΡ€ΠΎΠ²ΠΊΠ°/ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠ΅ ΠΏΡ€Π°Π² пользования рСсурсами клиСнтской ΠΌΠ°ΡˆΠΈΠ½Ρ‹. ΠžΠ±Ρ‹Ρ‡Π½ΠΎ вызываСтся вирусами;

Β· ΠŸΠ΅Ρ€Π΅Ρ…Π²Π°Ρ‚ ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΈ Π² клиСнтской машинС. К ΠΏΡ€ΠΈΠΌΠ΅Ρ€Ρƒ, Π»Π΅Π³ΠΊΠΎ выполняСтся ΠΏΡ€ΠΈ ΠΏΠΎΠΌΠΎΡ‰ΠΈ ΠΊΠΎΠΌΠ°Π½Π΄Ρ‹ UNIX SENDMAIL;

Β· Π—Π°Ρ…Π²Π°Ρ‚ ΠΏΠΎΠ»Π½ΠΎΠΌΠΎΡ‡ΠΈΠΉ клиСнтской ΠΌΠ°ΡˆΠΈΠ½Ρ‹. ДостигаСтся ΠΏΠΎΠ΄ΠΌΠ΅Π½ΠΎΠΉ IP- адрСсов. Π­Ρ‚ΠΎΡ‚ Ρ‚ΠΈΠΏ ΠΊΠΎΠΌΠΏΡŒΡŽΡ‚Π΅Ρ€Π½ΠΎΠΉ Π°Ρ‚Π°ΠΊΠΈ Π±Ρ‹Π» ΠΏΡ€ΠΈΠ΄ΡƒΠΌΠ°Π½ КСвином ΠœΠΈΡ‚Π½ΠΈ- ΠΊΠΎΠΌ (Kevin Mitnick), ΠΊΠΎΠ³Π΄Π° Ρ‚ΠΎΡ‚ "Π²Π·Π»ΠΎΠΌΠ°Π»" ΠΎΠ΄ΠΈΠ½ ΠΈΠ· Π»ΠΈΡ‡Π½Ρ‹Ρ… ΠΊΠΎΠΌΠΏΡŒΡŽΡ‚Π΅Ρ€ΠΎΠ² экспСрта ΠΏΠΎ систСмам Π·Π°Ρ‰ΠΈΡ‚Ρ‹ Π‘ΡƒΡ‚ΡƒΠΌΠΎ Π¨ΠΈΠΌΡƒΡ€Π° (Tsutumo Shimura). Π’Π΅ΡΡŒ этот ΠΈΠ½Ρ†ΠΈΠ΄Π΅Π½Ρ‚ ΠΏΠΎΠ΄Ρ€ΠΎΠ±Π½ΠΎ описан Π² бСстсСллСрС "Π Π°Π·Π±ΠΎΡ€ΠΊΠΈ", написанной для "New York Times" Π‘ΡƒΡ‚ΡƒΠΌΠΎ Π¨ΠΈΠΌΡƒΡ€ΠΎΠΉ.

ΠŸΠ΅Ρ€Π²Ρ‹ΠΉ ΡƒΡ€ΠΎΠ²Π΅Π½ΡŒ бСзопасности Π² Java -- это Π°Ρ€Ρ…ΠΈΡ‚Π΅ΠΊΡ‚ΡƒΡ€Π° самого языка, синтаксичСскиС ΠΈ сСмантичСскиС конструкции языка. Π”Π°Π»Π΅Π΅ структура языка Java рассматриваСтся с Ρ‚ΠΎΡ‡ΠΊΠΈ зрСния бСзопасности.

Java -- ΠΏΠΎΠ»Π½ΠΎΡ†Π΅Π½Π½Ρ‹ΠΉ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π½ΠΎ-ΠΎΡ€ΠΈΠ΅Π½Ρ‚ΠΈΡ€ΠΎΠ²Π°Π½Π½Ρ‹ΠΉ язык; каТдая ΠΎΡ‚Π΄Π΅Π»ΡŒΠ½Π°Ρ структура Π΄Π°Π½Π½Ρ‹Ρ… (ΠΈ, ΡΠ»Π΅Π΄ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎ, производная ΠΎΡ‚ Π½Π΅Π΅) прСдставляСт собой настоящий ΠΏΠΎΠ»Π½ΠΎΡ„ΡƒΠ½ΠΊΡ†ΠΈΠΎΠ½Π°Π»ΡŒΠ½Ρ‹ΠΉ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚. Π’ΠΎ, Ρ‡Ρ‚ΠΎ каТдая примитивная структура Π΄Π°Π½Π½Ρ‹Ρ… ΠΎΡ„ΠΎΡ€ΠΌΠ»Π΅Π½Π° ΠΊΠ°ΠΊ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚, Π³Π°Ρ€Π°Π½Ρ‚ΠΈΡ€ΡƒΠ΅Ρ‚ Π½Π°Π»ΠΈΡ‡ΠΈΠ΅ всСх тСорСтичСских прСимущСств Π·Π°Ρ‰ΠΈΡ‚Ρ‹ ООП-языков Π² ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ°Ρ…, написанных Π½Π° Java, Π²ΠΊΠ»ΡŽΡ‡Π°Ρ ΠΈΡ… синтаксис ΠΈ сСмантику:

Β· Π˜Π½ΠΊΠ°ΠΏΡΡƒΠ»ΡΡ†ΠΈΡ ΠΈ сокрытиС Π΄Π°Π½Π½Ρ‹Ρ… Π² private-ΠΎΠ±ΡŠΡΠ²Π»Π΅Π½ΠΈΡΡ…;

Β· УправляСмый доступ ΠΊ структурам Π΄Π°Π½Π½Ρ‹Ρ…, ΠΏΡ€ΠΈ ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΌ; ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽΡ‚ΡΡ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ public-ΠΌΠ΅Ρ‚ΠΎΠ΄Ρ‹;

Β· ΠΠ°Ρ€Π°Ρ‰ΠΈΠ²Π°Π΅ΠΌΠΎΡΡ‚ΡŒ ΠΈ иСрархичСскоС построСниС слоТной структуры ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹;

Β· ΠžΡ‚ΡΡƒΡ‚ΡΡ‚Π²ΠΈΠ΅ ΠΏΠ΅Ρ€Π΅Π³Ρ€ΡƒΠ·ΠΊΠΈ ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΉ.

ΠšΠ»Π°ΡΡΡ‹ ΠΈ ΠΌΠ΅Ρ‚ΠΎΠ΄Ρ‹ ΠΌΠΎΠΆΠ½ΠΎ ΠΎΠ±ΡŠΡΠ²Π»ΡΡ‚ΡŒ ΠΊΠ°ΠΊ final, запрСщая Ρ‚Π΅ΠΌ самым созданиС подклассов ΠΈ ΠΏΠ΅Ρ€Π΅ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½ΠΈΠ΅ ΠΌΠ΅Ρ‚ΠΎΠ΄ΠΎΠ². Π’Π°ΠΊΠΎΠ΅ объявлСниС прСпятствуСт Π·Π»ΠΎΠ½Π°ΠΌΠ΅Ρ€Π΅Π½Π½ΠΎΠΌΡƒ измСнСнию ΠΏΡ€ΠΎΠ²Π΅Ρ€Π΅Π½Π½ΠΎΠ³ΠΎ ΠΊΠΎΠ΄Π°.

Π’ цСлях бСзопасности прСобразования Ρ‚ΠΈΠΏΠΎΠ² (typecasting) ΠΏΡ€ΠΎΠ²Π΅Ρ€ΡΡŽΡ‚ΡΡ ΠΊΠ°ΠΊ статичСски, Ρ‚Π°ΠΊ ΠΈ динамичСски; это Π³Π°Ρ€Π°Π½Ρ‚ΠΈΡ€ΡƒΠ΅Ρ‚ Ρ‚ΠΎ, Ρ‡Ρ‚ΠΎ ΠΎΠ±ΡŠΡΠ²Π»Π΅Π½Π½Ρ‹ΠΉ Π½Π° этапС компиляции Ρ‚ΠΈΠΏ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π° Π±ΡƒΠ΄Π΅Ρ‚ Ρ‚ΠΎΡ‡Π½ΠΎ ΡΠΎΠΎΡ‚Π²Π΅Ρ‚ΡΡ‚Π²ΠΎΠ²Π°Ρ‚ΡŒ Ρ‚ΠΈΠΏΡƒ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π° Π²ΠΎ врСмя выполнСния, Π΄Π°ΠΆΠ΅ Ссли ΠΏΠΎ ΠΎΡ‚Π½ΠΎΡˆΠ΅Π½ΠΈΡŽ ΠΊ этому ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Ρƒ Π²Ρ‹ΠΏΠΎΠ»Π½ΡΠ»ΠΈΡΡŒ ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΈ прСобразования Ρ‚ΠΈΠΏΠΎΠ². ΠšΠΎΠ½Ρ‚Ρ€ΠΎΠ»ΡŒ Π·Π° ΠΏΡ€Π΅ΠΎΠ±Ρ€Π°Π·ΠΎΠ²Π°Π½ΠΈΠ΅ΠΌ Ρ‚ΠΈΠΏΠΎΠ² прСпятствуСт ΠΏΡ€Π΅Π΄Π½Π°ΠΌΠ΅Ρ€Π΅Π½Π½ΠΎΠΉ ΠΏΠΎΠ΄ΠΌΠ΅Π½Π΅ Ρ‚ΠΈΠΏΠΎΠ² Π΄Π°Π½Π½Ρ‹Ρ….

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

Java являСтся ΠΌΠ½ΠΎΠ³ΠΎΠΏΠΎΡ‚ΠΎΠΊΠΎΠ²Ρ‹ΠΌ языком ΠΈ обСспСчиваСт Π·Π°Ρ‰ΠΈΡ‰Π΅Π½Π½Ρ‹ΠΉ ΠΏΠΎΡ‚ΠΎΠΊΠΎΠ²Ρ‹ΠΉ доступ ΠΊ структурам Π΄Π°Π½Π½Ρ‹Ρ… ΠΈ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π°ΠΌ. Π’ Π³Π»Π°Π²Π΅ 14 ΠΏΠΎΡ‚ΠΎΠΊΠΈ Java Ρ€Π°ΡΡΠΌΠ°Ρ‚Ρ€ΠΈΠ²Π°ΡŽΡ‚ΡΡ ΠΏΠΎΠ΄Ρ€ΠΎΠ±Π½ΠΎ, приводятся ΠΏΡ€ΠΈΠΌΠ΅Ρ€Ρ‹ ΠΏΡ€ΠΈΠΊΠ»Π°Π΄Π½Ρ‹Ρ… ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌ.

Π‘ ΠΊΠ°ΠΆΠ΄Ρ‹ΠΌ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ΠΎΠΌ Π² языкС Java связан ΡƒΠ½ΠΈΠΊΠ°Π»ΡŒΠ½Ρ‹ΠΉ Ρ…ΡΡˆ-ΠΊΠΎΠ΄ (hashcode). Π­Ρ‚ΠΎ ΠΎΠ·Π½Π°Ρ‡Π°Π΅Ρ‚, Ρ‡Ρ‚ΠΎ Π² любой ΠΌΠΎΠΌΠ΅Π½Ρ‚ Π²ΠΎΠ·ΠΌΠΎΠΆΠ΅Π½ ΠΌΠΎΠ½ΠΈΡ‚ΠΎΡ€ΠΈΠ½Π³ состояния Java- ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹.

Π’ΠΎ врСмя компиляции Π°Π½Π°Π»ΠΈΠ·ΠΈΡ€ΡƒΡŽΡ‚ΡΡ всС ΠΌΠ΅Ρ…Π°Π½ΠΈΠ·ΠΌΡ‹ Π·Π°Ρ‰ΠΈΡ‚Ρ‹, ΡΡƒΡ‰Π΅ΡΡ‚Π²ΡƒΡŽΡ‰ΠΈΠ΅ Π² синтаксисС языка Java, Π²ΠΊΠ»ΡŽΡ‡Π°Ρ ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΊΡƒ согласованности объявлСний private ΠΈ public, ΠΏΡ€Π°Π²ΠΈΠ»ΡŒΠ½ΠΎΡΡ‚ΠΈ Ρ‚ΠΈΠΏΠΎΠ² ΠΈ ΠΈΠ½ΠΈΡ†ΠΈΠ°Π»ΠΈΠ·Π°Ρ†ΠΈΠΈ всСх ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Ρ… Π² соотвСтствии с ΠΏΡ€Π΅Π΄ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½Π½Ρ‹ΠΌΠΈ значСниями.

Π˜ΡΡ…ΠΎΠ΄Π½Ρ‹Π΅ классы Java ΠΊΠΎΠΌΠΏΠΈΠ»ΠΈΡ€ΡƒΡŽΡ‚ΡΡ Π² Π±Π°ΠΉΡ‚-ΠΊΠΎΠ΄Ρ‹. Π’Π΅Ρ€ΠΈΡ„ΠΈΠΊΠ°Ρ‚ΠΎΡ€ Π±Π°ΠΉΡ‚- ΠΊΠΎΠ΄ΠΎΠ² выполняСт мноТСство ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΎΠΊ согласованности ΠΈ бСзопасности ΠΊΠΎΠΌΠΏΠΈΠ»ΠΈΡ€ΠΎΠ²Π°Π½Π½ΠΎΠ³ΠΎ ΠΊΠΎΠ΄Π°. ΠŸΡ€ΠΈ Π²Π΅Ρ€ΠΈΡ„ΠΈΠΊΠ°Ρ†ΠΈΠΈ Π±Π°ΠΉΡ‚-ΠΊΠΎΠ΄ΠΎΠ² Π²Ρ‹ΠΏΠΎΠ»Π½ΡΡŽΡ‚ΡΡ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠ΅ ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΈ:

Β· ΠŸΡ€ΠΎΠ²Π΅Ρ€ΠΊΠ° пСрСполнСния стСка ΠΈ ΠΏΠΎΡ‚Π΅Ρ€ΠΈ значимости указатСля стСка;

Β· Анализ доступа ΠΊ рСгистрам;

Β· ΠŸΡ€ΠΎΠ²Π΅Ρ€ΠΊΠ° ΠΏΡ€Π°Π²ΠΈΠ»ΡŒΠ½ΠΎΡΡ‚ΠΈ ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€ΠΎΠ² Π±Π°ΠΉΡ‚-ΠΊΠΎΠ΄ΠΎΠ²;

Β· Анализ ΠΏΠΎΡ‚ΠΎΠΊΠΎΠ² Π±Π°ΠΉΡ‚-ΠΊΠΎΠ΄ΠΎΠ², создаваСмых ΠΌΠ΅Ρ‚ΠΎΠ΄Π°ΠΌΠΈ, Ρ‡Ρ‚ΠΎ обСспСчиваСт Ρ†Π΅Π»ΠΎΡΡ‚Π½ΠΎΡΡ‚ΡŒ стСка ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΊΠ° ΠΏΠΎΠ»ΡƒΡ‡Π°Π΅ΠΌΡ‹Ρ… ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ΠΎΠ² ΠΈ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ΠΎΠ², Π²ΠΎΠ·Π²Ρ€Π°Ρ‰Π°Π΅ΠΌΡ‹Ρ… ΠΌΠ΅Ρ‚ΠΎΠ΄Π°ΠΌΠΈ.

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

ПозднСС связываниС Π³Π°Ρ€Π°Π½Ρ‚ΠΈΡ€ΡƒΠ΅Ρ‚, Ρ‡Ρ‚ΠΎ Ρ‚ΠΎΡ‡Π½ΠΎΠ΅ мСстополоТСниС рСсурсов Π½Π° этапС выполнСния происходит Π² самый послСдний ΠΌΠΎΠΌΠ΅Π½Ρ‚. ПозднСС связываниС прСдставляСт ΡΠ΅Ρ€ΡŒΠ΅Π·Π½ΠΎΠ΅ прСпятствиС Π½Π° ΠΏΡƒΡ‚ΠΈ Π²Π½Π΅ΡˆΠ½ΠΈΡ… Π°Ρ‚Π°ΠΊ благодаря ΡΠΏΠ΅Ρ†ΠΈΠ°Π»ΡŒΠ½Ρ‹ΠΌ соглашСниям, ΠΊΠ°ΡΠ°ΡŽΡ‰ΠΈΠΌΡΡ выдСлСния памяти для этих рСсурсов.

По ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ ΠΌΠ΅Ρ…Π°Π½ΠΈΠ·ΠΌ ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΈΠ²Π½ΠΎΠΉ Π·Π°Π³Ρ€ΡƒΠ·ΠΊΠΈ Java-ioiaccoB слуТит для Π²Ρ‹Π±ΠΎΡ€ΠΊΠΈ ΡƒΠΊΠ°Π·Π°Π½Π½ΠΎΠ³ΠΎ класса ΠΈΠ· Ρ„Π°ΠΉΠ»Π°, располоТСнного Π² локальной хост-машинС.

Π›ΡŽΠ±Ρ‹Π΅ Π΄Ρ€ΡƒΠ³ΠΈΠ΅ способы Π·Π°Π³Ρ€ΡƒΠ·ΠΊΠΈ классов, Π²ΠΊΠ»ΡŽΡ‡Π°Ρ ΠΏΠ΅Ρ€Π΅Π΄Π°Ρ‡Ρƒ ΠΏΠΎ сСти, Ρ‚Ρ€Π΅Π±ΡƒΡŽΡ‚ наличия ΡΠΎΠΎΡ‚Π²Π΅Ρ‚ΡΡ‚Π²ΡƒΡŽΡ‰Π΅Π³ΠΎ класса ClassLoader. ClassLoader -- это подкласс стандартного класса Java ClassLoader, ΠΈΠΌΠ΅ΡŽΡ‰Π΅Π³ΠΎ ΠΌΠ΅Ρ‚ΠΎΠ΄Ρ‹, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Ρ€Π΅Π°Π»ΠΈΠ·ΡƒΡŽΡ‚ всС ΠΌΠ΅Ρ…Π°Π½ΠΈΠ·ΠΌΡ‹ ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΊΠΈ согласованности ΠΈ Π·Π°Ρ‰ΠΈΡ‚Ρ‹ ΠΈ Π·Π°ΠΏΡƒΡΠΊΠ°ΡŽΡ‚ΡΡ для ΠΊΠ°ΠΆΠ΄ΠΎΠ³ΠΎ вновь Π·Π°Π³Ρ€ΡƒΠΆΠ°Π΅ΠΌΠΎΠ³ΠΎ класса.

Из сообраТСний бСзопасности класс ClassLoader Π½Π΅ ΠΌΠΎΠΆΠ΅Ρ‚ Π²Ρ‹ΠΏΠΎΠ»Π½ΡΡ‚ΡŒ Π½ΠΈΠΊΠ°ΠΊΠΈΡ… ΠΎΠΏΠ΅Ρ€Π΅ΠΆΠ°ΡŽΡ‰ΠΈΡ… дСйствий Π² ΠΎΡ‚Π½ΠΎΡˆΠ΅Π½ΠΈΠΈ Π±Π°ΠΉΡ‚-ΠΊΠΎΠ΄ΠΎΠ². Π‘Π°ΠΉΡ‚-ΠΊΠΎΠ΄Ρ‹ ΠΌΠΎΠ³ΡƒΡ‚ Π±Ρ‹Ρ‚ΡŒ ΠΏΠΎΠ»ΡƒΡ‡Π΅Π½Ρ‹ ΠΈΠ· Java-ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹, транслируСмой Java-компилятором ΠΈΠ»ΠΈ компилятором Π‘++, ΠΌΠΎΠ΄ΠΈΡ„ΠΈΡ†ΠΈΡ€ΠΎΠ²Π°Π½Π½Ρ‹ΠΌ для создания Π±Π°ΠΉΡ‚-ΠΊΠΎΠ΄ΠΎΠ². Π­Ρ‚ΠΎ ΠΎΠ·Π½Π°Ρ‡Π°Π΅Ρ‚, Ρ‡Ρ‚ΠΎ ClassLoader запускаСтся Ρ‚ΠΎΠ»ΡŒΠΊΠΎ послС ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΊΠΈ ΠΏΠΎΡΡ‚ΡƒΠΏΠΈΠ²ΡˆΠ΅Π³ΠΎ Π±Π°ΠΉΡ‚-ΠΊΠΎΠ΄Π°; этот класс ΠΎΡ‚Π²Π΅Ρ‡Π°Π΅Ρ‚ Π·Π° созданиС пространства ΠΈΠΌΠ΅Π½ для Π·Π°Π³Ρ€ΡƒΠΆΠ΅Π½Π½ΠΎΠ³ΠΎ ΠΊΠΎΠ΄Π° ΠΈ Ρ€Π°Π·Ρ€Π΅ΡˆΠ΅Π½ΠΈΠ΅ ссылок Π½Π° ΠΈΠΌΠ΅Π½Π° классов, адрСсованных Π² ΠΏΠΎΠ»ΡƒΡ‡Π΅Π½Π½ΠΎΠΌ ΠΊΠΎΠ΄Π΅. ΠŸΡ€ΠΈ этом для ΠΊΠ°ΠΆΠ΄ΠΎΠ³ΠΎ ΠΏΠ°ΠΊΠ΅Ρ‚Π° ΡΠΎΠ·Π΄Π°ΡŽΡ‚ΡΡ ΠΎΡ‚Π΄Π΅Π»ΡŒΠ½Ρ‹Π΅ пространства ΠΈΠΌΠ΅Π½.

Π’ языках Π‘ ΠΈ Π‘++ программист явным ΠΎΠ±Ρ€Π°Π·ΠΎΠΌ распрСдСляСт ΠΏΠ°ΠΌΡΡ‚ΡŒ, освобоТдаСт Π΅Π΅ ΠΈ слСдит Π·Π° всСми указатСлями Π½Π° Π²Ρ‹Π΄Π΅Π»Π΅Π½Π½ΡƒΡŽ ΠΏΠ°ΠΌΡΡ‚ΡŒ. Π—Π°Ρ‡Π°ΡΡ‚ΡƒΡŽ это услоТняСт сопровоТдСниС ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌ ΠΈ являСтся Π³Π»Π°Π²Π½Ρ‹ΠΌ источником ошибок, приводящих ΠΊ появлСнию "висячих ссылок", Π²Ρ‹Π·Π²Π°Π½Π½Ρ‹Ρ… использованиСм null-ΡƒΠΊΠ°Π·Π°Ρ‚Π΅Π»Π΅ΠΉ ΠΈ Π½Π΅ΠΏΡ€Π°Π²ΠΈΠ»ΡŒΠ½Ρ‹ΠΌΠΈ опСрациями выдСлСния ΠΈ освобоТдСния памяти.

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

Класс SecurityManager являСтся Π±Π°Π·ΠΎΠ²Ρ‹ΠΌ, Ρ€Π°ΡΡˆΠΈΡ€ΡΠ΅ΠΌΡ‹ΠΌ срСдством для построСния систСм бСзопасности ΠΈ обСспСчСния ΠΌΠ΅Ρ…Π°Π½ΠΈΠ·ΠΌΠΎΠ² Π·Π°Ρ‰ΠΈΡ‚Ρ‹ для Π΄Ρ€ΡƒΠ³ΠΈΡ… ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚ΠΎΠ² языка Java, Π²ΠΊΠ»ΡŽΡ‡Π°Ρ Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠΈ классов ΠΈ внСшниС срСды (Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, Java-совмСстимыС Π±Ρ€Π°ΡƒΠ·Π΅Ρ€Ρ‹ ΠΈ машинно-зависимыС ΠΌΠ΅Ρ‚ΠΎΠ΄Ρ‹). Π‘Π°ΠΌ класс SecurityManager Π½Π΅ ΠΏΡ€Π΅Π΄Π½Π°Π·Π½Π°Ρ‡Π΅Π½ для нСпосрСдствСнного использования (ΠΏΠΎ ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ каТдая ΠΈΠ· ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΎΠΊ Π²Ρ‹Π·Ρ‹Π²Π°Π΅Ρ‚ Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€ΡƒΡŽ ΠΈΡΠΊΠ»ΡŽΡ‡ΠΈΡ‚Π΅Π»ΡŒΠ½ΡƒΡŽ ΡΠΈΡ‚ΡƒΠ°Ρ†ΠΈΡŽ ΠΏΠΎ Π·Π°Ρ‰ΠΈΡ‚Π΅); это Π±Π°Π·ΠΎΠ²Ρ‹ΠΉ класс для создания подклассов, Ρ€Π΅Π°Π»ΠΈΠ·ΡƒΡŽΡ‰ΠΈΡ… Π·Π°Π΄Π°Π½Π½Ρ‹ΠΉ Π½Π°Π±ΠΎΡ€ ΠΌΠ΅Ρ‚ΠΎΠ΄ΠΎΠ² Π·Π°Ρ‰ΠΈΡ‚Ρ‹.

Помимо Π΄Ρ€ΡƒΠ³ΠΈΡ… особСнностСй Π² классС SecurityManager ΠΈΠΌΠ΅ΡŽΡ‚ΡΡ ΠΌΠ΅Ρ‚ΠΎΠ΄Ρ‹ для распознавания процСссов ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΊΠΈ бСзопасности, Π° Ρ‚Π°ΠΊΠΆΠ΅ ΠΌΠ΅Ρ‚ΠΎΠ΄Ρ‹ для выполнСния ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΡ… ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΎΠΊ:

Β· Π—Π°Ρ‰ΠΈΡ‚Π° ΠΎΡ‚ инсталляции Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΠ³ΠΎ Π·Π°Π³Ρ€ΡƒΠ·Ρ‡ΠΈΠΊΠΎΠ² классов ClassLoader;

Β· Π’ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚ΡŒ ΠΊΠΎΠΌΠΏΠΎΠ½ΠΎΠ²ΠΊΠΈ динамичСских Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊ (ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ для машинно-зависимого ΠΊΠΎΠ΄Π°);

Β· Π§Ρ‚Π΅Π½ΠΈΠ΅ ΠΈΠ· Ρ„Π°ΠΉΠ»Π° классов Π° Π—Π°ΠΏΠΈΡΡŒ Π² Ρ„Π°ΠΉΠ» классов;

Β· Π‘ΠΎΠ·Π΄Π°Π½ΠΈΠ΅ сСтСвого соСдинСния;

Β· Π’ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚ΡŒ соСдинСния с Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΌ сСтСвым ΠΏΠΎΡ€Ρ‚ΠΎΠΌ;

Β· Π Π°Π·Ρ€Π΅ΡˆΠ΅Π½ΠΈΠ΅ входящСго сСтСвого соСдинСния;

Β· Π”ΠΎΡΡ‚ΡƒΠΏΠ½ΠΎΡΡ‚ΡŒ Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ³ΠΎ ΠΏΠ°ΠΊΠ΅Ρ‚Π°;

Β· Π”ΠΎΠ±Π°Π²Π»Π΅Π½ΠΈΠ΅ Π² ΠΏΠ°ΠΊΠ΅Ρ‚ Π½ΠΎΠ²ΠΎΠ³ΠΎ класса.

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

На Π°ΠΏΠΏΠ»Π΅Ρ‚Ρ‹, Π·Π°Π³Ρ€ΡƒΠΆΠ°Π΅ΠΌΡ‹Π΅ ΠΏΠΎ сСти, Π½Π°ΠΊΠ»Π°Π΄Ρ‹Π²Π°ΡŽΡ‚ΡΡ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠ΅ ограничСния:

Β· НСльзя ΡΠΎΠ·Π΄Π°Π²Π°Ρ‚ΡŒ, ΠΏΠ΅Ρ€Π΅ΠΈΠΌΠ΅Π½ΠΎΠ²Ρ‹Π²Π°Ρ‚ΡŒ ΠΈΠ»ΠΈ ΠΊΠΎΠΏΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ Ρ„Π°ΠΉΠ»Ρ‹ ΠΈ ΠΊΠ°Ρ‚Π°Π»ΠΎΠ³ΠΈ локальной Ρ„Π°ΠΉΠ»ΠΎΠ²ΠΎΠΉ систСмы;

Β· НСльзя ΡΠΎΠ·Π΄Π°Π²Π°Ρ‚ΡŒ ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ»ΡŒΠ½Ρ‹Π΅ сСтСвыС соСдинСния, Π·Π° ΠΈΡΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠ΅ΠΌ связСй с Ρ‚ΠΎΠΉ хост-машиной, с ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΉ Π°ΠΏΠΏΠ»Π΅Ρ‚Ρ‹ Π±Ρ‹Π»ΠΈ считаны. Имя хост- ΠΌΠ°ΡˆΠΈΠ½Ρ‹ Π΄ΠΎΠ»ΠΆΠ½ΠΎ Π±Ρ‹Ρ‚ΡŒ ΡƒΠΊΠ°Π·Π°Π½ΠΎ Π² URL-адрСсС Ρ‚ΠΎΠΉ HTML-страницы, которая содСрТала Ρ‚Π΅Π³ , ΠΈΠ»ΠΈ Π·Π°Π΄Π°Π²Π°Ρ‚ΡŒΡΡ Π² ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€Π΅ codebase Ρ‚Π΅Π³Π° . Числовой IP-адрСс хост-ΠΌΠ°ΡˆΠΈΠ½Ρ‹ Π½Π΅ допускаСтся.

ΠŸΠ΅Ρ€Π΅Ρ‡ΠΈΡΠ»Π΅Π½Π½Ρ‹Π΅ строгиС ограничСния Π½Π° доступ ΠΊ локальной Ρ„Π°ΠΉΠ»ΠΎΠ²ΠΎΠΉ систСмС ΠΊΠ°ΡΠ°ΡŽΡ‚ΡΡ Π°ΠΏΠΏΠ»Π΅Ρ‚ΠΎΠ², Ρ€Π°Π±ΠΎΡ‚Π°ΡŽΡ‰ΠΈΡ… Π² срСдС Π±Ρ€Π°ΡƒΠ·Π΅Ρ€Π° Netscape Navigator 3.0. Π’ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ΅ Appletviewer ΠΈΠ· ΠΏΠ°ΠΊΠ΅Ρ‚Π° JDK 1.0 ограничСния ΠΌΠ΅Π½Π΅Π΅ строгиС, ΠΈ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒ ΠΌΠΎΠΆΠ΅Ρ‚ ΠΎΠΏΡ€Π΅Π΄Π΅Π»ΡΡ‚ΡŒ явно список Ρ„Π°ΠΉΠ»ΠΎΠ², с ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΌΠΈ ΠΌΠΎΠ³ΡƒΡ‚ Ρ€Π°Π±ΠΎΡ‚Π°Ρ‚ΡŒ Π°ΠΏΠΏΠ»Π΅Ρ‚Ρ‹.

АпплСты ΠΌΠΎΠ³ΡƒΡ‚ ΡΡ‡ΠΈΡ‚Ρ‹Π²Π°Ρ‚ΡŒ Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ свойства систСмы ΠΏΡ€ΠΈ ΠΏΠΎΠΌΠΎΡ‰ΠΈ Π²Ρ‹Π·ΠΎΠ²Π° system.getProperty (string key). АпплСты Π² Netscape 3.0 ΠΈΠΌΠ΅ΡŽΡ‚ Π½Π΅ΠΎΠ³Ρ€Π°Π½ΠΈΡ‡Π΅Π½Π½Ρ‹ΠΉ доступ ΠΊ этим свойствам. Π’ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ΅ JDK 1.0 Appletviewer ΠΎΡ‚ Sun ΠΌΠΎΠΆΠ½ΠΎ ΠΈΠ½Π΄ΠΈΠ²ΠΈΠ΄ΡƒΠ°Π»ΡŒΠ½ΠΎ ΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ доступ ΠΊ ΠΊΠ°ΠΆΠ΄ΠΎΠΌΡƒ свойству. Π’ Ρ‚Π°Π±Π». 1.2 пСрСчислСна информация, возвращаСмая для Ρ€Π°Π·Π»ΠΈΡ‡Π½Ρ‹Ρ… Π·Π½Π°Ρ‡Π΅Π½ΠΈΠΉ ΠΊΠ»ΡŽΡ‡Π° key.

java интСрфСйс ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ°

Π’Π°Π±Π»ΠΈΡ†Π° 1.2 Π”ΠΎΡΡ‚ΡƒΠΏΠ½ΠΎΡΡ‚ΡŒ систСмных ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Ρ…

Π’ Ρ‚Π°Π±Π». 1.3 пСрСчислСны ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€Ρ‹, нСдоступныС для Π°ΠΏΠΏΠ»Π΅Ρ‚ΠΎΠ² Π² срСдС Π±Ρ€Π°ΡƒΠ·Π΅Ρ€Π° Netscape 3.0. ΠŸΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ° JDK 1.0 Appletviewer ΠΈ Π±Ρ€Π°ΡƒΠ·Π΅Ρ€ HotJava ΠΏΠΎΠ·Π²ΠΎΠ»ΡΡŽΡ‚ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŽ ΡƒΠΏΡ€Π°Π²Π»ΡΡ‚ΡŒ доступом ΠΊ Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΌ ΠΈΠ· ΡƒΠΊΠ°Π·Π°Π½Π½Ρ‹Ρ… рСсурсов.

Π’Π°Π±Π»ΠΈΡ†Π° 1.3 БистСмныС ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Π΅, нСдоступныС для Π°ΠΏΠΏΠ»Π΅Ρ‚ΠΎΠ²

Java-систСма Π·Π°Π³Ρ€ΡƒΠΆΠ°Π΅Ρ‚ Π°ΠΏΠΏΠ»Π΅Ρ‚Ρ‹ двумя способами. АпплСт ΠΌΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ ΠΏΠ΅Ρ€Π΅Π΄Π°Π½ ΠΏΠΎ сСти ΠΈΠ»ΠΈ ΠΆΠ΅ Π·Π°Π³Ρ€ΡƒΠΆΠ΅Π½ ΠΈΠ· локальной Ρ„Π°ΠΉΠ»ΠΎΠ²ΠΎΠΉ систСмы. Бпособ Π·Π°Π³Ρ€ΡƒΠ·ΠΊΠΈ Π°ΠΏΠΏΠ»Π΅Ρ‚Π° опрСдСляСт прСдоставляСмыС Π΅ΠΌΡƒ возмоТности.

Π‘ Ρ‚ΠΎΡ‡ΠΊΠΈ зрСния бСзопасности, Π»ΠΎΠΊΠ°Π»ΡŒΠ½Ρ‹ΠΌ Π°ΠΏΠΏΠ»Π΅Ρ‚Π°ΠΌ Ρ€Π°Π·Ρ€Π΅ΡˆΠ°Π΅Ρ‚ΡΡ Π²Ρ‹ΠΏΠΎΠ»Π½ΡΡ‚ΡŒ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠ΅ дСйствия:

Β· Π—Π°Π³Ρ€ΡƒΠΆΠ°Ρ‚ΡŒ Π² клиСнтской машинС Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠΈ;

Β· Π’Ρ‹ΠΏΠΎΠ»Π½ΡΡ‚ΡŒ Π² локальной машинС внСшниС процСссы;

Β· ΠžΡΡ‚Π°Π½Π°Π²Π»ΠΈΠ²Π°Ρ‚ΡŒ Ρ€Π°Π±ΠΎΡ‚Ρƒ Π²ΠΈΡ€Ρ‚ΡƒΠ°Π»ΡŒΠ½ΠΎΠΉ Java-ΠΌΠ°ΡˆΠΈΠ½Ρ‹.

Π―Π·Ρ‹ΠΊ программирования Java ΠΈ ΡΠΎΠΏΡ€ΠΎΠ²ΠΎΠΆΠ΄Π°ΡŽΡ‰Π°Ρ Π΅Π³ΠΎ систСма ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠΈ исполнСния ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌ Π±Ρ‹Π»ΠΈ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Π°Π½Ρ‹ для Ρ‚ΠΎΠ³ΠΎ, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΎΠ΄Π½Π°ΠΆΠ΄Ρ‹ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Π°Π½Π½Ρ‹Π΅ ΠΈ скомпилированныС ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ ΠΏΠΎΡΡ‚Π°Π²Π»ΡΠ»ΠΈΡΡŒ Ρ‡Π΅Ρ€Π΅Π· Π˜Π½Ρ‚Π΅Ρ€Π½Π΅Ρ‚ Π² Π΄Π²ΠΎΠΈΡ‡Π½ΠΎΠΌ Π²ΠΈΠ΄Π΅ ΠΈ Ρ€Π°Π±ΠΎΡ‚Π°Π»ΠΈ Π½Π° любой машинС, ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°ΡŽΡ‰Π΅ΠΉ Java. Π‘Π΅Π·ΠΎΠΏΠ°ΡΠ½ΠΎΡΡ‚ΡŒ стала Ρ‡Π°ΡΡ‚ΡŒΡŽ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ Java с самого Π½Π°Ρ‡Π°Π»Π°. Π’ Π΄Π°Π½Π½ΠΎΠΌ Ρ€Π°Π·Π΄Π΅Π»Π΅ Π±ΡƒΠ΄Π΅Ρ‚ рассмотрСна Ρ€Π°Π±ΠΎΡ‚Π° этой систСмы бСзопасности.

Java являСтся языком, ΠΎΠ±Π΅ΡΠΏΠ΅Ρ‡ΠΈΠ²Π°ΡŽΡ‰ΠΈΠΌ Π±Π΅Π·ΠΎΠΏΠ°ΡΠ½ΠΎΡΡ‚ΡŒ ΠΏΡ€ΠΈ Ρ€Π°Π±ΠΎΡ‚Π΅ с Ρ‚ΠΈΠΏΠ°ΠΌΠΈ. Π­Ρ‚ΠΎ ΠΎΠ·Π½Π°Ρ‡Π°Π΅Ρ‚, Ρ‡Ρ‚ΠΎ компилятор ΠΎΡ‚ΠΊΠ»ΠΎΠ½ΠΈΡ‚ Π»ΡŽΠ±ΡƒΡŽ ΠΏΠΎΠΏΡ‹Ρ‚ΠΊΡƒ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½ΡƒΡŽ Ρ‚Π°ΠΊΠΈΠΌ



мСстим с Π΅Π΅ Ρ‚ΠΈΠΏΠΎΠΌ. Для сравнСния рассмотрим ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠΉ

Он Π³Π΅Π½Π΅Ρ€ΠΈΡ€ΡƒΠ΅Ρ‚ случайноС число ΠΈ сохраняСт Π΅Π³ΠΎ Π² ΡƒΠΊΠ°Π·Π°Ρ‚Π΅Π»Π΅ Ρ€. Π—Π°Ρ‚Π΅ΠΌ ΠΎΠ½ сохраняСт Π½ΡƒΠ»Π΅Π²ΠΎΠΉ Π±Π°ΠΉΡ‚ ΠΏΠΎ адрСсу, содСрТащСмуся Π² Ρ€, пСрСписывая Ρ‚ΠΎ, Ρ‡Ρ‚ΠΎ Π±Ρ‹Π»ΠΎ Ρ‚Π°ΠΌ Π΄ΠΎ этого, - ΠΊΠΎΠ΄ ΠΈΠ»ΠΈ Π΄Π°Π½Π½Ρ‹Π΅. Π’ Java конструкции, Π² ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Ρ… ΠΏΠΎΠ΄ΠΎΠ±Π½Ρ‹ΠΌ ΠΎΠ±Ρ€Π°Π·ΠΎΠΌ ΡΠΌΠ΅ΡˆΠΈΠ²Π°ΡŽΡ‚ΡΡ Ρ‚ΠΈΠΏΡ‹, Π·Π°ΠΏΡ€Π΅Ρ‰Π΅Π½Ρ‹ самой Π³Ρ€Π°ΠΌΠΌΠ°Ρ‚ΠΈΠΊΠΎΠΉ. ΠšΡ€ΠΎΠΌΠ΅ Ρ‚ΠΎΠ³ΠΎ, Π² Java Π½Π΅Ρ‚ ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Ρ…-ΡƒΠΊΠ°Π·Π°Ρ‚Π΅Π»Π΅ΠΉ, привидСния Ρ‚ΠΈΠΏΠΎΠ², распрСдСлСния памяти, управляСмого ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Π΅ΠΌ (Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ malloc ΠΈ free), Π° всС ссылки Π½Π° массивы ΠΏΡ€ΠΎΠ²Π΅Ρ€ΡΡŽΡ‚ΡΡ Π² Ρ…ΠΎΠ΄Π΅ выполнСния.

Java-ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ ΠΊΠΎΠΌΠΏΠΈΠ»ΠΈΡ€ΡƒΡŽΡ‚ΡΡ Π² ΠΏΡ€ΠΎΠΌΠ΅ΠΆΡƒΡ‚ΠΎΡ‡Π½Ρ‹ΠΉ Π΄Π²ΠΎΠΈΡ‡Π½Ρ‹ΠΉ ΠΊΠΎΠ΄, Π½Π°Π·Ρ‹Π²Π°Π΅ΠΌΡ‹ΠΉ Π±Π°ΠΉΡ‚ΠΊΠΎΠ΄ΠΎΠΌ JVM. Π’ JVM Π΅ΡΡ‚ΡŒ ΠΎΠΊΠΎΠ»ΠΎ 100 ΠΊΠΎΠΌΠ°Π½Π΄, Π±ΠΎΠ»ΡŒΡˆΠΈΠ½ΡΡ‚Π²ΠΎ ΠΈΠ· ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Ρ… ΠΏΠΎΠΌΠ΅Ρ‰Π°ΡŽΡ‚ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Ρ‹ ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½Π½ΠΎΠ³ΠΎ Ρ‚ΠΈΠΏΠ° Π² стСк, ΠΈΠ·Π²Π»Π΅ΠΊΠ°ΡŽΡ‚ ΠΈΡ… ΠΈΠ· стСка ΠΈΠ»ΠΈ арифмСтичСски ΠΎΠ±ΡŠΠ΅Π΄ΠΈΠ½ΡΡŽΡ‚ Π΄Π²Π΅ записи Π² стСкС. Π­Ρ‚ΠΈ JVM-ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹, ΠΊΠ°ΠΊ ΠΏΡ€Π°Π²ΠΈΠ»ΠΎ, ΠΈΠ½Ρ‚Π΅Ρ€ΠΏΡ€Π΅Ρ‚ΠΈΡ€ΡƒΡŽΡ‚ΡΡ, хотя Π² Π½Π΅ΠΊΠΎΡ‚ΠΎ
Ρ€Ρ‹Ρ… случаях ΠΎΠ½ΠΈ ΠΌΠΎΠ³ΡƒΡ‚ Π±Ρ‹Ρ‚ΡŒ скомпилированы Π² ΠΌΠ°ΡˆΠΈΠ½Π½Ρ‹ΠΉ язык для Π±ΠΎΠ»Π΅Π΅ быстрого исполнСния. Π’ ΠΌΠΎΠ΄Π΅Π»ΠΈ Java Π°ΠΏΠΏΠ»Π΅Ρ‚Ρ‹, отправляСмыС Ρ‡Π΅Ρ€Π΅Π· Π˜Π½Ρ‚Π΅Ρ€Π½Π΅Ρ‚ для ΡƒΠ΄Π°Π»Π΅Π½Π½ΠΎΠ³ΠΎ исполнСния, ΡΠ²Π»ΡΡŽΡ‚ΡΡ JVM-ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ°ΠΌΠΈ.

ΠŸΡ€ΠΈ поступлСнии Π°ΠΏΠΏΠ»Π΅Ρ‚Π° ΠΎΠ½ попускаСтся Ρ‡Π΅Ρ€Π΅Π· ΠΏΡ€ΠΎΡ†Π΅Π΄ΡƒΡ€Ρƒ ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΊΠΈ Π±Π°ΠΉΡ‚-ΠΊΠΎΠ΄Π° JVM Π½Π° ΠΏΡ€Π΅Π΄ΠΌΠ΅Ρ‚ соотвСтствия ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½Π½Ρ‹ΠΌ ΠΏΡ€Π°Π²ΠΈΠ»Π°ΠΌ. ΠŸΡ€Π°Π²ΠΈΠ»ΡŒΠ½ΠΎ ΠΎΡ‚ΠΊΠΎΠΌΠΏΠΈΠ»ΠΈΡ€ΠΎΠ²Π°Π½Π½Ρ‹ΠΉ Π°ΠΏΠΏΠ»Π΅Ρ‚ Π±ΡƒΠ΄Π΅Ρ‚ ΡΠΎΠΎΡ‚Π²Π΅Ρ‚ΡΡ‚Π²ΠΎΠ²Π°Ρ‚ΡŒ ΠΈΠΌ автоматичСски, Π½ΠΎ Π½ΠΈΡ‡Ρ‚ΠΎ Π½Π΅ ΠΌΠ΅ΡˆΠ°Π΅Ρ‚ Π·Π»ΠΎΡƒΠΌΡ‹ΡˆΠ»Π΅Π½Π½ΠΈΠΊΠ°ΠΌ Π½Π°ΠΏΠΈΡΠ°Ρ‚ΡŒ JVM-Π°ΠΏΠΏΠ»Π΅Ρ‚ Π½Π° языкС ассСмблСра JVM. ΠŸΡ€ΠΎΡ†Π΅Π΄ΡƒΡ€Π° ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΊΠΈ Π²ΠΊΠ»ΡŽΡ‡Π°Π΅Ρ‚ Π² сСбя поиск ΠΎΡ‚Π²Π΅Ρ‚ΠΎΠ² Π½Π° ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠ΅ вопросы:

1. НС пытаСтся Π»ΠΈ Π°ΠΏΠΏΠ»Π΅Ρ‚ ΠΏΠΎΠ΄Π΄Π΅Π»Π°Ρ‚ΡŒ ΡƒΠΊΠ°Π·Π°Ρ‚Π΅Π»ΠΈ?

2. НС Π½Π°Ρ€ΡƒΡˆΠ°Π΅Ρ‚ Π»ΠΈ ΠΎΠ½ ограничСния доступа ΠΊ элСмСнтам Π·Π°ΠΊΡ€Ρ‹Ρ‚Ρ‹Ρ… классов?

3. НС пытаСтся Π»ΠΈ ΠΎΠ½ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½ΡƒΡŽ ΠΎΠ΄Π½ΠΎΠ³ΠΎ Ρ‚ΠΈΠΏΠ° ΠΊΠ°ΠΊ ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½ΡƒΡŽ Π΄Ρ€ΡƒΠ³ΠΎΠ³ΠΎ Ρ‚ΠΈΠΏΠ°?

4. НС Π³Π΅Π½Π΅Ρ€ΠΈΡ€ΡƒΠ΅Ρ‚ Π»ΠΈ ΠΎΠ½ ΠΏΠ΅Ρ€Π΅ΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅ стСка ΠΈΠ»ΠΈ Π²Ρ‹Ρ…ΠΎΠ΄ Π·Π° Π΅Π³ΠΎ Π½ΠΈΠΆΠ½ΠΈΠ΅ Π³Ρ€Π°Π½ΠΈΡ†Ρ‹?

5. НС ΡΠΎΠ²Π΅Ρ€ΡˆΠ°Π΅Ρ‚ Π»ΠΈ ΠΎΠ½ нСдопустимыС прСобразования ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Ρ… ΠΎΠ΄Π½ΠΎΠ³ΠΎ Ρ‚ΠΈΠΏΠ° Π² ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Π΅ Π΄Ρ€ΡƒΠ³ΠΎΠ³ΠΎ Ρ‚ΠΈΠΏΠ°?

Если Π°ΠΏΠΏΠ»Π΅Ρ‚ ΠΏΡ€ΠΎΡ…ΠΎΠ΄ΠΈΡ‚ всС эти тСсты, ΠΎΠ½ ΠΌΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ Π·Π°ΠΏΡƒΡ‰Π΅Π½ Π±Π΅Π· опасСний, Ρ‡Ρ‚ΠΎ ΠΎΠ½ Π±ΡƒΠ΄Π΅Ρ‚ ΠΎΠ±Ρ€Π°Ρ‰Π°Ρ‚ΡŒΡΡ Π½Π΅ ΠΊ своим областям памяти.

Π’Π΅ΠΌ Π½Π΅ ΠΌΠ΅Π½Π΅Π΅ Π°ΠΏΠΏΠ»Π΅Ρ‚Ρ‹ всС ΠΆΠ΅ ΠΌΠΎΠ³ΡƒΡ‚ Π²Ρ‹ΠΏΠΎΠ»Π½ΡΡ‚ΡŒ систСмныС Π²Ρ‹Π·ΠΎΠ²Ρ‹ Π·Π° счСт Π²Ρ‹Π·ΠΎΠ²Π° Java- ΠΌΠ΅Ρ‚ΠΎΠ΄ΠΎΠ² (ΠΏΡ€ΠΎΡ†Π΅Π΄ΡƒΡ€), прСдоставляСмых для этих Ρ†Π΅Π»Π΅ΠΉ. Бпособы, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ использовались для этого Π² Java, всС врСмя ΡΠΎΠ²Π΅Ρ€ΡˆΠ΅Π½ΡΡ‚Π²ΠΎΠ²Π°Π»ΠΈΡΡŒ. Π’ ΠΏΠ΅Ρ€Π²ΠΎΠΉ вСрсии Java, JDK (Java Development Kit - инструмСнтарий Java-Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠ°) 1.0, Π°ΠΏΠΏΠ»Π΅Ρ‚Ρ‹ ΠΏΠΎΠ΄Ρ€Π°Π·Π΄Π΅Π»ΡΠ»ΠΈΡΡŒ Π½Π° Π΄Π²Π° класса: Π½Π°Π΄Π΅ΠΆΠ½Ρ‹Π΅ ΠΈ Π½Π΅Π½Π°Π΄Π΅ΠΆΠ½Ρ‹Π΅. АпплСты, ΠΏΠΎΠ»ΡƒΡ‡Π°Π΅ΠΌΡ‹Π΅ с локального диска, Π±Ρ‹Π»ΠΈ Π½Π°Π΄Π΅ΠΆΠ½Ρ‹ΠΌΠΈ ΠΈ ΠΈΠΌ Ρ€Π°Π·Ρ€Π΅ΡˆΠ°Π»ΠΎΡΡŒ Π²Ρ‹ΠΏΠΎΠ»Π½ΡΡ‚ΡŒ любой Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΡ‹ΠΉ ΠΈΠΌ систСмный Π²Ρ‹Π·ΠΎΠ². Π’ ΠΎΡ‚Π»ΠΈΡ‡ΠΈΠ΅ ΠΎΡ‚ Π½ΠΈΡ… Π°ΠΏΠΏΠ»Π΅Ρ‚Ρ‹, ΠΏΠΎΠ»ΡƒΡ‡Π°Π΅ΠΌΡ‹Π΅ Ρ‡Π΅Ρ€Π΅Π· Π˜Π½Ρ‚Π΅Ρ€Π½Π΅Ρ‚, ΡΡ‡ΠΈΡ‚Π°Π»ΠΈΡΡŒ Π½Π΅Π½Π°Π΄Π΅ΠΆΠ½Ρ‹ΠΌΠΈ. Они Π·Π°ΠΏΡƒΡΠΊΠ°Π»ΠΈΡΡŒ Π² пСсочницС, ΠΊΠ°ΠΊ ΠΏΠΎΠΊΠ°Π·Π°Π½ΠΎ Π½Π° рис. 9.33, ΠΈ ΠΈΠΌ практичСски Π½ΠΈΡ‡Π΅Π³ΠΎ Π½Π΅ Ρ€Π°Π·Ρ€Π΅ΡˆΠ°Π»ΠΎΡΡŒ Π΄Π΅Π»Π°Ρ‚ΡŒ.

ΠΠ°Π±Ρ€Π°Π²ΡˆΠΈΡΡŒ ΠΎΠΏΡ‹Ρ‚Π° использования этой ΠΌΠΎΠ΄Π΅Π»ΠΈ, компания Sun Ρ€Π΅ΡˆΠΈΠ»Π°, Ρ‡Ρ‚ΠΎ ΠΎΠ½Π° ΠΈΠΌΠ΅Π΅Ρ‚ слишком ΠΎΠ³Ρ€Π°Π½ΠΈΡ‡ΠΈΠ²Π°ΡŽΡ‰ΠΈΠΉ Ρ…Π°Ρ€Π°ΠΊΡ‚Π΅Ρ€. Π’ JDK 1.1 Π±Ρ‹Π»Π° задСйствована цифровая подпись ΠΊΠΎΠ΄Π°. Когда Π°ΠΏΠΏΠ»Π΅Ρ‚ поступал ΠΈΠ· Π˜Π½Ρ‚Π΅Ρ€Π½Π΅Ρ‚Π°, ΠΏΡ€ΠΎΠ²ΠΎΠ΄ΠΈΠ»Π°ΡΡŒ ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΊΠ°, Π±Ρ‹Π» ΠΎΠ½ подписан Ρ‡Π΅Π»ΠΎΠ²Π΅ΠΊΠΎΠΌ ΠΈΠ»ΠΈ ΠΎΡ€Π³Π°Π½ΠΈΠ·Π°Ρ†ΠΈΠ΅ΠΉ, ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΉ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒ довСряСт (Ρ‡Ρ‚ΠΎ ΠΎΠΏΡ€Π΅Π΄Π΅Π»ΡΠ»ΠΎΡΡŒ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΡΠΊΠΈΠΌ списком Π΄ΠΎΠ²Π΅Ρ€Π΅Π½Π½Ρ‹Ρ… Π²Π»Π°Π΄Π΅Π»ΡŒΡ†Π΅Π² Ρ†ΠΈΡ„Ρ€ΠΎΠ²Ρ‹Ρ… подписСй). Если подписи ΠΌΠΎΠΆΠ½ΠΎ Π±Ρ‹Π»ΠΎ Π΄ΠΎΠ²Π΅Ρ€ΡΡ‚ΡŒ, Π°ΠΏΠΏΠ»Π΅Ρ‚ ΠΌΠΎΠ³ Π΄Π΅Π»Π°Ρ‚ΡŒ всС Ρ‡Ρ‚ΠΎ ΡƒΠ³ΠΎΠ΄Π½ΠΎ, Ссли Π½Π΅Ρ‚, - ΠΎΠ½ запускался Π² пСсочницС со строгими ограничСниями.

ПослС приобрСтСния Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΠ³ΠΎ ΠΎΠΏΡ‹Ρ‚Π° эта систСма Ρ‚Π°ΠΊΠΆΠ΅ Π±Ρ‹Π»Π° ΠΏΡ€ΠΈΠ·Π½Π°Π½Π° Π½Π΅ΡƒΠ΄ΠΎΠ²Π»Π΅Ρ‚Π²ΠΎΡ€ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΠΉ, поэтому модСль бСзопасности ΠΎΠΏΡΡ‚ΡŒ ΠΏΡ€Π΅Ρ‚Π΅Ρ€ΠΏΠ΅Π»Π° измСнСния. Π’ JDK 1.2 Π±Ρ‹Π»Π° прСдставлСна конфигурируСмая, Ρ‚ΠΎΠ½ΠΊΠΎ настраиваСмая ΠΏΠΎΠ»ΠΈΡ‚ΠΈΠΊΠ° бСзопасности, примСняСмая ΠΊΠΎ всСм Π°ΠΏΠΏΠ»Π΅Ρ‚Π°ΠΌ, ΠΊΠ°ΠΊ Π»ΠΎΠΊΠ°Π»ΡŒΠ½Ρ‹ΠΌ, Ρ‚Π°ΠΊ ΠΈ ΡƒΠ΄Π°Π»Π΅Π½Π½Ρ‹ΠΌ. Π­Ρ‚Π° модСль бСзопасности Π½Π°ΡΡ‚ΠΎΠ»ΡŒΠΊΠΎ слоТна, Ρ‡Ρ‚ΠΎ Π΅Π΅ описанию слСдуСт ΠΏΠΎΡΠ²ΡΡ‚ΠΈΡ‚ΡŒ ΠΎΡ‚Π΄Π΅Π»ΡŒΠ½ΡƒΡŽ ΠΊΠ½ΠΈΠ³Ρƒ (Gong, 1999), поэтому ΠΌΡ‹ Π΄Π°Π΄ΠΈΠΌ лишь ΠΊΡ€Π°Ρ‚ΠΊΡƒΡŽ ΠΎΠ±ΠΎΠ±Ρ‰Π΅Π½Π½ΡƒΡŽ ΠΊΠ°Ρ€Ρ‚ΠΈΠ½Ρƒ Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Ρ… Π΅Π΅ основных особСнностСй. ΠšΠ°ΠΆΠ΄Ρ‹ΠΉ Π°ΠΏΠΏΠ»Π΅Ρ‚ характСризуСтся двумя Π²Π΅Ρ‰Π°ΠΌΠΈ: Ρ‚Π΅ΠΌ, ΠΎΡ‚ΠΊΡƒΠ΄Π° ΠΎΠ½ ΠΏΡ€ΠΈΠ±Ρ‹Π» ΠΈ Ρ‚Π΅ΠΌ, ΠΊΡ‚ΠΎ Π΅Π³ΠΎ подписал. На вопрос, ΠΎΡ‚ΠΊΡƒΠ΄Π° ΠΎΠ½ ΠΏΡ€ΠΈΠ±Ρ‹Π», ΠΎΡ‚Π²Π΅Ρ‡Π°Π΅Ρ‚ Π΅Π³ΠΎ URL, Π° Π½Π° вопрос, ΠΊΡ‚ΠΎ Π΅Π³ΠΎ подписал, ΠΎΡ‚Π²Π΅Ρ‡Π°Π΅Ρ‚ Π·Π°ΠΊΡ€Ρ‹Ρ‚Ρ‹ΠΉ ΠΊΠ»ΡŽΡ‡, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ Π±Ρ‹Π» использован для Π΅Π³ΠΎ Ρ†ΠΈΡ„Ρ€ΠΎΠ²ΠΎΠΉ подписи. ΠšΠ°ΠΆΠ΄Ρ‹ΠΉ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒ ΠΌΠΎΠΆΠ΅Ρ‚ ΡΠΎΠ·Π΄Π°Ρ‚ΡŒ ΠΏΠΎΠ»ΠΈΡ‚ΠΈΠΊΡƒ бСзопасности, ΡΠΎΡΡ‚ΠΎΡΡ‰ΡƒΡŽ ΠΈΠ· пСрСчня ΠΏΡ€Π°Π²ΠΈΠ». Π’ ΠΊΠ°ΠΆΠ΄ΠΎΠΌ ΠΏΡ€Π°Π²ΠΈΠ»Π΅ ΠΌΠΎΠ³ΡƒΡ‚ ΠΏΠ΅Ρ€Π΅Ρ‡ΠΈΡΠ»ΡΡ‚ΡŒΡΡ URL, Π²Π»Π°Π΄Π΅Π»Π΅Ρ† подписи, ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ ΠΈ дСйствиС, ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ΅ Π°ΠΏΠΏΠ»Π΅Ρ‚ ΠΌΠΎΠΆΠ΅Ρ‚ ΡΠΎΠ²Π΅Ρ€ΡˆΠΈΡ‚ΡŒ с ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ΠΎΠΌ, Ссли URL Π°ΠΏΠΏΠ»Π΅Ρ‚Π°

ΠΈ Π²Π»Π°Π΄Π΅Π»Π΅Ρ† подписи совпадут с ΡƒΠΊΠ°Π·Π°Π½Π½Ρ‹ΠΌΠΈ Π² ΠΏΡ€Π°Π²ΠΈΠ»Π΅. ΠšΠΎΠ½Ρ†Π΅ΠΏΡ‚ΡƒΠ°Π»ΡŒΠ½ΠΎ прСдоставляСмая информация ΠΏΠΎΠΊΠ°Π·Π°Π½Π° Π² Ρ‚Π°Π±Π». 9.3, хотя Ρ€Π΅Π°Π»ΡŒΠ½ΠΎ ΠΎΠ½Π° ΠΎΡ‚Ρ„ΠΎΡ€ΠΌΠ°Ρ‚ΠΈΡ€ΠΎΠ²Π°Π½Π° ΠΏΠΎ-Π΄Ρ€ΡƒΠ³ΠΎΠΌΡƒ ΠΈ ΠΈΠΌΠ΅Π΅Ρ‚ ΠΎΡ‚Π½ΠΎΡˆΠ΅Π½ΠΈΠ΅ ΠΊ ΠΈΠ΅Ρ€Π°Ρ€Ρ…ΠΈΠΈ классов Java.


Один Π²ΠΈΠ΄ дСйствий Ρ€Π°Π·Ρ€Π΅ΡˆΠ°Π΅Ρ‚ доступ ΠΊ Ρ„Π°ΠΉΠ»Ρƒ. ДСйствиС ΠΌΠΎΠΆΠ΅Ρ‚ ΠΎΠΏΡ€Π΅Π΄Π΅Π»ΡΡ‚ΡŒ ΠΊΠΎΠ½ΠΊΡ€Π΅Ρ‚Π½Ρ‹ΠΉ Ρ„Π°ΠΉΠ» ΠΈΠ»ΠΈ ΠΊΠ°Ρ‚Π°Π»ΠΎΠ³, Π½Π°Π±ΠΎΡ€ всСх Ρ„Π°ΠΉΠ»ΠΎΠ² Π² Π·Π°Π΄Π°Π½Π½ΠΎΠΌ ΠΊΠ°Ρ‚Π°Π»ΠΎΠ³Π΅ ΠΈΠ»ΠΈ Π½Π°Π±ΠΎΡ€ всСх Ρ„Π°ΠΉΠ»ΠΎΠ² ΠΈ ΠΊΠ°Ρ‚Π°Π»ΠΎΠ³ΠΎΠ², рСкурсивно содСрТащихся Π² Π·Π°Π΄Π°Π½Π½ΠΎΠΌ ΠΊΠ°Ρ‚Π°Π»ΠΎΠ³Π΅. Π’Ρ€ΠΈ строки Π² Ρ‚Π°Π±Π». 9.3 ΡΠΎΠΎΡ‚Π²Π΅Ρ‚ΡΡ‚Π²ΡƒΡŽΡ‚ этим Ρ‚Ρ€Π΅ΠΌ случаям. Π’ ΠΏΠ΅Ρ€Π²ΠΎΠΉ строкС ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒ БьюзСн установила свою запись ΠΏΡ€Π°Π² доступа Ρ‚Π°ΠΊ, Ρ‡Ρ‚ΠΎ Π°ΠΏΠΏΠ»Π΅Ρ‚Ρ‹, ΠΏΠΎΡΡ‚ΡƒΠΏΠ°ΡŽΡ‰ΠΈΠ΅ ΠΎΡ‚ ΠΌΠ°ΡˆΠΈΠ½Ρ‹ ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠ° Π΅Π΅ Π½Π°Π»ΠΎΠ³ΠΎΠ²Ρ‹Ρ… Π΄Π°Π½Π½Ρ‹Ρ…, которая называСтся www.taxprep.com, ΠΈ подписанныС ΠΊΠΎΠΌΠΏΠ°Π½ΠΈΠ΅ΠΉ- ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠΎΠΌ, ΠΈΠΌΠ΅ΡŽΡ‚ доступ для чтСния ΠΊ Π΅Π΅ Π½Π°Π»ΠΎΠ³ΠΎΠ²Ρ‹ΠΌ Π΄Π°Π½Π½Ρ‹ΠΌ Π² Ρ„Π°ΠΉΠ»Π΅ 1040.xls. Они ΠΌΠΎΠ³ΡƒΡ‚ Ρ‡ΠΈΡ‚Π°Ρ‚ΡŒ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ этот Ρ„Π°ΠΉΠ», ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ Π½Π΅ ΠΌΠΎΠ³ΡƒΡ‚ Ρ‡ΠΈΡ‚Π°Ρ‚ΡŒ Π½ΠΈΠΊΠ°ΠΊΠΈΠ΅ Π΄Ρ€ΡƒΠ³ΠΈΠ΅ Π°ΠΏΠΏΠ»Π΅Ρ‚Ρ‹. ΠšΡ€ΠΎΠΌΠ΅ Ρ‚ΠΎΠ³ΠΎ, всС Π°ΠΏΠΏΠ»Π΅Ρ‚Ρ‹ ΠΈΠ· всСх источников нСзависимо ΠΎΡ‚ Ρ‚ΠΎΠ³ΠΎ, подписаны ΠΎΠ½ΠΈ ΠΈΠ»ΠΈ Π½Π΅Ρ‚, ΠΌΠΎΠ³ΡƒΡ‚ Ρ‡ΠΈΡ‚Π°Ρ‚ΡŒ ΠΈ Π·Π°ΠΏΠΈΡΡ‹Π²Π°Ρ‚ΡŒ Ρ„Π°ΠΉΠ»Ρ‹ Π² ΠΊΠ°Ρ‚Π°Π»ΠΎΠ³Π΅ /usr/tmp.

Π”Π°Π»Π΅Π΅, БьюзСн довСряСт ΠΊΠΎΡ€ΠΏΠΎΡ€Π°Ρ†ΠΈΠΈ Microsoft Π½Π°ΡΡ‚ΠΎΠ»ΡŒΠΊΠΎ, Ρ‡Ρ‚ΠΎ Ρ€Π°Π·Ρ€Π΅ΡˆΠ°Π΅Ρ‚ Π°ΠΏΠΏΠ»Π΅Ρ‚Π°ΠΌ, ΠΏΠΎΠ»ΡƒΡ‡Π°Π΅ΠΌΡ‹ΠΌ с Π΅Π΅ сайта ΠΈ подписанным этой ΠΊΠΎΠΌΠΏΠ°Π½ΠΈΠ΅ΠΉ, Ρ‡ΠΈΡ‚Π°Ρ‚ΡŒ, Π·Π°ΠΏΠΈΡΡ‹Π²Π°Ρ‚ΡŒ ΠΈ ΡƒΠ΄Π°Π»ΡΡ‚ΡŒ Ρ„Π°ΠΉΠ»Ρ‹, находящихся Π½ΠΈΠΆΠ΅ ΠΊΠ°Ρ‚Π°Π»ΠΎΠ³Π° Office Π² Π΄Π΅Ρ€Π΅Π²Π΅ ΠΊΠ°Ρ‚Π°Π»ΠΎΠ³ΠΎΠ², ΠΊ ΠΏΡ€ΠΈΠΌΠ΅Ρ€Ρƒ, для устранСния Π΄Π΅Ρ„Π΅ΠΊΡ‚ΠΎΠ² ΠΈ установки Π½ΠΎΠ²Ρ‹Ρ… вСрсий ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½ΠΎΠ³ΠΎ обСспСчСния. Для ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΊΠΈ подписСй БьюзСн Π»ΠΈΠ±ΠΎ Π΄ΠΎΠ»ΠΆΠ½Π° ΠΈΠΌΠ΅Ρ‚ΡŒ Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΡ‹ΠΉ ΠΎΡ‚ΠΊΡ€Ρ‹Ρ‚Ρ‹ΠΉ ΠΊΠ»ΡŽΡ‡ Π½Π° своСм дискС, Π»ΠΈΠ±ΠΎ Π΄ΠΎΠ»ΠΆΠ½Π° ΠΏΠΎΠ»ΡƒΡ‡Π°Ρ‚ΡŒ ΠΈΡ… Π² динамичСском Ρ€Π΅ΠΆΠΈΠΌΠ΅, Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€ Π² Π²ΠΈΠ΄Π΅ сСртификата, подписанного ΠΊΠΎΠΌΠΏΠ°Π½ΠΈΠ΅ΠΉ, ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΉ ΠΎΠ½Π° довСряСт ΠΈ Ρ‡Π΅ΠΉ ΠΎΡ‚ΠΊΡ€Ρ‹Ρ‚Ρ‹ΠΉ ΠΊΠ»ΡŽΡ‡ Ρƒ Π½Π΅Π΅ имССтся.

Π’ качСствС Π·Π°Ρ‰ΠΈΡ‰Π°Π΅ΠΌΡ‹Ρ… рСсурсов ΠΌΠΎΠ³ΡƒΡ‚ Π²Ρ‹ΡΡ‚ΡƒΠΏΠ°Ρ‚ΡŒ Π½Π΅ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Ρ„Π°ΠΉΠ»Ρ‹. МоТно Ρ‚Π°ΠΊΠΆΠ΅ Π·Π°Ρ‰ΠΈΡ‚ΠΈΡ‚ΡŒ доступ ΠΊ сСти. Π—Π΄Π΅ΡΡŒ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ΠΎΠΌ Π±ΡƒΠ΄Π΅Ρ‚ ΠΊΠΎΠ½ΠΊΡ€Π΅Ρ‚Π½Ρ‹ΠΉ ΠΏΠΎΡ€Ρ‚ Π½Π° ΠΊΠΎΠ½ΠΊΡ€Π΅Ρ‚Π½ΠΎΠΌ ΠΊΠΎΠΌΠΏΡŒΡŽΡ‚Π΅Ρ€Π΅. ΠšΠΎΠΌΠΏΡŒΡŽΡ‚Π΅Ρ€ указываСтся с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ IP-адрСса ΠΈΠ»ΠΈ DNS-ΠΈΠΌΠ΅Π½ΠΈ; ΠΏΠΎΡ€Ρ‚Ρ‹ Π½Π° этом ΠΊΠΎΠΌΠΏΡŒΡŽΡ‚Π΅Ρ€Π΅ ΡƒΠΊΠ°Π·Ρ‹Π²Π°ΡŽΡ‚ΡΡ Π΄ΠΈΠ°ΠΏΠ°Π·ΠΎΠ½ΠΎΠΌ чисСл. Π’ΠΎΠ·ΠΌΠΎΠΆΠ½Ρ‹Π΅ дСйствия Π²ΠΊΠ»ΡŽΡ‡Π°ΡŽΡ‚ Π² сСбя ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠ΅ ΠΊ ΡƒΠ΄Π°Π»Π΅Π½Π½ΠΎΠΌΡƒ ΠΊΠΎΠΌΠΏΡŒΡŽΡ‚Π΅Ρ€Ρƒ ΠΈ ΠΏΡ€ΠΈΠ΅ΠΌ ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠΉ, исходящих ΠΎΡ‚ ΡƒΠ΄Π°Π»Π΅Π½Π½ΠΎΠ³ΠΎ ΠΊΠΎΠΌΠΏΡŒΡŽΡ‚Π΅Ρ€Π°. Π’Π°ΠΊΠΈΠΌ ΠΎΠ±Ρ€Π°Π·ΠΎΠΌ, Π°ΠΏΠΏΠ»Π΅Ρ‚ ΠΌΠΎΠΆΠ΅Ρ‚ ΠΏΠΎΠ»ΡƒΡ‡ΠΈΡ‚ΡŒ доступ ΠΊ сСти, Π½ΠΎ этот доступ ΠΎΠ³Ρ€Π°Π½ΠΈΡ‡Π΅Π½ ΠΎΠ±ΠΌΠ΅Π½ΠΎΠΌ Π΄Π°Π½Π½Ρ‹ΠΌΠΈ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ с Ρ‚Π΅ΠΌΠΈ ΠΊΠΎΠΌΠΏΡŒΡŽΡ‚Π΅Ρ€Π°ΠΌΠΈ, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ явным ΠΎΠ±Ρ€Π°Π·ΠΎΠΌ пСрСчислСны Π² спискС Ρ€Π°Π·Ρ€Π΅ΡˆΠ΅Π½ΠΈΠΉ. АпплСты ΠΌΠΎΠ³ΡƒΡ‚ Π² случаС нСобходимости динамичСски Π·Π°Π³Ρ€ΡƒΠΆΠ°Ρ‚ΡŒ Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹ΠΉ ΠΊΠΎΠ΄ (классы), Π½ΠΎ прСдоставляСмыС ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Π΅ΠΌ Π·Π°Π³Ρ€ΡƒΠ·Ρ‡ΠΈΠΊΠΈ классов ΠΌΠΎΠ³ΡƒΡ‚ ΠΎΡΡƒΡ‰Π΅ΡΡ‚Π²Π»ΡΡ‚ΡŒ строгий ΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»ΡŒ Ρ‚ΠΎΠ³ΠΎ, ΠΊΠ°ΠΊΠΈΠ΅ ΠΌΠ°ΡˆΠΈΠ½Ρ‹ ΠΌΠΎΠ³ΡƒΡ‚ Π±Ρ‹Ρ‚ΡŒ источниками этих классов. БущСствуСт Ρ‚Π°ΠΊΠΆΠ΅ мноТСство Π΄Ρ€ΡƒΠ³ΠΈΡ… срСдств бСзопасности.

Π•Ρ‰Π΅ ΠΏΠΎ Ρ‚Π΅ΠΌΠ΅ Π‘Π΅Π·ΠΎΠΏΠ°ΡΠ½ΠΎΡΡ‚ΡŒ Π² систСмС Java:

  1. Β§ 39 ΠšΠ»Π°ΡΡΠΈΡ„ΠΈΠΊΠ°Ρ†ΠΈΡ Π΄ΠΎΠ³ΠΎΠ²ΠΎΡ€ΠΎΠ² Π² ΠΎΡ‚Π΄Π΅Π»ΡŒΠ½Ρ‹Ρ… Π²ΠΈΠ΄Π°Ρ…. – Римская классификация. – БистСма прусского Π·Π°ΠΊΠΎΠ½Π°, французского ΠΈ австрийского кодСкса. – БистСма русского свода. – БистСма настоящСго излоТСния.