{"id":2308,"date":"2026-05-29T21:47:53","date_gmt":"2026-05-29T21:47:53","guid":{"rendered":"https:\/\/vkrastev1blog.com\/?p=2308"},"modified":"2026-11-04T17:21:59","modified_gmt":"2026-11-04T20:21:59","slug":"questions-and-informations-prepairing-for-java-developer-job-interview","status":"publish","type":"post","link":"https:\/\/vkrastev1blog.com\/2026\/05\/29\/questions-and-informations-prepairing-for-java-developer-job-interview\/","title":{"rendered":"Java \u0445\u04e9\u0433\u0436\u04af\u04af\u043b\u044d\u0433\u0447\u0438\u0439\u043d \u0430\u0436\u043b\u044b\u043d \u044f\u0440\u0438\u043b\u0446\u043b\u0430\u0433\u0430\u0434 \u0431\u044d\u043b\u0434\u044d\u0436 \u0431\u0443\u0439 \u0430\u0441\u0443\u0443\u043b\u0442, \u043c\u044d\u0434\u044d\u044d\u043b\u044d\u043b"},"content":{"rendered":"\n<h2 class=\"wp-block-heading\">Java \u0445\u04e9\u0433\u0436\u04af\u04af\u043b\u044d\u0433\u0447\u0438\u0439\u043d \u044f\u0440\u0438\u043b\u0446\u043b\u0430\u0433\u0430\u0434 \u0431\u044d\u043b\u0442\u0433\u044d\u0445 \u0430\u0441\u0443\u0443\u043b\u0442, \u043c\u044d\u0434\u044d\u044d\u043b\u044d\u043b<\/h2>\n\n\n\n<figure class=\"wp-block-image size-large\"><a href=\"https:\/\/i0.wp.com\/vkrastev1blog.com\/wp-content\/uploads\/2026\/05\/Java-Developer-Interview-Preparation.jpg?ssl=1\"><img data-recalc-dims=\"1\" loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"576\" data-attachment-id=\"3245\" data-permalink=\"https:\/\/vkrastev1blog.com\/2026\/05\/29\/questions-and-informations-prepairing-for-java-developer-job-interview\/java-developer-interview-preparation-2\/\" data-orig-file=\"https:\/\/i0.wp.com\/vkrastev1blog.com\/wp-content\/uploads\/2026\/05\/Java-Developer-Interview-Preparation.jpg?fit=1672%2C941&amp;ssl=1\" data-orig-size=\"1672,941\" data-comments-opened=\"1\" data-image-title=\"Java Developer Interview Preparation\" data-image-description=\"\" data-image-caption=\"\" data-large-file=\"https:\/\/i0.wp.com\/vkrastev1blog.com\/wp-content\/uploads\/2026\/05\/Java-Developer-Interview-Preparation.jpg?fit=1024%2C576&amp;ssl=1\" src=\"https:\/\/i0.wp.com\/vkrastev1blog.com\/wp-content\/uploads\/2026\/05\/Java-Developer-Interview-Preparation.jpg?resize=1024%2C576&#038;ssl=1\" alt=\"\" class=\"wp-image-3245\" srcset=\"https:\/\/i0.wp.com\/vkrastev1blog.com\/wp-content\/uploads\/2026\/05\/Java-Developer-Interview-Preparation.jpg?resize=1024%2C576&amp;ssl=1 1024w, https:\/\/i0.wp.com\/vkrastev1blog.com\/wp-content\/uploads\/2026\/05\/Java-Developer-Interview-Preparation.jpg?resize=300%2C169&amp;ssl=1 300w, https:\/\/i0.wp.com\/vkrastev1blog.com\/wp-content\/uploads\/2026\/05\/Java-Developer-Interview-Preparation.jpg?resize=768%2C432&amp;ssl=1 768w, https:\/\/i0.wp.com\/vkrastev1blog.com\/wp-content\/uploads\/2026\/05\/Java-Developer-Interview-Preparation.jpg?resize=1536%2C864&amp;ssl=1 1536w, https:\/\/i0.wp.com\/vkrastev1blog.com\/wp-content\/uploads\/2026\/05\/Java-Developer-Interview-Preparation.jpg?w=1672&amp;ssl=1 1672w\" sizes=\"auto, (max-width: 1000px) 100vw, 1000px\" \/><\/a><\/figure>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h2 class=\"wp-block-heading\">SOLID \u0437\u0430\u0440\u0447\u0438\u043c \u0433\u044d\u0436 \u044e\u0443 \u0432\u044d?<\/h2>\n\n\n\n<h2 class=\"wp-block-heading\">\u0413\u0430\u043d\u0446 \u0445\u0430\u0440\u0438\u0443\u0446\u043b\u0430\u0433\u044b\u043d \u0437\u0430\u0440\u0447\u0438\u043c (SRP) \u0433\u044d\u0436 \u044e\u0443 \u0432\u044d?<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">\u0410\u043d\u0433\u0438 \u043d\u044c \u0437\u04e9\u0432\u0445\u04e9\u043d \u043d\u044d\u0433 \u04af\u04af\u0440\u044d\u0433 \u0445\u0430\u0440\u0438\u0443\u0446\u043b\u0430\u0433\u0430\u0442\u0430\u0439 \u0431\u0430\u0439\u0445 \u0451\u0441\u0442\u043e\u0439 \u0431\u04e9\u0433\u04e9\u04e9\u0434 \u04e9\u04e9\u0440\u0447\u043b\u04e9\u0445 \u0446\u043e\u0440\u044b\u043d \u0433\u0430\u043d\u0446 \u0448\u0430\u043b\u0442\u0433\u0430\u0430\u043d \u0431\u0430\u0439\u0445 \u0451\u0441\u0442\u043e\u0439.<br>\u0410\u0448\u0438\u0433 \u0442\u0443\u0441 \u043d\u044c \u0445\u044f\u043b\u0431\u0430\u0440 \u0442\u0443\u0440\u0448\u0438\u043b\u0442, \u0431\u0430\u0433\u0430 \u0445\u043e\u043b\u0431\u043e\u043b\u0442, \u0438\u043b\u04af\u04af \u0441\u0430\u0439\u043d \u0437\u043e\u0445\u0438\u043e\u043d \u0431\u0430\u0439\u0433\u0443\u0443\u043b\u0430\u043b\u0442 \u0437\u044d\u0440\u044d\u0433 \u043e\u0440\u043d\u043e.<br>\u0416\u0438\u0448\u044d\u044d:<\/p>\n\n\n<div class=\"wp-block-code\">\n\t<div class=\"cm-editor\">\n\t\t<div class=\"cm-scroller\">\n\t\t\t\n<pre>\n<code><div class=\"cm-line\">public class Book {<\/div><div class=\"cm-line\">private String name;<\/div><div class=\"cm-line\">private String author;<\/div><div class=\"cm-line\">private String text;<\/div><div class=\"cm-line\">\/\/ constructor, getters, and setters<\/div><div class=\"cm-line\">}<\/div><\/code><\/pre>\n\t\t<\/div>\n\t<\/div>\n<\/div>\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h2 class=\"wp-block-heading\">\u041d\u044d\u044d\u043b\u0442\u0442\u044d\u0439 \u0445\u0430\u0430\u043b\u0442\u0442\u0430\u0439 \u0437\u0430\u0440\u0447\u0438\u043c (OCP) \u0433\u044d\u0436 \u044e\u0443 \u0432\u044d<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">\u041f\u0440\u043e\u0433\u0440\u0430\u043c \u0445\u0430\u043d\u0433\u0430\u043c\u0436\u0438\u0439\u043d \u0431\u04af\u0440\u044d\u043b\u0434\u044d\u0445\u04af\u04af\u043d \u0445\u044d\u0441\u0433\u04af\u04af\u0434 (\u0430\u043d\u0433\u0438, \u043c\u043e\u0434\u0443\u043b\u0438\u0443\u0434, \u0444\u0443\u043d\u043a\u0446\u0443\u0443\u0434) \u04e9\u0440\u0433\u04e9\u0442\u0433\u04e9\u043b \u0445\u0438\u0439\u0445\u044d\u0434 \u043d\u044d\u044d\u043b\u0442\u0442\u044d\u0439 \u0431\u043e\u043b\u043e\u0432\u0447 \u04e9\u04e9\u0440\u0447\u043b\u04e9\u0445\u04e9\u0434 \u0445\u0430\u0430\u043b\u0442\u0442\u0430\u0439 \u0431\u0430\u0439\u0445 \u0451\u0441\u0442\u043e\u0439.<br>\u04ae\u04af\u043d\u0434 \u0438\u043d\u0442\u0435\u0440\u0444\u044d\u0439\u0441, \u0445\u0438\u0439\u0441\u0432\u044d\u0440 \u0430\u043d\u0433\u0438, \u04e9\u0432 \u0437\u0430\u043b\u0433\u0430\u043c\u0436\u043b\u0430\u043b\u044b\u0433 \u0430\u0448\u0438\u0433\u043b\u0430\u043d \u0445\u04af\u0440\u0434\u044d\u0433.<br>\u0416\u0438\u0448\u044d\u044d:<\/p>\n\n\n<div class=\"wp-block-code\">\n\t<div class=\"cm-editor\">\n\t\t<div class=\"cm-scroller\">\n\t\t\t\n<pre>\n<code><div class=\"cm-line\">interface Shape {<\/div><div class=\"cm-line\">double area();<\/div><div class=\"cm-line\">}<\/div><div class=\"cm-line\">class Circle implements Shape <\/div><div class=\"cm-line\">{ \/* implementation \/ } <\/div><div class=\"cm-line\">class Rectangle implements Shape <\/div><div class=\"cm-line\">{ \/ implementation *\/ }<\/div><\/code><\/pre>\n\t\t<\/div>\n\t<\/div>\n<\/div>\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h2 class=\"wp-block-heading\">\u041b\u0438\u0441\u043a\u043e\u0432\u044b\u043d \u043e\u0440\u043b\u0443\u0443\u043b\u0430\u0445 \u0437\u0430\u0440\u0447\u0438\u043c (LSP) \u0433\u044d\u0436 \u044e\u0443 \u0432\u044d<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">\u0414\u044d\u0434 \u0442\u04e9\u0440\u043b\u04af\u04af\u0434 \u043d\u044c \u043f\u0440\u043e\u0433\u0440\u0430\u043c\u044b\u043d \u0437\u04e9\u0432 \u0431\u0430\u0439\u0434\u043b\u044b\u0433 \u04e9\u04e9\u0440\u0447\u043b\u04e9\u0445\u0433\u04af\u0439\u0433\u044d\u044d\u0440 \u04af\u043d\u0434\u0441\u044d\u043d \u0442\u04e9\u0440\u043b\u04af\u04af\u0434\u0438\u0439\u0433 \u0441\u043e\u043b\u0438\u0445 \u0447\u0430\u0434\u0432\u0430\u0440\u0442\u0430\u0439 \u0431\u0430\u0439\u0445 \u0451\u0441\u0442\u043e\u0439. \u042d\u043d\u044d \u043d\u044c &#8220;\u0431\u043e\u043b-\u0430&#8221; \u0445\u0430\u0440\u044c\u0446\u0430\u0430\u0433 \u0434\u0430\u0433\u0430\u0434\u0430\u0433.<br>\u0416\u0438\u0448\u044d\u044d:<\/p>\n\n\n<div class=\"wp-block-code\">\n\t<div class=\"cm-editor\">\n\t\t<div class=\"cm-scroller\">\n\t\t\t\n<pre>\n<code><div class=\"cm-line\">class Bird <\/div><div class=\"cm-line\">{ \/* common bird behavior \/ } <\/div><div class=\"cm-line\">class Sparrow extends Bird <\/div><div class=\"cm-line\">{ \/ specific sparrow behavior *\/ }<\/div><\/code><\/pre>\n\t\t<\/div>\n\t<\/div>\n<\/div>\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h2 class=\"wp-block-heading\">\u0418\u043d\u0442\u0435\u0440\u0444\u0435\u0439\u0441 \u0442\u0443\u0441\u0433\u0430\u0430\u0440\u043b\u0430\u0445 \u0437\u0430\u0440\u0447\u0438\u043c (ISP) \u0433\u044d\u0436 \u044e\u0443 \u0432\u044d<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">\u04ae\u0439\u043b\u0447\u043b\u04af\u04af\u043b\u044d\u0433\u0447\u0438\u0434 \u0430\u0448\u0438\u0433\u043b\u0430\u0434\u0430\u0433\u0433\u04af\u0439 \u0438\u043d\u0442\u0435\u0440\u0444\u044d\u0439\u0441\u044d\u044d\u0441\u044d\u044d \u0445\u0430\u043c\u0430\u0430\u0440\u0430\u043b\u0442\u0430\u0439 \u0431\u0430\u0439\u0445\u044b\u0433 \u0430\u043b\u0431\u0430\u0434\u0430\u0445 \u0451\u0441\u0433\u04af\u0439. \u0422\u043e\u043c \u0438\u043d\u0442\u0435\u0440\u0444\u0435\u0439\u0441\u0438\u0439\u0433 \u0436\u0438\u0436\u0438\u0433, \u0438\u043b\u04af\u04af \u0442\u043e\u0434\u043e\u0440\u0445\u043e\u0439 \u0431\u043e\u043b\u0433\u043e\u043d \u0445\u0443\u0432\u0430\u0430\u0445.<br>\u0416\u0438\u0448\u044d\u044d:<\/p>\n\n\n<div class=\"wp-block-code\">\n\t<div class=\"cm-editor\">\n\t\t<div class=\"cm-scroller\">\n\t\t\t\n<pre>\n<code><div class=\"cm-line\">interface Worker {<\/div><div class=\"cm-line\">void work();<\/div><div class=\"cm-line\">}<\/div><div class=\"cm-line\">interface Eater {<\/div><div class=\"cm-line\">void eat();<\/div><div class=\"cm-line\">}<\/div><div class=\"cm-line\">class Robot implements Worker <\/div><div class=\"cm-line\">{ \/* implementation *\/ }<\/div><\/code><\/pre>\n\t\t<\/div>\n\t<\/div>\n<\/div>\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h2 class=\"wp-block-heading\">Dependency Inversion Principle (DIP) \u0433\u044d\u0436 \u044e\u0443 \u0432\u044d<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">\u0414\u044d\u044d\u0434 \u0442\u04af\u0432\u0448\u043d\u0438\u0439 \u043c\u043e\u0434\u0443\u043b\u0438\u0443\u0434 \u043d\u044c \u0434\u043e\u043e\u0434 \u0442\u04af\u0432\u0448\u043d\u0438\u0439 \u043c\u043e\u0434\u0443\u043b\u0438\u0443\u0434\u0430\u0430\u0441 \u0445\u0430\u043c\u0430\u0430\u0440\u0430\u0445 \u0451\u0441\u0433\u04af\u0439; \u0445\u043e\u0451\u0440 \u0442\u04e9\u0440\u04e9\u043b \u043d\u044c \u0445\u0438\u0439\u0441\u0432\u044d\u0440\u043b\u044d\u043b\u044d\u044d\u0441 \u0445\u0430\u043c\u0430\u0430\u0440\u0430\u0445 \u0451\u0441\u0442\u043e\u0439. \u0425\u0438\u0439\u0441\u0432\u044d\u0440\u043b\u044d\u043b \u043d\u044c \u043d\u0430\u0440\u0438\u0439\u043d \u0448\u0438\u0440\u0438\u0439\u043d \u0437\u04af\u0439\u043b\u044d\u044d\u0441 \u0445\u0430\u043c\u0430\u0430\u0440\u0430\u0445 \u0451\u0441\u0433\u04af\u0439; \u0434\u044d\u043b\u0433\u044d\u0440\u044d\u043d\u0433\u04af\u0439 \u043c\u044d\u0434\u044d\u044d\u043b\u044d\u043b \u043d\u044c \u0445\u0438\u0439\u0441\u0432\u044d\u0440\u043b\u044d\u043b\u044d\u044d\u0441 \u0445\u0430\u043c\u0430\u0430\u0440\u0430\u0445 \u0451\u0441\u0442\u043e\u0439.<\/p>\n\n\n<div class=\"wp-block-code\">\n\t<div class=\"cm-editor\">\n\t\t<div class=\"cm-scroller\">\n\t\t\t\n<pre>\n<code><div class=\"cm-line\">\/\/ Abstraction<\/div><div class=\"cm-line\">interface MessageSender {<\/div><div class=\"cm-line\">void sendMessage(String message);<\/div><div class=\"cm-line\">}<\/div><div class=\"cm-line\"><\/div><div class=\"cm-line\">\/\/ High-level module<\/div><div class=\"cm-line\">class NotificationService {<\/div><div class=\"cm-line\">private MessageSender messageSender;<\/div><div class=\"cm-line\"><\/div><div class=\"cm-line\">public NotificationService(MessageSender messageSender) {<\/div><div class=\"cm-line\">this.messageSender = messageSender;<\/div><div class=\"cm-line\">  }<\/div><div class=\"cm-line\"><\/div><div class=\"cm-line\">public void send(String message) {<\/div><div class=\"cm-line\">messageSender.sendMessage(message);<\/div><div class=\"cm-line\">  }<\/div><div class=\"cm-line\">}<\/div><div class=\"cm-line\"><\/div><div class=\"cm-line\">\/\/ Low-level module<\/div><div class=\"cm-line\">class EmailSender implements MessageSender {<\/div><div class=\"cm-line\">@Override<\/div><div class=\"cm-line\">public void sendMessage(String message) {<\/div><div class=\"cm-line\">System.out.println(&quot;Sending Email: &quot; + message);<\/div><div class=\"cm-line\">  }<\/div><div class=\"cm-line\">}<\/div><div class=\"cm-line\"><\/div><div class=\"cm-line\">\/\/ Another Low-level module<\/div><div class=\"cm-line\">class SmsSender implements MessageSender {<\/div><div class=\"cm-line\">@Override<\/div><div class=\"cm-line\">public void sendMessage(String message) {<\/div><div class=\"cm-line\">System.out.println(&quot;Sending SMS: &quot; + message);<\/div><div class=\"cm-line\">  }<\/div><div class=\"cm-line\">}<\/div><div class=\"cm-line\"><\/div><div class=\"cm-line\">\/\/ Use SmsSender<\/div><div class=\"cm-line\">MessageSender smsSender = new SmsSender();<\/div><div class=\"cm-line\">NotificationService notificationService2 = <\/div><div class=\"cm-line\">              new NotificationService(smsSender);<\/div><div class=\"cm-line\">notificationService2.send(&quot;Hello via SMS!&quot;);<\/div><\/code><\/pre>\n\t\t<\/div>\n\t<\/div>\n<\/div>\n\n\n<p class=\"wp-block-paragraph\">MessageSender \u0438\u043d\u0442\u0435\u0440\u0444\u0435\u0439\u0441 \u043d\u044c \u0445\u0438\u0439\u0441\u0432\u044d\u0440\u043b\u044d\u043b\u0438\u0439\u043d \u04af\u04af\u0440\u044d\u0433 \u0433\u04af\u0439\u0446\u044d\u0442\u0433\u044d\u0434\u044d\u0433. \u0414\u044d\u044d\u0434 \u0442\u04af\u0432\u0448\u043d\u0438\u0439 \u043c\u043e\u0434\u0443\u043b\u044c NotificationService \u043d\u044c \u0442\u043e\u0434\u043e\u0440\u0445\u043e\u0439 \u0445\u044d\u0440\u044d\u0433\u0436\u0438\u043b\u0442\u0438\u0439\u043d \u043e\u0440\u043e\u043d\u0434 \u044d\u043d\u044d \u0445\u0438\u0439\u0441\u0432\u044d\u0440\u043b\u044d\u043b\u044d\u044d\u0441 \u0445\u0430\u043c\u0430\u0430\u0440\u0434\u0430\u0433.<br>EmailSender \u0431\u043e\u043b\u043e\u043d SmsSender \u0437\u044d\u0440\u044d\u0433 \u0434\u043e\u043e\u0434 \u0442\u04af\u0432\u0448\u043d\u0438\u0439 \u043c\u043e\u0434\u0443\u043b\u0438\u0443\u0434 \u043d\u044c MessageSender \u0438\u043d\u0442\u0435\u0440\u0444\u0435\u0439\u0441\u0438\u0439\u0433 \u0445\u044d\u0440\u044d\u0433\u0436\u04af\u04af\u043b\u0441\u043d\u044d\u044d\u0440 \u0445\u0438\u0439\u0441\u0432\u044d\u0440\u043b\u044d\u043b\u044d\u044d\u0441 \u0445\u0430\u043c\u0430\u0430\u0440\u0434\u0430\u0433.<\/p>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h2 class=\"wp-block-heading\">SQL \u0434\u044d\u044d\u0440 \u0445\u044d\u0432\u0438\u0439\u043d \u0431\u043e\u043b\u0433\u043e\u0445 \u0433\u044d\u0436 \u044e\u0443 \u0432\u044d?<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">\u041d\u043e\u0440\u043c\u0430\u043b\u0447\u043b\u0430\u043b \u0433\u044d\u0436 \u044e\u0443 \u0432\u044d?<br>\u041d\u043e\u0440\u043c\u0447\u0438\u043b\u043e\u043b \u0433\u044d\u0434\u044d\u0433 \u043d\u044c \u0438\u043b\u04af\u04af\u0434\u044d\u043b \u0433\u044d\u0445 \u043c\u044d\u0442 \u0433\u0430\u0436\u0443\u0443\u0434\u043b\u044b\u0433 \u0430\u0440\u0438\u043b\u0433\u0430\u0445\u044b\u043d \u0442\u0443\u043b\u0434 \u0445\u0430\u0440\u0438\u043b\u0446\u0430\u0430\u043d\u044b \u043c\u044d\u0434\u044d\u044d\u043b\u043b\u0438\u0439\u043d \u0441\u0430\u043d \u0434\u0430\u0445\u044c \u04e9\u0433\u04e9\u0433\u0434\u043b\u0438\u0439\u0433 \u0431\u04af\u0442\u044d\u0446\u0436\u04af\u04af\u043b\u044d\u0445 \u044f\u0432\u0434\u0430\u043b \u044e\u043c. \u042d\u043d\u044d \u043d\u044c \u04e9\u0433\u04e9\u0433\u0434\u043b\u0438\u0439\u043d \u0445\u043e\u043e\u0440\u043e\u043d\u0434\u044b\u043d \u0445\u0430\u0440\u0438\u043b\u0446\u0430\u0430\u0433 \u0445\u0430\u0434\u0433\u0430\u043b\u0430\u0445\u044b\u043d \u0437\u044d\u0440\u044d\u0433\u0446\u044d\u044d \u0442\u043e\u043c, \u0442\u04e9\u0432\u04e9\u0433\u0442\u044d\u0439 \u0445\u04af\u0441\u043d\u044d\u0433\u0442\u04af\u04af\u0434\u0438\u0439\u0433 \u0436\u0438\u0436\u0438\u0433 \u0445\u044d\u0441\u0433\u04af\u04af\u0434\u044d\u0434 \u0445\u0443\u0432\u0430\u0430\u0434\u0430\u0433.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">\u0425\u044d\u0432\u0438\u0439\u043d \u0431\u0430\u0439\u0434\u0430\u043b \u044f\u0430\u0433\u0430\u0430\u0434 \u0447\u0443\u0445\u0430\u043b \u0432\u044d?<br>\u0418\u043b\u04af\u04af\u0434\u044d\u043b \u0442\u043e\u043e\u0433 \u0431\u0430\u0433\u0430\u0441\u0433\u0430\u0434\u0430\u0433: \u04e8\u0433\u04e9\u0433\u0434\u043b\u0438\u0439\u0433 \u0436\u0438\u0436\u0438\u0433 \u0445\u04af\u0441\u043d\u044d\u0433\u0442\u044d\u0434 \u0445\u0443\u0432\u0430\u0430\u0441\u043d\u0430\u0430\u0440 \u0431\u0438\u0434 \u0438\u0436\u0438\u043b \u043c\u044d\u0434\u044d\u044d\u043b\u043b\u0438\u0439\u0433 \u043e\u043b\u043e\u043d \u0443\u0434\u0430\u0430 \u0445\u0430\u0434\u0433\u0430\u043b\u0430\u0445\u0430\u0430\u0441 \u0437\u0430\u0439\u043b\u0441\u0445\u0438\u0439\u0434\u044d\u0433.<br>\u0410\u0441\u0443\u0443\u043b\u0433\u044b\u043d \u0433\u04af\u0439\u0446\u044d\u0442\u0433\u044d\u043b\u0438\u0439\u0433 \u0441\u0430\u0439\u0436\u0440\u0443\u0443\u043b\u043d\u0430: \u0416\u0438\u0436\u0438\u0433 \u0445\u044d\u043c\u0436\u044d\u044d\u0442\u044d\u0439 \u0445\u044d\u0432\u0438\u0439\u043d \u0445\u04af\u0441\u043d\u044d\u0433\u0442\u04af\u04af\u0434 \u043d\u044c \u0430\u0441\u0443\u0443\u043b\u0433\u044b\u043d \u0433\u04af\u0439\u0446\u044d\u0442\u0433\u044d\u043b\u0438\u0439\u0433 \u0445\u0443\u0440\u0434\u0430\u0441\u0433\u0430\u0445\u0430\u0434 \u0445\u04af\u0440\u0433\u044d\u0434\u044d\u0433.<br>\u0428\u0438\u043d\u044d\u0447\u043b\u044d\u043b\u0438\u0439\u043d \u0433\u0430\u0436\u0438\u0433\u0438\u0439\u0433 \u0431\u0430\u0433\u0430\u0441\u0433\u0430\u0434\u0430\u0433: \u0411\u0443\u0441\u0430\u0434 \u0431\u04af\u0440\u0442\u0433\u044d\u043b\u0434 \u043d\u04e9\u043b\u04e9\u04e9\u043b\u04e9\u0445\u0433\u04af\u0439\u0433\u044d\u044d\u0440 \u04e9\u04e9\u0440\u0447\u043b\u04e9\u043b\u0442 \u0445\u0438\u0439\u0445 \u0431\u043e\u043b\u043e\u043c\u0436\u0442\u043e\u0439.<br>\u04e8\u0433\u04e9\u0433\u0434\u043b\u0438\u0439\u043d \u0431\u04af\u0440\u044d\u043d \u0431\u04af\u0442\u044d\u043d \u0431\u0430\u0439\u0434\u043b\u044b\u0433 \u0441\u0430\u0439\u0436\u0440\u0443\u0443\u043b\u043d\u0430: \u0422\u043e\u0433\u0442\u0432\u043e\u0440\u0442\u043e\u0439, \u04af\u043d\u044d\u043d \u0437\u04e9\u0432 \u04e9\u0433\u04e9\u0433\u0434\u043b\u0438\u0439\u0433 \u0431\u0430\u0442\u0430\u043b\u0433\u0430\u0430\u0436\u0443\u0443\u043b\u0434\u0430\u0433.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">\u041d\u043e\u0440\u043c\u0430\u043b\u0447\u043b\u0430\u043b\u044b\u0433 \u0445\u044d\u0440\u044d\u0433\u043b\u044d\u0445 \u0445\u0443\u0432\u0438\u043b\u0431\u0430\u0440\u0443\u0443\u0434<br>\u04e8\u0433\u04e9\u0433\u0434\u043b\u0438\u0439\u043d \u0431\u04af\u0440\u044d\u043d \u0431\u04af\u0442\u044d\u043d \u0431\u0430\u0439\u0434\u0430\u043b: \u04e8\u0433\u04e9\u0433\u0434\u043b\u0438\u0439\u0433 \u0448\u0438\u043d\u044d\u0447\u043b\u044d\u0445 \u04af\u0435\u0434 (\u0436\u0438\u0448\u044d\u044d\u043b\u0431\u044d\u043b, \u0445\u044d\u0440\u044d\u0433\u043b\u044d\u0433\u0447\u0438\u0439\u043d \u043d\u0430\u0441 \u04e9\u04e9\u0440\u0447\u043b\u04e9\u0433\u0434\u04e9\u0445 \u04af\u0435\u0434) \u0437\u04e9\u0440\u0447\u0438\u043b\u0434\u04e9\u0445\u04e9\u04e9\u0441 \u0441\u044d\u0440\u0433\u0438\u0439\u043b\u043d\u044d.<br>\u04ae\u0440 \u0434\u04af\u043d\u0442\u044d\u0439 \u0430\u0441\u0443\u0443\u043b\u0433\u0430: \u04e8\u0433\u04e9\u0433\u0434\u043b\u0438\u0439\u0433 \u0437\u0430\u0434\u043b\u0430\u0445 \u0437\u0430\u043c\u0430\u0430\u0440 \u043d\u0430\u0440\u0438\u0439\u043d \u0442\u04e9\u0432\u04e9\u0433\u0442\u044d\u0439 \u0430\u0441\u0443\u0443\u043b\u0442\u0443\u0443\u0434\u044b\u0433 \u0445\u044f\u043b\u0431\u0430\u0440\u0448\u0443\u0443\u043b\u0434\u0430\u0433.<br>\u0425\u0430\u0434\u0433\u0430\u043b\u0430\u0445 \u043e\u043d\u043e\u0432\u0447\u043b\u043e\u043b: \u041e\u0440\u043e\u043d \u0437\u0430\u0439 \u0445\u044d\u043c\u043d\u044d\u0445\u0438\u0439\u043d \u0442\u0443\u043b\u0434 \u0438\u043b\u04af\u04af\u0434\u043b\u0438\u0439\u0433 \u0430\u0440\u0438\u043b\u0433\u0430\u043d\u0430.<\/p>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h2 class=\"wp-block-heading\">Microservices monolith \u0433\u044d\u0436 \u044e\u0443 \u0432\u044d?<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">\u041c\u043e\u043d\u043e\u043b\u0438\u0442 \u0433\u044d\u0436 \u044e\u0443 \u0432\u044d?<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">\u041c\u043e\u043d\u043e\u043b\u0438\u0442 \u043f\u0440\u043e\u0433\u0440\u0430\u043c\u044b\u0433 \u043d\u044d\u0433, \u0431\u04af\u0440\u044d\u043d \u043c\u043e\u0434\u0443\u043b\u044c \u0431\u043e\u043b\u0433\u043e\u043d \u0431\u04af\u0442\u044d\u044d\u0434\u044d\u0433. \u042d\u043d\u044d \u043d\u044c \u0431\u04af\u0445 \u0431\u04af\u0440\u044d\u043b\u0434\u044d\u0445\u04af\u04af\u043d \u0445\u044d\u0441\u0433\u04af\u04af\u0434\u0438\u0439\u0433 (\u04af\u0439\u043b\u0447\u043b\u04af\u04af\u043b\u044d\u0433\u0447\u0438\u0439\u043d UI, \u043c\u044d\u0434\u044d\u044d\u043b\u043b\u0438\u0439\u043d \u0431\u0430\u0430\u0437, \u0441\u0435\u0440\u0432\u0435\u0440 \u0442\u0430\u043b\u044b\u043d \u043f\u0440\u043e\u0433\u0440\u0430\u043c \u0433\u044d\u0445 \u043c\u044d\u0442) \u043d\u0438\u0439\u0442\u043b\u044d\u0433 \u043a\u043e\u0434\u044b\u043d \u0441\u0443\u0443\u0440\u044c \u0431\u043e\u043b\u0433\u043e\u043d \u043d\u044f\u0433\u0442 \u0445\u043e\u043b\u0431\u043e\u0434\u043e\u0433.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">\u0414\u0430\u0432\u0443\u0443 \u0442\u0430\u043b:<br>\u0425\u044f\u043b\u0431\u0430\u0440 \u0431\u0430\u0439\u0440\u0448\u0443\u0443\u043b\u0430\u0445: \u042d\u043d\u044d \u043d\u044c \u043d\u044d\u0433 \u0433\u04af\u0439\u0446\u044d\u0442\u0433\u044d\u0433\u0434\u044d\u0445 \u0444\u0430\u0439\u043b \u044d\u0441\u0432\u044d\u043b \u043b\u0430\u0432\u043b\u0430\u0445 \u0442\u0443\u043b \u0431\u0430\u0439\u0440\u0448\u0443\u0443\u043b\u0430\u0445 \u043d\u044c \u0445\u044f\u043b\u0431\u0430\u0440 \u0431\u04e9\u0433\u04e9\u04e9\u0434 \u0445\u044f\u043b\u0431\u0430\u0440 \u0431\u0430\u0439\u0434\u0430\u0433.<br>\u0425\u04e9\u0433\u0436\u043b\u0438\u0439\u043d \u0445\u0443\u0440\u0434: \u0422\u04e9\u0441\u043b\u0438\u0439\u043d \u0430\u043c\u044c\u0434\u0440\u0430\u043b\u044b\u043d \u044d\u0445\u043d\u0438\u0439 \u04af\u0435 \u0448\u0430\u0442\u0430\u043d\u0434 \u043c\u043e\u043d\u043e\u043b\u0438\u0442 \u043d\u044c \u044d\u043d\u0433\u0438\u0439\u043d \u0431\u0430\u0439\u0434\u043b\u044b\u043d \u0430\u0447\u0430\u0430\u0440 \u0445\u0443\u0440\u0434\u0430\u043d \u0445\u04e9\u0433\u0436\u0438\u0445 \u0431\u043e\u043b\u043e\u043c\u0436\u0438\u0439\u0433 \u043e\u043b\u0433\u043e\u0434\u043e\u0433.<br>\u0413\u04af\u0439\u0446\u044d\u0442\u0433\u044d\u043b: \u0422\u04e9\u0432\u043b\u04e9\u0440\u0441\u04e9\u043d \u043a\u043e\u0434\u044b\u043d \u0431\u0430\u0430\u0437 \u043d\u044c \u044f\u043d\u0437 \u0431\u04af\u0440\u0438\u0439\u043d \u0444\u0443\u043d\u043a\u0446\u0438\u0439\u0433 \u04af\u0440 \u0434\u04af\u043d\u0442\u044d\u0439 \u0437\u043e\u0445\u0438\u0446\u0443\u0443\u043b\u0436 \u0447\u0430\u0434\u0434\u0430\u0433.<\/p>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h2 class=\"wp-block-heading\">\u041c\u0438\u043a\u0440\u043e \u04af\u0439\u043b\u0447\u0438\u043b\u0433\u044d\u044d \u0433\u044d\u0436 \u044e\u0443 \u0432\u044d?<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">\u0411\u0438\u0447\u0438\u043b \u04af\u0439\u043b\u0447\u0438\u043b\u0433\u044d\u044d \u043d\u044c \u043f\u0440\u043e\u0433\u0440\u0430\u043c\u044b\u0433 \u0436\u0438\u0436\u0438\u0433, \u0431\u0438\u0435 \u0434\u0430\u0430\u043d \u0430\u0448\u0438\u0433\u043b\u0430\u0445 \u0431\u043e\u043b\u043e\u043c\u0436\u0442\u043e\u0439 \u04af\u0439\u043b\u0447\u0438\u043b\u0433\u044d\u044d \u0431\u043e\u043b\u0433\u043e\u043d \u0445\u0443\u0432\u0430\u0430\u0434\u0430\u0433. \u04ae\u0439\u043b\u0447\u0438\u043b\u0433\u044d\u044d \u0431\u04af\u0440 \u043d\u044c \u0442\u043e\u0434\u043e\u0440\u0445\u043e\u0439 \u0431\u0438\u0437\u043d\u0435\u0441\u0438\u0439\u043d \u0434\u043e\u043c\u0430\u0439\u043d \u0434\u044d\u044d\u0440 \u0442\u04e9\u0432\u043b\u04e9\u0440\u0434\u04e9\u0433.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">\u0414\u0430\u0432\u0443\u0443 \u0442\u0430\u043b:<br>\u04e8\u0440\u0433\u04e9\u0442\u0433\u04e9\u0445 \u0447\u0430\u0434\u0432\u0430\u0440: \u0411\u0438\u0447\u0438\u043b \u04af\u0439\u043b\u0447\u0438\u043b\u0433\u044d\u044d \u043d\u044c \u0431\u0438\u0435 \u0431\u0438\u0435\u043d\u044d\u044d\u0441\u044d\u044d \u04af\u043b \u0445\u0430\u043c\u0430\u0430\u0440\u0430\u043d \u0431\u0438\u0435 \u0434\u0430\u0430\u0441\u0430\u043d \u0431\u04af\u0440\u044d\u043b\u0434\u044d\u0445\u04af\u04af\u043d \u0445\u044d\u0441\u0433\u04af\u04af\u0434\u0438\u0439\u0433 \u043c\u0430\u0441\u0448\u0442\u0430\u0431\u043b\u0430\u0445 \u0431\u043e\u043b\u043e\u043c\u0436\u0438\u0439\u0433 \u043e\u043b\u0433\u043e\u0434\u043e\u0433.<br>\u0423\u044f\u043d \u0445\u0430\u0442\u0430\u043d \u0431\u0430\u0439\u0434\u0430\u043b: \u0425\u04e9\u0433\u0436\u04af\u04af\u043b\u044d\u0433\u0447\u0438\u0434 \u04af\u0439\u043b\u0447\u0438\u043b\u0433\u044d\u044d \u0442\u0443\u0441 \u0431\u04af\u0440\u0442 \u04e9\u04e9\u0440 \u04e9\u04e9\u0440 \u0442\u0435\u0445\u043d\u043e\u043b\u043e\u0433\u0438 \u0441\u043e\u043d\u0433\u043e\u0445 \u0431\u043e\u043b\u043e\u043c\u0436\u0442\u043e\u0439.<br>\u0422\u0443\u0441\u0433\u0430\u0430\u0440\u043b\u0430\u0445: \u041d\u044d\u0433 \u04af\u0439\u043b\u0447\u0438\u043b\u0433\u044d\u044d\u043d\u0434 \u0433\u0430\u0440\u0441\u0430\u043d \u0430\u043b\u0434\u0430\u0430 \u0431\u0443\u0441\u0430\u0434 \u04af\u0439\u043b\u0447\u0438\u043b\u0433\u044d\u044d\u043d\u0434 \u043d\u04e9\u043b\u04e9\u04e9\u043b\u04e9\u0445\u0433\u04af\u0439.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">\u0411\u044d\u0440\u0445\u0448\u044d\u044d\u043b:<br>\u041d\u0430\u0440\u0438\u0439\u043d \u0442\u04e9\u0432\u04e9\u0433\u0442\u044d\u0439 \u0431\u0430\u0439\u0434\u0430\u043b: \u041e\u043b\u043e\u043d \u04af\u0439\u043b\u0447\u0438\u043b\u0433\u044d\u044d\u0433 \u0443\u0434\u0438\u0440\u0434\u0430\u0445 \u043d\u044c \u043d\u0430\u0439\u0434\u0432\u0430\u0440\u0442\u0430\u0439 \u0437\u043e\u0445\u0438\u043e\u043d \u0431\u0430\u0439\u0433\u0443\u0443\u043b\u0430\u043b\u0442\u044b\u0433 \u0448\u0430\u0430\u0440\u0434\u0434\u0430\u0433.<br>\u0421\u04af\u043b\u0436\u044d\u044d\u043d\u0438\u0439 \u043d\u044d\u043c\u044d\u043b\u0442 \u0437\u0430\u0440\u0434\u0430\u043b: \u04ae\u0439\u043b\u0447\u0438\u043b\u0433\u044d\u044d \u0445\u043e\u043e\u0440\u043e\u043d\u0434\u044b\u043d \u0445\u0430\u0440\u0438\u043b\u0446\u0430\u0430 \u043d\u044c \u0445\u043e\u0446\u0440\u043e\u0433\u0434\u043e\u043b \u04af\u04af\u0441\u0433\u044d\u0434\u044d\u0433.<br>\u0411\u0430\u0439\u0440\u0448\u0443\u0443\u043b\u0430\u0445 \u043d\u0430\u0440\u0438\u0439\u043d \u0442\u04e9\u0432\u04e9\u0433\u0442\u044d\u0439 \u0431\u0430\u0439\u0434\u0430\u043b: \u041e\u043b\u043e\u043d \u04af\u0439\u043b\u0447\u0438\u043b\u0433\u044d\u044d\u043d\u04af\u04af\u0434\u0438\u0439\u043d \u0448\u0438\u043d\u044d\u0447\u043b\u044d\u043b\u0442\u04af\u04af\u0434\u0438\u0439\u0433 \u0437\u043e\u0445\u0438\u0446\u0443\u0443\u043b\u0430\u0445 \u043d\u044c \u0431\u044d\u0440\u0445\u0448\u044d\u044d\u043b\u0442\u044d\u0439 \u0431\u0430\u0439\u0436 \u0431\u043e\u043b\u043d\u043e.<\/p>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h2 class=\"wp-block-heading\">\u041f\u043e\u043b\u0438\u043c\u043e\u0440\u0444\u0438\u0437\u043c \u0433\u044d\u0436 \u044e\u0443 \u0432\u044d?<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">\u0410\u0440\u0433\u044b\u0433 \u0434\u0430\u0440\u0430\u0445:<br>\u0414\u044d\u0434 \u0430\u043d\u0433\u0438 \u043d\u044c \u04e9\u04e9\u0440\u0438\u0439\u043d \u0434\u044d\u044d\u0434 \u0430\u043d\u0433\u0438\u043b\u0430\u043b\u0434 \u0430\u043b\u044c \u0445\u044d\u0434\u0438\u0439\u043d \u0442\u043e\u0434\u043e\u0440\u0445\u043e\u0439\u043b\u0441\u043e\u043d \u0430\u0440\u0433\u044b\u043d \u0442\u043e\u0434\u043e\u0440\u0445\u043e\u0439 \u0445\u044d\u0440\u044d\u0433\u0436\u0438\u043b\u0442\u0438\u0439\u0433 \u0445\u0430\u043d\u0433\u0430\u0445 \u04af\u0435\u0434.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">\u0425\u044d\u0442 \u0430\u0447\u0430\u0430\u043b\u0430\u043b \u04e9\u0433\u04e9\u0445 \u0430\u0440\u0433\u0430:<br>\u0410\u043d\u0433\u0438 \u043d\u044c \u0438\u0436\u0438\u043b \u043d\u044d\u0440\u0442\u044d\u0439 \u0431\u043e\u043b\u043e\u0432\u0447 \u04e9\u04e9\u0440 \u043f\u0430\u0440\u0430\u043c\u0435\u0442\u0440\u0442\u044d\u0439 (\u04e9\u04e9\u0440 \u04e9\u04e9\u0440 \u0442\u043e\u043e \u044d\u0441\u0432\u044d\u043b \u0430\u0440\u0433\u0443\u043c\u0435\u043d\u0442\u0438\u0439\u043d \u0442\u04e9\u0440\u04e9\u043b) \u043e\u043b\u043e\u043d \u0430\u0440\u0433\u0443\u0443\u0434\u0442\u0430\u0439 \u04af\u0435\u0434.<\/p>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h2 class=\"wp-block-heading\">\u0425\u0443\u0432\u0438\u0439\u043d \u0431\u0430\u0440\u0438\u043b\u0433\u0430\u0447\u0434\u044b\u043d \u0437\u043e\u0440\u0438\u043b\u0433\u043e \u044e\u0443 \u0432\u044d?<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">\u0425\u0443\u0432\u0438\u0439\u043d \u0431\u04af\u0442\u044d\u044d\u0433\u0447\u0438\u0434 \u043d\u044c \u0445\u044d\u0440\u044d\u0433\u043b\u044d\u044d\u043d\u0438\u0439 \u0430\u043d\u0433\u0438 \u044d\u0441\u0432\u044d\u043b \u0442\u043e\u0433\u0442\u043c\u043e\u043b \u0430\u043d\u0433\u0438\u0443\u0434\u0430\u0434 \u0430\u0448\u0438\u0433\u043b\u0430\u0433\u0434\u0434\u0430\u0433.<br>\u042d\u0434\u0433\u044d\u044d\u0440 \u0430\u043d\u0433\u0438\u0443\u0434 \u043d\u044c \u0437\u04e9\u0432\u0445\u04e9\u043d \u0441\u0442\u0430\u0442\u0438\u043a \u0430\u0440\u0433\u0443\u0443\u0434 \u044d\u0441\u0432\u044d\u043b \u0433\u0438\u0448\u04af\u04af\u0434\u0438\u0439\u0433 \u0430\u0433\u0443\u0443\u043b\u043d\u0430.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">\u04e8\u0432 \u0437\u0430\u043b\u0433\u0430\u043c\u0436\u043b\u0430\u043b\u0430\u0430\u0441 \u0437\u0430\u0439\u043b\u0441\u0445\u0438\u0439\u0445 (\u0414\u044d\u0434 \u0430\u043d\u0433\u0438\u043b\u043b\u0430\u0430\u0441 \u0437\u0430\u0439\u043b\u0441\u0445\u0438\u0439\u0445)<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">\u0411\u0430\u0440\u0438\u043b\u0433\u044b\u043d \u0442\u04e9\u043b\u04e9\u04e9\u043b\u04e9\u0433\u0447:<br>\u0425\u0443\u0432\u0438\u0439\u043d \u0431\u0430\u0440\u0438\u043b\u0433\u0430\u0447\u0438\u0434 \u043d\u044c \u0442\u043e\u0434\u043e\u0440\u0445\u043e\u0439 \u0431\u04af\u0442\u044d\u044d\u0433\u0447\u0438\u0434 \u043d\u0438\u0439\u0442\u043b\u044d\u0433 \u0445\u0443\u0432\u0438\u0439\u043d \u0431\u04af\u0442\u044d\u044d\u0433\u0447\u0438\u0439\u0433 \u0434\u0443\u0443\u0434\u0434\u0430\u0433 \u0431\u0430\u0440\u0438\u043b\u0433\u0430\u0447\u0434\u044b\u043d \u0442\u04e9\u043b\u04e9\u04e9\u043b\u043b\u0438\u0439\u0433 \u0437\u04e9\u0432\u0448\u04e9\u04e9\u0440\u0434\u04e9\u0433.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Singleton \u0437\u0430\u0433\u0432\u0430\u0440<\/p>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h2 class=\"wp-block-heading\">JVM-\u0438\u0439\u043d \u0445\u0443\u0432\u044c\u0434<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">\u042d\u043c\u0445\u044d\u0442\u0433\u044d\u043b:<br>\u0422\u0430\u043d\u044b\u0433 .java \u0444\u0430\u0439\u043b\u044b\u0433 \u0445\u04e9\u0440\u0432\u04af\u04af\u043b\u044d\u0445\u044d\u0434 Java \u0445\u04e9\u0440\u0432\u04af\u04af\u043b\u044d\u0433\u0447 \u043d\u044c \u0431\u0430\u0439\u0442 \u043a\u043e\u0434 (\u0437\u0430\u0432\u0441\u0440\u044b\u043d \u0442\u04e9\u043b\u04e9\u04e9\u043b\u04e9\u043b) \u0430\u0433\u0443\u0443\u043b\u0441\u0430\u043d .class \u0444\u0430\u0439\u043b\u0443\u0443\u0434\u044b\u0433 \u04af\u04af\u0441\u0433\u044d\u0434\u044d\u0433.<br>\u0411\u0430\u0439\u0442\u043a\u043e\u0434 \u043d\u044c \u043f\u043b\u0430\u0442\u0444\u043e\u0440\u043c\u043e\u043e\u0441 \u0445\u0430\u043c\u0430\u0430\u0440\u0430\u043b\u0433\u04af\u0439 \u0431\u04e9\u0433\u04e9\u04e9\u0434 \u0442\u043e\u0445\u0438\u0440\u043e\u0445 JVM-\u0442\u044d\u0439 \u044f\u043c\u0430\u0440 \u0447 \u0441\u0438\u0441\u0442\u0435\u043c \u0434\u044d\u044d\u0440 \u0430\u0436\u0438\u043b\u043b\u0430\u0445 \u0431\u043e\u043b\u043e\u043c\u0436\u0442\u043e\u0439.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">\u0410\u043d\u0433\u0438 \u0430\u0447\u0438\u0433\u0447\u0438\u0439\u043d \u0434\u044d\u0434 \u0441\u0438\u0441\u0442\u0435\u043c:<br>\u0410\u043d\u0433\u0438\u0443\u0434\u044b\u0433 \u0441\u0430\u043d\u0430\u0445 \u043e\u0439\u0434 \u0430\u0447\u0430\u0430\u043b\u0430\u0445 \u04af\u04af\u0440\u044d\u0433\u0442\u044d\u0439.<br>\u042d\u043d\u044d \u043d\u044c .class \u0444\u0430\u0439\u043b\u0443\u0443\u0434\u044b\u0433 \u0443\u043d\u0448\u0438\u0436, \u0445\u043e\u0451\u0440\u0442\u044b\u043d \u04e9\u0433\u04e9\u0433\u0434\u04e9\u043b \u04af\u04af\u0441\u0433\u044d\u0436, \u0430\u0440\u0433\u044b\u043d \u0442\u0430\u043b\u0431\u0430\u0440\u0442 \u0445\u0430\u0434\u0433\u0430\u043b\u0434\u0430\u0433.<br>\u0411\u04e9\u04e9\u043d \u0441\u0430\u043d\u0430\u0445 \u043e\u0439\u0434 \u0430\u0447\u0430\u0430\u043b\u0430\u0433\u0434\u0441\u0430\u043d \u043a\u043b\u0430\u0441\u0441\u044b\u0433 \u0442\u04e9\u043b\u04e9\u04e9\u043b\u04e9\u0445 Class \u043e\u0431\u044a\u0435\u043a\u0442\u044b\u0433 \u04af\u04af\u0441\u0433\u044d\u043d\u044d.<\/p>\n\n\n<div class=\"wp-block-code\">\n\t<div class=\"cm-editor\">\n\t\t<div class=\"cm-scroller\">\n\t\t\t\n<pre>\n<code><div class=\"cm-line\">Example: <\/div><div class=\"cm-line\">Student s1 = new Student(); <\/div><div class=\"cm-line\">Class c1 = s1.getClass();<\/div><\/code><\/pre>\n\t\t<\/div>\n\t<\/div>\n<\/div>\n\n\n<p class=\"wp-block-paragraph\">\u0425\u043e\u043b\u0431\u043e\u043e\u0441\u0443\u0443\u0434:<br>\u042d\u043d\u044d \u043d\u044c \u0433\u0443\u0440\u0432\u0430\u043d \u0430\u043b\u0445\u0430\u043c\u0430\u0430\u0441 \u0431\u04af\u0440\u0434\u044d\u043d\u044d:<br>\u0411\u0430\u0442\u0430\u043b\u0433\u0430\u0430\u0436\u0443\u0443\u043b\u0430\u0445: .class \u0444\u0430\u0439\u043b\u044b\u043d \u0437\u04e9\u0432 \u044d\u0441\u044d\u0445\u0438\u0439\u0433 \u0448\u0430\u043b\u0433\u0430\u043d\u0430.<br>\u0411\u044d\u043b\u0442\u0433\u044d\u043b \u0430\u0436\u0438\u043b: \u0410\u043d\u0433\u0438\u0439\u043d \u0445\u0443\u0432\u044c\u0441\u0430\u0433\u0447\u0438\u0434 \u0431\u043e\u043b\u043e\u043d \u0442\u044d\u0434\u0433\u044d\u044d\u0440\u0438\u0439\u0433 \u044d\u0445\u043b\u04af\u04af\u043b\u044d\u0445\u044d\u0434 \u0437\u043e\u0440\u0438\u0443\u043b\u0441\u0430\u043d \u0445\u0430\u0436\u0443\u0443\u0433\u0438\u0439\u043d \u0441\u0430\u043d\u0430\u0445 \u043e\u0439\u0434 \u0437\u043e\u0440\u0438\u0443\u043b\u0430\u0433\u0434\u0441\u0430\u043d.<br>\u0428\u0438\u0439\u0434\u0432\u044d\u0440\u043b\u044d\u0445 \u0447\u0430\u0434\u0432\u0430\u0440 (\u0437\u0430\u0430\u0432\u0430\u043b \u0431\u0438\u0448): \u0411\u0443\u0441\u0430\u0434 \u0430\u043d\u0433\u0438 \u044d\u0441\u0432\u044d\u043b \u0430\u0440\u0433\u0443\u0443\u0434\u044b\u043d \u0441\u0438\u043c\u0431\u043e\u043b\u044b\u043d \u043b\u0430\u0432\u043b\u0430\u0433\u0430\u0430\u0433 \u0448\u0438\u0439\u0434\u0434\u044d\u0433.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">\u042d\u0445\u043b\u04af\u04af\u043b\u044d\u0445:<br>\u0421\u0442\u0430\u0442\u0438\u043a \u044d\u0445\u043b\u04af\u04af\u043b\u044d\u0433\u0447\u0438\u0439\u0433 (\u0436\u0438\u0448\u044d\u044d \u043d\u044c \u0441\u0442\u0430\u0442\u0438\u043a \u0431\u043b\u043e\u043a) \u0430\u0436\u0438\u043b\u043b\u0443\u0443\u043b\u0436, \u0441\u0442\u0430\u0442\u0438\u043a \u0445\u0443\u0432\u044c\u0441\u0430\u0433\u0447\u0434\u044b\u0433 \u044d\u0445\u043b\u04af\u04af\u043b\u043d\u044d.<br>\u041e\u0431\u044a\u0435\u043a\u0442\u044b\u0433 \u04af\u04af\u0441\u0433\u044d\u0445 \u04af\u0435\u0434 \u0436\u0438\u0448\u044d\u044d \u0445\u0443\u0432\u044c\u0441\u0430\u0433\u0447\u0438\u0439\u0433 \u044d\u0445\u043b\u04af\u04af\u043b\u0434\u044d\u0433.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">\u0413\u04af\u0439\u0446\u044d\u0442\u0433\u044d\u0445 \u0445\u04e9\u0434\u04e9\u043b\u0433\u04af\u04af\u0440:<br>\u0411\u0430\u0439\u0442 \u043a\u043e\u0434\u044b\u0433 \u043c\u0430\u0448\u0438\u043d\u044b \u043a\u043e\u0434 \u0431\u043e\u043b\u0433\u043e\u043d \u0445\u0443\u0432\u0438\u0440\u0433\u0430\u0434\u0430\u0433.<br>\u0413\u04af\u0439\u0446\u044d\u0442\u0433\u044d\u043b\u0438\u0439\u0433 \u043e\u043d\u043e\u0432\u0447\u0442\u043e\u0439 \u0431\u043e\u043b\u0433\u043e\u0445\u043e\u0434 \u0437\u043e\u0440\u0438\u0443\u043b\u0430\u0433\u0434\u0441\u0430\u043d Just-In-Time (JIT) \u044d\u043c\u0445\u044d\u0442\u0433\u044d\u043b\u0438\u0439\u0433 \u0431\u0430\u0433\u0442\u0430\u0430\u0441\u0430\u043d \u0431\u043e\u043b\u043d\u043e.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">\u0422\u043e\u0432\u0447\u0445\u043e\u043d\u0434\u043e\u043e, JVM \u043d\u044c \u0431\u0430\u0439\u0442 \u043a\u043e\u0434\u044b\u0433 \u0442\u0430\u0439\u043b\u0431\u0430\u0440\u043b\u0430\u0445, \u0441\u0430\u043d\u0430\u0445 \u043e\u0439\u0433 \u0443\u0434\u0438\u0440\u0434\u0430\u0445 \u0437\u0430\u043c\u0430\u0430\u0440 Java \u043f\u0440\u043e\u0433\u0440\u0430\u043c\u0443\u0443\u0434\u044b\u0433 \u0445\u0430\u0430\u043d\u0430 \u0447 \u0430\u0436\u0438\u043b\u043b\u0443\u0443\u043b\u0430\u0445 \u0431\u043e\u043b\u043e\u043c\u0436\u0438\u0439\u0433 \u043e\u043b\u0433\u043e\u0434\u043e\u0433.<\/p>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h2 class=\"wp-block-heading\">\u0425\u0443\u0432\u0438\u0439\u043d \u0445\u0438\u0439\u0441\u0432\u044d\u0440 \u0430\u0440\u0433\u0430 \u0433\u044d\u0436 \u044e\u0443 \u0432\u044d?<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">\u0425\u0438\u0439\u0441\u0432\u044d\u0440 \u0430\u043d\u0433\u0438\u0443\u0434\u0430\u0434 \u0445\u0443\u0432\u0438\u0439\u043d \u0430\u0440\u0433\u0443\u0443\u0434\u044b\u043d \u0445\u0443\u0432\u044c\u0434 \u043a\u0435\u0439\u0441 \u0430\u0448\u0438\u0433\u043b\u0430\u0445:<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">\u0425\u044d\u0434\u0438\u0439\u0433\u044d\u044d\u0440 \u0445\u0438\u0439\u0441\u0432\u044d\u0440 \u0430\u0440\u0433\u0443\u0443\u0434 \u043d\u044c \u0445\u0443\u0432\u0438\u0439\u043d \u0431\u0430\u0439\u0436 \u0447\u0430\u0434\u0430\u0445\u0433\u04af\u0439 \u0447 \u0442\u0430 \u0445\u0438\u0439\u0441\u0432\u044d\u0440 \u0430\u043d\u0433\u0438\u0434 \u0445\u0443\u0432\u0438\u0439\u043d \u0430\u0440\u0433\u0443\u0443\u0434\u044b\u0433 \u044f\u043d\u0437 \u0431\u04af\u0440\u0438\u0439\u043d \u0437\u043e\u0440\u0438\u043b\u0433\u043e\u043e\u0440 \u0430\u0448\u0438\u0433\u043b\u0430\u0436 \u0431\u043e\u043b\u043d\u043e.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">\u0422\u0443\u0441\u043b\u0430\u0445 \u0430\u0440\u0433\u0443\u0443\u0434: \u0411\u0443\u0441\u0430\u0434 \u0430\u0440\u0433\u0443\u0443\u0434\u044b\u043d \u0445\u0443\u0432\u0430\u0430\u043b\u0446\u0434\u0430\u0433 \u043d\u0438\u0439\u0442\u043b\u044d\u0433 \u0444\u0443\u043d\u043a\u0446\u0438\u0439\u0433 \u0445\u044d\u0440\u044d\u0433\u0436\u04af\u04af\u043b\u044d\u0445.<br>Encapsulation: \u0414\u044d\u0434 \u0430\u043d\u0433\u0438\u0430\u0441 \u0445\u044d\u0440\u044d\u0433\u0436\u04af\u04af\u043b\u044d\u0445 \u0434\u044d\u043b\u0433\u044d\u0440\u044d\u043d\u0433\u04af\u0439 \u043c\u044d\u0434\u044d\u044d\u043b\u043b\u0438\u0439\u0433 \u043d\u0443\u0443\u0445.<br>\u0411\u04af\u0442\u044d\u0446\u0442\u044d\u0439 \u0442\u04e9\u0441\u0442\u044d\u0439 \u0430\u043d\u0433\u0438\u0443\u0434: \u04e8\u0433\u04e9\u0433\u0434\u043b\u0438\u0439\u043d \u0430\u0433\u0443\u0443\u043b\u0430\u0445 \u04af\u04af\u0440\u044d\u0433 \u0433\u04af\u0439\u0446\u044d\u0442\u0433\u044d\u0434\u044d\u0433 \u0445\u0443\u0432\u0438\u0439\u043d \u0430\u0440\u0433\u0443\u0443\u0434\u0442\u0430\u0439 \u0436\u0438\u0436\u0438\u0433 \u0430\u043d\u0433\u0438\u0443\u0434\u044b\u0433 \u04af\u04af\u0441\u0433\u044d<\/p>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h2 class=\"wp-block-heading\">\u0425\u043e\u0433 \u0446\u0443\u0433\u043b\u0443\u0443\u043b\u0430\u0433\u0447 \u0433\u044d\u0436 \u044e\u0443 \u0432\u044d?<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">\u0411\u04e9\u04e9\u043d \u0441\u0430\u043d\u0430\u0445 \u043e\u0439:<br>Java \u043e\u0431\u044a\u0435\u043a\u0442\u0443\u0443\u0434 \u043d\u044c \u0441\u0430\u043d\u0430\u0445 \u043e\u0439\u043d \u0442\u0443\u0441\u0433\u0430\u0439\u043b\u0430\u043d \u0445\u0443\u0432\u0430\u0430\u0440\u0438\u043b\u0430\u0433\u0434\u0441\u0430\u043d \u0441\u0430\u043d\u0430\u0445 \u043e\u0439\u0434 \u0431\u04af\u0442\u044d\u044d\u0433\u0434\u0434\u044d\u0433.<br>\u0417\u0430\u0440\u0438\u043c \u043e\u0431\u044a\u0435\u043a\u0442 \u0430\u0448\u0438\u0433\u043b\u0430\u0445 \u0431\u043e\u043b\u043e\u043c\u0436\u0433\u04af\u0439 \u0431\u043e\u043b\u043d\u043e (\u043f\u0440\u043e\u0433\u0440\u0430\u043c\u044b\u043d \u043b\u0430\u0432\u043b\u0430\u0445\u0430\u0430 \u0431\u043e\u043b\u044c\u0441\u043e\u043d).<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">\u0425\u043e\u0433 \u0446\u0443\u0433\u043b\u0443\u0443\u043b\u0430\u0433\u0447 (GC):<br>GC \u043d\u044c \u0441\u0430\u043d\u0430\u0445 \u043e\u0439\u0433 \u0447\u04e9\u043b\u04e9\u04e9\u043b\u04e9\u0445\u0438\u0439\u043d \u0442\u0443\u043b\u0434 \u0430\u0448\u0438\u0433\u043b\u0430\u0433\u0434\u0430\u0430\u0433\u04af\u0439 \u043e\u0431\u044a\u0435\u043a\u0442\u0443\u0443\u0434\u044b\u0433 \u0442\u043e\u0434\u043e\u0440\u0445\u043e\u0439\u043b\u0436 \u0443\u0441\u0442\u0433\u0430\u0434\u0430\u0433.<br>\u042d\u043d\u044d \u043d\u044c \u0430\u0440\u0434 \u0430\u0432\u0442\u043e\u043c\u0430\u0442\u0430\u0430\u0440 \u0430\u0436\u0438\u043b\u043b\u0430\u0434\u0430\u0433.<br>\u0425\u043e\u0451\u0440 \u0442\u04e9\u0440\u04e9\u043b:<br>\u0411\u0430\u0433\u0430 GC: \u0417\u0430\u043b\u0443\u0443 \u04af\u0435\u0438\u0439\u043d\u0445\u044d\u043d\u0434 \u0431\u043e\u043b\u043e\u043c\u0436\u0433\u04af\u0439 \u043e\u0431\u044a\u0435\u043a\u0442\u0443\u0443\u0434\u044b\u0433 \u0443\u0441\u0442\u0433\u0430\u043d\u0430.<br>\u04ae\u043d\u0434\u0441\u044d\u043d GC (\u0411\u04af\u0440\u044d\u043d GC): \u0425\u0443\u0443\u0447\u0438\u043d \u04af\u0435\u0438\u0439\u043d \u043e\u0431\u044a\u0435\u043a\u0442\u0443\u0443\u0434\u044b\u0433 \u0430\u0440\u0438\u043b\u0433\u0430\u043d\u0430.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">\u0410\u0448\u0438\u0433 \u0442\u0443\u0441:<br>\u0425\u04e9\u0433\u0436\u04af\u04af\u043b\u044d\u0433\u0447\u0438\u0434 \u043e\u0431\u044a\u0435\u043a\u0442\u0443\u0443\u0434\u044b\u0433 \u0433\u0430\u0440\u0430\u0430\u0440 \u0443\u0441\u0442\u0433\u0430\u0445 \u0448\u0430\u0430\u0440\u0434\u043b\u0430\u0433\u0430\u0433\u04af\u0439.<br>GC \u043d\u044c \u0441\u0430\u043d\u0430\u0445 \u043e\u0439\u043d \u0431\u044d\u043b\u044d\u043d \u0431\u0430\u0439\u0434\u043b\u044b\u0433 \u0431\u0430\u0442\u0430\u043b\u0433\u0430\u0430\u0436\u0443\u0443\u043b\u0436, OutOfMemoryErrors-\u0430\u0430\u0441 \u0441\u044d\u0440\u0433\u0438\u0439\u043b\u0434\u044d\u0433.<\/p>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h2 class=\"wp-block-heading\">OOP \u0433\u044d\u0436 \u044e\u0443 \u0432\u044d?<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">OOP-\u0438\u0439\u043d \u0434\u04e9\u0440\u0432\u04e9\u043d \u0437\u0430\u0440\u0447\u0438\u043c:<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Encapsulation: \u0425\u044d\u0440\u044d\u0433\u0436\u0438\u043b\u0442\u0438\u0439\u043d \u043d\u0430\u0440\u0438\u0439\u043d \u0448\u0438\u0440\u0438\u0439\u043d\u0438\u0439\u0433 \u043d\u0443\u0443\u0436, \u0446\u044d\u0432\u044d\u0440 \u0438\u043d\u0442\u0435\u0440\u0444\u044d\u0439\u0441\u0438\u0439\u0433 \u0445\u0430\u043d\u0433\u0430\u0445\u044b\u043d \u0442\u0443\u043b\u0434 \u04e9\u0433\u04e9\u0433\u0434\u04e9\u043b (\u0448\u0438\u043d\u0436 \u0447\u0430\u043d\u0430\u0440) \u0431\u043e\u043b\u043e\u043d \u0430\u0440\u0433\u0430 (\u0444\u0443\u043d\u043a\u0446)-\u044b\u0433 \u0430\u043d\u0433\u0438\u0434 \u043d\u044d\u0433\u0442\u0433\u044d\u0445.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">\u04e8\u0432 \u0437\u0430\u043b\u0433\u0430\u043c\u0436\u043b\u0430\u043b: \u041e\u0434\u043e\u043e \u0431\u0430\u0439\u0433\u0430\u0430 \u0430\u043d\u0433\u0438\u0443\u0434 \u0434\u044d\u044d\u0440 \u04af\u043d\u0434\u044d\u0441\u043b\u044d\u043d \u0448\u0438\u043d\u044d \u0430\u043d\u0433\u0438 \u04af\u04af\u0441\u0433\u044d\u0445, \u0442\u044d\u0434\u0433\u044d\u044d\u0440\u0438\u0439\u043d \u0448\u0438\u043d\u0436 \u0447\u0430\u043d\u0430\u0440, \u0437\u0430\u043d \u0442\u04e9\u043b\u04e9\u0432\u0438\u0439\u0433 \u04e9\u0432\u043b\u04e9\u043d \u0430\u0432\u0430\u0445. \u042d\u043d\u044d \u043d\u044c \u043a\u043e\u0434\u044b\u0433 \u0434\u0430\u0445\u0438\u043d \u0430\u0448\u0438\u0433\u043b\u0430\u0445\u044b\u0433 \u0434\u044d\u043c\u0436\u0434\u044d\u0433.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">\u041f\u043e\u043b\u0438\u043c\u043e\u0440\u0444\u0438\u0437\u043c: \u042f\u043d\u0437 \u0431\u04af\u0440\u0438\u0439\u043d \u0430\u043d\u0433\u0438\u043b\u043b\u044b\u043d \u043e\u0431\u044a\u0435\u043a\u0442\u0443\u0443\u0434\u044b\u0433 \u043d\u0438\u0439\u0442\u043b\u044d\u0433 \u0438\u043d\u0442\u0435\u0440\u0444\u044d\u0439\u0441\u044d\u044d\u0440 \u0438\u0436\u0438\u043b \u0430\u0440\u0433\u0430\u0430\u0440 \u0430\u0448\u0438\u0433\u043b\u0430\u0445\u044b\u0433 \u0437\u04e9\u0432\u0448\u04e9\u04e9\u0440\u0434\u04e9\u0433. \u042d\u043d\u044d \u043d\u044c \u0443\u044f\u043d \u0445\u0430\u0442\u0430\u043d \u0431\u0430\u0439\u0434\u043b\u044b\u0433 \u04e9\u0433\u0447, \u0441\u0438\u0441\u0442\u0435\u043c\u0438\u0439\u0433 \u04e9\u0440\u0433\u04e9\u0436\u04af\u04af\u043b\u044d\u0445\u044d\u0434 \u0445\u044f\u043b\u0431\u0430\u0440 \u0431\u043e\u043b\u0433\u043e\u0434\u043e\u0433 (\u04e9\u0440\u0433\u04e9\u0442\u0433\u04e9\u0445 \u0447\u0430\u0434\u0432\u0430\u0440).<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">\u0425\u0438\u0439\u0441\u0432\u044d\u0440\u043b\u044d\u043b: \u0428\u0430\u0430\u0440\u0434\u043b\u0430\u0433\u0430\u0433\u04af\u0439 \u043d\u0430\u0440\u0438\u0439\u043d \u0442\u04e9\u0432\u04e9\u0433\u0442\u044d\u0439 \u0431\u0430\u0439\u0434\u043b\u044b\u0433 \u043d\u0443\u0443\u0445\u044b\u043d \u0437\u044d\u0440\u044d\u0433\u0446\u044d\u044d \u0447\u0443\u0445\u0430\u043b \u0448\u0438\u043d\u0436 \u0447\u0430\u043d\u0430\u0440\u0443\u0443\u0434 \u0434\u044d\u044d\u0440 \u0430\u043d\u0445\u0430\u0430\u0440\u043b\u0430\u0430 \u0442\u04e9\u0432\u043b\u04e9\u0440\u04af\u04af\u043b\u044d\u0445. \u0425\u0438\u0439\u0441\u0432\u044d\u0440\u043b\u044d\u043b \u043d\u044c \u0434\u0438\u0437\u0430\u0439\u043d\u044b\u0433 \u0445\u044f\u043b\u0431\u0430\u0440\u0447\u0438\u043b\u0436, \u0437\u0430\u0441\u0432\u0430\u0440 \u04af\u0439\u043b\u0447\u0438\u043b\u0433\u044d\u044d, \u0443\u0434\u0438\u0440\u0434\u0430\u0445\u0430\u0434 \u0445\u044f\u043b\u0431\u0430\u0440 \u0431\u043e\u043b\u0433\u043e\u0434\u043e\u0433.<\/p>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h2 class=\"wp-block-heading\">ACID-\u0438\u0439\u043d \u0448\u0438\u043d\u0436 \u0447\u0430\u043d\u0430\u0440\u0443\u0443\u0434 \u043d\u044c \u0433\u04af\u0439\u043b\u0433\u044d\u044d\u043d\u0438\u0439 \u043d\u0430\u0439\u0434\u0432\u0430\u0440\u0442\u0430\u0439, \u0442\u043e\u0433\u0442\u0432\u043e\u0440\u0442\u043e\u0439 \u0431\u0430\u0439\u0434\u043b\u044b\u0433 \u0445\u0430\u043d\u0433\u0430\u0445\u0430\u0434 \u0433\u043e\u043b \u04af\u04af\u0440\u044d\u0433 \u0433\u04af\u0439\u0446\u044d\u0442\u0433\u044d\u0434\u044d\u0433.<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">\u0410\u0442\u043e\u043c \u0447\u0430\u043d\u0430\u0440:<br>\u0413\u04af\u0439\u043b\u0433\u044d\u044d \u043d\u044c \u0431\u04af\u0440\u044d\u043d \u0433\u04af\u0439\u0446\u044d\u0434 \u0445\u0438\u0439\u0433\u0434\u0441\u044d\u043d \u044d\u0441\u0432\u044d\u043b \u043e\u0433\u0442 \u0445\u0438\u0439\u0433\u0434\u0434\u044d\u0433\u0433\u04af\u0439.<br>\u0425\u044d\u0441\u044d\u0433\u0447\u0438\u043b\u0441\u044d\u043d \u04af\u04af\u0440\u044d\u0433 \u0445\u0430\u0440\u0438\u0443\u0446\u043b\u0430\u0433\u0430 \u0431\u0430\u0439\u0445\u0433\u04af\u0439: \u0445\u044d\u0440\u044d\u0432 \u0433\u04af\u0439\u043b\u0433\u044d\u044d \u0434\u0443\u043d\u0434\u0443\u0443\u0440 \u0431\u04af\u0442\u044d\u043b\u0433\u04af\u0439\u0442\u0432\u044d\u043b \u043c\u044d\u0434\u044d\u044d\u043b\u043b\u0438\u0439\u043d \u0441\u0430\u043d\u0434 \u0445\u0438\u0439\u0441\u044d\u043d \u0431\u04af\u0445 \u04e9\u04e9\u0440\u0447\u043b\u04e9\u043b\u0442\u0438\u0439\u0433 \u0431\u0443\u0446\u0430\u0430\u043d\u0430.<br>\u0416\u0438\u0448\u044d\u044d: X \u0434\u0430\u043d\u0441\u043d\u0430\u0430\u0441 Y \u0434\u0430\u043d\u0441 \u0440\u0443\u0443 100 \u0434\u043e\u043b\u043b\u0430\u0440 \u0448\u0438\u043b\u0436\u04af\u04af\u043b\u044d\u0445\u0438\u0439\u0433 \u0430\u0432\u0447 \u04af\u0437\u044c\u0435. \u0425\u044d\u0440\u044d\u0432 X \u0434\u0430\u043d\u0441\u043d\u0430\u0430\u0441 \u043c\u04e9\u043d\u0433\u04e9 \u0445\u0430\u0441\u0430\u0433\u0434\u0441\u0430\u043d \u0447 Y \u0434\u0430\u043d\u0441\u0430\u043d\u0434 \u043d\u044d\u043c\u044d\u0433\u0434\u044d\u0445\u044d\u044d\u0441 \u04e9\u043c\u043d\u04e9 \u0433\u04af\u0439\u043b\u0433\u044d\u044d \u0431\u04af\u0442\u044d\u043b\u0433\u04af\u0439\u0442\u0432\u044d\u043b \u043c\u044d\u0434\u044d\u044d\u043b\u043b\u0438\u0439\u043d \u0441\u0430\u043d \u0442\u043e\u0433\u0442\u0432\u043e\u0440\u0442\u043e\u0439 \u0431\u0430\u0439\u043d\u0430.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">\u0422\u043e\u0445\u0438\u0440\u043e\u043c\u0436\u0442\u043e\u0439 \u0431\u0430\u0439\u0434\u0430\u043b:<br>\u041c\u044d\u0434\u044d\u044d\u043b\u043b\u0438\u0439\u043d \u0441\u0430\u043d \u043d\u044c \u0433\u04af\u0439\u043b\u0433\u044d\u044d \u0445\u0438\u0439\u0445\u044d\u044d\u0441 \u04e9\u043c\u043d\u04e9 \u0431\u043e\u043b\u043e\u043d \u0434\u0430\u0440\u0430\u0430 \u043d\u044c \u04e9\u04e9\u0440\u0438\u0439\u043d \u0431\u04af\u0440\u044d\u043d \u0431\u04af\u0442\u044d\u043d \u0431\u0430\u0439\u0434\u043b\u044b\u043d \u0445\u044f\u0437\u0433\u0430\u0430\u0440\u043b\u0430\u043b\u0442\u044b\u0433 \u0445\u0430\u0434\u0433\u0430\u043b\u0430\u0445 \u0451\u0441\u0442\u043e\u0439.<br>\u0416\u0438\u0448\u044d\u044d: \u0425\u044d\u0440\u044d\u0432 \u0433\u04af\u0439\u043b\u0433\u044d\u044d \u0445\u0438\u0439\u0445\u044d\u044d\u0441 \u04e9\u043c\u043d\u04e9\u0445 \u043d\u0438\u0439\u0442 \u0434\u04af\u043d 700 \u0434\u043e\u043b\u043b\u0430\u0440 (X: 500 \u0434\u043e\u043b\u043b\u0430\u0440, \u04ae: 200 \u0434\u043e\u043b\u043b\u0430\u0440) \u0431\u0430\u0439\u0432\u0430\u043b \u0433\u04af\u0439\u043b\u0433\u044d\u044d\u043d\u0438\u0439 \u0434\u0430\u0440\u0430\u0430 \u0438\u0436\u0438\u043b \u0445\u044d\u0432\u044d\u044d\u0440 \u0431\u0430\u0439\u0445 \u0451\u0441\u0442\u043e\u0439 (X: 400 \u0434\u043e\u043b\u043b\u0430\u0440, Y: 300 \u0434\u043e\u043b\u043b\u0430\u0440).<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">\u0422\u0443\u0441\u0433\u0430\u0430\u0440\u043b\u0430\u043b\u0442:<br>\u0425\u044d\u0434 \u0445\u044d\u0434\u044d\u043d \u0433\u04af\u0439\u043b\u0433\u044d\u044d \u043d\u044c \u0431\u0438\u0435 \u0431\u0438\u0435\u0434\u044d\u044d \u043d\u04e9\u043b\u04e9\u04e9\u043b\u04e9\u0445\u0433\u04af\u0439\u0433\u044d\u044d\u0440 \u043d\u044d\u0433\u044d\u043d \u0437\u044d\u0440\u044d\u0433 \u044f\u0432\u0430\u0433\u0434\u0430\u0445 \u0431\u043e\u043b\u043e\u043c\u0436\u0442\u043e\u0439.<br>\u041d\u044d\u0433 \u0433\u04af\u0439\u043b\u0433\u044d\u044d\u0433\u044d\u044d\u0440 \u0445\u0438\u0439\u0441\u044d\u043d \u04e9\u04e9\u0440\u0447\u043b\u04e9\u043b\u0442\u0438\u0439\u0433 \u0445\u0438\u0439\u0445 \u0445\u04af\u0440\u0442\u044d\u043b \u0431\u0443\u0441\u0434\u0430\u0434 \u0445\u0430\u0440\u0430\u0433\u0434\u0430\u0445\u0433\u04af\u0439.<br>\u0413\u04af\u0439\u043b\u0433\u044d\u044d\u0433 \u0434\u0430\u0440\u0430\u0430\u043b\u0430\u043d \u0433\u04af\u0439\u0446\u044d\u0442\u0433\u044d\u0441\u044d\u043d\u0442\u044d\u0439 \u0434\u04af\u0439\u0446\u044d\u0445\u04af\u0439\u0446 \u04af\u0440 \u0434\u04af\u043d \u0431\u0430\u0442\u0430\u043b\u0433\u0430\u0430\u0442\u0430\u0439 \u0431\u043e\u043b\u043d\u043e.<br>\u0416\u0438\u0448\u044d\u044d: \u0413\u04af\u0439\u043b\u0433\u044d\u044d\u043d\u0438\u0439 \u0442\u0443\u0441\u0433\u0430\u0430\u0440\u043b\u0430\u043b\u0442 \u043d\u044c \u0445\u0430\u0440\u0438\u043b\u0446\u0430\u043d \u0443\u044f\u043b\u0434\u0430\u0430\u0442\u0430\u0439 \u04af\u0439\u043b\u0434\u043b\u04af\u04af\u0434\u0438\u0439\u043d \u0443\u043b\u043c\u0430\u0430\u0441 \u04af\u04af\u0441\u0441\u044d\u043d \u04af\u043b \u043d\u0438\u0439\u0446\u044d\u0445 \u0442\u04e9\u043b\u04e9\u0432 \u0431\u0430\u0439\u0434\u043b\u0430\u0430\u0441 \u0441\u044d\u0440\u0433\u0438\u0439\u043b\u0434\u044d\u0433.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">\u0411\u0430\u0442 \u0431\u04e9\u0445 \u0447\u0430\u043d\u0430\u0440:<br>\u0413\u04af\u0439\u043b\u0433\u044d\u044d \u0445\u0438\u0439\u0433\u0434\u0441\u044d\u043d\u0438\u0439 \u0434\u0430\u0440\u0430\u0430 \u0442\u04af\u04af\u043d\u0438\u0439 \u04e9\u04e9\u0440\u0447\u043b\u04e9\u043b\u0442\u04af\u04af\u0434 \u0431\u0430\u0439\u043d\u0433\u044b\u043d \u0431\u043e\u043b\u0434\u043e\u0433.<br>\u0421\u0438\u0441\u0442\u0435\u043c\u0438\u0439\u043d \u0434\u043e\u0433\u043e\u043b\u0434\u043e\u043b \u044d\u0441\u0432\u044d\u043b \u044d\u0432\u0434\u0440\u044d\u043b\u0438\u0439\u0433 \u0434\u0430\u0432\u0430\u043d \u0442\u0443\u0443\u043b\u0430\u0445 \u04e9\u04e9\u0440\u0447\u043b\u04e9\u043b\u0442\u04af\u04af\u0434.<br>\u0423\u0440\u0442 \u0445\u0443\u0433\u0430\u0446\u0430\u0430\u043d\u044b \u04e9\u0433\u04e9\u0433\u0434\u04e9\u043b \u0445\u0430\u0434\u0433\u0430\u043b\u0430\u0445 \u0431\u0430\u0442\u0430\u043b\u0433\u0430\u0430\u0442\u0430\u0439.<br>\u0416\u0438\u0448\u044d\u044d: \u0421\u0438\u0441\u0442\u0435\u043c\u0438\u0439\u0433 \u0434\u0430\u0445\u0438\u043d \u044d\u0445\u043b\u04af\u04af\u043b\u0441\u043d\u0438\u0439 \u0434\u0430\u0440\u0430\u0430 \u0445\u0438\u0439\u0441\u044d\u043d \u04e9\u04e9\u0440\u0447\u043b\u04e9\u043b\u0442\u04af\u04af\u0434 \u0445\u0430\u0434\u0433\u0430\u043b\u0430\u0433\u0434\u0441\u0430\u043d \u0445\u044d\u0432\u044d\u044d\u0440 \u0431\u0430\u0439\u043d\u0430.<br>ACID \u0448\u0438\u043d\u0436 \u0447\u0430\u043d\u0430\u0440\u0443\u0443\u0434 \u043d\u044c \u043c\u044d\u0434\u044d\u044d\u043b\u043b\u0438\u0439\u043d \u0441\u0430\u043d\u0433\u0438\u0439\u043d \u043d\u0430\u0439\u0434\u0432\u0430\u0440\u0442\u0430\u0439, \u0442\u043e\u0433\u0442\u0432\u043e\u0440\u0442\u043e\u0439 \u04af\u0439\u043b \u0430\u0436\u0438\u043b\u043b\u0430\u0433\u0430\u0430\u043d\u044b \u04af\u043d\u0434\u044d\u0441 \u0441\u0443\u0443\u0440\u0438\u0439\u0433 \u0431\u04af\u0440\u0434\u04af\u04af\u043b\u0434\u044d\u0433 \u0433\u044d\u0434\u0433\u0438\u0439\u0433 \u0441\u0430\u043d\u0430\u0430\u0440\u0430\u0439!<\/p>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h2 class=\"wp-block-heading\">\u0421\u0442\u0440\u0430\u0442\u0435\u0433\u0438\u0439\u043d \u0437\u0430\u0433\u0432\u0430\u0440 \u0433\u044d\u0436 \u044e\u0443 \u0432\u044d?<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\"><br>\u0422\u043e\u0434\u043e\u0440\u0445\u043e\u0439\u043b\u043e\u043b\u0442: \u0410\u043b\u0433\u043e\u0440\u0438\u0442\u043c\u0443\u0443\u0434\u044b\u043d \u0431\u04af\u043b\u0433\u0438\u0439\u0433 \u0442\u043e\u0434\u043e\u0440\u0445\u043e\u0439\u043b\u0436, \u0442\u0443\u0441 \u0431\u04af\u0440\u0438\u0439\u0433 \u043d\u044c \u0431\u0430\u0433\u0442\u0430\u0430\u0436, \u0441\u043e\u043b\u044c\u0436 \u0431\u043e\u043b\u0434\u043e\u0433. \u042d\u043d\u044d \u043d\u044c \u0430\u043b\u0433\u043e\u0440\u0438\u0442\u043c\u044b\u0433 \u0430\u0448\u0438\u0433\u043b\u0430\u0434\u0430\u0433 \u04af\u0439\u043b\u0447\u043b\u04af\u04af\u043b\u044d\u0433\u0447\u0434\u044d\u044d\u0441 \u04af\u043b \u0445\u0430\u043c\u0430\u0430\u0440\u0430\u043d \u04e9\u04e9\u0440\u0447\u043b\u04e9\u0445 \u0431\u043e\u043b\u043e\u043c\u0436\u0438\u0439\u0433 \u043e\u043b\u0433\u043e\u0434\u043e\u0433.<br>\u0416\u0438\u0448\u044d\u044d:<\/p>\n\n\n<div class=\"wp-block-code\">\n\t<div class=\"cm-editor\">\n\t\t<div class=\"cm-scroller\">\n\t\t\t\n<pre>\n<code><div class=\"cm-line\">\/\/ Interface for eat behavior<\/div><div class=\"cm-line\">interface EatBehavior {<\/div><div class=\"cm-line\">void eat();<\/div><div class=\"cm-line\">}<\/div><div class=\"cm-line\"><\/div><div class=\"cm-line\">\/\/ Concrete implementations of eat behavior<\/div><div class=\"cm-line\">class NormalDiet implements EatBehavior {<\/div><div class=\"cm-line\">@Override<\/div><div class=\"cm-line\">public void eat() {<\/div><div class=\"cm-line\">\/\/ Normal food<\/div><div class=\"cm-line\">  }<\/div><div class=\"cm-line\">}<\/div><div class=\"cm-line\"><\/div><div class=\"cm-line\">class LosingWeightDiet implements EatBehavior {<\/div><div class=\"cm-line\">@Override<\/div><div class=\"cm-line\">public void eat() {<\/div><div class=\"cm-line\">\/\/ Healthy food<\/div><div class=\"cm-line\">  }<\/div><div class=\"cm-line\">}<\/div><div class=\"cm-line\"><\/div><div class=\"cm-line\">\/\/ Cat class with eat behavior<\/div><div class=\"cm-line\">abstract class Cat {<\/div><div class=\"cm-line\">EatBehavior eatBehavior;<\/div><div class=\"cm-line\">public void eat() {<\/div><div class=\"cm-line\">    eatBehavior.eat();<\/div><div class=\"cm-line\">  }<\/div><div class=\"cm-line\"><\/div><div class=\"cm-line\">public void setEatBehavior(EatBehavior eatBehavior) {<\/div><div class=\"cm-line\"> this.eatBehavior = eatBehavior;<\/div><div class=\"cm-line\">  }<\/div><div class=\"cm-line\">}<\/div><div class=\"cm-line\"><\/div><div class=\"cm-line\">\/\/ Usage<\/div><div class=\"cm-line\">Cat cat = new Cat();<\/div><div class=\"cm-line\">cat.setEatBehavior(new LosingWeightDiet());<\/div><div class=\"cm-line\">cat.eat(); \/\/ Cat eats with a healthier diet<\/div><\/code><\/pre>\n\t\t<\/div>\n\t<\/div>\n<\/div>\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h2 class=\"wp-block-heading\">\u0411\u04af\u0442\u044d\u044d\u043b\u0438\u0439\u043d \u0437\u0430\u0433\u0432\u0430\u0440\u0443\u0443\u0434<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">\u042d\u0434\u0433\u044d\u044d\u0440 \u0437\u0430\u0433\u0432\u0430\u0440\u0443\u0443\u0434 \u043d\u044c \u0430\u043d\u0433\u0438\u0443\u0434\u044b\u0433 \u0431\u0438\u0439 \u0431\u043e\u043b\u0433\u043e\u0445\u043e\u0434 \u0447\u0438\u0433\u043b\u044d\u0433\u0434\u0434\u044d\u0433.<br>\u0416\u0438\u0448\u044d\u044d \u043d\u044c \u043e\u0440\u043d\u043e<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">\u04ae\u0439\u043b\u0434\u0432\u044d\u0440\u0438\u0439\u043d \u0430\u0440\u0433\u0430,<br>\u0410\u0441\u0443\u0443\u0434\u043b\u044b\u043d \u043c\u044d\u0434\u044d\u0433\u0434\u044d\u043b: \u0411\u0438\u0434 \u04e9\u04e9\u0440\u0441\u0434\u0438\u0439\u043d \u043a\u043e\u0434\u044b\u0433 \u0442\u043e\u0434\u043e\u0440\u0445\u043e\u0439 \u0445\u044d\u0440\u044d\u0433\u0436\u0438\u043b\u0442\u0442\u044d\u0439 \u043d\u044f\u0433\u0442 \u0443\u044f\u043b\u0434\u0443\u0443\u043b\u0430\u0445\u0433\u04af\u0439\u0433\u044d\u044d\u0440 \u04e9\u04e9\u0440 \u04e9\u04e9\u0440 \u0442\u04e9\u0440\u043b\u0438\u0439\u043d \u0431\u04af\u0442\u044d\u044d\u0433\u0434\u044d\u0445\u04af\u04af\u043d (\u0436\u0438\u0448\u044d\u044d \u043d\u044c \u043c\u0430\u0448\u0438\u043d, \u0434\u0443\u0433\u0443\u0439, \u0434\u0443\u0433\u0443\u0439) \u0431\u04af\u0442\u044d\u044d\u0445\u0438\u0439\u0433 \u0445\u04af\u0441\u0447 \u0431\u0430\u0439\u043d\u0430 \u0433\u044d\u0436 \u0431\u043e\u0434\u044a\u0451.<br>\u0413\u043e\u043b \u0431\u04af\u0440\u044d\u043b\u0434\u044d\u0445\u04af\u04af\u043d \u0445\u044d\u0441\u0433\u04af\u04af\u0434:<br>\u0411\u04af\u0442\u044d\u044d\u0433\u0434\u044d\u0445\u04af\u04af\u043d: \u04ae\u0439\u043b\u0434\u0432\u044d\u0440\u044d\u044d\u0441 \u04af\u04af\u0441\u0433\u044d\u0445 \u043e\u0431\u044a\u0435\u043a\u0442\u0443\u0443\u0434\u044b\u043d \u0435\u0440\u04e9\u043d\u0445\u0438\u0439 \u04af\u0439\u043b\u0434\u043b\u04af\u04af\u0434\u0438\u0439\u0433 \u0442\u043e\u0434\u043e\u0440\u0445\u043e\u0439\u043b\u0441\u043e\u043d \u0445\u0438\u0439\u0441\u0432\u044d\u0440 \u0430\u043d\u0433\u0438 \u044d\u0441\u0432\u044d\u043b \u0438\u043d\u0442\u0435\u0440\u0444\u0435\u0439\u0441.<br>\u0411\u0435\u0442\u043e\u043d \u0431\u04af\u0442\u044d\u044d\u0433\u0434\u044d\u0445\u04af\u04af\u043d: \u0411\u04af\u0442\u044d\u044d\u0433\u0434\u044d\u0445\u04af\u04af\u043d\u0438\u0439 \u0438\u043d\u0442\u0435\u0440\u0444\u044d\u0439\u0441\u0438\u0439\u0433 \u0445\u044d\u0440\u044d\u0433\u0436\u04af\u04af\u043b\u0434\u044d\u0433 \u0431\u043e\u0434\u0438\u0442 \u0430\u043d\u0433\u0438\u0443\u0434 \u0431\u04e9\u0433\u04e9\u04e9\u0434 \u0442\u043e\u0434\u043e\u0440\u0445\u043e\u0439 \u043e\u0431\u044a\u0435\u043a\u0442\u044b\u043d \u0442\u04e9\u0440\u043b\u0438\u0439\u0433 \u0442\u04e9\u043b\u04e9\u04e9\u043b\u0434\u04e9\u0433.<br>\u0411\u04af\u0442\u044d\u044d\u0433\u0447: \u04ae\u0439\u043b\u0434\u0432\u044d\u0440\u0438\u0439\u043d \u0430\u0440\u0433\u044b\u0433 \u0442\u0443\u043d\u0445\u0430\u0433\u043b\u0430\u0441\u0430\u043d \u0445\u0438\u0439\u0441\u0432\u044d\u0440 \u0430\u043d\u0433\u0438 \u044d\u0441\u0432\u044d\u043b \u0438\u043d\u0442\u0435\u0440\u0444\u0435\u0439\u0441. \u042d\u043d\u044d \u043d\u044c \u0411\u04af\u0442\u044d\u044d\u0433\u0434\u044d\u0445\u04af\u04af\u043d\u0438\u0439 \u043e\u0431\u044a\u0435\u043a\u0442\u0443\u0443\u0434\u044b\u0433 \u0431\u0438\u0439 \u0431\u043e\u043b\u0433\u043e\u0445 \u04af\u04af\u0440\u044d\u0433\u0442\u044d\u0439 \u0431\u043e\u043b\u043e\u0432\u0447 \u0434\u044d\u0434 \u0430\u043d\u0433\u0438\u0443\u0434\u044b\u0433 \u0431\u043e\u0434\u0438\u0442\u043e\u043e\u0440 \u0431\u0438\u0439 \u0431\u043e\u043b\u0433\u043e\u0445 \u04af\u04af\u0440\u0433\u0438\u0439\u0433 \u0433\u04af\u0439\u0446\u044d\u0442\u0433\u044d\u0434\u044d\u0433.<br>\u0411\u0435\u0442\u043e\u043d \u0431\u04af\u0442\u044d\u044d\u0433\u0447\u0438\u0434: \u04ae\u0439\u043b\u0434\u0432\u044d\u0440\u0438\u0439\u043d \u0430\u0440\u0433\u044b\u0433 \u0445\u044d\u0440\u044d\u0433\u0436\u04af\u04af\u043b\u0434\u044d\u0433 \u0411\u04af\u0442\u044d\u044d\u0433\u0447\u0438\u0439\u043d \u0434\u044d\u0434 \u0430\u043d\u0433\u0438\u0443\u0434. \u0422\u044d\u0434 \u043e\u0440\u043e\u043b\u0442\u044b\u043d \u043f\u0430\u0440\u0430\u043c\u0435\u0442\u0440\u04af\u04af\u0434 \u044d\u0441\u0432\u044d\u043b \u0442\u043e\u0445\u0438\u0440\u0433\u043e\u043e\u043d \u0434\u044d\u044d\u0440 \u04af\u043d\u0434\u044d\u0441\u043b\u044d\u043d \u044f\u043c\u0430\u0440 \u0431\u0435\u0442\u043e\u043d\u043e\u043d \u0431\u04af\u0442\u044d\u044d\u0433\u0434\u044d\u0445\u04af\u04af\u043d\u0438\u0439\u0433 \u0431\u04af\u0442\u044d\u044d\u0445\u044d\u044d \u0448\u0438\u0439\u0434\u0434\u044d\u0433.<br>\u04ae\u0439\u043b\u0434\u0432\u044d\u0440\u0438\u0439\u043d \u0430\u0440\u0433\u0430: \u0411\u04af\u0442\u044d\u044d\u0433\u0434\u044d\u0445\u04af\u04af\u043d\u0438\u0439 \u043e\u0431\u044a\u0435\u043a\u0442\u0443\u0443\u0434\u044b\u0433 \u04af\u04af\u0441\u0433\u044d\u0434\u044d\u0433 Creator \u0430\u043d\u0433\u0438\u043b\u0430\u043b\u0434 \u0442\u043e\u0434\u043e\u0440\u0445\u043e\u0439\u043b\u0441\u043e\u043d \u0430\u0440\u0433\u0430. \u042d\u043d\u044d \u043d\u044c \u0438\u0445\u044d\u0432\u0447\u043b\u044d\u043d \u0411\u04af\u0442\u044d\u044d\u0433\u0447\u0438\u0434 \u0445\u0438\u0439\u0441\u0432\u044d\u0440 \u0433\u044d\u0436 \u0437\u0430\u0440\u043b\u0430\u0436, \u0411\u0435\u0442\u043e\u043d \u0431\u04af\u0442\u044d\u044d\u0433\u0447\u0438\u0434 \u0445\u044d\u0440\u044d\u0433\u0436\u04af\u04af\u043b\u0434\u044d\u0433.<br>\u0416\u0430\u0432\u0430 \u0445\u044d\u043b \u0434\u044d\u044d\u0440\u0445 \u0436\u0438\u0448\u044d\u044d: \u0411\u0438\u0434 \u044f\u043d\u0437 \u0431\u04af\u0440\u0438\u0439\u043d \u0442\u04e9\u0440\u043b\u0438\u0439\u043d \u043c\u0430\u0448\u0438\u043d \u04af\u0439\u043b\u0434\u0432\u044d\u0440\u043b\u044d\u0434\u044d\u0433 \u04af\u0439\u043b\u0434\u0432\u044d\u0440\u0442\u044d\u0439 \u0433\u044d\u0436 \u0431\u043e\u0434\u044a\u0451. \u042d\u043d\u0434 \u0445\u044f\u043b\u0431\u0430\u0440\u0448\u0443\u0443\u043b\u0441\u0430\u043d \u0436\u0438\u0448\u044d\u044d \u0431\u0430\u0439\u043d\u0430:<\/p>\n\n\n<div class=\"wp-block-code\">\n\t<div class=\"cm-editor\">\n\t\t<div class=\"cm-scroller\">\n\t\t\t\n<pre>\n<code class=\"language-mathematica\"><div class=\"cm-line\"><span class=\"tok-operator\">\/\/<\/span> <span class=\"tok-keyword\">Abstract<\/span> <span class=\"tok-keyword\">Product<\/span><\/div><div class=\"cm-line\"><span class=\"tok-keyword\">interface<\/span> <span class=\"tok-keyword\">Product<\/span> <span class=\"tok-punctuation\">{<\/span><\/div><div class=\"cm-line\"><span class=\"tok-keyword\">void<\/span> <span class=\"tok-keyword\">display<\/span><span class=\"tok-punctuation\">()<\/span><span class=\"tok-operator\">;<\/span><\/div><div class=\"cm-line\"><span class=\"tok-punctuation\">}<\/span><\/div><div class=\"cm-line\"><\/div><div class=\"cm-line\"><span class=\"tok-operator\">\/\/<\/span> <span class=\"tok-keyword\">Concrete<\/span> <span class=\"tok-keyword\">Products<\/span><\/div><div class=\"cm-line\"><span class=\"tok-keyword\">class<\/span> <span class=\"tok-keyword\">Car<\/span> <span class=\"tok-keyword\">implements<\/span> <span class=\"tok-keyword\">Product<\/span> <span class=\"tok-punctuation\">{<\/span><\/div><div class=\"cm-line\"><span class=\"tok-keyword\">public<\/span> <span class=\"tok-keyword\">void<\/span> <span class=\"tok-keyword\">display<\/span><span class=\"tok-punctuation\">()<\/span> <span class=\"tok-punctuation\">{<\/span><\/div><div class=\"cm-line\"><span class=\"tok-keyword\">System<\/span><span class=\"tok-operator\">.<\/span><span class=\"tok-keyword\">out<\/span><span class=\"tok-operator\">.<\/span><span class=\"tok-keyword\">println<\/span><span class=\"tok-punctuation\">(<\/span><span class=\"tok-string\">&quot;Car created&quot;<\/span><span class=\"tok-punctuation\">)<\/span><span class=\"tok-operator\">;<\/span><\/div><div class=\"cm-line\">  <span class=\"tok-punctuation\">}<\/span><\/div><div class=\"cm-line\"><span class=\"tok-punctuation\">}<\/span><\/div><div class=\"cm-line\"><\/div><div class=\"cm-line\"><span class=\"tok-keyword\">class<\/span> <span class=\"tok-keyword\">Bike<\/span> <span class=\"tok-keyword\">implements<\/span> <span class=\"tok-keyword\">Product<\/span> <span class=\"tok-punctuation\">{<\/span><\/div><div class=\"cm-line\"><span class=\"tok-keyword\">public<\/span> <span class=\"tok-keyword\">void<\/span> <span class=\"tok-keyword\">display<\/span><span class=\"tok-punctuation\">()<\/span> <span class=\"tok-punctuation\">{<\/span><\/div><div class=\"cm-line\"><span class=\"tok-keyword\">System<\/span><span class=\"tok-operator\">.<\/span><span class=\"tok-keyword\">out<\/span><span class=\"tok-operator\">.<\/span><span class=\"tok-keyword\">println<\/span><span class=\"tok-punctuation\">(<\/span><span class=\"tok-string\">&quot;Bike created&quot;<\/span><span class=\"tok-punctuation\">)<\/span><span class=\"tok-operator\">;<\/span><\/div><div class=\"cm-line\">  <span class=\"tok-punctuation\">}<\/span><\/div><div class=\"cm-line\"><span class=\"tok-punctuation\">}<\/span><\/div><div class=\"cm-line\"><\/div><div class=\"cm-line\"><span class=\"tok-operator\">\/\/<\/span> <span class=\"tok-keyword\">Creator<\/span> <span class=\"tok-punctuation\">(<\/span><span class=\"tok-keyword\">Factory<\/span><span class=\"tok-punctuation\">)<\/span><\/div><div class=\"cm-line\"><span class=\"tok-keyword\">interface<\/span> <span class=\"tok-keyword\">Factory<\/span> <span class=\"tok-punctuation\">{<\/span><\/div><div class=\"cm-line\"><span class=\"tok-keyword\">Product<\/span> <span class=\"tok-keyword\">factoryMethod<\/span><span class=\"tok-punctuation\">()<\/span><span class=\"tok-operator\">;<\/span><\/div><div class=\"cm-line\"><span class=\"tok-punctuation\">}<\/span><\/div><div class=\"cm-line\"><\/div><div class=\"cm-line\"><span class=\"tok-operator\">\/\/<\/span> <span class=\"tok-keyword\">Concrete<\/span> <span class=\"tok-keyword\">Creators<\/span><\/div><div class=\"cm-line\"><span class=\"tok-keyword\">class<\/span> <span class=\"tok-keyword\">ConcreteFactoryA<\/span> <span class=\"tok-keyword\">implements<\/span> <span class=\"tok-keyword\">Factory<\/span> <span class=\"tok-punctuation\">{<\/span><\/div><div class=\"cm-line\"><span class=\"tok-keyword\">public<\/span> <span class=\"tok-keyword\">Product<\/span> <span class=\"tok-keyword\">factoryMethod<\/span><span class=\"tok-punctuation\">()<\/span> <span class=\"tok-punctuation\">{<\/span><\/div><div class=\"cm-line\"><span class=\"tok-keyword\">return<\/span> <span class=\"tok-keyword\">new<\/span> <span class=\"tok-keyword\">Car<\/span><span class=\"tok-punctuation\">()<\/span><span class=\"tok-operator\">;<\/span><\/div><div class=\"cm-line\">  <span class=\"tok-punctuation\">}<\/span><\/div><div class=\"cm-line\"><span class=\"tok-punctuation\">}<\/span><\/div><div class=\"cm-line\"><\/div><div class=\"cm-line\"><span class=\"tok-keyword\">class<\/span> <span class=\"tok-keyword\">ConcreteFactoryB<\/span> <span class=\"tok-keyword\">implements<\/span> <span class=\"tok-keyword\">Factory<\/span> <span class=\"tok-punctuation\">{<\/span><\/div><div class=\"cm-line\"><span class=\"tok-keyword\">public<\/span> <span class=\"tok-keyword\">Product<\/span> <span class=\"tok-keyword\">factoryMethod<\/span><span class=\"tok-punctuation\">()<\/span> <span class=\"tok-punctuation\">{<\/span><\/div><div class=\"cm-line\"><span class=\"tok-keyword\">return<\/span> <span class=\"tok-keyword\">new<\/span> <span class=\"tok-keyword\">Bike<\/span><span class=\"tok-punctuation\">()<\/span><span class=\"tok-operator\">;<\/span><\/div><div class=\"cm-line\">  <span class=\"tok-punctuation\">}<\/span><\/div><div class=\"cm-line\"><span class=\"tok-punctuation\">}<\/span><\/div><div class=\"cm-line\"><\/div><div class=\"cm-line\"><span class=\"tok-keyword\">public<\/span> <span class=\"tok-keyword\">class<\/span> <span class=\"tok-keyword\">FactoryMethodExample<\/span> <span class=\"tok-punctuation\">{<\/span><\/div><div class=\"cm-line\"><span class=\"tok-keyword\">public<\/span> <span class=\"tok-keyword\">static<\/span> <span class=\"tok-keyword\">void<\/span> <span class=\"tok-keyword\">main<\/span><span class=\"tok-punctuation\">(<\/span><span class=\"tok-keyword\">String<\/span><span class=\"tok-punctuation\">[]<\/span> <span class=\"tok-keyword\">args<\/span><span class=\"tok-punctuation\">)<\/span> <span class=\"tok-punctuation\">{<\/span><\/div><div class=\"cm-line\"><span class=\"tok-keyword\">Factory<\/span> <span class=\"tok-keyword\">factoryA<\/span> <span class=\"tok-operator\">=<\/span> <span class=\"tok-keyword\">new<\/span> <span class=\"tok-keyword\">ConcreteFactoryA<\/span><span class=\"tok-punctuation\">()<\/span><span class=\"tok-operator\">;<\/span><\/div><div class=\"cm-line\"><span class=\"tok-keyword\">Product<\/span> <span class=\"tok-keyword\">productA<\/span> <span class=\"tok-operator\">=<\/span> <span class=\"tok-keyword\">factoryA<\/span><span class=\"tok-operator\">.<\/span><span class=\"tok-keyword\">factoryMethod<\/span><span class=\"tok-punctuation\">()<\/span><span class=\"tok-operator\">;<\/span><\/div><div class=\"cm-line\"><span class=\"tok-keyword\">productA<\/span><span class=\"tok-operator\">.<\/span><span class=\"tok-keyword\">display<\/span><span class=\"tok-punctuation\">()<\/span><span class=\"tok-operator\">;<\/span><\/div><div class=\"cm-line\"><span class=\"tok-keyword\">Factory<\/span> <span class=\"tok-keyword\">factoryB<\/span> <span class=\"tok-operator\">=<\/span> <span class=\"tok-keyword\">new<\/span> <span class=\"tok-keyword\">ConcreteFactoryB<\/span><span class=\"tok-punctuation\">()<\/span><span class=\"tok-operator\">;<\/span><\/div><div class=\"cm-line\">    <span class=\"tok-keyword\">Product<\/span> <span class=\"tok-keyword\">productB<\/span> <span class=\"tok-operator\">=<\/span> <span class=\"tok-keyword\">factoryB<\/span><span class=\"tok-operator\">.<\/span><span class=\"tok-keyword\">factoryMethod<\/span><span class=\"tok-punctuation\">()<\/span><span class=\"tok-operator\">;<\/span><\/div><div class=\"cm-line\">    <span class=\"tok-keyword\">productB<\/span><span class=\"tok-operator\">.<\/span><span class=\"tok-keyword\">display<\/span><span class=\"tok-punctuation\">()<\/span><span class=\"tok-operator\">;<\/span><\/div><div class=\"cm-line\"><span class=\"tok-punctuation\">}<\/span><\/div><\/code><\/pre>\n\t\t<\/div>\n\t<\/div>\n<\/div>\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h2 class=\"wp-block-heading\">\u0411\u0430\u0440\u0438\u043b\u0433\u0430\u0447\u0438\u043d<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">\u0411\u0430\u0440\u0438\u043b\u0433\u0430\u0447\u0438\u043d \u0437\u0430\u0433\u0432\u0430\u0440 \u043d\u044c \u043d\u0430\u0440\u0438\u0439\u043d \u0442\u04e9\u0432\u04e9\u0433\u0442\u044d\u0439 \u043e\u0431\u044a\u0435\u043a\u0442\u0443\u0443\u0434\u044b\u0433 \u0430\u043b\u0445\u0430\u043c \u0430\u043b\u0445\u043c\u0430\u0430\u0440 \u0431\u04af\u0442\u044d\u044d\u0445 \u0431\u043e\u043b\u043e\u043c\u0436\u0438\u0439\u0433 \u043e\u043b\u0433\u043e\u0434\u043e\u0433 \u0431\u04af\u0442\u044d\u044d\u043b\u0447 \u0437\u0430\u0433\u0432\u0430\u0440 \u044e\u043c.<br>\u0422\u044d\u0434\u043d\u0438\u0439 \u0431\u04af\u0442\u044d\u044d\u043d \u0431\u0430\u0439\u0433\u0443\u0443\u043b\u0430\u043b\u0442\u044b\u0433 \u0442\u04e9\u043b\u04e9\u04e9\u043b\u043b\u0438\u0439\u043d\u0445 \u043d\u044c \u0445\u0443\u0432\u044c\u0434 \u0441\u0430\u043b\u0433\u0430\u0445 \u0437\u0430\u043c\u0430\u0430\u0440. Java \u0445\u044d\u043b \u0434\u044d\u044d\u0440\u0445 \u044d\u043d\u0433\u0438\u0439\u043d \u0436\u0438\u0448\u044d\u044d \u044d\u043d\u0434 \u0431\u0430\u0439\u043d\u0430:<\/p>\n\n\n<div class=\"wp-block-code\">\n\t<div class=\"cm-editor\">\n\t\t<div class=\"cm-scroller\">\n\t\t\t\n<pre>\n<code class=\"language-mathematica\"><div class=\"cm-line\"><span class=\"tok-operator\">\/\/<\/span> <span class=\"tok-keyword\">Define<\/span> <span class=\"tok-keyword\">the<\/span> <span class=\"tok-keyword\">class<\/span> <span class=\"tok-keyword\">you<\/span> <span class=\"tok-keyword\">want<\/span> <span class=\"tok-keyword\">to<\/span> <span class=\"tok-keyword\">build<\/span><\/div><div class=\"cm-line\"><span class=\"tok-keyword\">class<\/span> <span class=\"tok-keyword\">Post<\/span> <span class=\"tok-punctuation\">{<\/span><\/div><div class=\"cm-line\"><span class=\"tok-keyword\">private<\/span> <span class=\"tok-keyword\">final<\/span> <span class=\"tok-keyword\">String<\/span> <span class=\"tok-keyword\">title<\/span><span class=\"tok-operator\">;<\/span><\/div><div class=\"cm-line\"><span class=\"tok-keyword\">private<\/span> <span class=\"tok-keyword\">final<\/span> <span class=\"tok-keyword\">String<\/span> <span class=\"tok-keyword\">text<\/span><span class=\"tok-operator\">;<\/span><\/div><div class=\"cm-line\"><span class=\"tok-keyword\">private<\/span> <span class=\"tok-keyword\">final<\/span> <span class=\"tok-keyword\">String<\/span> <span class=\"tok-keyword\">category<\/span><span class=\"tok-operator\">;<\/span><\/div><div class=\"cm-line\"><\/div><div class=\"cm-line\"><span class=\"tok-keyword\">Post<\/span><span class=\"tok-punctuation\">(<\/span><span class=\"tok-keyword\">Builder<\/span> <span class=\"tok-keyword\">builder<\/span><span class=\"tok-punctuation\">)<\/span> <span class=\"tok-punctuation\">{<\/span><\/div><div class=\"cm-line\">    <span class=\"tok-keyword\">this<\/span><span class=\"tok-operator\">.<\/span><span class=\"tok-keyword\">title<\/span> <span class=\"tok-operator\">=<\/span> <span class=\"tok-keyword\">builder<\/span><span class=\"tok-operator\">.<\/span><span class=\"tok-keyword\">title<\/span><span class=\"tok-operator\">;<\/span><\/div><div class=\"cm-line\">    <span class=\"tok-keyword\">this<\/span><span class=\"tok-operator\">.<\/span><span class=\"tok-keyword\">text<\/span> <span class=\"tok-operator\">=<\/span> <span class=\"tok-keyword\">builder<\/span><span class=\"tok-operator\">.<\/span><span class=\"tok-keyword\">text<\/span><span class=\"tok-operator\">;<\/span><\/div><div class=\"cm-line\">    <span class=\"tok-keyword\">this<\/span><span class=\"tok-operator\">.<\/span><span class=\"tok-keyword\">category<\/span> <span class=\"tok-operator\">=<\/span> <span class=\"tok-keyword\">builder<\/span><span class=\"tok-operator\">.<\/span><span class=\"tok-keyword\">category<\/span><span class=\"tok-operator\">;<\/span><\/div><div class=\"cm-line\"><span class=\"tok-punctuation\">}<\/span><\/div><div class=\"cm-line\"><\/div><div class=\"cm-line\"><span class=\"tok-operator\">\/\/<\/span> <span class=\"tok-keyword\">Getters<\/span> <span class=\"tok-keyword\">for<\/span> <span class=\"tok-keyword\">properties<\/span><\/div><div class=\"cm-line\"><span class=\"tok-keyword\">public<\/span> <span class=\"tok-keyword\">String<\/span> <span class=\"tok-keyword\">getTitle<\/span><span class=\"tok-punctuation\">()<\/span> <span class=\"tok-punctuation\">{<\/span><\/div><div class=\"cm-line\">    <span class=\"tok-keyword\">return<\/span> <span class=\"tok-keyword\">title<\/span><span class=\"tok-operator\">;<\/span><\/div><div class=\"cm-line\"><span class=\"tok-punctuation\">}<\/span><\/div><div class=\"cm-line\"><\/div><div class=\"cm-line\"><span class=\"tok-keyword\">public<\/span> <span class=\"tok-keyword\">String<\/span> <span class=\"tok-keyword\">getText<\/span><span class=\"tok-punctuation\">()<\/span> <span class=\"tok-punctuation\">{<\/span><\/div><div class=\"cm-line\">    <span class=\"tok-keyword\">return<\/span> <span class=\"tok-keyword\">text<\/span><span class=\"tok-operator\">;<\/span><\/div><div class=\"cm-line\"><span class=\"tok-punctuation\">}<\/span><\/div><div class=\"cm-line\"><\/div><div class=\"cm-line\"><span class=\"tok-keyword\">public<\/span> <span class=\"tok-keyword\">String<\/span> <span class=\"tok-keyword\">getCategory<\/span><span class=\"tok-punctuation\">()<\/span> <span class=\"tok-punctuation\">{<\/span><\/div><div class=\"cm-line\">    <span class=\"tok-keyword\">return<\/span> <span class=\"tok-keyword\">category<\/span><span class=\"tok-operator\">;<\/span><\/div><div class=\"cm-line\"><span class=\"tok-punctuation\">}<\/span><\/div><div class=\"cm-line\"><\/div><div class=\"cm-line\"><span class=\"tok-operator\">\/\/<\/span> <span class=\"tok-keyword\">Builder<\/span> <span class=\"tok-keyword\">class<\/span><\/div><div class=\"cm-line\"><span class=\"tok-keyword\">public<\/span> <span class=\"tok-keyword\">static<\/span> <span class=\"tok-keyword\">class<\/span> <span class=\"tok-keyword\">Builder<\/span> <span class=\"tok-punctuation\">{<\/span><\/div><div class=\"cm-line\">    <span class=\"tok-keyword\">private<\/span> <span class=\"tok-keyword\">String<\/span> <span class=\"tok-keyword\">title<\/span><span class=\"tok-operator\">;<\/span><\/div><div class=\"cm-line\">    <span class=\"tok-keyword\">private<\/span> <span class=\"tok-keyword\">String<\/span> <span class=\"tok-keyword\">text<\/span><span class=\"tok-operator\">;<\/span><\/div><div class=\"cm-line\">    <span class=\"tok-keyword\">private<\/span> <span class=\"tok-keyword\">String<\/span> <span class=\"tok-keyword\">category<\/span><span class=\"tok-operator\">;<\/span><\/div><div class=\"cm-line\"><\/div><div class=\"cm-line\">    <span class=\"tok-keyword\">public<\/span> <span class=\"tok-keyword\">Builder<\/span> <span class=\"tok-keyword\">title<\/span><span class=\"tok-punctuation\">(<\/span><span class=\"tok-keyword\">String<\/span> <span class=\"tok-keyword\">title<\/span><span class=\"tok-punctuation\">)<\/span> <span class=\"tok-punctuation\">{<\/span><\/div><div class=\"cm-line\">        <span class=\"tok-keyword\">this<\/span><span class=\"tok-operator\">.<\/span><span class=\"tok-keyword\">title<\/span> <span class=\"tok-operator\">=<\/span> <span class=\"tok-keyword\">title<\/span><span class=\"tok-operator\">;<\/span><\/div><div class=\"cm-line\">        <span class=\"tok-keyword\">return<\/span> <span class=\"tok-keyword\">this<\/span><span class=\"tok-operator\">;<\/span><\/div><div class=\"cm-line\">    <span class=\"tok-punctuation\">}<\/span><\/div><div class=\"cm-line\"><\/div><div class=\"cm-line\">    <span class=\"tok-keyword\">public<\/span> <span class=\"tok-keyword\">Builder<\/span> <span class=\"tok-keyword\">text<\/span><span class=\"tok-punctuation\">(<\/span><span class=\"tok-keyword\">String<\/span> <span class=\"tok-keyword\">text<\/span><span class=\"tok-punctuation\">)<\/span> <span class=\"tok-punctuation\">{<\/span><\/div><div class=\"cm-line\">        <span class=\"tok-keyword\">this<\/span><span class=\"tok-operator\">.<\/span><span class=\"tok-keyword\">text<\/span> <span class=\"tok-operator\">=<\/span> <span class=\"tok-keyword\">text<\/span><span class=\"tok-operator\">;<\/span><\/div><div class=\"cm-line\">        <span class=\"tok-keyword\">return<\/span> <span class=\"tok-keyword\">this<\/span><span class=\"tok-operator\">;<\/span><\/div><div class=\"cm-line\">    <span class=\"tok-punctuation\">}<\/span><\/div><div class=\"cm-line\"><\/div><div class=\"cm-line\">    <span class=\"tok-keyword\">public<\/span> <span class=\"tok-keyword\">Builder<\/span> <span class=\"tok-keyword\">category<\/span><span class=\"tok-punctuation\">(<\/span><span class=\"tok-keyword\">String<\/span> <span class=\"tok-keyword\">category<\/span><span class=\"tok-punctuation\">)<\/span> <span class=\"tok-punctuation\">{<\/span><\/div><div class=\"cm-line\">        <span class=\"tok-keyword\">this<\/span><span class=\"tok-operator\">.<\/span><span class=\"tok-keyword\">category<\/span> <span class=\"tok-operator\">=<\/span> <span class=\"tok-keyword\">category<\/span><span class=\"tok-operator\">;<\/span><\/div><div class=\"cm-line\">        <span class=\"tok-keyword\">return<\/span> <span class=\"tok-keyword\">this<\/span><span class=\"tok-operator\">;<\/span><\/div><div class=\"cm-line\">    <span class=\"tok-punctuation\">}<\/span><\/div><div class=\"cm-line\"><\/div><div class=\"cm-line\">    <span class=\"tok-keyword\">public<\/span> <span class=\"tok-keyword\">Post<\/span> <span class=\"tok-keyword\">build<\/span><span class=\"tok-punctuation\">()<\/span> <span class=\"tok-punctuation\">{<\/span><\/div><div class=\"cm-line\">        <span class=\"tok-keyword\">return<\/span> <span class=\"tok-keyword\">new<\/span> <span class=\"tok-keyword\">Post<\/span><span class=\"tok-punctuation\">(<\/span><span class=\"tok-keyword\">this<\/span><span class=\"tok-punctuation\">)<\/span><span class=\"tok-operator\">;<\/span><\/div><div class=\"cm-line\">    <span class=\"tok-punctuation\">}<\/span><\/div><div class=\"cm-line\"><span class=\"tok-punctuation\">}<\/span><\/div><div class=\"cm-line\"><\/div><div class=\"cm-line\"><span class=\"tok-operator\">\/\/<\/span> <span class=\"tok-keyword\">Usage<\/span><\/div><div class=\"cm-line\"><span class=\"tok-keyword\">public<\/span> <span class=\"tok-keyword\">class<\/span> <span class=\"tok-keyword\">Main<\/span> <span class=\"tok-punctuation\">{<\/span><\/div><div class=\"cm-line\"><span class=\"tok-keyword\">public<\/span> <span class=\"tok-keyword\">static<\/span> <span class=\"tok-keyword\">void<\/span> <span class=\"tok-keyword\">main<\/span><span class=\"tok-punctuation\">(<\/span><span class=\"tok-keyword\">String<\/span><span class=\"tok-punctuation\">[]<\/span> <span class=\"tok-keyword\">args<\/span><span class=\"tok-punctuation\">)<\/span> <span class=\"tok-punctuation\">{<\/span><\/div><div class=\"cm-line\"><span class=\"tok-keyword\">Post<\/span> <span class=\"tok-keyword\">post<\/span> <span class=\"tok-operator\">=<\/span> <span class=\"tok-keyword\">new<\/span> <span class=\"tok-keyword\">Post<\/span><span class=\"tok-operator\">.<\/span><span class=\"tok-keyword\">Builder<\/span><span class=\"tok-punctuation\">()<\/span><\/div><div class=\"cm-line\"><span class=\"tok-operator\">.<\/span><span class=\"tok-keyword\">title<\/span><span class=\"tok-punctuation\">(<\/span><span class=\"tok-string\">&quot;Java Builder Pattern&quot;<\/span><span class=\"tok-punctuation\">)<\/span><\/div><div class=\"cm-line\"><span class=\"tok-operator\">.<\/span><span class=\"tok-keyword\">text<\/span><span class=\"tok-punctuation\">(<\/span><span class=\"tok-string\">&quot;Explaining how to implement the Builder Pattern in Java&quot;<\/span><span class=\"tok-punctuation\">)<\/span><\/div><div class=\"cm-line\"><span class=\"tok-operator\">.<\/span><span class=\"tok-keyword\">category<\/span><span class=\"tok-punctuation\">(<\/span><span class=\"tok-string\">&quot;Design Patterns&quot;<\/span><span class=\"tok-punctuation\">)<\/span><\/div><div class=\"cm-line\"><span class=\"tok-operator\">.<\/span><span class=\"tok-keyword\">build<\/span><span class=\"tok-punctuation\">()<\/span><span class=\"tok-operator\">;<\/span><\/div><div class=\"cm-line\"><\/div><div class=\"cm-line\"><span class=\"tok-keyword\">System<\/span><span class=\"tok-operator\">.<\/span><span class=\"tok-keyword\">out<\/span><span class=\"tok-operator\">.<\/span><span class=\"tok-keyword\">println<\/span><span class=\"tok-punctuation\">(<\/span><span class=\"tok-string\">&quot;Title: &quot;<\/span> <span class=\"tok-operator\">+<\/span> <span class=\"tok-keyword\">post<\/span><span class=\"tok-operator\">.<\/span><span class=\"tok-keyword\">getTitle<\/span><span class=\"tok-punctuation\">())<\/span><span class=\"tok-operator\">;<\/span><\/div><div class=\"cm-line\">    <span class=\"tok-keyword\">System<\/span><span class=\"tok-operator\">.<\/span><span class=\"tok-keyword\">out<\/span><span class=\"tok-operator\">.<\/span><span class=\"tok-keyword\">println<\/span><span class=\"tok-punctuation\">(<\/span><span class=\"tok-string\">&quot;Text: &quot;<\/span> <span class=\"tok-operator\">+<\/span> <span class=\"tok-keyword\">post<\/span><span class=\"tok-operator\">.<\/span><span class=\"tok-keyword\">getText<\/span><span class=\"tok-punctuation\">())<\/span><span class=\"tok-operator\">;<\/span><\/div><div class=\"cm-line\">    <span class=\"tok-keyword\">System<\/span><span class=\"tok-operator\">.<\/span><span class=\"tok-keyword\">out<\/span><span class=\"tok-operator\">.<\/span><span class=\"tok-keyword\">println<\/span><span class=\"tok-punctuation\">(<\/span><span class=\"tok-string\">&quot;Category: &quot;<\/span> <span class=\"tok-operator\">+<\/span> <span class=\"tok-keyword\">post<\/span><span class=\"tok-operator\">.<\/span><span class=\"tok-keyword\">getCategory<\/span><span class=\"tok-punctuation\">())<\/span><span class=\"tok-operator\">;<\/span><\/div><div class=\"cm-line\">  <span class=\"tok-punctuation\">}<\/span><\/div><div class=\"cm-line\"><span class=\"tok-punctuation\">}<\/span><\/div><\/code><\/pre>\n\t\t<\/div>\n\t<\/div>\n<\/div>\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h2 class=\"wp-block-heading\">\u041f\u0440\u043e\u0442\u043e\u0442\u0438\u043f<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\"><strong>\u041f\u0440\u043e\u0442\u043e\u0442\u0438\u043f<\/strong><br><br>Prototype Pattern \u043d\u044c \u043e\u0434\u043e\u043e \u0431\u0430\u0439\u0433\u0430\u0430 \u043e\u0431\u044a\u0435\u043a\u0442\u044b\u0433 \u0445\u0443\u0443\u043b\u0436 \u0448\u0438\u043d\u044d \u043e\u0431\u044a\u0435\u043a\u0442 \u04af\u04af\u0441\u0433\u044d\u0445 \u0431\u043e\u043b\u043e\u043c\u0436\u0438\u0439\u0433 \u043e\u043b\u0433\u043e\u0434\u043e\u0433 \u0431\u04af\u0442\u044d\u044d\u043b\u0447 \u0437\u0430\u0433\u0432\u0430\u0440 \u044e\u043c.<br>\u042d\u0445\u043d\u044d\u044d\u0441 \u043d\u044c \u0448\u0438\u043d\u044d \u0436\u0438\u0448\u044d\u044d \u04af\u04af\u0441\u0433\u044d\u0445\u0438\u0439\u043d \u043e\u0440\u043e\u043d\u0434 \u043e\u0434\u043e\u043e \u0431\u0430\u0439\u0433\u0430\u0430 \u043f\u0440\u043e\u0442\u043e\u0442\u0438\u043f\u0438\u0439\u0433 \u0445\u0443\u0432\u0438\u043b\u0434\u0430\u0433 \u0431\u04e9\u0433\u04e9\u04e9\u0434 \u044d\u043d\u044d \u043d\u044c \u0438\u043b\u04af\u04af \u04af\u0440 \u0430\u0448\u0438\u0433\u0442\u0430\u0439, \u0443\u044f\u043d \u0445\u0430\u0442\u0430\u043d \u0431\u0430\u0439\u0445 \u0431\u043e\u043b\u043e\u043c\u0436\u0442\u043e\u0439. Java \u0445\u044d\u043b \u0434\u044d\u044d\u0440\u0445 \u0436\u0438\u0448\u044d\u044d\u0433 \u0445\u0430\u0440\u0446\u0433\u0430\u0430\u044f:<br><strong>\u041f\u0440\u043e\u0442\u043e\u0442\u0438\u043f \u0438\u043d\u0442\u0435\u0440\u0444\u044d\u0439\u0441\u0438\u0439\u0433 \u0442\u043e\u0434\u043e\u0440\u0445\u043e\u0439\u043b\u043d\u043e \u0443\u0443<\/strong>: \u042d\u0445\u043b\u044d\u044d\u0434 \u0431\u0438\u0434 \u0445\u0438\u0439\u0441\u0432\u044d\u0440 \u0430\u043d\u0433\u0438 \u0431\u0443\u044e\u0443 \u0438\u043d\u0442\u0435\u0440\u0444\u0435\u0439\u0441 \u0433\u044d\u0436 \u043d\u044d\u0440\u043b\u044d\u0434\u044d\u0433 <code>Tree<\/code>, \u0445\u0438\u0439\u0441\u0432\u044d\u0440 \u0430\u0440\u0433\u0430\u0430\u0440 <code>copy()<\/code>:<\/p>\n\n\n<div class=\"wp-block-code\">\n\t<div class=\"cm-editor\">\n\t\t<div class=\"cm-scroller\">\n\t\t\t\n<pre>\n<code><div class=\"cm-line\">public abstract class Tree {<\/div><div class=\"cm-line\">public abstract Tree copy();<\/div><div class=\"cm-line\">}<\/div><\/code><\/pre>\n\t\t<\/div>\n\t<\/div>\n<\/div>\n\n\n<p class=\"wp-block-paragraph\"><strong>\u0411\u0435\u0442\u043e\u043d\u044b \u043f\u0440\u043e\u0442\u043e\u0442\u0438\u043f\u04af\u04af\u0434<\/strong>: \u0414\u0430\u0440\u0430\u0430 \u043d\u044c \u0431\u0438\u0434 \u04e9\u0440\u0433\u04e9\u0442\u0433\u04e9\u0441\u04e9\u043d \u0445\u043e\u0451\u0440 \u0431\u0435\u0442\u043e\u043d\u044b \u0430\u043d\u0433\u0438\u043b\u043b\u044b\u0433 \u0445\u044d\u0440\u044d\u0433\u0436\u04af\u04af\u043b\u0434\u044d\u0433 <code>Tree<\/code>: <code>PlasticTree<\/code> \u0431\u043e\u043b\u043e\u043d <code>PineTree<\/code>. \u042d\u0434\u0433\u044d\u044d\u0440 \u0430\u043d\u0433\u0438\u0443\u0434 \u043d\u044c \u0442\u043e\u0434\u043e\u0440\u0445\u043e\u0439 \u0442\u04e9\u0440\u043b\u0438\u0439\u043d \u043c\u043e\u0434\u044b\u0433 \u0442\u04e9\u043b\u04e9\u04e9\u043b\u0434\u04e9\u0433 \u0431\u04e9\u0433\u04e9\u04e9\u0434 \u04e9\u04e9\u0440\u0441\u0434\u0438\u0439\u043d \u0430\u0440\u0433\u0430\u0447\u043b\u0430\u043b\u044b\u043d \u0445\u044d\u0440\u044d\u0433\u0436\u0438\u043b\u0442\u0438\u0439\u0433 \u0445\u0430\u043d\u0433\u0430\u0434\u0430\u0433 <code>copy()<\/code>:<\/p>\n\n\n<div class=\"wp-block-code\">\n\t<div class=\"cm-editor\">\n\t\t<div class=\"cm-scroller\">\n\t\t\t\n<pre>\n<code><div class=\"cm-line\">public class PlasticTree extends Tree {<\/div><div class=\"cm-line\">@Override<\/div><div class=\"cm-line\">public Tree copy() {<\/div><div class=\"cm-line\">PlasticTree plasticTreeClone = new PlasticTree(this.getMass(), <\/div><div class=\"cm-line\">this.getHeight());<\/div><div class=\"cm-line\">plasticTreeClone.setPosition(this.getPosition());<\/div><div class=\"cm-line\">return plasticTreeClone;<\/div><div class=\"cm-line\">  }<\/div><div class=\"cm-line\">}<\/div><div class=\"cm-line\"><\/div><div class=\"cm-line\">public class PineTree extends Tree {<\/div><div class=\"cm-line\">@Override<\/div><div class=\"cm-line\">public Tree copy() {<\/div><div class=\"cm-line\">PineTree pineTreeClone = new PineTree(this.getMass(), <\/div><div class=\"cm-line\">this.getHeight());<\/div><div class=\"cm-line\">pineTreeClone.setPosition(this.getPosition());<\/div><div class=\"cm-line\">return pineTreeClone;<\/div><div class=\"cm-line\">  }<\/div><div class=\"cm-line\">}<\/div><\/code><\/pre>\n\t\t<\/div>\n\t<\/div>\n<\/div>\n\n\n<p class=\"wp-block-paragraph\"><br>\u042d\u0434\u0433\u044d\u044d\u0440 \u0430\u043d\u0433\u0438\u0443\u0434\u0430\u0434 \u0431\u0438\u0434 \u043c\u043e\u0434\u043d\u044b \u0442\u043e\u0434\u043e\u0440\u0445\u043e\u0439 \u0442\u04e9\u0440\u043b\u04e9\u04e9\u0441 \u0445\u0430\u043c\u0430\u0430\u0440\u0430\u043d \u0445\u0443\u0432\u0438\u043b\u0430\u0445 \u043f\u0440\u043e\u0446\u0435\u0441\u0441\u044b\u0433 \u04e9\u04e9\u0440\u0447\u0438\u043b\u0434\u04e9\u0433. \u0416\u0438\u0448\u044d\u044d\u043b\u0431\u044d\u043b, \u0431\u0438\u0434 \u0445\u0443\u0443\u043b\u0431\u0430\u0440\u043b\u0430\u0434\u0430\u0433 <em>\u043c\u0430\u0441\u0441<\/em>, <em>\u04e9\u043d\u0434\u04e9\u0440<\/em> \u0431\u043e\u043b\u043e\u043d <em>\u0431\u0430\u0439\u0440 \u0441\u0443\u0443\u0440\u044c<\/em> \u0430\u043d\u0445\u043d\u044b \u043c\u043e\u0434\u043d\u044b.<br><strong>\u0425\u044d\u0440\u044d\u0433\u043b\u044d\u044d<\/strong>: \u041e\u0434\u043e\u043e \u04e9\u04e9\u0440\u0441\u0434\u0438\u0439\u043d \u0431\u0435\u0442\u043e\u043d\u043e\u043d \u0437\u0430\u0433\u0432\u0430\u0440\u0443\u0443\u0434\u0430\u0430 \u0436\u0438\u0448\u044d\u044d \u0431\u043e\u043b\u0433\u043e\u0446\u0433\u043e\u043e\u0451:<br>Java<\/p>\n\n\n\n<p class=\"wp-block-paragraph\"><\/p>\n\n\n<div class=\"wp-block-code\">\n\t<div class=\"cm-editor\">\n\t\t<div class=\"cm-scroller\">\n\t\t\t\n<pre>\n<code class=\"language-mathematica\"><div class=\"cm-line\"><span class=\"tok-keyword\">public<\/span> <span class=\"tok-keyword\">class<\/span> <span class=\"tok-keyword\">Main<\/span> <span class=\"tok-punctuation\">{<\/span><\/div><div class=\"cm-line\"><span class=\"tok-keyword\">public<\/span> <span class=\"tok-keyword\">static<\/span> <span class=\"tok-keyword\">void<\/span> <span class=\"tok-keyword\">main<\/span><span class=\"tok-punctuation\">(<\/span><span class=\"tok-keyword\">String<\/span><span class=\"tok-punctuation\">[]<\/span> <span class=\"tok-keyword\">args<\/span><span class=\"tok-punctuation\">)<\/span> <span class=\"tok-punctuation\">{<\/span><\/div><div class=\"cm-line\"><span class=\"tok-keyword\">Tree<\/span> <span class=\"tok-keyword\">originalPlasticTree<\/span> <span class=\"tok-operator\">=<\/span> <span class=\"tok-keyword\">new<\/span> <span class=\"tok-keyword\">PlasticTree<\/span><span class=\"tok-punctuation\">(<\/span><span class=\"tok-number\">10<\/span><span class=\"tok-operator\">,<\/span> <span class=\"tok-number\">5<\/span><span class=\"tok-punctuation\">)<\/span><span class=\"tok-operator\">;<\/span><\/div><div class=\"cm-line\"><span class=\"tok-keyword\">Tree<\/span> <span class=\"tok-keyword\">clonedPlasticTree<\/span> <span class=\"tok-operator\">=<\/span> <span class=\"tok-keyword\">originalPlasticTree<\/span><span class=\"tok-operator\">.<\/span><span class=\"tok-keyword\">copy<\/span><span class=\"tok-punctuation\">()<\/span><span class=\"tok-operator\">;<\/span><\/div><div class=\"cm-line\">    <span class=\"tok-keyword\">Tree<\/span> <span class=\"tok-keyword\">originalPineTree<\/span> <span class=\"tok-operator\">=<\/span> <span class=\"tok-keyword\">new<\/span> <span class=\"tok-keyword\">PineTree<\/span><span class=\"tok-punctuation\">(<\/span><span class=\"tok-number\">15<\/span><span class=\"tok-operator\">,<\/span> <span class=\"tok-number\">8<\/span><span class=\"tok-punctuation\">)<\/span><span class=\"tok-operator\">;<\/span><\/div><div class=\"cm-line\">    <span class=\"tok-keyword\">Tree<\/span> <span class=\"tok-keyword\">clonedPineTree<\/span> <span class=\"tok-operator\">=<\/span> <span class=\"tok-keyword\">originalPineTree<\/span><span class=\"tok-operator\">.<\/span><span class=\"tok-keyword\">copy<\/span><span class=\"tok-punctuation\">()<\/span><span class=\"tok-operator\">;<\/span><\/div><div class=\"cm-line\"><\/div><div class=\"cm-line\">    <span class=\"tok-operator\">\/\/<\/span> <span class=\"tok-keyword\">Use<\/span> <span class=\"tok-keyword\">the<\/span> <span class=\"tok-keyword\">cloned<\/span> <span class=\"tok-keyword\">trees<\/span> <span class=\"tok-keyword\">as<\/span> <span class=\"tok-keyword\">needed<\/span><\/div><div class=\"cm-line\">    <span class=\"tok-operator\">\/\/<\/span> <span class=\"tok-operator\">...<\/span><\/div><div class=\"cm-line\">  <span class=\"tok-punctuation\">}<\/span><\/div><div class=\"cm-line\"><span class=\"tok-punctuation\">}<\/span><\/div><\/code><\/pre>\n\t\t<\/div>\n\t<\/div>\n<\/div>\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h2 class=\"wp-block-heading\">\u0411\u04af\u0442\u0446\u0438\u0439\u043d \u0445\u044d\u0432 \u043c\u0430\u044f\u0433 \u0433\u044d\u0436 \u044e\u0443 \u0432\u044d?<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">\u042d\u0434\u0433\u044d\u044d\u0440 \u0437\u0430\u0433\u0432\u0430\u0440\u0443\u0443\u0434 \u043d\u044c \u0442\u0443\u0445\u0430\u0439\u043d \u0430\u043d\u0433\u0438\u0439\u043d \u0431\u04af\u0442\u044d\u0446, \u0431\u04af\u0440\u044d\u043b\u0434\u044d\u0445\u04af\u04af\u043d\u0438\u0439\u0433 \u0438\u043b\u044d\u0440\u0445\u0438\u0439\u043b\u0434\u044d\u0433.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">\u0410\u0434\u0430\u043f\u0442\u0435\u0440\u0438\u0439\u043d \u0437\u0430\u0433\u0432\u0430\u0440<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">\u0410\u0434\u0430\u043f\u0442\u0435\u0440\u0438\u0439\u043d \u0437\u0430\u0433\u0432\u0430\u0440 \u043d\u044c \u0445\u043e\u0451\u0440 \u04af\u043b \u043d\u0438\u0439\u0446\u044d\u0445 \u0438\u043d\u0442\u0435\u0440\u0444\u0435\u0439\u0441\u0438\u0439\u0433 \u0445\u0430\u043c\u0442\u0440\u0430\u043d \u0430\u0436\u0438\u043b\u043b\u0430\u0445 \u0431\u043e\u043b\u043e\u043c\u0436\u0438\u0439\u0433 \u043e\u043b\u0433\u043e\u0434\u043e\u0433 \u0431\u04af\u0442\u0446\u0438\u0439\u043d \u0437\u0430\u0433\u0432\u0430\u0440 \u044e\u043c.<br>\u042d\u043d\u044d \u043d\u044c \u044d\u0434\u0433\u044d\u044d\u0440 \u0438\u043d\u0442\u0435\u0440\u0444\u0435\u0439\u0441\u04af\u04af\u0434\u0438\u0439\u043d \u0445\u043e\u043e\u0440\u043e\u043d\u0434 \u0433\u04af\u04af\u0440 \u0431\u043e\u043b\u0436, \u044d\u0445 \u043a\u043e\u0434\u043e\u043e \u04e9\u04e9\u0440\u0447\u043b\u04e9\u0445\u0433\u04af\u0439\u0433\u044d\u044d\u0440 \u0445\u0430\u043c\u0442\u0440\u0430\u043d \u0430\u0436\u0438\u043b\u043b\u0430\u0445 \u0431\u043e\u043b\u043e\u043c\u0436\u0438\u0439\u0433 \u043e\u043b\u0433\u043e\u0434\u043e\u0433.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">\u041e\u0431\u044a\u0435\u043a\u0442 \u0430\u0434\u0430\u043f\u0442\u0435\u0440:<br>\u042d\u043d\u044d \u0430\u0440\u0433\u0430\u0434 \u0431\u0438\u0434 \u043b\u043e\u0433\u0438\u043a\u0438\u0439\u0433 \u0430\u0434\u0430\u043f\u0442\u0435\u0440\u0442 \u0448\u0438\u043b\u0436\u04af\u04af\u043b\u044d\u0445\u0438\u0439\u043d \u0442\u0443\u043b\u0434 \u043d\u0430\u0439\u0440\u0443\u0443\u043b\u0433\u044b\u0433 \u0430\u0448\u0438\u0433\u043b\u0430\u0434\u0430\u0433.<br>\u0410\u0434\u0430\u043f\u0442\u0435\u0440 \u043d\u044c \u0414\u0430\u0441\u0430\u043d \u0437\u043e\u0445\u0438\u0446\u043e\u0433\u0447\u0438\u0439\u0433 \u0430\u0433\u0443\u0443\u043b\u0436 \u0431\u0430\u0439\u0433\u0430\u0430 \u0431\u04e9\u0433\u04e9\u04e9\u0434 \u0414\u0430\u0441\u0430\u043d \u0437\u043e\u0445\u0438\u0446\u043e\u0445 \u0442\u0430\u043b\u0431\u0430\u0440\u0442 \u0445\u04af\u0441\u044d\u043b\u0442() \u0430\u0440\u0433\u044b\u0433 \u0442\u0443\u0441\u0433\u0430\u0439Request() \u0430\u0440\u0433\u0430\u0434 \u0448\u0438\u043b\u0436\u04af\u04af\u043b\u0434\u044d\u0433.<br><\/p>\n\n\n<div class=\"wp-block-code\">\n\t<div class=\"cm-editor\">\n\t\t<div class=\"cm-scroller\">\n\t\t\t\n<pre>\n<code><div class=\"cm-line\">class Adaptee {<\/div><div class=\"cm-line\">void specificRequest() {<\/div><div class=\"cm-line\">System.out.println(&quot;Adaptee&apos;s specific request&quot;);<\/div><div class=\"cm-line\">  }<\/div><div class=\"cm-line\">}<\/div><div class=\"cm-line\"><\/div><div class=\"cm-line\">\/\/ Target interface<\/div><div class=\"cm-line\">interface Target {<\/div><div class=\"cm-line\">void request();<\/div><div class=\"cm-line\">}<\/div><div class=\"cm-line\"><\/div><div class=\"cm-line\">\/\/ Adapter (using composition)<\/div><div class=\"cm-line\">class Adapter implements Target {<\/div><div class=\"cm-line\">private final Adaptee adaptee;<\/div><div class=\"cm-line\"><\/div><div class=\"cm-line\">Adapter(Adaptee adaptee) {<\/div><div class=\"cm-line\">    this.adaptee = adaptee;<\/div><div class=\"cm-line\">}<\/div><div class=\"cm-line\"><\/div><div class=\"cm-line\">@Override<\/div><div class=\"cm-line\">public void request() {<\/div><div class=\"cm-line\">    adaptee.specificRequest();<\/div><div class=\"cm-line\">  }<\/div><div class=\"cm-line\">}<\/div><\/code><\/pre>\n\t\t<\/div>\n\t<\/div>\n<\/div>\n\n\n<p class=\"wp-block-paragraph\">ClassAdapter:<br>\u041e\u043b\u043e\u043d \u04e9\u0432 \u0437\u0430\u043b\u0433\u0430\u043c\u0436\u043b\u0430\u043b \u0448\u0430\u0430\u0440\u0434\u0434\u0430\u0433 (Java-\u0434 \u0448\u0443\u0443\u0434 \u0431\u043e\u043b\u043e\u043c\u0436\u0433\u04af\u0439).<br>\u0411\u0438\u0434 \u04af\u04af\u043d\u0438\u0439\u0433 \u0430\u043d\u0445\u0434\u0430\u0433\u0447 \u0430\u0440\u0433\u0443\u0443\u0434\u0442\u0430\u0439 \u0438\u043d\u0442\u0435\u0440\u0444\u0435\u0439\u0441\u0438\u0439\u0433 \u0430\u0448\u0438\u0433\u043b\u0430\u043d \u0445\u0438\u0439\u0436 \u0447\u0430\u0434\u043d\u0430.<br>\u0410\u0434\u0430\u043f\u0442\u0435\u0440 \u043d\u044c Target \u0431\u043e\u043b\u043e\u043d Adaptee \u0430\u043d\u0433\u0438\u043b\u0430\u043b\u0430\u0430\u0441 \u0445\u043e\u0451\u0443\u043b\u0430\u043d\u0433 \u043d\u044c \u04e9\u0432\u043b\u04e9\u043d \u0430\u0432\u0434\u0430\u0433.<\/p>\n\n\n<div class=\"wp-block-code\">\n\t<div class=\"cm-editor\">\n\t\t<div class=\"cm-scroller\">\n\t\t\t\n<pre>\n<code><div class=\"cm-line\">\/\/ Target interface<\/div><div class=\"cm-line\">interface Target {<\/div><div class=\"cm-line\">void request();<\/div><div class=\"cm-line\">}<\/div><div class=\"cm-line\"><\/div><div class=\"cm-line\">\/\/ Adaptee (existing class)<\/div><div class=\"cm-line\">class Adaptee {<\/div><div class=\"cm-line\">void specificRequest() {<\/div><div class=\"cm-line\">System.out.println(&quot;Adaptee&apos;s specific request&quot;);<\/div><div class=\"cm-line\">  }<\/div><div class=\"cm-line\">}<\/div><div class=\"cm-line\"><\/div><div class=\"cm-line\">\/\/ Adapter (using class inheritance)<\/div><div class=\"cm-line\">class Adapter extends Adaptee implements Target {<\/div><div class=\"cm-line\">@Override<\/div><div class=\"cm-line\">public void request() {<\/div><div class=\"cm-line\">specificRequest();<\/div><div class=\"cm-line\">  }<\/div><div class=\"cm-line\">}<\/div><\/code><\/pre>\n\t\t<\/div>\n\t<\/div>\n<\/div>\n\n\n<p class=\"wp-block-paragraph\"><br>\u04ae\u0440 \u0430\u0448\u0438\u0433 \u0431\u0430 \u0441\u043e\u043b\u0438\u043b\u0446\u043e\u043e:<br>\u0410\u043d\u0433\u0438\u0439\u043d \u0430\u0434\u0430\u043f\u0442\u0435\u0440 \u043d\u044c \u0430\u0440\u0433\u0443\u0443\u0434\u044b\u0433 \u043d\u044d\u0433 \u043d\u044d\u0433\u044d\u044d\u0440 \u043d\u044c \u0431\u0443\u0443\u043b\u0433\u0430\u0445\u0430\u0434 \u0441\u0430\u0439\u043d \u0430\u0436\u0438\u043b\u043b\u0430\u0434\u0430\u0433.<br>\u041e\u0431\u044a\u0435\u043a\u0442 \u0430\u0434\u0430\u043f\u0442\u0435\u0440 \u043d\u044c \u0438\u043b\u04af\u04af \u0443\u044f\u043d \u0445\u0430\u0442\u0430\u043d \u0431\u0430\u0439\u0434\u043b\u044b\u0433 \u0445\u0430\u043d\u0433\u0430\u0436, \u044d\u0445 \u043a\u043e\u0434\u044b\u0433 \u04e9\u04e9\u0440\u0447\u043b\u04e9\u0445\u04e9\u04e9\u0441 \u0437\u0430\u0439\u043b\u0441\u0445\u0438\u0439\u0434\u044d\u0433.<\/p>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h2 class=\"wp-block-heading\">\u0427\u0438\u043c\u044d\u0433\u043b\u044d\u043b\u0438\u0439\u043d \u0437\u0430\u0433\u0432\u0430\u0440<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">\u0427\u0438\u043c\u044d\u0433\u043b\u044d\u0433\u0447\u0438\u0439\u043d \u0437\u0430\u0433\u0432\u0430\u0440 \u043d\u044c \u043e\u0431\u044a\u0435\u043a\u0442\u043e\u0434 \u0444\u0443\u043d\u043a\u0446\u0438\u043e\u043d\u0430\u043b\u044c \u0431\u0430\u0439\u0434\u0430\u043b, \u0437\u0430\u043d \u0442\u04e9\u043b\u04e9\u0432\u0438\u0439\u0433 \u0434\u0438\u043d\u0430\u043c\u0438\u043a\u0430\u0430\u0440 \u043d\u044d\u043c\u044d\u0445 \u0431\u043e\u043b\u043e\u043c\u0436\u0438\u0439\u0433 \u043e\u043b\u0433\u043e\u0434\u043e\u0433 \u0431\u04af\u0442\u044d\u044d\u043b\u0447 \u0434\u0438\u0437\u0430\u0439\u043d\u044b \u0437\u0430\u0433\u0432\u0430\u0440 \u044e\u043c.<br>\u043d\u044d\u0433 \u0430\u043d\u0433\u0438\u0434 \u0431\u0430\u0439\u0433\u0430\u0430 \u0431\u0443\u0441\u0430\u0434 \u043e\u0431\u044a\u0435\u043a\u0442\u0443\u0443\u0434\u044b\u043d \u0437\u0430\u043d \u0442\u04e9\u043b\u04e9\u0432\u0442 \u043d\u04e9\u043b\u04e9\u04e9\u043b\u04e9\u0445. \u042d\u043d\u044d \u043d\u044c \u043e\u0431\u044a\u0435\u043a\u0442\u044b\u043d \u0447\u0430\u0434\u0430\u0432\u0445\u0438\u0439\u0433 \u043d\u044d\u043c\u044d\u0433\u0434\u04af\u04af\u043b\u044d\u0445\u0438\u0439\u0433 \u0445\u04af\u0441\u0447 \u0431\u0430\u0439\u0433\u0430\u0430 \u04af\u0435\u0434 \u044f\u043b\u0430\u043d\u0433\u0443\u044f\u0430 \u0430\u0448\u0438\u0433\u0442\u0430\u0439 \u0431\u0430\u0439\u0434\u0430\u0433.<br>\u0442\u04af\u04af\u043d\u0438\u0439 \u0431\u04af\u0442\u0446\u0438\u0439\u0433 \u04e9\u04e9\u0440\u0447\u043b\u04e9\u0445\u0433\u04af\u0439\u0433\u044d\u044d\u0440.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">\u0422\u043e\u0439\u043c:<br>\u0427\u0438\u043c\u044d\u0433\u043b\u044d\u043b\u0438\u0439\u043d \u0437\u0430\u0433\u0432\u0430\u0440 \u043d\u044c \u0430\u043d\u0445\u043d\u044b \u043e\u0431\u044a\u0435\u043a\u0442\u044b\u0433 \u043d\u044d\u043c\u044d\u043b\u0442 \u0444\u0443\u043d\u043a\u0446\u044d\u044d\u0440 &#8220;\u0431\u043e\u043e\u0436&#8221; \u04e9\u0440\u0433\u04e9\u0442\u0433\u04e9\u0441\u04e9\u043d \u0438\u043d\u0442\u0435\u0440\u0444\u044d\u0439\u0441\u0438\u0439\u0433 \u04e9\u0433\u0434\u04e9\u0433.<br>\u0411\u0438\u0434 \u0434\u044d\u0434 \u0430\u043d\u0433\u0438\u043b\u043b\u044b\u043d \u043d\u044d\u043c\u044d\u043b\u0442 \u0437\u0430\u0440\u0434\u043b\u044b\u0433 \u0431\u0430\u0433\u0430\u0441\u0433\u0430\u0445\u044b\u043d \u0442\u0443\u043b\u0434 \u04e9\u0432 \u0437\u0430\u043b\u0433\u0430\u043c\u0436\u043b\u0430\u043b\u0430\u0430\u0441 \u0438\u043b\u04af\u04af \u043d\u0430\u0439\u0440\u043b\u0430\u0433\u044b\u0433 \u0438\u043b\u04af\u04af\u0434 \u04af\u0437\u0434\u044d\u0433.<br>\u0423\u044f\u043d \u0445\u0430\u0442\u0430\u043d \u0431\u0430\u0439\u0434\u043b\u044b\u0433 \u0445\u0430\u043d\u0433\u0430\u0434\u0430\u0433 \u0430\u0436\u043b\u044b\u043d \u04af\u0435\u0434 \u0447\u0438\u043c\u044d\u0433\u043b\u044d\u0433\u0447\u0438\u0439\u0433 \u043d\u044d\u043c\u0436 \u0431\u043e\u043b\u043d\u043e.<br>\u0416\u0438\u0448\u044d\u044d \u0445\u0443\u0432\u0438\u043b\u0431\u0430\u0440: \u0411\u0438\u0434\u044d\u043d\u0434 \u0425\u0440\u0438\u0441\u0442\u0438\u0439\u043d \u041c\u044d\u043d\u0434\u044d\u043b\u0441\u043d\u0438\u0439 \u0411\u0430\u044f\u0440\u044b\u043d \u0441\u04af\u043b\u0434 \u043c\u043e\u0434\u043d\u044b \u043e\u0431\u044a\u0435\u043a\u0442 \u0431\u0430\u0439\u0433\u0430\u0430 \u0431\u04e9\u0433\u04e9\u04e9\u0434 \u0431\u0438\u0434 \u04af\u04af\u043d\u0438\u0439\u0433 \u0437\u04af\u04af\u043b\u0442, \u0446\u0430\u0433\u0430\u0430\u043d \u0442\u0443\u0433\u0430\u043b\u0433\u0430, \u0445\u04e9\u04e9\u0441 \u0433\u044d\u0445 \u043c\u044d\u0442 \u044f\u043d\u0437 \u0431\u04af\u0440\u0438\u0439\u043d \u044d\u043b\u0435\u043c\u0435\u043d\u0442\u04af\u04af\u0434\u044d\u044d\u0440 \u0447\u0438\u043c\u044d\u0433\u043b\u044d\u0445\u0438\u0439\u0433 \u0445\u04af\u0441\u0447 \u0431\u0430\u0439\u043d\u0430 \u0433\u044d\u0436 \u0431\u043e\u0434\u044a\u0451. \u0411\u0438\u0434 \u0414\u04e9\u0440\u0432\u04e9\u043d \u0431\u04af\u043b\u044d\u0433\u043b\u044d\u043b\u0438\u0439\u043d \u0430\u043d\u0445\u043d\u044b \u0434\u0438\u0437\u0430\u0439\u043d\u044b \u043a\u043e\u043d\u0432\u0435\u043d\u0446\u0438\u0439\u0433 \u0434\u0430\u0433\u0430\u0436 \u043c\u04e9\u0440\u0434\u04e9\u0445 \u0431\u043e\u043b\u043d\u043e.<br>\u0425\u044d\u0440\u044d\u0433\u0436\u0438\u043b\u0442:<\/p>\n\n\n<div class=\"wp-block-code\">\n\t<div class=\"cm-editor\">\n\t\t<div class=\"cm-scroller\">\n\t\t\t\n<pre>\n<code class=\"language-mathematica\"><div class=\"cm-line\"><span class=\"tok-keyword\">First<\/span><span class=\"tok-operator\">,<\/span> <span class=\"tok-keyword\">create<\/span> <span class=\"tok-keyword\">a<\/span> <span class=\"tok-keyword\">ChristmasTree<\/span> <span class=\"tok-keyword\">interface<\/span><span class=\"tok-operator\">:<\/span><\/div><div class=\"cm-line\"><span class=\"tok-keyword\">Java<\/span><\/div><div class=\"cm-line\"><\/div><div class=\"cm-line\"><span class=\"tok-keyword\">public<\/span> <span class=\"tok-keyword\">interface<\/span> <span class=\"tok-keyword\">ChristmasTree<\/span> <span class=\"tok-punctuation\">{<\/span><\/div><div class=\"cm-line\"><span class=\"tok-keyword\">String<\/span> <span class=\"tok-keyword\">decorate<\/span><span class=\"tok-punctuation\">()<\/span><span class=\"tok-operator\">;<\/span><\/div><div class=\"cm-line\"><span class=\"tok-punctuation\">}<\/span><\/div><div class=\"cm-line\"><\/div><div class=\"cm-line\"><span class=\"tok-keyword\">Implement<\/span> <span class=\"tok-keyword\">the<\/span> <span class=\"tok-keyword\">interface<\/span> <span class=\"tok-keyword\">with<\/span> <span class=\"tok-keyword\">a<\/span> <span class=\"tok-keyword\">basic<\/span> <span class=\"tok-keyword\">tree<\/span><span class=\"tok-operator\">:<\/span><\/div><div class=\"cm-line\"><span class=\"tok-keyword\">Java<\/span><\/div><div class=\"cm-line\"><\/div><div class=\"cm-line\"><span class=\"tok-keyword\">public<\/span> <span class=\"tok-keyword\">class<\/span> <span class=\"tok-keyword\">ChristmasTreeImpl<\/span> <span class=\"tok-keyword\">implements<\/span> <span class=\"tok-keyword\">ChristmasTree<\/span> <span class=\"tok-punctuation\">{<\/span><\/div><div class=\"cm-line\"><span class=\"tok-operator\">@<\/span><span class=\"tok-keyword\">Override<\/span><\/div><div class=\"cm-line\"><span class=\"tok-keyword\">public<\/span> <span class=\"tok-keyword\">String<\/span> <span class=\"tok-keyword\">decorate<\/span><span class=\"tok-punctuation\">()<\/span> <span class=\"tok-punctuation\">{<\/span><\/div><div class=\"cm-line\"><span class=\"tok-keyword\">return<\/span> <span class=\"tok-string\">&quot;Christmas tree&quot;<\/span><span class=\"tok-operator\">;<\/span><\/div><div class=\"cm-line\">  <span class=\"tok-punctuation\">}<\/span><\/div><div class=\"cm-line\"><span class=\"tok-punctuation\">}<\/span><\/div><div class=\"cm-line\"><\/div><div class=\"cm-line\"><span class=\"tok-keyword\">Next<\/span><span class=\"tok-operator\">,<\/span> <span class=\"tok-keyword\">create<\/span> <span class=\"tok-keyword\">an<\/span> <span class=\"tok-keyword\">abstract<\/span> <span class=\"tok-keyword\">TreeDecorator<\/span> <span class=\"tok-keyword\">class<\/span> <span class=\"tok-keyword\">that<\/span> <span class=\"tok-keyword\">implements<\/span> <\/div><div class=\"cm-line\"><span class=\"tok-keyword\">ChristmasTree<\/span> <span class=\"tok-keyword\">and<\/span> <span class=\"tok-keyword\">holds<\/span> <span class=\"tok-keyword\">the<\/span> <span class=\"tok-keyword\">decorated<\/span> <span class=\"tok-keyword\">tree<\/span><span class=\"tok-operator\">:<\/span><\/div><div class=\"cm-line\"><span class=\"tok-keyword\">Java<\/span><\/div><div class=\"cm-line\"><\/div><div class=\"cm-line\"><span class=\"tok-keyword\">public<\/span> <span class=\"tok-keyword\">abstract<\/span> <span class=\"tok-keyword\">class<\/span> <span class=\"tok-keyword\">TreeDecorator<\/span> <span class=\"tok-keyword\">implements<\/span> <span class=\"tok-keyword\">ChristmasTree<\/span> <span class=\"tok-punctuation\">{<\/span><\/div><div class=\"cm-line\"><span class=\"tok-keyword\">private<\/span> <span class=\"tok-keyword\">final<\/span> <span class=\"tok-keyword\">ChristmasTree<\/span> <span class=\"tok-keyword\">tree<\/span><span class=\"tok-operator\">;<\/span><\/div><div class=\"cm-line\"><span class=\"tok-keyword\">public<\/span> <span class=\"tok-keyword\">TreeDecorator<\/span><span class=\"tok-punctuation\">(<\/span><span class=\"tok-keyword\">ChristmasTree<\/span> <span class=\"tok-keyword\">tree<\/span><span class=\"tok-punctuation\">)<\/span> <span class=\"tok-punctuation\">{<\/span><\/div><div class=\"cm-line\">    <span class=\"tok-keyword\">this<\/span><span class=\"tok-operator\">.<\/span><span class=\"tok-keyword\">tree<\/span> <span class=\"tok-operator\">=<\/span> <span class=\"tok-keyword\">tree<\/span><span class=\"tok-operator\">;<\/span><\/div><div class=\"cm-line\"><span class=\"tok-punctuation\">}<\/span><\/div><div class=\"cm-line\"><\/div><div class=\"cm-line\"><span class=\"tok-operator\">@<\/span><span class=\"tok-keyword\">Override<\/span><\/div><div class=\"cm-line\"><span class=\"tok-keyword\">public<\/span> <span class=\"tok-keyword\">String<\/span> <span class=\"tok-keyword\">decorate<\/span><span class=\"tok-punctuation\">()<\/span> <span class=\"tok-punctuation\">{<\/span><\/div><div class=\"cm-line\">    <span class=\"tok-keyword\">return<\/span> <span class=\"tok-keyword\">tree<\/span><span class=\"tok-operator\">.<\/span><span class=\"tok-keyword\">decorate<\/span><span class=\"tok-punctuation\">()<\/span><span class=\"tok-operator\">;<\/span><\/div><div class=\"cm-line\">  <span class=\"tok-punctuation\">}<\/span><\/div><div class=\"cm-line\"><span class=\"tok-punctuation\">}<\/span><\/div><div class=\"cm-line\"><\/div><div class=\"cm-line\"><span class=\"tok-keyword\">Now<\/span> <span class=\"tok-keyword\">create<\/span> <span class=\"tok-keyword\">specific<\/span> <span class=\"tok-keyword\">decorators<\/span><span class=\"tok-operator\">.<\/span> <span class=\"tok-keyword\">For<\/span> <span class=\"tok-keyword\">example<\/span><span class=\"tok-operator\">,<\/span> <span class=\"tok-keyword\">BubbleLights<\/span><span class=\"tok-operator\">:<\/span><\/div><div class=\"cm-line\"><span class=\"tok-keyword\">Java<\/span><\/div><div class=\"cm-line\"><\/div><div class=\"cm-line\"><span class=\"tok-keyword\">public<\/span> <span class=\"tok-keyword\">class<\/span> <span class=\"tok-keyword\">BubbleLights<\/span> <span class=\"tok-keyword\">extends<\/span> <span class=\"tok-keyword\">TreeDecorator<\/span> <span class=\"tok-punctuation\">{<\/span><\/div><div class=\"cm-line\"><span class=\"tok-keyword\">public<\/span> <span class=\"tok-keyword\">BubbleLights<\/span><span class=\"tok-punctuation\">(<\/span><span class=\"tok-keyword\">ChristmasTree<\/span> <span class=\"tok-keyword\">tree<\/span><span class=\"tok-punctuation\">)<\/span> <span class=\"tok-punctuation\">{<\/span><\/div><div class=\"cm-line\">  <span class=\"tok-keyword\">super<\/span><span class=\"tok-punctuation\">(<\/span><span class=\"tok-keyword\">tree<\/span><span class=\"tok-punctuation\">)<\/span><span class=\"tok-operator\">;<\/span><\/div><div class=\"cm-line\">  <span class=\"tok-punctuation\">}<\/span><\/div><div class=\"cm-line\"><\/div><div class=\"cm-line\"><span class=\"tok-operator\">@<\/span><span class=\"tok-keyword\">Override<\/span><\/div><div class=\"cm-line\"><span class=\"tok-keyword\">public<\/span> <span class=\"tok-keyword\">String<\/span> <span class=\"tok-keyword\">decorate<\/span><span class=\"tok-punctuation\">()<\/span> <span class=\"tok-punctuation\">{<\/span><\/div><div class=\"cm-line\">    <span class=\"tok-keyword\">return<\/span> <span class=\"tok-keyword\">super<\/span><span class=\"tok-operator\">.<\/span><span class=\"tok-keyword\">decorate<\/span><span class=\"tok-punctuation\">()<\/span> <span class=\"tok-operator\">+<\/span> <span class=\"tok-string\">&quot; with Bubble Lights&quot;<\/span><span class=\"tok-operator\">;<\/span><\/div><div class=\"cm-line\">  <span class=\"tok-punctuation\">}<\/span><\/div><div class=\"cm-line\"><span class=\"tok-punctuation\">}<\/span><\/div><div class=\"cm-line\"><\/div><div class=\"cm-line\"><span class=\"tok-keyword\">public<\/span> <span class=\"tok-keyword\">class<\/span> <span class=\"tok-keyword\">Garland<\/span> <span class=\"tok-keyword\">extends<\/span> <span class=\"tok-keyword\">TreeDecorator<\/span> <span class=\"tok-punctuation\">{<\/span><\/div><div class=\"cm-line\"><span class=\"tok-keyword\">public<\/span> <span class=\"tok-keyword\">Garland<\/span><span class=\"tok-punctuation\">(<\/span><span class=\"tok-keyword\">ChristmasTree<\/span> <span class=\"tok-keyword\">tree<\/span><span class=\"tok-punctuation\">)<\/span> <span class=\"tok-punctuation\">{<\/span><\/div><div class=\"cm-line\"><span class=\"tok-keyword\">super<\/span><span class=\"tok-punctuation\">(<\/span><span class=\"tok-keyword\">tree<\/span><span class=\"tok-punctuation\">)<\/span><span class=\"tok-operator\">;<\/span><\/div><div class=\"cm-line\"><span class=\"tok-punctuation\">}<\/span><\/div><div class=\"cm-line\"><\/div><div class=\"cm-line\"><span class=\"tok-operator\">@<\/span><span class=\"tok-keyword\">Override<\/span><\/div><div class=\"cm-line\"><span class=\"tok-keyword\">public<\/span> <span class=\"tok-keyword\">String<\/span> <span class=\"tok-keyword\">decorate<\/span><span class=\"tok-punctuation\">()<\/span> <span class=\"tok-punctuation\">{<\/span><\/div><div class=\"cm-line\">    <span class=\"tok-keyword\">return<\/span> <span class=\"tok-keyword\">super<\/span><span class=\"tok-operator\">.<\/span><span class=\"tok-keyword\">decorate<\/span><span class=\"tok-punctuation\">()<\/span> <span class=\"tok-operator\">+<\/span> <span class=\"tok-string\">&quot; with Garland&quot;<\/span><span class=\"tok-operator\">;<\/span><\/div><div class=\"cm-line\"><span class=\"tok-punctuation\">}<\/span><\/div><div class=\"cm-line\"><\/div><div class=\"cm-line\"><span class=\"tok-punctuation\">}<\/span><\/div><div class=\"cm-line\"><span class=\"tok-keyword\">Usage<\/span><span class=\"tok-operator\">:<\/span><\/div><div class=\"cm-line\"><span class=\"tok-keyword\">Create<\/span> <span class=\"tok-keyword\">decorated<\/span> <span class=\"tok-keyword\">trees<\/span><span class=\"tok-operator\">:<\/span><\/div><div class=\"cm-line\"><\/div><div class=\"cm-line\"><span class=\"tok-keyword\">public<\/span> <span class=\"tok-keyword\">class<\/span> <span class=\"tok-keyword\">DecoratorPatternDemo<\/span> <span class=\"tok-punctuation\">{<\/span><\/div><div class=\"cm-line\"><span class=\"tok-keyword\">public<\/span> <span class=\"tok-keyword\">static<\/span> <span class=\"tok-keyword\">void<\/span> <span class=\"tok-keyword\">main<\/span><span class=\"tok-punctuation\">(<\/span><span class=\"tok-keyword\">String<\/span><span class=\"tok-punctuation\">[]<\/span> <span class=\"tok-keyword\">args<\/span><span class=\"tok-punctuation\">)<\/span> <span class=\"tok-punctuation\">{<\/span><\/div><div class=\"cm-line\"><span class=\"tok-keyword\">ChristmasTree<\/span> <span class=\"tok-keyword\">tree1<\/span> <span class=\"tok-operator\">=<\/span> <span class=\"tok-keyword\">new<\/span> <span class=\"tok-keyword\">Garland<\/span><span class=\"tok-punctuation\">(<\/span><span class=\"tok-keyword\">new<\/span> <span class=\"tok-keyword\">ChristmasTreeImpl<\/span><span class=\"tok-punctuation\">())<\/span><span class=\"tok-operator\">;<\/span><\/div><div class=\"cm-line\"><span class=\"tok-keyword\">System<\/span><span class=\"tok-operator\">.<\/span><span class=\"tok-keyword\">out<\/span><span class=\"tok-operator\">.<\/span><span class=\"tok-keyword\">println<\/span><span class=\"tok-punctuation\">(<\/span><span class=\"tok-keyword\">tree1<\/span><span class=\"tok-operator\">.<\/span><span class=\"tok-keyword\">decorate<\/span><span class=\"tok-punctuation\">())<\/span><span class=\"tok-operator\">;<\/span> <\/div><div class=\"cm-line\"><span class=\"tok-operator\">\/\/<\/span> <span class=\"tok-variableName2\">Output: &quot;Christmas tree with Garland&quot;<\/span><\/div><div class=\"cm-line\"><span class=\"tok-keyword\">ChristmasTree<\/span> <span class=\"tok-keyword\">tree2<\/span> <span class=\"tok-operator\">=<\/span> <span class=\"tok-keyword\">new<\/span> <span class=\"tok-keyword\">BubbleLights<\/span><span class=\"tok-punctuation\">(<\/span><\/div><div class=\"cm-line\"><span class=\"tok-keyword\">new<\/span> <span class=\"tok-keyword\">Garland<\/span><span class=\"tok-punctuation\">(<\/span><span class=\"tok-keyword\">new<\/span> <span class=\"tok-keyword\">Garland<\/span><span class=\"tok-punctuation\">(<\/span><span class=\"tok-keyword\">new<\/span> <span class=\"tok-keyword\">ChristmasTreeImpl<\/span><span class=\"tok-punctuation\">())))<\/span><span class=\"tok-operator\">;<\/span><\/div><div class=\"cm-line\">    <span class=\"tok-keyword\">System<\/span><span class=\"tok-operator\">.<\/span><span class=\"tok-keyword\">out<\/span><span class=\"tok-operator\">.<\/span><span class=\"tok-keyword\">println<\/span><span class=\"tok-punctuation\">(<\/span><span class=\"tok-keyword\">tree2<\/span><span class=\"tok-operator\">.<\/span><span class=\"tok-keyword\">decorate<\/span><span class=\"tok-punctuation\">())<\/span><span class=\"tok-operator\">;<\/span> <\/div><div class=\"cm-line\">    <span class=\"tok-operator\">\/\/<\/span> <span class=\"tok-variableName2\">Output: &quot;Christmas tree with Garland with Garland <\/span><\/div><div class=\"cm-line\">    <span class=\"tok-operator\">\/\/<\/span> <span class=\"tok-keyword\">with<\/span> <span class=\"tok-keyword\">Bubble<\/span> <span class=\"tok-keyword\">Lights<\/span><span class=\"tok-string\">&quot;<\/span><\/div><div class=\"cm-line\">  <span class=\"tok-string\">}<\/span><\/div><div class=\"cm-line\"><span class=\"tok-string\">}<\/span><\/div><\/code><\/pre>\n\t\t<\/div>\n\t<\/div>\n<\/div>\n\n\n<p class=\"wp-block-paragraph\"><br>\u0417\u0430\u0433\u0432\u0430\u0440 \u043d\u044c \u0430\u0436\u043b\u044b\u043d \u04af\u0435\u0434 \u0447\u0438\u043c\u044d\u0433\u043b\u044d\u0433\u0447\u0438\u0439\u0433 \u043d\u044d\u043c\u0436, \u0448\u0430\u0430\u0440\u0434\u043b\u0430\u0433\u0430\u0442\u0430\u0439 \u0431\u043e\u043b \u0433\u043e\u0451\u043b \u0447\u0438\u043c\u044d\u0433\u043b\u044d\u043b\u0438\u0439\u043d \u0443\u044f\u043d \u0445\u0430\u0442\u0430\u043d \u0431\u0430\u0439\u0434\u043b\u044b\u0433 \u04e9\u0433\u0434\u04e9\u0433.<br>\u0427\u0438\u043c\u044d\u0433\u043b\u044d\u043b\u0438\u0439\u043d \u0437\u0430\u0433\u0432\u0430\u0440 \u043d\u044c \u043e\u0431\u044a\u0435\u043a\u0442\u044b\u043d \u04af\u043d\u0434\u0441\u044d\u043d \u0431\u04af\u0442\u0446\u0438\u0439\u0433 \u04e9\u04e9\u0440\u0447\u043b\u04e9\u0445\u0433\u04af\u0439\u0433\u044d\u044d\u0440 \u0442\u04af\u04af\u043d\u0438\u0439 \u04af\u0439\u043b \u0430\u0436\u0438\u043b\u043b\u0430\u0433\u0430\u0430\u0433 \u04e9\u0440\u0433\u04e9\u0436\u04af\u04af\u043b\u044d\u0445\u0438\u0439\u0433 \u0445\u04af\u0441\u0447 \u0431\u0443\u0439 \u043d\u04e9\u0445\u0446\u04e9\u043b\u0434 \u04e9\u0440\u0433\u04e9\u043d \u0445\u044d\u0440\u044d\u0433\u043b\u044d\u0433\u0434\u0434\u044d\u0433 \u0433\u044d\u0434\u0433\u0438\u0439\u0433 \u0441\u0430\u043d\u0430\u0430\u0440\u0430\u0439.<\/p>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h2 class=\"wp-block-heading\">\u0413\u0430\u0434\u043d\u0430 \u0447\u0438\u043c\u044d\u0433\u043b\u044d\u043b\u0438\u0439\u043d \u0437\u0430\u0433\u0432\u0430\u0440<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">\u0413\u0430\u0434\u043d\u0430 \u0447\u0438\u043c\u044d\u0433\u043b\u044d\u043b\u0438\u0439\u043d \u0437\u0430\u0433\u0432\u0430\u0440 \u043d\u044c \u043d\u044d\u0433\u0434\u0441\u044d\u043d \u0438\u043d\u0442\u0435\u0440\u0444\u0435\u0439\u0441\u044d\u044d\u0440 \u0445\u0430\u043d\u0433\u0430\u0441\u043d\u0430\u0430\u0440 \u043d\u0430\u0440\u0438\u0439\u043d \u0442\u04e9\u0432\u04e9\u0433\u0442\u044d\u0439 \u0434\u044d\u0434 \u0441\u0438\u0441\u0442\u0435\u043c\u0442\u044d\u0439 \u0445\u0430\u0440\u0438\u043b\u0446\u0430\u0445 \u0445\u0430\u0440\u0438\u043b\u0446\u0430\u0430\u0433 \u0445\u044f\u043b\u0431\u0430\u0440\u0448\u0443\u0443\u043b\u0434\u0430\u0433 \u0431\u04af\u0442\u0446\u0438\u0439\u043d \u0434\u0438\u0437\u0430\u0439\u043d\u044b \u0437\u0430\u0433\u0432\u0430\u0440 \u044e\u043c.<br>\u042d\u043d\u044d \u043d\u044c \u0434\u043e\u0442\u043e\u043e\u0434 \u043d\u0430\u0440\u0438\u0439\u043d \u0442\u04e9\u0432\u04e9\u0433\u0442\u044d\u0439 \u0431\u0430\u0439\u0434\u043b\u044b\u0433 \u043d\u0443\u0443\u0436, \u0441\u0438\u0441\u0442\u0435\u043c\u0438\u0439\u0433 \u04af\u0439\u043b\u0447\u043b\u04af\u04af\u043b\u044d\u0433\u0447\u0434\u044d\u0434 \u0438\u043b\u04af\u04af \u0445\u044f\u043b\u0431\u0430\u0440 \u0431\u043e\u043b\u0433\u043e\u0445 \u04af\u04af\u0434\u043d\u044d\u044d\u0441 &#8220;\u0443\u0440\u0434 \u0445\u0430\u0430\u043b\u0433\u0430&#8221; \u0431\u043e\u043b\u0436 \u0430\u0436\u0438\u043b\u043b\u0430\u0434\u0430\u0433.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">\u041d\u0438\u0439\u043b\u043c\u044d\u043b<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">\u041d\u0438\u0439\u043b\u043c\u044d\u043b \u0437\u0430\u0433\u0432\u0430\u0440 \u043d\u044c \u0431\u04af\u0445\u044d\u043b \u0431\u04af\u0442\u044d\u043d \u0448\u0430\u0442\u043b\u0430\u043b\u044b\u0433 \u0438\u043b\u044d\u0440\u0445\u0438\u0439\u043b\u044d\u0445\u0438\u0439\u043d \u0442\u0443\u043b\u0434 \u043e\u0431\u044a\u0435\u043a\u0442\u0443\u0443\u0434\u044b\u0433 \u043c\u043e\u0434\u043d\u044b \u0431\u04af\u0442\u044d\u0446 \u0431\u043e\u043b\u0433\u043e\u043d \u0431\u04af\u0440\u0434\u04af\u04af\u043b\u044d\u0445 \u0431\u043e\u043b\u043e\u043c\u0436\u0438\u0439\u0433 \u043e\u043b\u0433\u043e\u0434\u043e\u0433 \u0431\u04af\u0442\u0446\u0438\u0439\u043d \u0434\u0438\u0437\u0430\u0439\u043d\u044b \u0437\u0430\u0433\u0432\u0430\u0440 \u044e\u043c.<br>Composite Pattern-\u0438\u0439\u043d \u0433\u043e\u043b \u0441\u0430\u043d\u0430\u0430 \u043d\u044c \u0431\u0438\u0435 \u0434\u0430\u0430\u0441\u0430\u043d (\u043d\u0430\u0432\u0447) \u043e\u0431\u044a\u0435\u043a\u0442\u0443\u0443\u0434 \u0431\u043e\u043b\u043e\u043d \u043d\u0438\u0439\u043b\u043c\u044d\u043b \u043e\u0431\u044a\u0435\u043a\u0442\u0443\u0443\u0434 \u043d\u0438\u0439\u0442\u043b\u044d\u0433 \u0438\u043d\u0442\u0435\u0440\u0444\u0435\u0439\u0441\u0438\u0439\u0433 \u0445\u0443\u0432\u0430\u0430\u043b\u0446\u0434\u0430\u0433 \u043e\u0431\u044a\u0435\u043a\u0442\u0443\u0443\u0434\u044b\u043d \u043c\u043e\u0434\u043d\u044b \u0431\u04af\u0442\u0446\u0438\u0439\u0433 \u0431\u0438\u0439 \u0431\u043e\u043b\u0433\u043e\u0445 \u044f\u0432\u0434\u0430\u043b \u044e\u043c.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">\u04ae\u043d\u0434\u0441\u044d\u043d \u0431\u04af\u0440\u044d\u043b\u0434\u044d\u0445\u04af\u04af\u043d \u0445\u044d\u0441\u044d\u0433 (\u0442\u044d\u043d\u0445\u0438\u043c): \u0411\u0438\u0434 \u044d\u043d\u0433\u0438\u0439\u043d \u0445\u044d\u043b\u0442\u0441\u0438\u0439\u043d \u0438\u043d\u0442\u0435\u0440\u0444\u0435\u0439\u0441\u0438\u0439\u0433 \u04af\u043d\u0434\u0441\u044d\u043d \u0431\u04af\u0440\u044d\u043b\u0434\u044d\u0445\u04af\u04af\u043d \u0445\u044d\u0441\u044d\u0433 \u0431\u043e\u043b\u0433\u043e\u043d \u0442\u043e\u0434\u043e\u0440\u0445\u043e\u0439\u043b\u043e\u0445 \u0431\u043e\u043b\u043d\u043e.<\/p>\n\n\n<div class=\"wp-block-code\">\n\t<div class=\"cm-editor\">\n\t\t<div class=\"cm-scroller\">\n\t\t\t\n<pre>\n<code><div class=\"cm-line\">public interface Department {<\/div><div class=\"cm-line\">void printDepartmentName();<\/div><div class=\"cm-line\">}<\/div><div class=\"cm-line\"><\/div><div class=\"cm-line\">Leaf Components (FinancialDepartment and SalesDepartment): <\/div><div class=\"cm-line\">Let\u2019s create classes for financial and sales departments, <\/div><div class=\"cm-line\">both implementing the Department interface:<\/div><div class=\"cm-line\"><\/div><div class=\"cm-line\">public class FinancialDepartment implements Department {<\/div><div class=\"cm-line\">  \/\/ Implementation details (e.g., id, name)<\/div><div class=\"cm-line\">  public void printDepartmentName() {<\/div><div class=\"cm-line\">  System.out.println(getClass().getSimpleName());<\/div><div class=\"cm-line\">  }<\/div><div class=\"cm-line\">}<\/div><div class=\"cm-line\"><\/div><div class=\"cm-line\">public class SalesDepartment implements Department {<\/div><div class=\"cm-line\">  \/\/ Implementation details (e.g., id, name)<\/div><div class=\"cm-line\">  public void printDepartmentName() {<\/div><div class=\"cm-line\">  System.out.println(getClass().getSimpleName());<\/div><div class=\"cm-line\">  }<\/div><div class=\"cm-line\">}<\/div><div class=\"cm-line\"><\/div><div class=\"cm-line\">These leaf classes implement the printDepartmentName() <\/div><div class=\"cm-line\">method and don\u2019t contain references to other Department objects.<\/div><div class=\"cm-line\">Composite Element (HeadDepartment): As a composite class, <\/div><div class=\"cm-line\">let\u2019s create a HeadDepartment that holds a collection of <\/div><div class=\"cm-line\">Department components:<\/div><div class=\"cm-line\"><\/div><div class=\"cm-line\">import java.util.ArrayList;<\/div><div class=\"cm-line\">import java.util.List;<\/div><div class=\"cm-line\"><\/div><div class=\"cm-line\">public class HeadDepartment implements Department {<\/div><div class=\"cm-line\">  private Integer id;<\/div><div class=\"cm-line\">  private String name;<\/div><div class=\"cm-line\">  private List childDepartments;<\/div><div class=\"cm-line\"><\/div><div class=\"cm-line\">  public HeadDepartment(Integer id, String name) {<\/div><div class=\"cm-line\">    this.id = id;<\/div><div class=\"cm-line\">    this.name = name;<\/div><div class=\"cm-line\">    this.childDepartments = new ArrayList&lt;&gt;();<\/div><div class=\"cm-line\">  }<\/div><div class=\"cm-line\"><\/div><div class=\"cm-line\">  public void printDepartmentName() {<\/div><div class=\"cm-line\">    childDepartments.forEach(Department::printDepartmentName);<\/div><div class=\"cm-line\">  }<\/div><div class=\"cm-line\"><\/div><div class=\"cm-line\">  public void addDepartment(Department department) {<\/div><div class=\"cm-line\">    childDepartments.add(department);<\/div><div class=\"cm-line\">  }<\/div><div class=\"cm-line\"><\/div><div class=\"cm-line\">  public void removeDepartment(Department department) {<\/div><div class=\"cm-line\">    childDepartments.remove(department);<\/div><div class=\"cm-line\">  }<\/div><div class=\"cm-line\">}<\/div><\/code><\/pre>\n\t\t<\/div>\n\t<\/div>\n<\/div>\n\n\n<p class=\"wp-block-paragraph\">HeadDepartment \u0430\u043d\u0433\u0438 \u043d\u044c printDepartmentName() \u0430\u0440\u0433\u044b\u0433 \u0445\u044d\u0440\u044d\u0433\u0436\u04af\u04af\u043b\u0434\u044d\u0433 \u0431\u04e9\u0433\u04e9\u04e9\u0434 \u0445\u04af\u04af\u0445\u044d\u0434 \u0445\u044d\u043b\u0442\u044d\u0441 \u043d\u044d\u043c\u044d\u0445, \u0445\u0430\u0441\u0430\u0445 \u0430\u0440\u0433\u0443\u0443\u0434\u044b\u0433 \u04e9\u0433\u0434\u04e9\u0433.<br>\u0425\u044d\u0440\u044d\u0433\u043b\u044d\u044d: \u0422\u0430 \u0445\u0443\u0443\u0434\u0430\u0441\u043d\u044b \u0445\u044d\u043b\u0442\u044d\u0441 (\u0436\u0438\u0448\u044d\u044d \u043d\u044c, \u0421\u0430\u043d\u0445\u04af\u04af\u0433\u0438\u0439\u043d \u0445\u044d\u043b\u0442\u044d\u0441, \u0411\u043e\u0440\u043b\u0443\u0443\u043b\u0430\u043b\u0442\u044b\u043d \u0445\u044d\u043b\u0442\u044d\u0441) \u200b\u200b\u0431\u043e\u043b\u043e\u043d \u043d\u0438\u0439\u043b\u043c\u044d\u043b \u0445\u044d\u043b\u0442\u0441\u04af\u04af\u0434\u0438\u0439\u043d (\u0436\u0438\u0448\u044d\u044d \u043d\u044c, Head Department) \u0436\u0438\u0448\u044d\u044d \u04af\u04af\u0441\u0433\u044d\u0436 \u0431\u043e\u043b\u043d\u043e. \u041d\u0438\u0439\u043b\u043c\u044d\u043b \u0445\u0443\u0443\u0434\u0430\u0441\u043d\u044b \u0445\u044d\u0441\u0433\u04af\u04af\u0434\u0438\u0439\u0433 \u043d\u044d\u043c\u0436, \u043d\u044d\u0440\u0438\u0439\u0433 \u043d\u044c \u0445\u044d\u0432\u043b\u044d.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\"><\/p>\n\n\n<div class=\"wp-block-code\">\n\t<div class=\"cm-editor\">\n\t\t<div class=\"cm-scroller\">\n\t\t\t\n<pre>\n<code class=\"language-mathematica\"><div class=\"cm-line\"><span class=\"tok-keyword\">public<\/span> <span class=\"tok-keyword\">class<\/span> <span class=\"tok-keyword\">Main<\/span> <span class=\"tok-punctuation\">{<\/span><\/div><div class=\"cm-line\"><span class=\"tok-keyword\">public<\/span> <span class=\"tok-keyword\">static<\/span> <span class=\"tok-keyword\">void<\/span> <span class=\"tok-keyword\">main<\/span><span class=\"tok-punctuation\">(<\/span><span class=\"tok-keyword\">String<\/span><span class=\"tok-punctuation\">[]<\/span> <span class=\"tok-keyword\">args<\/span><span class=\"tok-punctuation\">)<\/span> <span class=\"tok-punctuation\">{<\/span><\/div><div class=\"cm-line\">    <span class=\"tok-keyword\">Department<\/span> <span class=\"tok-keyword\">finance<\/span> <span class=\"tok-operator\">=<\/span> <span class=\"tok-keyword\">new<\/span> <span class=\"tok-keyword\">FinancialDepartment<\/span><span class=\"tok-punctuation\">()<\/span><span class=\"tok-operator\">;<\/span><\/div><div class=\"cm-line\">    <span class=\"tok-keyword\">Department<\/span> <span class=\"tok-keyword\">sales<\/span> <span class=\"tok-operator\">=<\/span> <span class=\"tok-keyword\">new<\/span> <span class=\"tok-keyword\">SalesDepartment<\/span><span class=\"tok-punctuation\">()<\/span><span class=\"tok-operator\">;<\/span><\/div><div class=\"cm-line\">    <span class=\"tok-keyword\">HeadDepartment<\/span> <span class=\"tok-keyword\">headDepartment<\/span> <span class=\"tok-operator\">=<\/span> <span class=\"tok-keyword\">new<\/span> <span class=\"tok-keyword\">HeadDepartment<\/span><span class=\"tok-punctuation\">(<\/span><span class=\"tok-number\">1<\/span><span class=\"tok-operator\">,<\/span> <\/div><div class=\"cm-line\">    <span class=\"tok-string\">&quot;Company Departments&quot;<\/span><span class=\"tok-punctuation\">)<\/span><span class=\"tok-operator\">;<\/span><\/div><div class=\"cm-line\">    <span class=\"tok-keyword\">headDepartment<\/span><span class=\"tok-operator\">.<\/span><span class=\"tok-keyword\">addDepartment<\/span><span class=\"tok-punctuation\">(<\/span><span class=\"tok-keyword\">finance<\/span><span class=\"tok-punctuation\">)<\/span><span class=\"tok-operator\">;<\/span><\/div><div class=\"cm-line\">    <span class=\"tok-keyword\">headDepartment<\/span><span class=\"tok-operator\">.<\/span><span class=\"tok-keyword\">addDepartment<\/span><span class=\"tok-punctuation\">(<\/span><span class=\"tok-keyword\">sales<\/span><span class=\"tok-punctuation\">)<\/span><span class=\"tok-operator\">;<\/span><\/div><div class=\"cm-line\">    <span class=\"tok-keyword\">headDepartment<\/span><span class=\"tok-operator\">.<\/span><span class=\"tok-keyword\">printDepartmentName<\/span><span class=\"tok-punctuation\">()<\/span><span class=\"tok-operator\">;<\/span><\/div><div class=\"cm-line\">  <span class=\"tok-punctuation\">}<\/span><\/div><div class=\"cm-line\"><span class=\"tok-punctuation\">}<\/span><\/div><div class=\"cm-line\"><\/div><div class=\"cm-line\"><span class=\"tok-keyword\">Output<\/span><span class=\"tok-operator\">:<\/span><\/div><div class=\"cm-line\"><span class=\"tok-keyword\">FinancialDepartment<\/span><\/div><div class=\"cm-line\"><span class=\"tok-keyword\">SalesDepartment<\/span><\/div><\/code><\/pre>\n\t\t<\/div>\n\t<\/div>\n<\/div>\n\n\n<p class=\"wp-block-paragraph\">\u041d\u0438\u0439\u043b\u043c\u044d\u043b \u0437\u0430\u0433\u0432\u0430\u0440 \u043d\u044c \u0443\u044f\u043d \u0445\u0430\u0442\u0430\u043d \u043c\u043e\u0434\u043d\u044b \u0431\u04af\u0442\u0446\u0438\u0439\u0433 \u0431\u0438\u0439 \u0431\u043e\u043b\u0433\u043e\u0445 \u0431\u043e\u043b\u043e\u043c\u0436\u0438\u0439\u0433 \u043e\u043b\u0433\u043e\u0434\u043e\u0433<br>\u0431\u0438\u0435 \u0434\u0430\u0430\u0441\u0430\u043d \u043e\u0431\u044a\u0435\u043a\u0442, \u043d\u0430\u0439\u0440\u043b\u0430\u0433\u0430 (\u043d\u0438\u0439\u043b\u043c\u044d\u043b \u043c\u0430\u0442\u0435\u0440\u0438\u0430\u043b) -\u0438\u0439\u0433 \u0436\u0438\u0433\u0434 \u044d\u043c\u0447\u0438\u043b\u0436 \u0431\u043e\u043b\u043d\u043e.<\/p>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h2 class=\"wp-block-heading\">HASH \u0444\u0443\u043d\u043a\u0446 \u0433\u044d\u0436 \u044e\u0443 \u0432\u044d!!!<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">\u0425\u044d\u0448 \u0444\u0443\u043d\u043a\u0446 \u043d\u044c \u043e\u0440\u043e\u043b\u0442 (\u044d\u0441\u0432\u044d\u043b &#8220;\u043c\u0435\u0441\u0441\u0435\u0436&#8221;) \u0430\u0432\u0447, \u0442\u043e\u0433\u0442\u043c\u043e\u043b \u0443\u0440\u0442\u0442\u0430\u0439 \u0442\u044d\u043c\u0434\u044d\u0433\u0442\u04af\u04af\u0434\u0438\u0439\u0433 \u0431\u0443\u0446\u0430\u0430\u0434\u0430\u0433 \u043c\u0430\u0442\u0435\u043c\u0430\u0442\u0438\u043a \u0444\u0443\u043d\u043a\u0446 \u044e\u043c.<br>\u042d\u043d\u044d \u043d\u044c \u0438\u0445\u044d\u0432\u0447\u043b\u044d\u043d \u0442\u043e\u043e, \u04af\u0441\u0433\u0438\u0439\u043d \u0434\u0430\u0440\u0430\u0430\u043b\u0430\u043b \u044e\u043c. \u042d\u043d\u044d \u0433\u0430\u0440\u0430\u043b\u0442\u044b\u0433 &#8220;\u0445\u044d\u0448 \u0443\u0442\u0433\u0430&#8221; \u044d\u0441\u0432\u044d\u043b \u0437\u04af\u0433\u044d\u044d\u0440 \u043b &#8220;\u0445\u044d\u0448&#8221; \u0433\u044d\u0436 \u043d\u044d\u0440\u043b\u044d\u0434\u044d\u0433. <br>\u0425\u044d\u0448 \u0444\u0443\u043d\u043a\u0446\u0443\u0443\u0434 \u043d\u044c \u043a\u043e\u043c\u043f\u044c\u044e\u0442\u0435\u0440\u0438\u0439\u043d \u0448\u0438\u043d\u0436\u043b\u044d\u0445 \u0443\u0445\u0430\u0430\u043d, \u043a\u0440\u0438\u043f\u0442\u043e\u0433\u0440\u0430\u0444\u0438\u0434 \u04e9\u0440\u0433\u04e9\u043d \u0445\u044d\u0440\u044d\u0433\u043b\u044d\u0433\u0434\u0434\u044d\u0433 \u0431\u04e9\u0433\u04e9\u04e9\u0434 \u0445\u044d\u0434 \u0445\u044d\u0434\u044d\u043d \u0447\u0443\u0445\u0430\u043b \u0448\u0438\u043d\u0436 \u0447\u0430\u043d\u0430\u0440\u0442\u0430\u0439 \u0431\u0430\u0439\u0434\u0430\u0433.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">\u0425\u044d\u0448 \u0444\u0443\u043d\u043a\u0446\u0438\u0439\u0433 \u0445\u044d\u0440\u0445\u044d\u043d \u0430\u0448\u0438\u0433\u043b\u0430\u0434\u0430\u0433, \u0445\u044d\u0440\u0445\u044d\u043d \u0430\u0436\u0438\u043b\u043b\u0430\u0434\u0430\u0433 \u0432\u044d?<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">\u0422\u043e\u0434\u043e\u0440\u0445\u043e\u0439\u043b\u043e\u0433\u0447: \u0418\u0436\u0438\u043b \u043e\u0440\u043e\u043b\u0442 \u043d\u044c \u04af\u0440\u0433\u044d\u043b\u0436 \u0438\u0436\u0438\u043b \u0445\u044d\u0448 \u04af\u04af\u0441\u0433\u044d\u0445 \u0431\u043e\u043b\u043d\u043e.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">\u0425\u0443\u0440\u0434\u0430\u043d: \u0424\u0443\u043d\u043a\u0446 \u043d\u044c \u0430\u043b\u0438\u0432\u0430\u0430 \u043e\u0440\u043e\u043b\u0442\u044b\u043d \u0445\u044d\u0448 \u0443\u0442\u0433\u044b\u0433 \u0445\u0443\u0440\u0434\u0430\u043d \u0442\u043e\u043e\u0446\u043e\u043e\u043b\u043e\u0445 \u0431\u043e\u043b\u043e\u043c\u0436\u0442\u043e\u0439.<br>\u04e8\u0432\u04e9\u0440\u043c\u04e9\u0446 (\u0431\u0430\u0440\u0430\u0433): \u0425\u043e\u0451\u0440 \u04e9\u04e9\u0440 \u043e\u0440\u043e\u043b\u0442 \u043d\u044c \u04e9\u04e9\u0440 \u04e9\u04e9\u0440 \u0445\u044d\u0448 \u0443\u0442\u0433\u044b\u0433 \u04af\u04af\u0441\u0433\u044d\u0445 \u0451\u0441\u0442\u043e\u0439 (\u0431\u0438\u0434 &#8220;\u043c\u04e9\u0440\u0433\u04e9\u043b\u0434\u04e9\u04e9\u043d\u0438\u0439\u0433&#8221; \u0431\u0430\u0433\u0430\u0441\u0433\u0430\u0445\u044b\u0433 \u0445\u0438\u0447\u044d\u044d\u0434\u044d\u0433).<br>\u042d\u0440\u0433\u044d\u0445 \u0431\u043e\u043b\u043e\u043c\u0436\u0433\u04af\u0439 (\u041d\u044d\u0433 \u0442\u0430\u043b\u044b\u043d): \u0425\u044d\u0448\u0438\u0439\u0433 \u04e9\u0433\u04e9\u0433\u0434\u0441\u04e9\u043d \u0442\u043e\u0445\u0438\u043e\u043b\u0434\u043e\u043b\u0434 \u0430\u043d\u0445\u043d\u044b \u043e\u0440\u043e\u043b\u0442\u044b\u0433 \u0441\u044d\u0440\u0433\u044d\u044d\u0445 \u043d\u044c \u0442\u043e\u043e\u0446\u043e\u043e\u043b\u043b\u044b\u043d \u0445\u0443\u0432\u044c\u0434 \u0431\u043e\u043b\u043e\u043c\u0436\u0433\u04af\u0439 \u0431\u0430\u0439\u0445 \u0451\u0441\u0442\u043e\u0439.<br>\u041d\u044d\u0433 \u0442\u04e9\u0440\u043b\u0438\u0439\u043d: \u0425\u044d\u0448 \u0443\u0442\u0433\u0443\u0443\u0434 \u043d\u044c \u044d\u0445 \u043e\u0440\u043e\u043d \u0437\u0430\u0439\u0434 \u0436\u0438\u0433\u0434 \u0442\u0430\u0440\u0445\u0441\u0430\u043d.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">\u0425\u044d\u0448 \u0444\u0443\u043d\u043a\u0446\u0438\u0439\u0433 \u044f\u043d\u0437 \u0431\u04af\u0440\u0438\u0439\u043d \u0445\u044d\u0440\u044d\u0433\u043b\u044d\u044d\u043d\u0434 \u04e9\u0440\u0433\u04e9\u043d \u0430\u0448\u0438\u0433\u043b\u0430\u0434\u0430\u0433, \u0442\u0443\u0445\u0430\u0439\u043b\u0431\u0430\u043b:<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">\u04e8\u0433\u04e9\u0433\u0434\u043b\u0438\u0439\u043d \u0431\u04af\u0440\u044d\u043d \u0431\u04af\u0442\u044d\u043d \u0431\u0430\u0439\u0434\u0430\u043b: \u0425\u044d\u0448 \u0443\u0442\u0433\u044b\u0433 \u0445\u0430\u0440\u044c\u0446\u0443\u0443\u043b\u0430\u0445 \u0437\u0430\u043c\u0430\u0430\u0440 \u04e9\u0433\u04e9\u0433\u0434\u04e9\u043b\u0434 \u04e9\u04e9\u0440\u0447\u043b\u04e9\u043b\u0442 \u043e\u0440\u043e\u043e\u0433\u04af\u0439, \u0445\u04e9\u043d\u0434\u043b\u04e9\u043d\u0433\u0438\u0439\u043d \u043e\u0440\u043e\u043b\u0446\u043e\u043e\u0433\u04af\u0439 \u044d\u0441\u044d\u0445\u0438\u0439\u0433 \u0431\u0430\u0442\u0430\u043b\u0433\u0430\u0430\u0436\u0443\u0443\u043b\u0430\u0445.<br>\u041d\u0443\u0443\u0446 \u04af\u0433 \u0445\u0430\u0434\u0433\u0430\u043b\u0430\u0445: \u0416\u0438\u043d\u0445\u044d\u043d\u044d \u043d\u0443\u0443\u0446 \u04af\u0433\u0438\u0439\u043d \u043e\u0440\u043e\u043d\u0434 \u0445\u044d\u0448\u043b\u044d\u0433\u0434\u0441\u044d\u043d \u043d\u0443\u0443\u0446 \u04af\u0433\u0438\u0439\u0433 \u043d\u0430\u0439\u0434\u0432\u0430\u0440\u0442\u0430\u0439 \u0445\u0430\u0434\u0433\u0430\u043b\u0430\u0445 \u0437\u043e\u0440\u0438\u0443\u043b\u0430\u043b\u0442\u0442\u0430\u0439.<br>\u041a\u0440\u0438\u043f\u0442\u043e\u0433\u0440\u0430\u0444\u0438: \u0422\u043e\u043e\u043d \u0433\u0430\u0440\u044b\u043d \u04af\u0441\u044d\u0433 \u0431\u043e\u043b\u043e\u043d \u0431\u0443\u0441\u0430\u0434 \u043a\u0440\u0438\u043f\u0442\u043e\u0433\u0440\u0430\u0444 \u0430\u043b\u0433\u043e\u0440\u0438\u0442\u043c\u0434 \u0430\u0448\u0438\u0433\u043b\u0430\u0434\u0430\u0433.<br>\u0425\u044d\u0448 \u0425\u04af\u0441\u043d\u044d\u0433\u0442\u04af\u04af\u0434: \u041f\u0440\u043e\u0433\u0440\u0430\u043c\u0447\u043b\u0430\u043b\u0434 \u04e9\u0433\u04e9\u0433\u0434\u043b\u0438\u0439\u0433 \u04af\u0440 \u0434\u04af\u043d\u0442\u044d\u0439 \u043e\u043b\u0436 \u0430\u0432\u0430\u0445\u0430\u0434 \u0437\u043e\u0440\u0438\u0443\u043b\u0430\u0433\u0434\u0441\u0430\u043d.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">\u041d\u0430\u0434\u0430\u0434 \u0445\u044d\u0448 \u0437\u0443\u0440\u0433\u0438\u0439\u043d \u0436\u0438\u0448\u044d\u044d \u04e9\u0433\u04e9\u04e9\u0447 &#8211; \u0442\u0430 \u04af\u04af\u043d\u0438\u0439\u0433 \u0445\u044d\u0440\u0445\u044d\u043d \u0445\u044d\u0440\u044d\u0433\u0436\u04af\u04af\u043b\u044d\u0445 \u0432\u044d?<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">SHA (\u0430\u044e\u0443\u043b\u0433\u04af\u0439 \u0445\u044d\u0448 \u0430\u043b\u0433\u043e\u0440\u0438\u0442\u043c):<br>\u04ae\u04af\u043d\u0434 SHA-1, SHA-256, SHA-384, SHA-512 \u0437\u044d\u0440\u044d\u0433 \u0445\u0443\u0432\u0438\u043b\u0431\u0430\u0440\u0443\u0443\u0434 \u0431\u0430\u0433\u0442\u0434\u0430\u0433.<br>SHA-256 \u0431\u0430 SHA-512 \u043d\u044c \u043a\u0440\u0438\u043f\u0442\u043e\u0433\u0440\u0430\u0444 \u0431\u043e\u043b\u043e\u043d \u0431\u043b\u043e\u043a\u0447\u0435\u0439\u043d \u0442\u0435\u0445\u043d\u043e\u043b\u043e\u0433\u0438\u0434 \u04e9\u0440\u0433\u04e9\u043d \u0445\u044d\u0440\u044d\u0433\u043b\u044d\u0433\u0434\u0434\u044d\u0433 (\u0436\u0438\u0448\u044d\u044d\u043b\u0431\u044d\u043b, Bitcoin).<\/p>\n\n\n\n<p class=\"wp-block-paragraph\"><\/p>\n\n\n<div class=\"wp-block-code\">\n\t<div class=\"cm-editor\">\n\t\t<div class=\"cm-scroller\">\n\t\t\t\n<pre>\n<code class=\"language-mathematica\"><div class=\"cm-line\"><span class=\"tok-keyword\">import<\/span> <span class=\"tok-keyword\">java<\/span><span class=\"tok-operator\">.<\/span><span class=\"tok-keyword\">security<\/span><span class=\"tok-operator\">.<\/span><span class=\"tok-keyword\">MessageDigest<\/span><span class=\"tok-operator\">;<\/span><\/div><div class=\"cm-line\"><span class=\"tok-keyword\">import<\/span> <span class=\"tok-keyword\">java<\/span><span class=\"tok-operator\">.<\/span><span class=\"tok-keyword\">security<\/span><span class=\"tok-operator\">.<\/span><span class=\"tok-keyword\">NoSuchAlgorithmException<\/span><span class=\"tok-operator\">;<\/span><\/div><div class=\"cm-line\"><\/div><div class=\"cm-line\"><span class=\"tok-keyword\">public<\/span> <span class=\"tok-keyword\">class<\/span> <span class=\"tok-keyword\">HashExample<\/span> <span class=\"tok-punctuation\">{<\/span><\/div><div class=\"cm-line\"><span class=\"tok-keyword\">public<\/span> <span class=\"tok-keyword\">static<\/span> <span class=\"tok-keyword\">void<\/span> <span class=\"tok-keyword\">main<\/span><span class=\"tok-punctuation\">(<\/span><span class=\"tok-keyword\">String<\/span><span class=\"tok-punctuation\">[]<\/span> <span class=\"tok-keyword\">args<\/span><span class=\"tok-punctuation\">)<\/span> <span class=\"tok-punctuation\">{<\/span><\/div><div class=\"cm-line\"><span class=\"tok-keyword\">try<\/span> <span class=\"tok-punctuation\">{<\/span><\/div><div class=\"cm-line\"><span class=\"tok-operator\">\/\/<\/span> <span class=\"tok-keyword\">The<\/span> <span class=\"tok-keyword\">input<\/span> <span class=\"tok-keyword\">string<\/span> <span class=\"tok-keyword\">to<\/span> <span class=\"tok-keyword\">be<\/span> <span class=\"tok-keyword\">hashed<\/span><\/div><div class=\"cm-line\"><span class=\"tok-keyword\">String<\/span> <span class=\"tok-keyword\">input<\/span> <span class=\"tok-operator\">=<\/span> <span class=\"tok-string\">&quot;Hello, world!&quot;<\/span><span class=\"tok-operator\">;<\/span><\/div><div class=\"cm-line\">        <span class=\"tok-operator\">\/\/<\/span> <span class=\"tok-keyword\">Create<\/span> <span class=\"tok-keyword\">a<\/span> <span class=\"tok-keyword\">MessageDigest<\/span> <span class=\"tok-keyword\">instance<\/span> <span class=\"tok-keyword\">for<\/span> <span class=\"tok-keyword\">SHA<\/span><span class=\"tok-operator\">-<\/span><span class=\"tok-number\">256<\/span><\/div><div class=\"cm-line\">        <span class=\"tok-keyword\">MessageDigest<\/span> <span class=\"tok-keyword\">digest<\/span> <span class=\"tok-operator\">=<\/span> <\/div><div class=\"cm-line\">        <span class=\"tok-keyword\">MessageDigest<\/span><span class=\"tok-operator\">.<\/span><span class=\"tok-keyword\">getInstance<\/span><span class=\"tok-punctuation\">(<\/span><span class=\"tok-string\">&quot;SHA-256&quot;<\/span><span class=\"tok-punctuation\">)<\/span><span class=\"tok-operator\">;<\/span><\/div><div class=\"cm-line\"><\/div><div class=\"cm-line\">        <span class=\"tok-operator\">\/\/<\/span> <span class=\"tok-keyword\">Compute<\/span> <span class=\"tok-keyword\">the<\/span> <span class=\"tok-keyword\">hash<\/span><\/div><div class=\"cm-line\">        <span class=\"tok-keyword\">byte<\/span><span class=\"tok-punctuation\">[]<\/span> <span class=\"tok-keyword\">hash<\/span> <span class=\"tok-operator\">=<\/span> <span class=\"tok-keyword\">digest<\/span><span class=\"tok-operator\">.<\/span><span class=\"tok-keyword\">digest<\/span><span class=\"tok-punctuation\">(<\/span><span class=\"tok-keyword\">input<\/span><span class=\"tok-operator\">.<\/span><span class=\"tok-keyword\">getBytes<\/span><span class=\"tok-punctuation\">())<\/span><span class=\"tok-operator\">;<\/span><\/div><div class=\"cm-line\"><\/div><div class=\"cm-line\">        <span class=\"tok-operator\">\/\/<\/span> <span class=\"tok-keyword\">Convert<\/span> <span class=\"tok-keyword\">the<\/span> <span class=\"tok-keyword\">hash<\/span> <span class=\"tok-keyword\">bytes<\/span> <span class=\"tok-keyword\">to<\/span> <span class=\"tok-keyword\">a<\/span> <span class=\"tok-keyword\">hexadecimal<\/span> <span class=\"tok-keyword\">string<\/span><\/div><div class=\"cm-line\">        <span class=\"tok-keyword\">StringBuilder<\/span> <span class=\"tok-keyword\">hexString<\/span> <span class=\"tok-operator\">=<\/span> <span class=\"tok-keyword\">new<\/span> <span class=\"tok-keyword\">StringBuilder<\/span><span class=\"tok-punctuation\">()<\/span><span class=\"tok-operator\">;<\/span><\/div><div class=\"cm-line\">        <span class=\"tok-keyword\">for<\/span> <span class=\"tok-punctuation\">(<\/span><span class=\"tok-keyword\">byte<\/span> <span class=\"tok-variableName2\">b : hash) {<\/span><\/div><div class=\"cm-line\">            <span class=\"tok-keyword\">String<\/span> <span class=\"tok-keyword\">hex<\/span> <span class=\"tok-operator\">=<\/span> <span class=\"tok-keyword\">String<\/span><span class=\"tok-operator\">.<\/span><span class=\"tok-keyword\">format<\/span><span class=\"tok-punctuation\">(<\/span><span class=\"tok-string\">&quot;%02x&quot;<\/span><span class=\"tok-operator\">,<\/span> <span class=\"tok-keyword\">b<\/span><span class=\"tok-punctuation\">)<\/span><span class=\"tok-operator\">;<\/span><\/div><div class=\"cm-line\">            <span class=\"tok-keyword\">hexString<\/span><span class=\"tok-operator\">.<\/span><span class=\"tok-keyword\">append<\/span><span class=\"tok-punctuation\">(<\/span><span class=\"tok-keyword\">hex<\/span><span class=\"tok-punctuation\">)<\/span><span class=\"tok-operator\">;<\/span><\/div><div class=\"cm-line\">        <span class=\"tok-punctuation\">}<\/span><\/div><div class=\"cm-line\"><\/div><div class=\"cm-line\">        <span class=\"tok-operator\">\/\/<\/span> <span class=\"tok-keyword\">Print<\/span> <span class=\"tok-keyword\">the<\/span> <span class=\"tok-keyword\">resulting<\/span> <span class=\"tok-keyword\">hash<\/span><\/div><div class=\"cm-line\">        <span class=\"tok-keyword\">System<\/span><span class=\"tok-operator\">.<\/span><span class=\"tok-keyword\">out<\/span><span class=\"tok-operator\">.<\/span><span class=\"tok-keyword\">println<\/span><span class=\"tok-punctuation\">(<\/span><span class=\"tok-string\">&quot;SHA-256 Hash: &quot;<\/span> <span class=\"tok-operator\">+<\/span> <\/div><div class=\"cm-line\">        <span class=\"tok-keyword\">hexString<\/span><span class=\"tok-operator\">.<\/span><span class=\"tok-keyword\">toString<\/span><span class=\"tok-punctuation\">())<\/span><span class=\"tok-operator\">;<\/span><\/div><div class=\"cm-line\">    <span class=\"tok-punctuation\">}<\/span> <span class=\"tok-keyword\">catch<\/span> <span class=\"tok-punctuation\">(<\/span><span class=\"tok-keyword\">NoSuchAlgorithmException<\/span> <span class=\"tok-keyword\">e<\/span><span class=\"tok-punctuation\">)<\/span> <span class=\"tok-punctuation\">{<\/span><\/div><div class=\"cm-line\">        <span class=\"tok-keyword\">System<\/span><span class=\"tok-operator\">.<\/span><span class=\"tok-keyword\">err<\/span><span class=\"tok-operator\">.<\/span><span class=\"tok-keyword\">println<\/span><span class=\"tok-punctuation\">(<\/span><span class=\"tok-string\">&quot;Error: &quot;<\/span> <span class=\"tok-operator\">+<\/span> <span class=\"tok-keyword\">e<\/span><span class=\"tok-operator\">.<\/span><span class=\"tok-keyword\">getMessage<\/span><span class=\"tok-punctuation\">())<\/span><span class=\"tok-operator\">;<\/span><\/div><div class=\"cm-line\">    <span class=\"tok-punctuation\">}<\/span><\/div><div class=\"cm-line\">  <span class=\"tok-punctuation\">}<\/span><\/div><div class=\"cm-line\"><span class=\"tok-punctuation\">}<\/span><\/div><\/code><\/pre>\n\t\t<\/div>\n\t<\/div>\n<\/div>\n\n\n<p class=\"wp-block-paragraph\">\u041e\u0440\u043e\u043b\u0442\u044b\u043d \u04e9\u0433\u04e9\u0433\u0434\u04e9\u043b: \u041e\u0440\u043e\u043b\u0442\u044b\u043d \u0445\u0443\u0432\u044c\u0441\u0430\u0433\u0447 \u043d\u044c \u0431\u0438\u0434\u043d\u0438\u0439 \u0445\u044d\u0448 \u0431\u043e\u043b\u0433\u043e\u0445\u044b\u0433 \u0445\u04af\u0441\u0441\u044d\u043d \u04e9\u0433\u04e9\u0433\u0434\u043b\u0438\u0439\u0433 \u0430\u0433\u0443\u0443\u043b\u043d\u0430.<br>MessageDigest \u044d\u0445\u043b\u04af\u04af\u043b\u044d\u0445: MessageDigest \u0436\u0438\u0448\u044d\u044d\u0433 SHA-256 \u0445\u044d\u0448\u043b\u044d\u0445 \u0430\u043b\u0433\u043e\u0440\u0438\u0442\u043c\u044b\u0433 \u0442\u043e\u0434\u043e\u0440\u0445\u043e\u0439\u043b\u0441\u043e\u043d getInstance(&#8220;SHA-256&#8221;) \u0430\u0448\u0438\u0433\u043b\u0430\u043d \u04af\u04af\u0441\u0433\u044d\u0441\u044d\u043d.<br>\u0425\u044d\u0448: \u0414\u0438\u0436\u0435\u0441\u0442 \u0430\u0440\u0433\u0430 \u043d\u044c \u043e\u0440\u043e\u043b\u0442\u044b\u043d \u04e9\u0433\u04e9\u0433\u0434\u043b\u0438\u0439\u043d \u0445\u044d\u0448 \u0443\u0442\u0433\u044b\u0433 \u0442\u043e\u043e\u0446\u0434\u043e\u0433.<br>\u0410\u0440\u0432\u0430\u043d \u0430\u0440\u0430\u0432\u0442\u044b\u043d \u0442\u043e\u043e\u043d \u0445\u0443\u0432\u0438\u0440\u0433\u0430\u043b\u0442: \u0425\u044d\u0448 \u0443\u0442\u0433\u0430 \u043d\u044c \u0445\u043e\u0451\u0440\u0442\u044b\u043d \u0444\u043e\u0440\u043c\u0430\u0442\u0442\u0430\u0439 \u0442\u0443\u043b \u0431\u0438\u0434 \u04af\u04af\u043d\u0438\u0439\u0433 \u0438\u043b\u04af\u04af \u0443\u043d\u0448\u0438\u0433\u0434\u0430\u0445\u0443\u0439\u0446 \u0430\u0440\u0432\u0430\u043d \u0437\u0443\u0440\u0433\u0430\u0430\u043d \u0442\u043e\u043e\u0442 \u043c\u04e9\u0440 \u0431\u043e\u043b\u0433\u043e\u043d \u0445\u04e9\u0440\u0432\u04af\u04af\u043b\u044d\u0445\u0438\u0439\u043d \u0442\u0443\u043b\u0434 \u0433\u043e\u0433\u0446\u043e\u043e \u0430\u0448\u0438\u0433\u043b\u0430\u0434\u0430\u0433.<\/p>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h2 class=\"wp-block-heading\">\u041f\u0443\u0442 \u0431\u0430 \u043d\u04e9\u0445\u04e9\u0445 \u04af\u04af? \u0411\u0438\u0434 \u0442\u044d\u0434\u0433\u044d\u044d\u0440\u0438\u0439\u0433 \u0445\u044d\u0437\u044d\u044d \u0430\u0448\u0438\u0433\u043b\u0430\u0445 \u0451\u0441\u0442\u043e\u0439 \u0432\u044d?<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">PUT \u0431\u043e\u043b\u043e\u043d PATCH \u043d\u044c \u0441\u0435\u0440\u0432\u0435\u0440 \u0434\u044d\u044d\u0440\u0445 \u043d\u04e9\u04e9\u0446\u0438\u0439\u0433 \u0448\u0438\u043d\u044d\u0447\u043b\u044d\u0445\u044d\u0434 \u0430\u0448\u0438\u0433\u043b\u0430\u0434\u0430\u0433 HTTP \u0430\u0440\u0433\u0443\u0443\u0434 \u0431\u043e\u043b\u043e\u0432\u0447 \u04e9\u04e9\u0440\u0447\u043b\u04e9\u043b\u0442\u0438\u0439\u0433 \u0445\u044d\u0440\u0445\u044d\u043d \u0445\u044d\u0440\u044d\u0433\u0436\u04af\u04af\u043b\u044d\u0445\u044d\u044d\u0440\u044d\u044d \u044f\u043b\u0433\u0430\u0430\u0442\u0430\u0439:<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">\u0442\u0430\u0432\u0438\u0445:<br>\u0411\u04af\u0440\u044d\u043d \u0448\u0438\u043d\u044d\u0447\u043b\u044d\u043b\u0442:<br>PUT \u043d\u044c \u043e\u0434\u043e\u043e \u0431\u0430\u0439\u0433\u0430\u0430 \u043d\u04e9\u04e9\u0446\u0438\u0439\u0433 \u0431\u04af\u0440\u044d\u043d \u043e\u0440\u043b\u0443\u0443\u043b\u0430\u0445\u0430\u0434 \u0430\u0448\u0438\u0433\u043b\u0430\u0433\u0434\u0434\u0430\u0433.<br>\u0417\u04e9\u0432\u0445\u04e9\u043d \u0445\u044d\u0441\u044d\u0433 \u043d\u044c \u04e9\u04e9\u0440\u0447\u043b\u04e9\u0433\u0434\u0441\u04e9\u043d \u0447 \u0433\u044d\u0441\u044d\u043d \u0445\u04af\u0441\u044d\u043b\u0442\u044d\u0434 \u043d\u04e9\u04e9\u0446\u0438\u0439\u0433 \u0431\u04af\u0445\u044d\u043b\u0434 \u043d\u044c \u043e\u0440\u0443\u0443\u043b\u0430\u0445 \u0451\u0441\u0442\u043e\u0439.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">\u0425\u044d\u0440\u044d\u0432 \u043d\u04e9\u04e9\u0446 \u0431\u0430\u0439\u0445\u0433\u04af\u0439 \u0431\u043e\u043b PUT \u04af\u04af\u043d\u0438\u0439\u0433 \u0438\u0445\u044d\u0432\u0447\u043b\u044d\u043d \u04af\u04af\u0441\u0433\u044d\u0434\u044d\u0433 (\u0445\u044d\u0434\u0438\u0439\u0433\u044d\u044d\u0440 \u044d\u043d\u044d \u0437\u0430\u043d \u04af\u0439\u043b \u04e9\u04e9\u0440 \u0431\u0430\u0439\u0436 \u0431\u043e\u043b\u043d\u043e).<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">\u0418\u0434\u0435\u043c\u043f\u043e\u0442\u0435\u043d\u0442:<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">\u0418\u0436\u0438\u043b \u04e9\u0433\u04e9\u0433\u0434\u04e9\u043b\u0442\u044d\u0439 \u0434\u0430\u0432\u0442\u0430\u043d PUT \u0445\u04af\u0441\u044d\u043b\u0442 \u043d\u044c \u04af\u0440\u0433\u044d\u043b\u0436 \u0438\u0436\u0438\u043b \u043d\u04e9\u04e9\u0446\u0438\u0439\u043d \u0442\u04e9\u043b\u04e9\u0432\u0442 \u0445\u04af\u0440\u0433\u044d\u0434\u044d\u0433.<br>\u0416\u0438\u0448\u044d\u044d \u043d\u044c: \u0445\u044d\u0440\u044d\u0433\u043b\u044d\u0433\u0447\u0438\u0439\u043d \u043f\u0440\u043e\u0444\u0430\u0439\u043b\u044b\u0433 \u0448\u0438\u043d\u044d\u0447\u043b\u044d\u0445:<\/p>\n\n\n<div class=\"wp-block-code\">\n\t<div class=\"cm-editor\">\n\t\t<div class=\"cm-scroller\">\n\t\t\t\n<pre>\n<code><div class=\"cm-line\">json<\/div><div class=\"cm-line\">PUT \/users\/123<\/div><div class=\"cm-line\">{<\/div><div class=\"cm-line\">&quot;name&quot;: &quot;Velislav&quot;,<\/div><div class=\"cm-line\">&quot;email&quot;: &quot;velislav@example.com&quot;,<\/div><div class=\"cm-line\">&quot;age&quot;: 30<\/div><div class=\"cm-line\">}<\/div><\/code><\/pre>\n\t\t<\/div>\n\t<\/div>\n<\/div>\n\n\n<p class=\"wp-block-paragraph\"><br>\u0417\u04e9\u0432\u0445\u04e9\u043d \u043d\u044d\u0440 \u04e9\u04e9\u0440\u0447\u043b\u04e9\u0433\u0434\u0441\u04e9\u043d \u0447 \u0438\u043c\u044d\u0439\u043b \u0431\u043e\u043b\u043e\u043d \u043d\u0430\u0441 \u0445\u044d\u0432\u044d\u044d\u0440 \u0431\u0430\u0439\u0432\u0430\u043b \u0445\u04af\u0441\u044d\u043b\u0442\u044d\u0434 \u0431\u0430\u0439\u0445 \u0451\u0441\u0442\u043e\u0439.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">\u041d\u04e8\u0425\u0426\u04e8\u041b\u04ae\u04ae\u0414:<br>\u0425\u044d\u0441\u044d\u0433\u0447\u0438\u043b\u0441\u044d\u043d \u0448\u0438\u043d\u044d\u0447\u043b\u044d\u043b\u0442:<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">PATCH \u043d\u044c \u043e\u0434\u043e\u043e \u0431\u0430\u0439\u0433\u0430\u0430 \u043d\u04e9\u04e9\u0446\u0438\u0439\u0433 \u0445\u044d\u0441\u044d\u0433\u0447\u043b\u044d\u043d \u0448\u0438\u043d\u044d\u0447\u043b\u044d\u0445\u044d\u0434 \u0430\u0448\u0438\u0433\u043b\u0430\u0433\u0434\u0434\u0430\u0433.<br>\u0417\u04e9\u0432\u0445\u04e9\u043d \u04e9\u04e9\u0440\u0447\u0438\u043b\u0441\u04e9\u043d \u0442\u0430\u043b\u0431\u0430\u0440\u0443\u0443\u0434\u044b\u0433 \u0445\u04af\u0441\u044d\u043b\u0442\u044d\u0434 \u0438\u043b\u0433\u044d\u044d\u043d\u044d.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">\u0418\u0434\u0435\u043c\u043f\u043e\u0442\u0435\u043d\u0442 (\u0418\u0445\u044d\u043d\u0445\u0434\u044d\u044d):<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">PUT-\u0438\u0439\u043d \u043d\u044d\u0433\u044d\u043d \u0430\u0434\u0438\u043b \u0438\u0436\u0438\u043b \u04e9\u0433\u04e9\u0433\u0434\u04e9\u043b\u0442\u044d\u0439 \u0434\u0430\u0432\u0442\u0430\u043d PATCH \u0445\u04af\u0441\u044d\u043b\u0442 \u043d\u044c \u0438\u0445\u044d\u0432\u0447\u043b\u044d\u043d \u0438\u0436\u0438\u043b \u043d\u04e9\u04e9\u0446\u0438\u0439\u043d \u0442\u04e9\u043b\u04e9\u0432\u0442 \u0445\u04af\u0440\u0433\u044d\u0434\u044d\u0433.<br>\u0413\u044d\u0441\u044d\u043d \u0445\u044d\u0434\u0438\u0439 \u0447, \u0437\u0430\u043d \u0442\u04e9\u043b\u04e9\u0432 \u043d\u044c \u0441\u0435\u0440\u0432\u0435\u0440\u0438\u0439\u043d \u0445\u044d\u0440\u044d\u0433\u0436\u0438\u043b\u0442\u044d\u044d\u0441 \u0445\u0430\u043c\u0430\u0430\u0440\u043d\u0430.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">\u0416\u0438\u0448\u044d\u044d \u043d\u044c: \u0437\u04e9\u0432\u0445\u04e9\u043d \u0445\u044d\u0440\u044d\u0433\u043b\u044d\u0433\u0447\u0438\u0439\u043d \u043d\u044d\u0440\u0438\u0439\u0433 \u0448\u0438\u043d\u044d\u0447\u043b\u044d\u0445:<\/p>\n\n\n<div class=\"wp-block-code\">\n\t<div class=\"cm-editor\">\n\t\t<div class=\"cm-scroller\">\n\t\t\t\n<pre>\n<code><div class=\"cm-line\">json<\/div><div class=\"cm-line\">PATCH \/users\/123<\/div><div class=\"cm-line\">{<\/div><div class=\"cm-line\">&quot;name&quot;: &quot;Velislav&quot;<\/div><div class=\"cm-line\">}<\/div><\/code><\/pre>\n\t\t<\/div>\n\t<\/div>\n<\/div>\n\n\n<p class=\"wp-block-paragraph\"><br>\u042d\u043d\u0434 \u0437\u04e9\u0432\u0445\u04e9\u043d \u043d\u044d\u0440\u0438\u0439\u043d \u0442\u0430\u043b\u0431\u0430\u0440 \u0448\u0438\u043d\u044d\u0447\u043b\u044d\u0433\u0434\u044d\u0436, \u0431\u0443\u0441\u0430\u0434 \u0442\u0430\u043b\u0431\u0430\u0440\u0443\u0443\u0434 \u04e9\u04e9\u0440\u0447\u043b\u04e9\u0433\u0434\u04e9\u04e9\u0433\u04af\u0439 \u0445\u044d\u0432\u044d\u044d\u0440 \u0431\u0430\u0439\u043d\u0430.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">\u0413\u043e\u043b \u044f\u043b\u0433\u0430\u0430:<br>PUT \u043d\u044c \u043d\u04e9\u04e9\u0446\u0438\u0439\u0433 \u0431\u04af\u0445\u044d\u043b\u0434 \u043d\u044c \u043e\u0440\u043b\u0443\u0443\u043b\u0434\u0430\u0433 \u0431\u043e\u043b PATCH \u043d\u044c \u0437\u04e9\u0432\u0445\u04e9\u043d \u043d\u04e9\u04e9\u0446\u0438\u0439\u043d \u0437\u0430\u0430\u0441\u0430\u043d \u0442\u0430\u043b\u0431\u0430\u0440\u0443\u0443\u0434\u044b\u0433 \u04e9\u04e9\u0440\u0447\u0438\u043b\u0434\u04e9\u0433.<\/p>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h2 class=\"wp-block-heading\"><strong>\u0422\u043e\u0432\u0447 \u0442\u0430\u0439\u043b\u0431\u0430\u0440 \u0431\u04af\u0445\u0438\u0439 HTTP \u0430\u0440\u0433\u0443\u0443\u0434.<\/strong><\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">GET: \u0441\u0435\u0440\u0432\u0435\u0440\u044d\u044d\u0441 \u04e9\u0433\u04e9\u0433\u0434\u043b\u0438\u0439\u0433 \u04e9\u04e9\u0440\u0447\u043b\u04e9\u0445\u0433\u04af\u0439\u0433\u044d\u044d\u0440 \u0441\u044d\u0440\u0433\u044d\u044d\u0445\u044d\u0434 \u0430\u0448\u0438\u0433\u043b\u0430\u0434\u0430\u0433. \u0418\u0445\u044d\u043d\u0445\u0434\u044d\u044d \u044d\u0445 \u0441\u0443\u0440\u0432\u0430\u043b\u0436 \u044d\u0441\u0432\u044d\u043b \u043c\u044d\u0434\u044d\u044d\u043b\u044d\u043b \u0442\u0430\u0442\u0430\u0445\u0430\u0434 \u0430\u0448\u0438\u0433\u043b\u0430\u0434\u0430\u0433.<br>POST: \u0441\u0435\u0440\u0432\u0435\u0440 \u0440\u04af\u04af \u04e9\u0433\u04e9\u0433\u0434\u04e9\u043b \u0438\u043b\u0433\u044d\u044d\u0445, \u0438\u0445\u044d\u0432\u0447\u043b\u044d\u043d \u0448\u0438\u043d\u044d \u043d\u04e9\u04e9\u0446 \u04af\u04af\u0441\u0433\u044d\u0445\u044d\u0434 \u0430\u0448\u0438\u0433\u043b\u0430\u0433\u0434\u0434\u0430\u0433. \u0416\u0438\u0448\u044d\u044d\u043b\u0431\u044d\u043b, \u043c\u0430\u044f\u0433\u0442 \u0438\u043b\u0433\u044d\u044d\u0445 \u044d\u0441\u0432\u044d\u043b \u0444\u0430\u0439\u043b \u0431\u0430\u0439\u0440\u0448\u0443\u0443\u043b\u0430\u0445 \u04af\u0435\u0434.<br>PUT: \u0421\u0435\u0440\u0432\u0435\u0440 \u0434\u044d\u044d\u0440 \u0431\u0430\u0439\u0433\u0430\u0430 \u043d\u04e9\u04e9\u0446\u0438\u0439\u0433 \u0448\u0438\u043d\u044d\u0447\u043b\u044d\u0445 \u044d\u0441\u0432\u044d\u043b \u0431\u04af\u0440\u044d\u043d \u0441\u043e\u043b\u0438\u0445\u043e\u0434 \u0430\u0448\u0438\u0433\u043b\u0430\u0434\u0430\u0433. \u0425\u044d\u0440\u044d\u0432 \u043d\u04e9\u04e9\u0446 \u0431\u0430\u0439\u0445\u0433\u04af\u0439 \u0431\u043e\u043b \u04af\u04af\u043d\u0438\u0439\u0433 \u04af\u04af\u0441\u0433\u044d\u0436 \u0431\u043e\u043b\u043d\u043e.<br>PATCH: \u041e\u0434\u043e\u043e \u0431\u0430\u0439\u0433\u0430\u0430 \u043d\u04e9\u04e9\u0446\u0438\u0439\u0433 \u0445\u044d\u0441\u044d\u0433\u0447\u043b\u044d\u043d \u0448\u0438\u043d\u044d\u0447\u043b\u044d\u0445, \u0437\u04e9\u0432\u0445\u04e9\u043d \u0437\u0430\u0430\u0441\u0430\u043d \u0442\u0430\u043b\u0431\u0430\u0440\u0443\u0443\u0434\u044b\u0433 \u04e9\u04e9\u0440\u0447\u043b\u04e9\u0445\u04e9\u0434 \u0430\u0448\u0438\u0433\u043b\u0430\u0434\u0430\u0433.<br>DELETE: \u0421\u0435\u0440\u0432\u0435\u0440\u044d\u044d\u0441 \u043d\u04e9\u04e9\u0446\u0438\u0439\u0433 \u0443\u0441\u0442\u0433\u0430\u0445\u0430\u0434 \u0430\u0448\u0438\u0433\u043b\u0430\u0434\u0430\u0433.<br>HEAD: GET-\u0442\u044d\u0439 \u0430\u0434\u0438\u043b, \u044d\u0445 \u0441\u0443\u0440\u0432\u0430\u043b\u0436\u0438\u0439\u043d \u04af\u043d\u0434\u0441\u044d\u043d \u0445\u044d\u0441\u044d\u0433\u0433\u04af\u0439\u0433\u044d\u044d\u0440 \u0437\u04e9\u0432\u0445\u04e9\u043d \u0442\u043e\u043b\u0433\u043e\u0439 \u0445\u044d\u0441\u0433\u0438\u0439\u0433 \u0442\u0430\u0442\u0430\u0445\u0430\u0434 \u0430\u0448\u0438\u0433\u043b\u0430\u0434\u0430\u0433.<br>OPTIONS: \u042f\u043c\u0430\u0440 HTTP \u0430\u0440\u0433\u044b\u0433 \u0437\u04e9\u0432\u0448\u04e9\u04e9\u0440\u0441\u043d\u0438\u0439\u0433 \u0445\u0430\u0440\u0443\u0443\u043b\u043d\u0430.<br>TRACE: \u0425\u04af\u0441\u044d\u043b\u0442\u0438\u0439\u0433 \u04af\u0439\u043b\u0447\u043b\u04af\u04af\u043b\u044d\u0433\u0447 \u0440\u04af\u04af \u0431\u0443\u0446\u0430\u0430\u0436 \u04e9\u0433\u04e9\u0445 \u0437\u0430\u043c\u0430\u0430\u0440 \u043e\u043d\u043e\u0448\u0438\u043b\u0433\u043e\u043e\u043d\u044b \u0437\u043e\u0440\u0438\u043b\u0433\u043e\u043e\u0440 \u0433\u043e\u043b\u0447\u043b\u043e\u043d \u0430\u0448\u0438\u0433\u043b\u0430\u0434\u0430\u0433<br>CONNECT: SSL\/TLS \u0445\u043e\u043b\u0431\u043e\u043b\u0442\u043e\u0434 \u0438\u0445\u044d\u0432\u0447\u043b\u044d\u043d \u0430\u0448\u0438\u0433\u043b\u0430\u0433\u0434\u0434\u0430\u0433 \u0441\u0435\u0440\u0432\u0435\u0440\u0442 \u0445\u043e\u043d\u0433\u0438\u043b \u04af\u04af\u0441\u0433\u044d\u043d\u044d.<\/p>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h2 class=\"wp-block-heading\">\u0424\u0443\u043d\u043a\u0446\u0438\u043e\u043d\u0430\u043b\u044c \u0438\u043d\u0442\u0435\u0440\u0444\u0435\u0439\u0441<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">Java \u0434\u0430\u0445\u044c \u0444\u0443\u043d\u043a\u0446\u0438\u043e\u043d\u0430\u043b\u044c \u0438\u043d\u0442\u0435\u0440\u0444\u0435\u0439\u0441 \u043d\u044c \u044f\u0433 \u043d\u044d\u0433 \u0445\u0438\u0439\u0441\u0432\u044d\u0440 \u0430\u0440\u0433\u044b\u0433 \u0430\u0433\u0443\u0443\u043b\u0441\u0430\u043d \u0438\u043d\u0442\u0435\u0440\u0444\u0435\u0439\u0441 \u044e\u043c. \u042d\u0434\u0433\u044d\u044d\u0440 \u0438\u043d\u0442\u0435\u0440\u0444\u044d\u0439\u0441\u04af\u04af\u0434 \u043d\u044c \u0433\u043e\u043b\u0447\u043b\u043e\u043d lambda \u0438\u043b\u044d\u0440\u0445\u0438\u0439\u043b\u044d\u043b \u0431\u043e\u043b\u043e\u043d \u0430\u0440\u0433\u044b\u043d \u043b\u0430\u0432\u043b\u0430\u0433\u0430\u0430\u043d\u0434 \u0430\u0448\u0438\u0433\u043b\u0430\u0433\u0434\u0434\u0430\u0433 \u0431\u04e9\u0433\u04e9\u04e9\u0434 \u044d\u043d\u044d \u043d\u044c \u0438\u043b\u04af\u04af \u0431\u043e\u0433\u0438\u043d\u043e \u0431\u04e9\u0433\u04e9\u04e9\u0434 \u0438\u043b\u04af\u04af \u0443\u043d\u0448\u0438\u0433\u0434\u0430\u0445\u0443\u0439\u0446 \u0444\u0443\u043d\u043a\u0446\u0438\u043e\u043d\u0430\u043b\u044c \u043f\u0440\u043e\u0433\u0440\u0430\u043c\u0447\u043b\u0430\u043b\u044b\u043d \u0445\u044d\u0432 \u043c\u0430\u044f\u0433\u0438\u0439\u0433 \u0431\u0438\u0439 \u0431\u043e\u043b\u0433\u043e\u0445 \u0431\u043e\u043b\u043e\u043c\u0436\u0438\u0439\u0433 \u043e\u043b\u0433\u043e\u0434\u043e\u0433.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">\u0413\u043e\u043b \u043e\u043d\u0446\u043b\u043e\u0433\u0443\u0443\u0434:<\/h3>\n\n\n\n<ol class=\"wp-block-list\">\n<li><strong>\u041d\u044d\u0433 \u0445\u0438\u0439\u0441\u0432\u044d\u0440 \u0430\u0440\u0433\u0430<\/strong>: \u0424\u0443\u043d\u043a\u0446\u0438\u043e\u043d\u0430\u043b\u044c \u0438\u043d\u0442\u0435\u0440\u0444\u0435\u0439\u0441 \u043d\u044c \u0437\u04e9\u0432\u0445\u04e9\u043d \u043d\u044d\u0433 \u0445\u0438\u0439\u0441\u0432\u044d\u0440 \u0430\u0440\u0433\u0430\u0442\u0430\u0439. \u042d\u043d\u044d \u0431\u043e\u043b \u0442\u04af\u04af\u043d\u0438\u0439 \u04af\u0439\u043b \u0430\u0436\u0438\u043b\u043b\u0430\u0433\u0430\u0430\u043d\u044b \u043c\u04e9\u043d \u0447\u0430\u043d\u0430\u0440 \u044e\u043c.<\/li>\n\n\n\n<li><strong>\u04e8\u0433\u04e9\u0433\u0434\u043c\u04e9\u043b \u0431\u0430 \u0441\u0442\u0430\u0442\u0438\u043a \u0430\u0440\u0433\u0443\u0443\u0434<\/strong>: \u0424\u0443\u043d\u043a\u0446\u0438\u043e\u043d\u0430\u043b\u044c \u0438\u043d\u0442\u0435\u0440\u0444\u044d\u0439\u0441\u04af\u04af\u0434 \u043d\u044c \u0430\u043d\u0445\u0434\u0430\u0433\u0447 \u0431\u043e\u043b\u043e\u043d \u0441\u0442\u0430\u0442\u0438\u043a \u0430\u0440\u0433\u0443\u0443\u0434\u044b\u0433 \u0430\u0433\u0443\u0443\u043b\u0436 \u0431\u043e\u043b\u043e\u0445 \u0431\u043e\u043b\u043e\u0432\u0447 \u0442\u044d\u0434\u0433\u044d\u044d\u0440 \u043d\u044c \u0446\u043e\u0440\u044b\u043d \u0433\u0430\u043d\u0446 \u0445\u0438\u0439\u0441\u0432\u044d\u0440 \u0430\u0440\u0433\u0430\u0434 \u0442\u043e\u043e\u0446\u043e\u0433\u0434\u043e\u0445\u0433\u04af\u0439.<\/li>\n\n\n\n<li><strong>@FunctionalInterface Annotation<\/strong>: \u042d\u043d\u044d \u0442\u044d\u043c\u0434\u044d\u0433\u043b\u044d\u0433\u044d\u044d \u043d\u044c \u0441\u043e\u043d\u0433\u043e\u043b\u0442\u0442\u043e\u0439 \u0431\u043e\u043b\u043e\u0432\u0447 \u04e9\u0433\u04e9\u0433\u0434\u0441\u04e9\u043d \u0438\u043d\u0442\u0435\u0440\u0444\u044d\u0439\u0441 \u043d\u044c \u0430\u0436\u0438\u043b\u043b\u0430\u0445 \u0437\u043e\u0440\u0438\u043b\u0433\u043e\u0442\u043e\u0439 \u0433\u044d\u0434\u0433\u0438\u0439\u0433 \u0445\u0430\u0440\u0443\u0443\u043b\u0430\u0445\u0430\u0434 \u0442\u0443\u0441\u0430\u043b\u043d\u0430. \u0425\u044d\u0440\u044d\u0432 \u0438\u043d\u0442\u0435\u0440\u0444\u044d\u0439\u0441 \u0434\u044d\u044d\u0440 \u043d\u044d\u043c\u044d\u043b\u0442 \u0445\u0438\u0439\u0441\u0432\u044d\u0440 \u0430\u0440\u0433\u0443\u0443\u0434 \u043d\u044d\u043c\u044d\u0433\u0434\u0441\u044d\u043d \u0431\u043e\u043b \u0445\u04e9\u0440\u0432\u04af\u04af\u043b\u044d\u0433\u0447 \u0430\u043b\u0434\u0430\u0430 \u0433\u0430\u0440\u0433\u0430\u0434\u0430\u0433.<\/li>\n<\/ol>\n\n\n\n<h3 class=\"wp-block-heading\">\u0416\u0438\u0448\u044d\u044d:<\/h3>\n\n\n<div class=\"wp-block-code\">\n\t<div class=\"cm-editor\">\n\t\t<div class=\"cm-scroller\">\n\t\t\t\n<pre>\n<code class=\"language-mathematica\"><div class=\"cm-line\"><span class=\"tok-operator\">@<\/span><span class=\"tok-keyword\">FunctionalInterface<\/span><\/div><div class=\"cm-line\"><span class=\"tok-keyword\">interface<\/span> <span class=\"tok-keyword\">Calculator<\/span> <span class=\"tok-punctuation\">{<\/span><\/div><div class=\"cm-line\">    <span class=\"tok-keyword\">int<\/span> <span class=\"tok-keyword\">calculate<\/span><span class=\"tok-punctuation\">(<\/span><span class=\"tok-keyword\">int<\/span> <span class=\"tok-keyword\">a<\/span><span class=\"tok-operator\">,<\/span> <span class=\"tok-keyword\">int<\/span> <span class=\"tok-keyword\">b<\/span><span class=\"tok-punctuation\">)<\/span><span class=\"tok-operator\">;<\/span><\/div><div class=\"cm-line\"><span class=\"tok-punctuation\">}<\/span><\/div><div class=\"cm-line\"><\/div><div class=\"cm-line\"><span class=\"tok-operator\">\/\/<\/span> <span class=\"tok-keyword\">Using<\/span> <span class=\"tok-keyword\">lambda<\/span> <span class=\"tok-keyword\">expression<\/span><\/div><div class=\"cm-line\"><span class=\"tok-keyword\">public<\/span> <span class=\"tok-keyword\">class<\/span> <span class=\"tok-keyword\">Main<\/span> <span class=\"tok-punctuation\">{<\/span><\/div><div class=\"cm-line\">    <span class=\"tok-keyword\">public<\/span> <span class=\"tok-keyword\">static<\/span> <span class=\"tok-keyword\">void<\/span> <span class=\"tok-keyword\">main<\/span><span class=\"tok-punctuation\">(<\/span><span class=\"tok-keyword\">String<\/span><span class=\"tok-punctuation\">[]<\/span> <span class=\"tok-keyword\">args<\/span><span class=\"tok-punctuation\">)<\/span> <span class=\"tok-punctuation\">{<\/span><\/div><div class=\"cm-line\">        <span class=\"tok-operator\">\/\/<\/span> <span class=\"tok-keyword\">Implementing<\/span> <span class=\"tok-keyword\">the<\/span> <span class=\"tok-keyword\">calculate<\/span> <span class=\"tok-keyword\">method<\/span> <span class=\"tok-keyword\">using<\/span> <span class=\"tok-keyword\">a<\/span> <span class=\"tok-keyword\">lambda<\/span><\/div><div class=\"cm-line\">        <span class=\"tok-keyword\">Calculator<\/span> <span class=\"tok-keyword\">addition<\/span> <span class=\"tok-operator\">=<\/span> <span class=\"tok-punctuation\">(<\/span><span class=\"tok-keyword\">a<\/span><span class=\"tok-operator\">,<\/span> <span class=\"tok-keyword\">b<\/span><span class=\"tok-punctuation\">)<\/span> <span class=\"tok-operator\">-&gt;<\/span> <span class=\"tok-keyword\">a<\/span> <span class=\"tok-operator\">+<\/span> <span class=\"tok-keyword\">b<\/span><span class=\"tok-operator\">;<\/span><\/div><div class=\"cm-line\">        <span class=\"tok-keyword\">Calculator<\/span> <span class=\"tok-keyword\">multiplication<\/span> <span class=\"tok-operator\">=<\/span> <span class=\"tok-punctuation\">(<\/span><span class=\"tok-keyword\">a<\/span><span class=\"tok-operator\">,<\/span> <span class=\"tok-keyword\">b<\/span><span class=\"tok-punctuation\">)<\/span> <span class=\"tok-operator\">-&gt;<\/span> <span class=\"tok-keyword\">a<\/span> <span class=\"tok-operator\">*<\/span> <span class=\"tok-keyword\">b<\/span><span class=\"tok-operator\">;<\/span><\/div><div class=\"cm-line\"><\/div><div class=\"cm-line\">        <span class=\"tok-keyword\">System<\/span><span class=\"tok-operator\">.<\/span><span class=\"tok-keyword\">out<\/span><span class=\"tok-operator\">.<\/span><span class=\"tok-keyword\">println<\/span><span class=\"tok-punctuation\">(<\/span><span class=\"tok-string\">&quot;Addition: &quot;<\/span> <span class=\"tok-operator\">+<\/span> <\/div><div class=\"cm-line\">        <span class=\"tok-keyword\">addition<\/span><span class=\"tok-operator\">.<\/span><span class=\"tok-keyword\">calculate<\/span><span class=\"tok-punctuation\">(<\/span><span class=\"tok-number\">5<\/span><span class=\"tok-operator\">,<\/span> <span class=\"tok-number\">3<\/span><span class=\"tok-punctuation\">))<\/span><span class=\"tok-operator\">;<\/span>  <span class=\"tok-operator\">\/\/<\/span> <span class=\"tok-variableName2\">Output: 8<\/span><\/div><div class=\"cm-line\">        <span class=\"tok-keyword\">System<\/span><span class=\"tok-operator\">.<\/span><span class=\"tok-keyword\">out<\/span><span class=\"tok-operator\">.<\/span><span class=\"tok-keyword\">println<\/span><span class=\"tok-punctuation\">(<\/span><span class=\"tok-string\">&quot;Multiplication: &quot;<\/span> <span class=\"tok-operator\">+<\/span> <\/div><div class=\"cm-line\">        <span class=\"tok-keyword\">multiplication<\/span><span class=\"tok-operator\">.<\/span><span class=\"tok-keyword\">calculate<\/span><span class=\"tok-punctuation\">(<\/span><span class=\"tok-number\">5<\/span><span class=\"tok-operator\">,<\/span> <span class=\"tok-number\">3<\/span><span class=\"tok-punctuation\">))<\/span><span class=\"tok-operator\">;<\/span>  <span class=\"tok-operator\">\/\/<\/span> <span class=\"tok-variableName2\">Output: 15<\/span><\/div><div class=\"cm-line\">    <span class=\"tok-punctuation\">}<\/span><\/div><div class=\"cm-line\"><span class=\"tok-punctuation\">}<\/span><\/div><\/code><\/pre>\n\t\t<\/div>\n\t<\/div>\n<\/div>\n\n\n<h3 class=\"wp-block-heading\">\u0425\u044d\u0440\u044d\u0433\u043b\u044d\u0445 \u0442\u043e\u0445\u0438\u043e\u043b\u0434\u043e\u043b:<\/h3>\n\n\n\n<p class=\"wp-block-paragraph\">\u0418\u043d\u0442\u0435\u0440\u0444\u044d\u0439\u0441 <code>Calculator<\/code> \u0436\u0438\u0448\u044d\u044d\u043d\u0434 \u0437\u04e9\u0432\u0445\u04e9\u043d \u043d\u044d\u0433 \u0445\u0438\u0439\u0441\u0432\u044d\u0440 \u0430\u0440\u0433\u0430 \u0431\u0430\u0439\u043d\u0430 <code>calculate<\/code>, \u044d\u043d\u044d \u043d\u044c \u0444\u0443\u043d\u043a\u0446\u0438\u043e\u043d\u0430\u043b\u044c \u0438\u043d\u0442\u0435\u0440\u0444\u0435\u0439\u0441 \u0431\u043e\u043b\u0433\u043e\u0434\u043e\u0433.<br>\u042d\u043d\u044d \u043d\u044c \u0431\u0438\u0434\u044d\u043d\u0434 lambda \u0438\u043b\u044d\u0440\u0445\u0438\u0439\u043b\u043b\u0438\u0439\u0433 \u0438\u043b\u04af\u04af \u0431\u043e\u0433\u0438\u043d\u043e \u0431\u04e9\u0433\u04e9\u04e9\u0434 \u0438\u043b\u04af\u04af \u0433\u043e\u0451\u043c\u0441\u043e\u0433 \u0445\u044d\u0440\u044d\u0433\u0436\u04af\u04af\u043b\u044d\u0445 \u0431\u043e\u043b\u043e\u043c\u0436\u0438\u0439\u0433 \u043e\u043b\u0433\u043e\u0434\u043e\u0433.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">Java \u0445\u044d\u043b \u0434\u044d\u044d\u0440 \u0442\u04af\u0433\u044d\u044d\u043c\u044d\u043b \u0445\u044d\u0440\u044d\u0433\u043b\u044d\u0433\u0434\u0434\u044d\u0433 \u0444\u0443\u043d\u043a\u0446\u0438\u043e\u043d\u0430\u043b\u044c \u0438\u043d\u0442\u0435\u0440\u0444\u0435\u0439\u0441\u04af\u04af\u0434:<\/h3>\n\n\n\n<p class=\"wp-block-paragraph\">Java \u043d\u044c \u0431\u0430\u0433\u0446\u0430\u0434 \u0445\u044d\u0434 \u0445\u044d\u0434\u044d\u043d \u0441\u0443\u0443\u0440\u0438\u043b\u0443\u0443\u043b\u0441\u0430\u043d \u0444\u0443\u043d\u043a\u0446\u0438\u043e\u043d\u0430\u043b\u044c \u0438\u043d\u0442\u0435\u0440\u0444\u0435\u0439\u0441\u044d\u044d\u0440 \u0445\u0430\u043d\u0433\u0430\u0434\u0430\u0433 <code>java.util.function<\/code>\u0433\u044d\u0445 \u043c\u044d\u0442:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li><strong>\u0422\u04e9\u043b\u04e9\u0432\u043b\u04e9\u043b\u0442<\/strong>: \u041e\u0440\u043e\u043b\u0442\u044b\u0433 \u0445\u04af\u043b\u044d\u044d\u043d \u0430\u0432\u0447 \u043b\u043e\u0433\u0438\u043a \u0431\u0443\u0446\u0430\u0430\u043d\u0430.<\/li>\n\n\n\n<li><strong>\u0427\u0438\u0433 \u04af\u04af\u0440\u044d\u0433<\/strong>: \u041e\u0440\u043e\u043b\u0442\u043e\u043e \u0430\u0432\u0447 R \u0442\u04e9\u0440\u043b\u0438\u0439\u043d \u04af\u0440 \u0434\u04af\u043d\u0433 \u0431\u0443\u0446\u0430\u0430\u043d\u0430.<\/li>\n\n\n\n<li><strong>\u041d\u0438\u0439\u043b\u04af\u04af\u043b\u044d\u0433\u0447<\/strong>: \u041e\u0440\u0443\u0443\u043b\u0433\u0430\u0433\u04af\u0439\u0433\u044d\u044d\u0440 \u0443\u0442\u0433\u044b\u0433 \u04e9\u0433\u043d\u04e9.<\/li>\n\n\n\n<li><strong>\u0425\u044d\u0440\u044d\u0433\u043b\u044d\u0433\u0447<\/strong>: \u0423\u0442\u0433\u0430 \u0430\u0432\u0447 \u04af\u0439\u043b\u0434\u044d\u043b \u0445\u0438\u0439\u043d\u044d.<\/li>\n<\/ul>\n\n\n\n<p class=\"wp-block-paragraph\">\u0424\u0443\u043d\u043a\u0446\u0438\u043e\u043d\u0430\u043b\u044c \u0438\u043d\u0442\u0435\u0440\u0444\u044d\u0439\u0441\u04af\u04af\u0434 \u043d\u044c \u044f\u043b\u0430\u043d\u0433\u0443\u044f\u0430 \u0446\u0443\u0433\u043b\u0443\u0443\u043b\u0433\u0430, \u0443\u0440\u0441\u0433\u0430\u043b \u044d\u0441\u0432\u044d\u043b \u0430\u0441\u0438\u043d\u0445\u0440\u043e\u043d \u0434\u0430\u0430\u043b\u0433\u0430\u0432\u0430\u0440\u0442\u0430\u0439 \u0430\u0436\u0438\u043b\u043b\u0430\u0445 \u0433\u044d\u0445 \u043c\u044d\u0442 \u0445\u0443\u0432\u0438\u043b\u0431\u0430\u0440\u0443\u0443\u0434\u0430\u0434 \u0430\u0436\u043b\u044b\u0433 \u0445\u04e9\u043d\u0433\u04e9\u0432\u0447\u0438\u043b\u0434\u04e9\u0433.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">\u042d\u0434\u0433\u044d\u044d\u0440 \u043d\u044c Java-\u0434 \u043e\u0431\u044a\u0435\u043a\u0442 \u0445\u0430\u043d\u0434\u0430\u043b\u0442\u0430\u0442 \u0448\u0438\u043d\u0436 \u0447\u0430\u043d\u0430\u0440\u0430\u0430 \u0445\u0430\u0434\u0433\u0430\u043b\u0430\u0445\u044b\u043d \u0437\u044d\u0440\u044d\u0433\u0446\u044d\u044d \u0444\u0443\u043d\u043a\u0446\u0438\u043e\u043d\u0430\u043b\u044c \u043f\u0440\u043e\u0433\u0440\u0430\u043c\u0447\u043b\u0430\u043b\u044b\u043d \u043f\u0430\u0440\u0430\u0434\u0438\u0433\u043c\u0443\u0443\u0434\u044b\u0433 \u043d\u044d\u0432\u0442\u0440\u04af\u04af\u043b\u044d\u0445 \u0431\u043e\u043b\u043e\u043c\u0436\u0438\u0439\u0433 \u043e\u043b\u0433\u043e\u0434\u043e\u0433.<\/h2>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h2 class=\"wp-block-heading\">\u0414\u044d\u044d\u0434 \u0437\u044d\u0440\u044d\u0433\u043b\u044d\u043b\u0438\u0439\u043d \u0444\u0443\u043d\u043a\u0446 \u0433\u044d\u0436 \u044e\u0443 \u0432\u044d?<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">\u0414\u044d\u044d\u0434 \u0437\u044d\u0440\u044d\u0433\u043b\u044d\u043b\u0438\u0439\u043d \u0444\u0443\u043d\u043a\u0446 \u043d\u044c \u0431\u0443\u0441\u0430\u0434 \u0444\u0443\u043d\u043a\u0446\u0438\u0439\u0433 \u0430\u0440\u0433\u0443\u043c\u0435\u043d\u0442 \u0431\u043e\u043b\u0433\u043e\u043d \u0445\u04af\u043b\u044d\u044d\u043d \u0430\u0432\u0430\u0445 \u044d\u0441\u0432\u044d\u043b \u04af\u0440 \u0434\u04af\u043d\u0434 \u043d\u044c \u0444\u0443\u043d\u043a\u0446\u0438\u0439\u0433 \u0431\u0443\u0446\u0430\u0430\u0434\u0430\u0433 \u0444\u0443\u043d\u043a\u0446 \u044e\u043c. \u04e8\u04e9\u0440\u04e9\u04e9\u0440 \u0445\u044d\u043b\u0431\u044d\u043b, &#8220;\u043d\u044d\u0433\u0434\u04af\u0433\u044d\u044d\u0440 \u0437\u044d\u0440\u044d\u0433\u043b\u044d\u043b\u0438\u0439\u043d \u0438\u0440\u0433\u044d\u0434&#8221; \u0433\u044d\u0436 \u04af\u0437\u0434\u044d\u0433 \u0447\u0438\u0433 \u04af\u04af\u0440\u0433\u04af\u04af\u0434\u0442\u044d\u0439 \u0430\u0436\u0438\u043b\u043b\u0430\u0434\u0430\u0433. \u042d\u043d\u044d \u043d\u044c \u0445\u0438\u0439\u0441\u0432\u044d\u0440\u043b\u044d\u0445, \u043a\u043e\u0434\u044b\u0433 \u0434\u0430\u0445\u0438\u043d \u0430\u0448\u0438\u0433\u043b\u0430\u0445, \u0437\u043e\u0445\u0438\u043e\u0445 \u0431\u043e\u043b\u043e\u043c\u0436\u0438\u0439\u0433 \u043e\u043b\u0433\u043e\u0434\u043e\u0433 \u0444\u0443\u043d\u043a\u0446\u0438\u043e\u043d\u0430\u043b\u044c \u043f\u0440\u043e\u0433\u0440\u0430\u043c\u0447\u043b\u0430\u043b\u044b\u043d \u043f\u0430\u0440\u0430\u0434\u0438\u0433\u043c\u0443\u0443\u0434\u044b\u043d \u0445\u04af\u0447\u0438\u0440\u0445\u044d\u0433 \u0444\u0443\u043d\u043a\u0446 \u044e\u043c.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">Java \u0434\u0430\u0445\u044c \u0434\u044d\u044d\u0434 \u0437\u044d\u0440\u044d\u0433\u043b\u044d\u043b\u0438\u0439\u043d \u0444\u0443\u043d\u043a\u0446\u0438\u0439\u043d \u0436\u0438\u0448\u044d\u044d:<\/h3>\n\n\n<div class=\"wp-block-code\">\n\t<div class=\"cm-editor\">\n\t\t<div class=\"cm-scroller\">\n\t\t\t\n<pre>\n<code class=\"language-html\"><div class=\"cm-line\">import java.util.function.Function;<\/div><div class=\"cm-line\"><\/div><div class=\"cm-line\">public class Main {<\/div><div class=\"cm-line\">    public static void main(String[] args) {<\/div><div class=\"cm-line\">        \/\/ Higher-order function: applies a function to a value<\/div><div class=\"cm-line\">        Function<span class=\"tok-punctuation\">&lt;<\/span><span class=\"tok-typeName\">Integer<\/span><span class=\"tok-propertyName\">,<\/span> <span class=\"tok-propertyName\">Integer<\/span><span class=\"tok-punctuation\">&gt;<\/span> squareFunction = x -&gt; x * x;<\/div><div class=\"cm-line\">        int result = applyFunction(5, squareFunction);<\/div><div class=\"cm-line\">        System.out.println(&quot;Square of 5: &quot; + result);  <\/div><div class=\"cm-line\">          \/\/ Output: 25<\/div><div class=\"cm-line\">    }<\/div><div class=\"cm-line\"><\/div><div class=\"cm-line\">    public static int applyFunction(int value, <\/div><div class=\"cm-line\">    Function<span class=\"tok-punctuation\">&lt;<\/span><span class=\"tok-typeName\">Integer<\/span><span class=\"tok-propertyName\">,<\/span> <span class=\"tok-propertyName\">Integer<\/span><span class=\"tok-punctuation\">&gt;<\/span> function) {<\/div><div class=\"cm-line\">        return function.apply(value);<\/div><div class=\"cm-line\">    }<\/div><div class=\"cm-line\">}<\/div><\/code><\/pre>\n\t\t<\/div>\n\t<\/div>\n<\/div>\n\n\n<p class=\"wp-block-paragraph\">\u0414\u044d\u044d\u0440\u0445 \u0436\u0438\u0448\u044d\u044d\u043d\u0434:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>\u0430\u0440\u0433\u0430 <code>applyFunction<\/code> \u04e9\u04e9\u0440 \u0444\u0443\u043d\u043a\u0446\u0438\u0439\u0433 \u0445\u04af\u043b\u044d\u044d\u043d \u0430\u0432\u0434\u0430\u0433 \u0442\u0443\u043b \u0434\u044d\u044d\u0434 \u044d\u0440\u044d\u043c\u0431\u0438\u0439\u043d \u0444\u0443\u043d\u043a\u0446 \u044e\u043c (<code>Function&lt;Integer, Integer&gt;<\/code>) \u043f\u0430\u0440\u0430\u043c\u0435\u0442\u0440 \u0431\u043e\u043b\u0433\u043e\u043d.<\/li>\n<\/ul>\n\n\n\n<h3 class=\"wp-block-heading\">\u041e\u043d\u0446\u043b\u043e\u0433\u0443\u0443\u0434:<\/h3>\n\n\n\n<ol class=\"wp-block-list\">\n<li><strong>\u0424\u0443\u043d\u043a\u0446\u0443\u0443\u0434\u044b\u0433 \u0430\u0440\u0433\u0443\u043c\u0435\u043d\u0442 \u0431\u043e\u043b\u0433\u043e\u043d \u0445\u04af\u043b\u044d\u044d\u043d \u0430\u0432\u0434\u0430\u0433<\/strong>: \u0414\u044d\u044d\u0434 \u0437\u044d\u0440\u044d\u0433\u043b\u044d\u043b\u0438\u0439\u043d \u0444\u0443\u043d\u043a\u0446\u0443\u0443\u0434 \u043d\u044c \u0442\u043e\u0434\u043e\u0440\u0445\u043e\u0439 \u04af\u0439\u043b\u0434\u043b\u04af\u04af\u0434\u0438\u0439\u0433 \u0433\u04af\u0439\u0446\u044d\u0442\u0433\u044d\u0445\u0438\u0439\u043d \u0442\u0443\u043b\u0434 \u0431\u0443\u0441\u0430\u0434 \u0444\u0443\u043d\u043a\u0446\u0438\u0439\u0433 \u043e\u0440\u043e\u043b\u0442 \u0431\u043e\u043b\u0433\u043e\u043d \u0430\u0432\u0447 \u0431\u043e\u043b\u043d\u043e.<\/li>\n\n\n\n<li><strong>\u0424\u0443\u043d\u043a\u0446\u0443\u0443\u0434\u044b\u0433 \u0431\u0443\u0446\u0430\u0430\u043d\u0430<\/strong>: \u0422\u044d\u0434 \u0448\u0438\u043d\u044d \u0444\u0443\u043d\u043a\u0446\u04af\u04af\u0434\u0438\u0439\u0433 \u0434\u0438\u043d\u0430\u043c\u0438\u043a\u0430\u0430\u0440 \u04af\u04af\u0441\u0433\u044d\u0436, \u0431\u0443\u0446\u0430\u0430\u0445 \u0431\u043e\u043b\u043e\u043c\u0436\u0442\u043e\u0439.<\/li>\n\n\n\n<li><strong>\u041a\u043e\u0434\u044b\u0433 \u0434\u0430\u0445\u0438\u043d \u0430\u0448\u0438\u0433\u043b\u0430\u0445\u044b\u0433 \u0434\u044d\u043c\u0436\u0438\u043d\u044d<\/strong>: \u0424\u0443\u043d\u043a\u0446\u0443\u0443\u0434\u044b\u0433 \u0445\u043e\u043e\u0440\u043e\u043d\u0434 \u043d\u044c \u0434\u0430\u043c\u0436\u0443\u0443\u043b\u0436, \u043d\u044d\u0433\u0442\u0433\u044d\u0445 \u0431\u043e\u043b\u043e\u043c\u0436\u0442\u043e\u0439 \u0442\u0443\u043b \u043c\u043e\u0434\u0443\u043b\u044c\u0447\u043b\u0430\u0433\u0434\u0441\u0430\u043d, \u0434\u0430\u0445\u0438\u043d \u0430\u0448\u0438\u0433\u043b\u0430\u0445 \u0431\u043e\u043b\u043e\u043c\u0436\u0442\u043e\u0439 \u043a\u043e\u0434\u044b\u0433 \u0434\u044d\u043c\u0436\u0434\u044d\u0433.<\/li>\n<\/ol>\n\n\n\n<h3 class=\"wp-block-heading\">\u0425\u044d\u0440\u044d\u0433\u043b\u044d\u0445 \u0442\u043e\u0445\u0438\u043e\u043b\u0434\u043e\u043b:<\/h3>\n\n\n\n<p class=\"wp-block-paragraph\">\u0416\u0430\u0432\u0430 \u0445\u044d\u043b \u0434\u044d\u044d\u0440 \u0443\u0440\u0441\u0433\u0430\u043b, \u043b\u0430\u043c\u0431\u0434\u0430, \u0430\u0440\u0433\u044b\u043d \u043b\u0430\u0432\u043b\u0430\u0433\u0430\u0430 \u0431\u04af\u0445\u0438\u0439 \u0444\u0443\u043d\u043a\u0446\u0438\u043e\u043d\u0430\u043b\u044c \u043f\u0440\u043e\u0433\u0440\u0430\u043c\u0447\u043b\u0430\u043b\u0434 \u0434\u044d\u044d\u0434 \u044d\u0440\u044d\u043c\u0431\u0438\u0439\u043d \u0444\u0443\u043d\u043a\u0446\u0443\u0443\u0434\u044b\u0433 \u0438\u0445\u044d\u0432\u0447\u043b\u044d\u043d \u0430\u0448\u0438\u0433\u043b\u0430\u0434\u0430\u0433. \u0416\u0438\u0448\u044d\u044d \u043d\u044c:<\/p>\n\n\n<div class=\"wp-block-code\">\n\t<div class=\"cm-editor\">\n\t\t<div class=\"cm-scroller\">\n\t\t\t\n<pre>\n<code class=\"language-html\"><div class=\"cm-line\">List<span class=\"tok-punctuation\">&lt;<\/span><span class=\"tok-typeName\">String<\/span><span class=\"tok-punctuation\">&gt;<\/span> names = Arrays.asList(&quot;John&quot;, &quot;Jane&quot;, &quot;Jake&quot;);<\/div><div class=\"cm-line\">names.stream()<\/div><div class=\"cm-line\">     .filter(name -&gt; name.startsWith(&quot;J&quot;))  <\/div><div class=\"cm-line\">     \/\/ Takes a lambda function as argument<\/div><div class=\"cm-line\">     .forEach(System.out::println);         <\/div><div class=\"cm-line\">  \/\/ Takes a method reference as argument<\/div><\/code><\/pre>\n\t\t<\/div>\n\t<\/div>\n<\/div>\n\n\n<h2 class=\"wp-block-heading\">\u0414\u044d\u044d\u0434 \u0437\u044d\u0440\u044d\u0433\u043b\u044d\u043b\u0438\u0439\u043d \u0444\u0443\u043d\u043a\u0446\u0443\u0443\u0434 \u043d\u044c Java \u043f\u0440\u043e\u0433\u0440\u0430\u043c\u0443\u0443\u0434\u0430\u0434 \u0443\u044f\u043d \u0445\u0430\u0442\u0430\u043d \u0431\u0430\u0439\u0434\u0430\u043b, \u0445\u04af\u0447\u0438\u0439\u0433 \u043d\u044d\u043c\u0436, \u0445\u04e9\u0433\u0436\u04af\u04af\u043b\u044d\u0433\u0447\u0434\u044d\u0434 \u0446\u044d\u0432\u044d\u0440, \u0442\u043e\u0432\u0447 \u0431\u04e9\u0433\u04e9\u04e9\u0434 \u043e\u0439\u043b\u0433\u043e\u043c\u0436\u0442\u043e\u0439 \u043a\u043e\u0434 \u0431\u0438\u0447\u0438\u0445 \u0431\u043e\u043b\u043e\u043c\u0436\u0438\u0439\u0433 \u043e\u043b\u0433\u043e\u0434\u043e\u0433!<\/h2>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h1 class=\"wp-block-heading\">\u0425\u0430\u043d\u0434\u0430\u043b\u0442\u044b\u043d \u0445\u0443\u0432\u0438\u0440\u0433\u0430\u0433\u0447\u0438\u0434<\/h1>\n\n\n\n<p class=\"wp-block-paragraph\">Java-\u0434 \u0445\u0430\u043d\u0434\u0430\u043b\u0442\u044b\u043d \u0445\u0443\u0432\u0438\u0440\u0433\u0430\u0433\u0447\u0438\u0434 \u0430\u043d\u0433\u0438, \u0430\u0440\u0433\u0430, \u0445\u0443\u0432\u044c\u0441\u0430\u0433\u0447\u0438\u0439\u043d \u0445\u0430\u0440\u0430\u0433\u0434\u0430\u0445 \u0431\u0430\u0439\u0434\u0430\u043b, \u0445\u04af\u0440\u0442\u044d\u044d\u043c\u0436\u0438\u0439\u0433 \u0445\u044f\u043d\u0430\u0434\u0430\u0433.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">\u0410\u043d\u0433\u0438\u0434 \u0437\u043e\u0440\u0438\u0443\u043b\u0441\u0430\u043d \u0434\u04e9\u0440\u0432\u04e9\u043d \u0445\u0430\u043d\u0434\u0430\u043b\u0442\u044b\u043d \u0445\u0443\u0432\u0438\u0440\u0433\u0430\u0433\u0447\u0438\u0439\u043d \u0442\u043e\u0432\u0447 \u0442\u043e\u0439\u043c\u044b\u0433 \u044d\u043d\u0434\u044d\u044d\u0441 \u04af\u0437\u043d\u044d \u04af\u04af:<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">public: \u0410\u043d\u0433\u0438 \u043d\u044c \u0430\u043b\u044c \u0431\u0430\u0433\u0446\u0430\u0430\u0441 \u04af\u043b \u0445\u0430\u043c\u0430\u0430\u0440\u0430\u043d \u04e9\u04e9\u0440 \u0430\u043b\u044c \u0447 \u0430\u043d\u0433\u0438\u0430\u0441 \u0445\u0430\u043d\u0434\u0430\u0445 \u0431\u043e\u043b\u043e\u043c\u0436\u0442\u043e\u0439.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">protected: \u0425\u0430\u043c\u0433\u0430\u0430\u043b\u0430\u0433\u0434\u0441\u0430\u043d \u0445\u0443\u0432\u0438\u0440\u0433\u0430\u0433\u0447 \u043d\u044c \u0437\u04e9\u0432\u0445\u04e9\u043d \u0430\u043d\u0433\u0438 \u044d\u0441\u0432\u044d\u043b \u0442\u04af\u04af\u043d\u0438\u0439 \u0434\u044d\u0434 \u0430\u043d\u0433\u0438 \u0434\u043e\u0442\u043e\u0440\u0445 \u0433\u0438\u0448\u04af\u04af\u0434\u044d\u0434 \u0430\u0448\u0438\u0433\u043b\u0430\u0433\u0434\u0430\u0445 \u0442\u0443\u043b \u0442\u0443\u0445\u0430\u0439\u043d \u0430\u043d\u0433\u0438\u0434 \u0445\u0430\u043c\u0430\u0430\u0440\u0430\u0445\u0433\u04af\u0439 (\u0438\u0436\u0438\u043b \u0431\u0430\u0433\u0446 \u0434\u043e\u0442\u043e\u0440\u0445 \u044d\u0441\u0432\u044d\u043b \u0443\u0434\u0430\u043c\u0448\u0441\u0430\u043d \u0430\u043d\u0433\u0438\u0430\u0441 \u0445\u0430\u0440\u0430\u0433\u0434\u0430\u0445 \u0431\u0430\u0439\u0434\u0430\u043b).<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">\u04e9\u0433\u04e9\u0433\u0434\u043c\u04e9\u043b (\u0431\u0430\u0433\u0446-\u0445\u0443\u0432\u0438\u0439\u043d): \u0425\u044d\u0440\u044d\u0432 \u044f\u043c\u0430\u0440 \u0447 \u0445\u0430\u043d\u0434\u0430\u043b\u0442 \u0445\u0443\u0432\u0438\u0440\u0433\u0430\u0433\u0447 \u0437\u0430\u0430\u0433\u0430\u0430\u0433\u04af\u0439 \u0431\u043e\u043b \u0442\u0443\u0445\u0430\u0439\u043d \u0430\u043d\u0433\u0438 \u0437\u04e9\u0432\u0445\u04e9\u043d \u04e9\u04e9\u0440\u0438\u0439\u043d \u0431\u0430\u0433\u0446 \u0434\u043e\u0442\u0440\u043e\u043e\u0441 \u0445\u0430\u043d\u0434\u0430\u0445 \u0431\u043e\u043b\u043e\u043c\u0436\u0442\u043e\u0439.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">\u0445\u0443\u0432\u0438\u0439\u043d: \u0410\u043d\u0433\u0438\u0443\u0434\u044b\u0433 \u0445\u0443\u0432\u0438\u0439\u043d \u0433\u044d\u0436 \u0437\u0430\u0440\u043b\u0430\u0445 \u0431\u043e\u043b\u043e\u043c\u0436\u0433\u04af\u0439. \u042d\u043d\u044d \u04e9\u04e9\u0440\u0447\u043b\u04e9\u0433\u0447 \u043d\u044c \u0437\u04e9\u0432\u0445\u04e9\u043d \u0434\u043e\u0442\u043e\u043e\u0434 \u0430\u043d\u0433\u0438 \u044d\u0441\u0432\u044d\u043b \u0430\u043d\u0433\u0438\u0439\u043d \u0433\u0438\u0448\u04af\u04af\u0434\u044d\u0434 \u0445\u0430\u043c\u0430\u0430\u0440\u043d\u0430.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">\u0411\u0438 Java \u0445\u044d\u043b \u0434\u044d\u044d\u0440\u0445 \u043d\u044d\u0440 \u0442\u043e\u043c\u044a\u0451\u043e\u0433 \u0430\u043d\u0433\u043b\u0438 \u0445\u044d\u043b \u0434\u044d\u044d\u0440 \u0445\u0430\u0434\u0433\u0430\u043b\u0430\u0445 \u0431\u04e9\u0433\u04e9\u04e9\u0434 \u0442\u0435\u043a\u0441\u0442\u0438\u0439\u043d \u0430\u043d\u0445\u043d\u044b \u0431\u04af\u0442\u044d\u0446, \u0443\u0442\u0433\u044b\u0433 \u0431\u0430\u0440\u0438\u043c\u0442\u043b\u0430\u043d \u0442\u0430\u0439\u043b\u0431\u0430\u0440\u044b\u0433 \u0411\u043e\u043b\u0433\u0430\u0440 \u0445\u044d\u043b \u0440\u04af\u04af \u043e\u0440\u0447\u0443\u0443\u043b\u0430\u0445 \u0431\u043e\u043b\u043d\u043e.<\/p>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h1 class=\"wp-block-heading\">\u0410\u0442\u043e\u043c \u0431\u0430 \u0434\u044d\u0433\u0434\u044d\u043c\u0445\u0438\u0439<\/h1>\n\n\n\n<p class=\"wp-block-paragraph\">Java \u0445\u044d\u043b \u0434\u044d\u044d\u0440 <code>AtomicInteger<\/code>, \u0442\u04af\u04af\u043d\u0447\u043b\u044d\u043d <code>volatile<\/code> \u0445\u0443\u0432\u044c\u0441\u0430\u0433\u0447\u0434\u044b\u0433 \u0437\u044d\u0440\u044d\u0433\u0446\u04af\u04af\u043b\u044d\u043d \u0443\u0434\u0438\u0440\u0434\u0430\u0445\u0430\u0434 \u0430\u0448\u0438\u0433\u043b\u0430\u0434\u0430\u0433 \u0431\u043e\u043b\u043e\u0432\u0447 \u0442\u044d\u0434\u0433\u044d\u044d\u0440 \u043d\u044c \u04e9\u04e9\u0440 \u0437\u043e\u0440\u0438\u043b\u0433\u043e\u0442\u043e\u0439, \u04e9\u04e9\u0440 \u04e9\u04e9\u0440 \u0437\u0430\u043d \u0447\u0430\u043d\u0430\u0440\u0442\u0430\u0439 \u0431\u0430\u0439\u0434\u0430\u0433.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">\u042d\u0434\u0433\u044d\u044d\u0440 \u043e\u0439\u043b\u0433\u043e\u043b\u0442\u0443\u0443\u0434 \u0431\u043e\u043b\u043e\u043d \u0442\u044d\u0434\u0433\u044d\u044d\u0440\u0438\u0439\u0433 \u0430\u0448\u0438\u0433\u043b\u0430\u0441\u0430\u043d \u0442\u043e\u0445\u0438\u043e\u043b\u0434\u043b\u0443\u0443\u0434\u044b\u043d \u0434\u044d\u043b\u0433\u044d\u0440\u044d\u043d\u0433\u04af\u0439 \u0442\u0430\u0439\u043b\u0431\u0430\u0440\u044b\u0433 \u044d\u043d\u0434 \u043e\u0440\u0443\u0443\u043b\u0430\u0432.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">1. <code>AtomicInteger<\/code><\/h2>\n\n\n\n<p class=\"wp-block-paragraph\"><code>AtomicInteger<\/code> \u0431\u0430\u0433\u0446\u044b\u043d \u043d\u044d\u0433 \u0445\u044d\u0441\u044d\u0433 \u044e\u043c <code>java.util.concurrent.atomic<\/code> \u043c\u04e9\u043d \u0441\u0438\u043d\u0445\u0440\u043e\u043d\u0447\u043b\u043e\u043b\u044b\u0433 \u0442\u043e\u0434\u043e\u0440\u0445\u043e\u0439 \u0430\u0448\u0438\u0433\u043b\u0430\u0445 \u0448\u0430\u0430\u0440\u0434\u043b\u0430\u0433\u0430\u0433\u04af\u0439\u0433\u044d\u044d\u0440 \u0431\u04af\u0445\u044d\u043b \u0442\u043e\u043e\u043d \u0443\u0442\u0433\u0430 \u0434\u044d\u044d\u0440 \u0430\u0442\u043e\u043c\u044b\u043d (thread-safe) \u04af\u0439\u043b\u0434\u043b\u04af\u04af\u0434\u0438\u0439\u0433 \u0433\u04af\u0439\u0446\u044d\u0442\u0433\u044d\u0445 \u0430\u0440\u0433\u0430 \u0437\u0430\u043c\u044b\u0433 \u043e\u043b\u0433\u043e\u0434\u043e\u0433.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">\u0413\u043e\u043b \u043e\u043d\u0446\u043b\u043e\u0433\u0443\u0443\u0434<\/h3>\n\n\n\n<ul class=\"wp-block-list\">\n<li>\u0433\u044d\u0445 \u043c\u044d\u0442 \u0430\u0440\u0433\u0443\u0443\u0434\u044b\u0433 \u04e9\u0433\u0434\u04e9\u0433 <code>incrementAndGet()<\/code>, <code>decrementAndGet()<\/code> \u0431\u043e\u043b\u043e\u043d <code>compareAndSet()<\/code> \u0443\u0442\u0430\u0441\u0433\u04af\u0439, \u0442\u04af\u0433\u0436\u044d\u044d\u0433\u04af\u0439 \u04af\u0439\u043b\u0434\u043b\u04af\u04af\u0434\u044d\u0434 \u0437\u043e\u0440\u0438\u0443\u043b\u0430\u0433\u0434\u0441\u0430\u043d.<\/li>\n\n\n\n<li>\u042d\u043d\u044d \u043d\u044c \u0443\u0442\u0430\u0441\u043d\u0443\u0443\u0434\u044b\u043d \u0430\u044e\u0443\u043b\u0433\u04af\u0439 \u0431\u0430\u0439\u0434\u043b\u044b\u0433 \u0445\u0430\u043d\u0433\u0430\u0445\u044b\u043d \u0442\u0443\u043b\u0434 \u0442\u0435\u0445\u043d\u0438\u043a \u0445\u0430\u043d\u0433\u0430\u043c\u0436\u0438\u0439\u043d \u0442\u04af\u0432\u0448\u043d\u0438\u0439 \u0430\u0442\u043e\u043c\u044b\u043d \u0437\u0430\u0430\u0432\u0440\u044b\u0433 \u0434\u043e\u0442\u043e\u043e\u0434\u0434\u043e\u043e \u0430\u0448\u0438\u0433\u043b\u0430\u0434\u0430\u0433.<\/li>\n\n\n\n<li>\u0425\u044d\u0440\u044d\u0433\u043b\u044d\u0445 \u0445\u044d\u0440\u044d\u0433\u0446\u044d\u044d\u0433 \u0430\u0440\u0438\u043b\u0433\u0430\u043d\u0430 <code>synchronized<\/code> \u0431\u043b\u043e\u043a \u044d\u0441\u0432\u044d\u043b \u0442\u043e\u0434\u043e\u0440\u0445\u043e\u0439 \u0442\u04af\u0433\u0436\u044d\u044d.<\/li>\n<\/ul>\n\n\n\n<h3 class=\"wp-block-heading\">\u0416\u0438\u0448\u044d\u044d \u043d\u044c <code>AtomicInteger<\/code><\/h3>\n\n\n\n<pre class=\"wp-block-code\"><code>\nimport java.util.concurrent.atomic.AtomicInteger;\n\npublic class AtomicIntegerExample {\n    public static void main(String&#91;] args) {\n        AtomicInteger counter = new AtomicInteger(0);\n\n        \/\/ Increment and get the value atomically\n        int newValue = counter.incrementAndGet();\n        System.out.println(&#34;New Value: &#34; + newValue); \n        \/\/ Output: 1\n\n        \/\/ Compare and set\n        boolean wasUpdated = counter.compareAndSet(1, 100);\n        System.out.println(&#34;Was Updated: &#34; + wasUpdated); \n        \/\/ Output: true\n        System.out.println(&#34;Updated Value: &#34; + counter.get()); \n        \/\/ Output: 100\n    }\n}<\/code><\/pre>\n\n\n\n<h3 class=\"wp-block-heading\">-\u0438\u0439\u043d \u043f\u0440\u043e\u0433\u0440\u0430\u043c\u0443\u0443\u0434 <code>AtomicInteger<\/code> (\u0425\u044d\u0440\u044d\u0433\u043b\u044d\u0445 \u0442\u043e\u0445\u0438\u043e\u043b\u0434\u043e\u043b)<\/h3>\n\n\n\n<ol class=\"wp-block-list\">\n<li>\u0422\u043e\u043e\u043b\u0443\u0443\u0440: \u041e\u043b\u043e\u043d \u0443\u0440\u0441\u0433\u0430\u043b\u044b\u043d \u0445\u0430\u043d\u0434\u0441\u0430\u043d \u043d\u0438\u0439\u0442\u043b\u044d\u0433 \u0431\u04af\u0445\u044d\u043b \u0442\u043e\u043e\u043d \u0443\u0442\u0433\u044b\u0433 \u0430\u044e\u0443\u043b\u0433\u04af\u0439\u0433\u044d\u044d\u0440 \u043d\u044d\u043c\u044d\u0433\u0434\u04af\u04af\u043b\u044d\u0445 \u044d\u0441\u0432\u044d\u043b \u0431\u0430\u0433\u0430\u0441\u0433\u0430\u0445.<\/li>\n\n\n\n<li>\u0411\u043b\u043e\u043a\u043b\u043e\u0445\u0433\u04af\u0439 \u04af\u0439\u043b\u0434\u043b\u04af\u04af\u0434: \u0422\u04af\u0433\u0436\u044d\u044d \u0430\u0448\u0438\u0433\u043b\u0430\u0445\u0433\u04af\u0439\u0433\u044d\u044d\u0440 \u0443\u0440\u0441\u0433\u0430\u043b\u0442\u0430\u0439 \u0430\u044e\u0443\u043b\u0433\u04af\u0439 \u0448\u0438\u043d\u044d\u0447\u043b\u044d\u043b\u0442\u04af\u04af\u0434\u0438\u0439\u0433 \u0433\u04af\u0439\u0446\u044d\u0442\u0433\u044d\u043d\u044d.<\/li>\n\n\n\n<li>\u041e\u043d\u043e\u0432\u0447\u0442\u043e\u0439 \u0433\u04af\u0439\u0446\u044d\u0442\u0433\u044d\u043b: -\u0442\u044d\u0439 \u0445\u0430\u0440\u044c\u0446\u0443\u0443\u043b\u0430\u0445\u0430\u0434 \u0438\u043b\u04af\u04af \u0441\u0430\u0439\u043d \u0433\u04af\u0439\u0446\u044d\u0442\u0433\u044d\u043b <code>synchronized<\/code> \u04e9\u043d\u0434\u04e9\u0440 \u0437\u044d\u0440\u044d\u0433\u043b\u044d\u043b\u0438\u0439\u043d \u043e\u0440\u0447\u0438\u043d\u0434 \u0431\u043b\u043e\u043a\u0443\u0443\u0434.<\/li>\n<\/ol>\n\n\n\n<h2 class=\"wp-block-heading\">2. <code>volatile<\/code> \u0411\u04af\u0445\u044d\u043b \u0442\u043e\u043e<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\"><code>volatile<\/code> \u042d\u043d\u044d \u043d\u044c \u0445\u0443\u0432\u044c\u0441\u0430\u0433\u0447\u0438\u0439\u0433 \u0442\u044d\u043c\u0434\u044d\u0433\u043b\u044d\u0445\u044d\u0434 \u0445\u044d\u0440\u044d\u0433\u043b\u044d\u0433\u0434\u0434\u044d\u0433 Java \u0442\u04af\u043b\u0445\u04af\u04af\u0440 \u04af\u0433 \u0431\u04e9\u0433\u04e9\u04e9\u0434 \u0442\u04af\u04af\u043d\u0438\u0439 \u0443\u0442\u0433\u044b\u043d \u04e9\u04e9\u0440\u0447\u043b\u04e9\u043b\u0442 \u0431\u04af\u0445 \u0445\u044d\u043b\u0445\u044d\u044d\u043d\u0434 \u0445\u0430\u0440\u0430\u0433\u0434\u0430\u0445 \u0431\u043e\u043b\u043d\u043e.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">\u042d\u043d\u044d \u043d\u044c \u0445\u044d\u043b\u0445\u044d\u044d \u0445\u043e\u043e\u0440\u043e\u043d\u0434\u044b\u043d \u0445\u0443\u0432\u044c\u0441\u0430\u0433\u0447\u0438\u0439\u043d \u0441\u04af\u04af\u043b\u0447\u0438\u0439\u043d \u0443\u0442\u0433\u044b\u043d \u0445\u0430\u0440\u0430\u0433\u0434\u0430\u0445 \u0431\u0430\u0439\u0434\u043b\u044b\u0433 \u0431\u0430\u0442\u0430\u043b\u0433\u0430\u0430\u0436\u0443\u0443\u043b\u0434\u0430\u0433 \u0431\u043e\u043b\u043e\u0432\u0447 \u0430\u0442\u043e\u043c\u044b\u043d \u0447\u0430\u043d\u0430\u0440\u044b\u0433 \u0431\u0430\u0442\u0430\u043b\u0433\u0430\u0430\u0436\u0443\u0443\u043b\u0434\u0430\u0433\u0433\u04af\u0439.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">\u0413\u043e\u043b \u043e\u043d\u0446\u043b\u043e\u0433\u0443\u0443\u0434<\/h3>\n\n\n\n<ul class=\"wp-block-list\">\n<li>\u0411\u04af\u0445 \u0443\u0440\u0441\u0433\u0430\u043b\u0443\u0443\u0434 \u0445\u0443\u0432\u044c\u0441\u0430\u0433\u0447\u0438\u0439\u043d \u0445\u0430\u043c\u0433\u0438\u0439\u043d \u043e\u0434\u043e\u043e\u0433\u0438\u0439\u043d \u0443\u0442\u0433\u044b\u0433 \u0445\u0430\u0440\u0436 \u0431\u0430\u0439\u0433\u0430\u0430 \u044d\u0441\u044d\u0445\u0438\u0439\u0433 \u0431\u0430\u0442\u0430\u043b\u0433\u0430\u0430\u0436\u0443\u0443\u043b\u043d\u0430.<\/li>\n\n\n\n<li>\u042d\u043d\u044d \u043d\u044c \u0441\u0438\u043d\u0445\u0440\u043e\u043d\u0447\u043b\u043e\u043b\u044b\u0433 \u0445\u0430\u043d\u0433\u0430\u0434\u0430\u0433\u0433\u04af\u0439 \u0442\u0443\u043b \u043d\u044d\u043c\u044d\u0433\u0434\u04af\u04af\u043b\u044d\u0445 \u0433\u044d\u0445 \u043c\u044d\u0442 \u04af\u0439\u043b\u0434\u043b\u04af\u04af\u0434 (<code>x++<\/code>) \u043d\u044c \u0443\u0442\u0430\u0441\u043d\u0430\u0430\u0441 \u0445\u0430\u043c\u0433\u0430\u0430\u043b\u0430\u0445\u0433\u04af\u0439.<\/li>\n\n\n\n<li>\u042d\u043d\u044d \u043d\u044c \u0445\u0443\u0432\u044c\u0441\u0430\u0433\u0447\u0438\u0439\u0433 \u0437\u0430\u0432\u0441\u0440\u044b\u043d \u0442\u043e\u043e\u0446\u043e\u043e\u043b\u043e\u043b\u0433\u04af\u0439\u0433\u044d\u044d\u0440 \u0443\u043d\u0448\u0438\u0436, \u0431\u0438\u0447\u0438\u0445 \u044d\u043d\u0433\u0438\u0439\u043d \u0445\u0443\u0432\u0438\u043b\u0431\u0430\u0440\u0443\u0443\u0434\u0430\u0434 \u043b \u0445\u044d\u0440\u044d\u0433\u0442\u044d\u0439.<\/li>\n<\/ul>\n\n\n\n<h3 class=\"wp-block-heading\">\u0416\u0438\u0448\u044d\u044d \u043d\u044c <code>volatile<\/code><\/h3>\n\n\n<div class=\"wp-block-code\">\n\t<div class=\"cm-editor\">\n\t\t<div class=\"cm-scroller\">\n\t\t\t\n<pre>\n<code class=\"language-mathematica\"><div class=\"cm-line\"><span class=\"tok-keyword\">public<\/span> <span class=\"tok-keyword\">class<\/span> <span class=\"tok-keyword\">VolatileExample<\/span> <span class=\"tok-punctuation\">{<\/span><\/div><div class=\"cm-line\">    <span class=\"tok-keyword\">private<\/span> <span class=\"tok-keyword\">static<\/span> <span class=\"tok-keyword\">volatile<\/span> <span class=\"tok-keyword\">int<\/span> <span class=\"tok-keyword\">counter<\/span> <span class=\"tok-operator\">=<\/span> <span class=\"tok-number\">0<\/span><span class=\"tok-operator\">;<\/span><\/div><div class=\"cm-line\"><\/div><div class=\"cm-line\">    <span class=\"tok-keyword\">public<\/span> <span class=\"tok-keyword\">static<\/span> <span class=\"tok-keyword\">void<\/span> <span class=\"tok-keyword\">main<\/span><span class=\"tok-punctuation\">(<\/span><span class=\"tok-keyword\">String<\/span><span class=\"tok-punctuation\">[]<\/span> <span class=\"tok-keyword\">args<\/span><span class=\"tok-punctuation\">)<\/span> <span class=\"tok-punctuation\">{<\/span><\/div><div class=\"cm-line\">        <span class=\"tok-keyword\">counter<\/span><span class=\"tok-operator\">++;<\/span><\/div><div class=\"cm-line\">        <span class=\"tok-keyword\">System<\/span><span class=\"tok-operator\">.<\/span><span class=\"tok-keyword\">out<\/span><span class=\"tok-operator\">.<\/span><span class=\"tok-keyword\">println<\/span><span class=\"tok-punctuation\">(<\/span><span class=\"tok-string\">&quot;Counter: &quot;<\/span> <span class=\"tok-operator\">+<\/span> <span class=\"tok-keyword\">counter<\/span><span class=\"tok-punctuation\">)<\/span><span class=\"tok-operator\">;<\/span> <\/div><div class=\"cm-line\">        <span class=\"tok-operator\">\/\/<\/span> <span class=\"tok-keyword\">Not<\/span> <span class=\"tok-keyword\">thread<\/span><span class=\"tok-operator\">-<\/span><span class=\"tok-keyword\">safe<\/span><span class=\"tok-operator\">!<\/span><\/div><div class=\"cm-line\">    <span class=\"tok-punctuation\">}<\/span><\/div><div class=\"cm-line\"><span class=\"tok-punctuation\">}<\/span><\/div><\/code><\/pre>\n\t\t<\/div>\n\t<\/div>\n<\/div>\n\n\n<h3 class=\"wp-block-heading\">-\u0438\u0439\u043d \u043f\u0440\u043e\u0433\u0440\u0430\u043c\u0443\u0443\u0434 <code>volatile<\/code> (\u0425\u044d\u0440\u044d\u0433\u043b\u044d\u0445 \u0442\u043e\u0445\u0438\u043e\u043b\u0434\u043e\u043b)<\/h3>\n\n\n\n<ol class=\"wp-block-list\">\n<li>\u0422\u0443\u0433: \u0423\u0443\u0447\u043b\u0430\u0430\u0440\u0430\u0439 <code>boolean<\/code> \u044d\u0441\u0432\u044d\u043b <code>integer<\/code> \u043e\u043b\u043e\u043d \u0443\u0440\u0441\u0433\u0430\u043b\u0430\u0430\u0440 \u0442\u043e\u0445\u0438\u0440\u0443\u0443\u043b\u0441\u0430\u043d \u044d\u0441\u0432\u044d\u043b \u0443\u043d\u0448\u0441\u0430\u043d \u0442\u0443\u0433\u0443\u0443\u0434.<\/li>\n\n\n\n<li>\u0422\u04e9\u0440\u0438\u0439\u043d \u0443\u0434\u0438\u0440\u0434\u043b\u0430\u0433\u0430: \u041d\u0438\u0439\u043b\u043c\u044d\u043b \u04af\u0439\u043b\u0434\u043b\u04af\u04af\u0434 (\u04e9\u0441\u04e9\u043b\u0442 \u0433\u044d\u0445 \u043c\u044d\u0442) \u0430\u0442\u043e\u043c\u044b\u043d \u0448\u0438\u043d\u0436 \u0447\u0430\u043d\u0430\u0440\u0442\u0430\u0439 \u0431\u0430\u0439\u0445\u044b\u0433 \u0448\u0430\u0430\u0440\u0434\u0434\u0430\u0433\u0433\u04af\u0439 \u0445\u0443\u0432\u044c\u0441\u0430\u0433\u0447\u0438\u0434.<\/li>\n\n\n\n<li>\u0425\u04e9\u043d\u0433\u04e9\u043d \u0441\u0438\u043d\u0445\u0440\u043e\u043d\u0447\u043b\u043e\u043b: \u04ae\u0437\u044d\u0433\u0434\u044d\u0445 \u043e\u0440\u0447\u0438\u043d \u0448\u0430\u0430\u0440\u0434\u043b\u0430\u0433\u0430\u0442\u0430\u0439, \u0433\u044d\u0445\u0434\u044d\u044d \u0430\u0442\u043e\u043c\u044b\u043d \u0448\u0438\u043d\u0436 \u0447\u0430\u043d\u0430\u0440 \u0431\u0438\u0448.<\/li>\n<\/ol>\n\n\n\n<h2 class=\"wp-block-heading\">\u0413\u043e\u043b \u044f\u043b\u0433\u0430\u0430\u043d\u0443\u0443\u0434 <code>AtomicInteger<\/code> \u0431\u043e\u043b\u043e\u043d <code>volatile<\/code><\/h2>\n\n\n\n<figure class=\"wp-block-table\"><table class=\"has-fixed-layout\"><tbody><tr><th>\u0410\u0441\u043f\u0435\u043a\u0442<\/th><th><code>AtomicInteger<\/code><\/th><th><code>volatile<\/code><\/th><\/tr><tr><td>Thread Safety<\/td><td>\u0411\u04af\u0440\u044d\u043d \u0443\u0442\u0430\u0441\u0433\u04af\u0439 &#8211; \u0430\u0442\u043e\u043c\u044b\u043d \u0430\u0436\u0438\u043b\u043b\u0430\u0433\u0430\u0430\u0433 \u0434\u044d\u043c\u0436\u0434\u044d\u0433.<\/td><td>\u042d\u043d\u044d \u043d\u044c \u0445\u0430\u0440\u0430\u0433\u0434\u0430\u0445 \u0431\u0430\u0439\u0434\u043b\u044b\u0433 \u0445\u0430\u043d\u0433\u0430\u0434\u0430\u0433 \u0431\u043e\u043b\u043e\u0432\u0447 \u043d\u0438\u0439\u043b\u043c\u044d\u043b \u04af\u0439\u043b \u0430\u0436\u0438\u043b\u043b\u0430\u0433\u0430\u0430\u043d\u044b \u0443\u0442\u0430\u0441 \u0430\u044e\u0443\u043b\u0433\u04af\u0439 \u0431\u0430\u0439\u0434\u043b\u044b\u0433 \u0431\u0430\u0442\u0430\u043b\u0433\u0430\u0430\u0436\u0443\u0443\u043b\u0434\u0430\u0433\u0433\u04af\u0439.<\/td><\/tr><tr><td>\u0410\u0442\u043e\u043c \u0447\u0430\u043d\u0430\u0440<\/td><td>\u04e8\u0441\u04e9\u043b\u0442 \u044d\u0441\u0432\u044d\u043b \u0431\u0430\u0433\u0446 \u0437\u044d\u0440\u044d\u0433 \u0430\u0442\u043e\u043c\u044b\u043d \u04af\u0439\u043b\u0434\u043b\u04af\u04af\u0434\u0438\u0439\u0433 \u0431\u0430\u0442\u0430\u043b\u0433\u0430\u0430\u0436\u0443\u0443\u043b\u0434\u0430\u0433.<\/td><td>\u041d\u0438\u0439\u043b\u043c\u044d\u043b \u04af\u0439\u043b \u0430\u0436\u0438\u043b\u043b\u0430\u0433\u0430\u0430\u043d\u044b \u0445\u0443\u0432\u044c\u0434 \u0430\u0442\u043e\u043c\u044b\u043d \u0447\u0430\u043d\u0430\u0440\u044b\u0433 \u0431\u0430\u0442\u0430\u043b\u0433\u0430\u0430\u0436\u0443\u0443\u043b\u0434\u0430\u0433\u0433\u04af\u0439.<\/td><\/tr><tr><td>\u0413\u04af\u0439\u0446\u044d\u0442\u0433\u044d\u043b<\/td><td>\u04e8\u043d\u0434\u04e9\u0440 \u0437\u044d\u0440\u044d\u0433\u043b\u044d\u043b\u0438\u0439\u043d \u0445\u0443\u0432\u0438\u043b\u0431\u0430\u0440\u0443\u0443\u0434\u0430\u0434 \u0442\u043e\u0445\u0438\u0440\u043e\u043c\u0436\u0442\u043e\u0439.<\/td><td>\u0425\u044d\u0440\u044d\u0433\u0436\u04af\u04af\u043b\u044d\u0445\u044d\u0434 \u0438\u043b\u04af\u04af \u0445\u04e9\u043d\u0433\u04e9\u043d, \u0433\u044d\u0445\u0434\u044d\u044d \u043d\u0430\u0440\u0438\u0439\u043d \u0442\u04e9\u0432\u04e9\u0433\u0442\u044d\u0439 \u0448\u0438\u043d\u044d\u0447\u043b\u044d\u043b\u0442\u04af\u04af\u0434\u044d\u0434 \u0442\u043e\u0445\u0438\u0440\u043e\u043c\u0436\u0433\u04af\u0439.<\/td><\/tr><tr><td>\u0410\u0440\u0433\u0430 \u0437\u04af\u0439<\/td><td>\u0437\u044d\u0440\u044d\u0433 \u0430\u0448\u0438\u0433\u0442\u0430\u0439 \u0430\u0440\u0433\u0443\u0443\u0434\u044b\u0433 \u0445\u0430\u043d\u0433\u0430\u0434\u0430\u0433 <code>incrementAndGet()<\/code>.<\/td><td>\u0421\u0442\u0430\u043d\u0434\u0430\u0440\u0442 \u0445\u0443\u0432\u044c\u0441\u0430\u0445 \u0445\u0430\u043d\u0434\u0430\u043b\u0442\u0430\u0430\u0441 \u04e9\u04e9\u0440 \u043d\u044d\u043c\u044d\u043b\u0442 \u0430\u0440\u0433\u0430 \u0431\u0430\u0439\u0445\u0433\u04af\u0439.<\/td><\/tr><tr><td>\u0425\u044d\u0440\u044d\u0433\u043b\u044d\u044d\u043d\u0438\u0439 \u0445\u044d\u0440\u044d\u0433<\/td><td>\u0426\u043e\u0433\u0446\u043e\u043b\u0431\u043e\u0440, \u0443\u0440\u0441\u0433\u0430\u043b\u0434 \u0430\u044e\u0443\u043b\u0433\u04af\u0439 \u0445\u0443\u0432\u0430\u0430\u043b\u0446\u0441\u0430\u043d \u0445\u0443\u0432\u044c\u0441\u0430\u0433\u0447 \u0448\u0438\u043d\u044d\u0447\u043b\u044d\u043b\u0442\u04af\u04af\u0434.<\/td><td>\u0425\u0430\u0440\u0430\u0433\u0434\u0430\u0445 \u0431\u0430\u0439\u0434\u0430\u043b \u0448\u0430\u0430\u0440\u0434\u043b\u0430\u0433\u0430\u0442\u0430\u0439 \u04af\u0435\u0434 \u0445\u0443\u0432\u044c\u0441\u0430\u0433\u0447\u0434\u044b\u0433 \u0437\u04af\u0433\u044d\u044d\u0440 \u043b \u0443\u043d\u0448\u0438\u0436 \u044d\u0441\u0432\u044d\u043b \u0431\u0438\u0447\u044d\u044d\u0440\u044d\u0439.<\/td><\/tr><\/tbody><\/table><\/figure>\n\n\n\n<h2 class=\"wp-block-heading\">\u0410\u043b\u044c \u043d\u044c \u0445\u044d\u0437\u044d\u044d \u0445\u044d\u0440\u044d\u0433\u043b\u044d\u0445 \u0432\u044d? (\u042e\u0443\u0433 \u0445\u044d\u0437\u044d\u044d \u0445\u044d\u0440\u044d\u0433\u043b\u044d\u0445 \u0432\u044d?)<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">1. \u0410\u0448\u0438\u0433\u043b\u0430\u0445 <code>AtomicInteger<\/code>, \u0445\u044d\u0437\u044d\u044d:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>\u0422\u0430\u043d\u0434 \u0430\u0442\u043e\u043c\u044b\u043d \u04af\u0439\u043b\u0434\u043b\u04af\u04af\u0434 \u0445\u044d\u0440\u044d\u0433\u0442\u044d\u0439 (\u0436\u0438\u0448\u044d\u044d \u043d\u044c \u043d\u044d\u043c\u044d\u0433\u0434\u04af\u04af\u043b\u044d\u0445, \u0445\u0430\u0440\u044c\u0446\u0443\u0443\u043b\u0430\u0445, \u0442\u043e\u0445\u0438\u0440\u0443\u0443\u043b\u0430\u0445).<\/li>\n\n\n\n<li>\u0425\u0443\u0432\u044c\u0441\u0430\u0433\u0447 \u0440\u0443\u0443 \u043d\u044d\u0433\u044d\u043d \u0437\u044d\u0440\u044d\u0433 \u0445\u044d\u0434 \u0445\u044d\u0434\u044d\u043d \u0443\u0440\u0441\u0433\u0430\u043b\u0430\u0430\u0440 \u0445\u0430\u043d\u0434\u0430\u0436, \u04e9\u04e9\u0440\u0447\u0438\u043b\u0434\u04e9\u0433.<\/li>\n<\/ul>\n\n\n\n<p class=\"wp-block-paragraph\">2. \u0410\u0448\u0438\u0433\u043b\u0430\u0445 <code>volatile<\/code>, \u0445\u044d\u0437\u044d\u044d:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>\u0422\u0430 \u0445\u044d\u043b\u0445\u044d\u044d \u0445\u043e\u043e\u0440\u043e\u043d\u0434\u044b\u043d \u0445\u0443\u0432\u0430\u0430\u043b\u0446\u0441\u0430\u043d \u0445\u0443\u0432\u044c\u0441\u0430\u0433\u0447\u0438\u0439\u043d \u0445\u0430\u0440\u0430\u0433\u0434\u0430\u0445 \u0431\u0430\u0439\u0434\u043b\u044b\u0433 \u0445\u0430\u043d\u0433\u0430\u0445 \u0451\u0441\u0442\u043e\u0439.<\/li>\n\n\n\n<li>\u042f\u043c\u0430\u0440 \u0447 \u043d\u0438\u0439\u043b\u043c\u044d\u043b \u04af\u0439\u043b\u0434\u043b\u04af\u04af\u0434 (\u043d\u044d\u043c\u044d\u0433\u0434\u04af\u04af\u043b\u044d\u0445, \u043d\u044d\u043c\u044d\u0445 \u0433\u044d\u0445 \u043c\u044d\u0442) \u0445\u0438\u0439\u0433\u0434\u0434\u044d\u0433\u0433\u04af\u0439.<\/li>\n<\/ul>\n\n\n\n<p class=\"wp-block-paragraph\">\u0427\u0443\u0445\u0430\u043b \u0442\u043e\u0434\u0440\u0443\u0443\u043b\u0433\u0430: <code>volatile<\/code> \u0445\u0443\u0432\u044c\u0441\u0430\u0433\u0447 \u043d\u044c \u0437\u04e9\u0432\u0445\u04e9\u043d \u04af\u043d\u0434\u0441\u044d\u043d \u0441\u0430\u043d\u0430\u0445 \u043e\u0439\u0434 \u0444\u0438\u0437\u0438\u043a \u0431\u0430\u0439\u0434\u043b\u0430\u0430\u0440 \u0445\u0430\u0434\u0433\u0430\u043b\u0430\u0433\u0434\u0430\u043d\u0430 \u0433\u044d\u0441\u044d\u043d \u04af\u0433 \u0431\u0438\u0448 \u044e\u043c. \u042d\u043d\u044d \u043d\u044c Java \u0441\u0430\u043d\u0430\u0445 \u043e\u0439\u043d \u0437\u0430\u0433\u0432\u0430\u0440 (JMM) \u0434\u0430\u0433\u0443\u0443 \u0445\u0430\u0440\u0430\u0433\u0434\u0430\u0445 \u0431\u0430\u0439\u0434\u0430\u043b, \u0441\u0430\u043d\u0430\u0445 \u043e\u0439\u043d \u0437\u0430\u0445\u0438\u0430\u043b\u0433\u044b\u043d \u0431\u0430\u0442\u0430\u043b\u0433\u0430\u0430\u0433 \u04e9\u0433\u0434\u04e9\u0433. \u041c\u04e9\u043d <code>AtomicInteger<\/code> -\u0430\u0430\u0441 \u0438\u043b\u04af\u04af \u0445\u0443\u0440\u0434\u0430\u043d \u0431\u0430\u0439\u0445 \u0430\u043b\u0431\u0430\u0433\u04af\u0439 <code>synchronized<\/code> \u0431\u04af\u0445 \u043d\u04e9\u0445\u0446\u04e9\u043b \u0431\u0430\u0439\u0434\u0430\u043b\u0434 &#8211; \u0433\u04af\u0439\u0446\u044d\u0442\u0433\u044d\u043b \u043d\u044c \u0430\u0447\u0430\u0430\u043b\u0430\u043b, \u0443\u0442\u0430\u0441\u043d\u0443\u0443\u0434\u044b\u043d \u0442\u043e\u043e\u043d\u043e\u043e\u0441 \u0445\u0430\u043c\u0430\u0430\u0440\u043d\u0430.<\/p>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h1 class=\"wp-block-heading\">\u0411\u0430\u0442\u0430\u043b\u0433\u0430\u0430\u0436\u0443\u0443\u043b\u0430\u043b\u0442 vs \u0417\u04e9\u0432\u0448\u04e9\u04e9\u0440\u04e9\u043b<\/h1>\n\n\n\n<p class=\"wp-block-paragraph\">\u0411\u0430\u0442\u0430\u043b\u0433\u0430\u0430\u0436\u0443\u0443\u043b\u0430\u043b\u0442: \u0425\u044d\u0440\u044d\u0433\u043b\u044d\u0433\u0447\u0438\u0439\u043d \u0431\u0438\u0435\u0438\u0439\u043d \u0431\u0430\u0439\u0446\u0430\u0430\u043b\u0442\u044b\u0433 \u0431\u0430\u0442\u0430\u043b\u0433\u0430\u0430\u0436\u0443\u0443\u043b\u0430\u0445 \u04af\u0439\u043b \u044f\u0432\u0446. \u042d\u043d\u044d \u043d\u044c \u0442\u0430\u043d\u044b\u0433 \u0445\u044d\u043d \u0431\u044d \u0433\u044d\u0434\u0433\u0438\u0439\u0433 \u043d\u043e\u0442\u043b\u043e\u0445 \u0433\u044d\u0436 \u0445\u0430\u0440\u0436 \u0431\u043e\u043b\u043d\u043e, \u0436\u0438\u0448\u044d\u044d\u043b\u0431\u044d\u043b, \u043d\u044d\u0432\u0442\u044d\u0440\u0447 \u043e\u0440\u043d\u043e <code>username<\/code> \u0431\u043e\u043b\u043e\u043d <code>password<\/code>.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">\u0411\u0430\u0442\u0430\u043b\u0433\u0430\u0430\u0436\u0443\u0443\u043b\u0430\u043b\u0442\u044b\u043d \u0442\u04e9\u0440\u043b\u04af\u04af\u0434<\/h3>\n\n\n\n<figure class=\"wp-block-table\"><table class=\"has-fixed-layout\"><tbody><tr><th>\u0422\u04e9\u0440\u04e9\u043b<\/th><th>\u0422\u043e\u0434\u043e\u0440\u0445\u043e\u0439\u043b\u043e\u043b\u0442<\/th><th>\u0416\u0438\u0448\u044d\u044d \/ \u0425\u044d\u0440\u044d\u0433\u043b\u044d\u0441\u044d\u043d \u0433\u0430\u0437\u0430\u0440 (\u0416\u0438\u0448\u044d\u044d \/ \u0425\u044d\u0440\u044d\u0433\u043b\u044d\u044d)<\/th><\/tr><tr><td>\u04ae\u043d\u0434\u0441\u044d\u043d \u0431\u0430\u0442\u0430\u043b\u0433\u0430\u0430\u0436\u0443\u0443\u043b\u0430\u043b\u0442<\/td><td><code>Username<\/code> \u0431\u043e\u043b\u043e\u043d <code>password<\/code> Base64 \u043a\u043e\u0434\u0447\u0438\u043b\u043e\u043b\u044b\u0433 \u0430\u0448\u0438\u0433\u043b\u0430\u043d HTTP \u0442\u043e\u043b\u0433\u043e\u0439 \u0445\u044d\u0441\u044d\u0433\u0442 \u0438\u043b\u0433\u044d\u044d\u0433\u0434\u0434\u044d\u0433. \u0410\u044e\u0443\u043b\u0433\u04af\u0439 \u0431\u0430\u0439\u0434\u043b\u044b\u043d \u04af\u04af\u0434\u043d\u044d\u044d\u0441 HTTPS \u0448\u0430\u0430\u0440\u0434\u043b\u0430\u0433\u0430\u0442\u0430\u0439.<\/td><td>\u042d\u043d\u0433\u0438\u0439\u043d REST \u0442\u04e9\u0433\u0441\u0433\u04e9\u043b\u0438\u0439\u043d \u0446\u044d\u0433\u04af\u04af\u0434 (dev\/\u0434\u043e\u0442\u043e\u043e\u0434). \u0413\u0430\u0440\u0447\u0438\u0433: <code>Authorization: Basic &lt;base64&gt;<\/code><\/td><\/tr><tr><td>\u041c\u0430\u044f\u0433\u0442 \u0434\u044d\u044d\u0440 \u0441\u0443\u0443\u0440\u0438\u043b\u0441\u0430\u043d \u0431\u0430\u0442\u0430\u043b\u0433\u0430\u0430\u0436\u0443\u0443\u043b\u0430\u043b\u0442<\/td><td>HTML \u043c\u0430\u044f\u0433\u0442\u0430\u0430\u0440 \u043d\u044d\u0432\u0442\u044d\u0440\u0447, \u0441\u0435\u0440\u0432\u0435\u0440 \u0445\u044d\u0440\u044d\u0433\u043b\u044d\u0433\u0447\u0438\u0439\u0433 \u0431\u0430\u0442\u0430\u043b\u0433\u0430\u0430\u0436\u0443\u0443\u043b\u0436, \u0441\u0435\u0441\u0441 \u04af\u04af\u0441\u0433\u044d\u0434\u044d\u0433.<\/td><td>\u0421\u0435\u0430\u043d\u0441 \u0431\u04af\u0445\u0438\u0439 \u0432\u044d\u0431 \u043f\u0440\u043e\u0433\u0440\u0430\u043c\u0443\u0443\u0434 (Servlets\/JSP, Spring MVC).<\/td><\/tr><tr><td>\u0422\u043e\u043a\u0435\u043d \u0434\u044d\u044d\u0440 \u0441\u0443\u0443\u0440\u0438\u043b\u0441\u0430\u043d (JWT)<\/td><td>\u041d\u044d\u0432\u0442\u0440\u044d\u043d \u043e\u0440\u0441\u043d\u044b \u0434\u0430\u0440\u0430\u0430 \u0441\u0435\u0440\u0432\u0435\u0440 \u0433\u0430\u0440\u044b\u043d \u04af\u0441\u044d\u0433 \u0437\u0443\u0440\u0441\u0430\u043d \u0436\u0435\u0442\u043e\u043d \u0433\u0430\u0440\u0433\u0430\u0434\u0430\u0433 \u0431\u04e9\u0433\u04e9\u04e9\u0434 \u04af\u04af\u043d\u0438\u0439\u0433 \u04af\u0439\u043b\u0447\u043b\u04af\u04af\u043b\u044d\u0433\u0447 \u0445\u04af\u0441\u044d\u043b\u0442 \u0431\u043e\u043b\u0433\u043e\u043d\u0434 \u0438\u043b\u0433\u044d\u044d\u0434\u044d\u0433. \u0425\u0430\u0440\u044c\u044f\u0430\u043b\u0430\u043b\u0433\u04af\u0439 \u0431\u0430\u0442\u0430\u043b\u0433\u0430\u0430\u0436\u0443\u0443\u043b\u0430\u043b\u0442.<\/td><td>REST API, \u043c\u0438\u043a\u0440\u043e \u04af\u0439\u043b\u0447\u0438\u043b\u0433\u044d\u044d; <code>Authorization: Bearer &lt;jwt&gt;<\/code><\/td><\/tr><tr><td>OAuth2 \/ OpenID \u0445\u043e\u043b\u0431\u043e\u043b\u0442<\/td><td>\u0413\u0430\u0434\u043d\u044b \u0442\u0430\u043d\u0438\u0443\u043b\u0430\u0445 \u04af\u0439\u043b\u0447\u0438\u043b\u0433\u044d\u044d \u04af\u0437\u04af\u04af\u043b\u044d\u0433\u0447\u044d\u044d\u0440 \u0434\u0430\u043c\u0436\u0443\u0443\u043b\u0430\u043d \u0431\u0430\u0442\u0430\u043b\u0433\u0430\u0430\u0436\u0443\u0443\u043b\u0430\u043b\u0442. SSO \u0431\u043e\u043b\u043e\u043d \u0437\u04e9\u0432\u0448\u04e9\u04e9\u0440\u043b\u0438\u0439\u0433 \u0434\u044d\u043c\u0436\u0434\u044d\u0433.<\/td><td>Google\/Azure AD\/Keycloak \u0430\u0448\u0438\u0433\u043b\u0430\u043d \u043d\u044d\u0432\u0442\u0440\u044d\u0445; API \u0431\u043e\u043b\u043e\u043d SPA-\u0438\u0439\u043d \u0445\u0430\u043c\u0433\u0430\u0430\u043b\u0430\u043b\u0442.<\/td><\/tr><tr><td>Digest-\u0438\u0439\u043d \u0431\u0430\u0442\u0430\u043b\u0433\u0430\u0430\u0436\u0443\u0443\u043b\u0430\u043b\u0442<\/td><td>\u041d\u0443\u0443\u0446 \u04af\u0433\u0438\u0439\u0433 \u043d\u044d\u044d\u043b\u0442\u0442\u044d\u0439 \u0445\u044d\u043b\u0431\u044d\u0440\u044d\u044d\u0440 \u0438\u043b\u0433\u044d\u044d\u0433\u044d\u044d\u0433\u04af\u0439; \u0445\u0443\u0443\u0447\u0438\u043d \u0445\u044d\u0448-\u0434 \u0441\u0443\u0443\u0440\u0438\u043b\u0441\u0430\u043d \u0441\u043e\u0440\u0438\u043b\u0442\/\u0445\u0430\u0440\u0438\u0443\u043b\u0442\u044b\u043d \u043c\u0435\u0445\u0430\u043d\u0438\u0437\u043c\u044b\u0433 \u0430\u0448\u0438\u0433\u043b\u0430\u0434\u0430\u0433.<\/td><td>\u0425\u0443\u0443\u0447\u0438\u043d \u0441\u0438\u0441\u0442\u0435\u043c; \u04e9\u043d\u04e9\u04e9\u0434\u04e9\u0440 \u0445\u043e\u0432\u043e\u0440 \u0445\u044d\u0440\u044d\u0433\u043b\u044d\u0433\u0434\u0434\u044d\u0433.<\/td><\/tr><tr><td>\u0413\u044d\u0440\u0447\u0438\u043b\u0433\u044d\u044d\u043d\u0434 \u0441\u0443\u0443\u0440\u0438\u043b\u0441\u0430\u043d (\u0425\u0430\u0440\u0438\u043b\u0446\u0430\u043d TLS)<\/td><td>\u04ae\u0439\u043b\u0447\u043b\u04af\u04af\u043b\u044d\u0433\u0447 \u043d\u044c X.509 \u0441\u0435\u0440\u0442\u0438\u0444\u0438\u043a\u0430\u0442\u044b\u0433 \u04e9\u0433\u0434\u04e9\u0433 \u0431\u04e9\u0433\u04e9\u04e9\u0434 \u04af\u04af\u0433\u044d\u044d\u0440 \u0441\u0435\u0440\u0432\u0435\u0440 TLS \u0434\u0430\u0432\u0445\u0430\u0440\u0433\u0430 \u0434\u044d\u044d\u0440 \u04e9\u04e9\u0440\u0438\u0439\u043d \u0442\u0430\u043d\u0438\u0443\u043b\u0431\u0430\u0440\u0430\u0430 \u0431\u0430\u0442\u0430\u043b\u0433\u0430\u0430\u0436\u0443\u0443\u043b\u0434\u0430\u0433.<\/td><td>\u0411\u0430\u043d\u043a\/\u0431\u0430\u0439\u0433\u0443\u0443\u043b\u043b\u0430\u0433\u044b\u043d \u0438\u043d\u0442\u0435\u0433\u0440\u0430\u0446\u0447\u0438\u043b\u0430\u043b; \u04af\u0439\u043b\u0447\u0438\u043b\u0433\u044d\u044d \u0445\u043e\u043e\u0440\u043e\u043d\u0434\u044b\u043d \u0445\u0430\u0440\u0438\u043b\u0446\u0430\u0430\u043d\u044b \u0430\u044e\u0443\u043b\u0433\u04af\u0439 \u0431\u0430\u0439\u0434\u0430\u043b.<\/td><\/tr><tr><td>LDAP \u0431\u0430\u0442\u0430\u043b\u0433\u0430\u0430\u0436\u0443\u0443\u043b\u0430\u043b\u0442<\/td><td>\u0425\u044d\u0440\u044d\u0433\u043b\u044d\u0433\u0447\u0434\u0438\u0439\u0433 \u043b\u0430\u0432\u043b\u0430\u0445 \u04af\u0439\u043b\u0447\u0438\u043b\u0433\u044d\u044d\u0442\u044d\u0439 (LDAP\/Active Directory) \u0448\u0430\u043b\u0433\u0430\u0434\u0430\u0433.<\/td><td>\u0411\u0430\u0439\u0433\u0443\u0443\u043b\u043b\u0430\u0433\u044b\u043d \u0434\u043e\u0442\u043e\u043e\u0434 \u0441\u04af\u043b\u0436\u044d\u044d; \u0425\u0430\u0432\u0440\u044b\u043d \u0430\u044e\u0443\u043b\u0433\u04af\u0439 \u0431\u0430\u0439\u0434\u0430\u043b + AD\/LDAP.<\/td><\/tr><tr><td>Kerberos \/ SPNEGO<\/td><td>\u0414\u043e\u043c\u044d\u0439\u043d \u0434\u043e\u0442\u043e\u0440 Single Sign-On (SSO)-\u0433 \u0434\u044d\u043c\u0436\u0434\u044d\u0433 \u0442\u0430\u0441\u0430\u043b\u0431\u0430\u0440\u0430\u0430\u0440 \u0434\u0430\u043c\u0436\u0443\u0443\u043b\u0430\u043d \u0431\u0430\u0442\u0430\u043b\u0433\u0430\u0430\u0436\u0443\u0443\u043b\u0430\u043b\u0442.<\/td><td>Enterprise Windows \u0434\u043e\u043c\u044d\u0439\u043d\u0443\u0443\u0434; \u0414\u043e\u0442\u043e\u043e\u0434 \u0441\u04af\u043b\u0436\u044d\u044d\u043d\u0438\u0439 \u043f\u0440\u043e\u0433\u0440\u0430\u043c\u0443\u0443\u0434\u0430\u0434 \u0437\u043e\u0440\u0438\u0443\u043b\u0441\u0430\u043d SSO.<\/td><\/tr><tr><td>SAML<\/td><td>Identity Provider \u0431\u043e\u043b\u043e\u043d Service Provider \u0445\u043e\u043e\u0440\u043e\u043d\u0434 SSO-\u0434 \u0437\u043e\u0440\u0438\u0443\u043b\u0441\u0430\u043d XML \u0431\u0430\u0442\u0430\u043b\u0433\u0430\u0430\u0436\u0443\u0443\u043b\u0430\u043b\u0442\u044b\u0433 \u0430\u0448\u0438\u0433\u043b\u0430\u0434\u0430\u0433.<\/td><td>\u0412\u044d\u0431 \u043f\u0440\u043e\u0433\u0440\u0430\u043c\u0443\u0443\u0434\u0430\u0434 \u0437\u043e\u0440\u0438\u0443\u043b\u0441\u0430\u043d Enterprise SSO (Keycloak, ADFS, Okta).<\/td><\/tr><tr><td>\u041e\u043b\u043e\u043d \u0445\u04af\u0447\u0438\u043d \u0437\u04af\u0439\u043b\u0438\u0439\u043d \u0431\u0430\u0442\u0430\u043b\u0433\u0430\u0430\u0436\u0443\u0443\u043b\u0430\u043b\u0442 (MFA)<\/td><td>\u0425\u043e\u0451\u0440 \u0431\u0430 \u0442\u04af\u04af\u043d\u044d\u044d\u0441 \u0434\u044d\u044d\u0448 \u0431\u0430\u0442\u0430\u043b\u0433\u0430\u0430\u0436\u0443\u0443\u043b\u0430\u043b\u0442\u044b\u043d \u0445\u04af\u0447\u0438\u043d \u0437\u04af\u0439\u043b\u0438\u0439\u0433 \u0430\u0448\u0438\u0433\u043b\u0430\u0445 (\u043d\u0443\u0443\u0446 \u04af\u0433 + OTP\/\u0431\u0438\u043e\u043c\u0435\u0442\u0440\/\u0442\u04e9\u0445\u04e9\u04e9\u0440\u04e9\u043c\u0436).<\/td><td>\u042d\u043d\u044d \u043d\u044c \u0431\u0430\u0442\u0430\u043b\u0433\u0430\u0430\u0436\u0443\u0443\u043b\u0430\u043b\u0442\u044b\u043d \u0431\u0443\u0441\u0430\u0434 \u0430\u0440\u0433\u0443\u0443\u0434\u0430\u0434 \u043d\u044d\u043c\u044d\u0433\u0434\u0434\u044d\u0433; SMS\/Authenticator \u043f\u0440\u043e\u0433\u0440\u0430\u043c\u0443\u0443\u0434, WebAuthn.<\/td><\/tr><\/tbody><\/table><\/figure>\n\n\n\n<p class=\"wp-block-paragraph\">\u0417\u04e9\u0432\u0448\u04e9\u04e9\u0440\u04e9\u043b: \u0425\u044d\u0440\u044d\u0433\u043b\u044d\u0433\u0447 \u044e\u0443 \u0445\u0438\u0439\u0445\u0438\u0439\u0433 \u0437\u04e9\u0432\u0448\u04e9\u04e9\u0440\u04e9\u0445\u0438\u0439\u0433 \u0442\u043e\u0434\u043e\u0440\u0445\u043e\u0439\u043b\u043e\u0445 \u04af\u0439\u043b \u044f\u0432\u0446. \u0425\u044d\u0440\u044d\u0433\u043b\u044d\u0433\u0447 \u0411\u0430\u0442\u0430\u043b\u0433\u0430\u0430\u0436\u0443\u0443\u043b\u0430\u043b\u0442\u044b\u0433 \u0430\u043c\u0436\u0438\u043b\u0442\u0442\u0430\u0439 \u0434\u0430\u043c\u0436\u0443\u0443\u043b\u0441\u043d\u044b \u0434\u0430\u0440\u0430\u0430 \u0417\u04e9\u0432\u0448\u04e9\u04e9\u0440\u04e9\u043b \u043d\u044c \u0442\u04af\u04af\u043d\u0438\u0439 \u0437\u04e9\u0432\u0448\u04e9\u04e9\u0440\u043b\u0438\u0439\u0433, \u0442\u0443\u0445\u0430\u0439\u043b\u0431\u0430\u043b \u0442\u043e\u0434\u043e\u0440\u0445\u043e\u0439 \u0444\u0430\u0439\u043b \u044d\u0441\u0432\u044d\u043b \u043f\u0440\u043e\u0433\u0440\u0430\u043c\u044b\u043d \u0444\u0443\u043d\u043a\u0446\u044d\u0434 \u0445\u0430\u043d\u0434\u0430\u0445 \u044d\u0440\u0445\u0438\u0439\u0433 \u0442\u043e\u0434\u043e\u0440\u0445\u043e\u0439\u043b\u0434\u043e\u0433.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">\u0413\u043e\u043b \u044f\u043b\u0433\u0430\u0430<\/h3>\n\n\n\n<ul class=\"wp-block-list\">\n<li>\u0411\u0430\u0442\u0430\u043b\u0433\u0430\u0430\u0436\u0443\u0443\u043b\u0430\u043b\u0442: &#8220;\u0427\u0438 \u0445\u044d\u043d \u0431\u044d?&#8221; (\u0427\u0438 \u0445\u044d\u043d \u0431\u044d?)<\/li>\n\n\n\n<li>\u0417\u04e9\u0432\u0448\u04e9\u04e9\u0440\u04e9\u043b: &#8220;\u0422\u0430 \u044e\u0443 \u0445\u0438\u0439\u0445 \u044d\u0440\u0445\u0442\u044d\u0439 \u0432\u044d?&#8221; (\u0422\u0430 \u044e\u0443 \u0445\u0438\u0439\u0445\u0438\u0439\u0433 \u0437\u04e9\u0432\u0448\u04e9\u04e9\u0440\u0434\u04e9\u0433 \u0432\u044d?)<\/li>\n<\/ul>\n\n\n\n<p class=\"wp-block-paragraph\">\u0416\u0438\u0448\u044d\u044d:<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">\u0425\u044d\u0440\u044d\u0432 \u0442\u0430 \u0432\u044d\u0431 \u043f\u0440\u043e\u0433\u0440\u0430\u043c \u0440\u0443\u0443 \u0430\u043c\u0436\u0438\u043b\u0442\u0442\u0430\u0439 \u043d\u044d\u0432\u0442\u044d\u0440\u0441\u044d\u043d \u0431\u043e\u043b <code>username<\/code> \u0431\u043e\u043b\u043e\u043d <code>password<\/code>, \u044d\u043d\u044d \u0431\u043e\u043b \u0411\u0430\u0442\u0430\u043b\u0433\u0430\u0430\u0436\u0443\u0443\u043b\u0430\u043b\u0442 \u044e\u043c.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">\u0425\u044d\u0440\u044d\u0432 \u0442\u0430 \u043d\u044d\u0432\u0442\u044d\u0440\u0441\u043d\u0438\u0439 \u0434\u0430\u0440\u0430\u0430 \u0442\u043e\u0434\u043e\u0440\u0445\u043e\u0439 \u0445\u0443\u0443\u0434\u0441\u0443\u0443\u0434\u044b\u0433 \u043d\u044d\u044d\u0445, \u04e9\u0433\u04e9\u0433\u0434\u043b\u0438\u0439\u0433 \u0437\u0430\u0441\u0430\u0445, \u0431\u04af\u0440\u0442\u0433\u044d\u043b\u0438\u0439\u0433 \u0443\u0441\u0442\u0433\u0430\u0445 \u044d\u0440\u0445\u0442\u044d\u0439 \u0431\u043e\u043b \u04e9\u04e9\u0440\u0438\u0439\u043d \u04af\u04af\u0440\u0433\u0438\u0439\u043d \u0434\u0430\u0433\u0443\u0443 (<code>Admin<\/code>, <code>User<\/code>, <code>Manager<\/code>), \u044d\u043d\u044d \u0431\u043e\u043b \u0437\u04e9\u0432\u0448\u04e9\u04e9\u0440\u04e9\u043b \u044e\u043c.<\/p>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h1 class=\"wp-block-heading\">\u0426\u0443\u0433\u043b\u0443\u0443\u043b\u0433\u0430 \u0431\u0430 Big O (Java Collections Framework \u0431\u0430 \u0446\u0430\u0433\u0438\u0439\u043d \u043d\u0430\u0440\u0438\u0439\u043d \u0442\u04e9\u0432\u04e9\u0433\u0442\u044d\u0439 \u0431\u0430\u0439\u0434\u0430\u043b)<\/h1>\n\n\n\n<p class=\"wp-block-paragraph\">Java \u0446\u0443\u0433\u043b\u0443\u0443\u043b\u0433\u044b\u043d \u0445\u04af\u0440\u044d\u044d (JCF) \u043d\u044c \u043e\u0431\u044a\u0435\u043a\u0442\u0443\u0443\u0434\u044b\u043d \u0431\u04af\u043b\u0433\u0438\u0439\u0433 \u04af\u0440 \u0434\u04af\u043d\u0442\u044d\u0439 \u0443\u0434\u0438\u0440\u0434\u0430\u0445, \u0443\u0434\u0438\u0440\u0434\u0430\u0445 \u0431\u043e\u043b\u043e\u043c\u0436\u0438\u0439\u0433 \u043e\u043b\u0433\u043e\u0434\u043e\u0433 \u0438\u043d\u0442\u0435\u0440\u0444\u0435\u0439\u0441 \u0431\u0430 \u0430\u043d\u0433\u0438\u0443\u0434\u044b\u043d \u0431\u0430\u0433\u0446 \u044e\u043c.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">\u04ae\u04af\u043d\u0434 \u044f\u043d\u0437 \u0431\u04af\u0440\u0438\u0439\u043d \u04e9\u0433\u04e9\u0433\u0434\u043b\u0438\u0439\u043d \u0431\u04af\u0442\u044d\u0446 \u043e\u0440\u043d\u043e, \u0442\u0443\u0445\u0430\u0439\u043b\u0431\u0430\u043b:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>\u0416\u0430\u0433\u0441\u0430\u0430\u043b\u0442 &#8211; \u0422\u043e\u0434\u043e\u0440\u0445\u043e\u0439 \u0434\u0430\u0440\u0430\u0430\u043b\u043b\u0430\u0430\u0440 \u0437\u04af\u0439\u043b\u0441\u0438\u0439\u0433 \u0445\u0430\u0434\u0433\u0430\u043b\u0436, \u0434\u0430\u0432\u0445\u0430\u0440\u0434\u0441\u0430\u043d \u0437\u04af\u0439\u043b\u0441\u0438\u0439\u0433 \u0437\u04e9\u0432\u0448\u04e9\u04e9\u0440\u0434\u04e9\u0433 \u0446\u0443\u0433\u043b\u0443\u0443\u043b\u0433\u0430.<\/li>\n\n\n\n<li>Set &#8211; \u0414\u0430\u0432\u0445\u0430\u0440\u0434\u0441\u0430\u043d \u044d\u043b\u0435\u043c\u0435\u043d\u0442\u04af\u04af\u0434\u0438\u0439\u0433 \u0437\u04e9\u0432\u0448\u04e9\u04e9\u0440\u0434\u04e9\u0433\u0433\u04af\u0439 \u0446\u0443\u0433\u043b\u0443\u0443\u043b\u0433\u0430.<\/li>\n\n\n\n<li>\u0413\u0430\u0437\u0440\u044b\u043d \u0437\u0443\u0440\u0430\u0433 &#8211; \u04e9\u0433\u04e9\u0433\u0434\u043b\u0438\u0439\u0433 \u0445\u043e\u0441 \u0445\u044d\u043b\u0431\u044d\u0440\u044d\u044d\u0440 \u0445\u0430\u0434\u0433\u0430\u043b\u0434\u0430\u0433 \u0431\u04af\u0442\u044d\u0446 <code>key-value<\/code>. \u0411\u04af\u0433\u0434 <code>key<\/code> \u04e9\u0432\u04e9\u0440\u043c\u04e9\u0446 \u0431\u0430\u0439\u0445 \u0451\u0441\u0442\u043e\u0439.<\/li>\n\n\n\n<li>Queue \u2013 \u0437\u04af\u0439\u043b\u04af\u04af\u0434\u0438\u0439\u0433 \u0438\u0445\u044d\u0432\u0447\u043b\u044d\u043d \u043d\u044d\u043c\u0441\u044d\u043d \u0434\u0430\u0440\u0430\u0430\u043b\u043b\u0430\u0430\u0440 \u043d\u044c \u0431\u043e\u043b\u043e\u0432\u0441\u0440\u0443\u0443\u043b\u0434\u0430\u0433 \u0431\u04af\u0442\u044d\u0446 (FIFO \u2013 \u042d\u0445\u043b\u044d\u044d\u0434 \u043e\u0440\u0436, \u044d\u0445\u043b\u044d\u044d\u0434 \u0433\u0430\u0440\u0430\u0445).<\/li>\n\n\n\n<li>Deque &#8211; \u0425\u043e\u0451\u0440 \u0442\u04e9\u0433\u0441\u0433\u04e9\u043b\u0442\u044d\u0439 \u0434\u0430\u0440\u0430\u0430\u043b\u0430\u043b \u043d\u044c \u044d\u043b\u0435\u043c\u0435\u043d\u0442\u04af\u04af\u0434\u0438\u0439\u0433 \u0445\u043e\u0451\u0440 \u0442\u04e9\u0433\u0441\u0433\u04e9\u043b\u0434 \u043d\u044d\u043c\u0436, \u0445\u0430\u0441\u0430\u0445 \u0431\u043e\u043b\u043e\u043c\u0436\u0438\u0439\u0433 \u043e\u043b\u0433\u043e\u0434\u043e\u0433.<\/li>\n<\/ul>\n\n\n\n<p class=\"wp-block-paragraph\">\u0410\u043b\u0434\u0430\u0440\u0442\u0430\u0439 \u0445\u044d\u0440\u044d\u0433\u0436\u04af\u04af\u043b\u044d\u043b\u0442\u04af\u04af\u0434 \u043d\u044c <code>ArrayList<\/code>, <code>LinkedList<\/code>, <code>HashSet<\/code>, <code>TreeSet<\/code>, <code>HashMap<\/code>, <code>TreeMap<\/code>, <code>PriorityQueue<\/code> \u0431\u043e\u043b\u043e\u043d \u0431\u0443\u0441\u0430\u0434.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">1. Big O \u0442\u044d\u043c\u0434\u044d\u0433\u043b\u044d\u0433\u044d\u044d \u0433\u044d\u0436 \u044e\u0443 \u0432\u044d?<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">Big O \u0442\u044d\u043c\u0434\u044d\u0433\u043b\u044d\u0433\u044d\u044d \u043d\u044c \u0430\u043b\u0433\u043e\u0440\u0438\u0442\u043c\u044b\u043d \u0433\u04af\u0439\u0446\u044d\u0442\u0433\u044d\u043b\u0438\u0439\u043d \u0445\u0443\u0433\u0430\u0446\u0430\u0430 (\u0426\u0430\u0433 \u0445\u0443\u0433\u0430\u0446\u0430\u0430\u043d\u044b \u043d\u0430\u0440\u0438\u0439\u043d \u0442\u04e9\u0432\u04e9\u0433\u0442\u044d\u0439 \u0431\u0430\u0439\u0434\u0430\u043b) \u044d\u0441\u0432\u044d\u043b \u0430\u0448\u0438\u0433\u043b\u0430\u0441\u0430\u043d \u0441\u0430\u043d\u0430\u0445 \u043e\u0439 (\u041e\u0440\u043e\u043d \u0437\u0430\u0439\u043d \u043d\u0430\u0440\u0438\u0439\u043d \u0442\u04e9\u0432\u04e9\u0433\u0442\u044d\u0439 \u0431\u0430\u0439\u0434\u0430\u043b) \u043e\u0440\u043e\u043b\u0442\u044b\u043d \u04e9\u0433\u04e9\u0433\u0434\u043b\u0438\u0439\u043d \u0445\u044d\u043c\u0436\u044d\u044d (<code>n<\/code>).<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">\u04e8\u04e9\u0440\u04e9\u04e9\u0440 \u0445\u044d\u043b\u0431\u044d\u043b, Big O \u043d\u044c \u0446\u0443\u0433\u043b\u0443\u0443\u043b\u0433\u044b\u043d \u044d\u043b\u0435\u043c\u0435\u043d\u0442\u0438\u0439\u043d \u0442\u043e\u043e \u043d\u044d\u043c\u044d\u0433\u0434\u044d\u0445 \u0442\u0443\u0441\u0430\u043c \u04af\u0439\u043b\u0434\u043b\u0438\u0439\u043d \u0433\u04af\u0439\u0446\u044d\u0442\u0433\u044d\u043b \u0445\u044d\u0440\u0445\u044d\u043d \u04e9\u04e9\u0440\u0447\u043b\u04e9\u0433\u0434\u04e9\u0445\u0438\u0439\u0433 \u0445\u0430\u0440\u0443\u0443\u043b\u0434\u0430\u0433.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">\u0427\u0443\u0445\u0430\u043b: Big O \u043d\u044c \u0433\u04af\u0439\u0446\u044d\u0442\u0433\u044d\u043b\u0438\u0439\u043d \u0442\u043e\u0434\u043e\u0440\u0445\u043e\u0439 \u0445\u0443\u0433\u0430\u0446\u0430\u0430\u0433 \u0441\u0435\u043a\u0443\u043d\u0434\u044d\u044d\u0440 \u0445\u044d\u043c\u0436\u0434\u044d\u0433\u0433\u04af\u0439, \u0445\u0430\u0440\u0438\u043d \u0448\u0430\u0430\u0440\u0434\u043b\u0430\u0433\u0430\u0442\u0430\u0439 \u04af\u0439\u043b\u0434\u043b\u04af\u04af\u0434\u0438\u0439\u043d \u04e9\u0441\u04e9\u043b\u0442\u0438\u0439\u043d \u0445\u0443\u0440\u0434\u044b\u0433 \u0442\u043e\u0434\u043e\u0440\u0445\u043e\u0439\u043b\u0434\u043e\u0433.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">\u0425\u0430\u043c\u0433\u0438\u0439\u043d \u0442\u04af\u0433\u044d\u044d\u043c\u044d\u043b Big O \u043d\u0430\u0440\u0438\u0439\u043d \u0442\u04e9\u0432\u04e9\u0433\u0442\u044d\u0439 \u0431\u0430\u0439\u0434\u0430\u043b<\/h3>\n\n\n\n<figure class=\"wp-block-table\"><table class=\"has-fixed-layout\"><tbody><tr><th>\u041d\u0430\u0440\u0438\u0439\u043d \u0442\u04e9\u0432\u04e9\u0433\u0442\u044d\u0439 \u0431\u0430\u0439\u0434\u0430\u043b<\/th><th>\u0417\u043e\u0440\u0438\u0443\u043b\u0430\u043b\u0442<\/th><th>\u0422\u0430\u0439\u043b\u0431\u0430\u0440<\/th><\/tr><tr><td>O(1)<\/td><td>\u0422\u043e\u0433\u0442\u043c\u043e\u043b \u0446\u0430\u0433<\/td><td>\u0413\u04af\u0439\u0446\u044d\u0442\u0433\u044d\u0445 \u0445\u0443\u0433\u0430\u0446\u0430\u0430 \u043d\u044c \u044d\u043b\u0435\u043c\u0435\u043d\u0442\u0438\u0439\u043d \u0442\u043e\u043e\u043d\u043e\u043e\u0441 \u04af\u043b \u0445\u0430\u043c\u0430\u0430\u0440\u0430\u043d \u043e\u0439\u0440\u043e\u043b\u0446\u043e\u043e\u0433\u043e\u043e\u0440 \u0442\u043e\u0433\u0442\u043c\u043e\u043b \u0445\u044d\u0432\u044d\u044d\u0440 \u0431\u0430\u0439\u043d\u0430.<\/td><\/tr><tr><td>O(\u043b\u043e\u0433 n)<\/td><td>\u041b\u043e\u0433\u0430\u0440\u0438\u0444\u043c \u0446\u0430\u0433<\/td><td>\u0425\u0443\u0433\u0430\u0446\u0430\u0430 \u043b\u043e\u0433\u0430\u0440\u0438\u0444\u043c\u044b\u043d \u0434\u0430\u0433\u0443\u0443 \u043d\u044d\u043c\u044d\u0433\u0434\u0434\u044d\u0433. \u0410\u043b\u0445\u0430\u043c \u0431\u04af\u0440 \u0445\u0430\u0439\u043b\u0442\u044b\u043d \u0437\u0430\u0439\u0433 \u0445\u043e\u0451\u0440 \u0434\u0430\u0445\u0438\u043d \u0431\u0430\u0433\u0430\u0441\u0433\u0430\u0434\u0430\u0433.<\/td><\/tr><tr><td>O(n)<\/td><td>\u0428\u0443\u0433\u0430\u043c\u0430\u043d \u0446\u0430\u0433<\/td><td>\u0426\u0430\u0433 \u043d\u044c \u044d\u043b\u0435\u043c\u0435\u043d\u0442\u0438\u0439\u043d \u0442\u043e\u043e\u0442\u043e\u0439 \u043f\u0440\u043e\u043f\u043e\u0440\u0446\u0438\u043e\u043d\u0430\u043b\u044c \u043d\u044d\u043c\u044d\u0433\u0434\u0434\u044d\u0433.<\/td><\/tr><tr><td>O(n log n)<\/td><td>\u0428\u0443\u0433\u0430\u043c\u0430\u043d \u0446\u0430\u0433<\/td><td>\u042d\u043d\u044d \u043d\u044c \u0438\u0445\u044d\u0432\u0447\u043b\u044d\u043d \u04af\u0440 \u0434\u04af\u043d\u0442\u044d\u0439 \u044d\u0440\u044d\u043c\u0431\u044d\u043b\u044d\u0445 \u0430\u043b\u0433\u043e\u0440\u0438\u0442\u043c\u0443\u0443\u0434\u0430\u0430\u0441 \u043e\u043b\u0434\u0434\u043e\u0433.<\/td><\/tr><tr><td>O(n\u00b2)<\/td><td>\u041a\u0432\u0430\u0434\u0440\u0430\u0442 \u0446\u0430\u0433<\/td><td>\u042d\u043d\u044d \u043d\u044c \u0438\u0445\u044d\u0432\u0447\u043b\u044d\u043d \u0431\u04af\u0445 \u044d\u043b\u0435\u043c\u0435\u043d\u0442\u04af\u04af\u0434\u044d\u044d\u0440 \u0434\u0430\u043c\u0436\u0434\u0430\u0433 \u04af\u04af\u0440\u043b\u044d\u0441\u044d\u043d \u0433\u043e\u0433\u0446\u043e\u043e\u043d\u0434 \u0442\u043e\u0445\u0438\u043e\u043b\u0434\u0434\u043e\u0433.<\/td><\/tr><tr><td>O(2\u207f)<\/td><td>\u042d\u043a\u0441\u043f\u043e\u043d\u0435\u043d\u0446\u0438\u0430\u043b \u0445\u0443\u0433\u0430\u0446\u0430\u0430<\/td><td>\u041e\u0440\u043e\u043b\u0442\u044b\u043d \u04e9\u0433\u04e9\u0433\u0434\u04e9\u043b \u043d\u044d\u043c\u044d\u0433\u0434\u044d\u0445\u0438\u0439\u043d \u0445\u044d\u0440\u044d\u044d\u0440 \u0446\u0430\u0433 \u0445\u0443\u0433\u0430\u0446\u0430\u0430 \u044d\u043a\u0441\u043f\u043e\u043d\u0435\u043d\u0446\u0438\u0430\u043b\u0430\u0430\u0440 \u043d\u044d\u043c\u044d\u0433\u0434\u0434\u044d\u0433.<\/td><\/tr><\/tbody><\/table><\/figure>\n\n\n\n<figure class=\"wp-block-image size-full\"><a href=\"https:\/\/i0.wp.com\/vkrastev1blog.com\/wp-content\/uploads\/2026\/05\/image.png?ssl=1\"><img data-recalc-dims=\"1\" loading=\"lazy\" decoding=\"async\" width=\"965\" height=\"767\" data-attachment-id=\"3269\" data-permalink=\"https:\/\/vkrastev1blog.com\/2026\/05\/29\/questions-and-informations-prepairing-for-java-developer-job-interview\/image-50\/\" data-orig-file=\"https:\/\/i0.wp.com\/vkrastev1blog.com\/wp-content\/uploads\/2026\/05\/image.png?fit=965%2C767&amp;ssl=1\" data-orig-size=\"965,767\" data-comments-opened=\"1\" data-image-title=\"image\" data-image-description=\"\" data-image-caption=\"\" data-large-file=\"https:\/\/i0.wp.com\/vkrastev1blog.com\/wp-content\/uploads\/2026\/05\/image.png?fit=965%2C767&amp;ssl=1\" src=\"https:\/\/i0.wp.com\/vkrastev1blog.com\/wp-content\/uploads\/2026\/05\/image.png?resize=965%2C767&#038;ssl=1\" alt=\"\" class=\"wp-image-3269\" srcset=\"https:\/\/i0.wp.com\/vkrastev1blog.com\/wp-content\/uploads\/2026\/05\/image.png?w=965&amp;ssl=1 965w, https:\/\/i0.wp.com\/vkrastev1blog.com\/wp-content\/uploads\/2026\/05\/image.png?resize=300%2C238&amp;ssl=1 300w, https:\/\/i0.wp.com\/vkrastev1blog.com\/wp-content\/uploads\/2026\/05\/image.png?resize=768%2C610&amp;ssl=1 768w\" sizes=\"auto, (max-width: 965px) 100vw, 965px\" \/><\/a><\/figure>\n\n\n\n<p class=\"wp-block-paragraph\">\u04ae\u043d\u0434\u0441\u044d\u043d \u0434\u04af\u0440\u044d\u043c: Big O \u043d\u0430\u0440\u0438\u0439\u043d \u0442\u04e9\u0432\u04e9\u0433\u0442\u044d\u0439 \u0431\u0430\u0439\u0434\u0430\u043b \u0443\u0434\u0430\u0430\u043d \u04e9\u0441\u04e9\u0445 \u0442\u0443\u0441\u0430\u043c \u0430\u043b\u0433\u043e\u0440\u0438\u0442\u043c \u043d\u044c \u0438\u0445\u044d\u0432\u0447\u043b\u044d\u043d \u0442\u043e\u043c \u043e\u0440\u043e\u043b\u0442\u0443\u0443\u0434 \u0434\u044d\u044d\u0440 \u0438\u043b\u04af\u04af \u0441\u0430\u0439\u043d \u043c\u0430\u0441\u0448\u0442\u0430\u0431\u0442\u0430\u0439 \u0431\u0430\u0439\u0434\u0430\u0433.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">2. Java \u0446\u0443\u0433\u043b\u0443\u0443\u043b\u0433\u0443\u0443\u0434 \u0434\u0430\u0445\u044c \u043d\u0438\u0439\u0442\u043b\u044d\u0433 Big O \u0446\u043e\u0433\u0446\u043e\u043b\u0431\u043e\u0440\u0443\u0443\u0434<\/h2>\n\n\n\n<h3 class=\"wp-block-heading\">2.1. ArrayList<\/h3>\n\n\n\n<p class=\"wp-block-paragraph\"><code>ArrayList<\/code> -\u0438\u0439\u043d \u0445\u044d\u0440\u044d\u0433\u0436\u0438\u043b\u0442 \u044e\u043c <code>List<\/code> \u0438\u043d\u0442\u0435\u0440\u0444\u0435\u0439\u0441. \u042d\u043d\u044d \u043d\u044c \u0448\u0430\u0430\u0440\u0434\u043b\u0430\u0433\u0430\u0442\u0430\u0439 \u0431\u043e\u043b \u0445\u04af\u0447\u0438\u043d \u0447\u0430\u0434\u043b\u0430\u0430 \u0430\u0432\u0442\u043e\u043c\u0430\u0442\u0430\u0430\u0440 \u043d\u044d\u043c\u044d\u0433\u0434\u04af\u04af\u043b\u0434\u044d\u0433 \u0434\u0438\u043d\u0430\u043c\u0438\u043a \u043c\u0430\u0441\u0441\u0438\u0432 \u0430\u0448\u0438\u0433\u043b\u0430\u0434\u0430\u0433.<\/p>\n\n\n\n<figure class=\"wp-block-table\"><table class=\"has-fixed-layout\"><tbody><tr><th>\u04ae\u0439\u043b \u0430\u0436\u0438\u043b\u043b\u0430\u0433\u0430\u0430<\/th><th>\u0426\u0430\u0433 \u0445\u0443\u0433\u0430\u0446\u0430\u0430\u043d\u044b \u043d\u0430\u0440\u0438\u0439\u043d \u0442\u04e9\u0432\u04e9\u0433\u0442\u044d\u0439 \u0431\u0430\u0439\u0434\u0430\u043b<\/th><th>\u0422\u0430\u0439\u043b\u0431\u0430\u0440<\/th><\/tr><tr><td>\u0425\u0430\u043d\u0434\u0430\u043b\u0442 (<code>get(index)<\/code>)<\/td><td>O(1)<\/td><td>\u0418\u043d\u0434\u0435\u043a\u0441\u044d\u044d\u0440 \u0434\u0430\u043c\u0436\u0443\u0443\u043b\u0430\u043d \u044d\u043b\u0435\u043c\u0435\u043d\u0442 \u0440\u04af\u04af \u0448\u0443\u0443\u0434 \u0445\u0430\u043d\u0434\u0430\u0445.<\/td><\/tr><tr><td>\u0425\u0430\u0439\u0445 (<code>contains()<\/code>)<\/td><td>O(n)<\/td><td>\u0414\u0430\u0440\u0430\u0430\u043b\u0441\u0430\u043d \u044d\u043b\u0435\u043c\u0435\u043d\u0442 \u0445\u0430\u0439\u0445.<\/td><\/tr><tr><td>\u041e\u0440\u0443\u0443\u043b\u0430\u0445 (<code>add(element)<\/code>)<\/td><td>O(1) \u0445\u043e\u0440\u043e\u0433\u0434\u0443\u0443\u043b\u0441\u0430\u043d<\/td><td>\u0422\u04e9\u0433\u0441\u0433\u04e9\u043b\u0434 \u043d\u044c \u043d\u044d\u043c\u043d\u044d \u04af\u04af. \u0414\u043e\u0442\u043e\u043e\u0434 \u043c\u0430\u0441\u0441\u0438\u0432\u044b\u0433 \u043d\u044d\u043c\u044d\u0433\u0434\u04af\u04af\u043b\u044d\u0445 \u04af\u0435\u0434 \u04af\u0439\u043b\u0434\u044d\u043b \u043d\u044c O(n) \u0431\u0430\u0439\u0436 \u0431\u043e\u043b\u043d\u043e.<\/td><\/tr><tr><td>\u041e\u0440\u0443\u0443\u043b\u0430\u0445 (<code>add(index, element)<\/code>)<\/td><td>O(n)<\/td><td>\u0417\u0430\u0430\u0441\u0430\u043d \u0438\u043d\u0434\u0435\u043a\u0441\u0438\u0439\u043d \u0434\u0430\u0440\u0430\u0430\u0445 \u044d\u043b\u0435\u043c\u0435\u043d\u0442\u04af\u04af\u0434\u0438\u0439\u0433 \u0437\u04e9\u04e9\u0445 \u0448\u0430\u0430\u0440\u0434\u043b\u0430\u0433\u0430\u0442\u0430\u0439.<\/td><\/tr><tr><td>\u0423\u0441\u0442\u0433\u0430\u0445 (<code>remove(index)<\/code>)<\/td><td>O(n)<\/td><td>\u0423\u0441\u0442\u0433\u0430\u0441\u0430\u043d \u0438\u043d\u0434\u0435\u043a\u0441\u0438\u0439\u043d \u0434\u0430\u0440\u0430\u0430\u0445 \u044d\u043b\u0435\u043c\u0435\u043d\u0442\u04af\u04af\u0434\u0438\u0439\u0433 \u0437\u04e9\u04e9\u0445 \u0448\u0430\u0430\u0440\u0434\u043b\u0430\u0433\u0430\u0442\u0430\u0439.<\/td><\/tr><\/tbody><\/table><\/figure>\n\n\n\n<p class=\"wp-block-paragraph\">ArrayList-\u0433 \u0445\u044d\u0437\u044d\u044d \u0430\u0448\u0438\u0433\u043b\u0430\u0445 \u0432\u044d?<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>\u0411\u0438\u0434 \u0438\u043d\u0434\u0435\u043a\u0441\u044d\u044d\u0440 \u0434\u0430\u043c\u0436\u0443\u0443\u043b\u0430\u043d \u044d\u043b\u0435\u043c\u0435\u043d\u0442\u04af\u04af\u0434\u044d\u0434 \u0431\u0430\u0439\u043d\u0433\u0430 \u0445\u0430\u043d\u0434\u0430\u0445 \u04af\u0435\u0434.<\/li>\n\n\n\n<li>\u0411\u0438\u0434 \u0446\u0443\u0433\u043b\u0443\u0443\u043b\u0433\u044b\u043d \u0442\u04e9\u0433\u0441\u0433\u04e9\u043b\u0434 \u0433\u043e\u043b\u0447\u043b\u043e\u043d \u044d\u043b\u0435\u043c\u0435\u043d\u0442\u04af\u04af\u0434\u0438\u0439\u0433 \u043d\u044d\u043c\u044d\u0445 \u04af\u0435\u0434.<\/li>\n\n\n\n<li>\u0411\u0438\u0434\u044d\u043d\u0434 \u0445\u0443\u0440\u0434\u0430\u043d \u0445\u0430\u043d\u0434\u0430\u0445, \u0437\u04af\u0439\u043b\u0441\u0438\u0439\u0433 \u0434\u0430\u0440\u0430\u0430\u043b\u0430\u043d \u0431\u043e\u043b\u043e\u0432\u0441\u0440\u0443\u0443\u043b\u0430\u0445 \u0448\u0430\u0430\u0440\u0434\u043b\u0430\u0433\u0430\u0442\u0430\u0439 \u04af\u0435\u0434.<\/li>\n<\/ul>\n\n\n\n<h3 class=\"wp-block-heading\">2.2. HashMap<\/h3>\n\n\n\n<p class=\"wp-block-paragraph\"><code>HashMap<\/code> -\u0438\u0439\u043d \u0445\u044d\u0440\u044d\u0433\u0436\u0438\u043b\u0442 \u044e\u043c <code>Map<\/code> \u0438\u043d\u0442\u0435\u0440\u0444\u0435\u0439\u0441. \u042d\u043d\u044d \u043d\u044c \u04e9\u0433\u04e9\u0433\u0434\u043b\u0438\u0439\u0433 \u0445\u043e\u0441 \u0445\u044d\u043b\u0431\u044d\u0440\u044d\u044d\u0440 \u0445\u0430\u0434\u0433\u0430\u043b\u0434\u0430\u0433 <code>key-value<\/code> \u0443\u0442\u0433\u044b\u0433 \u0445\u0443\u0440\u0434\u0430\u043d \u043e\u043b\u043e\u0445\u044b\u043d \u0442\u0443\u043b\u0434 \u0445\u044d\u0448\u043b\u044d\u0445 \u043c\u0435\u0445\u0430\u043d\u0438\u0437\u043c\u044b\u0433 \u0430\u0448\u0438\u0433\u043b\u0430\u0434\u0430\u0433.<\/p>\n\n\n\n<figure class=\"wp-block-table\"><table class=\"has-fixed-layout\"><tbody><tr><th>\u04ae\u0439\u043b \u0430\u0436\u0438\u043b\u043b\u0430\u0433\u0430\u0430<\/th><th>\u0414\u0443\u043d\u0434\u0430\u0436 \u0445\u0443\u0433\u0430\u0446\u0430\u0430\u043d\u044b \u043d\u0430\u0440\u0438\u0439\u043d \u0442\u04e9\u0432\u04e9\u0433\u0442\u044d\u0439 \u0431\u0430\u0439\u0434\u0430\u043b<\/th><th>\u0425\u0430\u043c\u0433\u0438\u0439\u043d \u043c\u0443\u0443 \u0442\u043e\u0445\u0438\u043e\u043b\u0434\u043e\u043b<\/th><\/tr><tr><td>\u0425\u0430\u043d\u0434\u0430\u043b\u0442 (<code>get()<\/code>)<\/td><td>O(1)<\/td><td>O(n)*<\/td><\/tr><tr><td>\u0425\u0430\u0439\u0445 (<code>containsKey()<\/code>)<\/td><td>O(1)<\/td><td>O(n)*<\/td><\/tr><tr><td>\u041e\u0440\u0443\u0443\u043b\u0430\u0445 (<code>put()<\/code>)<\/td><td>O(1)<\/td><td>O(n)*<\/td><\/tr><tr><td>\u0423\u0441\u0442\u0433\u0430\u0445 (<code>remove()<\/code>)<\/td><td>O(1)<\/td><td>O(n)*<\/td><\/tr><\/tbody><\/table><\/figure>\n\n\n\n<p class=\"wp-block-paragraph\">\u0422\u0430\u0439\u043b\u0431\u0430\u0440: \u0425\u044d\u0448 \u043c\u04e9\u0440\u0433\u04e9\u043b\u0434\u04e9\u04e9\u043d \u043e\u043b\u043e\u043d \u0431\u0430\u0439\u0432\u0430\u043b \u0433\u04af\u0439\u0446\u044d\u0442\u0433\u044d\u043b \u043c\u0443\u0443\u0434\u0430\u0436 \u0431\u043e\u043b\u0437\u043e\u0448\u0433\u04af\u0439. \u041e\u0440\u0447\u0438\u043d \u04af\u0435\u0438\u0439\u043d Java-\u0438\u0439\u043d \u0445\u044d\u0440\u044d\u0433\u0436\u0438\u043b\u0442\u044d\u0434 <code>HashMap<\/code> \u0417\u0430\u0440\u0438\u043c \u043c\u04e9\u0440\u0433\u04e9\u043b\u0434\u04e9\u04e9\u043d \u0438\u0445\u0442\u044d\u0439 \u0445\u0443\u0432\u0438\u043d\u0443\u0443\u0434\u044b\u0433 \u0442\u044d\u043d\u0446\u0432\u044d\u0440\u0442\u044d\u0439 \u043c\u043e\u0434 \u0431\u043e\u043b\u0433\u043e\u043d \u0445\u0443\u0432\u0438\u0440\u0433\u0430\u0445 \u0431\u043e\u043b\u043e\u043c\u0436\u0442\u043e\u0439 \u0431\u04e9\u0433\u04e9\u04e9\u0434 \u044d\u043d\u044d \u043d\u044c \u0442\u043e\u0434\u043e\u0440\u0445\u043e\u0439 \u043d\u04e9\u0445\u0446\u04e9\u043b\u0434 \u0442\u043e\u0445\u0438\u0440\u043e\u0445 \u0448\u0430\u043d\u0430\u0433\u0430 \u0434\u0430\u0445\u044c \u04af\u0439\u043b \u0430\u0436\u0438\u043b\u043b\u0430\u0433\u0430\u0430\u043d\u044b \u0445\u0430\u043c\u0433\u0438\u0439\u043d \u043c\u0443\u0443 \u0442\u043e\u0445\u0438\u043e\u043b\u0434\u043b\u044b\u043d \u043d\u0430\u0440\u0438\u0439\u043d \u0442\u04e9\u0432\u04e9\u0433\u0442\u044d\u0439 \u0431\u0430\u0439\u0434\u043b\u044b\u0433 O(log n) \u0431\u043e\u043b\u0433\u043e\u043d \u0441\u0430\u0439\u0436\u0440\u0443\u0443\u043b\u0434\u0430\u0433.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">\u0413\u043e\u043b \u043e\u043d\u0446\u043b\u043e\u0433\u0443\u0443\u0434:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>\u042d\u0434 \u0437\u04af\u0439\u043b\u0441\u0438\u0439\u043d \u0434\u0430\u0440\u0430\u0430\u043b\u043b\u044b\u0433 \u0431\u0430\u0442\u0430\u043b\u0433\u0430\u0430\u0436\u0443\u0443\u043b\u0430\u0445\u0433\u04af\u0439.<\/li>\n\n\n\n<li>\u041d\u044d\u0433\u0438\u0439\u0433 \u0437\u04e9\u0432\u0448\u04e9\u04e9\u0440\u0434\u04e9\u0433 <code>null<\/code> \u0442\u04af\u043b\u0445\u04af\u04af\u0440.<\/li>\n\n\n\n<li>\u041e\u043b\u043e\u043d \u0442\u043e\u043e\u0433 \u0437\u04e9\u0432\u0448\u04e9\u04e9\u0440\u0434\u04e9\u0433 <code>null<\/code> \u04af\u043d\u044d\u0442 \u0437\u04af\u0439\u043b\u0441.<\/li>\n\n\n\n<li>\u042d\u043d\u044d \u043d\u044c \u043e\u043b\u043e\u043d \u0443\u0440\u0441\u0433\u0430\u043b\u0442\u0430\u0439 \u0437\u044d\u0440\u044d\u0433\u0446\u044d\u043d \u043d\u044d\u0432\u0442\u0440\u044d\u0445, \u04e9\u04e9\u0440\u0447\u043b\u04e9\u0445\u04e9\u0434 \u0430\u044e\u0443\u043b\u0433\u04af\u0439 \u0431\u0438\u0448 \u044e\u043c.<\/li>\n<\/ul>\n\n\n\n<p class=\"wp-block-paragraph\">\u0425\u044d\u0437\u044d\u044d HashMap \u0430\u0448\u0438\u0433\u043b\u0430\u0445 \u0432\u044d?<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>\u0411\u0438\u0434 \u0445\u0443\u0440\u0434\u0430\u043d \u0443\u0442\u0433\u044b\u0433 \u043e\u043b\u043e\u0445 \u0445\u044d\u0440\u044d\u0433\u0442\u044d\u0439 \u04af\u0435\u0434 <code>key<\/code>.<\/li>\n\n\n\n<li>\u0411\u0438\u0434 \u04e9\u0433\u04e9\u0433\u0434\u043b\u0438\u0439\u0433 \u0444\u043e\u0440\u043c\u0430\u0442\u0430\u0430\u0440 \u0445\u0430\u0434\u0433\u0430\u043b\u0430\u0445 \u04af\u0435\u0434 <code>key-value<\/code>.<\/li>\n\n\n\n<li>\u042d\u043b\u0435\u043c\u0435\u043d\u0442\u04af\u04af\u0434\u0438\u0439\u043d \u0434\u0430\u0440\u0430\u0430\u043b\u0430\u043b \u0445\u0430\u043c\u0430\u0430\u0433\u04af\u0439 \u04af\u0435\u0434.<\/li>\n<\/ul>\n\n\n\n<h3 class=\"wp-block-heading\">2.3. TreeMap<\/h3>\n\n\n\n<p class=\"wp-block-paragraph\"><code>TreeMap<\/code> -\u0438\u0439\u043d \u0445\u044d\u0440\u044d\u0433\u0436\u0438\u043b\u0442 \u044e\u043c <code>NavigableMap<\/code> \u0438\u043d\u0442\u0435\u0440\u0444\u044d\u0439\u0441 \u0431\u043e\u043b\u043e\u043d \u04e9\u04e9\u0440\u0438\u0439\u043d \u043e\u0440\u0443\u0443\u043b\u0433\u0443\u0443\u0434\u044b\u0433 \u0431\u0430\u0439\u0433\u0430\u043b\u0438\u0439\u043d \u0434\u0430\u0440\u0430\u0430\u043b\u043b\u0430\u0430\u0440 \u043d\u044c \u0430\u043d\u0433\u0438\u043b\u0436 \u0445\u0430\u0434\u0433\u0430\u043b\u0434\u0430\u0433 <code>keys<\/code> \u044d\u0441\u0432\u044d\u043b \u0431\u0430\u0433\u0446\u0430\u0430\u0440 <code>Comparator<\/code>.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">\u042d\u043d\u044d \u043d\u044c \u0434\u043e\u0442\u043e\u043e\u0434\u0434\u043e\u043e Red-Black Tree \u0431\u0443\u044e\u0443 \u04e9\u04e9\u0440\u0438\u0439\u0433\u04e9\u04e9 \u0442\u044d\u043d\u0446\u0432\u044d\u0440\u0436\u04af\u04af\u043b\u0434\u044d\u0433 \u0445\u043e\u0451\u0440\u0442\u044b\u043d \u0445\u0430\u0439\u043b\u0442\u044b\u043d \u043c\u043e\u0434\u044b\u0433 \u0430\u0448\u0438\u0433\u043b\u0430\u0434\u0430\u0433.<\/p>\n\n\n\n<figure class=\"wp-block-table\"><table class=\"has-fixed-layout\"><tbody><tr><th>\u04ae\u0439\u043b \u0430\u0436\u0438\u043b\u043b\u0430\u0433\u0430\u0430<\/th><th>\u0426\u0430\u0433 \u0445\u0443\u0433\u0430\u0446\u0430\u0430\u043d\u044b \u043d\u0430\u0440\u0438\u0439\u043d \u0442\u04e9\u0432\u04e9\u0433\u0442\u044d\u0439 \u0431\u0430\u0439\u0434\u0430\u043b<\/th><\/tr><tr><td>\u0425\u0430\u043d\u0434\u0430\u043b\u0442 (<code>get()<\/code>)<\/td><td>O(\u043b\u043e\u0433 n)<\/td><\/tr><tr><td>\u0425\u0430\u0439\u0445 (<code>containsKey()<\/code>)<\/td><td>O(\u043b\u043e\u0433 n)<\/td><\/tr><tr><td>\u041e\u0440\u0443\u0443\u043b\u0430\u0445 (<code>put()<\/code>)<\/td><td>O(\u043b\u043e\u0433 n)<\/td><\/tr><tr><td>\u0423\u0441\u0442\u0433\u0430\u0445 (<code>remove()<\/code>)<\/td><td>O(\u043b\u043e\u0433 n)<\/td><\/tr><\/tbody><\/table><\/figure>\n\n\n\n<p class=\"wp-block-paragraph\">\u0413\u043e\u043b \u043e\u043d\u0446\u043b\u043e\u0433\u0443\u0443\u0434:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>-\u044b\u043d \u044d\u0440\u044d\u043c\u0431\u044d\u043b\u0441\u044d\u043d \u0434\u0430\u0440\u0430\u0430\u043b\u043b\u044b\u0433 \u0434\u044d\u043c\u0436\u0434\u044d\u0433 <code>keys<\/code>.<\/li>\n\n\n\n<li>\u042d\u043d\u044d \u043d\u044c \u0437\u04e9\u0432\u0448\u04e9\u04e9\u0440\u04e9\u0445\u0433\u04af\u0439 <code>null<\/code> \u0431\u0430\u0439\u0433\u0430\u043b\u0438\u0439\u043d \u0430\u043d\u0433\u0438\u043b\u043b\u044b\u043d \u0442\u04af\u043b\u0445\u04af\u04af\u0440\u04af\u04af\u0434.<\/li>\n\n\n\n<li>\u0417\u04e9\u0432\u0448\u04e9\u04e9\u0440\u043d\u04e9 <code>null<\/code> \u04af\u043d\u044d\u0442 \u0437\u04af\u0439\u043b\u0441.<\/li>\n\n\n\n<li>\u0433\u044d\u0445 \u043c\u044d\u0442 \u0430\u0440\u0433\u0443\u0443\u0434\u044b\u0433 \u04e9\u0433\u0434\u04e9\u0433 <code>firstKey()<\/code>, <code>lastKey()<\/code>, <code>higherKey()<\/code> \u0431\u043e\u043b\u043e\u043d <code>lowerKey()<\/code>.<\/li>\n<\/ul>\n\n\n\n<p class=\"wp-block-paragraph\">TreeMap-\u0438\u0439\u0433 \u0445\u044d\u0437\u044d\u044d \u0430\u0448\u0438\u0433\u043b\u0430\u0445 \u0432\u044d?<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>\u04e8\u0433\u04e9\u0433\u0434\u043b\u0438\u0439\u0433 \u0430\u0432\u0442\u043e\u043c\u0430\u0442\u0430\u0430\u0440 \u044d\u0440\u044d\u043c\u0431\u044d\u043b\u044d\u0445 \u0448\u0430\u0430\u0440\u0434\u043b\u0430\u0433\u0430\u0442\u0430\u0439 \u04af\u0435\u0434.<\/li>\n\n\n\n<li>\u0411\u0438\u0434 \u0445\u0430\u043c\u0433\u0438\u0439\u043d \u043e\u0439\u0440\u044b\u043d \u04af\u043d\u044d \u0446\u044d\u043d\u0438\u0439\u0433 \u0445\u0430\u0439\u0445 \u0445\u044d\u0440\u044d\u0433\u0442\u044d\u0439 \u0431\u043e\u043b\u0441\u043e\u043d \u04af\u0435\u0434 <code>key<\/code>.<\/li>\n\n\n\n<li>\u0422\u04af\u043b\u0445\u04af\u04af\u0440\u04af\u04af\u0434\u0438\u0439\u043d \u043c\u0443\u0436\u0442\u0430\u0439 \u0430\u0436\u0438\u043b\u043b\u0430\u0445 \u04af\u0439\u043b\u0434\u043b\u04af\u04af\u0434\u0438\u0439\u0433 \u0430\u0448\u0438\u0433\u043b\u0430\u0445 \u04af\u0435\u0434 (Range Queries).<\/li>\n<\/ul>\n\n\n\n<h3 class=\"wp-block-heading\">2.4. HashSet<\/h3>\n\n\n\n<p class=\"wp-block-paragraph\"><code>HashSet<\/code> -\u0438\u0439\u043d \u0445\u044d\u0440\u044d\u0433\u0436\u0438\u043b\u0442 \u044e\u043c <code>Set<\/code> \u0438\u043d\u0442\u0435\u0440\u0444\u044d\u0439\u0441 \u0431\u043e\u043b\u043e\u043d \u0434\u043e\u0442\u043e\u043e\u0434\u0434\u043e\u043e \u0430\u0448\u0438\u0433\u043b\u0430\u0434\u0430\u0433 <code>HashMap<\/code> \u044d\u0434 \u0437\u04af\u0439\u043b\u0441\u044d\u044d \u0445\u0430\u0434\u0433\u0430\u043b\u0430\u0445.<\/p>\n\n\n\n<figure class=\"wp-block-table\"><table class=\"has-fixed-layout\"><tbody><tr><th>\u04ae\u0439\u043b \u0430\u0436\u0438\u043b\u043b\u0430\u0433\u0430\u0430<\/th><th>\u0414\u0443\u043d\u0434\u0430\u0436 \u0445\u0443\u0433\u0430\u0446\u0430\u0430\u043d\u044b \u043d\u0430\u0440\u0438\u0439\u043d \u0442\u04e9\u0432\u04e9\u0433\u0442\u044d\u0439 \u0431\u0430\u0439\u0434\u0430\u043b<\/th><th>\u0425\u0430\u043c\u0433\u0438\u0439\u043d \u043c\u0443\u0443 \u0442\u043e\u0445\u0438\u043e\u043b\u0434\u043e\u043b<\/th><\/tr><tr><td>\u041d\u044d\u043c\u044d\u0445 (<code>add()<\/code>)<\/td><td>O(1)<\/td><td>O(n)*<\/td><\/tr><tr><td>\u0423\u0441\u0442\u0433\u0430\u0445 (<code>remove()<\/code>)<\/td><td>O(1)<\/td><td>O(n)*<\/td><\/tr><tr><td>\u0425\u0430\u0439\u0445 (<code>contains()<\/code>)<\/td><td>O(1)<\/td><td>O(n)*<\/td><\/tr><\/tbody><\/table><\/figure>\n\n\n\n<p class=\"wp-block-paragraph\">\u04ae\u04af\u043d\u0442\u044d\u0439 \u0442\u04e9\u0441\u0442\u044d\u0439 <code>HashMap<\/code>, \u0445\u044d\u0448 \u043c\u04e9\u0440\u0433\u04e9\u043b\u0434\u04e9\u04e9\u043d\u0442\u044d\u0439 \u0431\u043e\u043b \u0433\u04af\u0439\u0446\u044d\u0442\u0433\u044d\u043b \u043c\u0443\u0443\u0434\u0430\u0436, \u043e\u0440\u0447\u0438\u043d \u04af\u0435\u0438\u0439\u043d \u0445\u044d\u0440\u044d\u0433\u0436\u04af\u04af\u043b\u044d\u043b\u0442 \u043d\u044c \u0442\u043e\u0434\u043e\u0440\u0445\u043e\u0439 \u043d\u04e9\u0445\u0446\u04e9\u043b\u0434 \u043c\u043e\u0434\u043d\u044b \u0441\u0430\u0432\u044b\u0433 \u0430\u0448\u0438\u0433\u043b\u0430\u0434\u0430\u0433.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">\u0413\u043e\u043b \u043e\u043d\u0446\u043b\u043e\u0433\u0443\u0443\u0434:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>\u0414\u0430\u0432\u0445\u0430\u0440\u0434\u0441\u0430\u043d \u0437\u04af\u0439\u043b\u0441\u0438\u0439\u0433 \u0437\u04e9\u0432\u0448\u04e9\u04e9\u0440\u04e9\u0445\u0433\u04af\u0439.<\/li>\n\n\n\n<li>\u042d\u0434 \u0437\u04af\u0439\u043b\u0441\u0438\u0439\u043d \u0434\u0430\u0440\u0430\u0430\u043b\u043b\u044b\u0433 \u0431\u0430\u0442\u0430\u043b\u0433\u0430\u0430\u0436\u0443\u0443\u043b\u0430\u0445\u0433\u04af\u0439.<\/li>\n\n\n\n<li>\u041d\u044d\u0433\u0438\u0439\u0433 \u0437\u04e9\u0432\u0448\u04e9\u04e9\u0440\u0434\u04e9\u0433 <code>null<\/code> \u044d\u043b\u0435\u043c\u0435\u043d\u0442.<\/li>\n\n\n\n<li>\u0425\u044d\u0440\u044d\u0433\u043b\u044d\u044d <code>hashCode()<\/code> \u0431\u043e\u043b\u043e\u043d <code>equals()<\/code> \u043e\u0431\u044a\u0435\u043a\u0442\u0443\u0443\u0434\u044b\u043d \u04e9\u0432\u04e9\u0440\u043c\u04e9\u0446 \u0431\u0430\u0439\u0434\u043b\u044b\u0433 \u0442\u043e\u0434\u043e\u0440\u0445\u043e\u0439\u043b\u043e\u0445.<\/li>\n<\/ul>\n\n\n\n<p class=\"wp-block-paragraph\">HashSet-\u0438\u0439\u0433 \u0445\u044d\u0437\u044d\u044d \u0430\u0448\u0438\u0433\u043b\u0430\u0445 \u0432\u044d?<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>\u0411\u0438\u0434 \u0437\u04e9\u0432\u0445\u04e9\u043d \u04e9\u0432\u04e9\u0440\u043c\u04e9\u0446 \u044d\u043b\u0435\u043c\u0435\u043d\u0442\u04af\u04af\u0434\u0438\u0439\u0433 \u0445\u0430\u0434\u0433\u0430\u043b\u0430\u0445 \u0448\u0430\u0430\u0440\u0434\u043b\u0430\u0433\u0430\u0442\u0430\u0439 \u04af\u0435\u0434.<\/li>\n\n\n\n<li>\u0411\u0438\u0434 \u044d\u043b\u0435\u043c\u0435\u043d\u0442 \u0431\u0430\u0439\u0433\u0430\u0430 \u044d\u0441\u044d\u0445\u0438\u0439\u0433 \u0445\u0443\u0440\u0434\u0430\u043d \u0448\u0430\u043b\u0433\u0430\u0445\u044b\u0433 \u0445\u04af\u0441\u0441\u044d\u043d \u04af\u0435\u0434.<\/li>\n\n\n\n<li>\u042d\u043b\u0435\u043c\u0435\u043d\u0442\u04af\u04af\u0434\u0438\u0439\u043d \u0434\u0430\u0440\u0430\u0430\u043b\u0430\u043b \u0445\u0430\u043c\u0430\u0430\u0433\u04af\u0439 \u04af\u0435\u0434.<\/li>\n<\/ul>\n\n\n\n<h2 class=\"wp-block-heading\">3. \u041d\u044d\u043c\u044d\u043b\u0442 \u0447\u0443\u0445\u0430\u043b Java \u0446\u0443\u0433\u043b\u0443\u0443\u043b\u0433\u0443\u0443\u0434<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">Java \u0445\u04e9\u0433\u0436\u04af\u04af\u043b\u044d\u0433\u0447\u0442\u044d\u0439 \u044f\u0440\u0438\u043b\u0446\u043b\u0430\u0433\u0430 \u0445\u0438\u0439\u0445\u0434\u044d\u044d \u0434\u0430\u0440\u0430\u0430\u0445 \u0445\u044d\u0440\u044d\u0433\u0436\u0438\u043b\u0442\u0438\u0439\u0433 \u043c\u044d\u0434\u044d\u0445 \u043d\u044c \u0431\u0430\u0441 \u0445\u044d\u0440\u044d\u0433\u0442\u044d\u0439.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">3.1. LinkedList<\/h3>\n\n\n\n<p class=\"wp-block-paragraph\"><code>LinkedList<\/code> \u043e\u0439\u043b\u0433\u043e\u0441\u043e\u043d <code>List<\/code> \u0431\u043e\u043b\u043e\u043d <code>Deque<\/code> \u0438\u043d\u0442\u0435\u0440\u0444\u044d\u0439\u0441\u04af\u04af\u0434. \u0414\u043e\u0442\u043e\u043e\u0434\u0434\u043e\u043e \u044d\u043d\u044d \u043d\u044c \u0414\u0430\u0432\u0445\u0430\u0440 \u0445\u043e\u043b\u0431\u043e\u0441\u043e\u043d \u0436\u0430\u0433\u0441\u0430\u0430\u043b\u0442\u044b\u0433 \u0430\u0448\u0438\u0433\u043b\u0430\u0434\u0430\u0433 \u0431\u04e9\u0433\u04e9\u04e9\u0434 \u0437\u0430\u043d\u0433\u0438\u043b\u0430\u0430 \u0431\u04af\u0440 \u043d\u044c \u04e9\u043c\u043d\u04e9\u0445 \u0431\u043e\u043b\u043e\u043d \u0434\u0430\u0440\u0430\u0430\u0433\u0438\u0439\u043d \u0437\u0430\u043d\u0433\u0438\u043b\u0430\u0430\u043d\u044b \u043b\u0430\u0432\u043b\u0430\u0433\u0430\u0430\u0433 \u0430\u0433\u0443\u0443\u043b\u0434\u0430\u0433.<\/p>\n\n\n\n<figure class=\"wp-block-table\"><table class=\"has-fixed-layout\"><tbody><tr><th>\u04ae\u0439\u043b \u0430\u0436\u0438\u043b\u043b\u0430\u0433\u0430\u0430<\/th><th>\u0426\u0430\u0433 \u0445\u0443\u0433\u0430\u0446\u0430\u0430\u043d\u044b \u043d\u0430\u0440\u0438\u0439\u043d \u0442\u04e9\u0432\u04e9\u0433\u0442\u044d\u0439 \u0431\u0430\u0439\u0434\u0430\u043b<\/th><\/tr><tr><td>\u0425\u0430\u043d\u0434\u0430\u043b\u0442 (<code>get(index)<\/code>)<\/td><td>O(n)<\/td><\/tr><tr><td>\u0425\u0430\u0439\u0445 (<code>contains()<\/code>)<\/td><td>O(n)<\/td><\/tr><tr><td>\u042d\u0445\u044d\u043d\u0434 \u043d\u044d\u043c\u044d\u0445 (<code>addFirst()<\/code>)<\/td><td>O(1)<\/td><\/tr><tr><td>\u0422\u04e9\u0433\u0441\u0433\u04e9\u043b\u0434 \u043d\u044c \u043d\u044d\u043c\u044d\u0445 (<code>addLast()<\/code>)<\/td><td>O(1)<\/td><\/tr><tr><td>\u042d\u0445\u043b\u044d\u044d\u0434 \u0443\u0441\u0442\u0433\u0430\u0445 (<code>removeFirst()<\/code>)<\/td><td>O(1)<\/td><\/tr><tr><td>\u0421\u04af\u04af\u043b\u0438\u0439\u0433 \u0430\u0440\u0438\u043b\u0433\u0430\u0445 (<code>removeLast()<\/code>)<\/td><td>O(1)<\/td><\/tr><tr><td>\u0414\u0443\u0440\u044b\u043d \u0438\u043d\u0434\u0435\u043a\u0441 \u0434\u044d\u044d\u0440 \u043e\u0440\u0443\u0443\u043b\u0430\u0445\/\u0445\u0430\u0441\u0430\u0445<\/td><td>O(n)<\/td><\/tr><\/tbody><\/table><\/figure>\n\n\n\n<p class=\"wp-block-paragraph\">\u0427\u0443\u0445\u0430\u043b: <code>LinkedList<\/code> -\u0430\u0430\u0441 \u0430\u0432\u0442\u043e\u043c\u0430\u0442\u0430\u0430\u0440 \u0445\u0443\u0440\u0434\u0430\u043d \u0431\u0438\u0448 \u044e\u043c <code>ArrayList<\/code> \u043e\u0440\u0443\u0443\u043b\u0430\u0445, \u0437\u0430\u0439\u043b\u0443\u0443\u043b\u0430\u0445 \u04af\u0435\u0434. \u0425\u044d\u0440\u044d\u0432 \u0431\u0438\u0434 \u044d\u0445\u043b\u044d\u044d\u0434 \u0438\u043d\u0434\u0435\u043a\u0441\u0438\u0439\u043d \u0431\u0430\u0439\u0440\u043b\u0430\u043b\u044b\u0433 \u043e\u043b\u043e\u0445 \u0448\u0430\u0430\u0440\u0434\u043b\u0430\u0433\u0430\u0442\u0430\u0439 \u0431\u043e\u043b \u044d\u043d\u044d \u043d\u044c O(n) \u04af\u0439\u043b\u0434\u043b\u0438\u0439\u0433 \u0445\u0438\u0439\u0445 \u0431\u043e\u043b\u043d\u043e.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">3.2. \u041c\u043e\u0434\u043d\u044b \u0431\u0430\u0433\u0446<\/h3>\n\n\n\n<p class=\"wp-block-paragraph\"><code>TreeSet<\/code> -\u0438\u0439\u043d \u0445\u044d\u0440\u044d\u0433\u0436\u0438\u043b\u0442 \u044e\u043c <code>NavigableSet<\/code> \u043c\u04e9\u043d \u0434\u043e\u0442\u043e\u043e\u0434\u0434\u043e\u043e \u0430\u0448\u0438\u0433\u043b\u0430\u0445 <code>TreeMap<\/code> (\u0423\u043b\u0430\u0430\u043d \u0445\u0430\u0440 \u043c\u043e\u0434).<\/p>\n\n\n\n<figure class=\"wp-block-table\"><table class=\"has-fixed-layout\"><tbody><tr><th>\u04ae\u0439\u043b \u0430\u0436\u0438\u043b\u043b\u0430\u0433\u0430\u0430<\/th><th>\u0426\u0430\u0433 \u0445\u0443\u0433\u0430\u0446\u0430\u0430\u043d\u044b \u043d\u0430\u0440\u0438\u0439\u043d \u0442\u04e9\u0432\u04e9\u0433\u0442\u044d\u0439 \u0431\u0430\u0439\u0434\u0430\u043b<\/th><\/tr><tr><td>\u041d\u044d\u043c\u044d\u0445 (<code>add()<\/code>)<\/td><td>O(\u043b\u043e\u0433 n)<\/td><\/tr><tr><td>\u0423\u0441\u0442\u0433\u0430\u0445 (<code>remove()<\/code>)<\/td><td>O(\u043b\u043e\u0433 n)<\/td><\/tr><tr><td>\u0425\u0430\u0439\u0445 (<code>contains()<\/code>)<\/td><td>O(\u043b\u043e\u0433 n)<\/td><\/tr><\/tbody><\/table><\/figure>\n\n\n\n<p class=\"wp-block-paragraph\">\u0413\u043e\u043b \u043e\u043d\u0446\u043b\u043e\u0433\u0443\u0443\u0434:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>\u0414\u0430\u0432\u0445\u0430\u0440\u0434\u0441\u0430\u043d \u0437\u04af\u0439\u043b\u0441\u0438\u0439\u0433 \u0437\u04e9\u0432\u0448\u04e9\u04e9\u0440\u04e9\u0445\u0433\u04af\u0439.<\/li>\n\n\n\n<li>\u0410\u0432\u0442\u043e\u043c\u0430\u0442\u0430\u0430\u0440 \u044d\u0440\u044d\u043c\u0431\u044d\u043b\u044d\u0433\u0434\u0441\u044d\u043d \u0434\u0430\u0440\u0430\u0430\u043b\u043b\u044b\u0433 \u0434\u044d\u043c\u0436\u0434\u044d\u0433.<\/li>\n\n\n\n<li>\u042d\u043d\u044d \u043d\u044c \u0437\u04e9\u0432\u0448\u04e9\u04e9\u0440\u04e9\u0445\u0433\u04af\u0439 <code>null<\/code> \u0431\u0430\u0439\u0433\u0430\u043b\u0438\u0439\u043d \u0430\u043d\u0433\u0438\u043b\u043b\u0430\u0430\u0440.<\/li>\n<\/ul>\n\n\n\n<h3 class=\"wp-block-heading\">3.3. PriorityQueue<\/h3>\n\n\n\n<p class=\"wp-block-paragraph\"><code>PriorityQueue<\/code> \u043e\u0439\u043b\u0433\u043e\u0441\u043e\u043d <code>Queue<\/code> \u0438\u043d\u0442\u0435\u0440\u0444\u044d\u0439\u0441\u0442\u044d\u0439 \u0431\u04e9\u0433\u04e9\u04e9\u0434 \u0434\u043e\u0442\u043e\u043e\u0434\u0434\u043e\u043e Binary Heap \u0430\u0448\u0438\u0433\u043b\u0430\u0434\u0430\u0433.<\/p>\n\n\n\n<figure class=\"wp-block-table\"><table class=\"has-fixed-layout\"><tbody><tr><th>\u04ae\u0439\u043b \u0430\u0436\u0438\u043b\u043b\u0430\u0433\u0430\u0430<\/th><th>\u0426\u0430\u0433 \u0445\u0443\u0433\u0430\u0446\u0430\u0430\u043d\u044b \u043d\u0430\u0440\u0438\u0439\u043d \u0442\u04e9\u0432\u04e9\u0433\u0442\u044d\u0439 \u0431\u0430\u0439\u0434\u0430\u043b<\/th><\/tr><tr><td>\u041d\u044d\u043c\u044d\u0445 (<code>offer()<\/code>)<\/td><td>O(\u043b\u043e\u0433 n)<\/td><\/tr><tr><td>\u0422\u043e\u043b\u0433\u043e\u0439\u0433 \u043d\u044c \u0441\u0430\u043b\u0433\u0430\u0445 (<code>poll()<\/code>)<\/td><td>O(\u043b\u043e\u0433 n)<\/td><\/tr><tr><td>\u0442\u043e\u043b\u0433\u043e\u0439 \u0443\u043d\u0448\u0438\u0445 (<code>peek()<\/code>)<\/td><td>O(1)<\/td><\/tr><tr><td>\u0425\u0430\u0439\u0445 (<code>contains()<\/code>)<\/td><td>O(n)<\/td><\/tr><\/tbody><\/table><\/figure>\n\n\n\n<p class=\"wp-block-paragraph\">\u0413\u043e\u043b \u043e\u043d\u0446\u043b\u043e\u0433\u0443\u0443\u0434:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>\u0425\u0430\u043c\u0433\u0438\u0439\u043d \u0447\u0443\u0445\u0430\u043b \u0430\u0447 \u0445\u043e\u043b\u0431\u043e\u0433\u0434\u043e\u043b\u0442\u043e\u0439 \u044d\u043b\u0435\u043c\u0435\u043d\u0442 (\u0442\u043e\u0433\u0442\u043e\u043e\u0441\u043e\u043d \u0434\u0430\u0440\u0430\u0430\u043b\u043b\u044b\u043d \u0434\u0430\u0433\u0443\u0443) \u0442\u043e\u043b\u0433\u043e\u0439\u043d \u0431\u0430\u0439\u0440\u043b\u0430\u043b\u0434 \u0431\u0430\u0439\u0440\u043b\u0430\u0434\u0430\u0433.<\/li>\n\n\n\n<li>\u0410\u043d\u0445\u0434\u0430\u0433\u0447 \u0431\u0430\u0439\u0434\u043b\u0430\u0430\u0440, \u044d\u043d\u044d \u043d\u044c \u0431\u0430\u0439\u0433\u0430\u043b\u0438\u0439\u043d \u0434\u0430\u0440\u0430\u0430\u043b\u043b\u044b\u0433 \u0430\u0448\u0438\u0433\u043b\u0430\u0434\u0430\u0433 &#8211; \u044d\u0445\u043b\u044d\u044d\u0434 \u0445\u0430\u043c\u0433\u0438\u0439\u043d \u0436\u0438\u0436\u0438\u0433 \u044d\u043b\u0435\u043c\u0435\u043d\u0442.<\/li>\n\n\n\n<li>\u0414\u0430\u0432\u0442\u0430\u043b\u0442 \u0434\u044d\u044d\u0440 \u0431\u04af\u0440\u044d\u043d \u0430\u043d\u0433\u0438\u043b\u0430\u0445 \u0431\u0430\u0442\u0430\u043b\u0433\u0430\u0430 \u04e9\u0433\u04e9\u0445\u0433\u04af\u0439.<\/li>\n\n\n\n<li>\u042d\u043d\u044d \u043d\u044c \u0437\u04e9\u0432\u0448\u04e9\u04e9\u0440\u04e9\u0445\u0433\u04af\u0439 <code>null<\/code> \u044d\u043b\u0435\u043c\u0435\u043d\u0442\u04af\u04af\u0434.<\/li>\n<\/ul>\n\n\n\n<h2 class=\"wp-block-heading\">4. \u0425\u0430\u0440\u044c\u0446\u0443\u0443\u043b\u0430\u0445 \u0445\u04af\u0441\u043d\u044d\u0433\u0442 &#8211; Java \u0446\u0443\u0433\u043b\u0443\u0443\u043b\u0433\u0443\u0443\u0434<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">\u0425\u0443\u0440\u0434\u0430\u043d \u0441\u0430\u043d\u0430\u0445\u0430\u0434 \u0437\u043e\u0440\u0438\u0443\u043b\u0441\u0430\u043d \u0445\u0443\u0440\u0430\u0430\u043d\u0433\u0443\u0439 \u0445\u04af\u0441\u043d\u044d\u0433\u0442:<\/p>\n\n\n\n<figure class=\"wp-block-table\"><table class=\"has-fixed-layout\"><tbody><tr><th>\u0426\u0443\u0433\u043b\u0443\u0443\u043b\u0433\u0430<\/th><th>\u0425\u0430\u043d\u0434\u0430\u043b\u0442<\/th><th>\u0425\u0430\u0439\u0445<\/th><th>\u041e\u0440\u0443\u0443\u043b\u0430\u0445<\/th><th>\u0423\u0441\u0442\u0433\u0430\u0445<\/th><\/tr><tr><td><code>ArrayList<\/code><\/td><td>O(1)<\/td><td>O(n)<\/td><td>O(1)*<\/td><td>O(n)<\/td><\/tr><tr><td><code>LinkedList<\/code><\/td><td>O(n)<\/td><td>O(n)<\/td><td>O(1)**<\/td><td>O(1)**<\/td><\/tr><tr><td><code>HashMap<\/code><\/td><td>O(1)*<\/td><td>O(1)*<\/td><td>O(1)*<\/td><td>O(1)*<\/td><\/tr><tr><td><code>TreeMap<\/code><\/td><td>O(\u043b\u043e\u0433 n)<\/td><td>O(\u043b\u043e\u0433 n)<\/td><td>O(\u043b\u043e\u0433 n)<\/td><td>O(\u043b\u043e\u0433 n)<\/td><\/tr><tr><td><code>HashSet<\/code><\/td><td>\u04ae\u0433\u04af\u0439<\/td><td>O(1)*<\/td><td>O(1)*<\/td><td>O(1)*<\/td><\/tr><tr><td><code>TreeSet<\/code><\/td><td>\u04ae\u0433\u04af\u0439<\/td><td>O(\u043b\u043e\u0433 n)<\/td><td>O(\u043b\u043e\u0433 n)<\/td><td>O(\u043b\u043e\u0433 n)<\/td><\/tr><tr><td><code>PriorityQueue<\/code><\/td><td>O(1)***<\/td><td>O(n)<\/td><td>O(\u043b\u043e\u0433 n)<\/td><td>O(\u043b\u043e\u0433 n)<\/td><\/tr><\/tbody><\/table><\/figure>\n\n\n\n<p class=\"wp-block-paragraph\">\u0421\u0442\u0430\u043d\u0434\u0430\u0440\u0442 \u043d\u04e9\u0445\u0446\u04e9\u043b\u0434 \u0434\u0443\u043d\u0434\u0430\u0436\/\u0445\u043e\u0440\u043e\u0433\u0434\u0443\u0443\u043b\u0441\u0430\u043d \u043d\u0430\u0440\u0438\u0439\u043d \u0442\u04e9\u0432\u04e9\u0433\u0442\u044d\u0439 \u0431\u0430\u0439\u0434\u0430\u043b.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">\u0423\u0447\u0438\u0440 \u043d\u044c <code>LinkedList<\/code>: O(1) \u044d\u0445\u044d\u043d\u0434 \u044d\u0441\u0432\u044d\u043b \u0442\u04e9\u0433\u0441\u0433\u04e9\u043b\u0434 \u044d\u0441\u0432\u044d\u043b \u0448\u0430\u0430\u0440\u0434\u043b\u0430\u0433\u0430\u0442\u0430\u0439 \u0437\u0430\u043d\u0433\u0438\u043b\u0430\u0430\u0442\u0430\u0439 \u04af\u0435\u0434. \u0418\u043d\u0434\u0435\u043a\u0441\u0438\u0439\u043d \u04af\u0439\u043b\u0434\u043b\u04af\u04af\u0434 \u043d\u044c \u0438\u0445\u044d\u0432\u0447\u043b\u044d\u043d O(n) \u0431\u0430\u0439\u0434\u0430\u0433.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">* \u0442\u04e9\u043b\u04e9\u04e9 <code>PriorityQueue<\/code>: O(1) \u043d\u044c \u0442\u043e\u043b\u0433\u043e\u0439 \u0440\u0443\u0443 \u043d\u044d\u0432\u0442\u0440\u044d\u0445\u0438\u0439\u0433 \u0445\u044d\u043b\u043d\u044d <code>peek()<\/code>, \u0430\u043b\u044c \u0447 \u044d\u043b\u0435\u043c\u0435\u043d\u0442\u044d\u0434 \u0431\u0438\u0448.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">5. Java \u0445\u04e9\u0433\u0436\u04af\u04af\u043b\u044d\u0433\u0447\u0438\u0439\u043d \u044f\u0440\u0438\u043b\u0446\u043b\u0430\u0433\u0430\u0434 \u0437\u043e\u0440\u0438\u0443\u043b\u0441\u0430\u043d \u0447\u0443\u0445\u0430\u043b \u043e\u0439\u043b\u0433\u043e\u043b\u0442\u0443\u0443\u0434<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">1. ArrayList \u0431\u043e\u043b\u043e\u043d LinkedList \u0445\u043e\u0451\u0440\u044b\u043d \u044f\u043b\u0433\u0430\u0430 \u043d\u044c \u044e\u0443 \u0432\u044d?<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li><code>ArrayList<\/code> \u0434\u0438\u043d\u0430\u043c\u0438\u043a \u043c\u0430\u0441\u0441\u0438\u0432\u044b\u0433 \u0430\u0448\u0438\u0433\u043b\u0430\u0434\u0430\u0433 \u0431\u04e9\u0433\u04e9\u04e9\u0434 \u0438\u043d\u0434\u0435\u043a\u0441\u044d\u044d\u0440 \u0434\u0430\u043c\u0436\u0443\u0443\u043b\u0430\u043d O(1) \u0445\u0430\u043d\u0434\u0430\u043b\u0442\u044b\u0433 \u0445\u0430\u043d\u0433\u0430\u0434\u0430\u0433.<\/li>\n\n\n\n<li><code>LinkedList<\/code> Doubly Linked List-\u0438\u0439\u0433 \u0430\u0448\u0438\u0433\u043b\u0430\u0434\u0430\u0433 \u0431\u0430 O(n) \u0445\u0430\u043d\u0434\u0430\u043b\u0442\u044b\u0433 \u0438\u043d\u0434\u0435\u043a\u0441\u044d\u044d\u0440 \u0445\u0430\u043d\u0433\u0430\u0434\u0430\u0433.<\/li>\n\n\n\n<li><code>LinkedList<\/code> \u0416\u0430\u0433\u0441\u0430\u0430\u043b\u0442\u044b\u043d \u044d\u0445\u044d\u043d \u0431\u0430 \u0442\u04e9\u0433\u0441\u0433\u04e9\u043b\u0434 \u0430\u0436\u0438\u043b\u043b\u0430\u0445\u0430\u0434 \u0442\u043e\u0445\u0438\u0440\u043e\u043c\u0436\u0442\u043e\u0439 \u0431\u043e\u043b\u043e\u0432\u0447 \u043b\u0430\u0432\u043b\u0430\u0433\u0430\u0430\u043d\u044b \u0441\u0430\u043d\u0430\u0445 \u043e\u0439\u043d \u043d\u044d\u043c\u044d\u043b\u0442 \u0430\u0447\u0430\u0430\u043b\u0430\u043b\u0442\u0430\u0439.<\/li>\n<\/ul>\n\n\n\n<p class=\"wp-block-paragraph\">2. HashMap \u0431\u043e\u043b\u043e\u043d TreeMap \u0445\u043e\u0451\u0440\u044b\u043d \u044f\u043b\u0433\u0430\u0430 \u044e\u0443 \u0432\u044d?<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li><code>HashMap<\/code> \u0445\u044d\u0448\u0438\u0439\u0433 \u0430\u0448\u0438\u0433\u043b\u0430\u0434\u0430\u0433 \u0431\u0430 O(1) \u04af\u0439\u043b\u0434\u043b\u0438\u0439\u0433 \u0434\u0443\u043d\u0434\u0436\u0430\u0430\u0440 \u0445\u0430\u043d\u0433\u0430\u0434\u0430\u0433.<\/li>\n\n\n\n<li><code>TreeMap<\/code> Red-Black Tree \u0430\u0448\u0438\u0433\u043b\u0430\u0434\u0430\u0433 \u0431\u0430 O(log n) \u04af\u0439\u043b\u0434\u043b\u04af\u04af\u0434\u0438\u0439\u0433 \u0445\u0430\u043d\u0433\u0430\u0434\u0430\u0433.<\/li>\n\n\n\n<li><code>HashMap<\/code> \u04af\u0435\u0434 \u044d\u043b\u0435\u043c\u0435\u043d\u0442\u04af\u04af\u0434\u0438\u0439\u043d \u0434\u0430\u0440\u0430\u0430\u043b\u043b\u044b\u0433 \u0431\u0430\u0442\u0430\u043b\u0433\u0430\u0430\u0436\u0443\u0443\u043b\u0434\u0430\u0433\u0433\u04af\u0439 <code>TreeMap<\/code> \u044d\u0440\u044d\u043c\u0431\u044d\u043b\u044d\u0433\u0434\u0441\u044d\u043d \u0442\u04af\u043b\u0445\u04af\u04af\u0440\u04af\u04af\u0434\u0438\u0439\u0433 \u0434\u044d\u043c\u0436\u0434\u044d\u0433.<\/li>\n<\/ul>\n\n\n\n<p class=\"wp-block-paragraph\">3. HashSet \u0431\u043e\u043b\u043e\u043d TreeSet \u0445\u043e\u0451\u0440\u044b\u043d \u044f\u043b\u0433\u0430\u0430 \u044e\u0443 \u0432\u044d?<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li><code>HashSet<\/code> \u0445\u044d\u0448\u0438\u0439\u0433 \u0430\u0448\u0438\u0433\u043b\u0430\u0434\u0430\u0433 \u0431\u0430 O(1) \u04af\u0439\u043b\u0434\u043b\u0438\u0439\u0433 \u0434\u0443\u043d\u0434\u0436\u0430\u0430\u0440 \u0445\u0430\u043d\u0433\u0430\u0434\u0430\u0433.<\/li>\n\n\n\n<li><code>TreeSet<\/code> Red-Black Tree \u0430\u0448\u0438\u0433\u043b\u0430\u0434\u0430\u0433 \u0431\u0430 O(log n) \u04af\u0439\u043b\u0434\u043b\u04af\u04af\u0434\u0438\u0439\u0433 \u0445\u0430\u043d\u0433\u0430\u0434\u0430\u0433.<\/li>\n\n\n\n<li><code>HashSet<\/code> \u0434\u0430\u0440\u0430\u0430\u043b\u0430\u043b\u0434 \u0431\u0430\u0442\u0430\u043b\u0433\u0430\u0430 \u04e9\u0433\u04e9\u0445\u0433\u04af\u0439 <code>TreeSet<\/code> \u044d\u0440\u044d\u043c\u0431\u044d\u043b\u044d\u0433\u0434\u0441\u044d\u043d \u044d\u043b\u0435\u043c\u0435\u043d\u0442\u04af\u04af\u0434\u0438\u0439\u0433 \u0434\u044d\u043c\u0436\u0434\u044d\u0433.<\/li>\n<\/ul>\n\n\n\n<p class=\"wp-block-paragraph\">4. \u0425\u044d\u0448 \u043c\u04e9\u0440\u0433\u04e9\u043b\u0434\u04e9\u04e9\u043d \u0433\u044d\u0436 \u044e\u0443 \u0432\u044d?<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">\u0425\u043e\u0451\u0440 \u04e9\u04e9\u0440 \u043e\u0431\u044a\u0435\u043a\u0442 \u0438\u0436\u0438\u043b \u0431\u0430\u0439\u0445 \u04af\u0435\u0434 \u0425\u044d\u0448 \u043c\u04e9\u0440\u0433\u04e9\u043b\u0434\u04e9\u04e9\u043d \u04af\u04af\u0441\u0434\u044d\u0433 <code>hashCode()<\/code>.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\"><code>HashMap<\/code> \u0431\u043e\u043b\u043e\u043d <code>HashSet<\/code> \u0442\u044d\u0434 \u0430\u0448\u0438\u0433\u043b\u0430\u0434\u0430\u0433 <code>hashCode()<\/code> \u0431\u043e\u043b\u043e\u043d <code>equals()<\/code> \u043e\u0431\u044a\u0435\u043a\u0442\u044b\u0433 \u0437\u04e9\u0432 \u0445\u0430\u0434\u0433\u0430\u043b\u0430\u0445, \u043e\u043b\u0436 \u0430\u0432\u0430\u0445\u0430\u0434 \u0437\u043e\u0440\u0438\u0443\u043b\u0430\u0433\u0434\u0441\u0430\u043d.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">\u04ae\u04af\u043d\u0438\u0439\u0433 \u0441\u0430\u043d\u0430\u0445 \u043d\u044c \u0447\u0443\u0445\u0430\u043b:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>-\u0438\u0439\u043d \u0434\u0430\u0433\u0443\u0443 \u0445\u043e\u0451\u0440 \u043e\u0431\u044a\u0435\u043a\u0442 \u0442\u044d\u043d\u0446\u04af\u04af \u0431\u043e\u043b <code>equals()<\/code>, \u0442\u044d\u0434 \u0430\u0434\u0438\u043b\u0445\u0430\u043d \u0431\u0430\u0439\u0445 \u0451\u0441\u0442\u043e\u0439 <code>hashCode()<\/code>.<\/li>\n\n\n\n<li>\u0425\u043e\u0451\u0440 \u043e\u0431\u044a\u0435\u043a\u0442 \u0438\u0436\u0438\u043b \u0431\u0430\u0439\u0436 \u0431\u043e\u043b\u043d\u043e <code>hashCode()<\/code>, \u0433\u044d\u0445\u0434\u044d\u044d \u0434\u0430\u0433\u0443\u0443 \u0442\u044d\u043d\u0446\u04af\u04af \u0431\u0438\u0448 <code>equals()<\/code>.<\/li>\n<\/ul>\n\n\n\n<p class=\"wp-block-paragraph\">5. Java Collections \u043d\u044c \u0443\u0440\u0441\u0433\u0430\u043b\u0434 \u0430\u044e\u0443\u043b\u0433\u04af\u0439 \u044e\u0443?<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">\u0418\u0445\u044d\u043d\u0445 \u0441\u0442\u0430\u043d\u0434\u0430\u0440\u0442 \u0445\u044d\u0440\u044d\u0433\u0436\u04af\u04af\u043b\u044d\u043b\u0442\u04af\u04af\u0434 \u0448\u0438\u0433 <code>ArrayList<\/code>, <code>HashMap<\/code> \u0431\u043e\u043b\u043e\u043d <code>HashSet<\/code> \u043d\u044d\u0433\u044d\u043d \u0437\u044d\u0440\u044d\u0433 \u043e\u043b\u043e\u043d \u0443\u0440\u0441\u0433\u0430\u043b\u0430\u0430\u0440 \u0441\u043e\u043b\u0438\u0433\u0434\u043e\u0445 \u04af\u0435\u0434 \u0443\u0440\u0441\u0433\u0430\u043b\u0434 \u0430\u044e\u0443\u043b\u0433\u04af\u0439 \u0431\u0438\u0448.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Java \u043d\u044c \u0442\u0443\u0441\u0433\u0430\u0439\u043b\u0441\u0430\u043d \u0437\u044d\u0440\u044d\u0433\u0446\u044d\u044d \u0446\u0443\u0433\u043b\u0443\u0443\u043b\u0433\u0443\u0443\u0434\u044b\u0433 \u0445\u0430\u043d\u0433\u0430\u0434\u0430\u0433:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li><code>ConcurrentHashMap<\/code> \u2013 \u0443\u0442\u0430\u0441\u0433\u04af\u0439 \u0433\u0430\u0437\u0440\u044b\u043d \u0437\u0443\u0440\u0430\u0433.<\/li>\n\n\n\n<li><code>CopyOnWriteArrayList<\/code> \u2013 \u043e\u043b\u043e\u043d \u0443\u043d\u0448\u0438\u0445 \u04af\u0439\u043b\u0434\u044d\u043b\u0442\u044d\u0439, \u0446\u04e9\u04e9\u043d \u0431\u0438\u0447\u0438\u0445 \u04af\u0439\u043b\u0434\u044d\u043b\u0442\u044d\u0439 \u0445\u0443\u0432\u0438\u043b\u0431\u0430\u0440\u0443\u0443\u0434\u0430\u0434 \u0442\u043e\u0445\u0438\u0440\u043e\u043c\u0436\u0442\u043e\u0439.<\/li>\n\n\n\n<li><code>BlockingQueue<\/code> \u2013 \u0442\u043e\u0434\u043e\u0440\u0445\u043e\u0439 \u043d\u04e9\u0445\u0446\u04e9\u043b\u0434 \u0443\u0440\u0441\u0433\u0430\u043b\u044b\u043d \u0430\u044e\u0443\u043b\u0433\u04af\u0439 \u0430\u0436\u0438\u043b\u043b\u0430\u0433\u0430\u0430 \u0431\u043e\u043b\u043e\u043d \u0431\u043b\u043e\u043a\u043b\u043e\u0445 \u0445\u04af\u043b\u044d\u044d\u043b\u0442\u0438\u0439\u0433 \u0434\u044d\u043c\u0436\u0434\u044d\u0433.<\/li>\n\n\n\n<li><code>ConcurrentLinkedQueue<\/code> \u2013 \u0431\u043b\u043e\u043a\u043b\u043e\u0433\u0434\u0434\u043e\u0433\u0433\u04af\u0439 thread-\u0430\u044e\u0443\u043b\u0433\u04af\u0439 \u0434\u0430\u0440\u0430\u0430\u043b\u0430\u043b.<\/li>\n<\/ul>\n\n\n\n<h2 class=\"wp-block-heading\">6. \u0421\u0430\u043d\u0430\u0436 \u0431\u0430\u0439\u0445 \u0451\u0441\u0442\u043e\u0439 \u0445\u0430\u043c\u0433\u0438\u0439\u043d \u0447\u0443\u0445\u0430\u043b \u0437\u04af\u0439\u043b<\/h2>\n\n\n\n<figure class=\"wp-block-table\"><table class=\"has-fixed-layout\"><tbody><tr><th>\u0422\u043e\u043c \u041e<\/th><th>\u041f\u0440\u0430\u043a\u0442\u0438\u043a \u0430\u0447 \u0445\u043e\u043b\u0431\u043e\u0433\u0434\u043e\u043b<\/th><\/tr><tr><td>O(1)<\/td><td>\u041c\u0430\u0448 \u0441\u0430\u0439\u043d \u0433\u04af\u0439\u0446\u044d\u0442\u0433\u044d\u043b &#8211; \u0442\u043e\u0433\u0442\u043c\u043e\u043b \u0442\u043e\u043e\u043d\u044b \u04af\u0439\u043b \u0430\u0436\u0438\u043b\u043b\u0430\u0433\u0430\u0430.<\/td><\/tr><tr><td>O(\u043b\u043e\u0433 n)<\/td><td>\u0422\u043e\u043c \u0446\u0443\u0433\u043b\u0443\u0443\u043b\u0433\u0443\u0443\u0434 \u0434\u044d\u044d\u0440 \u043c\u0430\u0448 \u0441\u0430\u0439\u043d \u0433\u04af\u0439\u0446\u044d\u0442\u0433\u044d\u043b\u0442\u044d\u0439.<\/td><\/tr><tr><td>O(n)<\/td><td>\u0428\u0443\u0433\u0430\u043c\u0430\u043d \u04e9\u0441\u04e9\u043b\u0442 &#8211; \u04e9\u0433\u04e9\u0433\u0434\u043b\u0438\u0439\u043d \u04e9\u0441\u04e9\u043b\u0442 \u0431\u04af\u0440 \u043d\u044c \u0433\u04af\u0439\u0446\u044d\u0442\u0433\u044d\u043b\u0438\u0439\u0433 \u043f\u0440\u043e\u043f\u043e\u0440\u0446\u0438\u043e\u043d\u0430\u043b\u044c \u0445\u044d\u043c\u0436\u044d\u044d\u0433\u044d\u044d\u0440 \u043d\u044d\u043c\u044d\u0433\u0434\u04af\u04af\u043b\u0434\u044d\u0433.<\/td><\/tr><tr><td>O(n log n)<\/td><td>\u0410\u043b\u0433\u043e\u0440\u0438\u0442\u043c\u0443\u0443\u0434\u044b\u0433 \u044d\u0440\u044d\u043c\u0431\u044d\u043b\u044d\u0445 \u043d\u044c \u0438\u0445\u044d\u0432\u0447\u043b\u044d\u043d \u0441\u0430\u0439\u043d \u0442\u04e9\u0432\u04e9\u0433\u0442\u044d\u0439 \u0431\u0430\u0439\u0434\u0430\u0433.<\/td><\/tr><tr><td>O(n\u00b2)<\/td><td>\u042d\u043d\u044d \u043d\u044c \u0438\u0445 \u0445\u044d\u043c\u0436\u044d\u044d\u043d\u0438\u0439 \u04e9\u0433\u04e9\u0433\u0434\u04e9\u043b \u043e\u0440\u0443\u0443\u043b\u0430\u0445\u0430\u0434 \u0443\u0434\u0430\u0430\u0448\u0438\u0440\u0447 \u0431\u043e\u043b\u043d\u043e.<\/td><\/tr><tr><td>O(2\u207f)<\/td><td>\u0422\u043e\u043e\u0446\u043e\u043e\u043b\u043b\u044b\u043d \u0430\u0436\u043b\u044b\u043d \u043c\u0430\u0448 \u0445\u0443\u0440\u0434\u0430\u0446\u0442\u0430\u0439 \u04e9\u0441\u04e9\u043b\u0442.<\/td><\/tr><\/tbody><\/table><\/figure>\n\n\n\n<p class=\"wp-block-paragraph\">Java \u0445\u04e9\u0433\u0436\u04af\u04af\u043b\u044d\u0433\u0447\u0438\u0439\u043d \u044f\u0440\u0438\u043b\u0446\u043b\u0430\u0433\u044b\u043d \u0437\u04e9\u0432\u043b\u04e9\u0433\u04e9\u04e9: \u0417\u04e9\u0432\u0445\u04e9\u043d Big O \u0443\u0442\u0433\u044b\u0433 \u0446\u044d\u044d\u0436\u043b\u044d\u0445 \u043d\u044c \u0445\u0430\u043d\u0433\u0430\u043b\u0442\u0433\u04af\u0439 \u044e\u043c. \u0426\u0443\u0433\u043b\u0443\u0443\u043b\u0433\u0430 \u0431\u04af\u0440 \u044f\u043c\u0430\u0440 \u0434\u043e\u0442\u043e\u043e\u0434 \u0431\u04af\u0442\u0446\u0438\u0439\u0433 \u0430\u0448\u0438\u0433\u043b\u0430\u0434\u0430\u0433, \u04af\u0439\u043b \u0430\u0436\u0438\u043b\u043b\u0430\u0433\u0430\u0430 \u044f\u0430\u0433\u0430\u0430\u0434 O(1), O(log n) \u044d\u0441\u0432\u044d\u043b O(n) \u0431\u043e\u043b\u043e\u0445, \u044f\u043c\u0430\u0440 \u043f\u0440\u0430\u043a\u0442\u0438\u043a \u0445\u0443\u0432\u0438\u043b\u0431\u0430\u0440\u0442 \u0442\u043e\u0445\u0438\u0440\u043e\u0445 \u0445\u044d\u0440\u044d\u0433\u0436\u0438\u043b\u0442\u0438\u0439\u0433 \u0441\u043e\u043d\u0433\u043e\u0445\u043e\u043e \u0442\u0430\u0439\u043b\u0431\u0430\u0440\u043b\u0430\u0445 \u0447\u0430\u0434\u0432\u0430\u0440\u0442\u0430\u0439 \u0431\u0430\u0439\u0445 \u0451\u0441\u0442\u043e\u0439.<\/p>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h1 class=\"wp-block-heading\">\u04e8\u0433\u04e9\u0433\u0434\u043b\u0438\u0439\u043d \u0441\u0430\u043d \u0434\u0430\u0445\u044c \u043d\u0438\u0439\u043b\u043c\u044d\u043b \u0438\u043d\u0434\u0435\u043a\u0441\u04af\u04af\u0434<\/h1>\n\n\n\n<p class=\"wp-block-paragraph\">\u041d\u0438\u0439\u043b\u043c\u044d\u043b \u0438\u043d\u0434\u0435\u043a\u0441 \u043d\u044c \u043d\u044d\u0433 \u0445\u04af\u0441\u043d\u044d\u0433\u0442\u0438\u0439\u043d \u0445\u043e\u0451\u0440 \u0431\u0430 \u0442\u04af\u04af\u043d\u044d\u044d\u0441 \u0434\u044d\u044d\u0448 \u0431\u0430\u0433\u0430\u043d\u0430 \u0434\u044d\u044d\u0440 \u0441\u0443\u0443\u0440\u0438\u043b\u0441\u0430\u043d \u043c\u044d\u0434\u044d\u044d\u043b\u043b\u0438\u0439\u043d \u0441\u0430\u043d\u0433\u0438\u0439\u043d \u0438\u043d\u0434\u0435\u043a\u0441 \u044e\u043c.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">\u042d\u043d\u044d \u043d\u044c \u0445\u044d\u0434 \u0445\u044d\u0434\u044d\u043d \u0431\u0430\u0433\u0430\u043d\u0430 \u0434\u044d\u044d\u0440\u0445 \u04e9\u0433\u04e9\u0433\u0434\u043b\u0438\u0439\u0433 \u0448\u04af\u04af\u0445, \u044d\u0440\u044d\u043c\u0431\u044d\u043b\u044d\u0445, \u0445\u0430\u0439\u0445 SQL \u0430\u0441\u0443\u0443\u043b\u0433\u044b\u0433 \u043e\u043d\u043e\u0432\u0447\u0442\u043e\u0439 \u0431\u043e\u043b\u0433\u043e\u0445\u043e\u0434 \u0445\u044d\u0440\u044d\u0433\u043b\u044d\u0433\u0434\u0434\u044d\u0433.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">1. \u041d\u0438\u0439\u043b\u043c\u044d\u043b \u0438\u043d\u0434\u0435\u043a\u0441\u04af\u04af\u0434 \u0445\u044d\u0440\u0445\u044d\u043d \u0430\u0436\u0438\u043b\u043b\u0430\u0434\u0430\u0433<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">\u04e8\u0433\u04e9\u0433\u0434\u043b\u0438\u0439\u043d \u0441\u0430\u043d \u043d\u044c \u0437\u0430\u0430\u0441\u0430\u043d \u0431\u0430\u0433\u0430\u043d\u044b\u043d \u0443\u0442\u0433\u044b\u0433 \u043d\u044d\u0433 \u0438\u043d\u0434\u0435\u043a\u0441\u0442 \u0445\u0430\u0434\u0433\u0430\u043b\u0434\u0430\u0433.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">\u0411\u0430\u0433\u0430\u043d\u044b\u043d \u0434\u0430\u0440\u0430\u0430\u043b\u0430\u043b \u043d\u044c \u043c\u0430\u0448 \u0447\u0443\u0445\u0430\u043b \u044e\u043c!<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">\u0416\u0438\u0448\u044d\u044d\u043b\u0431\u044d\u043b, \u0445\u044d\u0440\u044d\u0432 \u0431\u0438\u0434 \u0434\u044d\u044d\u0440 \u0438\u043d\u0434\u0435\u043a\u0441 \u04af\u04af\u0441\u0433\u044d\u0432\u044d\u043b <code>(A, B, C)<\/code>:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>\u042d\u043d\u044d \u043d\u044c \u0445\u0430\u0439\u0445\u0430\u0434 \u04af\u0440 \u0434\u04af\u043d\u0442\u044d\u0439 \u0431\u0430\u0439\u0434\u0430\u0433 <code>A<\/code>.<\/li>\n\n\n\n<li>\u042d\u043d\u044d \u043d\u044c \u0445\u0430\u0439\u0445\u0430\u0434 \u04af\u0440 \u0434\u04af\u043d\u0442\u044d\u0439 \u0431\u0430\u0439\u0434\u0430\u0433 <code>A<\/code> \u0431\u043e\u043b\u043e\u043d <code>B<\/code>.<\/li>\n\n\n\n<li>\u042d\u043d\u044d \u043d\u044c \u0445\u0430\u0439\u0445\u0430\u0434 \u04af\u0440 \u0434\u04af\u043d\u0442\u044d\u0439 \u0431\u0430\u0439\u0434\u0430\u0433 <code>A<\/code>, <code>B<\/code> \u0431\u043e\u043b\u043e\u043d <code>C<\/code>.<\/li>\n\n\n\n<li>\u0417\u04e9\u0432\u0445\u04e9\u043d \u0434\u0430\u043d\u0433\u0430\u0430\u0440 \u043d\u044c \u0445\u0430\u0439\u0445 \u04af\u0435\u0434 \u044d\u043d\u044d \u043d\u044c \u0438\u0445\u044d\u0432\u0447\u043b\u044d\u043d \u04af\u0440 \u0434\u04af\u043d\u0442\u044d\u0439 \u0431\u0430\u0439\u0434\u0430\u0433\u0433\u04af\u0439 <code>B<\/code> \u044d\u0441\u0432\u044d\u043b <code>C<\/code>.<\/li>\n<\/ul>\n\n\n\n<p class=\"wp-block-paragraph\">\u042d\u043d\u044d \u0434\u04af\u0440\u043c\u0438\u0439\u0433 \u0445\u0430\u043c\u0433\u0438\u0439\u043d \u0437\u04af\u04af\u043d \u0442\u0430\u043b\u044b\u043d \u0443\u0433\u0442\u0432\u0430\u0440 \u0434\u04af\u0440\u044d\u043c \u0433\u044d\u0436 \u043d\u044d\u0440\u043b\u044d\u0434\u044d\u0433.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">2. \u0416\u0438\u0448\u044d\u044d<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">\u0414\u0430\u0440\u0430\u0430\u0445 \u0445\u04af\u0441\u043d\u044d\u0433\u0442\u0438\u0439\u0433 \u0445\u0430\u0440\u0446\u0433\u0430\u0430\u044f <code>Employees<\/code>:<\/p>\n\n\n\n<figure class=\"wp-block-table\"><table class=\"has-fixed-layout\"><tbody><tr><th>ID<\/th><th>\u041d\u044d\u0440<\/th><th>\u041e\u0432\u043e\u0433<\/th><th>\u0445\u044d\u043b\u0442\u044d\u0441<\/th><\/tr><tr><td>1<\/td><td>\u0416\u043e\u043d<\/td><td>\u0414\u043e\u0435<\/td><td>\u0425\u04af\u043d\u0438\u0439 \u043d\u04e9\u04e9\u0446<\/td><\/tr><tr><td>2<\/td><td>\u0416\u044d\u0439\u043d<\/td><td>\u0421\u043c\u0438\u0442<\/td><td>IT<\/td><\/tr><tr><td>3<\/td><td>\u0410\u043b\u0438\u0441<\/td><td>\u0416\u043e\u043d\u0441\u043e\u043d<\/td><td>\u0425\u04af\u043d\u0438\u0439 \u043d\u04e9\u04e9\u0446<\/td><\/tr><\/tbody><\/table><\/figure>\n\n\n\n<p class=\"wp-block-paragraph\">\u0411\u0438\u0434 \u043d\u0438\u0439\u043b\u043c\u044d\u043b \u0438\u043d\u0434\u0435\u043a\u0441 \u04af\u04af\u0441\u0433\u044d\u0434\u044d\u0433:<\/p>\n\n\n<div class=\"wp-block-code\">\n\t<div class=\"cm-editor\">\n\t\t<div class=\"cm-scroller\">\n\t\t\t\n<pre>\n<code><div class=\"cm-line\">CREATE INDEX idx_employee_name<\/div><div class=\"cm-line\">ON Employees (LastName, FirstName);<\/div><\/code><\/pre>\n\t\t<\/div>\n\t<\/div>\n<\/div>\n\n\n<p class=\"wp-block-paragraph\">\u0410\u0441\u0443\u0443\u043b\u0442 1:<\/p>\n\n\n<div class=\"wp-block-code\">\n\t<div class=\"cm-editor\">\n\t\t<div class=\"cm-scroller\">\n\t\t\t\n<pre>\n<code><div class=\"cm-line\">SELECT * FROM Employees<\/div><div class=\"cm-line\">WHERE LastName = &apos;Smith&apos;<\/div><div class=\"cm-line\">AND FirstName = &apos;Jane&apos;;<\/div><\/code><\/pre>\n\t\t<\/div>\n\t<\/div>\n<\/div>\n\n\n<p class=\"wp-block-paragraph\">\u04ae\u0440 \u0434\u04af\u043d\u0442\u044d\u0439<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">\u04e8\u0433\u04e9\u0433\u0434\u043b\u0438\u0439\u043d \u0441\u0430\u043d \u043d\u044c \u041d\u0438\u0439\u043b\u043c\u044d\u043b \u0438\u043d\u0434\u0435\u043a\u0441\u0438\u0439\u0433 \u04af\u0440 \u0434\u04af\u043d\u0442\u044d\u0439 \u0430\u0448\u0438\u0433\u043b\u0430\u0445 \u0431\u043e\u043b\u043e\u043c\u0436\u0442\u043e\u0439.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">\u0410\u0441\u0443\u0443\u043b\u0442 2:<\/p>\n\n\n<div class=\"wp-block-code\">\n\t<div class=\"cm-editor\">\n\t\t<div class=\"cm-scroller\">\n\t\t\t\n<pre>\n<code><div class=\"cm-line\">SELECT * FROM Employees<\/div><div class=\"cm-line\">WHERE FirstName = &apos;Alice&apos;;<\/div><\/code><\/pre>\n\t\t<\/div>\n\t<\/div>\n<\/div>\n\n\n<p class=\"wp-block-paragraph\">\u04ae\u0440 \u0430\u0448\u0438\u0433 \u0431\u0430\u0433\u0430\u0442\u0430\u0439<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">\u0418\u043d\u0434\u0435\u043a\u0441\u0438\u0439\u0433 \u0438\u0445\u044d\u0432\u0447\u043b\u044d\u043d \u04af\u0440 \u0434\u04af\u043d\u0442\u044d\u0439 \u0430\u0448\u0438\u0433\u043b\u0430\u0445 \u0431\u043e\u043b\u043e\u043c\u0436\u0433\u04af\u0439, \u0443\u0447\u0438\u0440 \u043d\u044c <code>FirstName<\/code>\u044d\u0445\u043d\u0438\u0439 \u0431\u0430\u0433\u0430\u043d\u0430 \u0431\u0438\u0448.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">3. \u0414\u0430\u0432\u0443\u0443 \u0431\u043e\u043b\u043e\u043d \u0441\u0443\u043b \u0442\u0430\u043b\u0443\u0443\u0434<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">\u0414\u0430\u0432\u0443\u0443 \u0442\u0430\u043b:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>\u0421\u0430\u0439\u0436\u0440\u0443\u0443\u043b\u0441\u0430\u043d \u0430\u0441\u0443\u0443\u043b\u0433\u044b\u043d \u0433\u04af\u0439\u0446\u044d\u0442\u0433\u044d\u043b \u2013 \u0430\u0441\u0443\u0443\u043b\u0433\u044b\u0433 \u0445\u0443\u0440\u0434\u0430\u043d \u0433\u04af\u0439\u0446\u044d\u0442\u0433\u044d\u0445.<\/li>\n\n\n\n<li>\u0414\u0438\u0441\u043a\u043d\u0438\u0439 \u043e\u0440\u043e\u043b\u0442\/\u0433\u0430\u0440\u0430\u043b\u0442\u044b\u0433 \u0431\u0430\u0433\u0430\u0441\u0433\u0430\u0441\u0430\u043d \u2013 \u043e\u043b\u043e\u043d \u0442\u043e\u043e\u043d\u044b \u0431\u0438\u0447\u043b\u044d\u0433\u0438\u0439\u0433 \u0441\u043a\u0430\u043d \u0445\u0438\u0439\u0445 \u0445\u044d\u0440\u044d\u0433\u0446\u044d\u044d\u0433 \u0431\u0430\u0433\u0430\u0441\u0433\u0430\u0434\u0430\u0433.<\/li>\n\n\n\n<li>\u0418\u043b\u04af\u04af \u0441\u0430\u0439\u043d \u0448\u04af\u04af\u043b\u0442\u04af\u04af\u0440 &#8211; \u0445\u044d\u0434 \u0445\u044d\u0434\u044d\u043d \u0431\u0430\u0433\u0430\u043d\u0430\u0430\u0440 \u0438\u043b\u04af\u04af \u04af\u0440 \u0434\u04af\u043d\u0442\u044d\u0439 \u0448\u04af\u04af\u043d\u044d.<\/li>\n<\/ul>\n\n\n\n<p class=\"wp-block-paragraph\">\u0421\u0443\u043b \u0442\u0430\u043b:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>\u041d\u044d\u043c\u044d\u043b\u0442 \u0445\u0430\u0434\u0433\u0430\u043b\u0430\u0445 \u0437\u0430\u0439 \u044d\u0437\u044d\u043b\u043d\u044d.<\/li>\n\n\n\n<li>\u042d\u043d\u044d \u043d\u044c \u0443\u0434\u0430\u0430\u0448\u0438\u0440\u0447 \u0431\u043e\u043b\u043d\u043e <code>INSERT<\/code>, <code>UPDATE<\/code> \u0431\u043e\u043b\u043e\u043d <code>DELETE<\/code>, \u0443\u0447\u0438\u0440 \u043d\u044c \u0438\u043d\u0434\u0435\u043a\u0441\u0438\u0439\u0433 \u0448\u0438\u043d\u044d\u0447\u043b\u044d\u0445 \u0448\u0430\u0430\u0440\u0434\u043b\u0430\u0433\u0430\u0442\u0430\u0439.<\/li>\n\n\n\n<li>\u0411\u0430\u0433\u0430\u043d\u044b\u043d \u0431\u0443\u0440\u0443\u0443 \u0434\u0430\u0440\u0430\u0430\u043b\u0430\u043b \u043d\u044c \u0442\u04af\u04af\u043d\u0438\u0439 \u04af\u0440 \u043d\u04e9\u043b\u04e9\u04e9\u0433 \u0431\u0443\u0443\u0440\u0443\u0443\u043b\u0434\u0430\u0433.<\/li>\n<\/ul>\n\n\n\n<h2 class=\"wp-block-heading\">4. \u041d\u0438\u0439\u043b\u043c\u044d\u043b \u0438\u043d\u0434\u0435\u043a\u0441\u0438\u0439\u0433 \u0445\u044d\u0437\u044d\u044d \u0430\u0448\u0438\u0433\u043b\u0430\u0445 \u0432\u044d?<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">\u0425\u044d\u0434 \u0445\u044d\u0434\u044d\u043d \u0431\u0430\u0433\u0430\u043d\u044b\u043d \u0445\u043e\u0441\u043b\u043e\u043b \u0431\u04af\u0445\u0438\u0439 \u0430\u0441\u0443\u0443\u043b\u0433\u0430 \u0431\u0430\u0439\u043d\u0433\u0430 \u0430\u0436\u0438\u043b\u043b\u0443\u0443\u043b\u0436 \u0431\u0430\u0439\u0445 \u04af\u0435\u0434 \u041d\u0438\u0439\u043b\u043c\u044d\u043b \u0438\u043d\u0434\u0435\u043a\u0441\u0438\u0439\u0433 \u0430\u0448\u0438\u0433\u043b\u0430\u0430\u0440\u0430\u0439 <code>WHERE<\/code>, <code>JOIN<\/code> \u044d\u0441\u0432\u044d\u043b <code>ORDER BY<\/code>.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Java \u0445\u04e9\u0433\u0436\u04af\u04af\u043b\u044d\u0433\u0447\u0438\u0439\u043d \u044f\u0440\u0438\u043b\u0446\u043b\u0430\u0433\u0430\u0434 \u0447\u0443\u0445\u0430\u043b \u0430\u0447 \u0445\u043e\u043b\u0431\u043e\u0433\u0434\u043e\u043b\u0442\u043e\u0439:<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">\u0413\u0443\u0440\u0432\u0430\u043d \u04af\u043d\u0434\u0441\u044d\u043d \u0437\u04af\u0439\u043b\u0438\u0439\u0433 \u0441\u0430\u043d\u0430\u0430\u0440\u0430\u0439:<\/p>\n\n\n\n<ol class=\"wp-block-list\">\n<li>\u041d\u0438\u0439\u043b\u043c\u044d\u043b \u0438\u043d\u0434\u0435\u043a\u0441 \u043d\u044c \u0445\u043e\u0451\u0440 \u0431\u0430 \u0442\u04af\u04af\u043d\u044d\u044d\u0441 \u0434\u044d\u044d\u0448 \u0431\u0430\u0433\u0430\u043d\u0430 \u0430\u0433\u0443\u0443\u043b\u0434\u0430\u0433.<\/li>\n\n\n\n<li>\u0411\u0430\u0433\u0430\u043d\u044b\u043d \u0434\u0430\u0440\u0430\u0430\u043b\u0430\u043b \u0447\u0443\u0445\u0430\u043b (\u0425\u0430\u043c\u0433\u0438\u0439\u043d \u0437\u04af\u04af\u043d \u0442\u0430\u043b\u044b\u043d \u0443\u0433\u0442\u0432\u0430\u0440 \u0434\u04af\u0440\u044d\u043c).<\/li>\n\n\n\n<li>\u0418\u043d\u0434\u0435\u043a\u0441\u04af\u04af\u0434 \u0445\u0443\u0440\u0434\u0430\u0441\u0434\u0430\u0433 <code>SELECT<\/code>, \u0433\u044d\u0445\u0434\u044d\u044d \u04e9\u0433\u04e9\u0433\u0434\u043b\u0438\u0439\u0433 \u04e9\u04e9\u0440\u0447\u043b\u04e9\u0445 \u04af\u0439\u043b\u0434\u043b\u0438\u0439\u0433 \u0443\u0434\u0430\u0430\u0448\u0440\u0443\u0443\u043b\u0436 \u0431\u043e\u043b\u043d\u043e (<code>INSERT<\/code>, <code>UPDATE<\/code>, <code>DELETE<\/code>).<\/li>\n<\/ol>\n\n\n\n<p class=\"wp-block-paragraph\">\u041d\u044d\u043c\u0436 \u0434\u0443\u0440\u0434\u0430\u0445\u0430\u0434: \u041d\u0438\u0439\u043b\u043c\u044d\u043b \u0438\u043d\u0434\u0435\u043a\u0441\u0442\u044d\u0439 \u0431\u0430\u0439\u0445 \u043d\u044c \u043c\u044d\u0434\u044d\u044d\u043b\u043b\u0438\u0439\u043d \u0441\u0430\u043d \u04af\u04af\u043d\u0438\u0439\u0433 \u0430\u0448\u0438\u0433\u043b\u0430\u0445 \u0431\u0430\u0442\u0430\u043b\u0433\u0430\u0430 \u0431\u043e\u043b\u043e\u0445\u0433\u04af\u0439. \u042d\u043d\u044d \u043d\u044c Query Optimizer, \u0441\u0442\u0430\u0442\u0438\u0441\u0442\u0438\u043a \u0431\u043e\u043b\u043e\u043d \u0442\u0443\u0445\u0430\u0439\u043d SQL \u0430\u0441\u0443\u0443\u043b\u0433\u044b\u043d \u0431\u04af\u0442\u0446\u044d\u044d\u0441 \u0445\u0430\u043c\u0430\u0430\u0440\u043d\u0430.<\/p>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h1 class=\"wp-block-heading\">\u041d\u0438\u0439\u043b\u043c\u044d\u043b \u0442\u04af\u043b\u0445\u04af\u04af\u0440<\/h1>\n\n\n\n<p class=\"wp-block-paragraph\">\u041d\u0438\u0439\u043b\u043c\u044d\u043b \u0442\u04af\u043b\u0445\u04af\u04af\u0440 \u043d\u044c \u04e9\u0433\u04e9\u0433\u0434\u043b\u0438\u0439\u043d \u0441\u0430\u043d\u0433\u0438\u0439\u043d \u0445\u04af\u0441\u043d\u044d\u0433\u0442\u0438\u0439\u043d \u0445\u043e\u0451\u0440 \u0431\u0430 \u0442\u04af\u04af\u043d\u044d\u044d\u0441 \u0434\u044d\u044d\u0448 \u0431\u0430\u0433\u0430\u043d\u044b\u043d \u0445\u043e\u0441\u043b\u043e\u043b \u0431\u04e9\u0433\u04e9\u04e9\u0434 \u0442\u044d\u0434\u0433\u044d\u044d\u0440 \u043d\u044c \u043d\u0438\u0439\u043b\u044d\u044d\u0434 \u0431\u0438\u0447\u043b\u044d\u0433 (\u043c\u04e9\u0440) \u0431\u04af\u0440\u0438\u0439\u043d \u04e9\u0432\u04e9\u0440\u043c\u04e9\u0446 \u0442\u0430\u043d\u0438\u0445 \u0442\u044d\u043c\u0434\u044d\u0433 \u0431\u043e\u043b\u0434\u043e\u0433.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">\u0422\u0443\u0441 \u0442\u0443\u0441\u0430\u0434 \u043d\u044c \u044d\u0434\u0433\u044d\u044d\u0440 \u0431\u0430\u0433\u0430\u043d\u0443\u0443\u0434 \u043d\u044c \u04e9\u0432\u04e9\u0440\u043c\u04e9\u0446 \u0443\u0442\u0433\u044b\u0433 \u0430\u0433\u0443\u0443\u043b\u0430\u0430\u0433\u04af\u0439 \u0431\u0430\u0439\u0436 \u0431\u043e\u043b\u043e\u0445 \u0447 \u0442\u044d\u0434\u0433\u044d\u044d\u0440\u0438\u0439\u043d \u0445\u043e\u0441\u043b\u043e\u043b \u043d\u044c \u04e9\u0432\u04e9\u0440\u043c\u04e9\u0446 \u0431\u0430\u0439\u0445 \u0451\u0441\u0442\u043e\u0439.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">1. \u0416\u0438\u0448\u044d\u044d<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">\u04e8\u0433\u04e9\u0433\u0434\u043b\u0438\u0439\u043d \u0441\u0430\u043d\u0433\u0438\u0439\u043d \u0445\u04af\u0441\u043d\u044d\u0433\u0442\u0438\u0439\u0433 \u0445\u0430\u0440\u0446\u0433\u0430\u0430\u044f <code>StudentCourses<\/code>, \u044f\u043d\u0437 \u0431\u04af\u0440\u0438\u0439\u043d \u043a\u0443\u0440\u0441\u0443\u0443\u0434\u044b\u043d \u043e\u044e\u0443\u0442\u043d\u044b \u0431\u04af\u0440\u0442\u0433\u044d\u043b\u0438\u0439\u0433 \u0445\u0430\u0434\u0433\u0430\u043b\u0434\u0430\u0433.<\/p>\n\n\n\n<figure class=\"wp-block-table\"><table class=\"has-fixed-layout\"><tbody><tr><th>\u041e\u044e\u0443\u0442\u043d\u044b \u04af\u043d\u044d\u043c\u043b\u044d\u0445<\/th><th>\u041a\u0443\u0440\u0441\u044b\u043d ID<\/th><th>\u042d\u043b\u0441\u044d\u043b\u0442\u0438\u0439\u043d \u043e\u0433\u043d\u043e\u043e<\/th><\/tr><tr><td>101<\/td><td>1<\/td><td>2026-01-10<\/td><\/tr><tr><td>101<\/td><td>2<\/td><td>2026-01-12<\/td><\/tr><tr><td>102<\/td><td>1<\/td><td>2026-01-15<\/td><\/tr><tr><td>103<\/td><td>2<\/td><td>2026-01-18<\/td><\/tr><\/tbody><\/table><\/figure>\n\n\n\n<ul class=\"wp-block-list\">\n<li><code>StudentID<\/code> \u041d\u044d\u0433 \u043e\u044e\u0443\u0442\u0430\u043d \u0445\u044d\u0434 \u0445\u044d\u0434\u044d\u043d \u043a\u0443\u0440\u0441 \u0430\u0432\u0430\u0445 \u0431\u043e\u043b\u043e\u043c\u0436\u0442\u043e\u0439 \u0442\u0443\u043b \u044d\u043d\u044d \u043d\u044c \u04e9\u0432\u04e9\u0440\u043c\u04e9\u0446 \u0431\u0438\u0448 \u044e\u043c.<\/li>\n\n\n\n<li><code>CourseID<\/code> \u041d\u044d\u0433 \u043a\u0443\u0440\u0441 \u043d\u044c \u043e\u043b\u043e\u043d \u043e\u044e\u0443\u0442\u0430\u043d\u0442\u0430\u0439 \u0431\u0430\u0439\u0436 \u0431\u043e\u043b\u043e\u0445 \u0442\u0443\u043b \u04e9\u0432\u04e9\u0440\u043c\u04e9\u0446 \u0431\u0438\u0448 \u044e\u043c.<\/li>\n\n\n\n<li>\u0425\u043e\u0441\u043b\u043e\u043b <code>(StudentID, CourseID)<\/code> \u0431\u0438\u0447\u043b\u044d\u0433 \u0431\u04af\u0440\u0438\u0439\u043d \u0445\u0443\u0432\u044c\u0434 \u04e9\u0432\u04e9\u0440\u043c\u04e9\u0446 \u0431\u0430\u0439\u0434\u0430\u0433.<\/li>\n<\/ul>\n\n\n\n<p class=\"wp-block-paragraph\">\u041d\u0438\u0439\u043b\u043c\u044d\u043b \u04af\u043d\u0434\u0441\u044d\u043d \u0442\u04af\u043b\u0445\u04af\u04af\u0440 \u04af\u04af\u0441\u0433\u044d\u0445:<\/p>\n\n\n<div class=\"wp-block-code\">\n\t<div class=\"cm-editor\">\n\t\t<div class=\"cm-scroller\">\n\t\t\t\n<pre>\n<code><div class=\"cm-line\">CREATE TABLE StudentCourses (<\/div><div class=\"cm-line\">    StudentID INT,<\/div><div class=\"cm-line\">    CourseID INT,<\/div><div class=\"cm-line\">    EnrollmentDate DATE,<\/div><div class=\"cm-line\">    PRIMARY KEY (StudentID, CourseID)<\/div><div class=\"cm-line\">);<\/div><\/code><\/pre>\n\t\t<\/div>\n\t<\/div>\n<\/div>\n\n\n<h2 class=\"wp-block-heading\">2. \u041d\u0438\u0439\u043b\u043c\u044d\u043b \u0442\u04af\u043b\u0445\u04af\u04af\u0440\u0438\u0439\u0433 \u0445\u044d\u0437\u044d\u044d \u0430\u0448\u0438\u0433\u043b\u0430\u0445 \u0432\u044d?<\/h2>\n\n\n\n<ul class=\"wp-block-list\">\n<li>\u041e\u043b\u043e\u043d-\u043e\u043b\u043e\u043d \u0445\u0430\u0440\u0438\u043b\u0446\u0430\u0430\u0442\u0430\u0439 \u2013 \u0436\u0438\u0448\u044d\u044d \u043d\u044c \u043e\u044e\u0443\u0442\u043d\u0443\u0443\u0434 \u0431\u043e\u043b\u043e\u043d \u043a\u0443\u0440\u0441\u0443\u0443\u0434.<\/li>\n\n\n\n<li>\u04e8\u0432\u04e9\u0440\u043c\u04e9\u0446 \u0442\u0430\u043d\u0438\u0445 \u043d\u044c \u0445\u044d\u0434 \u0445\u044d\u0434\u044d\u043d \u0431\u0430\u0433\u0430\u043d\u044b\u0433 \u0445\u043e\u0441\u043b\u0443\u0443\u043b\u0430\u0445 \u0448\u0430\u0430\u0440\u0434\u043b\u0430\u0433\u0430\u0442\u0430\u0439 \u04af\u0435\u0434.<\/li>\n\n\n\n<li>\u0422\u0443\u0441\u0434\u0430\u0430 \u0442\u0430\u043d\u0438\u0433\u0447 \u0448\u0430\u0430\u0440\u0434\u043b\u0430\u0433\u0430\u0433\u04af\u0439 \u04af\u0435\u0434 (<code>ID<\/code>) \u0431\u0438\u0447\u043b\u044d\u0433 \u0431\u04af\u0440\u0438\u0439\u043d \u0445\u0443\u0432\u044c\u0434.<\/li>\n<\/ul>\n\n\n\n<h2 class=\"wp-block-heading\">3. Composite Key vs Composite Index<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">\u0425\u043e\u0451\u0440 \u043e\u0439\u043b\u0433\u043e\u043b\u0442\u044b\u0433 \u0445\u043e\u043e\u0440\u043e\u043d\u0434 \u043d\u044c \u0445\u043e\u043b\u044c\u0436 \u0445\u0443\u0442\u0433\u0430\u0445\u0433\u04af\u0439 \u0431\u0430\u0439\u0445 \u043d\u044c \u0447\u0443\u0445\u0430\u043b.<\/p>\n\n\n\n<figure class=\"wp-block-table\"><table class=\"has-fixed-layout\"><tbody><tr><th>\u041d\u0438\u0439\u043b\u043c\u044d\u043b \u0442\u04af\u043b\u0445\u04af\u04af\u0440<\/th><th>\u041d\u0438\u0439\u043b\u043c\u044d\u043b \u0438\u043d\u0434\u0435\u043a\u0441<\/th><\/tr><tr><td>\u04ae\u043d\u0434\u0441\u044d\u043d \u0442\u04af\u043b\u0445\u04af\u04af\u0440 \u044d\u0441\u0432\u044d\u043b \u04e8\u0432\u04e9\u0440\u043c\u04e9\u0446 \u0442\u04af\u043b\u0445\u04af\u04af\u0440 \u0431\u0430\u0439\u0445 \u04af\u0435\u0434 \u0431\u0430\u0433\u0430\u043d\u044b\u043d \u0445\u043e\u0441\u043b\u043e\u043b\u044b\u043d \u04e9\u0432\u04e9\u0440\u043c\u04e9\u0446 \u0431\u0430\u0439\u0434\u043b\u044b\u0433 \u0431\u0430\u0442\u0430\u043b\u0433\u0430\u0430\u0436\u0443\u0443\u043b\u0434\u0430\u0433.<\/td><td>\u04e8\u0433\u04e9\u0433\u0434\u043b\u0438\u0439\u043d \u0445\u0430\u0439\u043b\u0442, \u0445\u0430\u043d\u0434\u0430\u043b\u0442\u044b\u0433 \u043e\u043d\u043e\u0432\u0447\u0442\u043e\u0439 \u0431\u043e\u043b\u0433\u043e\u0434\u043e\u0433.<\/td><\/tr><tr><td>\u0411\u04af\u0440\u0442\u0433\u044d\u043b\u0438\u0439\u0433 \u0442\u043e\u0434\u043e\u0440\u0445\u043e\u0439\u043b\u043e\u0445\u043e\u0434 \u0430\u0448\u0438\u0433\u043b\u0430\u0434\u0430\u0433.<\/td><td>\u0410\u0441\u0443\u0443\u043b\u0433\u044b\u043d \u0433\u04af\u0439\u0446\u044d\u0442\u0433\u044d\u043b\u0438\u0439\u0433 \u0441\u0430\u0439\u0436\u0440\u0443\u0443\u043b\u0430\u0445\u0430\u0434 \u0430\u0448\u0438\u0433\u043b\u0430\u0434\u0430\u0433.<\/td><\/tr><tr><td>\u042d\u043d\u044d \u043d\u044c \u04af\u0440\u0433\u044d\u043b\u0436 \u04e9\u0432\u04e9\u0440\u043c\u04e9\u0446 \u0431\u0430\u0439\u0434\u043b\u044b\u0433 \u0431\u0438\u0439 \u0431\u043e\u043b\u0433\u043e\u0434\u043e\u0433.<\/td><td>\u042d\u043d\u044d \u043d\u044c \u04e9\u0432\u04e9\u0440\u043c\u04e9\u0446 \u0431\u0430\u0439\u0434\u043b\u044b\u0433 \u0448\u0430\u0430\u0440\u0434\u0434\u0430\u0433\u0433\u04af\u0439.<\/td><\/tr><\/tbody><\/table><\/figure>\n\n\n\n<p class=\"wp-block-paragraph\">Java \u0445\u04e9\u0433\u0436\u04af\u04af\u043b\u044d\u0433\u0447\u0438\u0439\u043d \u044f\u0440\u0438\u043b\u0446\u043b\u0430\u0433\u0430\u0434 \u0447\u0443\u0445\u0430\u043b \u0430\u0447 \u0445\u043e\u043b\u0431\u043e\u0433\u0434\u043e\u043b\u0442\u043e\u0439: \u041d\u0438\u0439\u043b\u043c\u044d\u043b \u0442\u04af\u043b\u0445\u04af\u04af\u0440\u0438\u0439\u0433 \u043e\u043b\u043e\u043d-\u043e\u043e\u0441 \u043e\u043b\u043e\u043d \u0445\u0430\u0440\u0438\u043b\u0446\u0430\u0430\u043d\u0434 \u0438\u0445\u044d\u0432\u0447\u043b\u044d\u043d \u0430\u0448\u0438\u0433\u043b\u0430\u0434\u0430\u0433. JPA\/Hibernate-\u0434 \u04af\u04af\u043d\u0438\u0439\u0433 \u0434\u0430\u043c\u0436\u0443\u0443\u043b\u0430\u043d \u0445\u044d\u0440\u044d\u0433\u0436\u04af\u04af\u043b\u0436 \u0431\u043e\u043b\u043d\u043e <code>@EmbeddedId<\/code> \u044d\u0441\u0432\u044d\u043b <code>@IdClass<\/code>.<\/p>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h1 class=\"wp-block-heading\">\u0411\u04af\u0440\u044d\u043b\u0434\u044d\u0445\u04af\u04af\u043d \u0431\u0430 \u043d\u044d\u0433\u0442\u0433\u044d\u0445<\/h1>\n\n\n\n<p class=\"wp-block-paragraph\">\u0416\u0430\u0432\u0430 \u0445\u044d\u043b \u0434\u044d\u044d\u0440 Composition and Aggregation \u043d\u044c \u043e\u0431\u044a\u0435\u043a\u0442\u0443\u0443\u0434\u044b\u043d \u0445\u043e\u043e\u0440\u043e\u043d\u0434\u044b\u043d \u0445\u0430\u0440\u0438\u043b\u0446\u0430\u0430\u0433 \u0442\u043e\u0434\u043e\u0440\u0445\u043e\u0439\u043b\u0434\u043e\u0433 \u041e\u0431\u044a\u0435\u043a\u0442 \u0445\u0430\u043d\u0434\u0430\u043b\u0442\u0430\u0442 \u043f\u0440\u043e\u0433\u0440\u0430\u043c\u0447\u043b\u0430\u043b\u044b\u043d (OOP) \u0445\u043e\u0451\u0440 \u0437\u0430\u0440\u0447\u0438\u043c \u044e\u043c.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">\u0410\u043b\u044c \u0430\u043b\u044c \u043d\u044c \u0425\u043e\u043b\u0431\u043e\u043e\u043d\u044b \u0445\u044d\u043b\u0431\u044d\u0440 \u0431\u04e9\u0433\u04e9\u04e9\u0434 Has-A \u0445\u0430\u0440\u0438\u043b\u0446\u0430\u0430\u0433 \u0434\u04af\u0440\u0441\u044d\u043b\u0434\u044d\u0433 \u0431\u043e\u043b\u043e\u0432\u0447 \u043e\u0431\u044a\u0435\u043a\u0442\u044b\u043d \u0430\u043c\u044c\u0434\u0440\u0430\u043b\u044b\u043d \u043c\u04e9\u0447\u043b\u04e9\u0433\u0438\u0439\u043d \u0445\u043e\u043e\u0440\u043e\u043d\u0434\u044b\u043d \u0445\u0430\u043c\u0430\u0430\u0440\u043b\u0430\u0430\u0440 \u044f\u043b\u0433\u0430\u0430\u0442\u0430\u0439.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">1. \u041d\u0430\u0439\u0440\u043b\u0430\u0433\u0430<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">\u0422\u043e\u0434\u043e\u0440\u0445\u043e\u0439\u043b\u043e\u043b\u0442: \u0425\u04af\u04af\u0445\u0434\u0438\u0439\u043d \u043e\u0431\u044a\u0435\u043a\u0442\u044b\u043d \u0430\u043c\u044c\u0434\u0440\u0430\u043b\u044b\u043d \u043c\u04e9\u0447\u043b\u04e9\u0433 \u043d\u044c \u044d\u0445 \u043e\u0431\u044a\u0435\u043a\u0442\u044b\u043d \u0430\u043c\u044c\u0434\u0440\u0430\u043b\u044b\u043d \u043c\u04e9\u0447\u043b\u04e9\u0433\u04e9\u04e9\u0441 \u0445\u0430\u043c\u0430\u0430\u0440\u0434\u0430\u0433 \u0445\u04af\u0447\u0442\u044d\u0439 Has-A \u0445\u0430\u0440\u0438\u043b\u0446\u0430\u0430.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">\u0413\u043e\u043b \u043e\u043d\u0446\u043b\u043e\u0433: \u042d\u0446\u044d\u0433 \u044d\u0445 \u043d\u044c \u0445\u04af\u04af\u0445\u044d\u0434 \u043e\u0431\u044a\u0435\u043a\u0442\u044b\u0433 \u044d\u0437\u044d\u043c\u0448\u0434\u044d\u0433. \u0425\u044d\u0440\u044d\u0432 \u044d\u0445 \u043e\u0431\u044a\u0435\u043a\u0442\u044b\u0433 \u0443\u0441\u0442\u0433\u0430\u0441\u0430\u043d \u0431\u043e\u043b \u0445\u04af\u04af\u0445\u044d\u0434 \u043e\u0431\u044a\u0435\u043a\u0442 \u043d\u044c \u0431\u0438\u0435 \u0434\u0430\u0430\u0441\u0430\u043d \u044d\u0437\u044d\u043d\u0433\u04af\u0439 \u0431\u043e\u043b\u0436, \u0438\u0445\u044d\u0432\u0447\u043b\u044d\u043d \u0442\u04af\u04af\u043d\u0442\u044d\u0439 \u0445\u0430\u043c\u0442 \u0443\u0441\u0442\u0433\u0430\u0433\u0434\u0430\u0445 \u0431\u043e\u043b\u043d\u043e.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">\u0416\u0438\u0448\u044d\u044d:<\/p>\n\n\n<div class=\"wp-block-code\">\n\t<div class=\"cm-editor\">\n\t\t<div class=\"cm-scroller\">\n\t\t\t\n<pre>\n<code><div class=\"cm-line\">class Engine {<\/div><div class=\"cm-line\">}<\/div><div class=\"cm-line\"><\/div><div class=\"cm-line\">class Car {<\/div><div class=\"cm-line\">    private final Engine engine = new Engine();<\/div><div class=\"cm-line\">}<\/div><\/code><\/pre>\n\t\t<\/div>\n\t<\/div>\n<\/div>\n\n\n<p class=\"wp-block-paragraph\">\u042d\u043d\u0434 <code>Engine<\/code> -\u0438\u0439\u043d \u043d\u044d\u0433 \u0445\u044d\u0441\u044d\u0433 \u044e\u043c <code>Car<\/code>. <code>Car<\/code> \u04e9\u04e9\u0440\u04e9\u04e9 \u0431\u0438\u0439 \u0431\u043e\u043b\u0433\u043e\u0436, \u044d\u0437\u044d\u043c\u0448\u0434\u044d\u0433 <code>Engine<\/code>.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">2. \u041d\u044d\u0433\u0442\u0433\u044d\u0445<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">\u0422\u043e\u0434\u043e\u0440\u0445\u043e\u0439\u043b\u043e\u043b\u0442: \u0425\u04af\u04af\u0445\u0434\u0438\u0439\u043d \u043e\u0431\u044a\u0435\u043a\u0442 \u043d\u044c \u044d\u0445 \u043e\u0431\u044a\u0435\u043a\u0442\u043e\u043e\u0441 \u0431\u0438\u0435 \u0434\u0430\u0430\u0441\u0430\u043d \u0430\u043c\u044c\u0434\u0440\u0430\u043b\u044b\u043d \u043c\u04e9\u0447\u043b\u04e9\u0433\u0442\u044d\u0439 \u0431\u0430\u0439\u0434\u0430\u0433 \u0438\u043b\u04af\u04af \u0441\u0443\u043b Has-A \u0445\u0430\u0440\u0438\u043b\u0446\u0430\u0430.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">\u0413\u043e\u043b \u043e\u043d\u0446\u043b\u043e\u0433: \u042d\u0446\u044d\u0433 \u044d\u0445 \u0431\u043e\u043b\u043e\u043d \u0445\u04af\u04af\u0445\u0434\u0438\u0439\u043d \u043e\u0431\u044a\u0435\u043a\u0442\u0443\u0443\u0434 \u0431\u0438\u0435 \u0431\u0438\u0435\u043d\u044d\u044d\u0441\u044d\u044d \u0445\u0430\u043c\u0430\u0430\u0440\u0430\u043b\u0433\u04af\u0439 \u043e\u0440\u0448\u0438\u043d \u0442\u043e\u0433\u0442\u043d\u043e\u0445 \u0431\u043e\u043b\u043e\u043c\u0436\u0442\u043e\u0439.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">\u0416\u0438\u0448\u044d\u044d:<\/p>\n\n\n<div class=\"wp-block-code\">\n\t<div class=\"cm-editor\">\n\t\t<div class=\"cm-scroller\">\n\t\t\t\n<pre>\n<code><div class=\"cm-line\">class Book {<\/div><div class=\"cm-line\">}<\/div><div class=\"cm-line\"><\/div><div class=\"cm-line\">class Library {<\/div><div class=\"cm-line\">    private List&lt;Book&gt; books;<\/div><div class=\"cm-line\"><\/div><div class=\"cm-line\">    public Library(List&lt;Book&gt; books) {<\/div><div class=\"cm-line\">        this.books = books;<\/div><div class=\"cm-line\">    }<\/div><div class=\"cm-line\">}<\/div><\/code><\/pre>\n\t\t<\/div>\n\t<\/div>\n<\/div>\n\n\n<p class=\"wp-block-paragraph\">\u042d\u043d\u0434 <code>Library<\/code> -\u044b\u043d \u043b\u0430\u0432\u043b\u0430\u0433\u0430\u0430 \u0430\u0433\u0443\u0443\u043b\u0441\u0430\u043d <code>Book<\/code> \u043e\u0431\u044a\u0435\u043a\u0442, \u0433\u044d\u0445\u0434\u044d\u044d \u043d\u043e\u043c \u043d\u044c \u043d\u043e\u043c\u044b\u043d \u0441\u0430\u043d\u0433\u0430\u0430\u0441 \u04af\u043b \u0445\u0430\u043c\u0430\u0430\u0440\u0430\u043d \u043e\u0440\u0448\u0438\u043d \u0442\u043e\u0433\u0442\u043d\u043e\u0445 \u0431\u043e\u043b\u043e\u043c\u0436\u0442\u043e\u0439.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">3. \u0413\u043e\u043b \u044f\u043b\u0433\u0430\u0430\u043d\u0443\u0443\u0434<\/h2>\n\n\n\n<figure class=\"wp-block-table\"><table class=\"has-fixed-layout\"><tbody><tr><th>\u041d\u0430\u0439\u0440\u043b\u0430\u0433\u0430<\/th><th>\u041d\u044d\u0433\u0442\u0433\u044d\u0445<\/th><\/tr><tr><td>\u0425\u04af\u0447\u0442\u044d\u0439 Has-A \u0445\u0430\u0440\u0438\u043b\u0446\u0430\u0430<\/td><td>\u0421\u0443\u043b \u0434\u043e\u0440\u043e\u0439-\u0410 \u0445\u0430\u0440\u0438\u043b\u0446\u0430\u0430<\/td><\/tr><tr><td>\u0425\u04af\u04af\u0445\u0434\u0438\u0439\u043d \u043e\u0431\u044a\u0435\u043a\u0442\u044b\u0433 \u044d\u0446\u044d\u0433 \u044d\u0445 \u044d\u0437\u044d\u043c\u0448\u0434\u044d\u0433.<\/td><td>\u0425\u04af\u04af\u0445\u0434\u0438\u0439\u043d \u043e\u0431\u044a\u0435\u043a\u0442 \u043d\u044c \u0431\u0438\u0435 \u0434\u0430\u0430\u0441\u0430\u043d \u0431\u0430\u0439\u0434\u0430\u0433.<\/td><\/tr><tr><td>\u0410\u043c\u044c\u0434\u0440\u0430\u043b\u044b\u043d \u043c\u04e9\u0447\u043b\u04e9\u0433 \u043d\u044c \u0445\u043e\u043e\u0440\u043e\u043d\u0434\u043e\u043e \u0445\u043e\u043b\u0431\u043e\u043e\u0442\u043e\u0439.<\/td><td>\u0410\u043c\u044c\u0434\u0440\u0430\u043b\u044b\u043d \u043c\u04e9\u0447\u043b\u04e9\u0433 \u043d\u044c \u0431\u0438\u0435 \u0434\u0430\u0430\u0441\u0430\u043d \u0431\u0430\u0439\u0434\u0430\u0433.<\/td><\/tr><tr><td>\u042d\u0446\u044d\u0433 \u044d\u0445 \u043d\u044c \u0445\u04af\u04af\u0445\u0434\u0438\u0439\u0433 \u0431\u04af\u0442\u044d\u044d\u0436, \u0443\u0434\u0438\u0440\u0434\u0434\u0430\u0433.<\/td><td>\u0425\u04af\u04af\u0445\u0434\u0438\u0439\u0433 \u044d\u0446\u044d\u0433 \u044d\u0445\u044d\u044d\u0441 \u0433\u0430\u0434\u0443\u0443\u0440 \u04af\u04af\u0441\u0433\u044d\u0436 \u0431\u043e\u043b\u043d\u043e.<\/td><\/tr><tr><td>\u0416\u0438\u0448\u044d\u044d: <code>Car<\/code> \u2013 <code>Engine<\/code><\/td><td>\u0416\u0438\u0448\u044d\u044d: <code>Library<\/code> \u2013 <code>Book<\/code><\/td><\/tr><\/tbody><\/table><\/figure>\n\n\n\n<h2 class=\"wp-block-heading\">4. Java \u0445\u04e9\u0433\u0436\u04af\u04af\u043b\u044d\u0433\u0447\u0438\u0439\u043d \u044f\u0440\u0438\u043b\u0446\u043b\u0430\u0433\u0430\u0434 \u0447\u0443\u0445\u0430\u043b<\/h2>\n\n\n\n<ul class=\"wp-block-list\">\n<li>\u0417\u043e\u0445\u0438\u043e\u043b &#8211; \u044d\u0445 \u043e\u0431\u044a\u0435\u043a\u0442 \u043d\u044c \u0445\u04af\u04af\u0445\u0434\u0438\u0439\u043d \u043e\u0431\u044a\u0435\u043a\u0442\u044b\u043d \u0430\u043c\u044c\u0434\u0440\u0430\u043b\u044b\u043d \u043c\u04e9\u0447\u043b\u04e9\u0433\u0438\u0439\u0433 \u0443\u0434\u0438\u0440\u0434\u0434\u0430\u0433 \u0445\u04af\u0447\u0442\u044d\u0439 \u0445\u0430\u0440\u0438\u043b\u0446\u0430\u0430.<\/li>\n\n\n\n<li>\u0410\u0433\u0440\u0435\u0433\u0430\u0446\u0438\u044f &#8211; \u0445\u04af\u04af\u0445\u044d\u0434 \u043e\u0431\u044a\u0435\u043a\u0442 \u043d\u044c \u044d\u0445 \u043e\u0431\u044a\u0435\u043a\u0442\u043e\u043e\u0441 \u04af\u043b \u0445\u0430\u043c\u0430\u0430\u0440\u0430\u043d \u043e\u0440\u0448\u0438\u043d \u0442\u043e\u0433\u0442\u043d\u043e\u0445 \u0431\u043e\u043b\u043e\u043c\u0436\u0442\u043e\u0439.<\/li>\n\n\n\n<li>\u0410\u043b\u044c \u0430\u043b\u044c \u043d\u044c \u0425\u043e\u043b\u0431\u043e\u043e\u043d\u044b \u0442\u04e9\u0440\u04e9\u043b \u044e\u043c.<\/li>\n\n\n\n<li>Java \u043d\u044c \u0417\u043e\u0445\u0438\u043e\u043b, \u043d\u044d\u0433\u0442\u0433\u044d\u043b\u0438\u0439\u043d \u0442\u0443\u0441\u0433\u0430\u0439 \u0442\u04af\u043b\u0445\u04af\u04af\u0440 \u04af\u0433\u0441\u044d\u044d\u0440 \u0445\u0430\u043d\u0433\u0430\u0434\u0430\u0433\u0433\u04af\u0439. \u0422\u044d\u0434\u0433\u044d\u044d\u0440\u0438\u0439\u0433 \u044d\u043d\u0433\u0438\u0439\u043d \u043e\u0431\u044a\u0435\u043a\u0442\u044b\u043d \u043b\u0430\u0432\u043b\u0430\u0433\u0430\u0430, \u0434\u0438\u0437\u0430\u0439\u043d\u044b \u0448\u0438\u0439\u0434\u0432\u044d\u0440\u044d\u044d\u0440 \u0445\u044d\u0440\u044d\u0433\u0436\u04af\u04af\u043b\u0434\u044d\u0433.<\/li>\n<\/ul>\n\n\n\n<p class=\"wp-block-paragraph\">\u0421\u0430\u043d\u0430\u0436 \u0431\u0430\u0439\u043d\u0430 \u0443\u0443: \u0417\u043e\u0445\u0438\u043e\u043b = \u0425\u04af\u0447\u0442\u044d\u0439 \u044d\u0437\u044d\u043c\u0448\u0438\u043b. \u041d\u044d\u0433\u0442\u0433\u044d\u0445 = \u0411\u0438\u0435 \u0434\u0430\u0430\u0441\u0430\u043d \u0430\u043c\u044c\u0434\u0440\u0430\u043b\u044b\u043d \u043c\u04e9\u0447\u043b\u04e9\u0433.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">\u0427\u0443\u0445\u0430\u043b \u0442\u043e\u0434\u0440\u0443\u0443\u043b\u0433\u0430: Java \u043d\u044c \u044d\u0445 \u043e\u0431\u044a\u0435\u043a\u0442\u044b\u0433 \u0443\u0441\u0442\u0433\u0430\u0445 \u04af\u0435\u0434 \u0445\u04af\u04af\u0445\u044d\u0434 \u043e\u0431\u044a\u0435\u043a\u0442\u044b\u0433 \u0430\u0432\u0442\u043e\u043c\u0430\u0442\u0430\u0430\u0440 \u0443\u0441\u0442\u0433\u0430\u0434\u0430\u0433\u0433\u04af\u0439. \u0425\u043e\u0433 \u0446\u0443\u0433\u043b\u0443\u0443\u043b\u0430\u0433\u0447 \u043d\u044c \u043e\u0431\u044a\u0435\u043a\u0442\u0443\u0443\u0434\u0430\u0434 \u0445\u043e\u043b\u0431\u043e\u0433\u0434\u043e\u0445 \u043b\u0430\u0432\u043b\u0430\u0433\u0430\u0430 \u0431\u0430\u0439\u0445\u0433\u04af\u0439 \u04af\u0435\u0434 \u0442\u044d\u0434\u0433\u044d\u044d\u0440\u0438\u0439\u0433 \u0447\u04e9\u043b\u04e9\u04e9\u043b\u0434\u04e9\u0433. \u0411\u04af\u0440\u044d\u043b\u0434\u044d\u0445\u04af\u04af\u043d \u0431\u0430 \u043d\u044d\u0433\u0442\u0433\u044d\u0445 \u043d\u044c \u0430\u0432\u0442\u043e\u043c\u0430\u0442 \u0443\u0441\u0442\u0433\u0430\u0445 \u043c\u0435\u0445\u0430\u043d\u0438\u0437\u043c \u0431\u0438\u0448 \u0445\u0430\u0440\u0438\u043d \u043b\u043e\u0433\u0438\u043a \u0434\u0438\u0437\u0430\u0439\u043d, \u04e9\u043c\u0447\u043b\u04e9\u043b\u0438\u0439\u0433 \u0442\u043e\u0434\u043e\u0440\u0445\u043e\u0439\u043b\u0434\u043e\u0433.<\/p>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h1 class=\"wp-block-heading\">\u0417\u044d\u0440\u044d\u0433\u0446\u044d\u044d \u0431\u0430\u0439\u0434\u0430\u043b \u0431\u0430 \u043f\u0430\u0440\u0430\u043b\u043b\u0435\u043b\u0438\u0437\u043c<\/h1>\n\n\n\n<p class=\"wp-block-paragraph\">Java \u0445\u044d\u043b \u0434\u044d\u044d\u0440 Concurrency \u0431\u043e\u043b\u043e\u043d Parallelism \u043d\u044c \u043e\u043b\u043e\u043d \u0430\u0436\u043b\u044b\u0433 \u0433\u04af\u0439\u0446\u044d\u0442\u0433\u044d\u0445 \u0445\u043e\u0451\u0440 \u04e9\u04e9\u0440 \u0430\u0440\u0433\u044b\u0433 \u0442\u0430\u0439\u043b\u0431\u0430\u0440\u043b\u0430\u0434\u0430\u0433.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">1. \u0417\u044d\u0440\u044d\u0433\u0446\u044d\u044d \u0431\u0430\u0439\u0434\u0430\u043b<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">\u0422\u043e\u0434\u043e\u0440\u0445\u043e\u0439\u043b\u043e\u043b\u0442: \u0417\u044d\u0440\u044d\u0433\u0446\u044d\u044d \u0433\u044d\u0434\u044d\u0433 \u043d\u044c \u0446\u0430\u0433 \u0445\u0443\u0433\u0430\u0446\u0430\u0430\u043d\u044b \u0434\u0430\u0432\u0445\u0446\u0430\u043b \u0434\u044d\u044d\u0440 \u0430\u0445\u0438\u0446 \u0434\u044d\u0432\u0448\u0438\u043b \u0433\u0430\u0440\u0447 \u0431\u0443\u0439 \u043e\u043b\u043e\u043d \u0430\u0436\u043b\u044b\u0433 \u0443\u0434\u0438\u0440\u0434\u0430\u0445\u044b\u0433 \u0445\u044d\u043b\u043d\u044d. \u0422\u044d\u0434\u0433\u044d\u044d\u0440\u0438\u0439\u0433 \u043d\u044d\u0433\u044d\u043d \u0437\u044d\u0440\u044d\u0433 \u0433\u04af\u0439\u0446\u044d\u0442\u0433\u044d\u0445 \u0430\u043b\u0431\u0430\u0433\u04af\u0439.<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>\u041e\u043b\u043e\u043d \u0442\u043e\u043e\u0442\u043e\u0439 \u0430\u0436\u0438\u043b\u043b\u0430\u0445\u0430\u0434 \u0430\u0448\u0438\u0433\u043b\u0430\u0434\u0430\u0433 <code>Threads<\/code> \u044d\u0441\u0432\u044d\u043b <code>ExecutorService<\/code>.<\/li>\n\n\n\n<li>CPU-\u0438\u0439\u043d \u0446\u04e9\u043c \u043d\u044c \u043a\u043e\u043d\u0442\u0435\u043a\u0441\u0442 \u0441\u043e\u043b\u0438\u0445 \u0437\u0430\u043c\u0430\u0430\u0440 \u04e9\u04e9\u0440 \u04e9\u04e9\u0440 \u0430\u0436\u043b\u0443\u0443\u0434\u044b\u043d \u0445\u043e\u043e\u0440\u043e\u043d\u0434 \u0448\u0438\u043b\u0436\u0438\u0445 \u0431\u043e\u043b\u043e\u043c\u0436\u0442\u043e\u0439.<\/li>\n\n\n\n<li>\u0413\u043e\u043b \u0437\u043e\u0440\u0438\u043b\u0433\u043e \u043d\u044c \u043e\u043b\u043e\u043d \u0430\u0436\u043b\u044b\u0433 \u04af\u0440 \u0434\u04af\u043d\u0442\u044d\u0439 \u0443\u0434\u0438\u0440\u0434\u0430\u0445 \u044f\u0432\u0434\u0430\u043b \u044e\u043c.<\/li>\n<\/ul>\n\n\n\n<p class=\"wp-block-paragraph\">\u0416\u0438\u0448\u044d\u044d: \u041d\u044d\u0433 \u0445\u044d\u043b\u0445\u044d\u044d \u043d\u044c \u04e8\u0433\u04e9\u0433\u0434\u043b\u0438\u0439\u043d \u0441\u0430\u043d\u0434 \u0445\u04af\u0441\u044d\u043b\u0442\u0438\u0439\u0433 \u0431\u043e\u043b\u043e\u0432\u0441\u0440\u0443\u0443\u043b\u0434\u0430\u0433 \u0431\u043e\u043b \u043d\u04e9\u0433\u04e9\u04e9 \u043d\u044c \u0445\u044d\u0440\u044d\u0433\u043b\u044d\u0433\u0447\u0438\u0439\u043d \u043e\u0440\u0443\u0443\u043b\u0441\u0430\u043d \u043c\u044d\u0434\u044d\u044d\u043b\u043b\u0438\u0439\u0433 \u0431\u043e\u043b\u043e\u0432\u0441\u0440\u0443\u0443\u043b\u0434\u0430\u0433.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">2. \u0417\u044d\u0440\u044d\u0433\u0446\u044d\u044d \u0431\u0430\u0439\u0434\u0430\u043b<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">\u0422\u043e\u0434\u043e\u0440\u0445\u043e\u0439\u043b\u043e\u043b\u0442: \u0417\u044d\u0440\u044d\u0433\u0446\u044d\u044d \u0431\u0430\u0439\u0434\u0430\u043b \u0433\u044d\u0434\u044d\u0433 \u043d\u044c \u0445\u044d\u0434 \u0445\u044d\u0434\u044d\u043d \u0430\u0436\u043b\u044b\u0433 \u043d\u044d\u0433\u044d\u043d \u0437\u044d\u0440\u044d\u0433 \u0433\u04af\u0439\u0446\u044d\u0442\u0433\u044d\u0445\u0438\u0439\u0433 \u0445\u044d\u043b\u043d\u044d.<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>\u042d\u043d\u044d \u043d\u044c \u0438\u0445\u044d\u0432\u0447\u043b\u044d\u043d \u043e\u043b\u043e\u043d CPU \u0446\u04e9\u043c \u0430\u0448\u0438\u0433\u043b\u0430\u0434\u0430\u0433.<\/li>\n\n\n\n<li>Java-\u0434 \u04af\u04af\u043d\u0438\u0439\u0433 \u0434\u0430\u043c\u0436\u0443\u0443\u043b\u0430\u043d \u0445\u044d\u0440\u044d\u0433\u0436\u04af\u04af\u043b\u0434\u044d\u0433 <code>ForkJoinPool<\/code> \u0431\u043e\u043b\u043e\u043d <code>parallelStream()<\/code>.<\/li>\n\n\n\n<li>\u0413\u043e\u043b \u0437\u043e\u0440\u0438\u043b\u0433\u043e \u043d\u044c \u0442\u043e\u043e\u0446\u043e\u043e\u043b\u043b\u044b\u0433 \u0437\u044d\u0440\u044d\u0433 \u0433\u04af\u0439\u0446\u044d\u0442\u0433\u044d\u0445 \u0437\u0430\u043c\u0430\u0430\u0440 \u0433\u04af\u0439\u0446\u044d\u0442\u0433\u044d\u043b\u0438\u0439\u0433 \u043d\u044d\u043c\u044d\u0433\u0434\u04af\u04af\u043b\u044d\u0445 \u044f\u0432\u0434\u0430\u043b \u044e\u043c.<\/li>\n<\/ul>\n\n\n\n<p class=\"wp-block-paragraph\">\u0416\u0438\u0448\u044d\u044d: \u0422\u043e\u043c \u0445\u044d\u043c\u0436\u044d\u044d\u043d\u0438\u0439 \u04e9\u0433\u04e9\u0433\u0434\u043b\u0438\u0439\u0433 \u04e9\u04e9\u0440 \u04e9\u04e9\u0440 CPU \u0446\u04e9\u043c\u04af\u04af\u0434 \u043d\u044d\u0433\u044d\u043d \u0437\u044d\u0440\u044d\u0433 \u0431\u043e\u043b\u043e\u0432\u0441\u0440\u0443\u0443\u043b\u0434\u0430\u0433 \u0445\u044d\u0434 \u0445\u044d\u0434\u044d\u043d \u0445\u044d\u0441\u044d\u0433\u0442 \u0445\u0443\u0432\u0430\u0430\u0445.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">3. \u0413\u043e\u043b \u044f\u043b\u0433\u0430\u0430\u043d\u0443\u0443\u0434<\/h2>\n\n\n\n<figure class=\"wp-block-table\"><table class=\"has-fixed-layout\"><tbody><tr><th>\u0417\u044d\u0440\u044d\u0433\u0446\u044d\u044d \u0431\u0430\u0439\u0434\u0430\u043b<\/th><th>\u041f\u0430\u0440\u0430\u043b\u043b\u0435\u043b\u0438\u0437\u043c<\/th><\/tr><tr><td>\u041e\u043b\u043e\u043d \u0430\u0436\u043b\u044b\u0433 \u0443\u0434\u0438\u0440\u0434\u0430\u0445.<\/td><td>\u041e\u043b\u043e\u043d \u0442\u043e\u043e\u043d\u044b \u0430\u0436\u043b\u044b\u0433 \u043d\u044d\u0433\u044d\u043d \u0437\u044d\u0440\u044d\u0433 \u0433\u04af\u0439\u0446\u044d\u0442\u0433\u044d\u0445.<\/td><\/tr><tr><td>\u042d\u043d\u044d \u043d\u044c \u043e\u043b\u043e\u043d CPU \u0446\u04e9\u043c \u0448\u0430\u0430\u0440\u0434\u0434\u0430\u0433\u0433\u04af\u0439.<\/td><td>\u0417\u044d\u0440\u044d\u0433\u0446\u044d\u044d \u0433\u04af\u0439\u0446\u044d\u0442\u0433\u044d\u043b\u0438\u0439\u043d \u0445\u0443\u0432\u044c\u0434 \u0442\u0435\u0445\u043d\u0438\u043a \u0445\u0430\u043d\u0433\u0430\u043c\u0436\u0438\u0439\u043d \u0447\u0430\u0434\u0432\u0430\u0440\u044b\u0433 \u0448\u0430\u0430\u0440\u0434\u0434\u0430\u0433.<\/td><\/tr><tr><td>\u0417\u043e\u0445\u0438\u0446\u0443\u0443\u043b\u0430\u043b\u0442, \u0434\u0430\u0430\u043b\u0433\u0430\u0432\u0440\u044b\u043d \u0443\u0434\u0438\u0440\u0434\u043b\u0430\u0433\u0430\u0434 \u0430\u043d\u0445\u0430\u0430\u0440\u043b\u0430\u0430 \u0445\u0430\u043d\u0434\u0443\u0443\u043b\u0430\u0430\u0440\u0430\u0439.<\/td><td>\u0413\u04af\u0439\u0446\u044d\u0442\u0433\u044d\u043b \u0431\u043e\u043b\u043e\u043d \u0434\u0430\u043c\u0436\u0443\u0443\u043b\u0430\u0445 \u0447\u0430\u0434\u0432\u0430\u0440\u0442 \u0430\u043d\u0445\u0430\u0430\u0440\u043b\u0430\u0430 \u0445\u0430\u043d\u0434\u0443\u0443\u043b\u0430\u0430\u0440\u0430\u0439.<\/td><\/tr><tr><td>\u042d\u043d\u044d \u043d\u044c \u043a\u043e\u043d\u0442\u0435\u043a\u0441\u0442 \u0441\u043e\u043b\u0438\u0445 \u0430\u0440\u0433\u044b\u0433 \u0430\u0448\u0438\u0433\u043b\u0430\u0436 \u0431\u043e\u043b\u043d\u043e.<\/td><td>\u0414\u0430\u0430\u043b\u0433\u0430\u0432\u0440\u0443\u0443\u0434\u044b\u0433 \u04e9\u04e9\u0440 \u04e9\u04e9\u0440 \u0446\u04e9\u043c \u0434\u044d\u044d\u0440 \u043d\u044d\u0433\u044d\u043d \u0437\u044d\u0440\u044d\u0433 \u0433\u04af\u0439\u0446\u044d\u0442\u0433\u044d\u0434\u044d\u0433.<\/td><\/tr><\/tbody><\/table><\/figure>\n\n\n\n<h2 class=\"wp-block-heading\">4. \u042d\u043d\u0433\u0438\u0439\u043d \u0436\u0438\u0448\u044d\u044d<\/h2>\n\n\n\n<ul class=\"wp-block-list\">\n<li>\u0417\u044d\u0440\u044d\u0433\u0446\u044d\u044d: \u0422\u043e\u0433\u043e\u043e\u0447 \u0445\u044d\u0434 \u0445\u044d\u0434\u044d\u043d \u0445\u043e\u043e\u043b\u044b\u0433 \u0445\u043e\u043e\u0440\u043e\u043d\u0434 \u043d\u044c \u0441\u043e\u043b\u044c\u0436 \u0431\u044d\u043b\u0442\u0433\u044d\u0434\u044d\u0433.<\/li>\n\n\n\n<li>\u0417\u044d\u0440\u044d\u0433\u0446\u044d\u044d \u0431\u0430\u0439\u0434\u0430\u043b: \u0425\u044d\u0434 \u0445\u044d\u0434\u044d\u043d \u0442\u043e\u0433\u043e\u043e\u0447 \u043d\u044d\u0433\u044d\u043d \u0437\u044d\u0440\u044d\u0433 \u04e9\u04e9\u0440 \u04e9\u04e9\u0440 \u0445\u043e\u043e\u043b \u0431\u044d\u043b\u0434\u0434\u044d\u0433.<\/li>\n<\/ul>\n\n\n\n<p class=\"wp-block-paragraph\">Java \u0445\u04e9\u0433\u0436\u04af\u04af\u043b\u044d\u0433\u0447\u0438\u0439\u043d \u044f\u0440\u0438\u043b\u0446\u043b\u0430\u0433\u0430\u0434 \u0447\u0443\u0445\u0430\u043b \u0430\u0447 \u0445\u043e\u043b\u0431\u043e\u0433\u0434\u043e\u043b\u0442\u043e\u0439:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>\u0417\u044d\u0440\u044d\u0433\u0446\u044d\u044d \u0431\u0430\u0439\u0434\u0430\u043b = \u041e\u043b\u043e\u043d \u0430\u0436\u043b\u044b\u0433 \u0448\u0438\u0439\u0434\u0432\u044d\u0440\u043b\u044d\u0445.<\/li>\n\n\n\n<li>\u0417\u044d\u0440\u044d\u0433\u0446\u044d\u044d \u0431\u0430\u0439\u0434\u0430\u043b = \u041e\u043b\u043e\u043d \u0430\u0436\u043b\u044b\u0433 \u0437\u044d\u0440\u044d\u0433 \u0445\u0438\u0439\u0445.<\/li>\n\n\n\n<li>\u0417\u044d\u0440\u044d\u0433\u0446\u044d\u044d \u0431\u0430\u0439\u0434\u0430\u043b \u043d\u044c \u043f\u0430\u0440\u0430\u043b\u043b\u0435\u043b\u0438\u0437\u043c\u0433\u04af\u0439\u0433\u044d\u044d\u0440 \u0431\u0430\u0439\u0436 \u0431\u043e\u043b\u043d\u043e.<\/li>\n\n\n\n<li>Parallelism \u043d\u044c \u0438\u0445\u044d\u0432\u0447\u043b\u044d\u043d Concurrency-\u0433 \u0430\u0448\u0438\u0433\u043b\u0430\u0434\u0430\u0433 \u0431\u043e\u043b\u043e\u0432\u0447 \u0445\u043e\u0451\u0440 \u043e\u0439\u043b\u0433\u043e\u043b\u0442 \u043d\u044c \u0438\u0436\u0438\u043b \u0431\u0438\u0448 \u044e\u043c.<\/li>\n<\/ul>\n\n\n\n<p class=\"wp-block-paragraph\">\u041d\u044d\u043c\u044d\u043b\u0442: \u0430\u043d\u0434\u0443\u0443\u0440\u0447 \u0431\u043e\u043b\u043e\u0445\u0433\u04af\u0439 <code>Concurrency<\/code> \u0445\u0430\u043c\u0442 <code>Thread Safety<\/code>. \u041e\u043b\u043e\u043d \u0445\u044d\u043b\u0445\u044d\u044d \u043d\u044c \u043d\u044d\u0433\u044d\u043d \u0437\u044d\u0440\u044d\u0433 \u0434\u0430\u0430\u043b\u0433\u0430\u0432\u0440\u0443\u0443\u0434\u044b\u0433 \u0433\u04af\u0439\u0446\u044d\u0442\u0433\u044d\u0436 \u0431\u0430\u0439\u0441\u0430\u043d \u0447 \u0445\u0443\u0432\u0430\u0430\u043b\u0446\u0441\u0430\u043d \u043d\u04e9\u04e9\u0446\u04e9\u0434 \u0437\u043e\u0445\u0438\u0445 \u0445\u0430\u043d\u0434\u0430\u043b\u0442\u044b\u0433 \u0445\u0430\u043d\u0433\u0430\u0445 \u0451\u0441\u0442\u043e\u0439 <code>synchronized<\/code>, <code>Lock<\/code>, <code>AtomicInteger<\/code> \u0431\u043e\u043b\u043e\u043d \u0431\u0443\u0441\u0430\u0434 \u043c\u0435\u0445\u0430\u043d\u0438\u0437\u043c\u0443\u0443\u0434.<\/p>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h1 class=\"wp-block-heading\">\u0421\u0438\u043d\u0445\u0440\u043e\u043d\u0447\u043b\u043e\u0433\u0434\u0441\u043e\u043d \u0446\u0443\u0433\u043b\u0443\u0443\u043b\u0433\u0443\u0443\u0434 \u0431\u0430 \u0437\u044d\u0440\u044d\u0433\u0446\u044d\u044d<\/h1>\n\n\n\n<p class=\"wp-block-paragraph\">Java \u0445\u044d\u043b \u0434\u044d\u044d\u0440 \u0445\u043e\u0451\u0440 \u0442\u04e9\u0440\u043b\u0438\u0439\u043d \u0446\u0443\u0433\u043b\u0443\u0443\u043b\u0433\u0443\u0443\u0434 \u043d\u044c Thread Safety-\u0438\u0439\u0433 \u0445\u0430\u043d\u0433\u0430\u0434\u0430\u0433 \u0431\u043e\u043b\u043e\u0432\u0447 \u043d\u044d\u0433\u044d\u043d \u0437\u044d\u0440\u044d\u0433 \u04e9\u0433\u04e9\u0433\u0434\u04e9\u043b\u0434 \u0445\u0430\u043d\u0434\u0430\u0445 \u0445\u0430\u043d\u0434\u0430\u043b\u0442\u044b\u0433 \u0443\u0434\u0438\u0440\u0434\u0430\u0445 \u04e9\u04e9\u0440 \u04e9\u04e9\u0440 \u043c\u0435\u0445\u0430\u043d\u0438\u0437\u043c\u0443\u0443\u0434\u044b\u0433 \u0430\u0448\u0438\u0433\u043b\u0430\u0434\u0430\u0433.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">1. \u0421\u0438\u043d\u0445\u0440\u043e\u043d \u0446\u0443\u0433\u043b\u0443\u0443\u043b\u0433\u0443\u0443\u0434<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">\u0422\u043e\u0434\u043e\u0440\u0445\u043e\u0439\u043b\u043e\u043b\u0442: \u042d\u0434\u0433\u044d\u044d\u0440 \u043d\u044c \u0430\u043d\u0433\u0438\u0430\u0441 \u0441\u0438\u043d\u0445\u0440\u043e\u043d\u0447\u043b\u043e\u0433\u0434\u0441\u043e\u043d \u0431\u043e\u043e\u0434\u043e\u043b \u0430\u0448\u0438\u0433\u043b\u0430\u043d \u043e\u0440\u043e\u043e\u0441\u043e\u043d \u0441\u0442\u0430\u043d\u0434\u0430\u0440\u0442 Java \u0446\u0443\u0433\u043b\u0443\u0443\u043b\u0433\u0443\u0443\u0434 \u044e\u043c <code>java.util.Collections<\/code>.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">\u0413\u043e\u043b \u043e\u043d\u0446\u043b\u043e\u0433\u0443\u0443\u0434:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>\u0422\u044d\u0434 \u0430\u0448\u0438\u0433\u043b\u0430\u0434\u0430\u0433 <code>intrinsic locks<\/code> (\u043c\u043e\u043d\u0438\u0442\u043e\u0440\u044b\u043d \u0442\u04af\u0433\u0436\u044d\u044d).<\/li>\n\n\n\n<li>\u0421\u0438\u043d\u0445\u0440\u043e\u043d\u0447\u043b\u043e\u0433\u0434\u0441\u043e\u043d \u0430\u0440\u0433\u044b\u0433 \u0434\u0443\u0443\u0434\u0430\u0445 \u04af\u0435\u0434 \u043d\u044d\u0433 \u0443\u0434\u0430\u0430\u0434 \u0437\u04e9\u0432\u0445\u04e9\u043d \u043d\u044d\u0433 \u0443\u0442\u0430\u0441 \u043d\u044c \u0431\u043e\u043e\u0434\u043e\u043b \u0434\u044d\u044d\u0440 \u0445\u0430\u0440\u0433\u0430\u043b\u0437\u0430\u0445 \u04af\u0439\u043b\u0434\u043b\u0438\u0439\u0433 \u0433\u04af\u0439\u0446\u044d\u0442\u0433\u044d\u0445 \u0431\u043e\u043b\u043e\u043c\u0436\u0442\u043e\u0439.<\/li>\n\n\n\n<li>\u04e8\u043d\u0434\u04e9\u0440 \u0437\u044d\u0440\u044d\u0433\u043b\u044d\u043b\u0438\u0439\u043d \u04af\u0435\u0434 \u0442\u044d\u0434 \u0441\u0430\u0430\u0434 \u0442\u043e\u0442\u0433\u043e\u0440 \u04af\u04af\u0441\u0433\u044d\u0436, \u0433\u04af\u0439\u0446\u044d\u0442\u0433\u044d\u043b\u0438\u0439\u0433 \u0431\u0443\u0443\u0440\u0443\u0443\u043b\u0434\u0430\u0433.<\/li>\n<\/ul>\n\n\n\n<p class=\"wp-block-paragraph\">\u0416\u0438\u0448\u044d\u044d \u043d\u044c:<\/p>\n\n\n<div class=\"wp-block-code\">\n\t<div class=\"cm-editor\">\n\t\t<div class=\"cm-scroller\">\n\t\t\t\n<pre>\n<code><div class=\"cm-line\">List&lt;String&gt; list =<\/div><div class=\"cm-line\">    Collections.synchronizedList(new ArrayList&lt;&gt;());<\/div><div class=\"cm-line\"><\/div><div class=\"cm-line\">Set&lt;String&gt; set =<\/div><div class=\"cm-line\">    Collections.synchronizedSet(new HashSet&lt;&gt;());<\/div><div class=\"cm-line\"><\/div><div class=\"cm-line\">Map&lt;String, Integer&gt; map =<\/div><div class=\"cm-line\">    Collections.synchronizedMap(new HashMap&lt;&gt;());<\/div><\/code><\/pre>\n\t\t<\/div>\n\t<\/div>\n<\/div>\n\n\n<p class=\"wp-block-paragraph\">\u0425\u044d\u0440\u044d\u0433\u043b\u044d\u044d\u043d\u0438\u0439 \u0442\u043e\u0445\u0438\u043e\u043b\u0434\u043e\u043b: \u042d\u043d\u0433\u0438\u0439\u043d Thread Safety \u0448\u0430\u0430\u0440\u0434\u043b\u0430\u0433\u0430\u0442\u0430\u0439 \u04af\u0435\u0434 \u0431\u0430\u0433\u0430 \u0437\u044d\u0440\u044d\u0433\u0442\u044d\u0439 \u043f\u0440\u043e\u0433\u0440\u0430\u043c\u0443\u0443\u0434\u0430\u0434 \u0442\u043e\u0445\u0438\u0440\u043e\u043c\u0436\u0442\u043e\u0439.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">\u0410\u043d\u0445\u0430\u0430\u0440\u0430\u0445 \u0437\u04af\u0439\u043b: -\u0442\u044d\u0439 \u0442\u0430\u043d\u0438\u043b\u0446\u0430\u0436 \u0431\u0430\u0439\u0445\u0434\u0430\u0430 <code>Iterator<\/code> \u0431\u0438\u0434 \u043d\u044d\u043c\u044d\u043b\u0442\u044d\u044d\u0440 \u0430\u0448\u0438\u0433\u043b\u0430\u0445 \u0451\u0441\u0442\u043e\u0439 <code>synchronized<\/code> \u0446\u0443\u0433\u043b\u0443\u0443\u043b\u0433\u0430 \u0434\u044d\u044d\u0440.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">2. \u0425\u0430\u043c\u0442\u0430\u0440\u0441\u0430\u043d \u0446\u0443\u0433\u043b\u0443\u0443\u043b\u0433\u0443\u0443\u0434<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">\u0422\u043e\u0434\u043e\u0440\u0445\u043e\u0439\u043b\u043e\u043b\u0442: \u042d\u0434\u0433\u044d\u044d\u0440 \u043d\u044c \u0431\u0430\u0433\u0446\u044b\u043d \u0442\u0443\u0441\u0433\u0430\u0439 Thread-Safe \u0446\u0443\u0433\u043b\u0443\u0443\u043b\u0433\u0443\u0443\u0434 \u044e\u043c <code>java.util.concurrent<\/code>, \u04e9\u043d\u0434\u04e9\u0440 \u0437\u044d\u0440\u044d\u0433\u043b\u044d\u043b\u0438\u0439\u043d \u0445\u044d\u0440\u044d\u0433\u043b\u044d\u044d\u043d\u0434 \u0437\u043e\u0440\u0438\u0443\u043b\u0430\u0433\u0434\u0441\u0430\u043d.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">\u0413\u043e\u043b \u043e\u043d\u0446\u043b\u043e\u0433\u0443\u0443\u0434:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>\u0422\u044d\u0434 \u043d\u0430\u0440\u0438\u0439\u043d \u0448\u0438\u0440\u0445\u044d\u0433\u0442\u044d\u0439 \u0442\u04af\u0433\u0436\u0438\u0445, \u0442\u04af\u0433\u0436\u0438\u0445\u0433\u04af\u0439 \u0430\u043b\u0433\u043e\u0440\u0438\u0442\u043c\u0443\u0443\u0434 \u0431\u043e\u043b\u043e\u043d \u0431\u0443\u0441\u0430\u0434 \u043e\u043d\u043e\u0432\u0447\u0442\u043e\u0439 \u043c\u0435\u0445\u0430\u043d\u0438\u0437\u043c\u0443\u0443\u0434\u044b\u0433 \u0430\u0448\u0438\u0433\u043b\u0430\u0434\u0430\u0433.<\/li>\n\n\n\n<li>\u041e\u043b\u043e\u043d \u0443\u0440\u0441\u0433\u0430\u043b\u0430\u0430\u0440 \u043d\u044d\u0433\u044d\u043d \u0437\u044d\u0440\u044d\u0433 \u0438\u043b\u04af\u04af \u04af\u0440 \u0434\u04af\u043d\u0442\u044d\u0439 \u043d\u044d\u0432\u0442\u0440\u044d\u0445 \u0431\u043e\u043b\u043e\u043c\u0436\u0438\u0439\u0433 \u043e\u043b\u0433\u043e\u0445.<\/li>\n\n\n\n<li>\u042d\u0434\u0433\u044d\u044d\u0440 \u043d\u044c \u0438\u0445\u044d\u0432\u0447\u043b\u044d\u043d \u04e9\u043d\u0434\u04e9\u0440 \u0437\u044d\u0440\u044d\u0433\u0446\u044d\u043d \u0430\u0436\u0438\u043b\u043b\u0430\u0445 \u0431\u043e\u043b\u043e\u043c\u0436\u0438\u0439\u0433 \u043e\u043b\u0433\u043e\u0434\u043e\u0433.<\/li>\n<\/ul>\n\n\n\n<p class=\"wp-block-paragraph\">\u0416\u0438\u0448\u044d\u044d \u043d\u044c:<\/p>\n\n\n\n<figure class=\"wp-block-table\"><table class=\"has-fixed-layout\"><tbody><tr><th>\u0410\u043d\u0433\u0438<\/th><th>\u0417\u043e\u0440\u0438\u043b\u0433\u043e<\/th><\/tr><tr><td><code>ConcurrentHashMap<\/code><\/td><td>Thread-Safe Map<\/td><\/tr><tr><td><code>ConcurrentLinkedQueue<\/code><\/td><td>\u0411\u043b\u043e\u043a\u043b\u043e\u0445\u0433\u04af\u0439 Thread-Safe Queue<\/td><\/tr><tr><td><code>CopyOnWriteArrayList<\/code><\/td><td>\u04e8\u04e9\u0440\u0447\u043b\u04e9\u043b\u0442 \u0431\u04af\u0440\u0442 \u0445\u0443\u0443\u043b\u0431\u0430\u0440\u044b\u043d \u0445\u0430\u043c\u0442 \u0436\u0430\u0433\u0441\u0430\u0430<\/td><\/tr><tr><td><code>CopyOnWriteArraySet<\/code><\/td><td>\u04e8\u04e9\u0440\u0447\u043b\u04e9\u043b\u0442 \u0431\u04af\u0440\u0442 \u0445\u0443\u0443\u043b\u0431\u0430\u0440\u0442\u0430\u0439 \u0442\u043e\u0445\u0438\u0440\u0443\u0443\u043b\u043d\u0430 \u0443\u0443<\/td><\/tr><tr><td><code>BlockingQueue<\/code><\/td><td>\u0411\u043b\u043e\u043a\u043b\u043e\u0445 \u04af\u0439\u043b\u0434\u043b\u04af\u04af\u0434\u0442\u044d\u0439 \u0434\u0430\u0440\u0430\u0430\u043b\u0430\u043b<\/td><\/tr><\/tbody><\/table><\/figure>\n\n\n\n<p class=\"wp-block-paragraph\">\u0425\u044d\u0440\u044d\u0433\u043b\u044d\u0445 \u0442\u043e\u0445\u0438\u043e\u043b\u0434\u043e\u043b: \u042d\u0434\u0433\u044d\u044d\u0440 \u043d\u044c \u043d\u044d\u0433\u044d\u043d \u0437\u044d\u0440\u044d\u0433 \u04e9\u0433\u04e9\u0433\u0434\u04e9\u043b\u0434 \u044d\u0440\u0447\u0438\u043c\u0442\u044d\u0439 \u0445\u0430\u043d\u0434\u0434\u0430\u0433 \u043e\u043b\u043e\u043d \u0443\u0440\u0441\u0433\u0430\u043b\u0442\u0430\u0439 \u043f\u0440\u043e\u0433\u0440\u0430\u043c\u0443\u0443\u0434\u0430\u0434 \u0442\u043e\u0445\u0438\u0440\u043e\u043c\u0436\u0442\u043e\u0439.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">3. \u0413\u043e\u043b \u044f\u043b\u0433\u0430\u0430\u043d\u0443\u0443\u0434<\/h2>\n\n\n\n<figure class=\"wp-block-table\"><table class=\"has-fixed-layout\"><tbody><tr><th>\u0410\u0441\u043f\u0435\u043a\u0442<\/th><th>\u0421\u0438\u043d\u0445\u0440\u043e\u043d\u0447\u043b\u043e\u0433\u0434\u0441\u043e\u043d \u0446\u0443\u0433\u043b\u0443\u0443\u043b\u0433\u0443\u0443\u0434<\/th><th>\u0425\u0430\u043c\u0442\u0430\u0440\u0441\u0430\u043d \u0446\u0443\u0433\u043b\u0443\u0443\u043b\u0433\u0443\u0443\u0434<\/th><\/tr><tr><td>Thread Safety<\/td><td>\u0422\u044d\u0434 \u0431\u043e\u043e\u0434\u043e\u043b \u0434\u044d\u044d\u0440\u0445 \u04af\u0439\u043b\u0434\u043b\u04af\u04af\u0434\u044d\u0434 \u0437\u043e\u0440\u0438\u0443\u043b\u0436 \u0434\u0443\u043d\u0434\u044b\u043d \u0442\u04af\u0433\u0436\u044d\u044d\u0433 \u0430\u0448\u0438\u0433\u043b\u0430\u0434\u0430\u0433.<\/td><td>\u0422\u044d\u0434 \u04e9\u04e9\u0440 \u04e9\u04e9\u0440 \u043e\u043d\u043e\u0432\u0447\u043b\u043e\u043b\u044b\u043d \u043c\u0435\u0445\u0430\u043d\u0438\u0437\u043c\u044b\u0433 \u0430\u0448\u0438\u0433\u043b\u0430\u0434\u0430\u0433.<\/td><\/tr><tr><td>\u0413\u04af\u0439\u0446\u044d\u0442\u0433\u044d\u043b<\/td><td>\u0417\u044d\u0440\u044d\u0433\u0446\u044d\u044d \u04e9\u043d\u0434\u04e9\u0440\u0442\u044d\u0439 \u0434\u043e\u043e\u0433\u0443\u0443\u0440.<\/td><td>\u0417\u044d\u0440\u044d\u0433\u0446\u044d\u044d \u04e9\u043d\u0434\u04e9\u0440\u0442\u044d\u0439 \u04af\u0435\u0434 \u0438\u0445\u044d\u0432\u0447\u043b\u044d\u043d \u04e9\u043d\u0434\u04e9\u0440 \u0431\u0430\u0439\u0434\u0430\u0433.<\/td><\/tr><tr><td>\u04e8\u0440\u0433\u04e9\u0442\u0433\u04e9\u0445 \u0447\u0430\u0434\u0432\u0430\u0440<\/td><td>\u041e\u043b\u043e\u043d \u0445\u044d\u043b\u0445\u044d\u044d\u0433\u044d\u044d\u0440 \u0445\u044f\u0437\u0433\u0430\u0430\u0440\u043b\u0430\u0433\u0434\u0441\u0430\u043d.<\/td><td>\u041e\u043b\u043e\u043d \u0443\u0442\u0430\u0441\u0442\u0430\u0439 \u0431\u043e\u043b \u0438\u043b\u04af\u04af \u0434\u044d\u044d\u0440.<\/td><\/tr><tr><td>\u0411\u0430\u0433\u0446<\/td><td><code>java.util.Collections<\/code><\/td><td><code>java.util.concurrent<\/code><\/td><\/tr><\/tbody><\/table><\/figure>\n\n\n\n<h2 class=\"wp-block-heading\">4. \u042e\u0443\u0433 \u0445\u044d\u0437\u044d\u044d \u0445\u044d\u0440\u044d\u0433\u043b\u044d\u0445 \u0432\u044d?<\/h2>\n\n\n\n<ul class=\"wp-block-list\">\n<li>\u0421\u0438\u043d\u0445\u0440\u043e\u043d\u0447\u043b\u043e\u0433\u0434\u0441\u043e\u043d \u0446\u0443\u0433\u043b\u0443\u0443\u043b\u0433\u0443\u0443\u0434: \u0417\u044d\u0440\u044d\u0433\u0446\u044d\u044d \u0431\u0430\u0433\u0430\u0442\u0430\u0439, \u044d\u043d\u0433\u0438\u0439\u043d \u0441\u0438\u043d\u0445\u0440\u043e\u043d\u0447\u043b\u043e\u043b \u0448\u0430\u0430\u0440\u0434\u043b\u0430\u0433\u0430\u0442\u0430\u0439 \u04af\u0435\u0434.<\/li>\n\n\n\n<li>\u0417\u044d\u0440\u044d\u0433\u0446\u0441\u044d\u043d \u0446\u0443\u0433\u043b\u0443\u0443\u043b\u0433\u0430: \u04e8\u043d\u0434\u04e9\u0440 \u0437\u044d\u0440\u044d\u0433\u043b\u044d\u043b\u0438\u0439\u043d \u04af\u0435\u0434, \u0433\u04af\u0439\u0446\u044d\u0442\u0433\u044d\u043b \u0431\u043e\u043b\u043e\u043d \u04e9\u0440\u0433\u04e9\u0442\u0433\u04e9\u0445 \u0447\u0430\u0434\u0432\u0430\u0440 \u0447\u0443\u0445\u0430\u043b \u04af\u0435\u0434.<\/li>\n<\/ul>\n\n\n\n<p class=\"wp-block-paragraph\">Java \u0445\u04e9\u0433\u0436\u04af\u04af\u043b\u044d\u0433\u0447\u0438\u0439\u043d \u044f\u0440\u0438\u043b\u0446\u043b\u0430\u0433\u0430\u0434 \u0447\u0443\u0445\u0430\u043b \u0430\u0447 \u0445\u043e\u043b\u0431\u043e\u0433\u0434\u043e\u043b\u0442\u043e\u0439:<\/p>\n\n\n\n<ol class=\"wp-block-list\">\n<li><code>Collections.synchronizedList()<\/code> \u0431\u043e\u043e\u0434\u043e\u043b\u043e\u043e\u0440 \u0434\u0430\u043c\u0436\u0443\u0443\u043b\u0430\u043d \u043d\u044d\u0432\u0442\u0440\u044d\u0445\u0438\u0439\u043d \u0442\u0443\u043b\u0434 \u0445\u0443\u0432\u0430\u0430\u043b\u0446\u0441\u0430\u043d \u0442\u04af\u0433\u0436\u044d\u044d\u0433 \u0430\u0448\u0438\u0433\u043b\u0430\u0434\u0430\u0433.<\/li>\n\n\n\n<li><code>ConcurrentHashMap<\/code> \u0413\u0430\u0437\u0440\u044b\u043d \u0437\u0443\u0440\u0430\u0433 \u0434\u044d\u044d\u0440 \u043d\u0438\u0439\u0442\u043b\u044d\u0433 \u0442\u04af\u0433\u0436\u044d\u044d\u0433\u04af\u0439\u0433\u044d\u044d\u0440 \u0437\u044d\u0440\u044d\u0433\u0446\u044d\u043d \u0430\u0436\u0438\u043b\u043b\u0430\u0445 \u0431\u043e\u043b\u043e\u043c\u0436\u0438\u0439\u0433 \u043e\u043b\u0433\u043e\u0434\u043e\u0433.<\/li>\n\n\n\n<li><code>CopyOnWriteArrayList<\/code> \u042d\u043d\u044d \u043d\u044c \u043e\u043b\u043e\u043d READ \u0431\u043e\u043b\u043e\u043d \u0446\u04e9\u04e9\u043d \u0411\u0418\u0427\u0418\u0425 \u04af\u0439\u043b\u0434\u043b\u04af\u04af\u0434\u044d\u0434 \u0442\u043e\u0445\u0438\u0440\u043e\u043c\u0436\u0442\u043e\u0439, \u0443\u0447\u0438\u0440 \u043d\u044c \u04e9\u04e9\u0440\u0447\u043b\u04e9\u043b\u0442 \u0431\u043e\u043b\u0433\u043e\u043d\u0434 \u0434\u043e\u0442\u043e\u043e\u0434 \u043c\u0430\u0441\u0441\u0438\u0432\u044b\u043d \u0448\u0438\u043d\u044d \u0445\u0443\u0443\u043b\u0431\u0430\u0440\u044b\u0433 \u04af\u04af\u0441\u0433\u044d\u0434\u044d\u0433.<\/li>\n\n\n\n<li>Thread-Safe \u0433\u044d\u0434\u044d\u0433 \u043d\u044c \u043e\u043b\u043e\u043d \u04af\u0439\u043b\u0434\u043b\u0438\u0439\u043d \u0434\u0430\u0440\u0430\u0430\u043b\u0430\u043b \u043d\u044c \u0430\u0442\u043e\u043c\u044b\u043d \u0448\u0438\u043d\u0436 \u0447\u0430\u043d\u0430\u0440\u0442\u0430\u0439 \u0433\u044d\u0441\u044d\u043d \u04af\u0433 \u0431\u0438\u0448 \u044e\u043c.<\/li>\n<\/ol>\n\n\n\n<p class=\"wp-block-paragraph\">\u0421\u0430\u043d\u0430\u0436 \u0431\u0430\u0439\u043d\u0430 \u0443\u0443: \u0421\u0438\u043d\u0445\u0440\u043e\u043d \u0446\u0443\u0433\u043b\u0443\u0443\u043b\u0433\u0443\u0443\u0434 = \u0425\u0443\u0432\u0430\u0430\u043b\u0446\u0441\u0430\u043d \u0442\u04af\u0433\u0436\u044d\u044d. \u0417\u044d\u0440\u044d\u0433\u0446\u044d\u044d \u0446\u0443\u0433\u043b\u0443\u0443\u043b\u0433\u0443\u0443\u0434 = \u041e\u043d\u043e\u0432\u0447\u0442\u043e\u0439 \u0437\u044d\u0440\u044d\u0433\u0446\u044d\u044d \u0445\u0430\u043d\u0434\u0430\u043b\u0442.<\/p>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h1 class=\"wp-block-heading\">\u0427\u0443\u0445\u0430\u043b \u0445\u044d\u0441\u044d\u0433<\/h1>\n\n\n\n<p class=\"wp-block-paragraph\">Java \u0434\u0430\u0445\u044c \u0447\u0443\u0445\u0430\u043b \u0445\u044d\u0441\u044d\u0433 \u043d\u044c \u043e\u043b\u043e\u043d \u0443\u0440\u0441\u0433\u0430\u043b\u044b\u043d \u0430\u0448\u0438\u0433\u043b\u0430\u0434\u0430\u0433 \u0425\u0443\u0432\u0430\u0430\u043b\u0446\u0441\u0430\u043d \u043d\u04e9\u04e9\u0446\u04e9\u0434 \u0445\u0430\u043d\u0434\u0430\u0445 \u044d\u0441\u0432\u044d\u043b \u04e9\u04e9\u0440\u0447\u043b\u04e9\u0445 \u043a\u043e\u0434\u044b\u043d \u0445\u044d\u0441\u044d\u0433 \u044e\u043c.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">\u0423\u0440\u0430\u043b\u0434\u0430\u0430\u043d\u044b \u043d\u04e9\u0445\u0446\u04e9\u043b, \u04af\u043b \u043d\u0438\u0439\u0446\u044d\u0445 \u04e9\u0433\u04e9\u0433\u0434\u04e9\u043b, \u0443\u0440\u044c\u0434\u0447\u0438\u043b\u0430\u043d \u0442\u0430\u0430\u043c\u0430\u0433\u043b\u0430\u0445 \u0431\u043e\u043b\u043e\u043c\u0436\u0433\u04af\u0439 \u04af\u0439\u043b\u0434\u044d\u043b \u0437\u044d\u0440\u044d\u0433 \u0430\u0441\u0443\u0443\u0434\u043b\u0430\u0430\u0441 \u0437\u0430\u0439\u043b\u0441\u0445\u0438\u0439\u0445\u0438\u0439\u043d \u0442\u0443\u043b\u0434 \u04af\u04af\u043d\u0438\u0439\u0433 \u043e\u043b\u043e\u043d \u0443\u0440\u0441\u0433\u0430\u043b\u0442\u0430\u0439 \u043e\u0440\u0447\u0438\u043d\u0434 \u0445\u0430\u043c\u0433\u0430\u0430\u043b\u0430\u0445 \u0451\u0441\u0442\u043e\u0439.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">1. \u0413\u043e\u043b \u043e\u0439\u043b\u0433\u043e\u043b\u0442\u0443\u0443\u0434<\/h2>\n\n\n\n<ol class=\"wp-block-list\">\n<li>\u0425\u0443\u0432\u0430\u0430\u043b\u0446\u0441\u0430\u043d \u043d\u04e9\u04e9\u0446\u04af\u04af\u0434: \u0425\u044d\u0434 \u0445\u044d\u0434\u044d\u043d \u0443\u0440\u0441\u0433\u0430\u043b\u0442 \u0445\u0430\u043d\u0434\u0430\u0445 \u0431\u043e\u043b\u043e\u043c\u0436\u0442\u043e\u0439 \u043d\u04e9\u04e9\u0446\u04af\u04af\u0434 (\u0445\u0443\u0432\u044c\u0441\u0430\u0433\u0447, \u043e\u0431\u044a\u0435\u043a\u0442, \u04e9\u0433\u04e9\u0433\u0434\u043b\u0438\u0439\u043d \u0431\u04af\u0442\u044d\u0446).<\/li>\n\n\n\n<li>Mutual Exclusion: \u0425\u0430\u043c\u0433\u0430\u0430\u043b\u0430\u0433\u0434\u0441\u0430\u043d \u0445\u044d\u0441\u0433\u0438\u0439\u0433 \u043d\u044d\u0433 \u0443\u0434\u0430\u0430\u0434 \u0437\u04e9\u0432\u0445\u04e9\u043d \u043d\u044d\u0433 \u0445\u044d\u043b\u0445\u044d\u044d \u0433\u04af\u0439\u0446\u044d\u0442\u0433\u044d\u0445 \u0431\u043e\u043b\u043e\u043c\u0436\u0442\u043e\u0439.<\/li>\n\n\n\n<li>\u0421\u0438\u043d\u0445\u0440\u043e\u043d\u0447\u043b\u043e\u043b: Java \u0437\u044d\u0440\u044d\u0433 \u043c\u0435\u0445\u0430\u043d\u0438\u0437\u043c\u0443\u0443\u0434\u044b\u0433 \u0445\u0430\u043d\u0433\u0430\u0434\u0430\u0433 <code>synchronized<\/code> \u0431\u043e\u043b\u043e\u043d <code>Locks<\/code> \u0427\u0443\u0445\u0430\u043b \u0445\u044d\u0441\u044d\u0433\u0442 \u0445\u0430\u043d\u0434\u0430\u0445 \u0445\u0430\u043d\u0434\u0430\u043b\u0442\u044b\u0433 \u0445\u044f\u043d\u0430\u0445.<\/li>\n<\/ol>\n\n\n\n<h2 class=\"wp-block-heading\">2. \u0416\u0438\u0448\u044d\u044d: \u0421\u0438\u043d\u0445\u0440\u043e\u043d\u0447\u043b\u043e\u0433\u0434\u0441\u043e\u043d \u0447\u0443\u0445\u0430\u043b \u0445\u044d\u0441\u044d\u0433<\/h2>\n\n\n<div class=\"wp-block-code\">\n\t<div class=\"cm-editor\">\n\t\t<div class=\"cm-scroller\">\n\t\t\t\n<pre>\n<code><div class=\"cm-line\">public class Counter {<\/div><div class=\"cm-line\">    private int count = 0;<\/div><div class=\"cm-line\"><\/div><div class=\"cm-line\">    public synchronized void increment() {<\/div><div class=\"cm-line\">        count++;<\/div><div class=\"cm-line\">    }<\/div><div class=\"cm-line\"><\/div><div class=\"cm-line\">    public synchronized int getCount() {<\/div><div class=\"cm-line\">        return count;<\/div><div class=\"cm-line\">    }<\/div><div class=\"cm-line\">}<\/div><\/code><\/pre>\n\t\t<\/div>\n\t<\/div>\n<\/div>\n\n\n<p class=\"wp-block-paragraph\">\u0422\u0430\u0439\u043b\u0431\u0430\u0440:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li><code>increment()<\/code> \u0431\u043e\u043b\u043e\u043d <code>getCount()<\/code> \u0441\u0438\u043d\u0445\u0440\u043e\u043d\u0447\u043b\u043e\u0433\u0434\u0441\u043e\u043d \u0430\u0440\u0433\u0443\u0443\u0434 \u044e\u043c.<\/li>\n\n\n\n<li><code>synchronized<\/code> \u0417\u04e9\u0432\u0445\u04e9\u043d \u043d\u044d\u0433 \u0443\u0440\u0441\u0433\u0430\u043b \u043d\u044c \u0438\u0436\u0438\u043b \u043e\u0431\u044a\u0435\u043a\u0442 \u0434\u044d\u044d\u0440 \u0441\u0438\u043d\u0445\u0440\u043e\u043d\u0447\u043b\u043e\u0433\u0434\u0441\u043e\u043d \u0430\u0440\u0433\u044b\u0433 \u043d\u044d\u0433\u044d\u043d \u0437\u044d\u0440\u044d\u0433 \u0433\u04af\u0439\u0446\u044d\u0442\u0433\u044d\u0445 \u0431\u043e\u043b\u043e\u043c\u0436\u0442\u043e\u0439.<\/li>\n\n\n\n<li>\u041e\u0431\u044a\u0435\u043a\u0442\u044b\u043d \u0434\u043e\u0442\u043e\u043e\u0434 \u0442\u04af\u0433\u0436\u044d\u044d\u0433 (Monitor Lock) \u0430\u0448\u0438\u0433\u043b\u0430\u0434\u0430\u0433.<\/li>\n\n\n\n<li>\u041d\u044d\u0432\u0442\u0440\u044d\u0445 \u04af\u0435\u0434 \u0443\u0440\u0430\u043b\u0434\u0430\u0430\u043d\u044b \u043d\u04e9\u0445\u0446\u043b\u04e9\u04e9\u0441 \u0441\u044d\u0440\u0433\u0438\u0439\u043b\u043d\u044d <code>count<\/code>.<\/li>\n<\/ul>\n\n\n\n<h2 class=\"wp-block-heading\">3. Java \u0434\u0430\u0445\u044c \u0441\u0438\u043d\u0445\u0440\u043e\u043d\u0447\u043b\u043e\u043b\u044b\u043d \u0431\u0443\u0441\u0430\u0434 \u0445\u044d\u0440\u044d\u0433\u0441\u043b\u04af\u04af\u0434<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">\u04ae\u04af\u043d\u044d\u044d\u0441 \u0431\u0443\u0441\u0430\u0434 \u043d\u044c <code>synchronized<\/code>, Java \u043d\u044c \u0431\u0443\u0441\u0430\u0434 \u043c\u0435\u0445\u0430\u043d\u0438\u0437\u043c\u0443\u0443\u0434\u044b\u0433 \u04e9\u0433\u0434\u04e9\u0433:<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">1. \u0422\u04af\u0433\u0436\u044d\u044d (<code>java.util.concurrent.locks<\/code>)<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">\u0416\u0438\u0448\u044d\u044d \u043d\u044c <code>ReentrantLock<\/code> \u0441\u0438\u043d\u0445\u0440\u043e\u043d\u0447\u043b\u043e\u043b\u044b\u0433 \u0443\u0434\u0438\u0440\u0434\u0430\u0445\u0430\u0434 \u0438\u043b\u04af\u04af \u0443\u044f\u043d \u0445\u0430\u0442\u0430\u043d \u0431\u0430\u0439\u0434\u043b\u044b\u0433 \u0445\u0430\u043d\u0433\u0430\u0434\u0430\u0433.<\/p>\n\n\n<div class=\"wp-block-code\">\n\t<div class=\"cm-editor\">\n\t\t<div class=\"cm-scroller\">\n\t\t\t\n<pre>\n<code><div class=\"cm-line\">Lock lock = new ReentrantLock();<\/div><div class=\"cm-line\"><\/div><div class=\"cm-line\">lock.lock();<\/div><div class=\"cm-line\">try {<\/div><div class=\"cm-line\">    \/\/ Critical Section<\/div><div class=\"cm-line\">} finally {<\/div><div class=\"cm-line\">    lock.unlock();<\/div><div class=\"cm-line\">}<\/div><\/code><\/pre>\n\t\t<\/div>\n\t<\/div>\n<\/div>\n\n\n<p class=\"wp-block-paragraph\">2. \u0410\u0442\u043e\u043c\u044b\u043d \u0445\u0443\u0432\u044c\u0441\u0430\u0433\u0447\u0438\u0434 (<code>java.util.concurrent.atomic<\/code>)<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">\u0416\u0438\u0448\u044d\u044d \u043d\u044c <code>AtomicInteger<\/code> \u0446\u043e\u043e\u0436\u044b\u0433 \u0442\u043e\u0434\u043e\u0440\u0445\u043e\u0439 \u0430\u0448\u0438\u0433\u043b\u0430\u0445\u0433\u04af\u0439\u0433\u044d\u044d\u0440 \u0430\u0442\u043e\u043c\u044b\u043d \u0431\u043e\u043b\u043e\u043d \u0443\u0440\u0441\u0433\u0430\u043b\u0442\u0430\u0439 \u0430\u044e\u0443\u043b\u0433\u04af\u0439 \u0430\u0436\u0438\u043b\u043b\u0430\u0433\u0430\u0430\u0433 \u0445\u0430\u043d\u0433\u0430\u0434\u0430\u0433.<\/p>\n\n\n<div class=\"wp-block-code\">\n\t<div class=\"cm-editor\">\n\t\t<div class=\"cm-scroller\">\n\t\t\t\n<pre>\n<code><div class=\"cm-line\">AtomicInteger count = new AtomicInteger(0);<\/div><div class=\"cm-line\"><\/div><div class=\"cm-line\">count.incrementAndGet();<\/div><\/code><\/pre>\n\t\t<\/div>\n\t<\/div>\n<\/div>\n\n\n<h2 class=\"wp-block-heading\">4. Java \u0445\u04e9\u0433\u0436\u04af\u04af\u043b\u044d\u0433\u0447\u0438\u0439\u043d \u044f\u0440\u0438\u043b\u0446\u043b\u0430\u0433\u0430\u0434 \u0447\u0443\u0445\u0430\u043b<\/h2>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Critical Section: \u0425\u0443\u0432\u0430\u0430\u043b\u0446\u0441\u0430\u043d \u043d\u04e9\u04e9\u0446\u0442\u044d\u0439 \u0430\u0436\u0438\u043b\u043b\u0430\u0434\u0430\u0433 \u043a\u043e\u0434\u044b\u043d \u0445\u044d\u0441\u044d\u0433.<\/li>\n\n\n\n<li>\u0422\u044d\u043c\u0446\u044d\u044d\u043d\u0438\u0439 \u043d\u04e9\u0445\u0446\u04e9\u043b: \u04ae\u0440 \u0434\u04af\u043d \u043d\u044c \u0445\u044d\u0434 \u0445\u044d\u0434\u044d\u043d \u0443\u0440\u0441\u0433\u0430\u043b\u044b\u043d \u04af\u0439\u043b\u0434\u043b\u04af\u04af\u0434\u0438\u0439\u043d \u0443\u0440\u044c\u0434\u0447\u0438\u043b\u0430\u043d \u0442\u0430\u0430\u0432\u0430\u0440\u043b\u0430\u0448\u0433\u04af\u0439 \u0445\u043e\u043b\u0431\u043e\u043b\u0442\u043e\u043e\u0441 \u0448\u0430\u043b\u0442\u0433\u0430\u0430\u043b\u043d\u0430.<\/li>\n\n\n\n<li>\u0425\u0430\u0440\u0438\u043b\u0446\u0430\u043d \u0445\u0430\u043c\u0430\u0430\u0440\u0430\u043b\u0433\u04af\u0439: \u041d\u044d\u0433 \u0443\u0434\u0430\u0430\u0434 \u0437\u04e9\u0432\u0445\u04e9\u043d \u043d\u044d\u0433 \u0445\u044d\u043b\u0445\u044d\u044d \u0445\u0430\u043c\u0433\u0430\u0430\u043b\u0430\u0433\u0434\u0441\u0430\u043d \u0445\u044d\u0441\u0433\u0438\u0439\u0433 \u0433\u04af\u0439\u0446\u044d\u0442\u0433\u044d\u0434\u044d\u0433.<\/li>\n\n\n\n<li>\u0421\u0438\u043d\u0445\u0440\u043e\u043d\u0447\u043b\u043e\u043b: \u0425\u0443\u0432\u0430\u0430\u043b\u0446\u0441\u0430\u043d \u043d\u04e9\u04e9\u0446\u04e9\u0434 \u0445\u0430\u043d\u0434\u0430\u0445 \u0445\u0430\u043d\u0434\u0430\u043b\u0442\u044b\u0433 \u0445\u044f\u043d\u0430\u0436, \u0448\u0430\u0430\u0440\u0434\u043b\u0430\u0433\u0430\u0442\u0430\u0439 \u0441\u0430\u043d\u0430\u0445 \u043e\u0439\u043d \u0445\u0430\u0440\u0430\u0433\u0434\u0430\u0445 \u0431\u0430\u0439\u0434\u043b\u044b\u0433 \u0445\u0430\u043d\u0433\u0430\u043d\u0430.<\/li>\n<\/ul>\n\n\n\n<p class=\"wp-block-paragraph\">\u0421\u0430\u043d\u0430\u0436 \u0431\u0430\u0439\u043d\u0430 \u0443\u0443: \u0427\u0443\u0445\u0430\u043b \u0445\u044d\u0441\u0433\u0438\u0439\u043d \u0437\u043e\u0440\u0438\u043b\u0433\u043e \u043d\u044c \u0445\u0443\u0432\u0430\u0430\u043b\u0446\u0441\u0430\u043d \u04e9\u0433\u04e9\u0433\u0434\u043b\u0438\u0439\u0433 \u043d\u044d\u0433\u044d\u043d \u0437\u044d\u0440\u044d\u0433 \u04af\u043b \u043d\u0438\u0439\u0446\u044d\u0445 \u04af\u0439\u043b\u0434\u043b\u044d\u044d\u0441 \u0445\u0430\u043c\u0433\u0430\u0430\u043b\u0430\u0445, \u04af\u0440 \u0434\u04af\u043d\u0433\u0438\u0439\u043d \u04af\u043d\u044d\u043d \u0437\u04e9\u0432 \u0431\u0430\u0439\u0434\u043b\u044b\u0433 \u0445\u0430\u043d\u0433\u0430\u0445 \u044f\u0432\u0434\u0430\u043b \u044e\u043c.<\/p>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h1 class=\"wp-block-heading\">Java \u0434\u0430\u0445\u044c \u0434\u0438\u043d\u0430\u043c\u0438\u043a \u0431\u0430 \u0441\u0442\u0430\u0442\u0438\u043a \u043f\u043e\u043b\u0438\u043c\u043e\u0440\u0444\u0438\u0437\u043c<\/h1>\n\n\n\n<p class=\"wp-block-paragraph\">\u041f\u043e\u043b\u0438\u043c\u043e\u0440\u0444\u0438\u0437\u043c \u043d\u044c \u041e\u0431\u044a\u0435\u043a\u0442 \u0445\u0430\u043d\u0434\u0430\u043b\u0442\u0430\u0442 \u043f\u0440\u043e\u0433\u0440\u0430\u043c\u0447\u043b\u0430\u043b\u044b\u043d (OOP) \u04af\u043d\u0434\u0441\u044d\u043d \u0437\u0430\u0440\u0447\u043c\u0443\u0443\u0434\u044b\u043d \u043d\u044d\u0433 \u044e\u043c. \u042d\u043d\u044d \u043d\u044c \u0438\u0436\u0438\u043b \u0430\u0440\u0433\u0430 \u044d\u0441\u0432\u044d\u043b \u043b\u0430\u0432\u043b\u0430\u0433\u0430\u0430 \u043d\u044c \u043d\u04e9\u0445\u0446\u04e9\u043b \u0431\u0430\u0439\u0434\u043b\u0430\u0430\u0441 \u0448\u0430\u043b\u0442\u0433\u0430\u0430\u043b\u0430\u043d \u04e9\u04e9\u0440 \u04e9\u04e9\u0440 \u0437\u0430\u043d \u0442\u04e9\u043b\u04e9\u0432\u0442\u044d\u0439 \u0431\u0430\u0439\u0445\u044b\u0433 \u0437\u04e9\u0432\u0448\u04e9\u04e9\u0440\u0434\u04e9\u0433.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Java-\u0434 \u043f\u043e\u043b\u0438\u043c\u043e\u0440\u0444\u0438\u0437\u043c\u044b\u043d \u0445\u043e\u0451\u0440 \u04af\u043d\u0434\u0441\u044d\u043d \u0442\u04e9\u0440\u04e9\u043b \u0431\u0430\u0439\u0434\u0430\u0433:<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">1. \u0421\u0442\u0430\u0442\u0438\u043a \u043f\u043e\u043b\u0438\u043c\u043e\u0440\u0444\u0438\u0437\u043c (\u042d\u043c\u0445\u044d\u0442\u0433\u044d\u0445 \u0446\u0430\u0433\u0438\u0439\u043d \u043f\u043e\u043b\u0438\u043c\u043e\u0440\u0444\u0438\u0437\u043c)<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">\u0410\u0440\u0433\u044b\u043d \u0441\u043e\u043d\u0433\u043e\u043b\u0442\u044b\u0433 \u044d\u043c\u0445\u044d\u0442\u0433\u044d\u0445 \u04af\u0435\u0434 \u0445\u0438\u0439\u0434\u044d\u0433 \u0442\u0443\u043b \u04af\u04af\u043d\u0438\u0439\u0433 \u044d\u043c\u0445\u044d\u0442\u0433\u044d\u0445 \u0446\u0430\u0433 \u0445\u0443\u0433\u0430\u0446\u0430\u0430\u043d\u044b \u043f\u043e\u043b\u0438\u043c\u043e\u0440\u0444\u0438\u0437\u043c \u0433\u044d\u0436 \u043d\u044d\u0440\u043b\u044d\u0434\u044d\u0433.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">\u042d\u043d\u044d \u043d\u044c \u0438\u0445\u044d\u0432\u0447\u043b\u044d\u043d \u0430\u0440\u0433\u044b\u043d \u0445\u044d\u0442 \u0430\u0447\u0430\u0430\u043b\u043b\u0430\u0430\u0440 \u0445\u044d\u0440\u044d\u0433\u0436\u0434\u044d\u0433.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">\u0410\u0440\u0433\u044b\u043d \u0445\u044d\u0442 \u0430\u0447\u0430\u0430\u043b\u0430\u043b: \u0425\u044d\u0434 \u0445\u044d\u0434\u044d\u043d \u0430\u0440\u0433\u0443\u0443\u0434 \u0438\u0436\u0438\u043b \u043d\u044d\u0440\u0442\u044d\u0439 \u0431\u043e\u043b\u043e\u0432\u0447 \u04e9\u04e9\u0440 \u04e9\u04e9\u0440 \u043f\u0430\u0440\u0430\u043c\u0435\u0442\u0440\u0442\u044d\u0439 (\u0442\u043e\u043e, \u0442\u04e9\u0440\u04e9\u043b, \u0434\u0430\u0440\u0430\u0430\u043b\u0430\u043b).<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">\u0416\u0438\u0448\u044d\u044d:<\/p>\n\n\n<div class=\"wp-block-code\">\n\t<div class=\"cm-editor\">\n\t\t<div class=\"cm-scroller\">\n\t\t\t\n<pre>\n<code><div class=\"cm-line\">class Calculator {<\/div><div class=\"cm-line\"><\/div><div class=\"cm-line\">    int add(int a, int b) {<\/div><div class=\"cm-line\">        return a + b;<\/div><div class=\"cm-line\">    }<\/div><div class=\"cm-line\"><\/div><div class=\"cm-line\">    double add(double a, double b) {<\/div><div class=\"cm-line\">        return a + b;<\/div><div class=\"cm-line\">    }<\/div><div class=\"cm-line\"><\/div><div class=\"cm-line\">    int add(int a, int b, int c) {<\/div><div class=\"cm-line\">        return a + b + c;<\/div><div class=\"cm-line\">    }<\/div><div class=\"cm-line\">}<\/div><\/code><\/pre>\n\t\t<\/div>\n\t<\/div>\n<\/div>\n\n\n<p class=\"wp-block-paragraph\">\u0425\u04e9\u0440\u0432\u04af\u04af\u043b\u044d\u0433\u0447 \u043d\u044c \u0434\u0430\u043c\u0436\u0443\u0443\u043b\u0441\u0430\u043d \u0430\u0440\u0433\u0443\u043c\u0435\u043d\u0442\u0443\u0443\u0434 \u0434\u044d\u044d\u0440 \u04af\u043d\u0434\u044d\u0441\u043b\u044d\u043d \u0430\u043b\u044c \u0430\u0440\u0433\u044b\u0433 \u0434\u0443\u0443\u0434\u0430\u0445\u044b\u0433 \u0442\u043e\u0434\u043e\u0440\u0445\u043e\u0439\u043b\u0434\u043e\u0433.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">2. \u0414\u0438\u043d\u0430\u043c\u0438\u043a \u043f\u043e\u043b\u0438\u043c\u043e\u0440\u0444\u0438\u0437\u043c (\u0410\u0436\u0438\u043b\u043b\u0430\u0445 \u04af\u0435\u0438\u0439\u043d \u043f\u043e\u043b\u0438\u043c\u043e\u0440\u0444\u0438\u0437\u043c)<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">\u0422\u043e\u0434\u043e\u0440\u0445\u043e\u0439 \u0430\u0440\u0433\u0430 \u043d\u044c \u0430\u0436\u0438\u043b\u043b\u0430\u0445 \u04af\u0435\u0434 \u0442\u043e\u0434\u043e\u0440\u0445\u043e\u0439\u043b\u043e\u0433\u0434\u0434\u043e\u0433 \u0442\u0443\u043b \u04af\u04af\u043d\u0438\u0439\u0433 Runtime Polymorphism \u0433\u044d\u0436 \u043d\u044d\u0440\u043b\u044d\u0434\u044d\u0433.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">\u04ae\u04af\u043d\u0438\u0439\u0433 Method Overriding \u0430\u0448\u0438\u0433\u043b\u0430\u043d \u0445\u044d\u0440\u044d\u0433\u0436\u04af\u04af\u043b\u0434\u044d\u0433.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">\u0410\u0440\u0433\u044b\u043d \u0445\u04af\u0447\u0438\u043d\u0433\u04af\u0439 \u0431\u043e\u043b\u0433\u043e\u0445: \u0414\u044d\u0434 \u0430\u043d\u0433\u0438 \u043d\u044c \u042d\u0446\u044d\u0433 \u044d\u0445 \u0430\u043d\u0433\u0438\u0430\u0441 \u0443\u0434\u0430\u043c\u0448\u0441\u0430\u043d \u0430\u0440\u0433\u044b\u043d \u04e9\u04e9\u0440\u0438\u0439\u043d \u0445\u044d\u0440\u044d\u0433\u0436\u0438\u043b\u0442\u0438\u0439\u0433 \u0445\u0430\u043d\u0433\u0430\u0434\u0430\u0433.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">\u0416\u0438\u0448\u044d\u044d:<\/p>\n\n\n<div class=\"wp-block-code\">\n\t<div class=\"cm-editor\">\n\t\t<div class=\"cm-scroller\">\n\t\t\t\n<pre>\n<code><div class=\"cm-line\">class Animal {<\/div><div class=\"cm-line\">    void makeSound() {<\/div><div class=\"cm-line\">        System.out.println(&quot;Animal sound&quot;);<\/div><div class=\"cm-line\">    }<\/div><div class=\"cm-line\">}<\/div><div class=\"cm-line\"><\/div><div class=\"cm-line\">class Dog extends Animal {<\/div><div class=\"cm-line\">    @Override<\/div><div class=\"cm-line\">    void makeSound() {<\/div><div class=\"cm-line\">        System.out.println(&quot;Bark&quot;);<\/div><div class=\"cm-line\">    }<\/div><div class=\"cm-line\">}<\/div><div class=\"cm-line\"><\/div><div class=\"cm-line\">Animal animal = new Dog();<\/div><div class=\"cm-line\">animal.makeSound(); \/\/ Bark<\/div><\/code><\/pre>\n\t\t<\/div>\n\t<\/div>\n<\/div>\n\n\n<p class=\"wp-block-paragraph\">\u0425\u044d\u0434\u0438\u0439\u0433\u044d\u044d\u0440 \u043b\u0430\u0432\u043b\u0430\u0433\u0430\u0430\u043d\u044b \u0442\u04e9\u0440\u04e9\u043b \u043d\u044c <code>Animal<\/code>, \u0431\u043e\u0434\u0438\u0442 \u043e\u0431\u044a\u0435\u043a\u0442 \u043d\u044c <code>Dog<\/code>. \u0422\u0438\u0439\u043c\u044d\u044d\u0441 JVM \u0434\u0443\u0443\u0434\u0434\u0430\u0433 <code>Dog<\/code> \u0445\u044d\u0440\u044d\u0433\u0436\u0438\u043b\u0442 <code>makeSound()<\/code>.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">3. \u0413\u043e\u043b \u044f\u043b\u0433\u0430\u0430\u043d\u0443\u0443\u0434<\/h2>\n\n\n\n<figure class=\"wp-block-table\"><table class=\"has-fixed-layout\"><tbody><tr><th>\u0410\u0441\u043f\u0435\u043a\u0442<\/th><th>\u0421\u0442\u0430\u0442\u0438\u043a \u043f\u043e\u043b\u0438\u043c\u043e\u0440\u0444\u0438\u0437\u043c<\/th><th>\u0414\u0438\u043d\u0430\u043c\u0438\u043a \u043f\u043e\u043b\u0438\u043c\u043e\u0440\u0444\u0438\u0437\u043c<\/th><\/tr><tr><td>\u0428\u0438\u0439\u0434\u0432\u044d\u0440 \u0433\u0430\u0440\u0433\u0430\u0445 \u0445\u0443\u0433\u0430\u0446\u0430\u0430<\/td><td>\u042d\u043c\u0445\u044d\u0442\u0433\u044d\u0445 \u0446\u0430\u0433<\/td><td>\u0410\u0436\u0438\u043b\u043b\u0430\u0445 \u0446\u0430\u0433<\/td><\/tr><tr><td>\u0416\u0438\u0448\u044d\u044d<\/td><td>\u0410\u0440\u0433\u044b\u043d \u0445\u044d\u0442 \u0430\u0447\u0430\u0430\u043b\u0430\u043b<\/td><td>\u0410\u0440\u0433\u044b\u0433 \u0434\u0430\u0440\u0430\u0445<\/td><\/tr><tr><td>BindingType<\/td><td>\u042d\u0440\u0442 \u0445\u043e\u043b\u0431\u043e\u0445<\/td><td>\u0425\u043e\u0436\u0443\u0443 \u0445\u043e\u043b\u0431\u043e\u043b\u0442<\/td><\/tr><tr><td>\u0410\u0440\u0433\u0430 \u0441\u043e\u043d\u0433\u043e\u0445<\/td><td>\u0413\u0430\u0440\u044b\u043d \u04af\u0441\u044d\u0433 \u0431\u043e\u043b\u043e\u043d \u0430\u0440\u0433\u0443\u043c\u0435\u043d\u0442\u0443\u0443\u0434\u044b\u043d \u0442\u04e9\u0440\u043b\u04af\u04af\u0434\u0438\u0439\u043d \u0434\u0430\u0433\u0443\u0443.<\/td><td>\u0411\u043e\u0434\u0438\u0442 \u043e\u0431\u044a\u0435\u043a\u0442\u044b\u043d \u0442\u04e9\u0440\u043b\u04e9\u04e9\u0440.<\/td><\/tr><\/tbody><\/table><\/figure>\n\n\n\n<h2 class=\"wp-block-heading\">4. Java \u0445\u04e9\u0433\u0436\u04af\u04af\u043b\u044d\u0433\u0447\u0438\u0439\u043d \u044f\u0440\u0438\u043b\u0446\u043b\u0430\u0433\u0430\u0434 \u0447\u0443\u0445\u0430\u043b<\/h2>\n\n\n\n<ul class=\"wp-block-list\">\n<li>\u0425\u044d\u0442 \u0430\u0447\u0430\u0430\u043b\u0430\u043b = \u041d\u044d\u0433 \u0430\u0440\u0433\u044b\u043d \u043d\u044d\u0440, \u04e9\u04e9\u0440 \u04e9\u04e9\u0440 \u043f\u0430\u0440\u0430\u043c\u0435\u0442\u0440\u04af\u04af\u0434.<\/li>\n\n\n\n<li>Overriding = \u0414\u044d\u0434 \u0430\u043d\u0433\u0438 \u043d\u044c \u0443\u0434\u0430\u043c\u0448\u0441\u0430\u043d \u0430\u0440\u0433\u044b\u043d \u0445\u044d\u0440\u044d\u0433\u0436\u0438\u043b\u0442\u0438\u0439\u0433 \u04e9\u04e9\u0440\u0447\u0438\u043b\u0434\u04e9\u0433.<\/li>\n\n\n\n<li><code>@Override<\/code> \u0410\u043d\u043d\u043e\u0442\u0430\u0446\u0438 \u043d\u044c \u0445\u04e9\u0440\u0432\u04af\u04af\u043b\u044d\u0433\u0447\u0438\u0434 \u0445\u04af\u0447\u0438\u043d\u0433\u04af\u0439 \u0431\u043e\u043b\u0433\u043e\u0436 \u0431\u0430\u0439\u0433\u0430\u0430 \u044d\u0441\u044d\u0445\u0438\u0439\u0433 \u0448\u0430\u043b\u0433\u0430\u0445\u0430\u0434 \u0442\u0443\u0441\u0430\u043b\u0434\u0430\u0433.<\/li>\n\n\n\n<li><code>static<\/code>, <code>private<\/code> \u0431\u043e\u043b\u043e\u043d <code>final<\/code> \u0430\u0440\u0433\u0443\u0443\u0434 \u043d\u044c \u0435\u0440\u0434\u0438\u0439\u043d \u0436\u0438\u0448\u044d\u044d\u043d\u0438\u0439 \u0430\u0440\u0433\u0443\u0443\u0434\u0442\u0430\u0439 \u0430\u0434\u0438\u043b \u0434\u0438\u043d\u0430\u043c\u0438\u043a \u0430\u0440\u0433\u044b\u043d \u0438\u043b\u0433\u044d\u044d\u043b\u0442\u044d\u0434 \u043e\u0440\u043e\u043b\u0446\u0434\u043e\u0433\u0433\u04af\u0439.<\/li>\n<\/ul>\n\n\n\n<p class=\"wp-block-paragraph\">\u0427\u0443\u0445\u0430\u043b \u0442\u043e\u0434\u0440\u0443\u0443\u043b\u0433\u0430: \u0421\u0442\u0430\u0442\u0438\u043a \u043f\u043e\u043b\u0438\u043c\u043e\u0440\u0444\u0438\u0437\u043c\u044b\u043d \u0442\u0443\u0441\u043b\u0430\u043c\u0436\u0442\u0430\u0439\u0433\u0430\u0430\u0440 \u0445\u044d\u0442 \u0430\u0447\u0430\u0430\u043b\u0430\u043b\u0442\u0430\u0439 \u0430\u0440\u0433\u044b\u0433 \u044d\u043c\u0445\u044d\u0442\u0433\u044d\u0445 \u044f\u0432\u0446\u0430\u0434 \u043c\u044d\u0434\u044d\u0433\u0434\u044d\u0436 \u0431\u0443\u0439 \u0442\u04e9\u0440\u043b\u04af\u04af\u0434\u0438\u0439\u043d \u0434\u0430\u0433\u0443\u0443 \u0445\u0438\u0439\u0434\u044d\u0433. \u0414\u0438\u043d\u0430\u043c\u0438\u043a \u041f\u043e\u043b\u0438\u043c\u043e\u0440\u0444\u0438\u0437\u043c\u044b\u043d \u0442\u0443\u0441\u043b\u0430\u043c\u0436\u0442\u0430\u0439\u0433\u0430\u0430\u0440 JVM \u043d\u044c \u0431\u043e\u0434\u0438\u0442 \u043e\u0431\u044a\u0435\u043a\u0442\u044b\u043d \u0442\u04e9\u0440\u043b\u04e9\u04e9\u0441 \u0445\u0430\u043c\u0430\u0430\u0440\u0430\u043d \u0430\u043b\u044c \u0434\u0430\u0440\u0430\u0433\u0434\u0441\u0430\u043d \u0442\u043e\u0445\u0438\u043e\u043b\u0434\u043b\u044b\u043d \u0430\u0440\u0433\u044b\u043d \u0445\u044d\u0440\u044d\u0433\u0436\u0438\u043b\u0442\u0438\u0439\u0433 \u0433\u04af\u0439\u0446\u044d\u0442\u0433\u044d\u0445\u0438\u0439\u0433 \u0442\u043e\u0434\u043e\u0440\u0445\u043e\u0439\u043b\u0434\u043e\u0433.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">\u0421\u0430\u043d\u0430\u0436 \u0431\u0430\u0439\u043d\u0430 \u0443\u0443:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>\u0421\u0442\u0430\u0442\u0438\u043a \u043f\u043e\u043b\u0438\u043c\u043e\u0440\u0444\u0438\u0437\u043c \u2192 \u0410\u0440\u0433\u044b\u043d \u0445\u044d\u0442 \u0430\u0447\u0430\u0430\u043b\u0430\u043b \u2192 \u042d\u043c\u0445\u044d\u0442\u0433\u044d\u0445 \u0446\u0430\u0433.<\/li>\n\n\n\n<li>\u0414\u0438\u043d\u0430\u043c\u0438\u043a \u043f\u043e\u043b\u0438\u043c\u043e\u0440\u0444\u0438\u0437\u043c \u2192 \u0410\u0440\u0433\u0430 \u0434\u0430\u0440\u0430\u0445 \u2192 \u0410\u0436\u0438\u043b\u043b\u0430\u0445 \u0446\u0430\u0433.<\/li>\n<\/ul>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h1 class=\"wp-block-heading\">\u0424\u0443\u043d\u043a\u0446\u0438\u043e\u043d\u0430\u043b\u044c \u0438\u043d\u0442\u0435\u0440\u0444\u0435\u0439\u0441<\/h1>\n\n\n\n<p class=\"wp-block-paragraph\">Java \u0445\u044d\u043b \u0434\u044d\u044d\u0440\u0445 \u0444\u0443\u043d\u043a\u0446\u0438\u043e\u043d\u0430\u043b\u044c \u0438\u043d\u0442\u0435\u0440\u0444\u044d\u0439\u0441 \u043d\u044c \u044f\u0433 \u043d\u044d\u0433 \u0445\u0438\u0439\u0441\u0432\u044d\u0440 \u0430\u0440\u0433\u0430\u0442\u0430\u0439 (SAM \u2013 Single Abstract Method) \u0438\u043d\u0442\u0435\u0440\u0444\u0435\u0439\u0441 \u044e\u043c.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">\u042d\u043d\u044d \u043d\u044c \u0433\u043e\u043b\u0447\u043b\u043e\u043d Lambda \u0438\u043b\u044d\u0440\u0445\u0438\u0439\u043b\u044d\u043b \u0431\u043e\u043b\u043e\u043d \u0430\u0440\u0433\u044b\u043d \u043b\u0430\u0432\u043b\u0430\u0433\u0430\u0430\u0442\u0430\u0439 \u043a\u043e\u0434\u044b\u0433 \u0431\u043e\u0433\u0438\u043d\u043e\u0441\u0433\u043e\u0436, \u0443\u043d\u0448\u0438\u0445 \u0431\u043e\u043b\u043e\u043c\u0436\u0442\u043e\u0439 \u0431\u043e\u043b\u0433\u043e\u0445, \u0444\u0443\u043d\u043a\u0446\u0438\u043e\u043d\u0430\u043b\u044c \u043f\u0440\u043e\u0433\u0440\u0430\u043c\u0447\u043b\u0430\u043b\u044b\u0433 \u0434\u044d\u043c\u0436\u0438\u0445 \u0437\u043e\u0440\u0438\u043b\u0433\u043e\u043e\u0440 \u0430\u0448\u0438\u0433\u043b\u0430\u0433\u0434\u0434\u0430\u0433.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">1. \u04ae\u043d\u0434\u0441\u044d\u043d \u0448\u0438\u043d\u0436 \u0447\u0430\u043d\u0430\u0440\u0443\u0443\u0434<\/h2>\n\n\n\n<ol class=\"wp-block-list\">\n<li>\u041d\u044d\u0433 \u0445\u0438\u0439\u0441\u0432\u044d\u0440 \u0430\u0440\u0433\u0430: \u0424\u0443\u043d\u043a\u0446\u0438\u043e\u043d\u0430\u043b\u044c \u0438\u043d\u0442\u0435\u0440\u0444\u0435\u0439\u0441 \u043d\u044c \u044f\u0433 \u043d\u044d\u0433 \u0445\u0438\u0439\u0441\u0432\u044d\u0440 \u0430\u0440\u0433\u0430\u0442\u0430\u0439 \u0431\u0430\u0439\u0445 \u0451\u0441\u0442\u043e\u0439.<\/li>\n\n\n\n<li>\u04e8\u0433\u04e9\u0433\u0434\u043c\u04e9\u043b \u0431\u043e\u043b\u043e\u043d \u0441\u0442\u0430\u0442\u0438\u043a \u0430\u0440\u0433\u0443\u0443\u0434: \u0430\u0433\u0443\u0443\u043b\u0436 \u0431\u043e\u043b\u043d\u043e <code>default<\/code> \u0431\u043e\u043b\u043e\u043d <code>static<\/code> \u0430\u0440\u0433\u0443\u0443\u0434\u044b\u0433 \u043d\u044d\u0433 \u0445\u0438\u0439\u0441\u0432\u044d\u0440 \u0430\u0440\u0433\u0430\u0434 \u0442\u043e\u043e\u0446\u043e\u0445\u0433\u04af\u0439\u0433\u044d\u044d\u0440.<\/li>\n\n\n\n<li>@FunctionalInterface \u0410\u043d\u043d\u043e\u0442\u0430\u0446\u0438: \u0418\u043d\u0442\u0435\u0440\u0444\u044d\u0439\u0441 \u043d\u044c \u0444\u0443\u043d\u043a\u0446\u0438\u043e\u043d\u0430\u043b\u044c \u0438\u043d\u0442\u0435\u0440\u0444\u044d\u0439\u0441 \u0431\u0430\u0439\u0445 \u0437\u043e\u0440\u0438\u043b\u0433\u044b\u0433 \u0438\u043b\u044d\u0440\u0445\u0438\u0439\u043b\u0434\u044d\u0433 \u043d\u044d\u043c\u044d\u043b\u0442 \u0442\u0430\u0439\u043b\u0431\u0430\u0440. \u0425\u04e9\u0440\u0432\u04af\u04af\u043b\u044d\u0433\u0447 \u043d\u044c \u044f\u0433 \u043d\u044d\u0433 \u0445\u0438\u0439\u0441\u0432\u044d\u0440 \u0430\u0440\u0433\u0430 \u0431\u0430\u0439\u0433\u0430\u0430 \u044d\u0441\u044d\u0445\u0438\u0439\u0433 \u0448\u0430\u043b\u0433\u0430\u0434\u0430\u0433.<\/li>\n<\/ol>\n\n\n\n<h2 class=\"wp-block-heading\">2. \u0416\u0438\u0448\u044d\u044d<\/h2>\n\n\n<div class=\"wp-block-code\">\n\t<div class=\"cm-editor\">\n\t\t<div class=\"cm-scroller\">\n\t\t\t\n<pre>\n<code><div class=\"cm-line\">@FunctionalInterface<\/div><div class=\"cm-line\">interface Calculator {<\/div><div class=\"cm-line\">    int calculate(int a, int b);<\/div><div class=\"cm-line\">}<\/div><div class=\"cm-line\"><\/div><div class=\"cm-line\">public class Main {<\/div><div class=\"cm-line\">    public static void main(String[] args) {<\/div><div class=\"cm-line\"><\/div><div class=\"cm-line\">        Calculator addition = (a, b) -&gt; a + b;<\/div><div class=\"cm-line\"><\/div><div class=\"cm-line\">        System.out.println(addition.calculate(5, 3));<\/div><div class=\"cm-line\">    }<\/div><div class=\"cm-line\">}<\/div><\/code><\/pre>\n\t\t<\/div>\n\t<\/div>\n<\/div>\n\n\n<p class=\"wp-block-paragraph\">\u04ae\u0440 \u0434\u04af\u043d: <code>8<\/code><\/p>\n\n\n\n<p class=\"wp-block-paragraph\">\u042d\u043d\u0434:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li><code>Calculator<\/code> \u043d\u044d\u0433 \u0445\u0438\u0439\u0441\u0432\u044d\u0440 \u0430\u0440\u0433\u0430\u0442\u0430\u0439 &#8211; <code>calculate()<\/code>.<\/li>\n\n\n\n<li><code>(a, b) -&gt; a + b<\/code> \u043d\u044c \u041b\u0430\u043c\u0431\u0434\u0430 \u0438\u043b\u044d\u0440\u0445\u0438\u0439\u043b\u044d\u043b \u044e\u043c.<\/li>\n\n\n\n<li>Lambda Expression \u043d\u044c \u0445\u044d\u0440\u044d\u0433\u0436\u0438\u043b\u0442\u0438\u0439\u0433 \u0445\u0430\u043d\u0433\u0430\u0434\u0430\u0433 <code>calculate()<\/code>.<\/li>\n<\/ul>\n\n\n\n<h2 class=\"wp-block-heading\">3. Java \u0445\u044d\u043b \u0434\u044d\u044d\u0440\u0445 \u043d\u0438\u0439\u0442\u043b\u044d\u0433 \u0444\u0443\u043d\u043a\u0446\u0438\u043e\u043d\u0430\u043b\u044c \u0438\u043d\u0442\u0435\u0440\u0444\u0435\u0439\u0441\u04af\u04af\u0434<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">Java \u043d\u044c \u0431\u0430\u0433\u0446\u0430\u0434 \u0431\u044d\u043b\u044d\u043d \u0424\u0443\u043d\u043a\u0446\u0438\u043e\u043d\u0430\u043b\u044c \u0438\u043d\u0442\u0435\u0440\u0444\u044d\u0439\u0441\u04af\u04af\u0434\u0438\u0439\u0433 \u04e9\u0433\u0434\u04e9\u0433 <code>java.util.function<\/code>.<\/p>\n\n\n\n<figure class=\"wp-block-table\"><table class=\"has-fixed-layout\"><tbody><tr><th>\u0418\u043d\u0442\u0435\u0440\u0444\u044d\u0439\u0441<\/th><th>\u041e\u0440\u043e\u043b\u0442<\/th><th>\u0413\u0430\u0440\u0430\u043b\u0442<\/th><th>\u0417\u043e\u0440\u0438\u043b\u0433\u043e<\/th><\/tr><tr><td><code>Predicate&lt;T&gt;<\/code><\/td><td>\u0422<\/td><td>\u043b\u043e\u0433\u0438\u043a<\/td><td>\u041d\u04e9\u0445\u0446\u04e9\u043b \u0431\u0430\u0439\u0434\u043b\u044b\u043d \u0448\u0430\u043b\u0433\u0430\u043b\u0442.<\/td><\/tr><tr><td><code>Function&lt;T, R&gt;<\/code><\/td><td>\u0422<\/td><td>\u0420<\/td><td>\u0423\u0442\u0433\u0430 \u0445\u04e9\u0440\u0432\u04af\u04af\u043b\u044d\u043b\u0442.<\/td><\/tr><tr><td><code>Supplier&lt;T&gt;<\/code><\/td><td>\u0411\u0430\u0439\u0445\u0433\u04af\u0439<\/td><td>\u0422<\/td><td>\u042d\u043d\u044d \u043d\u044c \u04af\u043d\u044d \u0446\u044d\u043d\u0438\u0439\u0433 \u04e9\u0433\u0434\u04e9\u0433.<\/td><\/tr><tr><td><code>Consumer&lt;T&gt;<\/code><\/td><td>\u0422<\/td><td>\u0445\u04af\u0447\u0438\u043d\u0433\u04af\u0439<\/td><td>\u0423\u0442\u0433\u0430 \u0434\u044d\u044d\u0440 \u04af\u0439\u043b\u0434\u043b\u0438\u0439\u0433 \u0433\u04af\u0439\u0446\u044d\u0442\u0433\u044d\u0434\u044d\u0433.<\/td><\/tr><tr><td><code>BiFunction&lt;T, U, R&gt;<\/code><\/td><td>\u0422, \u0423<\/td><td>\u0420<\/td><td>\u042d\u043d\u044d \u043d\u044c \u0445\u043e\u0451\u0440 \u0430\u0440\u0433\u0443\u043c\u0435\u043d\u0442 \u0430\u0432\u0447 \u04af\u0440 \u0434\u04af\u043d\u0433 \u0431\u0443\u0446\u0430\u0430\u043d\u0430.<\/td><\/tr><\/tbody><\/table><\/figure>\n\n\n\n<h2 class=\"wp-block-heading\">4. Java \u0445\u04e9\u0433\u0436\u04af\u04af\u043b\u044d\u0433\u0447\u0438\u0439\u043d \u044f\u0440\u0438\u043b\u0446\u043b\u0430\u0433\u0430\u0434 \u0447\u0443\u0445\u0430\u043b<\/h2>\n\n\n\n<ul class=\"wp-block-list\">\n<li>\u0424\u0443\u043d\u043a\u0446\u0438\u043e\u043d\u0430\u043b\u044c \u0438\u043d\u0442\u0435\u0440\u0444\u0435\u0439\u0441 = \u042f\u0433 \u043d\u044d\u0433 \u0445\u0438\u0439\u0441\u0432\u044d\u0440 \u0430\u0440\u0433\u0430.<\/li>\n\n\n\n<li>\u041b\u0430\u043c\u0431\u0434\u0430 \u0438\u043b\u044d\u0440\u0445\u0438\u0439\u043b\u044d\u043b \u0431\u0430 \u0430\u0440\u0433\u044b\u043d \u043b\u0430\u0432\u043b\u0430\u0433\u0430\u0430\u043d\u0434 \u0430\u0448\u0438\u0433\u043b\u0430\u0433\u0434\u0434\u0430\u0433.<\/li>\n\n\n\n<li><code>@FunctionalInterface<\/code> \u0448\u0430\u0430\u0440\u0434\u043b\u0430\u0433\u0430\u0433\u04af\u0439, \u0433\u044d\u0445\u0434\u044d\u044d \u0445\u04e9\u0440\u0432\u04af\u04af\u043b\u044d\u0433\u0447\u0438\u0439\u0433 \u0448\u0430\u043b\u0433\u0430\u0445\u0430\u0434 \u0442\u0443\u0441\u0430\u043b\u0434\u0430\u0433.<\/li>\n\n\n\n<li>\u042d\u043d\u044d \u043d\u044c \u043e\u043b\u043e\u043d \u0437\u04af\u0439\u043b\u0438\u0439\u0433 \u0430\u0433\u0443\u0443\u043b\u0436 \u0431\u043e\u043b\u043d\u043e <code>default<\/code> \u0431\u043e\u043b\u043e\u043d <code>static<\/code> \u0430\u0440\u0433\u0443\u0443\u0434.<\/li>\n\n\n\n<li>\u041d\u0438\u0439\u0442\u0438\u0439\u043d \u0430\u0440\u0433\u0443\u0443\u0434\u0442\u0430\u0439 \u0442\u043e\u0445\u0438\u0440\u043e\u0445 \u0430\u0440\u0433\u0443\u0443\u0434\u0430\u0430\u0441 <code>Object<\/code> (\u0436\u0438\u0448\u044d\u044d \u043d\u044c <code>toString()<\/code>), \u043d\u044d\u043c\u044d\u043b\u0442 \u0445\u0438\u0439\u0441\u0432\u044d\u0440 \u0430\u0440\u0433\u0430 \u0433\u044d\u0436 \u0442\u043e\u043e\u0446\u043e\u0436 \u0431\u043e\u043b\u043e\u0445\u0433\u04af\u0439.<\/li>\n<\/ul>\n\n\n\n<p class=\"wp-block-paragraph\">\u0421\u0430\u043d\u0430\u0436 \u0431\u0430\u0439\u043d\u0430 \u0443\u0443: \u0424\u0443\u043d\u043a\u0446\u0438\u043e\u043d\u0430\u043b\u044c \u0438\u043d\u0442\u0435\u0440\u0444\u044d\u0439\u0441 \u043d\u044c Java \u0445\u044d\u043b \u0434\u044d\u044d\u0440\u0445 Lambda \u0438\u043b\u044d\u0440\u0445\u0438\u0439\u043b\u043b\u0438\u0439\u043d \u04af\u043d\u0434\u044d\u0441 \u0431\u04e9\u0433\u04e9\u04e9\u0434 \u0437\u0430\u043d \u0442\u04e9\u043b\u04e9\u0432\u0438\u0439\u0433 \u0430\u0440\u0433\u0443\u0443\u0434\u044b\u043d \u0430\u0440\u0433\u0443\u043c\u0435\u043d\u0442 \u0431\u043e\u043b\u0433\u043e\u043d \u0434\u0430\u043c\u0436\u0443\u0443\u043b\u0430\u0445 \u0431\u043e\u043b\u043e\u043c\u0436\u0438\u0439\u0433 \u043e\u043b\u0433\u043e\u0434\u043e\u0433.<\/p>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h1 class=\"wp-block-heading\">\u0424\u0443\u043d\u043a\u0446\u0438\u043e\u043d\u0430\u043b\u044c \u043f\u0440\u043e\u0433\u0440\u0430\u043c\u0447\u043b\u0430\u043b (FP) &#8211; \u0424\u0443\u043d\u043a\u0446\u0438\u043e\u043d\u0430\u043b\u044c \u043f\u0440\u043e\u0433\u0440\u0430\u043c\u0447\u043b\u0430\u043b<\/h1>\n\n\n\n<p class=\"wp-block-paragraph\">\u0424\u0443\u043d\u043a\u0446\u0438\u043e\u043d\u0430\u043b\u044c \u043f\u0440\u043e\u0433\u0440\u0430\u043c\u0447\u043b\u0430\u043b (FP) \u043d\u044c \u0442\u043e\u043e\u0446\u043e\u043e\u043b\u043b\u044b\u0433 \u043c\u0430\u0442\u0435\u043c\u0430\u0442\u0438\u043a \u0444\u0443\u043d\u043a\u0446\u04af\u04af\u0434\u0438\u0439\u043d \u0433\u04af\u0439\u0446\u044d\u0442\u0433\u044d\u043b \u0433\u044d\u0436 \u04af\u0437\u0434\u044d\u0433 \u043f\u0440\u043e\u0433\u0440\u0430\u043c\u0447\u043b\u0430\u043b\u044b\u043d \u043f\u0430\u0440\u0430\u0434\u0438\u0433\u043c \u044e\u043c.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">\u0413\u043e\u043b \u0441\u0430\u043d\u0430\u0430 \u043d\u044c \u0446\u044d\u0432\u044d\u0440 \u0444\u0443\u043d\u043a\u0446\u0443\u0443\u0434 \u0431\u043e\u043b\u043e\u043d \u0445\u0443\u0432\u0438\u0440\u0448\u0433\u04af\u0439 \u04e9\u0433\u04e9\u0433\u0434\u043b\u0438\u0439\u0433 \u0430\u0448\u0438\u0433\u043b\u0430\u043d \u0425\u0443\u0432\u0438\u0440\u0433\u0430\u0445 \u0442\u04e9\u043b\u04e9\u0432 \u0431\u0430 \u0433\u0430\u0436 \u043d\u04e9\u043b\u04e9\u04e9\u043d\u04e9\u04e9\u0441 \u0437\u0430\u0439\u043b\u0441\u0445\u0438\u0439\u0445 \u044f\u0432\u0434\u0430\u043b \u044e\u043c.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">1. \u0424\u0443\u043d\u043a\u0446\u0438\u043e\u043d\u0430\u043b\u044c \u043f\u0440\u043e\u0433\u0440\u0430\u043c\u0447\u043b\u0430\u043b\u044b\u043d \u04af\u043d\u0434\u0441\u044d\u043d \u0441\u0430\u043d\u0430\u0430\u043d\u0443\u0443\u0434<\/h2>\n\n\n\n<ul class=\"wp-block-list\">\n<li>\u0426\u044d\u0432\u044d\u0440 \u0444\u0443\u043d\u043a\u0446\u0443\u0443\u0434: \u0418\u0436\u0438\u043b \u043e\u0440\u043e\u043b\u0442\u044b\u043d \u04e9\u0433\u04e9\u0433\u0434\u043b\u04e9\u04e9\u0440 \u04af\u0440\u0433\u044d\u043b\u0436 \u0438\u0436\u0438\u043b \u04af\u0440 \u0434\u04af\u043d\u0433 \u0431\u0443\u0446\u0430\u0430\u0434\u0430\u0433, \u044f\u043c\u0430\u0440 \u0447 \u0433\u0430\u0436 \u043d\u04e9\u043b\u04e9\u04e9\u0433\u04af\u0439 \u0444\u0443\u043d\u043a\u0446\u0443\u0443\u0434.<\/li>\n\n\n\n<li>\u04e8\u04e9\u0440\u0447\u043b\u04e9\u0433\u0434\u04e9\u0445 \u0447\u0430\u0434\u0432\u0430\u0440: \u04e8\u0433\u04e9\u0433\u0434\u04e9\u043b \u04af\u04af\u0441\u0433\u044d\u0441\u043d\u0438\u0439 \u0434\u0430\u0440\u0430\u0430 \u04e9\u04e9\u0440\u0447\u043b\u04e9\u0433\u0434\u0434\u04e9\u0433\u0433\u04af\u0439.<\/li>\n\n\n\n<li>\u041d\u044d\u0433\u0434\u04af\u0433\u044d\u044d\u0440 \u0437\u044d\u0440\u044d\u0433\u043b\u044d\u043b\u0438\u0439\u043d \u0444\u0443\u043d\u043a\u0446\u0443\u0443\u0434: \u0424\u0443\u043d\u043a\u0446\u0443\u0443\u0434\u044b\u0433 \u0445\u0443\u0432\u044c\u0441\u0430\u0433\u0447\u0438\u0434 \u0445\u0430\u0434\u0433\u0430\u043b\u0436, \u0430\u0440\u0433\u0443\u043c\u0435\u043d\u0442 \u0431\u043e\u043b\u0433\u043e\u043d \u0434\u0430\u043c\u0436\u0443\u0443\u043b\u0436, \u0431\u0443\u0441\u0430\u0434 \u0444\u0443\u043d\u043a\u0446\u044d\u044d\u0441 \u0431\u0443\u0446\u0430\u0430\u0445 \u0431\u043e\u043b\u043e\u043c\u0436\u0442\u043e\u0439.<\/li>\n\n\n\n<li>\u0414\u044d\u044d\u0434 \u0437\u044d\u0440\u044d\u0433\u043b\u044d\u043b\u0438\u0439\u043d \u0444\u0443\u043d\u043a\u0446\u0443\u0443\u0434: \u0411\u0443\u0441\u0430\u0434 \u0444\u0443\u043d\u043a\u0446\u0438\u0439\u0433 \u0430\u0440\u0433\u0443\u043c\u0435\u043d\u0442 \u044d\u0441\u0432\u044d\u043b \u0431\u0443\u0446\u0430\u0430\u0445 \u0444\u0443\u043d\u043a\u0446 \u0431\u043e\u043b\u0433\u043e\u043d \u0445\u04af\u043b\u044d\u044d\u043d \u0430\u0432\u0434\u0430\u0433 \u0444\u0443\u043d\u043a\u0446\u0443\u0443\u0434.<\/li>\n\n\n\n<li>\u0422\u0443\u043d\u0445\u0430\u0433\u043b\u0430\u043b\u044b\u043d \u0445\u044d\u0432 \u043c\u0430\u044f\u0433: \u0425\u044d\u0440\u0445\u044d\u043d \u0445\u0438\u0439\u0445 \u0442\u0430\u043b\u0430\u0430\u0440 \u0434\u044d\u043b\u0433\u044d\u0440\u044d\u043d\u0433\u04af\u0439 \u044f\u0440\u0438\u0445\u044b\u043d \u043e\u0440\u043e\u043d\u0434 \u044e\u0443 \u0445\u0438\u0439\u0445 \u0451\u0441\u0442\u043e\u0439\u0433 \u0442\u0430\u0439\u043b\u0431\u0430\u0440\u043b\u0430\u043d\u0430.<\/li>\n\n\n\n<li>\u0420\u0435\u043a\u0443\u0440\u0441: \u0423\u043b\u0430\u043c\u0436\u043b\u0430\u043b\u0442 \u0433\u043e\u0433\u0446\u043e\u043e\u043d\u0443\u0443\u0434\u044b\u043d \u043e\u0440\u043e\u043d\u0434 \u04e9\u04e9\u0440\u0438\u0439\u0433\u04e9\u04e9 \u0434\u0443\u0443\u0434\u0434\u0430\u0433 \u0444\u0443\u043d\u043a\u0446\u0438\u0439\u0433 \u0430\u0448\u0438\u0433\u043b\u0430\u0445.<\/li>\n\n\n\n<li>\u0417\u0430\u043b\u0445\u0443\u0443 \u04af\u043d\u044d\u043b\u0433\u044d\u044d: \u0422\u043e\u043e\u0446\u043e\u043e\u043b\u043b\u044b\u0433 \u04af\u0440 \u0434\u04af\u043d \u0448\u0430\u0430\u0440\u0434\u043b\u0430\u0433\u0430\u0442\u0430\u0439 \u04af\u0435\u0434 \u043b \u0445\u0438\u0439\u0434\u044d\u0433 (\u0437\u0430\u0440\u0438\u043c \u0445\u044d\u043b\u044d\u044d\u0440 \u0434\u044d\u043c\u0436\u0438\u0433\u0434\u0434\u044d\u0433).<\/li>\n<\/ul>\n\n\n\n<h2 class=\"wp-block-heading\">2. \u0424\u0443\u043d\u043a\u0446\u0438\u043e\u043d\u0430\u043b\u044c \u043f\u0440\u043e\u0433\u0440\u0430\u043c\u0447\u043b\u0430\u043b\u044b\u043d \u0445\u044d\u043b\u043d\u04af\u04af\u0434\u0438\u0439\u043d \u0436\u0438\u0448\u044d\u044d<\/h2>\n\n\n\n<h3 class=\"wp-block-heading\">\u0426\u044d\u0432\u044d\u0440 \/ \u04ae\u043d\u0434\u0441\u044d\u043d \u0444\u0443\u043d\u043a\u0446\u0438\u043e\u043d\u0430\u043b\u044c<\/h3>\n\n\n\n<figure class=\"wp-block-table\"><table class=\"has-fixed-layout\"><tbody><tr><th>\u0425\u044d\u043b<\/th><th>\u041e\u043d\u0446\u043b\u043e\u0433 \u0448\u0438\u043d\u0436 \u0447\u0430\u043d\u0430\u0440\u0443\u0443\u0434<\/th><\/tr><tr><td>\u0425\u0430\u0441\u043a\u0435\u043b\u043b<\/td><td>\u0426\u044d\u0432\u044d\u0440 \u0444\u0443\u043d\u043a\u0446\u0438\u043e\u043d\u0430\u043b\u044c \u043f\u0440\u043e\u0433\u0440\u0430\u043c\u0447\u043b\u0430\u043b, \u0437\u0430\u043b\u0445\u0443\u0443 \u04af\u043d\u044d\u043b\u0433\u044d\u044d, \u0445\u04af\u0447\u0442\u044d\u0439 \u0442\u04e9\u0440\u043b\u0438\u0439\u043d \u0441\u0438\u0441\u0442\u0435\u043c.<\/td><\/tr><tr><td>\u042d\u0440\u043b\u0430\u043d<\/td><td>\u0425\u0430\u0440\u0438\u043b\u0446\u0430\u0430 \u0445\u043e\u043b\u0431\u043e\u043e\u043d\u044b \u0441\u0438\u0441\u0442\u0435\u043c\u0434 \u0430\u0448\u0438\u0433\u043b\u0430\u0433\u0434\u0430\u0436, \u0434\u0430\u0432\u0445\u0446\u0430\u0445 \u0431\u043e\u043b\u043e\u043d \u0430\u043b\u0434\u0430\u0430\u0433 \u0442\u044d\u0441\u0432\u044d\u0440\u043b\u044d\u0445 \u0437\u043e\u0440\u0438\u043b\u0433\u043e\u043e\u0440 \u0431\u04af\u0442\u044d\u044d\u0433\u0434\u0441\u044d\u043d.<\/td><\/tr><tr><td>\u04ae\u0440\u044d\u043b<\/td><td>Erlang VM \u0434\u044d\u044d\u0440 \u0430\u0436\u0438\u043b\u043b\u0430\u0434\u0430\u0433 \u043e\u0440\u0447\u0438\u043d \u04af\u0435\u0438\u0439\u043d \u0444\u0443\u043d\u043a\u0446\u0438\u043e\u043d\u0430\u043b\u044c \u0445\u044d\u043b.<\/td><\/tr><tr><td>OCaml \/ F#<\/td><td>Strong Type Inference \u0431\u04af\u0445\u0438\u0439 \u0444\u0443\u043d\u043a\u0446\u0438\u043e\u043d\u0430\u043b\u044c \u0445\u044d\u043b\u04af\u04af\u0434.<\/td><\/tr><tr><td>\u0421\u0445\u0435\u043c \/ Lisp \/ Clojure<\/td><td>\u0424\u0443\u043d\u043a\u0446\u0438\u043e\u043d\u0430\u043b\u044c \u043f\u0440\u043e\u0433\u0440\u0430\u043c\u0447\u043b\u0430\u043b \u0431\u0430 \u0441\u0438\u043c\u0431\u043e\u043b \u0431\u043e\u043b\u043e\u0432\u0441\u0440\u0443\u0443\u043b\u0430\u043b\u0442.<\/td><\/tr><\/tbody><\/table><\/figure>\n\n\n\n<h3 class=\"wp-block-heading\">\u041e\u043b\u043e\u043d \u043f\u0430\u0440\u0430\u0434\u0438\u0433\u043c (FP + OOP \/ Imperative)<\/h3>\n\n\n\n<figure class=\"wp-block-table\"><table class=\"has-fixed-layout\"><tbody><tr><th>\u0425\u044d\u043b<\/th><th>\u041e\u043d\u0446\u043b\u043e\u0433 \u0448\u0438\u043d\u0436 \u0447\u0430\u043d\u0430\u0440\u0443\u0443\u0434<\/th><\/tr><tr><td>\u0421\u043a\u0430\u043b\u0430<\/td><td>FP \u0431\u043e\u043b\u043e\u043d OOP-\u0438\u0439\u0433 \u0445\u043e\u0441\u043b\u0443\u0443\u043b\u0441\u0430\u043d. \u042d\u043d\u044d \u043d\u044c JVM \u0434\u044d\u044d\u0440 \u0430\u0436\u0438\u043b\u043b\u0430\u0434\u0430\u0433 \u0431\u04e9\u0433\u04e9\u04e9\u0434 Java-\u0442\u044d\u0439 \u043d\u044d\u0433\u0434\u0441\u044d\u043d.<\/td><\/tr><tr><td>\u041a\u043e\u0442\u043b\u0438\u043d<\/td><td>Lambdas, Immutability \u0431\u043e\u043b\u043e\u043d \u0434\u044d\u043c\u0436\u0434\u044d\u0433 <code>map\/filter\/reduce<\/code>.<\/td><\/tr><tr><td>JavaScript \/ TypeScript<\/td><td>\u0422\u044d\u0434 \u0425\u0430\u0430\u043b\u0442 \u0431\u043e\u043b\u043e\u043d \u0414\u044d\u044d\u0434 \u0442\u0443\u0448\u0430\u0430\u043b\u044b\u043d \u0447\u0438\u0433 \u04af\u04af\u0440\u0433\u0438\u0439\u0433 \u0434\u044d\u043c\u0436\u0434\u044d\u0433.<\/td><\/tr><tr><td>Python<\/td><td>\u0414\u044d\u043c\u0436\u0438\u0436 \u0431\u0430\u0439\u043d\u0430 <code>map()<\/code>, <code>filter()<\/code>, <code>lambda<\/code> \u0431\u043e\u043b\u043e\u043d <code>functools<\/code>.<\/td><\/tr><tr><td>\u0417\u044d\u0432<\/td><td>\u04e8\u04e9\u0440\u0447\u043b\u04e9\u0433\u0434\u04e9\u0445 \u0447\u0430\u0434\u0432\u0430\u0440\u0433\u04af\u0439, \u0434\u044d\u044d\u0434 \u0437\u044d\u0440\u044d\u0433\u043b\u044d\u043b\u0438\u0439\u043d \u0444\u0443\u043d\u043a\u0446\u0443\u0443\u0434 \u0431\u043e\u043b\u043e\u043d \u0437\u0430\u0433\u0432\u0430\u0440 \u0442\u0430\u0430\u0440\u0443\u0443\u043b\u0430\u0445\u044b\u0433 \u0434\u044d\u043c\u0436\u0434\u044d\u0433.<\/td><\/tr><tr><td>\u0425\u0443\u0440\u0434\u0430\u043d<\/td><td>\u0425\u0430\u0430\u043b\u0442, \u0445\u0443\u0432\u0438\u0440\u0448\u0433\u04af\u0439 \u0431\u043e\u043b\u043e\u043d <code>map\/filter\/reduce<\/code>.<\/td><\/tr><\/tbody><\/table><\/figure>\n\n\n\n<h2 class=\"wp-block-heading\">3. Java \u0445\u044d\u043b \u0434\u044d\u044d\u0440\u0445 \u0444\u0443\u043d\u043a\u0446\u0438\u043e\u043d\u0430\u043b\u044c \u043f\u0440\u043e\u0433\u0440\u0430\u043c\u0447\u043b\u0430\u043b<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">Java \u0431\u043e\u043b \u0446\u044d\u0432\u044d\u0440 \u0444\u0443\u043d\u043a\u0446\u0438\u043e\u043d\u0430\u043b\u044c \u043f\u0440\u043e\u0433\u0440\u0430\u043c\u0447\u043b\u0430\u043b\u044b\u043d \u0445\u044d\u043b \u0431\u0438\u0448, \u0445\u0430\u0440\u0438\u043d \u043e\u043b\u043e\u043d \u043f\u0430\u0440\u0430\u0434\u0438\u0433\u043c\u044b\u043d \u0445\u044d\u043b \u0431\u04e9\u0433\u04e9\u04e9\u0434 \u044d\u043d\u044d \u043d\u044c OOP, Imperative Programming, Functional Programming-\u0438\u0439\u0433 \u043d\u044d\u0433\u0442\u0433\u044d\u0434\u044d\u0433.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Java 8-\u0430\u0430\u0441 \u0445\u043e\u0439\u0448 \u0447\u0443\u0445\u0430\u043b \u0431\u043e\u043b\u043e\u043c\u0436\u0443\u0443\u0434\u044b\u0433 \u043d\u044d\u0432\u0442\u0440\u04af\u04af\u043b\u0441\u044d\u043d:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Lambda \u0438\u043b\u044d\u0440\u0445\u0438\u0439\u043b\u044d\u043b &#8211; \u0424\u0443\u043d\u043a\u0446\u0438\u043e\u043d\u0430\u043b\u044c \u0438\u043d\u0442\u0435\u0440\u0444\u0435\u0439\u0441\u0438\u0439\u0433 \u0445\u044d\u0440\u044d\u0433\u0436\u04af\u04af\u043b\u044d\u0445 \u0431\u043e\u0433\u0438\u043d\u043e \u0430\u0440\u0433\u0430.<\/li>\n\n\n\n<li>\u0424\u0443\u043d\u043a\u0446\u0438\u043e\u043d\u0430\u043b\u044c \u0438\u043d\u0442\u0435\u0440\u0444\u0435\u0439\u0441 &#8211; \u0436\u0438\u0448\u044d\u044d\u043b\u0431\u044d\u043b <code>Predicate<\/code>, <code>Function<\/code>, <code>Consumer<\/code> \u0431\u043e\u043b\u043e\u043d <code>Supplier<\/code>.<\/li>\n\n\n\n<li>Stream API &#8211; \u0446\u0443\u0433\u043b\u0443\u0443\u043b\u0433\u0443\u0443\u0434\u044b\u0433 \u0434\u0430\u043c\u0436\u0443\u0443\u043b\u0430\u043d \u0431\u043e\u043b\u043e\u0432\u0441\u0440\u0443\u0443\u043b\u0430\u0445 <code>filter()<\/code>, <code>map()<\/code> \u0431\u043e\u043b\u043e\u043d <code>reduce()<\/code>.<\/li>\n\n\n\n<li>\u0410\u0440\u0433\u044b\u043d \u043b\u0430\u0432\u043b\u0430\u0433\u0430\u0430 &#8211; \u043e\u0434\u043e\u043e \u0431\u0430\u0439\u0433\u0430\u0430 \u0430\u0440\u0433\u0443\u0443\u0434\u044b\u0433 \u0444\u0443\u043d\u043a\u0446\u0438\u043e\u043d\u0430\u043b\u044c \u0430\u0436\u0438\u043b\u043b\u0430\u0433\u0430\u0430 \u0431\u043e\u043b\u0433\u043e\u043d \u0430\u0448\u0438\u0433\u043b\u0430\u0445.<\/li>\n\n\n\n<li>\u041d\u044d\u043c\u044d\u043b\u0442 &#8211; \u0431\u043e\u043b\u043e\u043c\u0436\u0438\u0442 \u0434\u0443\u0442\u0443\u0443 \u0443\u0442\u0433\u044b\u0433 \u0438\u043b\u04af\u04af \u0442\u043e\u0434\u043e\u0440\u0445\u043e\u0439 \u0437\u043e\u0445\u0438\u0446\u0443\u0443\u043b\u0430\u0445\u0430\u0434 \u0442\u0443\u0441\u0430\u043b\u043d\u0430.<\/li>\n<\/ul>\n\n\n\n<p class=\"wp-block-paragraph\">\u0416\u0438\u0448\u044d\u044d:<\/p>\n\n\n<div class=\"wp-block-code\">\n\t<div class=\"cm-editor\">\n\t\t<div class=\"cm-scroller\">\n\t\t\t\n<pre>\n<code><div class=\"cm-line\">List&lt;Integer&gt; numbers = List.of(1, 2, 3, 4, 5);<\/div><div class=\"cm-line\"><\/div><div class=\"cm-line\">List&lt;Integer&gt; result = numbers.stream()<\/div><div class=\"cm-line\">        .filter(n -&gt; n % 2 == 0)<\/div><div class=\"cm-line\">        .map(n -&gt; n * n)<\/div><div class=\"cm-line\">        .toList();<\/div><div class=\"cm-line\"><\/div><div class=\"cm-line\">System.out.println(result); \/\/ [4, 16]<\/div><\/code><\/pre>\n\t\t<\/div>\n\t<\/div>\n<\/div>\n\n\n<p class=\"wp-block-paragraph\">\u042d\u043d\u0434:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li><code>filter()<\/code> \u0442\u044d\u0433\u0448 \u0442\u043e\u043e\u043d\u0443\u0443\u0434\u044b\u0433 \u0441\u043e\u043d\u0433\u043e\u043d\u043e.<\/li>\n\n\n\n<li><code>map()<\/code> \u0434\u0443\u0440\u044b\u043d \u0442\u043e\u043e\u043d\u044b \u043a\u0432\u0430\u0434\u0440\u0430\u0442.<\/li>\n\n\n\n<li><code>toList()<\/code> \u04af\u0440 \u0434\u04af\u043d \u0431\u04af\u0445\u0438\u0439 \u0448\u0438\u043d\u044d \u0416\u0430\u0433\u0441\u0430\u0430\u043b\u0442 \u04af\u04af\u0441\u0433\u044d\u0434\u044d\u0433.<\/li>\n<\/ul>\n\n\n\n<h2 class=\"wp-block-heading\">4. \u0414\u04af\u0433\u043d\u044d\u043b\u0442<\/h2>\n\n\n\n<ul class=\"wp-block-list\">\n<li>\u0417\u04e9\u0432\u0445\u04e9\u043d \u0444\u0443\u043d\u043a\u0446\u0438\u043e\u043d\u0430\u043b\u044c \/ \u04ae\u043d\u0434\u0441\u044d\u043d \u0444\u0443\u043d\u043a\u0446\u0438\u043e\u043d\u0430\u043b\u044c: Haskell, Erlang, Elixir, Scheme, OCaml, F#.<\/li>\n\n\n\n<li>\u041e\u043b\u043e\u043d \u043f\u0430\u0440\u0430\u0434\u0438\u0433\u043c: Scala, Kotlin, JavaScript, Python, Rust, Swift, Java.<\/li>\n<\/ul>\n\n\n\n<p class=\"wp-block-paragraph\">Java \u0445\u04e9\u0433\u0436\u04af\u04af\u043b\u044d\u0433\u0447\u0438\u0439\u043d \u044f\u0440\u0438\u043b\u0446\u043b\u0430\u0433\u0430\u0434 \u0447\u0443\u0445\u0430\u043b \u0430\u0447 \u0445\u043e\u043b\u0431\u043e\u0433\u0434\u043e\u043b\u0442\u043e\u0439: Java \u043d\u044c Lambda \u0438\u043b\u044d\u0440\u0445\u0438\u0439\u043b\u044d\u043b, \u0444\u0443\u043d\u043a\u0446\u0438\u043e\u043d\u0430\u043b\u044c \u0438\u043d\u0442\u0435\u0440\u0444\u0435\u0439\u0441 \u0431\u043e\u043b\u043e\u043d Stream API-\u044d\u044d\u0440 \u0434\u0430\u043c\u0436\u0443\u0443\u043b\u0430\u043d \u0444\u0443\u043d\u043a\u0446\u0438\u043e\u043d\u0430\u043b\u044c \u043f\u0440\u043e\u0433\u0440\u0430\u043c\u0447\u043b\u0430\u043b\u044b\u0433 \u0434\u044d\u043c\u0436\u0434\u044d\u0433 \u0431\u043e\u043b\u043e\u0432\u0447 \u0446\u044d\u0432\u044d\u0440 \u0444\u0443\u043d\u043a\u0446\u0438\u043e\u043d\u0430\u043b\u044c \u0445\u044d\u043b \u0431\u0438\u0448, \u043e\u043b\u043e\u043d \u043f\u0430\u0440\u0430\u0434\u0438\u0433\u043c\u044b\u043d \u0445\u044d\u043b \u0445\u044d\u0432\u044d\u044d\u0440 \u0431\u0430\u0439\u043d\u0430.<\/p>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h1 class=\"wp-block-heading\">\u0425\u043e\u0433 \u0446\u0443\u0433\u043b\u0443\u0443\u043b\u0430\u0433\u0447 (GC) &#8211; \u0410\u0448\u0438\u0433\u043b\u0430\u0433\u0434\u0430\u0430\u0433\u04af\u0439 \u0441\u0430\u043d\u0430\u0445 \u043e\u0439\u0433 \u0446\u0443\u0433\u043b\u0443\u0443\u043b\u0430\u0433\u0447<\/h1>\n\n\n\n<h2 class=\"wp-block-heading\">1. \u0411\u04e9\u04e9\u043d \u0441\u0430\u043d\u0430\u0445 \u043e\u0439<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">\u041d\u0443\u0440\u0443\u0443 \u0441\u0430\u043d\u0430\u0445 \u043e\u0439 \u043d\u044c Java \u043e\u0431\u044a\u0435\u043a\u0442\u0443\u0443\u0434 \u0431\u043e\u043b\u043e\u043d \u043c\u0430\u0441\u0441\u0438\u0432\u0443\u0443\u0434\u044b\u0433 \u0445\u0430\u0434\u0433\u0430\u043b\u0434\u0430\u0433 JVM \u0441\u0430\u043d\u0430\u0445 \u043e\u0439\u043d \u0445\u044d\u0441\u044d\u0433 \u044e\u043c.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">\u0418\u0434\u044d\u0432\u0445\u0442\u044d\u0439 \u043f\u0440\u043e\u0433\u0440\u0430\u043c\u044b\u043d \u043b\u0430\u0432\u043b\u0430\u0433\u0430\u0430\u0433\u0430\u0430\u0440 \u0442\u0443\u0445\u0430\u0439\u043d \u043e\u0431\u044a\u0435\u043a\u0442 \u0440\u0443\u0443 \u0445\u043e\u043b\u0431\u043e\u0433\u0434\u043e\u0445 \u0431\u043e\u043b\u043e\u043c\u0436\u0433\u04af\u0439 \u0431\u043e\u043b\u0441\u043e\u043d \u04af\u0435\u0434 \u044d\u043d\u044d \u043d\u044c \u0425\u043e\u0433 \u0445\u0430\u044f\u0433\u0434\u043b\u044b\u0433 \u0446\u0443\u0433\u043b\u0443\u0443\u043b\u0430\u0445 \u044d\u0440\u0445\u0442\u044d\u0439 \u0431\u043e\u043b\u043d\u043e (GC-\u044d\u044d\u0441 \u0447\u04e9\u043b\u04e9\u04e9\u043b\u04e9\u0433\u0434\u04e9\u043d\u04e9).<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">2. \u0425\u043e\u0433 \u0446\u0443\u0433\u043b\u0443\u0443\u043b\u0430\u0433\u0447 (GC)<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">\u0425\u043e\u0433 \u0446\u0443\u0433\u043b\u0443\u0443\u043b\u0430\u0433\u0447 \u043d\u044c JVM \u0430\u0432\u0442\u043e\u043c\u0430\u0442 \u043c\u0435\u0445\u0430\u043d\u0438\u0437\u043c \u0431\u04e9\u0433\u04e9\u04e9\u0434 \u0446\u0430\u0430\u0448\u0438\u0434 \u0445\u04af\u0440\u044d\u0445 \u0431\u043e\u043b\u043e\u043c\u0436\u0433\u04af\u0439 \u043e\u0431\u044a\u0435\u043a\u0442\u0443\u0443\u0434\u044b\u043d \u044d\u0437\u044d\u043b\u0434\u044d\u0433 \u0441\u0430\u043d\u0430\u0445 \u043e\u0439\u0433 \u0438\u043b\u0440\u04af\u04af\u043b\u0436, \u0447\u04e9\u043b\u04e9\u04e9\u043b\u0434\u04e9\u0433 (UnRachable Objects).<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">GC \u043d\u044c \u043f\u0440\u043e\u0433\u0440\u0430\u043c\u043c\u0438\u0441\u0442 \u043e\u0431\u044a\u0435\u043a\u0442\u044b\u0433 \u0433\u0430\u0440\u0430\u0430\u0440 \u0443\u0441\u0442\u0433\u0430\u0445\u0433\u04af\u0439\u0433\u044d\u044d\u0440 \u0430\u0432\u0442\u043e\u043c\u0430\u0442\u0430\u0430\u0440 \u0430\u0436\u0438\u043b\u043b\u0430\u0434\u0430\u0433.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">\u0425\u043e\u0433 \u0446\u0443\u0433\u043b\u0443\u0443\u043b\u0430\u0445 \u04af\u043d\u0434\u0441\u044d\u043d \u0442\u04e9\u0440\u043b\u04af\u04af\u0434<\/h3>\n\n\n\n<ul class=\"wp-block-list\">\n<li>\u0411\u0430\u0433\u0430 GC (\u0417\u0430\u043b\u0443\u0443 GC): \u0428\u0438\u043d\u044d\u044d\u0440 \u04af\u04af\u0441\u0433\u044d\u0433\u0434\u0441\u044d\u043d \u043e\u0431\u044a\u0435\u043a\u0442\u0443\u0443\u0434\u044b\u043d \u043e\u0440\u0448\u0438\u043d \u0441\u0443\u0443\u0434\u0430\u0433 \u0445\u044d\u0441\u044d\u0433 \u0431\u043e\u043b\u043e\u0445 \u0437\u0430\u043b\u0443\u0443 \u04af\u0435\u0438\u0439\u0433 \u0443\u0434\u0438\u0440\u0434\u0434\u0430\u0433.<\/li>\n\n\n\n<li>\u0413\u043e\u043b GC: \u0425\u0443\u0443\u0447\u0438\u043d \u04af\u0435\u0438\u0439\u043d\u0445\u044d\u043d\u0434 \u0441\u0430\u043d\u0430\u0445 \u043e\u0439 \u0446\u0443\u0433\u043b\u0443\u0443\u043b\u0430\u0445\u0430\u0434 \u0445\u044d\u0440\u044d\u0433\u043b\u044d\u0433\u0434\u0434\u044d\u0433 \u043d\u044d\u0440 \u0442\u043e\u043c\u044a\u0451\u043e. \u0422\u043e\u0434\u043e\u0440\u0445\u043e\u0439 \u0443\u0442\u0433\u0430 \u043d\u044c GC-\u0438\u0439\u043d \u0445\u044d\u0440\u044d\u0433\u0436\u0438\u043b\u0442\u044d\u044d\u0441 \u0445\u0430\u043c\u0430\u0430\u0440\u043d\u0430.<\/li>\n\n\n\n<li>\u0411\u04af\u0442\u044d\u043d GC: \u0418\u0445\u044d\u0432\u0447\u043b\u044d\u043d \u043d\u0443\u0440\u0443\u0443\u043b\u0433\u044b\u0433 \u0431\u04af\u0445\u044d\u043b\u0434 \u043d\u044c \u0431\u043e\u043b\u043e\u0432\u0441\u0440\u0443\u0443\u043b\u0430\u0445\u0442\u0430\u0439 \u0445\u043e\u043b\u0431\u043e\u043e\u0442\u043e\u0439 \u0438\u043b\u04af\u04af \u04e9\u0440\u0433\u04e9\u043d \u0445\u04af\u0440\u044d\u044d\u0442\u044d\u0439 \u04af\u0439\u043b \u0430\u0436\u0438\u043b\u043b\u0430\u0433\u0430\u0430.<\/li>\n<\/ul>\n\n\n\n<h2 class=\"wp-block-heading\">3. \u041d\u0443\u0440\u0443\u0443 \u0441\u0430\u043d\u0430\u0445 \u043e\u0439\u043d \u04af\u0435\u0438\u0439\u043d \u04af\u0435\u04af\u04af\u0434<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">\u0423\u043b\u0430\u043c\u0436\u043b\u0430\u043b\u0442 Generational GC \u0431\u0430\u0439\u0433\u0443\u0443\u043b\u043b\u0430\u0433\u0430\u0434 \u043d\u0443\u0440\u0443\u0443\u043b\u0434\u0430\u043d \u0441\u0430\u043d\u0430\u0445 \u043e\u0439\u0433 \u0434\u0430\u0440\u0430\u0430\u0445\u044c \u0431\u0430\u0439\u0434\u043b\u0430\u0430\u0440 \u0445\u0443\u0432\u0430\u0430\u0434\u0430\u0433.<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>\u0417\u0430\u043b\u0443\u0443 \u04af\u0435: \u0428\u0438\u043d\u044d\u044d\u0440 \u0431\u0438\u0439 \u0431\u043e\u043b\u0441\u043e\u043d \u043e\u0431\u044a\u0435\u043a\u0442\u0443\u0443\u0434\u0430\u0434 \u0437\u043e\u0440\u0438\u0443\u043b\u0430\u0433\u0434\u0441\u0430\u043d. Eden Space \u0431\u043e\u043b\u043e\u043d Survivor Spaces \u0431\u0430\u0433\u0442\u0430\u043d\u0430.<\/li>\n\n\n\n<li>\u0425\u0443\u0443\u0447\u0438\u043d \u04af\u0435 (\u0422\u044d\u0442\u0433\u044d\u043b\u044d\u0433\u0442 \u04af\u0435): \u0425\u044d\u0434 \u0445\u044d\u0434\u044d\u043d GC \u0446\u0438\u043a\u043b\u0438\u0439\u0433 \u0434\u0430\u0432\u0441\u0430\u043d \u043e\u0431\u044a\u0435\u043a\u0442\u0443\u0443\u0434\u0430\u0434 \u0437\u043e\u0440\u0438\u0443\u043b\u0430\u0433\u0434\u0441\u0430\u043d.<\/li>\n<\/ul>\n\n\n\n<h2 class=\"wp-block-heading\">4. \u0425\u043e\u0433 \u0445\u0430\u044f\u0433\u0434\u043b\u044b\u043d \u0430\u0447 \u0442\u0443\u0441<\/h2>\n\n\n\n<ul class=\"wp-block-list\">\n<li>\u0421\u0430\u043d\u0430\u0445 \u043e\u0439\u043d \u0430\u0432\u0442\u043e\u043c\u0430\u0442 \u0443\u0434\u0438\u0440\u0434\u043b\u0430\u0433\u0430: \u0421\u0430\u043d\u0430\u0445 \u043e\u0439\u0433 \u0433\u0430\u0440\u0430\u0430\u0440 \u0441\u0443\u043b\u043b\u0430\u0445 \u0448\u0430\u0430\u0440\u0434\u043b\u0430\u0433\u0430\u0433\u04af\u0439.<\/li>\n\n\n\n<li>\u0421\u0430\u043d\u0430\u0445 \u043e\u0439\u043d \u0430\u043b\u0434\u0430\u0433\u0434\u0430\u043b \u0431\u0430\u0433\u0430\u0441\u043d\u0430: \u0421\u0430\u043d\u0430\u0445 \u043e\u0439\u043d \u0443\u0434\u0438\u0440\u0434\u043b\u0430\u0433\u044b\u043d \u0430\u043b\u0434\u0430\u0430\u043d\u044b \u044d\u0440\u0441\u0434\u043b\u0438\u0439\u0433 \u0431\u0443\u0443\u0440\u0443\u0443\u043b\u0434\u0430\u0433.<\/li>\n\n\n\n<li>\u0421\u0430\u043d\u0430\u0445 \u043e\u0439\u043d \u043d\u04e9\u0445\u04e9\u043d \u0441\u044d\u0440\u0433\u044d\u044d\u043b\u0442: \u0421\u0430\u043d\u0430\u0445 \u043e\u0439\u0433 \u0445\u04af\u0440\u044d\u0445 \u0431\u043e\u043b\u043e\u043c\u0436\u0433\u04af\u0439 \u043e\u0431\u044a\u0435\u043a\u0442\u0443\u0443\u0434\u0430\u0430\u0441 \u0447\u04e9\u043b\u04e9\u04e9\u043b\u043d\u04e9.<\/li>\n<\/ul>\n\n\n\n<h2 class=\"wp-block-heading\">5. Java \u0445\u04e9\u0433\u0436\u04af\u04af\u043b\u044d\u0433\u0447\u0438\u0439\u043d \u044f\u0440\u0438\u043b\u0446\u043b\u0430\u0433\u0430\u0434 \u0447\u0443\u0445\u0430\u043b<\/h2>\n\n\n\n<ul class=\"wp-block-list\">\n<li>GC \u043d\u044c \u0441\u0430\u043d\u0430\u0445 \u043e\u0439\u0433 \u0437\u04e9\u0432\u0445\u04e9\u043d \u0431\u0438\u0434\u043d\u0438\u0439 \u043b\u043e\u0433\u0438\u043a\u0438\u0439\u043d \u0445\u0443\u0432\u044c\u0434 \u0430\u0448\u0438\u0433\u043b\u0430\u0434\u0430\u0433\u0433\u04af\u0439 \u043e\u0431\u044a\u0435\u043a\u0442\u0443\u0443\u0434\u0430\u0430\u0441 \u0447\u04e9\u043b\u04e9\u04e9\u043b\u0434\u04e9\u0433.<\/li>\n\n\n\n<li><code>System.gc()<\/code> \u0437\u04e9\u0432\u0445\u04e9\u043d JVM-\u044d\u044d\u0441 \u0445\u043e\u0433 \u0446\u0443\u0433\u043b\u0443\u0443\u043b\u0430\u0445 \u04af\u0439\u043b\u0434\u043b\u0438\u0439\u0433 \u0445\u0438\u0439\u0445\u0438\u0439\u0433 \u0448\u0430\u0430\u0440\u0434\u0434\u0430\u0433 &#8211; \u044d\u043d\u044d \u043d\u044c \u0442\u0438\u0439\u043c \u0431\u043e\u043b\u043d\u043e \u0433\u044d\u0441\u044d\u043d \u0431\u0430\u0442\u0430\u043b\u0433\u0430\u0430 \u04e9\u0433\u04e9\u0445\u0433\u04af\u0439.<\/li>\n\n\n\n<li>\u0425\u043e\u0433 \u0446\u0443\u0433\u043b\u0443\u0443\u043b\u0430\u0445 \u043d\u044c \u0431\u04af\u0433\u0434\u044d\u0434 \u0441\u0430\u0430\u0434 \u0431\u043e\u043b\u043e\u0445\u0433\u04af\u0439 <code>OutOfMemoryError<\/code> \u043d\u04e9\u0445\u0446\u04e9\u043b \u0431\u0430\u0439\u0434\u0430\u043b.<\/li>\n\n\n\n<li>\u0410\u0432\u0442\u043e\u043c\u0430\u0442 GC-\u0442\u044d\u0439 \u0431\u0430\u0439\u0441\u0430\u043d \u0447, \u0436\u0438\u0448\u044d\u044d\u043b\u0431\u044d\u043b, \u0448\u0430\u0430\u0440\u0434\u043b\u0430\u0433\u0430\u0433\u04af\u0439 \u043e\u0431\u044a\u0435\u043a\u0442\u0443\u0443\u0434\u044b\u0433 \u043b\u0430\u0432\u043b\u0430\u0433\u0430\u0430\u0433\u0430\u0430\u0440 \u0434\u0430\u043c\u0436\u0443\u0443\u043b\u0430\u043d \u0430\u0432\u0430\u0445 \u0431\u043e\u043b\u043e\u043c\u0436\u0442\u043e\u0439 \u0445\u044d\u0432\u044d\u044d\u0440 \u0431\u0430\u0439\u0445 \u04af\u0435\u0434 \u0441\u0430\u043d\u0430\u0445 \u043e\u0439\u043d \u0430\u043b\u0434\u0430\u0433\u0434\u0430\u043b \u04af\u04af\u0441\u0447 \u0431\u043e\u043b\u043d\u043e.<\/li>\n\n\n\n<li>GC \u043d\u044c \u0430\u0448\u0438\u0433\u043b\u0430\u0441\u0430\u043d \u0445\u043e\u0433 \u0446\u0443\u0433\u043b\u0443\u0443\u043b\u0430\u0433\u0447\u0430\u0430\u0441 \u0445\u0430\u043c\u0430\u0430\u0440\u0430\u043d \u043f\u0440\u043e\u0433\u0440\u0430\u043c\u044b\u043d \u0445\u044d\u043b\u0445\u044d\u044d\u043d\u0438\u0439 \u0433\u04af\u0439\u0446\u044d\u0442\u0433\u044d\u043b\u0438\u0439\u0433 \u0442\u04af\u0440 \u0437\u043e\u0433\u0441\u043e\u043e\u0436 \u0431\u043e\u043b\u043d\u043e (\u0414\u044d\u043b\u0445\u0438\u0439\u043d \u0437\u043e\u0433\u0441\u043e\u043b\u0442).<\/li>\n<\/ul>\n\n\n\n<p class=\"wp-block-paragraph\">\u0421\u0430\u043d\u0430\u0436 \u0431\u0430\u0439\u043d\u0430 \u0443\u0443: \u0425\u043e\u0433 \u0446\u0443\u0433\u043b\u0443\u0443\u043b\u0430\u0433\u0447 \u043d\u044c \u043e\u0432\u043e\u043e\u043b\u0433\u044b\u043d \u0441\u0430\u043d\u0430\u0445 \u043e\u0439\u0433 \u0447\u04e9\u043b\u04e9\u04e9\u043b\u04e9\u0445 \u0430\u0436\u043b\u044b\u0433 \u0430\u0432\u0442\u043e\u043c\u0430\u0442\u0430\u0430\u0440 \u0443\u0434\u0438\u0440\u0434\u0434\u0430\u0433 \u0447 \u043f\u0440\u043e\u0433\u0440\u0430\u043c\u0438\u0441\u0442 \u043d\u044c \u043b\u0430\u0432\u043b\u0430\u0433\u0430\u0430 \u0431\u043e\u043b\u043e\u043d \u043d\u04e9\u04e9\u0446\u0438\u0439\u043d \u0437\u04e9\u0432 \u043c\u0435\u043d\u0435\u0436\u043c\u0435\u043d\u0442\u0438\u0439\u0433 \u0445\u0430\u0440\u0438\u0443\u0446\u0434\u0430\u0433 \u0445\u044d\u0432\u044d\u044d\u0440 \u0431\u0430\u0439\u043d\u0430.<\/p>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h1 class=\"wp-block-heading\">GoF \u2013 \u0414\u04e9\u0440\u0432\u04e9\u043d \u0431\u04af\u043b\u044d\u0433 (\u0434\u0438\u0437\u0430\u0439\u043d \u0437\u0430\u0433\u0432\u0430\u0440)<\/h1>\n\n\n\n<p class=\"wp-block-paragraph\">GoF (Gang of Four) \u043d\u044c &#8220;\u0414\u0438\u0437\u0430\u0439\u043d \u0437\u0430\u0433\u0432\u0430\u0440: \u0414\u0430\u0445\u0438\u043d \u0430\u0448\u0438\u0433\u043b\u0430\u0445 \u0431\u043e\u043b\u043e\u043c\u0436\u0442\u043e\u0439 \u043e\u0431\u044a\u0435\u043a\u0442 \u0445\u0430\u043d\u0434\u0430\u043b\u0442\u0430\u0442 \u043f\u0440\u043e\u0433\u0440\u0430\u043c \u0445\u0430\u043d\u0433\u0430\u043c\u0436\u0438\u0439\u043d \u044d\u043b\u0435\u043c\u0435\u043d\u0442\u04af\u04af\u0434&#8221; (1994) \u0445\u044d\u043c\u044d\u044d\u0445 \u0430\u043b\u0434\u0430\u0440\u0442\u0430\u0439 \u043d\u043e\u043c\u044b\u043d \u0434\u04e9\u0440\u0432\u04e9\u043d \u0437\u043e\u0445\u0438\u043e\u0433\u0447\u0438\u0439\u043d \u043d\u044d\u0440 \u044e\u043c.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">\u0414\u04e9\u0440\u0432\u04e9\u043d \u0437\u043e\u0445\u0438\u043e\u043b\u0447<\/h3>\n\n\n\n<ol class=\"wp-block-list\">\n<li>\u042d\u0440\u0438\u0445 \u0413\u0430\u043c\u043c\u0430<\/li>\n\n\n\n<li>\u0420\u0438\u0447\u0430\u0440\u0434 \u0425\u0435\u043b\u043c<\/li>\n\n\n\n<li>\u0420\u0430\u043b\u044c\u0444 \u0416\u043e\u043d\u0441\u043e\u043d<\/li>\n\n\n\n<li>\u0416\u043e\u043d \u0412\u043b\u0438\u0441\u0441\u0430\u0439\u0434\u0441<\/li>\n<\/ol>\n\n\n\n<h2 class=\"wp-block-heading\">1. GoF Design Patterns \u0433\u044d\u0436 \u044e\u0443 \u0432\u044d?<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">GoF \u0431\u043e\u043b \u0442\u043e\u0434\u043e\u0440\u0445\u043e\u0439 \u043d\u044d\u0433 \u0437\u0430\u0440\u0447\u0438\u043c \u0431\u0438\u0448, \u0445\u0430\u0440\u0438\u043d \u041e\u0431\u044a\u0435\u043a\u0442 \u0445\u0430\u043d\u0434\u0430\u043b\u0442\u0430\u0442 \u043f\u0440\u043e\u0433\u0440\u0430\u043c \u0445\u0430\u043d\u0433\u0430\u043c\u0436\u0438\u0439\u043d \u0434\u0438\u0437\u0430\u0439\u043d\u044b \u043d\u0438\u0439\u0442\u043b\u044d\u0433 \u0430\u0441\u0443\u0443\u0434\u043b\u0443\u0443\u0434\u0430\u0434 \u0431\u0430\u0442\u043b\u0430\u0433\u0434\u0441\u0430\u043d \u0448\u0438\u0439\u0434\u043b\u04af\u04af\u0434\u0438\u0439\u0433 \u0441\u0430\u043d\u0430\u043b \u0431\u043e\u043b\u0433\u043e\u0434\u043e\u0433 23 \u0441\u043e\u043d\u0433\u043e\u0434\u043e\u0433 \u0437\u0430\u0433\u0432\u0430\u0440\u044b\u043d \u0437\u0430\u0433\u0432\u0430\u0440\u0443\u0443\u0434\u044b\u043d \u0446\u0443\u0433\u043b\u0443\u0443\u043b\u0433\u0430 \u044e\u043c.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">\u0422\u044d\u0434\u0433\u044d\u044d\u0440\u0438\u0439\u0433 \u0433\u0443\u0440\u0432\u0430\u043d \u04af\u043d\u0434\u0441\u044d\u043d \u0430\u043d\u0433\u0438\u043b\u0430\u043b\u0434 \u0445\u0443\u0432\u0430\u0430\u0434\u0430\u0433:<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">A. \u0411\u04af\u0442\u044d\u044d\u043b\u0438\u0439\u043d \u0445\u044d\u0432 \u043c\u0430\u044f\u0433<\/h3>\n\n\n\n<p class=\"wp-block-paragraph\">\u042d\u0434\u0433\u044d\u044d\u0440 \u043d\u044c \u043e\u0431\u044a\u0435\u043a\u0442\u044b\u0433 \u04af\u04af\u0441\u0433\u044d\u0445, \u044d\u0445\u043b\u04af\u04af\u043b\u044d\u0445\u0442\u044d\u0439 \u0445\u043e\u043b\u0431\u043e\u043e\u0442\u043e\u0439 \u044e\u043c.<\/p>\n\n\n\n<ol class=\"wp-block-list\">\n<li>\u0421\u0438\u043d\u0433\u043b\u0442\u043e\u043d<\/li>\n\n\n\n<li>\u04ae\u0439\u043b\u0434\u0432\u044d\u0440\u0438\u0439\u043d \u0430\u0440\u0433\u0430<\/li>\n\n\n\n<li>\u0425\u0438\u0439\u0441\u0432\u044d\u0440 \u04af\u0439\u043b\u0434\u0432\u044d\u0440<\/li>\n\n\n\n<li>\u0411\u0430\u0440\u0438\u043b\u0433\u0430\u0447\u0438\u043d<\/li>\n\n\n\n<li>\u041f\u0440\u043e\u0442\u043e\u0442\u0438\u043f<\/li>\n<\/ol>\n\n\n\n<h3 class=\"wp-block-heading\">B. \u0411\u04af\u0442\u0446\u0438\u0439\u043d \u0445\u044d\u0432 \u043c\u0430\u044f\u0433<\/h3>\n\n\n\n<p class=\"wp-block-paragraph\">\u0422\u044d\u0434 \u0430\u043d\u0433\u0438\u0443\u0434 \u0431\u043e\u043b\u043e\u043d \u043e\u0431\u044a\u0435\u043a\u0442\u0443\u0443\u0434\u044b\u0433 \u0445\u044d\u0440\u0445\u044d\u043d \u043d\u044d\u0433\u0442\u0433\u044d\u0436, \u0438\u043b\u04af\u04af \u0442\u043e\u043c \u0431\u0430\u0439\u0433\u0443\u0443\u043b\u0430\u043c\u0436 \u0431\u0430\u0440\u0438\u0445\u044b\u0433 \u0442\u0430\u0439\u043b\u0431\u0430\u0440\u043b\u0430\u0434\u0430\u0433.<\/p>\n\n\n\n<ol class=\"wp-block-list\">\n<li>\u0410\u0434\u0430\u043f\u0442\u0435\u0440<\/li>\n\n\n\n<li>\u0413\u04af\u04af\u0440<\/li>\n\n\n\n<li>\u041d\u0438\u0439\u043b\u043c\u044d\u043b<\/li>\n\n\n\n<li>\u0427\u0438\u043c\u044d\u0433\u043b\u044d\u0433\u0447<\/li>\n\n\n\n<li>\u0424\u0430\u0441\u0430\u0434<\/li>\n\n\n\n<li>\u041d\u0438\u0441\u0434\u044d\u0433 \u0436\u0438\u043d<\/li>\n\n\n\n<li>\u041f\u0440\u043e\u043a\u0441\u0438<\/li>\n<\/ol>\n\n\n\n<h3 class=\"wp-block-heading\">C. \u0417\u0430\u043d \u04af\u0439\u043b\u0438\u0439\u043d \u0445\u044d\u0432 \u043c\u0430\u044f\u0433<\/h3>\n\n\n\n<p class=\"wp-block-paragraph\">\u042d\u0434\u0433\u044d\u044d\u0440 \u043d\u044c \u043e\u0431\u044a\u0435\u043a\u0442\u0443\u0443\u0434\u044b\u043d \u0445\u043e\u043e\u0440\u043e\u043d\u0434\u044b\u043d \u0445\u0430\u0440\u0438\u043b\u0446\u0430\u043d \u04af\u0439\u043b\u0447\u043b\u044d\u043b, \u0442\u044d\u0434\u0433\u044d\u044d\u0440\u0438\u0439\u043d \u0445\u043e\u043e\u0440\u043e\u043d\u0434\u044b\u043d \u04af\u04af\u0440\u044d\u0433 \u0445\u0430\u0440\u0438\u0443\u0446\u043b\u0430\u0433\u044b\u043d \u0445\u0443\u0432\u0430\u0430\u0440\u0438\u043b\u0430\u043b\u0442\u044b\u0433 \u0442\u043e\u0434\u043e\u0440\u0445\u043e\u0439\u043b\u0434\u043e\u0433.<\/p>\n\n\n\n<ol class=\"wp-block-list\">\n<li>\u0410\u0436\u0438\u0433\u043b\u0430\u0433\u0447<\/li>\n\n\n\n<li>\u0421\u0442\u0440\u0430\u0442\u0435\u0433\u0438<\/li>\n\n\n\n<li>\u0422\u0443\u0448\u0430\u0430\u043b<\/li>\n\n\n\n<li>\u043c\u0443\u0436<\/li>\n\n\n\n<li>\u0417\u043e\u0447\u0438\u043d<\/li>\n\n\n\n<li>\u0417\u0443\u0443\u0447\u043b\u0430\u0433\u0447<\/li>\n\n\n\n<li>\u0414\u0430\u0432\u0442\u0430\u0433\u0447<\/li>\n\n\n\n<li>\u0414\u0443\u0440\u0441\u0430\u043c\u0436<\/li>\n\n\n\n<li>\u0417\u0430\u0433\u0432\u0430\u0440\u044b\u043d \u0430\u0440\u0433\u0430<\/li>\n\n\n\n<li>\u0425\u0430\u0440\u0438\u0443\u0446\u043b\u0430\u0433\u044b\u043d \u0445\u044d\u043b\u0445\u044d\u044d<\/li>\n\n\n\n<li>\u041e\u0440\u0447\u0443\u0443\u043b\u0430\u0433\u0447<\/li>\n<\/ol>\n\n\n\n<h2 class=\"wp-block-heading\">2. \u0417\u0430\u0433\u0432\u0430\u0440\u044b\u043d \u04af\u043d\u0434\u0441\u044d\u043d \u0437\u0430\u0440\u0447\u043c\u0443\u0443\u0434<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">GoF \u043d\u044c \u043f\u0440\u043e\u0433\u0440\u0430\u043c \u0445\u0430\u043d\u0433\u0430\u043c\u0436\u0438\u0439\u043d \u0434\u0438\u0437\u0430\u0439\u043d\u044b \u0445\u044d\u0434 \u0445\u044d\u0434\u044d\u043d \u0447\u0443\u0445\u0430\u043b \u0437\u0430\u0440\u0447\u043c\u0443\u0443\u0434\u044b\u0433 \u0434\u044d\u043c\u0436\u0434\u044d\u0433:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>\u04e8\u04e9\u0440\u0447\u043b\u04e9\u043b\u0442\u0438\u0439\u043d \u0431\u04af\u0440\u0434\u044d\u043b: \u041a\u043e\u0434\u044b\u043d \u04e9\u04e9\u0440\u0447\u043b\u04e9\u0433\u0434\u0434\u04e9\u0433 \u0445\u044d\u0441\u0433\u04af\u04af\u0434\u0438\u0439\u0433 \u0442\u043e\u0433\u0442\u043c\u043e\u043b \u0445\u044d\u0432\u044d\u044d\u0440 \u0431\u0430\u0439\u0433\u0430\u0430 \u0445\u044d\u0441\u0433\u04af\u04af\u0434\u044d\u044d\u0441 \u0442\u0443\u0441\u0433\u0430\u0430\u0440\u043b\u0430\u0445.<\/li>\n\n\n\n<li>\u0425\u04e9\u0442\u04e9\u043b\u0431\u04e9\u0440\u0438\u0439\u0433 \u0445\u044d\u0440\u044d\u0433\u0436\u04af\u04af\u043b\u044d\u0445 \u0431\u0443\u0441 \u0438\u043d\u0442\u0435\u0440\u0444\u044d\u0439\u0441 \u0440\u04af\u04af \u0448\u0438\u043b\u0436\u04af\u04af\u043b\u044d\u0445: \u0422\u043e\u0434\u043e\u0440\u0445\u043e\u0439 \u0445\u044d\u0440\u044d\u0433\u0436\u04af\u04af\u043b\u044d\u043b\u0442\u044d\u044d\u0441 \u0448\u0443\u0443\u0434 \u0445\u0430\u043c\u0430\u0430\u0440\u0430\u043b\u0442\u0430\u0439 \u0431\u0430\u0439\u0445\u044b\u043d \u043e\u0440\u043e\u043d\u0434 \u0438\u043d\u0442\u0435\u0440\u0444\u0435\u0439\u0441\u0438\u0439\u0433 \u0430\u0448\u0438\u0433\u043b\u0430\u0445.<\/li>\n\n\n\n<li>\u04e8\u0432 \u0437\u0430\u043b\u0433\u0430\u043c\u0436\u043b\u0430\u043b\u0430\u0430\u0441 \u0438\u043b\u04af\u04af \u043d\u0430\u0439\u0440\u043b\u0430\u0433\u044b\u0433 \u0438\u043b\u04af\u04af\u0434 \u04af\u0437\u044d\u0445: \u0418\u043b\u04af\u04af \u0443\u044f\u043d \u0445\u0430\u0442\u0430\u043d \u0437\u0430\u0433\u0432\u0430\u0440 \u0433\u0430\u0440\u0433\u0430\u0445 \u04af\u0435\u0434 \u0443\u0434\u0430\u043c\u0448\u043b\u0430\u0430\u0441 \u0438\u043b\u04af\u04af \u043d\u0430\u0439\u0440\u043b\u0430\u0433\u044b\u0433 \u0438\u043b\u04af\u04af\u0434 \u04af\u0437.<\/li>\n\n\n\n<li>\u0421\u0443\u043b \u0445\u043e\u043b\u0431\u043e\u043b\u0442: \u0411\u04af\u0440\u044d\u043b\u0434\u044d\u0445\u04af\u04af\u043d \u0445\u044d\u0441\u0433\u04af\u04af\u0434\u0438\u0439\u043d \u0445\u043e\u043e\u0440\u043e\u043d\u0434\u044b\u043d \u0445\u0430\u043c\u0430\u0430\u0440\u043b\u044b\u0433 \u0431\u0430\u0433\u0430\u0441\u0433\u0430\u0445.<\/li>\n\n\n\n<li>\u04e8\u043d\u0434\u04e9\u0440 \u0443\u044f\u043b\u0434\u0430\u0430: \u0425\u043e\u043b\u0431\u043e\u0433\u0434\u043e\u0445 \u0444\u0443\u043d\u043a\u0446\u0443\u0443\u0434\u044b\u0433 \u043d\u044d\u0433 \u0431\u04af\u0440\u044d\u043b\u0434\u044d\u0445\u04af\u04af\u043d \u0445\u044d\u0441\u044d\u0433 \u0431\u043e\u043b\u0433\u043e\u043d \u0431\u04af\u043b\u044d\u0433\u043b\u044d\u0445.<\/li>\n\n\n\n<li>\u0414\u0430\u0445\u0438\u043d \u0430\u0448\u0438\u0433\u043b\u0430\u0445, \u0437\u0430\u0441\u0432\u0430\u0440 \u04af\u0439\u043b\u0447\u0438\u043b\u0433\u044d\u044d \u0445\u0438\u0439\u0445 \u0431\u043e\u043b\u043e\u043c\u0436\u0442\u043e\u0439: \u0414\u0430\u0445\u0438\u043d \u0430\u0448\u0438\u0433\u043b\u0430\u0445, \u0437\u0430\u0441\u0432\u0430\u0440 \u04af\u0439\u043b\u0447\u0438\u043b\u0433\u044d\u044d \u0445\u0438\u0439\u0445\u044d\u0434 \u0445\u044f\u043b\u0431\u0430\u0440 \u043a\u043e\u0434 \u04af\u04af\u0441\u0433\u044d\u0445.<\/li>\n<\/ul>\n\n\n\n<h2 class=\"wp-block-heading\">3. Java \u0445\u04e9\u0433\u0436\u04af\u04af\u043b\u044d\u0433\u0447\u0438\u0439\u043d \u044f\u0440\u0438\u043b\u0446\u043b\u0430\u0433\u0430\u0434 \u0447\u0443\u0445\u0430\u043b<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">\u0413\u0443\u0440\u0432\u0430\u043d \u0430\u043d\u0433\u0438\u043b\u043b\u044b\u0433 \u0441\u0430\u043d\u0430\u0430\u0440\u0430\u0439:<\/p>\n\n\n\n<figure class=\"wp-block-table\"><table class=\"has-fixed-layout\"><tbody><tr><th>\u0410\u043d\u0433\u0438\u043b\u0430\u043b<\/th><th>\u0413\u043e\u043b \u0437\u043e\u0440\u0438\u043b\u0433\u043e<\/th><th>\u0416\u0438\u0448\u044d\u044d<\/th><\/tr><tr><td>\u0411\u04af\u0442\u044d\u044d\u043b\u0447<\/td><td>\u041e\u0431\u044a\u0435\u043a\u0442 \u04af\u04af\u0441\u0433\u044d\u0445<\/td><td>Singleton, \u04ae\u0439\u043b\u0434\u0432\u044d\u0440, \u0411\u0430\u0440\u0438\u043b\u0433\u0430\u0447\u0438\u043d<\/td><\/tr><tr><td>\u0411\u04af\u0442\u0446\u0438\u0439\u043d<\/td><td>\u041e\u0431\u044a\u0435\u043a\u0442\u0443\u0443\u0434\u044b\u0433 \u0437\u043e\u0445\u0438\u043e\u043d \u0431\u0430\u0439\u0433\u0443\u0443\u043b\u0430\u0445<\/td><td>\u0410\u0434\u0430\u043f\u0442\u0435\u0440, \u0437\u0430\u0441\u0430\u043b \u0447\u0438\u043c\u044d\u0433\u043b\u044d\u043b, \u0444\u0430\u0441\u0430\u0434<\/td><\/tr><tr><td>\u0417\u0430\u043d \u0442\u04e9\u043b\u04e9\u0432<\/td><td>\u041e\u0431\u044a\u0435\u043a\u0442\u0443\u0443\u0434\u044b\u043d \u0445\u043e\u043e\u0440\u043e\u043d\u0434\u044b\u043d \u0445\u0430\u0440\u0438\u043b\u0446\u0430\u043d \u04af\u0439\u043b\u0447\u043b\u044d\u043b<\/td><td>\u0410\u0436\u0438\u0433\u043b\u0430\u0433\u0447, \u0441\u0442\u0440\u0430\u0442\u0435\u0433\u0438, \u0442\u0443\u0448\u0430\u0430\u043b<\/td><\/tr><\/tbody><\/table><\/figure>\n\n\n\n<p class=\"wp-block-paragraph\">\u0427\u0443\u0445\u0430\u043b \u0442\u043e\u0434\u0440\u0443\u0443\u043b\u0433\u0430: GoF \u0434\u0438\u0437\u0430\u0439\u043d\u044b \u0437\u0430\u0433\u0432\u0430\u0440 \u043d\u044c \u0437\u0430\u0430\u0432\u0430\u043b \u0434\u0430\u0433\u0430\u0436 \u043c\u04e9\u0440\u0434\u04e9\u0445 \u0434\u04af\u0440\u044d\u043c \u044d\u0441\u0432\u044d\u043b \u0445\u0443\u0443\u043b\u0431\u0430\u0440\u043b\u0430\u0445\u0430\u0434 \u0431\u044d\u043b\u044d\u043d \u043a\u043e\u0434 \u0431\u0438\u0448 \u044e\u043c. \u042d\u0434\u0433\u044d\u044d\u0440 \u043d\u044c \u0442\u043e\u0434\u043e\u0440\u0445\u043e\u0439 \u0430\u0441\u0443\u0443\u0434\u043b\u044b\u043d \u0434\u0430\u0433\u0443\u0443 \u0437\u043e\u0445\u0438\u0446\u0441\u043e\u043d, \u043d\u0438\u0439\u0442\u044d\u044d\u0440 \u0445\u04af\u043b\u044d\u044d\u043d \u0437\u04e9\u0432\u0448\u04e9\u04e9\u0440\u04e9\u0433\u0434\u0441\u04e9\u043d \u0448\u0438\u0439\u0434\u043b\u04af\u04af\u0434 \u044e\u043c.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">\u0421\u0430\u043d\u0430\u0436 \u0431\u0430\u0439\u0433\u0430\u0430\u0440\u0430\u0439: GoF = 4 \u0437\u043e\u0445\u0438\u043e\u0433\u0447 + 23 \u0434\u0438\u0437\u0430\u0439\u043d\u044b \u0437\u0430\u0433\u0432\u0430\u0440 + 3 \u0430\u043d\u0433\u0438\u043b\u0430\u043b.<\/p>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h1 class=\"wp-block-heading\">\u0425\u044d\u0448 \u0444\u0443\u043d\u043a\u0446<\/h1>\n\n\n\n<p class=\"wp-block-paragraph\">\u0425\u044d\u0448 \u0444\u0443\u043d\u043a\u0446 \u043d\u044c \u0434\u0443\u0440\u044b\u043d \u0443\u0440\u0442\u0442\u0430\u0439 \u043e\u0440\u043e\u043b\u0442 (\u041e\u0440\u043e\u043b\u0442) \u0430\u0432\u0447, \u0425\u044d\u0448 \u0443\u0442\u0433\u0430 \u044d\u0441\u0432\u044d\u043b \u0425\u044d\u0448 \u0433\u044d\u0436 \u043d\u044d\u0440\u043b\u044d\u0433\u0434\u0434\u044d\u0433 \u0442\u043e\u0433\u0442\u043c\u043e\u043b \u0443\u0440\u0442\u0442\u0430\u0439 \u04af\u0440 \u0434\u04af\u043d\u0433 \u04af\u04af\u0441\u0433\u044d\u0434\u044d\u0433 \u043c\u0430\u0442\u0435\u043c\u0430\u0442\u0438\u043a \u0444\u0443\u043d\u043a\u0446 \u044e\u043c.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">\u0425\u044d\u0448 \u0444\u0443\u043d\u043a\u0446\u0438\u0439\u0433 Java, \u043c\u044d\u0434\u044d\u044d\u043b\u043b\u0438\u0439\u043d \u0441\u0430\u043d, \u043a\u0440\u0438\u043f\u0442\u043e\u0433\u0440\u0430\u0444, \u043c\u044d\u0434\u044d\u044d\u043b\u043b\u0438\u0439\u043d \u0431\u04af\u0442\u0446\u044d\u0434 \u04e9\u0440\u0433\u04e9\u043d \u0430\u0448\u0438\u0433\u043b\u0430\u0434\u0430\u0433.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">1. \u0425\u044d\u0448 \u0444\u0443\u043d\u043a\u0446\u04af\u04af\u0434\u0438\u0439\u043d \u04af\u043d\u0434\u0441\u044d\u043d \u0448\u0438\u043d\u0436 \u0447\u0430\u043d\u0430\u0440\u0443\u0443\u0434<\/h2>\n\n\n\n<ul class=\"wp-block-list\">\n<li>\u0422\u043e\u0434\u043e\u0440\u0445\u043e\u0439\u043b\u043e\u0433\u0447: \u0418\u0436\u0438\u043b \u043e\u0440\u043e\u043b\u0442 \u043d\u044c \u04af\u0440\u0433\u044d\u043b\u0436 \u0438\u0436\u0438\u043b \u0425\u044d\u0448 \u04af\u04af\u0441\u0433\u044d\u0434\u044d\u0433.<\/li>\n\n\n\n<li>\u0425\u0443\u0440\u0434\u0430\u043d: \u0425\u044d\u0448 \u0443\u0442\u0433\u044b\u0433 \u0445\u0443\u0440\u0434\u0430\u043d \u0442\u043e\u043e\u0446\u0434\u043e\u0433.<\/li>\n\n\n\n<li>\u041c\u04e9\u0440\u0433\u04e9\u043b\u0434\u04e9\u04e9\u043d\u0438\u0439 \u044d\u0441\u044d\u0440\u0433\u04af\u04af\u0446\u044d\u043b: \u041d\u044d\u0433 \u0445\u044d\u0448\u0442\u044d\u0439 \u0445\u043e\u0451\u0440 \u04e9\u04e9\u0440 \u043e\u0440\u043e\u043b\u0442\u044b\u0433 \u043e\u043b\u043e\u0445\u043e\u0434 \u0445\u044d\u0446\u04af\u04af \u0431\u0430\u0439\u0434\u0430\u0433.<\/li>\n\n\n\n<li>\u0411\u0443\u0446\u0430\u0445 \u0431\u043e\u043b\u043e\u043c\u0436\u0433\u04af\u0439 (\u041d\u044d\u0433 \u0442\u0430\u043b\u044b\u043d): \u0417\u04e9\u0432\u0445\u04e9\u043d \u0425\u044d\u0448\u044d\u044d\u0441 \u0430\u043d\u0445\u043d\u044b \u043e\u0440\u043e\u043b\u0442\u044b\u0433 \u0441\u044d\u0440\u0433\u044d\u044d\u0445 \u043d\u044c \u0431\u0430\u0440\u0430\u0433 \u0431\u043e\u043b\u043e\u043c\u0436\u0433\u04af\u0439 \u044e\u043c.<\/li>\n\n\n\n<li>\u041d\u044d\u0433 \u0442\u04e9\u0440\u043b\u0438\u0439\u043d \u0445\u0443\u0432\u0430\u0430\u0440\u0438\u043b\u0430\u043b\u0442: \u0425\u044d\u0448 \u0443\u0442\u0433\u0443\u0443\u0434 \u0436\u0438\u0433\u0434 \u0442\u0430\u0440\u0445\u0441\u0430\u043d \u0431\u0430\u0439\u0445 \u0451\u0441\u0442\u043e\u0439.<\/li>\n<\/ul>\n\n\n\n<p class=\"wp-block-paragraph\">\u0425\u044d\u0448 \u043c\u04e9\u0440\u0433\u04e9\u043b\u0434\u04e9\u04e9\u043d: \u0425\u043e\u0451\u0440 \u04e9\u04e9\u0440 \u043e\u0440\u043e\u043b\u0442 \u043d\u044c \u0438\u0436\u0438\u043b \u0425\u044d\u0448 \u0443\u0442\u0433\u044b\u0433 \u04af\u04af\u0441\u0433\u044d\u0445 \u04af\u0435\u0434 \u04af\u04af\u0441\u0434\u044d\u0433.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">2. \u0425\u044d\u0448 \u0444\u0443\u043d\u043a\u0446\u0438\u0439\u0433 \u0445\u0430\u0430\u043d\u0430 \u0430\u0448\u0438\u0433\u043b\u0430\u0434\u0430\u0433 \u0432\u044d?<\/h2>\n\n\n\n<figure class=\"wp-block-table\"><table class=\"has-fixed-layout\"><tbody><tr><th>\u04e8\u0440\u0433\u04e9\u0434\u04e9\u043b<\/th><th>\u0417\u043e\u0440\u0438\u043b\u0433\u043e<\/th><\/tr><tr><td>\u04e8\u0433\u04e9\u0433\u0434\u043b\u0438\u0439\u043d \u0431\u04af\u0440\u044d\u043d \u0431\u04af\u0442\u044d\u043d \u0431\u0430\u0439\u0434\u0430\u043b<\/td><td>\u04e8\u0433\u04e9\u0433\u0434\u04e9\u043b \u04e9\u04e9\u0440\u0447\u043b\u04e9\u0433\u0434\u0441\u04e9\u043d \u044d\u0441\u044d\u0445\u0438\u0439\u0433 \u0448\u0430\u043b\u0433\u0430\u0436 \u0431\u0430\u0439\u043d\u0430.<\/td><\/tr><tr><td>\u041d\u0443\u0443\u0446 \u04af\u0433 \u0445\u0430\u0434\u0433\u0430\u043b\u0430\u0445<\/td><td>\u0410\u043d\u0445\u043d\u044b \u043d\u0443\u0443\u0446 \u04af\u0433\u0438\u0439\u043d \u043e\u0440\u043e\u043d\u0434 \u043d\u0443\u0443\u0446 \u04af\u0433\u0438\u0439\u043d \u0445\u044d\u0448\u0438\u0439\u0433 \u0445\u0430\u0434\u0433\u0430\u043b\u0430\u0445.<\/td><\/tr><tr><td>\u041a\u0440\u0438\u043f\u0442\u043e\u0433\u0440\u0430\u0444<\/td><td>\u0422\u043e\u043e\u043d \u0433\u0430\u0440\u044b\u043d \u04af\u0441\u044d\u0433 \u0431\u043e\u043b\u043e\u043d \u0431\u0443\u0441\u0430\u0434 \u043a\u0440\u0438\u043f\u0442\u043e\u0433\u0440\u0430\u0444 \u043c\u0435\u0445\u0430\u043d\u0438\u0437\u043c\u0443\u0443\u0434.<\/td><\/tr><tr><td>\u0425\u044d\u0448 \u0445\u04af\u0441\u043d\u044d\u0433\u0442\u04af\u04af\u0434<\/td><td>\u04e8\u0433\u04e9\u0433\u0434\u043b\u0438\u0439\u0433 \u0445\u0443\u0440\u0434\u0430\u043d \u0445\u0430\u0439\u0436 \u043e\u043b\u043e\u043e\u0434 \u0445\u0430\u0434\u0433\u0430\u043b.<\/td><\/tr><tr><td>\u0411\u043b\u043e\u043a\u0447\u0435\u0439\u043d<\/td><td>\u0411\u043b\u043e\u043a\u0443\u0443\u0434\u044b\u0433 \u0445\u043e\u043b\u0431\u043e\u0445, \u0431\u04af\u0440\u044d\u043d \u0431\u04af\u0442\u044d\u043d \u0431\u0430\u0439\u0434\u043b\u044b\u0433 \u0448\u0430\u043b\u0433\u0430\u0445.<\/td><\/tr><\/tbody><\/table><\/figure>\n\n\n\n<h2 class=\"wp-block-heading\">3. SHA (Secure Hash Algorithm)<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">SHA \u0431\u043e\u043b \u043a\u0440\u0438\u043f\u0442\u043e\u0433\u0440\u0430\u0444\u0438\u0439\u043d \u0445\u044d\u0448 \u0430\u043b\u0433\u043e\u0440\u0438\u0442\u043c\u0443\u0443\u0434\u044b\u043d \u0433\u044d\u0440 \u0431\u04af\u043b \u044e\u043c.<\/p>\n\n\n\n<figure class=\"wp-block-table\"><table class=\"has-fixed-layout\"><tbody><tr><th>\u0410\u043b\u0433\u043e\u0440\u0438\u0442\u043c<\/th><th>HashLength<\/th><\/tr><tr><td>SHA-1<\/td><td>160 \u0431\u0438\u0442<\/td><\/tr><tr><td>SHA-256<\/td><td>256 \u0431\u0438\u0442<\/td><\/tr><tr><td>SHA-384<\/td><td>384 \u0431\u0438\u0442<\/td><\/tr><tr><td>SHA-512<\/td><td>512 \u0431\u0438\u0442<\/td><\/tr><\/tbody><\/table><\/figure>\n\n\n\n<p class=\"wp-block-paragraph\">\u0427\u0443\u0445\u0430\u043b: SHA-1 \u043d\u044c \u043c\u04e9\u0440\u0433\u04e9\u043b\u0434\u04e9\u04e9\u043d\u0438\u0439 \u0434\u0430\u0439\u0440\u0430\u043b\u0442\u0430\u0430\u0441 \u0445\u0430\u043c\u0433\u0430\u0430\u043b\u0430\u0433\u0434\u0430\u0445\u0430\u0430 \u0431\u043e\u043b\u044c\u0441\u043e\u043d. SHA-256 \u0431\u0430 SHA-512 \u043d\u044c \u043a\u0440\u0438\u043f\u0442\u043e\u0433\u0440\u0430\u0444\u0438\u0434 \u04e9\u0440\u0433\u04e9\u043d \u0445\u044d\u0440\u044d\u0433\u043b\u044d\u0433\u0434\u0434\u044d\u0433 \u0445\u044d\u0432\u044d\u044d\u0440 \u0431\u0430\u0439\u043d\u0430.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">4. Java \u0436\u0438\u0448\u044d\u044d \u2013 SHA-256<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">Java \u0445\u044d\u043b \u0434\u044d\u044d\u0440 \u0431\u0438\u0434 \u0430\u0448\u0438\u0433\u043b\u0430\u0434\u0430\u0433 <code>MessageDigest<\/code> \u0431\u0430\u0433\u0446\u0430\u0430\u0441 <code>java.security<\/code>.<\/p>\n\n\n<div class=\"wp-block-code\">\n\t<div class=\"cm-editor\">\n\t\t<div class=\"cm-scroller\">\n\t\t\t\n<pre>\n<code class=\"language-mathematica\"><div class=\"cm-line\"><span class=\"tok-keyword\">import<\/span> <span class=\"tok-keyword\">java<\/span><span class=\"tok-operator\">.<\/span><span class=\"tok-keyword\">security<\/span><span class=\"tok-operator\">.<\/span><span class=\"tok-keyword\">MessageDigest<\/span><span class=\"tok-operator\">;<\/span><\/div><div class=\"cm-line\"><span class=\"tok-keyword\">import<\/span> <span class=\"tok-keyword\">java<\/span><span class=\"tok-operator\">.<\/span><span class=\"tok-keyword\">security<\/span><span class=\"tok-operator\">.<\/span><span class=\"tok-keyword\">NoSuchAlgorithmException<\/span><span class=\"tok-operator\">;<\/span><\/div><div class=\"cm-line\"><span class=\"tok-keyword\">import<\/span> <span class=\"tok-keyword\">java<\/span><span class=\"tok-operator\">.<\/span><span class=\"tok-keyword\">util<\/span><span class=\"tok-operator\">.<\/span><span class=\"tok-keyword\">HexFormat<\/span><span class=\"tok-operator\">;<\/span><\/div><div class=\"cm-line\"><\/div><div class=\"cm-line\"><span class=\"tok-keyword\">public<\/span> <span class=\"tok-keyword\">class<\/span> <span class=\"tok-keyword\">HashExample<\/span> <span class=\"tok-punctuation\">{<\/span><\/div><div class=\"cm-line\"><\/div><div class=\"cm-line\">    <span class=\"tok-keyword\">public<\/span> <span class=\"tok-keyword\">static<\/span> <span class=\"tok-keyword\">void<\/span> <span class=\"tok-keyword\">main<\/span><span class=\"tok-punctuation\">(<\/span><span class=\"tok-keyword\">String<\/span><span class=\"tok-punctuation\">[]<\/span> <span class=\"tok-keyword\">args<\/span><span class=\"tok-punctuation\">)<\/span><\/div><div class=\"cm-line\">            <span class=\"tok-keyword\">throws<\/span> <span class=\"tok-keyword\">NoSuchAlgorithmException<\/span> <span class=\"tok-punctuation\">{<\/span><\/div><div class=\"cm-line\"><\/div><div class=\"cm-line\">        <span class=\"tok-keyword\">String<\/span> <span class=\"tok-keyword\">input<\/span> <span class=\"tok-operator\">=<\/span> <span class=\"tok-string\">&quot;Hello Java&quot;<\/span><span class=\"tok-operator\">;<\/span><\/div><div class=\"cm-line\"><\/div><div class=\"cm-line\">        <span class=\"tok-keyword\">MessageDigest<\/span> <span class=\"tok-keyword\">digest<\/span> <span class=\"tok-operator\">=<\/span><\/div><div class=\"cm-line\">                <span class=\"tok-keyword\">MessageDigest<\/span><span class=\"tok-operator\">.<\/span><span class=\"tok-keyword\">getInstance<\/span><span class=\"tok-punctuation\">(<\/span><span class=\"tok-string\">&quot;SHA-256&quot;<\/span><span class=\"tok-punctuation\">)<\/span><span class=\"tok-operator\">;<\/span><\/div><div class=\"cm-line\"><\/div><div class=\"cm-line\">        <span class=\"tok-keyword\">byte<\/span><span class=\"tok-punctuation\">[]<\/span> <span class=\"tok-keyword\">hash<\/span> <span class=\"tok-operator\">=<\/span> <span class=\"tok-keyword\">digest<\/span><span class=\"tok-operator\">.<\/span><span class=\"tok-keyword\">digest<\/span><span class=\"tok-punctuation\">(<\/span><\/div><div class=\"cm-line\">                <span class=\"tok-keyword\">input<\/span><span class=\"tok-operator\">.<\/span><span class=\"tok-keyword\">getBytes<\/span><span class=\"tok-punctuation\">(<\/span><\/div><div class=\"cm-line\">                <span class=\"tok-keyword\">java<\/span><span class=\"tok-operator\">.<\/span><span class=\"tok-keyword\">nio<\/span><span class=\"tok-operator\">.<\/span><span class=\"tok-keyword\">charset<\/span><span class=\"tok-operator\">.<\/span><span class=\"tok-keyword\">StandardCharsets<\/span><span class=\"tok-operator\">.<\/span><span class=\"tok-variableName2\">UTF_<\/span><span class=\"tok-number\">8<\/span><span class=\"tok-punctuation\">)<\/span><\/div><div class=\"cm-line\">        <span class=\"tok-punctuation\">)<\/span><span class=\"tok-operator\">;<\/span><\/div><div class=\"cm-line\"><\/div><div class=\"cm-line\">        <span class=\"tok-keyword\">String<\/span> <span class=\"tok-keyword\">hexHash<\/span> <span class=\"tok-operator\">=<\/span> <span class=\"tok-keyword\">HexFormat<\/span><span class=\"tok-operator\">.<\/span><span class=\"tok-keyword\">of<\/span><span class=\"tok-punctuation\">()<\/span><span class=\"tok-operator\">.<\/span><span class=\"tok-keyword\">formatHex<\/span><span class=\"tok-punctuation\">(<\/span><span class=\"tok-keyword\">hash<\/span><span class=\"tok-punctuation\">)<\/span><span class=\"tok-operator\">;<\/span><\/div><div class=\"cm-line\"><\/div><div class=\"cm-line\">        <span class=\"tok-keyword\">System<\/span><span class=\"tok-operator\">.<\/span><span class=\"tok-keyword\">out<\/span><span class=\"tok-operator\">.<\/span><span class=\"tok-keyword\">println<\/span><span class=\"tok-punctuation\">(<\/span><span class=\"tok-keyword\">hexHash<\/span><span class=\"tok-punctuation\">)<\/span><span class=\"tok-operator\">;<\/span><\/div><div class=\"cm-line\">    <span class=\"tok-punctuation\">}<\/span><\/div><div class=\"cm-line\"><span class=\"tok-punctuation\">}<\/span><\/div><\/code><\/pre>\n\t\t<\/div>\n\t<\/div>\n<\/div>\n\n\n<h3 class=\"wp-block-heading\">\u0422\u0430\u0439\u043b\u0431\u0430\u0440<\/h3>\n\n\n\n<ol class=\"wp-block-list\">\n<li>\u04e8\u0433\u04e9\u0433\u0434\u04e9\u043b \u043e\u0440\u0443\u0443\u043b\u0430\u0445: <code>input<\/code> \u0431\u0438\u0434\u043d\u0438\u0439 \u0445\u044d\u0448 \u0445\u0438\u0439\u0445\u0438\u0439\u0433 \u0445\u04af\u0441\u044d\u0436 \u0431\u0443\u0439 \u04e9\u0433\u04e9\u0433\u0434\u043b\u0438\u0439\u0433 \u0430\u0433\u0443\u0443\u043b\u043d\u0430.<\/li>\n\n\n\n<li>MessageDigest \u044d\u0445\u043b\u04af\u04af\u043b\u044d\u0445: <code>getInstance(\"SHA-256\")<\/code> \u0441\u043e\u043d\u0433\u043e\u0441\u043e\u043d \u0445\u044d\u0448 \u0430\u043b\u0433\u043e\u0440\u0438\u0442\u043c\u0442\u0430\u0439 \u0436\u0438\u0448\u044d\u044d\u0433 \u04af\u04af\u0441\u0433\u044d\u0434\u044d\u0433.<\/li>\n\n\n\n<li>\u0425\u044d\u0448 \u0445\u0438\u0439\u0445: <code>digest()<\/code> \u0425\u044d\u0448 \u0443\u0442\u0433\u044b\u0433 \u0442\u043e\u043e\u0446\u043e\u043e\u043b\u0436, \u04af\u0440 \u0434\u04af\u043d\u0433 \u0434\u0430\u0440\u0430\u0430\u0445 \u0431\u0430\u0439\u0434\u043b\u0430\u0430\u0440 \u0431\u0443\u0446\u0430\u0430\u043d\u0430 <code>byte[]<\/code>.<\/li>\n\n\n\n<li>\u0410\u0440\u0432\u0430\u043d \u0430\u0440\u0432\u0430\u043d\u0442\u044b\u043d \u0445\u04e9\u0440\u0432\u04af\u04af\u043b\u044d\u043b\u0442: <code>HexFormat<\/code> \u0445\u043e\u0451\u0440\u0442\u044b\u043d \u04af\u0440 \u0434\u04af\u043d\u0433 \u0443\u043d\u0448\u0438\u0433\u0434\u0430\u0445 \u0431\u043e\u043b\u043e\u043c\u0436\u0442\u043e\u0439 \u0430\u0440\u0432\u0430\u043d \u0437\u0443\u0440\u0433\u0430\u0430\u043d \u0442\u043e\u043e\u0442 \u043c\u04e9\u0440 \u0431\u043e\u043b\u0433\u043e\u043d \u0445\u0443\u0432\u0438\u0440\u0433\u0430\u0434\u0430\u0433.<\/li>\n<\/ol>\n\n\n\n<h2 class=\"wp-block-heading\">5. Java \u0445\u044d\u043b \u0434\u044d\u044d\u0440\u0445 HashMap \u2013 \u0416\u0438\u0448\u044d\u044d<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">HashMap \u043d\u044c \u04e9\u0433\u04e9\u0433\u0434\u043b\u0438\u0439\u0433 \u0445\u043e\u0441\u043e\u043e\u0440 \u043d\u044c \u0445\u0430\u0434\u0433\u0430\u043b\u0430\u0445, \u043e\u043b\u043e\u0445\u043e\u0434 Hashing \u0430\u0448\u0438\u0433\u043b\u0430\u0434\u0430\u0433 \u04e9\u0433\u04e9\u0433\u0434\u043b\u0438\u0439\u043d \u0431\u04af\u0442\u044d\u0446 \u044e\u043c <code>key-value<\/code>.<\/p>\n\n\n<div class=\"wp-block-code\">\n\t<div class=\"cm-editor\">\n\t\t<div class=\"cm-scroller\">\n\t\t\t\n<pre>\n<code><div class=\"cm-line\">import java.util.HashMap;<\/div><div class=\"cm-line\">import java.util.Map;<\/div><div class=\"cm-line\"><\/div><div class=\"cm-line\">public class Main {<\/div><div class=\"cm-line\"><\/div><div class=\"cm-line\">    public static void main(String[] args) {<\/div><div class=\"cm-line\"><\/div><div class=\"cm-line\">        Map&lt;Integer, String&gt; employees = new HashMap&lt;&gt;();<\/div><div class=\"cm-line\"><\/div><div class=\"cm-line\">        employees.put(101, &quot;John&quot;);<\/div><div class=\"cm-line\">        employees.put(102, &quot;Alice&quot;);<\/div><div class=\"cm-line\">        employees.put(103, &quot;Peter&quot;);<\/div><div class=\"cm-line\"><\/div><div class=\"cm-line\">        \/\/ Retrieve value by key<\/div><div class=\"cm-line\">        System.out.println(employees.get(102));<\/div><div class=\"cm-line\"><\/div><div class=\"cm-line\">        \/\/ Check if key exists<\/div><div class=\"cm-line\">        System.out.println(employees.containsKey(101));<\/div><div class=\"cm-line\"><\/div><div class=\"cm-line\">        \/\/ Remove entry<\/div><div class=\"cm-line\">        employees.remove(103);<\/div><div class=\"cm-line\">    }<\/div><div class=\"cm-line\">}<\/div><\/code><\/pre>\n\t\t<\/div>\n\t<\/div>\n<\/div>\n\n\n<p class=\"wp-block-paragraph\">HashMap \u0445\u044d\u0440\u0445\u044d\u043d \u0430\u0436\u0438\u043b\u043b\u0430\u0434\u0430\u0433 \u0432\u044d?<\/p>\n\n\n\n<ol class=\"wp-block-list\">\n<li>\u0414\u0443\u0443\u0434\u0430\u0436 \u0431\u0430\u0439\u043d\u0430 <code>hashCode()<\/code> \u0422\u04af\u043b\u0445\u04af\u04af\u0440 \u0434\u044d\u044d\u0440.<\/li>\n\n\n\n<li>\u0414\u043e\u0442\u043e\u043e\u0434 \u0431\u04af\u0442\u044d\u0446 \u0434\u044d\u0445 \u0431\u0430\u0439\u0440\u043b\u0430\u043b\u044b\u0433 (\u0425\u0443\u0432\u0438\u043d) \u0442\u043e\u043e\u0446\u043e\u043e\u043b\u043d\u043e.<\/li>\n\n\n\n<li>\u0422\u04af\u043b\u0445\u04af\u04af\u0440 \u0431\u043e\u043b\u043e\u043d \u0443\u0442\u0433\u044b\u0433 \u0445\u0430\u0440\u0433\u0430\u043b\u0437\u0430\u0445 \u0445\u0443\u0432\u0438\u043d \u0434\u043e\u0442\u043e\u0440 \u0445\u0430\u0434\u0433\u0430\u043b\u043d\u0430.<\/li>\n\n\n\n<li>At <code>get(key)<\/code> \u0425\u0443\u0432\u0438\u043d\u044b\u0433 \u043e\u043b\u043e\u0445\u044b\u043d \u0442\u0443\u043b\u0434 \u0434\u0430\u0445\u0438\u043d Hashing \u0430\u0448\u0438\u0433\u043b\u0430\u0434\u0430\u0433.<\/li>\n\n\n\n<li>\u0425\u044d\u0440\u044d\u0433\u043b\u044d\u044d <code>equals()<\/code> \u0442\u0443\u0441\u0433\u0430\u0439 \u0422\u04af\u043b\u0445\u04af\u04af\u0440\u0438\u0439\u0433 \u0448\u0430\u043b\u0433\u0430\u0445, \u044f\u043b\u0430\u043d\u0433\u0443\u044f\u0430 Hash Collisions-\u0434.<\/li>\n<\/ol>\n\n\n\n<p class=\"wp-block-paragraph\">HashMap &#8211; \u044d\u043d\u044d \u043d\u044c \u0445\u044d\u0440\u0445\u044d\u043d \u0430\u0436\u0438\u043b\u043b\u0430\u0434\u0430\u0433<\/p>\n\n\n\n<p class=\"wp-block-paragraph\"><code>put(101, \"John\")<\/code><\/p>\n\n\n\n<p class=\"wp-block-paragraph\"><code>hashCode()<\/code> \u2192 \u0425\u044d\u0448 \u0443\u0442\u0433\u0430<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">\u0428\u0430\u043d\u0430\u0433\u0430\u043d\u044b \u0438\u043d\u0434\u0435\u043a\u0441\u0438\u0439\u0433 \u0442\u043e\u043e\u0446\u043e\u043e\u043b\u043e\u0445<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">\u0425\u0443\u0432\u0438\u043d \u2192 \u0422\u04af\u043b\u0445\u04af\u04af\u0440 + \u0423\u0442\u0433\u0430<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">6. Java \u0445\u04e9\u0433\u0436\u04af\u04af\u043b\u044d\u0433\u0447\u0438\u0439\u043d \u044f\u0440\u0438\u043b\u0446\u043b\u0430\u0433\u0430\u0434 \u0447\u0443\u0445\u0430\u043b<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">\u0425\u044d\u0448\u0433\u0438\u0439\u043d \u0445\u043e\u0451\u0440 \u0442\u04e9\u0440\u043b\u0438\u0439\u0433 \u0430\u043d\u0434\u0443\u0443\u0440\u0447 \u0431\u043e\u043b\u043e\u0445\u0433\u04af\u0439:<\/p>\n\n\n\n<figure class=\"wp-block-table\"><table class=\"has-fixed-layout\"><tbody><tr><th>\u041a\u0440\u0438\u043f\u0442\u043e\u0433\u0440\u0430\u0444\u0438\u0439\u043d \u0445\u044d\u0448<\/th><th>Java HashMap Hashing<\/th><\/tr><tr><td>\u0410\u044e\u0443\u043b\u0433\u04af\u0439 \u0431\u0430\u0439\u0434\u0430\u043b, \u043c\u044d\u0434\u044d\u044d\u043b\u043b\u0438\u0439\u043d \u0431\u04af\u0440\u044d\u043d \u0431\u04af\u0442\u044d\u043d \u0431\u0430\u0439\u0434\u0430\u043b\u0434 \u0430\u0448\u0438\u0433\u043b\u0430\u0434\u0430\u0433.<\/td><td>\u042d\u043d\u044d \u043d\u044c \u04e9\u0433\u04e9\u0433\u0434\u04e9\u043b\u0434 \u0445\u0443\u0440\u0434\u0430\u043d \u043d\u044d\u0432\u0442\u0440\u044d\u0445\u044d\u0434 \u0430\u0448\u0438\u0433\u043b\u0430\u0433\u0434\u0434\u0430\u0433.<\/td><\/tr><tr><td>\u0416\u0438\u0448\u044d\u044d \u043d\u044c: SHA-256.<\/td><td>\u0425\u044d\u0440\u044d\u0433\u043b\u044d\u044d <code>hashCode()<\/code>.<\/td><\/tr><tr><td>\u041c\u04e9\u0440\u0433\u04e9\u043b\u0434\u04e9\u04e9\u043d\u0438\u0439\u0433 \u043e\u043b\u043e\u0445\u043e\u0434 \u0445\u044d\u0446\u04af\u04af \u0431\u0430\u0439\u0434\u0430\u0433.<\/td><td>\u041c\u04e9\u0440\u0433\u04e9\u043b\u0434\u04e9\u0445 \u0431\u043e\u043b\u043e\u043c\u0436\u0442\u043e\u0439 \u0431\u04e9\u0433\u04e9\u04e9\u0434 \u04af\u04af\u043d\u0438\u0439\u0433 \u0437\u043e\u0445\u0438\u0446\u0443\u0443\u043b\u0434\u0430\u0433.<\/td><\/tr><tr><td>\u042d\u043d\u044d \u043d\u044c \u0442\u043e\u0434\u043e\u0440\u0445\u043e\u0439 \u04af\u0440 \u0434\u04af\u043d\u0433\u0438\u0439\u043d \u0443\u0440\u0442\u0442\u0430\u0439.<\/td><td>\u0425\u0443\u0432\u0438\u043d\u044b\u0433 \u0442\u043e\u0434\u043e\u0440\u0445\u043e\u0439\u043b\u043e\u0445\u044b\u043d \u0442\u0443\u043b\u0434 \u0445\u044d\u0448 \u0443\u0442\u0433\u044b\u0433 \u0430\u0448\u0438\u0433\u043b\u0430\u043d\u0430.<\/td><\/tr><\/tbody><\/table><\/figure>\n\n\n\n<p class=\"wp-block-paragraph\">\u04e8\u04e9\u0440 \u0433\u0443\u0440\u0432\u0430\u043d \u0437\u04af\u0439\u043b\u0438\u0439\u0433 \u0441\u0430\u043d\u0430\u0430\u0440\u0430\u0439:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li><code>hashCode()<\/code> \u0431\u043e\u043b\u043e\u043d <code>equals()<\/code> \u04e9\u04e9\u0440\u0438\u0439\u043d \u0422\u04af\u043b\u0445\u04af\u04af\u0440\u0438\u0439\u0433 \u04af\u04af\u0441\u0433\u044d\u0445\u0434\u044d\u044d \u0437\u043e\u0445\u0438\u0445 \u0451\u0441\u043e\u043e\u0440 \u0445\u044d\u0440\u044d\u0433\u0436\u04af\u04af\u043b\u044d\u0445 \u0451\u0441\u0442\u043e\u0439 <code>HashMap<\/code>.<\/li>\n\n\n\n<li>\u0418\u0436\u0438\u043b \u0442\u04e9\u0441\u0442\u044d\u0439 \u0445\u043e\u0451\u0440 \u043e\u0431\u044a\u0435\u043a\u0442 <code>hashCode()<\/code> \u0442\u044d\u043d\u0446\u04af\u04af \u0431\u0430\u0439\u0445 \u0430\u043b\u0431\u0430\u0433\u04af\u0439.<\/li>\n\n\n\n<li>\u041d\u0443\u0443\u0446 \u04af\u0433\u0438\u0439\u0433 \u044d\u043d\u0433\u0438\u0439\u043d SHA-256 \u0430\u0448\u0438\u0433\u043b\u0430\u043d \u0445\u0430\u0434\u0433\u0430\u043b\u0430\u0445 \u0451\u0441\u0433\u04af\u0439. \u0422\u044d\u0434\u043d\u0438\u0439 \u0445\u0443\u0432\u044c\u0434 Argon2id, bcrypt \u044d\u0441\u0432\u044d\u043b PBKDF2, \u0434\u0430\u0432\u0441\u0442\u0430\u0439 \u0437\u044d\u0440\u044d\u0433 \u0442\u0443\u0441\u0433\u0430\u0439 \u0430\u043b\u0433\u043e\u0440\u0438\u0442\u043c\u0443\u0443\u0434\u044b\u0433 \u0430\u0448\u0438\u0433\u043b\u0430\u0434\u0430\u0433.<\/li>\n<\/ul>\n\n\n\n<p class=\"wp-block-paragraph\">\u0425\u0430\u043c\u0433\u0438\u0439\u043d \u0447\u0443\u0445\u0430\u043b \u043d\u044c: \u0425\u044d\u0448 \u0444\u0443\u043d\u043a\u0446 \u043d\u044c \u04e9\u0433\u04e9\u0433\u0434\u043b\u0438\u0439\u0433 \u0425\u044d\u0448 \u0443\u0442\u0433\u0430 \u0431\u043e\u043b\u0433\u043e\u043d \u0445\u0443\u0432\u0438\u0440\u0433\u0430\u0434\u0430\u0433. Java \u0445\u044d\u043b \u0434\u044d\u044d\u0440 <code>HashMap<\/code> \u0445\u0443\u0440\u0434\u0430\u043d \u0445\u0430\u0434\u0433\u0430\u043b\u0430\u0445, \u043e\u043b\u043e\u0445\u044b\u043d \u0442\u0443\u043b\u0434 Hashing \u0430\u0448\u0438\u0433\u043b\u0430\u0434\u0430\u0433 <code>key-value<\/code> \u0445\u043e\u0441\u0443\u0443\u0434.<\/p>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h1 class=\"wp-block-heading\">\u0414\u044d\u044d\u0434 \u0437\u044d\u0440\u044d\u0433\u043b\u044d\u043b\u0438\u0439\u043d \u0444\u0443\u043d\u043a\u0446<\/h1>\n\n\n\n<p class=\"wp-block-paragraph\">\u0414\u044d\u044d\u0434 \u0437\u044d\u0440\u044d\u0433\u043b\u044d\u043b\u0438\u0439\u043d \u0444\u0443\u043d\u043a\u0446 \u043d\u044c \u0431\u0443\u0441\u0430\u0434 \u0444\u0443\u043d\u043a\u0446\u0438\u0439\u0433 \u0430\u0440\u0433\u0443\u043c\u0435\u043d\u0442 \u0431\u043e\u043b\u0433\u043e\u043d \u0445\u04af\u043b\u044d\u044d\u043d \u0430\u0432\u0430\u0445 \u044d\u0441\u0432\u044d\u043b \u04af\u0440 \u0434\u04af\u043d\u0434 \u043d\u044c \u0444\u0443\u043d\u043a\u0446\u0438\u0439\u0433 \u0431\u0443\u0446\u0430\u0430\u0434\u0430\u0433 \u0444\u0443\u043d\u043a\u0446 (\u044d\u0441\u0432\u044d\u043b \u0430\u0440\u0433\u0430) \u044e\u043c.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">\u042d\u043d\u044d \u043d\u044c \u0444\u0443\u043d\u043a\u0446\u0443\u0443\u0434\u044b\u0433 \u043d\u044d\u0433\u0434\u04af\u0433\u044d\u044d\u0440 \u0437\u044d\u0440\u044d\u0433\u043b\u044d\u043b\u0438\u0439\u043d \u0438\u0440\u0433\u044d\u043d \u0433\u044d\u0436 \u04af\u0437\u0434\u044d\u0433 \u0431\u04e9\u0433\u04e9\u04e9\u0434 \u0438\u043b\u04af\u04af \u0443\u044f\u043d \u0445\u0430\u0442\u0430\u043d, \u0434\u0430\u0445\u0438\u043d \u0430\u0448\u0438\u0433\u043b\u0430\u0445 \u0431\u043e\u043b\u043e\u043c\u0436\u0442\u043e\u0439 \u043a\u043e\u0434\u044b\u0433 \u0431\u0438\u0439 \u0431\u043e\u043b\u0433\u043e\u0434\u043e\u0433.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">1. Java \u0445\u044d\u043b \u0434\u044d\u044d\u0440\u0445 \u0436\u0438\u0448\u044d\u044d<\/h2>\n\n\n<div class=\"wp-block-code\">\n\t<div class=\"cm-editor\">\n\t\t<div class=\"cm-scroller\">\n\t\t\t\n<pre>\n<code><div class=\"cm-line\">import java.util.function.Function;<\/div><div class=\"cm-line\"><\/div><div class=\"cm-line\">public class Main {<\/div><div class=\"cm-line\"><\/div><div class=\"cm-line\">    public static int applyFunction(<\/div><div class=\"cm-line\">            int value,<\/div><div class=\"cm-line\">            Function&lt;Integer, Integer&gt; function) {<\/div><div class=\"cm-line\"><\/div><div class=\"cm-line\">        return function.apply(value);<\/div><div class=\"cm-line\">    }<\/div><div class=\"cm-line\"><\/div><div class=\"cm-line\">    public static void main(String[] args) {<\/div><div class=\"cm-line\"><\/div><div class=\"cm-line\">        int result = applyFunction(5, x -&gt; x * x);<\/div><div class=\"cm-line\"><\/div><div class=\"cm-line\">        System.out.println(result); \/\/ 25<\/div><div class=\"cm-line\">    }<\/div><div class=\"cm-line\">}<\/div><\/code><\/pre>\n\t\t<\/div>\n\t<\/div>\n<\/div>\n\n\n<p class=\"wp-block-paragraph\">\u0422\u0430\u0439\u043b\u0431\u0430\u0440:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li><code>applyFunction()<\/code> \u042d\u043d\u044d \u043d\u044c \u0430\u0440\u0433\u0443\u043c\u0435\u043d\u0442 \u0431\u043e\u043b\u0433\u043e\u043d \u04e9\u04e9\u0440 \u0444\u0443\u043d\u043a\u0446\u0438\u0439\u0433 \u0430\u0432\u0434\u0430\u0433 \u0442\u0443\u043b \u0414\u044d\u044d\u0434 \u044d\u0440\u044d\u043c\u0431\u0438\u0439\u043d \u0444\u0443\u043d\u043a\u0446 \u044e\u043c.<\/li>\n\n\n\n<li><code>Function&lt;Integer, Integer&gt;<\/code> \u0424\u0443\u043d\u043a\u0446\u0438\u043e\u043d\u0430\u043b\u044c \u0438\u043d\u0442\u0435\u0440\u0444\u0435\u0439\u0441 \u044e\u043c.<\/li>\n\n\n\n<li><code>x -&gt; x * x<\/code> \u043d\u044c \u041b\u0430\u043c\u0431\u0434\u0430 \u0438\u043b\u044d\u0440\u0445\u0438\u0439\u043b\u044d\u043b \u044e\u043c.<\/li>\n\n\n\n<li><code>function.apply(value)<\/code> \u04e9\u0433\u04e9\u0433\u0434\u0441\u04e9\u043d \u0444\u0443\u043d\u043a\u0446\u0438\u0439\u0433 \u0433\u04af\u0439\u0446\u044d\u0442\u0433\u044d\u0434\u044d\u0433.<\/li>\n<\/ul>\n\n\n\n<h2 class=\"wp-block-heading\">2. \u041e\u043d\u0446\u043b\u043e\u0433 \u0448\u0438\u043d\u0436 \u0447\u0430\u043d\u0430\u0440<\/h2>\n\n\n\n<ol class=\"wp-block-list\">\n<li>\u0424\u0443\u043d\u043a\u0446\u0438\u0439\u0433 \u0430\u0440\u0433\u0443\u043c\u0435\u043d\u0442 \u0431\u043e\u043b\u0433\u043e\u043d \u0445\u04af\u043b\u044d\u044d\u043d \u0430\u0432\u043d\u0430: \u0424\u0443\u043d\u043a\u0446\u0438\u0439\u0433 \u043e\u0440\u043e\u043b\u0442\u044b\u043d \u043f\u0430\u0440\u0430\u043c\u0435\u0442\u0440 \u0431\u043e\u043b\u0433\u043e\u043d \u0445\u04af\u043b\u044d\u044d\u043d \u0430\u0432\u043d\u0430.<\/li>\n\n\n\n<li>\u0424\u0443\u043d\u043a\u0446\u0443\u0443\u0434\u044b\u0433 \u0431\u0443\u0446\u0430\u0430\u043d\u0430: \u04ae\u0440 \u0434\u04af\u043d\u0434 \u043d\u044c \u0444\u0443\u043d\u043a\u0446\u0443\u0443\u0434\u044b\u0433 \u0431\u0443\u0446\u0430\u0430\u0445 \u0431\u043e\u043b\u043e\u043c\u0436\u0442\u043e\u0439.<\/li>\n\n\n\n<li>\u041a\u043e\u0434\u044b\u0433 \u0434\u0430\u0445\u0438\u043d \u0430\u0448\u0438\u0433\u043b\u0430\u0445 \u0431\u043e\u043b\u043e\u043c\u0436: \u041a\u043e\u0434\u044b\u0433 \u0434\u0430\u0445\u0438\u043d \u0430\u0448\u0438\u0433\u043b\u0430\u0445 \u0431\u043e\u043b\u043e\u043c\u0436\u0438\u0439\u0433 \u0438\u0434\u044d\u0432\u0445\u0436\u04af\u04af\u043b\u043d\u044d.<\/li>\n\n\n\n<li>\u0424\u0443\u043d\u043a\u0446\u0438\u0439\u043d \u043d\u0430\u0439\u0440\u043b\u0430\u0433\u0430: \u0425\u044d\u0434 \u0445\u044d\u0434\u044d\u043d \u0444\u0443\u043d\u043a\u0446\u0438\u0439\u0433 \u043d\u044d\u0433\u0442\u0433\u044d\u0445\u0438\u0439\u0433 \u0437\u04e9\u0432\u0448\u04e9\u04e9\u0440\u0434\u04e9\u0433.<\/li>\n<\/ol>\n\n\n\n<h2 class=\"wp-block-heading\">3. Java \u0445\u044d\u043b \u0434\u044d\u044d\u0440\u0445 Cases \u0430\u0448\u0438\u0433\u043b\u0430\u0445<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">\u0414\u044d\u044d\u0434 \u0437\u044d\u0440\u044d\u0433\u043b\u044d\u043b\u0438\u0439\u043d \u0444\u0443\u043d\u043a\u0446\u0443\u0443\u0434\u044b\u0433 Stream API, Lambda \u0438\u043b\u044d\u0440\u0445\u0438\u0439\u043b\u044d\u043b, \u0430\u0440\u0433\u044b\u043d \u043b\u0430\u0432\u043b\u0430\u0433\u0430\u0430\u043d\u0434 \u04e9\u0440\u0433\u04e9\u043d\u04e9\u04e9\u0440 \u0430\u0448\u0438\u0433\u043b\u0430\u0434\u0430\u0433.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">\u0416\u0438\u0448\u044d\u044d \u2013 Stream API:<\/p>\n\n\n<div class=\"wp-block-code\">\n\t<div class=\"cm-editor\">\n\t\t<div class=\"cm-scroller\">\n\t\t\t\n<pre>\n<code><div class=\"cm-line\">List&lt;Integer&gt; numbers = List.of(1, 2, 3, 4, 5);<\/div><div class=\"cm-line\"><\/div><div class=\"cm-line\">List&lt;Integer&gt; result = numbers.stream()<\/div><div class=\"cm-line\">        .filter(n -&gt; n &gt; 2)<\/div><div class=\"cm-line\">        .map(n -&gt; n * 10)<\/div><div class=\"cm-line\">        .toList();<\/div><div class=\"cm-line\"><\/div><div class=\"cm-line\">System.out.println(result); \/\/ [30, 40, 50]<\/div><\/code><\/pre>\n\t\t<\/div>\n\t<\/div>\n<\/div>\n\n\n<p class=\"wp-block-paragraph\">\u042d\u043d\u0434:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li><code>filter()<\/code> \u0445\u04af\u043b\u044d\u044d\u043d \u0437\u04e9\u0432\u0448\u04e9\u04e9\u0440\u0434\u04e9\u0433 <code>Predicate<\/code> \u0444\u0443\u043d\u043a\u0446.<\/li>\n\n\n\n<li><code>map()<\/code> \u0445\u04af\u043b\u044d\u044d\u043d \u0437\u04e9\u0432\u0448\u04e9\u04e9\u0440\u0434\u04e9\u0433 <code>Function<\/code> \u0444\u0443\u043d\u043a\u0446.<\/li>\n\n\n\n<li>\u0425\u043e\u0451\u0440 \u0430\u0440\u0433\u0430 \u0445\u043e\u0451\u0443\u043b\u0430\u0430 \u0414\u044d\u044d\u0434 \u0437\u044d\u0440\u044d\u0433\u043b\u044d\u043b\u0438\u0439\u043d \u0444\u0443\u043d\u043a\u0446\u0443\u0443\u0434 \u044e\u043c.<\/li>\n<\/ul>\n\n\n\n<h2 class=\"wp-block-heading\">4. Java \u0445\u04e9\u0433\u0436\u04af\u04af\u043b\u044d\u0433\u0447\u0438\u0439\u043d \u044f\u0440\u0438\u043b\u0446\u043b\u0430\u0433\u0430\u0434 \u0447\u0443\u0445\u0430\u043b<\/h2>\n\n\n\n<ul class=\"wp-block-list\">\n<li>\u0414\u044d\u044d\u0434 \u0437\u044d\u0440\u044d\u0433\u043b\u044d\u043b\u0438\u0439\u043d \u0444\u0443\u043d\u043a\u0446: \u0424\u0443\u043d\u043a\u0446\u0443\u0443\u0434\u044b\u0433 \u0445\u04af\u043b\u044d\u044d\u043d \u0430\u0432\u0430\u0445 \u044d\u0441\u0432\u044d\u043b \u0431\u0443\u0446\u0430\u0430\u0445.<\/li>\n\n\n\n<li>\u041d\u044d\u0433\u0434\u04af\u0433\u044d\u044d\u0440 \u0437\u044d\u0440\u044d\u0433\u043b\u044d\u043b\u0438\u0439\u043d \u0444\u0443\u043d\u043a\u0446: \u0424\u0443\u043d\u043a\u0446\u0438\u0439\u0433 \u0434\u0430\u043c\u0436\u0443\u0443\u043b\u0436, \u0443\u0442\u0433\u0430 \u0431\u043e\u043b\u0433\u043e\u043d \u0430\u0448\u0438\u0433\u043b\u0430\u0436 \u0431\u043e\u043b\u043d\u043e.<\/li>\n\n\n\n<li>\u041b\u0430\u043c\u0431\u0434\u0430 \u0438\u043b\u044d\u0440\u0445\u0438\u0439\u043b\u044d\u043b: \u0424\u0443\u043d\u043a\u0446\u0438\u043e\u043d\u0430\u043b\u044c \u0438\u043d\u0442\u0435\u0440\u0444\u044d\u0439\u0441\u0438\u0439\u043d \u0445\u044d\u0440\u044d\u0433\u0436\u0438\u043b\u0442\u0438\u0439\u0433 \u0445\u0430\u043d\u0433\u0430\u0445 \u0431\u043e\u0433\u0438\u043d\u043e \u0430\u0440\u0433\u0430.<\/li>\n\n\n\n<li>\u0424\u0443\u043d\u043a\u0446\u0438\u043e\u043d\u0430\u043b\u044c \u0438\u043d\u0442\u0435\u0440\u0444\u044d\u0439\u0441: \u042f\u0433 \u043d\u044d\u0433 \u0445\u0438\u0439\u0441\u0432\u044d\u0440 \u0430\u0440\u0433\u044b\u043d \u0438\u043d\u0442\u0435\u0440\u0444\u0435\u0439\u0441.<\/li>\n<\/ul>\n\n\n\n<p class=\"wp-block-paragraph\">\u0421\u0430\u043d\u0430\u0436 \u0431\u0430\u0439\u043d\u0430 \u0443\u0443: \u0414\u044d\u044d\u0434 \u0437\u044d\u0440\u044d\u0433\u043b\u044d\u043b\u0438\u0439\u043d \u0444\u0443\u043d\u043a\u0446\u0443\u0443\u0434 \u043d\u044c \u04e9\u0433\u04e9\u0433\u0434\u04e9\u043b \u0434\u0430\u043c\u0436\u0443\u0443\u043b\u0430\u0445\u044b\u043d \u043e\u0440\u043e\u043d\u0434 \u0437\u0430\u043d \u0442\u04e9\u043b\u04e9\u0432\u0438\u0439\u0433 \u043f\u0430\u0440\u0430\u043c\u0435\u0442\u0440 \u0431\u043e\u043b\u0433\u043e\u043d \u0434\u0430\u043c\u0436\u0443\u0443\u043b\u0430\u0445 \u0431\u043e\u043b\u043e\u043c\u0436\u0438\u0439\u0433 \u043e\u043b\u0433\u043e\u0434\u043e\u0433.<\/p>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h1 class=\"wp-block-heading\">HTTP \u0430\u043b\u0434\u0430\u0430\u043d\u044b \u04af\u043d\u0434\u0441\u044d\u043d \u043a\u043e\u0434\u0443\u0443\u0434<\/h1>\n\n\n\n<p class=\"wp-block-paragraph\">HTTP \u0441\u0442\u0430\u0442\u0443\u0441\u044b\u043d \u043a\u043e\u0434\u0443\u0443\u0434 \u043d\u044c \u0441\u0435\u0440\u0432\u0435\u0440 HTTP \u0445\u04af\u0441\u044d\u043b\u0442\u0438\u0439\u0433 \u0431\u043e\u043b\u043e\u0432\u0441\u0440\u0443\u0443\u043b\u0430\u0445 \u04af\u0440 \u0434\u04af\u043d\u0433 \u0445\u0430\u0440\u0443\u0443\u043b\u0430\u0445\u044b\u043d \u0442\u0443\u043b\u0434 \u04af\u0439\u043b\u0447\u043b\u04af\u04af\u043b\u044d\u0433\u0447 \u0440\u04af\u04af \u0438\u043b\u0433\u044d\u044d\u0434\u044d\u0433 \u0433\u0443\u0440\u0432\u0430\u043d \u043e\u0440\u043e\u043d\u0442\u043e\u0439 \u043a\u043e\u0434 \u044e\u043c.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">\u0422\u044d\u0434\u0433\u044d\u044d\u0440\u0438\u0439\u0433 \u0442\u0430\u0432\u0430\u043d \u04af\u043d\u0434\u0441\u044d\u043d \u0430\u043d\u0433\u0438\u043b\u0430\u043b\u0434 \u0445\u0443\u0432\u0430\u0430\u0434\u0430\u0433:<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">1. \u041c\u044d\u0434\u044d\u044d\u043b\u043b\u0438\u0439\u043d (100\u2013199)<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">\u0425\u04af\u0441\u044d\u043b\u0442\u0438\u0439\u043d \u0442\u04e9\u043b\u04e9\u0432 \u0431\u0430\u0439\u0434\u043b\u044b\u043d \u0442\u0430\u043b\u0430\u0430\u0440\u0445\u0438 \u043c\u044d\u0434\u044d\u044d\u043b\u044d\u043b.<\/p>\n\n\n\n<figure class=\"wp-block-table\"><table class=\"has-fixed-layout\"><tbody><tr><th>\u041a\u043e\u0434<\/th><th>\u041d\u044d\u0440<\/th><th>\u0422\u0430\u0439\u043b\u0431\u0430\u0440<\/th><\/tr><tr><td>100<\/td><td>\u04ae\u0440\u0433\u044d\u043b\u0436\u043b\u04af\u04af\u043b\u044d\u0445<\/td><td>\u0421\u0435\u0440\u0432\u0435\u0440 \u0445\u04af\u0441\u044d\u043b\u0442\u0438\u0439\u043d \u0442\u043e\u043b\u0433\u043e\u0439 \u0445\u044d\u0441\u0433\u0438\u0439\u0433 \u0445\u04af\u043b\u044d\u044d\u043d \u0430\u0432\u0441\u0430\u043d \u0431\u04e9\u0433\u04e9\u04e9\u0434 \u04af\u0439\u043b\u0447\u043b\u04af\u04af\u043b\u044d\u0433\u0447 \u0445\u04af\u0441\u044d\u043b\u0442\u0438\u0439\u043d \u0445\u044d\u0441\u0433\u0438\u0439\u0433 \u0438\u043b\u0433\u044d\u044d\u0436 \u0431\u043e\u043b\u043d\u043e.<\/td><\/tr><tr><td>101<\/td><td>\u0428\u0438\u043b\u0436\u0438\u0445 \u043f\u0440\u043e\u0442\u043e\u043a\u043e\u043b\u0443\u0443\u0434<\/td><td>\u0421\u0435\u0440\u0432\u0435\u0440 \u04e9\u04e9\u0440 \u043f\u0440\u043e\u0442\u043e\u043a\u043e\u043b \u0440\u0443\u0443 \u0448\u0438\u043b\u0436\u0438\u0445\u0438\u0439\u0433 \u0437\u04e9\u0432\u0448\u04e9\u04e9\u0440\u0447 \u0431\u0430\u0439\u043d\u0430, \u0436\u0438\u0448\u044d\u044d \u043d\u044c WebSocket.<\/td><\/tr><\/tbody><\/table><\/figure>\n\n\n\n<h2 class=\"wp-block-heading\">2. \u0410\u043c\u0436\u0438\u043b\u0442 (200\u2013299)<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">\u0425\u04af\u0441\u044d\u043b\u0442\u0438\u0439\u0433 \u0430\u043c\u0436\u0438\u043b\u0442\u0442\u0430\u0439 \u0431\u043e\u043b\u043e\u0432\u0441\u0440\u0443\u0443\u043b\u043b\u0430\u0430.<\/p>\n\n\n\n<figure class=\"wp-block-table\"><table class=\"has-fixed-layout\"><tbody><tr><th>\u041a\u043e\u0434<\/th><th>\u041d\u044d\u0440<\/th><th>\u0422\u0430\u0439\u043b\u0431\u0430\u0440<\/th><\/tr><tr><td>200<\/td><td>OK<\/td><td>\u0425\u04af\u0441\u044d\u043b\u0442 \u0430\u043c\u0436\u0438\u043b\u0442\u0442\u0430\u0439 \u0431\u043e\u043b\u043b\u043e\u043e.<\/td><\/tr><tr><td>201<\/td><td>\u04ae\u04af\u0441\u0433\u044d\u0441\u044d\u043d<\/td><td>\u0428\u0438\u043d\u044d \u043d\u04e9\u04e9\u0446 \u0431\u0438\u0439 \u0431\u043e\u043b\u0441\u043e\u043d.<\/td><\/tr><tr><td>202<\/td><td>\u0425\u04af\u043b\u044d\u044d\u043d \u0437\u04e9\u0432\u0448\u04e9\u04e9\u0440\u0441\u04e9\u043d<\/td><td>\u0425\u04af\u0441\u044d\u043b\u0442\u0438\u0439\u0433 \u0431\u043e\u043b\u043e\u0432\u0441\u0440\u0443\u0443\u043b\u0430\u0445\u0430\u0430\u0440 \u0445\u04af\u043b\u044d\u044d\u043d \u0430\u0432\u0441\u0430\u043d \u0431\u043e\u043b\u043e\u0432\u0447 \u0445\u0430\u0440\u0430\u0430\u0445\u0430\u043d \u0434\u0443\u0443\u0441\u0430\u0430\u0433\u04af\u0439 \u0431\u0430\u0439\u043d\u0430.<\/td><\/tr><tr><td>204<\/td><td>\u0410\u0433\u0443\u0443\u043b\u0433\u0430 \u0431\u0430\u0439\u0445\u0433\u04af\u0439<\/td><td>\u0425\u04af\u0441\u044d\u043b\u0442 \u0430\u043c\u0436\u0438\u043b\u0442\u0442\u0430\u0439 \u0431\u043e\u043b\u0441\u043e\u043d \u0447 \u0445\u0430\u0440\u0438\u0443 \u04e9\u0433\u04e9\u0445 \u0431\u0430\u0439\u0433\u0443\u0443\u043b\u043b\u0430\u0433\u0430 \u0430\u043b\u0433\u0430.<\/td><\/tr><tr><td>206<\/td><td>\u0425\u044d\u0441\u044d\u0433\u0447\u0438\u043b\u0441\u044d\u043d \u0430\u0433\u0443\u0443\u043b\u0433\u0430<\/td><td>\u0421\u0435\u0440\u0432\u0435\u0440 \u043d\u044c \u043d\u04e9\u04e9\u0446\u0438\u0439\u043d \u0437\u04e9\u0432\u0445\u04e9\u043d \u0445\u044d\u0441\u0433\u0438\u0439\u0433 \u0431\u0443\u0446\u0430\u0430\u043d\u0430, \u0436\u0438\u0448\u044d\u044d \u043d\u044c \u0442\u0430\u0442\u0430\u0436 \u0430\u0432\u0430\u0445 \u04af\u0435\u0434.<\/td><\/tr><\/tbody><\/table><\/figure>\n\n\n\n<h2 class=\"wp-block-heading\">3. \u0414\u0430\u0445\u0438\u043d \u0447\u0438\u0433\u043b\u04af\u04af\u043b\u044d\u0445 (300\u2013399)<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">\u04ae\u0439\u043b\u0447\u043b\u04af\u04af\u043b\u044d\u0433\u0447\u0438\u0439\u043d \u043d\u044d\u043c\u044d\u043b\u0442 \u04af\u0439\u043b\u0434\u044d\u043b \u0448\u0430\u0430\u0440\u0434\u043b\u0430\u0433\u0430\u0442\u0430\u0439 \u0431\u04e9\u0433\u04e9\u04e9\u0434 \u0438\u0445\u044d\u0432\u0447\u043b\u044d\u043d \u0434\u0430\u0445\u0438\u043d \u0447\u0438\u0433\u043b\u04af\u04af\u043b\u044d\u043b\u0442 \u0445\u0438\u0439\u0434\u044d\u0433.<\/p>\n\n\n\n<figure class=\"wp-block-table\"><table class=\"has-fixed-layout\"><tbody><tr><th>\u041a\u043e\u0434<\/th><th>\u041d\u044d\u0440<\/th><th>\u0422\u0430\u0439\u043b\u0431\u0430\u0440<\/th><\/tr><tr><td>301<\/td><td>\u0411\u0430\u0439\u043d\u0433\u044b\u043d \u043d\u04af\u04af\u0441\u044d\u043d<\/td><td>\u041d\u04e9\u04e9\u0446\u0438\u0439\u0433 \u0448\u0438\u043d\u044d URL \u0440\u0443\u0443 \u0431\u04af\u0440\u043c\u04e9\u0441\u04e9\u043d \u0448\u0438\u043b\u0436\u04af\u04af\u043b\u0441\u044d\u043d.<\/td><\/tr><tr><td>302<\/td><td>\u041e\u043b\u0434\u0441\u043e\u043d<\/td><td>\u04e8\u04e9\u0440 URL \u0440\u0443\u0443 \u0442\u04af\u0440 \u0437\u0443\u0443\u0440 \u0434\u0430\u0445\u0438\u043d \u0447\u0438\u0433\u043b\u04af\u04af\u043b\u044d\u0445.<\/td><\/tr><tr><td>304<\/td><td>\u04e8\u04e9\u0440\u0447\u043b\u04e9\u0433\u0434\u04e9\u04e9\u0433\u04af\u0439<\/td><td>\u041d\u04e9\u04e9\u0446 \u04e9\u04e9\u0440\u0447\u043b\u04e9\u0433\u0434\u04e9\u04e9\u0433\u04af\u0439. \u04ae\u0439\u043b\u0447\u043b\u04af\u04af\u043b\u044d\u0433\u0447 \u043a\u044d\u0448\u0442\u044d\u0439 \u0445\u0443\u0432\u0438\u043b\u0431\u0430\u0440\u044b\u0433 \u0430\u0448\u0438\u0433\u043b\u0430\u0445 \u0431\u043e\u043b\u043e\u043c\u0436\u0442\u043e\u0439.<\/td><\/tr><tr><td>307<\/td><td>\u0422\u04af\u0440 \u0437\u0443\u0443\u0440\u044b\u043d \u0447\u0438\u0433\u043b\u04af\u04af\u043b\u044d\u043b\u0442<\/td><td>HTTP \u0430\u0440\u0433\u044b\u0433 \u0445\u0430\u0434\u0433\u0430\u043b\u0430\u0445 \u0451\u0441\u0442\u043e\u0439 \u0442\u04af\u0440 \u0437\u0443\u0443\u0440\u044b\u043d \u0447\u0438\u0433\u043b\u04af\u04af\u043b\u044d\u043b\u0442.<\/td><\/tr><\/tbody><\/table><\/figure>\n\n\n\n<h2 class=\"wp-block-heading\">4. \u04ae\u0439\u043b\u0447\u043b\u04af\u04af\u043b\u044d\u0433\u0447\u0438\u0439\u043d \u0430\u043b\u0434\u0430\u0430 (400\u2013499)<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">\u04ae\u0439\u043b\u0447\u043b\u04af\u04af\u043b\u044d\u0433\u0447\u0438\u0439\u043d \u0438\u043b\u0433\u044d\u044d\u0441\u044d\u043d \u0445\u04af\u0441\u044d\u043b\u0442\u044d\u0434 \u0430\u0441\u0443\u0443\u0434\u0430\u043b \u0433\u0430\u0440\u043b\u0430\u0430.<\/p>\n\n\n\n<figure class=\"wp-block-table\"><table class=\"has-fixed-layout\"><tbody><tr><th>\u041a\u043e\u0434<\/th><th>\u041d\u044d\u0440<\/th><th>\u0422\u0430\u0439\u043b\u0431\u0430\u0440<\/th><\/tr><tr><td>400<\/td><td>\u0411\u0443\u0440\u0443\u0443 \u0445\u04af\u0441\u044d\u043b\u0442<\/td><td>\u0425\u04af\u0447\u0438\u043d\u0433\u04af\u0439 \u044d\u0441\u0432\u044d\u043b \u0430\u043b\u0434\u0430\u0430\u0442\u0430\u0439 \u0445\u04af\u0441\u044d\u043b\u0442.<\/td><\/tr><tr><td>401<\/td><td>\u0417\u04e9\u0432\u0448\u04e9\u04e9\u0440\u04e9\u043b\u0433\u04af\u0439<\/td><td>\u0425\u04af\u0447\u0438\u043d\u0442\u044d\u0439 \u0431\u0430\u0442\u0430\u043b\u0433\u0430\u0430\u0436\u0443\u0443\u043b\u0430\u043b\u0442 \u0431\u0430\u0439\u0445\u0433\u04af\u0439 \u0431\u0430\u0439\u043d\u0430.<\/td><\/tr><tr><td>403<\/td><td>\u0425\u043e\u0440\u0438\u043e\u0442\u043e\u0439<\/td><td>\u0421\u0435\u0440\u0432\u0435\u0440 \u0445\u04af\u0441\u044d\u043b\u0442\u0438\u0439\u0433 \u043e\u0439\u043b\u0433\u043e\u0436 \u0431\u0430\u0439\u0433\u0430\u0430 \u0431\u043e\u043b\u043e\u0432\u0447 \u0445\u0430\u043d\u0434\u0430\u0445\u0430\u0430\u0441 \u0442\u0430\u0442\u0433\u0430\u043b\u0437\u0430\u0436 \u0431\u0430\u0439\u043d\u0430.<\/td><\/tr><tr><td>404<\/td><td>\u041e\u043b\u0434\u0441\u043e\u043d\u0433\u04af\u0439<\/td><td>\u0425\u04af\u0441\u0441\u044d\u043d \u044d\u0445 \u0441\u0443\u0440\u0432\u0430\u043b\u0436 \u043e\u043b\u0434\u0441\u043e\u043d\u0433\u04af\u0439.<\/td><\/tr><tr><td>405<\/td><td>\u0417\u04e9\u0432\u0448\u04e9\u04e9\u0440\u04e9\u0433\u0434\u04e9\u04e9\u0433\u04af\u0439 \u0430\u0440\u0433\u0430<\/td><td>\u042d\u043d\u044d \u043d\u04e9\u04e9\u0446\u04e9\u0434 HTTP \u0430\u0440\u0433\u044b\u0433 \u0437\u04e9\u0432\u0448\u04e9\u04e9\u0440\u04e9\u0445\u0433\u04af\u0439.<\/td><\/tr><tr><td>408<\/td><td>\u0425\u04af\u0441\u044d\u043b\u0442\u0438\u0439\u043d \u0445\u0443\u0433\u0430\u0446\u0430\u0430 \u0445\u044d\u0442\u044d\u0440\u0441\u044d\u043d<\/td><td>\u0421\u0435\u0440\u0432\u0435\u0440 \u0445\u04af\u0441\u044d\u043b\u0442\u0438\u0439\u0433 \u0445\u044d\u0442\u044d\u0440\u0445\u0438\u0439 \u0443\u0434\u0430\u0430\u043d \u0445\u04af\u043b\u044d\u044d\u0441\u044d\u043d.<\/td><\/tr><tr><td>429<\/td><td>\u0425\u044d\u0442 \u043e\u043b\u043e\u043d \u0445\u04af\u0441\u044d\u043b\u0442<\/td><td>\u04ae\u0439\u043b\u0447\u043b\u04af\u04af\u043b\u044d\u0433\u0447 \u0442\u043e\u0434\u043e\u0440\u0445\u043e\u0439 \u0445\u0443\u0433\u0430\u0446\u0430\u0430\u043d\u0434 \u0445\u044d\u0442 \u043e\u043b\u043e\u043d \u0445\u04af\u0441\u044d\u043b\u0442 \u0438\u043b\u0433\u044d\u044d\u0441\u044d\u043d \u0431\u0430\u0439\u043d\u0430.<\/td><\/tr><\/tbody><\/table><\/figure>\n\n\n\n<h2 class=\"wp-block-heading\">5. \u0421\u0435\u0440\u0432\u0435\u0440\u0438\u0439\u043d \u0430\u043b\u0434\u0430\u0430 (500\u2013599)<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">\u0421\u0435\u0440\u0432\u0435\u0440\u044d\u044d\u0441 \u0438\u0440\u0441\u044d\u043d \u0445\u04af\u0441\u044d\u043b\u0442\u0438\u0439\u0433 \u0431\u043e\u043b\u043e\u0432\u0441\u0440\u0443\u0443\u043b\u0430\u0445\u0430\u0434 \u0430\u0441\u0443\u0443\u0434\u0430\u043b \u0433\u0430\u0440\u043b\u0430\u0430.<\/p>\n\n\n\n<figure class=\"wp-block-table\"><table class=\"has-fixed-layout\"><tbody><tr><th>\u041a\u043e\u0434<\/th><th>\u041d\u044d\u0440<\/th><th>\u0422\u0430\u0439\u043b\u0431\u0430\u0440<\/th><\/tr><tr><td>500<\/td><td>\u0414\u043e\u0442\u043e\u043e\u0434 \u0441\u0435\u0440\u0432\u0435\u0440\u0438\u0439\u043d \u0430\u043b\u0434\u0430\u0430<\/td><td>\u0415\u0440\u04e9\u043d\u0445\u0438\u0439 \u0434\u043e\u0442\u043e\u043e\u0434 \u0441\u0435\u0440\u0432\u0435\u0440\u0438\u0439\u043d \u0430\u043b\u0434\u0430\u0430.<\/td><\/tr><tr><td>503<\/td><td>\u04ae\u0439\u043b\u0447\u0438\u043b\u0433\u044d\u044d \u0431\u043e\u043b\u043e\u043c\u0436\u0433\u04af\u0439<\/td><td>\u0421\u0435\u0440\u0432\u0435\u0440 \u0442\u04af\u0440 \u0445\u0443\u0433\u0430\u0446\u0430\u0430\u043d\u0434 \u0445\u04af\u0441\u044d\u043b\u0442\u0438\u0439\u0433 \u0431\u043e\u043b\u043e\u0432\u0441\u0440\u0443\u0443\u043b\u0430\u0445 \u0431\u043e\u043b\u043e\u043c\u0436\u0433\u04af\u0439 &#8211; \u0436\u0438\u0448\u044d\u044d\u043b\u0431\u044d\u043b \u0445\u044d\u0442 \u0430\u0447\u0430\u0430\u043b\u0430\u043b \u044d\u0441\u0432\u044d\u043b \u0437\u0430\u0441\u0432\u0430\u0440 \u04af\u0439\u043b\u0447\u0438\u043b\u0433\u044d\u044d\u043d\u0438\u0439 \u0443\u043b\u043c\u0430\u0430\u0441.<\/td><\/tr><tr><td>504<\/td><td>\u0413\u0430\u0440\u0446\u044b\u043d \u0445\u0443\u0433\u0430\u0446\u0430\u0430 \u0434\u0443\u0443\u0441\u0441\u0430\u043d<\/td><td>\u0413\u0430\u0440\u0446 \u044d\u0441\u0432\u044d\u043b \u043f\u0440\u043e\u043a\u0441\u0438 \u0441\u0435\u0440\u0432\u0435\u0440 \u043d\u044c \u0434\u044d\u044d\u0434 \u0442\u0430\u043b\u044b\u043d \u0441\u0435\u0440\u0432\u0435\u0440\u044d\u044d\u0441 \u0446\u0430\u0433 \u0442\u0443\u0445\u0430\u0439\u0434 \u043d\u044c \u0445\u0430\u0440\u0438\u0443 \u0438\u0440\u044d\u044d\u0433\u04af\u0439.<\/td><\/tr><\/tbody><\/table><\/figure>\n\n\n\n<h2 class=\"wp-block-heading\">6. Java \u0445\u04e9\u0433\u0436\u04af\u04af\u043b\u044d\u0433\u0447\u0438\u0439\u043d \u044f\u0440\u0438\u043b\u0446\u043b\u0430\u0433\u0430\u0434 \u0447\u0443\u0445\u0430\u043b<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">\u0414\u0430\u0440\u0430\u0430\u0445 HTTP \u0441\u0442\u0430\u0442\u0443\u0441\u044b\u043d \u043a\u043e\u0434\u0443\u0443\u0434\u044b\u0433 \u0441\u0430\u043d\u0430\u0445 \u043d\u044c \u044f\u043b\u0430\u043d\u0433\u0443\u044f\u0430 \u0447\u0443\u0445\u0430\u043b \u044e\u043c.<\/p>\n\n\n\n<figure class=\"wp-block-table\"><table class=\"has-fixed-layout\"><tbody><tr><th>\u041a\u043e\u0434<\/th><th>\u0425\u044d\u0437\u044d\u044d \u0445\u044d\u0440\u044d\u0433\u043b\u044d\u0445 \u0432\u044d<\/th><\/tr><tr><td>200<\/td><td>\u0410\u043c\u0436\u0438\u043b\u0442\u0442\u0430\u0439 GET \u044d\u0441\u0432\u044d\u043b \u0431\u0443\u0441\u0430\u0434 \u0445\u04af\u0441\u044d\u043b\u0442.<\/td><\/tr><tr><td>201<\/td><td>\u041d\u04e9\u04e9\u0446 \u04af\u04af\u0441\u0433\u044d\u0441\u044d\u043d \u0430\u043c\u0436\u0438\u043b\u0442\u0442\u0430\u0439 &#8211; \u0438\u0445\u044d\u0432\u0447\u043b\u044d\u043d POST.<\/td><\/tr><tr><td>204<\/td><td>\u0425\u0430\u0440\u0438\u0443\u043b\u0442\u0433\u04af\u0439 \u0430\u043c\u0436\u0438\u043b\u0442\u0442\u0430\u0439 \u0423\u0421\u0422\u0413\u0410\u0425.<\/td><\/tr><tr><td>400<\/td><td>\u0425\u04af\u0447\u0438\u043d\u0433\u04af\u0439 \u043e\u0440\u043e\u043b\u0442\u044b\u043d \u04e9\u0433\u04e9\u0433\u0434\u04e9\u043b.<\/td><\/tr><tr><td>401<\/td><td>\u0411\u0430\u0442\u0430\u043b\u0433\u0430\u0430\u0436\u0443\u0443\u043b\u0430\u043b\u0442 \u0434\u0443\u0442\u0443\u0443 \u044d\u0441\u0432\u044d\u043b \u0445\u04af\u0447\u0438\u043d\u0433\u04af\u0439.<\/td><\/tr><tr><td>403<\/td><td>\u0422\u0430\u043d\u0434 \u0448\u0430\u0430\u0440\u0434\u043b\u0430\u0433\u0430\u0442\u0430\u0439 \u0437\u04e9\u0432\u0448\u04e9\u04e9\u0440\u04e9\u043b \u0431\u0430\u0439\u0445\u0433\u04af\u0439 \u0431\u0430\u0439\u043d\u0430.<\/td><\/tr><tr><td>404<\/td><td>\u041d\u04e9\u04e9\u0446 \u0431\u0430\u0439\u0445\u0433\u04af\u0439.<\/td><\/tr><tr><td>500<\/td><td>\u0421\u0430\u043d\u0430\u0430\u043d\u0434 \u043e\u0440\u043e\u043c\u0433\u04af\u0439 \u0441\u0435\u0440\u0432\u0435\u0440\u0438\u0439\u043d \u0430\u043b\u0434\u0430\u0430.<\/td><\/tr><tr><td>503<\/td><td>\u0421\u0435\u0440\u0432\u0435\u0440 \u0442\u04af\u0440 \u0445\u0443\u0433\u0430\u0446\u0430\u0430\u043d\u0434 \u0431\u043e\u043b\u043e\u043c\u0436\u0433\u04af\u0439 \u0431\u0430\u0439\u043d\u0430.<\/td><\/tr><\/tbody><\/table><\/figure>\n\n\n\n<p class=\"wp-block-paragraph\">\u0427\u0443\u0445\u0430\u043b \u044f\u043b\u0433\u0430\u0430:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li><code>401 Unauthorized<\/code> = \u0422\u0430 \u0431\u0430\u0442\u0430\u043b\u0433\u0430\u0430\u0436\u0443\u0443\u043b\u0430\u043b\u0442\u044b\u0433 \u0430\u043c\u0436\u0438\u043b\u0442\u0442\u0430\u0439 \u0445\u0438\u0439\u0441\u044d\u043d\u0433\u04af\u0439.<\/li>\n\n\n\n<li><code>403 Forbidden<\/code> = \u0422\u0430 \u0442\u043e\u0434\u043e\u0440\u0445\u043e\u0439\u043b\u043e\u0433\u0434\u0441\u043e\u043d \u0431\u043e\u043b\u043e\u0432\u0447 \u0442\u0430\u043d\u0434 \u0448\u0430\u0430\u0440\u0434\u043b\u0430\u0433\u0430\u0442\u0430\u0439 \u0437\u04e9\u0432\u0448\u04e9\u04e9\u0440\u04e9\u043b \u0431\u0430\u0439\u0445\u0433\u04af\u0439 \u0431\u0430\u0439\u043d\u0430.<\/li>\n<\/ul>\n\n\n\n<p class=\"wp-block-paragraph\">\u0422\u0430\u0432\u0430\u043d \u0430\u043d\u0433\u0438\u043b\u043b\u044b\u0433 \u0441\u0430\u043d\u0430\u0430\u0440\u0430\u0439:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>1xx &#8211; \u041c\u044d\u0434\u044d\u044d\u043b\u043b\u0438\u0439\u043d<\/li>\n\n\n\n<li>2xx &#8211; \u0410\u043c\u0436\u0438\u043b\u0442<\/li>\n\n\n\n<li>3xx &#8211; \u0414\u0430\u0445\u0438\u043d \u0447\u0438\u0433\u043b\u04af\u04af\u043b\u044d\u0445<\/li>\n\n\n\n<li>4xx &#8211; \u04ae\u0439\u043b\u0447\u043b\u04af\u04af\u043b\u044d\u0433\u0447\u0438\u0439\u043d \u0430\u043b\u0434\u0430\u0430<\/li>\n\n\n\n<li>5xx &#8211; \u0421\u0435\u0440\u0432\u0435\u0440\u0438\u0439\u043d \u0430\u043b\u0434\u0430\u0430<\/li>\n<\/ul>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h1 class=\"wp-block-heading\">HTTP \u0430\u0440\u0433\u0443\u0443\u0434<\/h1>\n\n\n\n<p class=\"wp-block-paragraph\">HTTP \u0430\u0440\u0433\u0443\u0443\u0434 \u043d\u044c \u0442\u0443\u0445\u0430\u0439\u043d \u0441\u0435\u0440\u0432\u0435\u0440\u0438\u0439\u043d \u043d\u04e9\u04e9\u0446 \u0434\u044d\u044d\u0440 \u04af\u0439\u043b\u0447\u043b\u04af\u04af\u043b\u044d\u0433\u0447 \u044f\u043c\u0430\u0440 \u04af\u0439\u043b\u0434\u044d\u043b \u0445\u0438\u0439\u0445\u0438\u0439\u0433 \u0445\u04af\u0441\u0447 \u0431\u0430\u0439\u0433\u0430\u0430\u0433 \u0442\u043e\u0434\u043e\u0440\u0445\u043e\u0439\u043b\u0434\u043e\u0433. \u0422\u044d\u0434\u0433\u044d\u044d\u0440\u0438\u0439\u0433 REST API \u0431\u043e\u043b\u043e\u043d \u0432\u044d\u0431 \u043f\u0440\u043e\u0433\u0440\u0430\u043c\u0443\u0443\u0434\u0430\u0434 \u0430\u0448\u0438\u0433\u043b\u0430\u0434\u0430\u0433.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">1. HTTP-\u0438\u0439\u043d \u04af\u043d\u0434\u0441\u044d\u043d \u0430\u0440\u0433\u0443\u0443\u0434<\/h2>\n\n\n\n<figure class=\"wp-block-table\"><table class=\"has-fixed-layout\"><tbody><tr><th>\u0410\u0440\u0433\u0430<\/th><th>\u0422\u043e\u0434\u043e\u0440\u0445\u043e\u0439\u043b\u043e\u043b\u0442<\/th><th>\u0416\u0438\u0448\u044d\u044d<\/th><\/tr><tr><td>\u0410\u0412\u0410\u0425<\/td><td>\u0421\u0435\u0440\u0432\u0435\u0440\u044d\u044d\u0441 \u04e9\u0433\u04e9\u0433\u0434\u043b\u0438\u0439\u0433 \u04e9\u04e9\u0440\u0447\u043b\u04e9\u0445\u0433\u04af\u0439\u0433\u044d\u044d\u0440 \u0442\u0430\u0442\u0430\u0436 \u0430\u0432\u0434\u0430\u0433.<\/td><td>\u0425\u044d\u0440\u044d\u0433\u043b\u044d\u0433\u0447\u0434\u0438\u0439\u043d \u0436\u0430\u0433\u0441\u0430\u0430\u043b\u0442\u044b\u0433 \u0430\u0432\u0430\u0445.<\/td><\/tr><tr><td>POST<\/td><td>\u0418\u0445\u044d\u0432\u0447\u043b\u044d\u043d \u0448\u0438\u043d\u044d \u043d\u04e9\u04e9\u0446 \u04af\u04af\u0441\u0433\u044d\u0445\u0438\u0439\u043d \u0442\u0443\u043b\u0434 \u0441\u0435\u0440\u0432\u0435\u0440 \u0440\u04af\u04af \u04e9\u0433\u04e9\u0433\u0434\u04e9\u043b \u0438\u043b\u0433\u044d\u044d\u0434\u044d\u0433.<\/td><td>\u0428\u0438\u043d\u044d \u0445\u044d\u0440\u044d\u0433\u043b\u044d\u0433\u0447 \u04af\u04af\u0441\u0433\u044d\u0445.<\/td><\/tr><tr><td>PUT<\/td><td>\u041e\u0434\u043e\u043e \u0431\u0430\u0439\u0433\u0430\u0430 \u043d\u04e9\u04e9\u0446\u0438\u0439\u0433 \u0431\u04af\u0440\u044d\u043d \u043e\u0440\u043b\u0443\u0443\u043b\u0434\u0430\u0433. \u0425\u044d\u0440\u044d\u0432 \u0431\u0430\u0439\u0445\u0433\u04af\u0439 \u0431\u043e\u043b \u04af\u04af\u043d\u0438\u0439\u0433 \u04af\u04af\u0441\u0433\u044d\u0436 \u0431\u043e\u043b\u043d\u043e.<\/td><td>\u0425\u044d\u0440\u044d\u0433\u043b\u044d\u0433\u0447\u0438\u0439\u043d \u0431\u04af\u0440\u044d\u043d \u0448\u0438\u043d\u044d\u0447\u043b\u044d\u043b\u0442.<\/td><\/tr><tr><td>PATCH<\/td><td>\u0425\u044d\u0441\u044d\u0433\u0447\u0438\u043b\u0441\u044d\u043d \u043d\u04e9\u04e9\u0446\u0438\u0439\u0433 \u04e9\u04e9\u0440\u0447\u0438\u043b\u0434\u04e9\u0433.<\/td><td>\u0417\u04e9\u0432\u0445\u04e9\u043d \u0438\u043c\u044d\u0439\u043b \u0441\u043e\u043b\u0438\u0445.<\/td><\/tr><tr><td>\u0423\u0421\u0422\u0413\u0410\u0425<\/td><td>\u04e8\u0433\u04e9\u0433\u0434\u0441\u04e9\u043d \u043d\u04e9\u04e9\u0446\u0438\u0439\u0433 \u0443\u0441\u0442\u0433\u0430\u043d\u0430.<\/td><td>\u0425\u044d\u0440\u044d\u0433\u043b\u044d\u0433\u0447\u0438\u0439\u0433 \u0443\u0441\u0442\u0433\u0430\u0445.<\/td><\/tr><tr><td>\u0422\u041e\u041b\u0413\u041e\u0419<\/td><td>GET-\u0442\u044d\u0439 \u0442\u04e9\u0441\u0442\u044d\u0439, \u0433\u044d\u0445\u0434\u044d\u044d \u0437\u04e9\u0432\u0445\u04e9\u043d \u0425\u0430\u0440\u0438\u0443\u043b\u0442\u044b\u043d \u04af\u043d\u0434\u0441\u044d\u043d \u0445\u044d\u0441\u044d\u0433\u0433\u04af\u0439\u0433\u044d\u044d\u0440 \u0425\u0430\u0440\u0438\u0443\u043b\u0442\u044b\u043d \u0442\u043e\u043b\u0433\u043e\u0439\u0433 \u0431\u0443\u0446\u0430\u0430\u043d\u0430.<\/td><td>\u041d\u04e9\u04e9\u0446 \u0431\u0430\u0439\u0433\u0430\u0430 \u044d\u0441\u044d\u0445\u0438\u0439\u0433 \u0448\u0430\u043b\u0433\u0430\u0436 \u0431\u0430\u0439\u043d\u0430.<\/td><\/tr><tr><td>\u0421\u041e\u041d\u0413\u041e\u041b\u0422<\/td><td>\u04e8\u0433\u04e9\u0433\u0434\u0441\u04e9\u043d \u044d\u0445 \u0441\u0443\u0440\u0432\u0430\u043b\u0436\u0438\u0434 \u044f\u043c\u0430\u0440 HTTP \u0430\u0440\u0433\u0443\u0443\u0434 \u0437\u04e9\u0432\u0448\u04e9\u04e9\u0440\u04e9\u0433\u0434\u04e9\u0436 \u0431\u0430\u0439\u0433\u0430\u0430\u0433 \u0445\u0430\u0440\u0443\u0443\u043b\u043d\u0430.<\/td><td>\u0417\u04e9\u0432\u0448\u04e9\u04e9\u0440\u04e9\u0433\u0434\u0441\u04e9\u043d \u0430\u0440\u0433\u0443\u0443\u0434\u044b\u0433 \u0448\u0430\u043b\u0433\u0430\u0436 \u0431\u0430\u0439\u043d\u0430.<\/td><\/tr><tr><td>\u041c\u04e8\u0420<\/td><td>\u0425\u04af\u043b\u044d\u044d\u043d \u0430\u0432\u0441\u0430\u043d \u0445\u04af\u0441\u044d\u043b\u0442\u0438\u0439\u0433 \u04af\u0439\u043b\u0447\u043b\u04af\u04af\u043b\u044d\u0433\u0447 \u0440\u04af\u04af \u0431\u0443\u0446\u0430\u0430\u0436 \u04e9\u0433\u0434\u04e9\u0433 \u043e\u043d\u043e\u0448\u043b\u043e\u0433\u043e\u043e\u043d\u044b \u0430\u0440\u0433\u0430.<\/td><td>HTTP \u0445\u0430\u0440\u0438\u043b\u0446\u0430\u0430\u043d\u044b \u043e\u043d\u043e\u0448\u043b\u043e\u0433\u043e\u043e.<\/td><\/tr><tr><td>\u0425\u041e\u041b\u0411\u041e\u041e<\/td><td>\u041f\u0440\u043e\u043a\u0441\u0438\u0433\u043e\u043e\u0440 \u0434\u0430\u043c\u0436\u0443\u0443\u043b\u0430\u043d HTTPS \u0445\u043e\u043b\u0431\u043e\u043b\u0442 \u0445\u0438\u0439\u0445 \u0437\u043e\u0440\u0438\u0443\u043b\u0430\u043b\u0442\u0442\u0430\u0439 \u0441\u0435\u0440\u0432\u0435\u0440 \u0440\u04af\u04af \u0442\u0443\u043d\u043d\u0435\u043b\u044c \u04af\u04af\u0441\u0433\u044d\u0434\u044d\u0433.<\/td><td>Proxy-\u044d\u044d\u0440 \u0434\u0430\u043c\u0436\u0443\u0443\u043b\u0430\u043d SSL\/TLS \u0445\u043e\u043b\u0431\u043e\u043b\u0442.<\/td><\/tr><\/tbody><\/table><\/figure>\n\n\n\n<h2 class=\"wp-block-heading\">2. \u0427\u0443\u0445\u0430\u043b \u043e\u0439\u043b\u0433\u043e\u043b\u0442\u0443\u0443\u0434<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">HTTP \u0430\u0440\u0433\u0443\u0443\u0434 \u043d\u044c \u0445\u044d\u0434 \u0445\u044d\u0434\u044d\u043d \u0447\u0443\u0445\u0430\u043b \u0448\u0438\u043d\u0436 \u0447\u0430\u043d\u0430\u0440\u0442\u0430\u0439 \u0431\u0430\u0439\u0434\u0430\u0433:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>\u0410\u044e\u0443\u043b\u0433\u04af\u0439 \u0430\u0440\u0433\u0443\u0443\u0434: \u0421\u0435\u0440\u0432\u0435\u0440\u0438\u0439\u043d \u0442\u04e9\u043b\u04e9\u0432\u0438\u0439\u0433 \u04e9\u04e9\u0440\u0447\u043b\u04e9\u0445 \u0451\u0441\u0433\u04af\u0439. \u0416\u0438\u0448\u044d\u044d \u043d\u044c <code>GET<\/code>, <code>HEAD<\/code> \u0431\u043e\u043b\u043e\u043d <code>OPTIONS<\/code>.<\/li>\n\n\n\n<li>Idempotent Methods: \u041d\u044d\u0433 \u0445\u04af\u0441\u044d\u043b\u0442\u0438\u0439\u0433 \u0434\u0430\u0432\u0442\u0430\u043d \u0433\u04af\u0439\u0446\u044d\u0442\u0433\u044d\u0445 \u043d\u044c \u0441\u0435\u0440\u0432\u0435\u0440\u0442 \u043d\u044d\u0433 \u0443\u0434\u0430\u0430\u0433\u0438\u0439\u043d \u0433\u04af\u0439\u0446\u044d\u0442\u0433\u044d\u043b\u0442\u044d\u0439 \u0430\u0434\u0438\u043b \u0437\u043e\u0440\u0438\u043b\u0433\u043e\u0442\u043e\u0439 \u043d\u04e9\u043b\u04e9\u04e9 \u04af\u0437\u04af\u04af\u043b\u0434\u044d\u0433. \u0416\u0438\u0448\u044d\u044d \u043d\u044c <code>GET<\/code>, <code>PUT<\/code> \u0431\u043e\u043b\u043e\u043d <code>DELETE<\/code>.<\/li>\n\n\n\n<li>\u0418\u0434\u0435\u043c\u043f\u043e\u0442\u0435\u043d\u0442\u044b\u043d \u0431\u0443\u0441: \u0414\u0430\u0432\u0442\u0430\u043d \u0433\u04af\u0439\u0446\u044d\u0442\u0433\u044d\u0445 \u043d\u044c \u043d\u044d\u043c\u044d\u043b\u0442 \u04e9\u04e9\u0440\u0447\u043b\u04e9\u043b\u0442\u04af\u04af\u0434\u0438\u0439\u0433 \u04af\u04af\u0441\u0433\u044d\u0436 \u0431\u043e\u043b\u043d\u043e. \u0415\u0440\u0434\u0438\u0439\u043d \u0436\u0438\u0448\u044d\u044d \u0431\u043e\u043b <code>POST<\/code>.<\/li>\n<\/ul>\n\n\n\n<h2 class=\"wp-block-heading\">3. \u0416\u0438\u0448\u044d\u044d &#8211; REST API<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">\u0425\u044d\u0440\u044d\u0433\u043b\u044d\u0433\u0447\u0438\u0439\u043d \u0443\u0434\u0438\u0440\u0434\u043b\u0430\u0433\u044b\u043d API-\u0433 \u0445\u0430\u0440\u0446\u0433\u0430\u0430\u044f:<\/p>\n\n\n\n<figure class=\"wp-block-table\"><table class=\"has-fixed-layout\"><tbody><tr><th>HTTP \u0445\u04af\u0441\u044d\u043b\u0442<\/th><th>\u04ae\u0439\u043b \u0430\u0436\u0438\u043b\u043b\u0430\u0433\u0430\u0430<\/th><\/tr><tr><td><code>GET \/users<\/code><\/td><td>\u0411\u04af\u0445 \u0445\u044d\u0440\u044d\u0433\u043b\u044d\u0433\u0447\u0434\u0438\u0439\u0433 \u0430\u0432\u0430\u0430\u0440\u0430\u0439.<\/td><\/tr><tr><td><code>GET \/users\/10<\/code><\/td><td>ID 10-\u0442\u0430\u0439 \u0445\u044d\u0440\u044d\u0433\u043b\u044d\u0433\u0447 \u0430\u0432\u0430\u0445.<\/td><\/tr><tr><td><code>POST \/users<\/code><\/td><td>\u0428\u0438\u043d\u044d \u0445\u044d\u0440\u044d\u0433\u043b\u044d\u0433\u0447 \u04af\u04af\u0441\u0433\u044d\u0445.<\/td><\/tr><tr><td><code>PUT \/users\/10<\/code><\/td><td>\u0425\u044d\u0440\u044d\u0433\u043b\u044d\u0433\u0447\u0438\u0439\u043d 10 \u0431\u04af\u0440\u044d\u043d \u0448\u0438\u043d\u044d\u0447\u043b\u044d\u043b\u0442.<\/td><\/tr><tr><td><code>PATCH \/users\/10<\/code><\/td><td>\u0425\u044d\u0440\u044d\u0433\u043b\u044d\u0433\u0447 10 \u0440\u0443\u0443 \u0445\u044d\u0441\u044d\u0433\u0447\u0438\u043b\u0441\u044d\u043d \u0448\u0438\u043d\u044d\u0447\u043b\u044d\u043b\u0442 \u0445\u0438\u0439\u0441\u044d\u043d.<\/td><\/tr><tr><td><code>DELETE \/users\/10<\/code><\/td><td>\u0425\u044d\u0440\u044d\u0433\u043b\u044d\u0433\u0447 10-\u0433 \u0443\u0441\u0442\u0433\u0430\u0445.<\/td><\/tr><\/tbody><\/table><\/figure>\n\n\n\n<h2 class=\"wp-block-heading\">4. Java \u0445\u04e9\u0433\u0436\u04af\u04af\u043b\u044d\u0433\u0447\u0438\u0439\u043d \u044f\u0440\u0438\u043b\u0446\u043b\u0430\u0433\u0430\u0434 \u0447\u0443\u0445\u0430\u043b<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">\u0425\u0430\u043c\u0433\u0438\u0439\u043d \u0447\u0443\u0445\u0430\u043b \u044f\u043b\u0433\u0430\u0430\u0433 \u0441\u0430\u043d\u0430\u0430\u0440\u0430\u0439:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li><code>GET<\/code> &#8211; \u0423\u043d\u0448\u0438\u0445.<\/li>\n\n\n\n<li><code>POST<\/code> &#8211; \u04ae\u04af\u0441\u0433\u044d\u0445.<\/li>\n\n\n\n<li><code>PUT<\/code> \u2013 \u0411\u04af\u0440\u044d\u043d \u0448\u0438\u043d\u044d\u0447\u043b\u044d\u0445 \/ \u0441\u043e\u043b\u0438\u0445.<\/li>\n\n\n\n<li><code>PATCH<\/code> &#8211; \u0425\u044d\u0441\u044d\u0433\u0447\u0438\u043b\u0441\u044d\u043d \u0448\u0438\u043d\u044d\u0447\u043b\u044d\u043b.<\/li>\n\n\n\n<li><code>DELETE<\/code> &#8211; \u0423\u0441\u0442\u0433\u0430\u0445.<\/li>\n<\/ul>\n\n\n\n<p class=\"wp-block-paragraph\">\u042f\u043b\u0430\u043d\u0433\u0443\u044f\u0430 \u0447\u0443\u0445\u0430\u043b:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li><code>PUT<\/code> \u04af\u0435\u0434 Idempotent \u0431\u0430\u0439\u043d\u0430 <code>POST<\/code> \u0435\u0440\u04e9\u043d\u0445\u0438\u0439\u0434\u04e9\u04e9 \u0442\u0438\u0439\u043c \u0431\u0438\u0448.<\/li>\n\n\n\n<li><code>PATCH<\/code> \u0437\u0430\u0430\u0432\u0430\u043b Idempotent \u0431\u0438\u0448 &#8211; \u04af\u0439\u043b \u0430\u0436\u0438\u043b\u043b\u0430\u0433\u0430\u0430\u043d\u0430\u0430\u0441 \u0445\u0430\u043c\u0430\u0430\u0440\u043d\u0430.<\/li>\n\n\n\n<li><code>GET<\/code> \u0411\u0438 \u0441\u0435\u0440\u0432\u0435\u0440\u0438\u0439\u043d \u04e9\u0433\u04e9\u0433\u0434\u043b\u0438\u0439\u0433 \u04e9\u04e9\u0440\u0447\u043b\u04e9\u0445 \u0448\u0430\u0430\u0440\u0434\u043b\u0430\u0433\u0430\u0433\u04af\u0439.<\/li>\n\n\n\n<li><code>PUT<\/code> \u0431\u043e\u043b\u043e\u043d <code>DELETE<\/code> \u0441\u0435\u0440\u0432\u0435\u0440 \u043d\u044c \u0434\u0430\u0432\u0442\u0430\u043d \u0445\u04af\u0441\u044d\u043b\u0442\u044d\u044d\u0440 \u04e9\u04e9\u0440 \u0441\u0442\u0430\u0442\u0443\u0441 \u043a\u043e\u0434\u0443\u0443\u0434\u044b\u0433 \u0431\u0443\u0446\u0430\u0430\u0434\u0430\u0433 \u0431\u0430\u0439\u0441\u0430\u043d \u0447 HTTP \u0441\u0435\u043c\u0430\u043d\u0442\u0438\u043a\u0438\u0439\u043d \u0442\u043e\u0434\u043e\u0440\u0445\u043e\u0439\u043b\u043e\u043b\u0442\u043e\u043e\u0440 Idempotent \u0431\u0430\u0439\u043d\u0430.<\/li>\n<\/ul>\n\n\n\n<p class=\"wp-block-paragraph\">\u0421\u0430\u043d\u0430\u0436 \u0431\u0430\u0439\u043d\u0430 \u0443\u0443: HTTP \u0430\u0440\u0433\u0443\u0443\u0434 \u043d\u044c \u04af\u0439\u043b\u0434\u043b\u0438\u0439\u0433 \u0442\u043e\u0434\u043e\u0440\u0445\u043e\u0439\u043b\u0434\u043e\u0433 \u0431\u04e9\u0433\u04e9\u04e9\u0434 HTTP \u0442\u04e9\u043b\u04e9\u0432\u0438\u0439\u043d \u043a\u043e\u0434\u0443\u0443\u0434 \u043d\u044c \u0445\u04af\u0441\u044d\u043b\u0442\u0438\u0439\u043d \u0433\u04af\u0439\u0446\u044d\u0442\u0433\u044d\u043b\u0438\u0439\u043d \u04af\u0440 \u0434\u04af\u043d\u0433 \u0437\u0430\u0430\u0434\u0430\u0433.<\/p>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h1 class=\"wp-block-heading\">\u0418\u043d\u0442\u0435\u0440\u0444\u044d\u0439\u0441 \u0431\u043e\u043b\u043e\u043d \u0445\u0438\u0439\u0441\u0432\u044d\u0440 \u0430\u043d\u0433\u0438<\/h1>\n\n\n\n<p class=\"wp-block-paragraph\">\u0416\u0430\u0432\u0430 \u0445\u044d\u043b \u0434\u044d\u044d\u0440 \u0445\u0438\u0439\u0441\u0432\u044d\u0440\u043b\u044d\u043b\u0434 \u0445\u04af\u0440\u044d\u0445\u0438\u0439\u043d \u0442\u0443\u043b\u0434 Interface \u0431\u043e\u043b\u043e\u043d Abstract Class-\u044b\u0433 \u0430\u0448\u0438\u0433\u043b\u0430\u0434\u0430\u0433 \u0431\u043e\u043b\u043e\u0432\u0447 \u0442\u044d\u0434\u0433\u044d\u044d\u0440 \u043d\u044c \u04e9\u04e9\u0440 \u04e9\u04e9\u0440 \u0448\u0438\u043d\u0436 \u0447\u0430\u043d\u0430\u0440, \u0445\u044d\u0440\u044d\u0433\u043b\u044d\u044d\u0442\u044d\u0439 \u0431\u0430\u0439\u0434\u0430\u0433.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">1. \u0418\u043d\u0442\u0435\u0440\u0444\u044d\u0439\u0441<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">\u0422\u043e\u0434\u043e\u0440\u0445\u043e\u0439\u043b\u043e\u043b\u0442: \u0418\u043d\u0442\u0435\u0440\u0444\u0435\u0439\u0441 \u043d\u044c \u0430\u043d\u0433\u0438 \u0445\u044d\u0440\u044d\u0433\u0436\u04af\u04af\u043b\u044d\u0445\u0434\u044d\u044d \u0434\u0430\u0433\u0430\u0436 \u043c\u04e9\u0440\u0434\u04e9\u0445 \u0451\u0441\u0442\u043e\u0439 \u0433\u044d\u0440\u044d\u044d\u0433 (\u0433\u044d\u0440\u044d\u044d) \u0442\u043e\u0434\u043e\u0440\u0445\u043e\u0439\u043b\u0434\u043e\u0433 <code>implements<\/code>.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">\u0413\u043e\u043b \u043e\u043d\u0446\u043b\u043e\u0433\u0443\u0443\u0434:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>\u042d\u043d\u044d \u043d\u044c \u0430\u0433\u0443\u0443\u043b\u0436 \u0431\u043e\u043b\u043d\u043e <code>abstract<\/code>, <code>default<\/code> \u0431\u043e\u043b\u043e\u043d <code>static<\/code> \u0430\u0440\u0433\u0443\u0443\u0434.<\/li>\n\n\n\n<li>Java 9-\u0438\u0439\u043d \u0445\u0443\u0432\u044c\u0434 \u044d\u043d\u044d \u043d\u044c \u0431\u0430\u0441 \u0430\u0433\u0443\u0443\u043b\u0436 \u0431\u043e\u043b\u043d\u043e <code>private<\/code> \u0430\u0440\u0433\u0443\u0443\u0434.<\/li>\n\n\n\n<li>\u0425\u0438\u0439\u0441\u0432\u044d\u0440 \u0430\u0440\u0433\u0443\u0443\u0434 \u043d\u044c <code>public<\/code> \u0430\u043d\u0445\u0434\u0430\u0433\u0447\u0430\u0430\u0440.<\/li>\n\n\n\n<li>\u0411\u04af\u0445 \u0442\u0430\u043b\u0431\u0430\u0440\u0443\u0443\u0434 \u0431\u0430\u0439\u043d\u0430 <code>public static final<\/code> \u0430\u043d\u0445\u0434\u0430\u0433\u0447 (\u0442\u043e\u0433\u0442\u043c\u043e\u043b).<\/li>\n\n\n\n<li>\u0410\u043d\u0433\u0438 \u043d\u044c \u043e\u043b\u043e\u043d \u0438\u043d\u0442\u0435\u0440\u0444\u0435\u0439\u0441\u0438\u0439\u0433 \u0445\u044d\u0440\u044d\u0433\u0436\u04af\u04af\u043b\u044d\u0445 \u0431\u043e\u043b\u043e\u043c\u0436\u0442\u043e\u0439.<\/li>\n\n\n\n<li>\u042f\u043c\u0430\u0440 \u0447 \u0431\u04af\u0442\u044d\u044d\u0433\u0447 \u0431\u0430\u0439\u0436 \u0431\u043e\u043b\u043e\u0445\u0433\u04af\u0439.<\/li>\n<\/ul>\n\n\n\n<p class=\"wp-block-paragraph\">\u0416\u0438\u0448\u044d\u044d:<\/p>\n\n\n<div class=\"wp-block-code\">\n\t<div class=\"cm-editor\">\n\t\t<div class=\"cm-scroller\">\n\t\t\t\n<pre>\n<code><div class=\"cm-line\">interface Animal {<\/div><div class=\"cm-line\">    void makeSound();<\/div><div class=\"cm-line\">}<\/div><div class=\"cm-line\"><\/div><div class=\"cm-line\">class Dog implements Animal {<\/div><div class=\"cm-line\"><\/div><div class=\"cm-line\">    @Override<\/div><div class=\"cm-line\">    public void makeSound() {<\/div><div class=\"cm-line\">        System.out.println(&quot;Bark&quot;);<\/div><div class=\"cm-line\">    }<\/div><div class=\"cm-line\">}<\/div><\/code><\/pre>\n\t\t<\/div>\n\t<\/div>\n<\/div>\n\n\n<h2 class=\"wp-block-heading\">2. \u0425\u0438\u0439\u0441\u0432\u044d\u0440 \u0430\u043d\u0433\u0438<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">\u0422\u043e\u0434\u043e\u0440\u0445\u043e\u0439\u043b\u043e\u043b\u0442: \u0425\u0438\u0439\u0441\u0432\u044d\u0440 \u0430\u043d\u0433\u0438 \u043d\u044c \u0443\u0434\u0430\u043c\u0448\u043b\u044b\u043d \u04af\u043d\u0434\u0441\u044d\u043d \u0430\u043d\u0433\u0438 \u044e\u043c <code>extends<\/code> \u0434\u044d\u0434 \u0430\u043d\u0433\u0438\u0443\u0434\u0434\u0430\u0430 \u043d\u0438\u0439\u0442\u043b\u044d\u0433 \u0431\u04af\u0442\u044d\u0446, \u0444\u0443\u043d\u043a\u0446\u044d\u044d\u0440 \u0445\u0430\u043d\u0433\u0430\u0434\u0430\u0433.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">\u0413\u043e\u043b \u043e\u043d\u0446\u043b\u043e\u0433\u0443\u0443\u0434:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>\u042d\u043d\u044d \u043d\u044c \u0430\u0433\u0443\u0443\u043b\u0436 \u0431\u043e\u043b\u043d\u043e <code>abstract<\/code> \u0431\u043e\u043b\u043e\u043d <code>concrete<\/code> \u0430\u0440\u0433\u0443\u0443\u0434.<\/li>\n\n\n\n<li>\u04e8\u04e9\u0440 \u04e9\u04e9\u0440 \u0445\u0430\u043d\u0434\u0430\u043b\u0442 \u0442\u043e\u0445\u0438\u0440\u0443\u0443\u043b\u0430\u0433\u0447\u0442\u0430\u0439 \u0442\u0430\u043b\u0431\u0430\u0440\u0443\u0443\u0434 \u0431\u0430\u0439\u0436 \u0431\u043e\u043b\u043d\u043e.<\/li>\n\n\n\n<li>\u0411\u0430\u0440\u0438\u043b\u0433\u0430\u0447\u0438\u0434 \u0431\u0430\u0439\u0436 \u0431\u043e\u043b\u043d\u043e.<\/li>\n\n\n\n<li>\u0411\u0430\u0439\u0436 \u043c\u0430\u0433\u0430\u0434\u0433\u04af\u0439 <code>static<\/code>, <code>final<\/code> \u0431\u043e\u043b\u043e\u043d \u044d\u043d\u0433\u0438\u0439\u043d \u0436\u0438\u0448\u044d\u044d\u043d\u0438\u0439 \u0430\u0440\u0433\u0443\u0443\u0434.<\/li>\n\n\n\n<li>\u0428\u0443\u0443\u0434 \u04af\u04af\u0441\u0433\u044d\u0445 \u0431\u043e\u043b\u043e\u043c\u0436\u0433\u04af\u0439.<\/li>\n\n\n\n<li>\u0410\u043d\u0433\u0438 \u043d\u044c \u0437\u04e9\u0432\u0445\u04e9\u043d \u043d\u044d\u0433 \u0430\u043d\u0433\u0438\u0439\u0433 \u04e9\u0432\u043b\u04e9\u0445 \u0431\u043e\u043b\u043e\u043c\u0436\u0442\u043e\u0439.<\/li>\n<\/ul>\n\n\n\n<p class=\"wp-block-paragraph\">\u0416\u0438\u0448\u044d\u044d:<\/p>\n\n\n<div class=\"wp-block-code\">\n\t<div class=\"cm-editor\">\n\t\t<div class=\"cm-scroller\">\n\t\t\t\n<pre>\n<code><div class=\"cm-line\">abstract class Animal {<\/div><div class=\"cm-line\"><\/div><div class=\"cm-line\">    String name;<\/div><div class=\"cm-line\"><\/div><div class=\"cm-line\">    Animal(String name) {<\/div><div class=\"cm-line\">        this.name = name;<\/div><div class=\"cm-line\">    }<\/div><div class=\"cm-line\"><\/div><div class=\"cm-line\">    abstract void makeSound();<\/div><div class=\"cm-line\"><\/div><div class=\"cm-line\">    void sleep() {<\/div><div class=\"cm-line\">        System.out.println(&quot;Sleeping...&quot;);<\/div><div class=\"cm-line\">    }<\/div><div class=\"cm-line\">}<\/div><div class=\"cm-line\"><\/div><div class=\"cm-line\">class Dog extends Animal {<\/div><div class=\"cm-line\"><\/div><div class=\"cm-line\">    Dog(String name) {<\/div><div class=\"cm-line\">        super(name);<\/div><div class=\"cm-line\">    }<\/div><div class=\"cm-line\"><\/div><div class=\"cm-line\">    @Override<\/div><div class=\"cm-line\">    void makeSound() {<\/div><div class=\"cm-line\">        System.out.println(&quot;Bark&quot;);<\/div><div class=\"cm-line\">    }<\/div><div class=\"cm-line\">}<\/div><\/code><\/pre>\n\t\t<\/div>\n\t<\/div>\n<\/div>\n\n\n<h2 class=\"wp-block-heading\">3. \u0413\u043e\u043b \u044f\u043b\u0433\u0430\u0430\u043d\u0443\u0443\u0434<\/h2>\n\n\n\n<figure class=\"wp-block-table\"><table class=\"has-fixed-layout\"><tbody><tr><th>\u0410\u0441\u043f\u0435\u043a\u0442<\/th><th>\u0418\u043d\u0442\u0435\u0440\u0444\u044d\u0439\u0441<\/th><th>\u0425\u0438\u0439\u0441\u0432\u044d\u0440 \u0430\u043d\u0433\u0438<\/th><\/tr><tr><td>\u0417\u043e\u0440\u0438\u043b\u0433\u043e<\/td><td>\u0413\u044d\u0440\u044d\u044d\u0433 \u0442\u043e\u0434\u043e\u0440\u0445\u043e\u0439\u043b\u0434\u043e\u0433<\/td><td>\u04ae\u043d\u0434\u0441\u044d\u043d \u0430\u043d\u0433\u0438\u043b\u043b\u044b\u0433 \u04e9\u0433\u0434\u04e9\u0433<\/td><\/tr><tr><td>\u04e8\u0432 \u0437\u0430\u043b\u0433\u0430\u043c\u0436\u043b\u0430\u043b<\/td><td>\u041e\u043b\u043e\u043d \u0438\u043d\u0442\u0435\u0440\u0444\u0435\u0439\u0441<\/td><td>\u0413\u0430\u043d\u0446 \u0430\u043d\u0433\u0438<\/td><\/tr><tr><td>\u0410\u0440\u0433\u0430 \u0437\u04af\u0439<\/td><td>\u0425\u0438\u0439\u0441\u0432\u044d\u0440, \u0430\u043d\u0445\u0434\u0430\u0433\u0447, \u0441\u0442\u0430\u0442\u0438\u043a, \u0445\u0443\u0432\u0438\u0439\u043d<\/td><td>\u0425\u0438\u0439\u0441\u0432\u044d\u0440 \u0431\u0430 \u0431\u0435\u0442\u043e\u043d<\/td><\/tr><tr><td>\u0411\u0430\u0440\u0438\u043b\u0433\u0430\u0447\u0438\u0434<\/td><td>\u0417\u04e9\u0432\u0448\u04e9\u04e9\u0440\u04e9\u0433\u0434\u04e9\u04e9\u0433\u04af\u0439<\/td><td>\u0417\u04e9\u0432\u0448\u04e9\u04e9\u0440\u04e9\u0433\u0434\u0441\u04e9\u043d<\/td><\/tr><tr><td>\u0422\u0430\u043b\u0431\u0430\u0439\u043d\u0443\u0443\u0434<\/td><td><code>public static final<\/code><\/td><td>\u0410\u043b\u0438\u0432\u0430\u0430 \u0445\u0430\u043d\u0434\u0430\u043b\u0442\u044b\u043d \u0445\u0443\u0432\u0438\u0440\u0433\u0430\u0433\u0447<\/td><\/tr><tr><td>\u0422\u04af\u043b\u0445\u04af\u04af\u0440 \u04af\u0433<\/td><td><code>implements<\/code><\/td><td><code>extends<\/code><\/td><\/tr><\/tbody><\/table><\/figure>\n\n\n\n<h2 class=\"wp-block-heading\">4. \u042e\u0443\u0433 \u0445\u044d\u0437\u044d\u044d \u0445\u044d\u0440\u044d\u0433\u043b\u044d\u0445 \u0432\u044d?<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">\u0418\u043d\u0442\u0435\u0440\u0444\u044d\u0439\u0441\u0438\u0439\u0433 \u0434\u0430\u0440\u0430\u0430\u0445 \u04af\u0435\u0434 \u0430\u0448\u0438\u0433\u043b\u0430\u0445:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>\u0411\u0438\u0434 \u044f\u043d\u0437 \u0431\u04af\u0440\u0438\u0439\u043d \u0430\u043d\u0433\u0438\u0443\u0434\u0430\u0434 \u0437\u043e\u0440\u0438\u0443\u043b\u0441\u0430\u043d \u043d\u0438\u0439\u0442\u043b\u044d\u0433 \u0433\u044d\u0440\u044d\u044d\u0433 \u0442\u043e\u0434\u043e\u0440\u0445\u043e\u0439\u043b\u043e\u0445\u044b\u0433 \u0445\u04af\u0441\u0447 \u0431\u0430\u0439\u043d\u0430.<\/li>\n\n\n\n<li>\u0411\u0438\u0434 \u043e\u043b\u043e\u043d \u0438\u043d\u0442\u0435\u0440\u0444\u044d\u0439\u0441\u0438\u0439\u0433 \u0445\u044d\u0440\u044d\u0433\u0436\u04af\u04af\u043b\u044d\u0445 \u043a\u043b\u0430\u0441\u0441\u044b\u0433 \u0445\u04af\u0441\u0447 \u0431\u0430\u0439\u043d\u0430.<\/li>\n\n\n\n<li>\u0410\u043d\u0433\u0438\u0443\u0434 \u043d\u044c \u044d\u0446\u044d\u0433 \u044d\u0445\u0438\u0439\u043d \u043d\u0438\u0439\u0442\u043b\u044d\u0433 \u0430\u043d\u0433\u0438\u0442\u0430\u0439 \u0431\u0430\u0439\u0445 \u0430\u043b\u0431\u0430\u0433\u04af\u0439.<\/li>\n<\/ul>\n\n\n\n<p class=\"wp-block-paragraph\">\u0425\u0438\u0439\u0441\u0432\u044d\u0440 \u0430\u043d\u0433\u0438\u0443\u0434\u044b\u0433 \u0434\u0430\u0440\u0430\u0430\u0445 \u0442\u043e\u0445\u0438\u043e\u043b\u0434\u043e\u043b\u0434 \u0430\u0448\u0438\u0433\u043b\u0430\u0445:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>\u0411\u0438\u0434 \u043d\u0438\u0439\u0442\u043b\u044d\u0433 \u043a\u043e\u0434\u044b\u0433 \u04e9\u0432\u043b\u04e9\u043d \u0430\u0432\u0441\u0430\u043d \u0430\u043d\u0433\u0438\u0443\u0434\u044b\u043d \u0445\u043e\u043e\u0440\u043e\u043d\u0434 \u0445\u0443\u0432\u0430\u0430\u043b\u0446\u0430\u0445\u044b\u0433 \u0445\u04af\u0441\u0447 \u0431\u0430\u0439\u043d\u0430.<\/li>\n\n\n\n<li>\u0411\u0438\u0434\u044d\u043d\u0434 \u043d\u0438\u0439\u0442\u043b\u044d\u0433 \u0442\u0430\u043b\u0431\u0430\u0440\u0443\u0443\u0434, \u0431\u0430\u0440\u0438\u043b\u0433\u0430\u0447\u0438\u0434 \u0431\u0438\u0439.<\/li>\n\n\n\n<li>\u0411\u0438\u0434 \u0434\u044d\u0434 \u0430\u043d\u0433\u0438\u0443\u0434\u044b\u0433 \u043d\u04e9\u0445\u04e9\u0445\u0438\u0439\u043d \u0442\u0443\u043b\u0434 \u0445\u044d\u0441\u044d\u0433\u0447\u0438\u043b\u0441\u044d\u043d \u0445\u044d\u0440\u044d\u0433\u0436\u0438\u043b\u0442\u0438\u0439\u0433 \u0445\u0430\u043d\u0433\u0430\u0445\u044b\u0433 \u0445\u04af\u0441\u0447 \u0431\u0430\u0439\u043d\u0430.<\/li>\n<\/ul>\n\n\n\n<h2 class=\"wp-block-heading\">5. Java \u0445\u04e9\u0433\u0436\u04af\u04af\u043b\u044d\u0433\u0447\u0438\u0439\u043d \u044f\u0440\u0438\u043b\u0446\u043b\u0430\u0433\u0430\u0434 \u0447\u0443\u0445\u0430\u043b<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">\u0416\u0438\u0448\u044d\u044d:<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">\u0411\u0438\u0434\u044d\u043d\u0434 \u0431\u0430\u0439\u0433\u0430\u0430 \u0433\u044d\u0436 \u0442\u04e9\u0441\u04e9\u04e9\u043b\u04e9\u04e9\u0434 \u04af\u0437 \u0434\u044d\u044d <code>Car<\/code>, <code>Airplane<\/code> \u0431\u043e\u043b\u043e\u043d <code>Boat<\/code>.<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>\u0418\u043d\u0442\u0435\u0440\u0444\u044d\u0439\u0441 <code>Flyable<\/code> \u0442\u043e\u0434\u043e\u0440\u0445\u043e\u0439\u043b\u0436 \u0447\u0430\u0434\u043d\u0430 <code>fly()<\/code> &#8211; \u041e\u043d\u0433\u043e\u0446 \u0431\u043e\u043b\u043e\u043d \u0431\u0443\u0441\u0430\u0434 \u043d\u0438\u0441\u0434\u044d\u0433 \u0431\u0438\u0435\u0442\u04af\u04af\u0434\u0438\u0439\u043d \u0430\u043b\u044c \u0430\u043b\u0438\u043d\u0434 \u043d\u044c.<\/li>\n\n\n\n<li>\u0425\u0438\u0439\u0441\u0432\u044d\u0440 \u0430\u043d\u0433\u0438 <code>Vehicle<\/code> \u0437\u044d\u0440\u044d\u0433 \u043d\u0438\u0439\u0442\u043b\u044d\u0433 \u0442\u0430\u043b\u0431\u0430\u0440\u0443\u0443\u0434\u044b\u0433 \u0430\u0433\u0443\u0443\u043b\u0436 \u0431\u043e\u043b\u043d\u043e <code>speed<\/code>, <code>brand<\/code> \u0433\u044d\u0445 \u043c\u044d\u0442 \u0430\u0440\u0433\u0443\u0443\u0434 <code>start()<\/code>.<\/li>\n<\/ul>\n\n\n\n<p class=\"wp-block-paragraph\">\u0421\u0430\u043d\u0430\u0436 \u0431\u0430\u0439\u043d\u0430 \u0443\u0443:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>\u0418\u043d\u0442\u0435\u0440\u0444\u044d\u0439\u0441 = \u0410\u043d\u0433\u0438 \u044e\u0443 \u0445\u0438\u0439\u0436 \u0447\u0430\u0434\u0430\u0445 \u0432\u044d (\u0413\u044d\u0440\u044d\u044d).<\/li>\n\n\n\n<li>Abstract Class = \u0410\u043d\u0433\u0438 \u0433\u044d\u0436 \u044e\u0443 \u0432\u044d, \u044f\u043c\u0430\u0440 \u043d\u0438\u0439\u0442\u043b\u044d\u0433 \u0444\u0443\u043d\u043a\u0446\u0438\u0439\u0433 \u0445\u0443\u0432\u0430\u0430\u043b\u0446\u0434\u0430\u0433.<\/li>\n\n\n\n<li>\u0418\u043d\u0442\u0435\u0440\u0444\u044d\u0439\u0441 \u043d\u044c \u0442\u04e9\u0440\u043b\u0438\u0439\u0433 \u043e\u043b\u043e\u043d \u0443\u0434\u0430\u043c\u0448\u0438\u0445 \u0431\u043e\u043b\u043e\u043c\u0436\u0438\u0439\u0433 \u043e\u043b\u0433\u043e\u0434\u043e\u0433.<\/li>\n\n\n\n<li>Abstract Class \u043d\u044c \u0442\u04e9\u043b\u04e9\u0432 \u0431\u043e\u043b\u043e\u043d \u0445\u044d\u0440\u044d\u0433\u0436\u0438\u043b\u0442\u0438\u0439\u0433 \u0445\u0443\u0432\u0430\u0430\u043b\u0446\u0430\u0445 \u0431\u043e\u043b\u043e\u043c\u0436\u0438\u0439\u0433 \u043e\u043b\u0433\u043e\u0434\u043e\u0433.<\/li>\n<\/ul>\n\n\n\n<p class=\"wp-block-paragraph\">\u041d\u044d\u043c\u044d\u043b\u0442 \u0442\u043e\u0434\u0440\u0443\u0443\u043b\u0433\u0430: \u0418\u043d\u0442\u0435\u0440\u0444\u044d\u0439\u0441 \u043d\u044c \u0445\u0438\u0439\u0441\u0432\u044d\u0440 \u0430\u0440\u0433\u0443\u0443\u0434\u044b\u0433 \u0445\u044d\u043b\u044d\u0445\u044d\u044d \u0431\u043e\u043b\u044c\u0441\u043e\u043d. Java 8 \u0434\u044d\u043c\u0436\u0434\u044d\u0433 \u0442\u0443\u043b <code>default<\/code> \u0431\u043e\u043b\u043e\u043d <code>static<\/code> \u0430\u0440\u0433\u0443\u0443\u0434, \u043c\u04e9\u043d Java 9-\u044d\u044d\u0441 &#8211; <code>private<\/code> \u0430\u0440\u0433\u0443\u0443\u0434.<\/p>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h1 class=\"wp-block-heading\">Java Versions \u2013 \u0418\u0441\u0442\u043e\u0440\u0438\u044f \u0438 \u043e\u0441\u043d\u043e\u0432\u043d\u0438 \u043d\u043e\u0432\u043e\u0432\u044a\u0432\u0435\u0434\u0435\u043d\u0438\u044f<\/h1>\n\n\n\n<p class=\"wp-block-paragraph\">Java \u0441\u0435 \u0440\u0430\u0437\u0432\u0438\u0432\u0430 \u0447\u0440\u0435\u0437 \u043d\u043e\u0432\u0438 \u0432\u0435\u0440\u0441\u0438\u0438, \u043a\u043e\u0438\u0442\u043e \u0432\u044a\u0432\u0435\u0436\u0434\u0430\u0442 \u043f\u043e\u0434\u043e\u0431\u0440\u0435\u043d\u0438\u044f \u0432 \u0435\u0437\u0438\u043a\u0430, JVM, Performance, Security, Garbage Collection \u0438 Concurrency.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">\u041e\u0442 Java 9 \u043d\u0430\u0441\u0430\u043c Oracle \u0441\u043b\u0435\u0434\u0432\u0430 \u043f\u0440\u0438\u0431\u043b\u0438\u0437\u0438\u0442\u0435\u043b\u043d\u043e \u0448\u0435\u0441\u0442\u043c\u0435\u0441\u0435\u0447\u0435\u043d \u0446\u0438\u043a\u044a\u043b \u043d\u0430 \u0438\u0437\u0434\u0430\u0432\u0430\u043d\u0435 \u2013 \u043f\u0440\u0435\u0437 \u043c\u0430\u0440\u0442 \u0438 \u0441\u0435\u043f\u0442\u0435\u043c\u0432\u0440\u0438.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">\u0412\u0430\u0436\u043d\u043e \u0440\u0430\u0437\u0433\u0440\u0430\u043d\u0438\u0447\u0435\u043d\u0438\u0435:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>LTS (Long-Term Support): \u0412\u0435\u0440\u0441\u0438\u0438 \u0441 \u0434\u044a\u043b\u0433\u043e\u0441\u0440\u043e\u0447\u043d\u0430 \u043f\u043e\u0434\u0434\u0440\u044a\u0436\u043a\u0430.<\/li>\n\n\n\n<li>Non-LTS: \u041c\u0435\u0436\u0434\u0438\u043d\u043d\u0438 \u0432\u0435\u0440\u0441\u0438\u0438 \u0441 \u043f\u043e-\u043a\u0440\u0430\u0442\u044a\u043a \u043f\u0435\u0440\u0438\u043e\u0434 \u043d\u0430 \u043f\u043e\u0434\u0434\u0440\u044a\u0436\u043a\u0430.<\/li>\n\n\n\n<li>GA (General Availability): \u041e\u0444\u0438\u0446\u0438\u0430\u043b\u043d\u043e \u0438\u0437\u0434\u0430\u0434\u0435\u043d\u0430 \u0441\u0442\u0430\u0431\u0438\u043b\u043d\u0430 \u0432\u0435\u0440\u0441\u0438\u044f.<\/li>\n\n\n\n<li>Preview \/ Incubator: \u0415\u043a\u0441\u043f\u0435\u0440\u0438\u043c\u0435\u043d\u0442\u0430\u043b\u043d\u0438 \u0438\u043b\u0438 \u043f\u0440\u0435\u0434\u0432\u0430\u0440\u0438\u0442\u0435\u043b\u043d\u0438 \u0444\u0443\u043d\u043a\u0446\u0438\u043e\u043d\u0430\u043b\u043d\u043e\u0441\u0442\u0438, \u043a\u043e\u0438\u0442\u043e \u043d\u0435 \u0442\u0440\u044f\u0431\u0432\u0430 \u0434\u0430 \u0441\u0435 \u043f\u0440\u0438\u0435\u043c\u0430\u0442 \u0437\u0430 \u043e\u043a\u043e\u043d\u0447\u0430\u0442\u0435\u043b\u043d\u0438.<\/li>\n<\/ul>\n\n\n\n<h2 class=\"wp-block-heading\">1. Java Versions and Highlights<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">\u0421\u043b\u0435\u0434\u0432\u0430\u0449\u0430\u0442\u0430 \u0442\u0430\u0431\u043b\u0438\u0446\u0430 \u0432\u043a\u043b\u044e\u0447\u0432\u0430 \u043e\u0444\u0438\u0446\u0438\u0430\u043b\u043d\u043e \u0438\u0437\u0434\u0430\u0434\u0435\u043d\u0438\u0442\u0435 \u0432\u0435\u0440\u0441\u0438\u0438 \u0434\u043e Java 27 (\u043d\u043e\u0435\u043c\u0432\u0440\u0438 2026). \u041f\u043e\u0441\u043e\u0447\u0435\u043d\u0438 \u0441\u0430 \u043e\u0441\u043d\u043e\u0432\u043d\u043e \u0444\u0438\u043d\u0430\u043b\u0438\u0437\u0438\u0440\u0430\u043d\u0438\u0442\u0435 \u0444\u0443\u043d\u043a\u0446\u0438\u043e\u043d\u0430\u043b\u043d\u043e\u0441\u0442\u0438, \u0430 \u043d\u0435 Preview features.<\/p>\n\n\n\n<figure class=\"wp-block-table\"><table class=\"has-fixed-layout\"><tbody><tr><th>Version<\/th><th>\u0422\u04e9\u0440\u04e9\u043b<\/th><th>Main Highlights<\/th><\/tr><tr><td>Java 17<\/td><td>LTS<\/td><td>Sealed Classes, Pattern Matching for <code>instanceof<\/code>, Strong Encapsulation, Enhanced Pseudo-Random Number Generators.<\/td><\/tr><tr><td>Java 18<\/td><td>Non-LTS<\/td><td>UTF-8 Default Charset, Simple Web Server, Code Snippets in JavaDoc.<\/td><\/tr><tr><td>Java 19<\/td><td>Non-LTS<\/td><td>\u041f\u043e\u0434\u043e\u0431\u0440\u0435\u043d\u0438\u044f \u0432 JVM \u0438 Concurrency. Virtual Threads \u0438 Record Patterns \u0432\u0441\u0435 \u043e\u0449\u0435 \u0441\u0430 Preview.<\/td><\/tr><tr><td>Java 20<\/td><td>Non-LTS<\/td><td>\u041f\u0440\u043e\u0434\u044a\u043b\u0436\u0435\u043d\u0438\u0435 \u043d\u0430 Virtual Threads, Structured Concurrency \u0438 Record Patterns \u2013 \u0432\u0441\u0435 \u043e\u0449\u0435 Preview.<\/td><\/tr><tr><td>Java 21<\/td><td>LTS<\/td><td>Virtual Threads, Record Patterns, Pattern Matching for <code>switch<\/code>, Sequenced Collections, Generational ZGC, KEM API.<\/td><\/tr><tr><td>Java 22<\/td><td>Non-LTS<\/td><td>Foreign Function &amp; Memory API (Final), Unnamed Variables &amp; Patterns, Multi-file Source-Code Launch.<\/td><\/tr><tr><td>Java 23<\/td><td>Non-LTS<\/td><td>Markdown Documentation Comments (JavaDoc), Generational ZGC \u0441\u0442\u0430\u0432\u0430 Default Mode.<\/td><\/tr><tr><td>Java 24<\/td><td>Non-LTS<\/td><td>Stream Gatherers (Final), Class-File API (Final), Ahead-of-Time Class Loading &amp; Linking, Key Derivation API, Security Manager Permanently Disabled.<\/td><\/tr><tr><td>Java 25<\/td><td>LTS<\/td><td>Compact Source Files, Instance Main Methods, Module Import Declarations, Flexible Constructor Bodies, Scoped Values, Generational Shenandoah GC.<\/td><\/tr><tr><td>Java 26<\/td><td>Non-LTS<\/td><td>HTTP\/3 Support, G1 GC Performance Improvements, Ahead-of-Time Object Caching with Any GC.<\/td><\/tr><tr><td>Java 27<\/td><td>Non-LTS<\/td><td>Post-Quantum Hybrid Key Exchange for TLS 1.3, Compact Object Headers by Default, G1 GC Default in All Environments, JFR In-Process Data Redaction.<\/td><\/tr><\/tbody><\/table><\/figure>\n\n\n\n<p class=\"wp-block-paragraph\">\u0418\u0437\u0442\u043e\u0447\u043d\u0438\u0446\u0438: \u043e\u0444\u0438\u0446\u0438\u0430\u043b\u043d\u0438\u0442\u0435 <a href=\"https:\/\/www.oracle.com\/java\/technologies\/javase\/jdk-relnotes-index.html?utm_source=chatgpt.com\">JDK Release Notes<\/a> \u0431\u043e\u043b\u043e\u043d <a href=\"https:\/\/www.oracle.com\/uk\/java\/technologies\/java-se-support-roadmap.html?utm_source=chatgpt.com\">Oracle Java SE Support Roadmap<\/a>. Oracle+3<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">2. Important Java Features Explained<\/h2>\n\n\n\n<h3 class=\"wp-block-heading\">A. Virtual Threads (Java 21)<\/h3>\n\n\n\n<p class=\"wp-block-paragraph\">Virtual Threads \u0441\u0430 \u043b\u0435\u043a\u0438 threads, \u0443\u043f\u0440\u0430\u0432\u043b\u044f\u0432\u0430\u043d\u0438 \u043e\u0442 JVM, \u0432\u043c\u0435\u0441\u0442\u043e \u0434\u0430 \u0441\u044a\u043e\u0442\u0432\u0435\u0442\u0441\u0442\u0432\u0430\u0442 \u0434\u0438\u0440\u0435\u043a\u0442\u043d\u043e \u0435\u0434\u043d\u043e \u043a\u044a\u043c \u0435\u0434\u043d\u043e \u043d\u0430 OS threads.<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>\u041c\u043e\u0433\u0430\u0442 \u0434\u0430 \u0431\u044a\u0434\u0430\u0442 \u0441\u044a\u0437\u0434\u0430\u0432\u0430\u043d\u0438 \u0432 \u043c\u043d\u043e\u0433\u043e \u0433\u043e\u043b\u044f\u043c \u0431\u0440\u043e\u0439.<\/li>\n\n\n\n<li>\u0418\u0437\u043f\u043e\u043b\u0437\u0432\u0430\u0442 \u043c\u0430\u043b\u043a\u043e \u043f\u0430\u043c\u0435\u0442 \u0441\u043f\u0440\u044f\u043c\u043e \u0442\u0440\u0430\u0434\u0438\u0446\u0438\u043e\u043d\u043d\u0438\u0442\u0435 Platform Threads.<\/li>\n\n\n\n<li>\u041f\u0440\u0438 blocking I\/O \u043c\u043e\u0433\u0430\u0442 \u0430\u0432\u0442\u043e\u043c\u0430\u0442\u0438\u0447\u043d\u043e \u0434\u0430 \u0431\u044a\u0434\u0430\u0442 suspended, \u043e\u0441\u0432\u043e\u0431\u043e\u0436\u0434\u0430\u0432\u0430\u0439\u043a\u0438 carrier thread.<\/li>\n\n\n\n<li>\u041f\u043e\u0434\u0445\u043e\u0434\u044f\u0449\u0438 \u0441\u0430 \u0437\u0430 \u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u044f \u0441 \u043c\u043d\u043e\u0433\u043e \u0435\u0434\u043d\u043e\u0432\u0440\u0435\u043c\u0435\u043d\u043d\u0438 \u0437\u0430\u044f\u0432\u043a\u0438 \u2013 Web Servers, REST APIs \u0438 Microservices.<\/li>\n<\/ul>\n\n\n\n<h3 class=\"wp-block-heading\">B. Structured Concurrency<\/h3>\n\n\n\n<p class=\"wp-block-paragraph\">Structured Concurrency \u0442\u0440\u0435\u0442\u0438\u0440\u0430 \u0433\u0440\u0443\u043f\u0430 \u043e\u0442 \u043f\u0430\u0440\u0430\u043b\u0435\u043b\u043d\u0438 \u0437\u0430\u0434\u0430\u0447\u0438 \u043a\u0430\u0442\u043e \u0435\u0434\u043d\u0430 \u043b\u043e\u0433\u0438\u0447\u0435\u0441\u043a\u0430 \u0435\u0434\u0438\u043d\u0438\u0446\u0430.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">\u041e\u0441\u043d\u043e\u0432\u043d\u0438 \u043f\u0440\u0435\u0434\u0438\u043c\u0441\u0442\u0432\u0430:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Simplicity: \u0412\u0441\u0438\u0447\u043a\u0438 \u0437\u0430\u0434\u0430\u0447\u0438 \u0441\u0435 \u0443\u043f\u0440\u0430\u0432\u043b\u044f\u0432\u0430\u0442 \u0432 \u043e\u0431\u0449 scope.<\/li>\n\n\n\n<li>Reliability: \u041f\u043e-\u043b\u0435\u0441\u043d\u043e \u043e\u0431\u0440\u0430\u0431\u043e\u0442\u0432\u0430\u043d\u0435 \u043d\u0430 exceptions.<\/li>\n\n\n\n<li>Cancellation: \u0421\u0432\u044a\u0440\u0437\u0430\u043d\u0438 \u0437\u0430\u0434\u0430\u0447\u0438 \u043c\u043e\u0433\u0430\u0442 \u0434\u0430 \u0431\u044a\u0434\u0430\u0442 \u043e\u0442\u043c\u0435\u043d\u0435\u043d\u0438 \u043f\u0440\u0438 \u0433\u0440\u0435\u0448\u043a\u0430.<\/li>\n\n\n\n<li>Resource Management: \u041f\u043e-\u0434\u043e\u0431\u044a\u0440 \u043a\u043e\u043d\u0442\u0440\u043e\u043b \u0432\u044a\u0440\u0445\u0443 \u0436\u0438\u0437\u043d\u0435\u043d\u0438\u044f \u0446\u0438\u043a\u044a\u043b \u043d\u0430 \u0437\u0430\u0434\u0430\u0447\u0438\u0442\u0435.<\/li>\n<\/ul>\n\n\n\n<p class=\"wp-block-paragraph\">Preview in Java 27<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">\u0412\u0430\u0436\u043d\u043e: Structured Concurrency \u0432\u0441\u0435 \u043e\u0449\u0435 \u043d\u0435 \u0435 \u0444\u0438\u043d\u0430\u043b\u0438\u0437\u0438\u0440\u0430\u043d\u0430 \u0434\u043e\u0440\u0438 \u0432 Java 27.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">C. Scoped Values (Java 25)<\/h3>\n\n\n\n<p class=\"wp-block-paragraph\">Scoped Values \u043f\u0440\u0435\u0434\u043e\u0441\u0442\u0430\u0432\u044f\u0442 \u043c\u0435\u0445\u0430\u043d\u0438\u0437\u044a\u043c \u0437\u0430 \u0441\u043f\u043e\u0434\u0435\u043b\u044f\u043d\u0435 \u043d\u0430 \u043d\u0435\u0438\u0437\u043c\u0435\u043d\u044f\u0435\u043c\u0438 \u0434\u0430\u043d\u043d\u0438 \u043c\u0435\u0436\u0434\u0443 methods \u0438 threads \u0432 \u0440\u0430\u043c\u043a\u0438\u0442\u0435 \u043d\u0430 \u043e\u043f\u0440\u0435\u0434\u0435\u043b\u0435\u043d scope.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">\u0414\u0430\u0432\u0443\u0443 \u0442\u0430\u043b:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>\u041f\u043e-\u0431\u0435\u0437\u043e\u043f\u0430\u0441\u043d\u0430 \u0430\u043b\u0442\u0435\u0440\u043d\u0430\u0442\u0438\u0432\u0430 \u043d\u0430 \u043c\u043d\u043e\u0433\u043e \u0443\u043f\u043e\u0442\u0440\u0435\u0431\u0438 \u043d\u0430 <code>ThreadLocal<\/code>.<\/li>\n\n\n\n<li>\u041d\u0435\u0438\u0437\u043c\u0435\u043d\u044f\u0435\u043c\u0438 bindings.<\/li>\n\n\n\n<li>\u0410\u0432\u0442\u043e\u043c\u0430\u0442\u0438\u0447\u043d\u043e \u043e\u0433\u0440\u0430\u043d\u0438\u0447\u0430\u0432\u0430\u043d\u0435 \u043d\u0430 \u0434\u043e\u0441\u0442\u044a\u043f\u0430 \u0441\u043f\u043e\u0440\u0435\u0434 scope.<\/li>\n\n\n\n<li>\u041f\u043e\u0434\u0445\u043e\u0434\u044f\u0449\u0438 \u0437\u0430 Virtual Threads \u0438 \u043f\u0440\u0435\u0434\u0430\u0432\u0430\u043d\u0435 \u043d\u0430 Request ID, User Context \u0438 \u0434\u0440\u0443\u0433\u0438 \u0434\u0430\u043d\u043d\u0438.<\/li>\n<\/ul>\n\n\n\n<p class=\"wp-block-paragraph\">Final in Java 25<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">D. Stable Values \/ Lazy Constants<\/h3>\n\n\n\n<p class=\"wp-block-paragraph\">\u0422\u043e\u0432\u0430 \u0435 \u0444\u0443\u043d\u043a\u0446\u0438\u043e\u043d\u0430\u043b\u043d\u043e\u0441\u0442, \u043a\u043e\u044f\u0442\u043e \u0432\u0441\u0435 \u043e\u0449\u0435 \u0441\u0435 \u0440\u0430\u0437\u0432\u0438\u0432\u0430.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">\u0418\u0434\u0435\u044f\u0442\u0430 \u0435 \u0434\u0430 \u0441\u0435 \u0441\u044a\u0437\u0434\u0430\u0432\u0430\u0442 \u0441\u0442\u043e\u0439\u043d\u043e\u0441\u0442\u0438, \u043a\u043e\u0438\u0442\u043e \u0441\u0435 \u0438\u043d\u0438\u0446\u0438\u0430\u043b\u0438\u0437\u0438\u0440\u0430\u0442 \u043e\u0442\u043b\u043e\u0436\u0435\u043d\u043e (Lazy Initialization), \u043d\u043e \u0441\u043b\u0435\u0434 \u0438\u043d\u0438\u0446\u0438\u0430\u043b\u0438\u0437\u0430\u0446\u0438\u044f \u0441\u0435 \u0442\u0440\u0435\u0442\u0438\u0440\u0430\u0442 \u043a\u0430\u0442\u043e \u043d\u0435\u0438\u0437\u043c\u0435\u043d\u044f\u0435\u043c\u0438 \u043a\u043e\u043d\u0441\u0442\u0430\u043d\u0442\u0438.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">\u041f\u043e\u043b\u0437\u0438:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>\u041f\u043e-\u0433\u044a\u0432\u043a\u0430\u0432\u0430 \u0438\u043d\u0438\u0446\u0438\u0430\u043b\u0438\u0437\u0430\u0446\u0438\u044f.<\/li>\n\n\n\n<li>\u0412\u044a\u0437\u043c\u043e\u0436\u043d\u043e\u0441\u0442 \u0437\u0430 JVM \u043e\u043f\u0442\u0438\u043c\u0438\u0437\u0430\u0446\u0438\u0438.<\/li>\n\n\n\n<li>\u041f\u043e\u043b\u0435\u0437\u043d\u0438 \u043f\u0440\u0438 Configuration \u0438 Caching.<\/li>\n<\/ul>\n\n\n\n<p class=\"wp-block-paragraph\">Preview in Java 27<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">\u0412\u0430\u0436\u043d\u043e: \u0422\u043e\u0432\u0430 \u043d\u0435 \u0435 \u043c\u0435\u0445\u0430\u043d\u0438\u0437\u044a\u043c \u0437\u0430 \u043f\u0440\u043e\u0438\u0437\u0432\u043e\u043b\u043d\u0438 Atomic Updates \u0438\u043b\u0438 \u043f\u0440\u043e\u043c\u0435\u043d\u043b\u0438\u0432\u0438 \u0441\u044a\u0441 \u0441\u0435\u043c\u0430\u043d\u0442\u0438\u043a\u0430 \u043d\u0430 <code>volatile<\/code>.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">E. Compact Object Headers (Java 25\u201327)<\/h3>\n\n\n\n<p class=\"wp-block-paragraph\">Compact Object Headers \u043d\u0430\u043c\u0430\u043b\u044f\u0432\u0430\u0442 \u0440\u0430\u0437\u043c\u0435\u0440\u0430 \u043d\u0430 \u0437\u0430\u0433\u043b\u0430\u0432\u043d\u0430\u0442\u0430 \u0447\u0430\u0441\u0442 \u043d\u0430 Java objects \u0432 Heap Memory.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">\u0414\u0430\u0432\u0443\u0443 \u0442\u0430\u043b:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>\u041f\u043e-\u043c\u0430\u043b\u043a\u043e \u0438\u0437\u043f\u043e\u043b\u0437\u0432\u0430\u043d\u0430 \u043f\u0430\u043c\u0435\u0442.<\/li>\n\n\n\n<li>\u041f\u043e-\u0434\u043e\u0431\u0440\u0430 Memory Density.<\/li>\n\n\n\n<li>\u041f\u043e-\u0434\u043e\u0431\u0440\u043e \u0438\u0437\u043f\u043e\u043b\u0437\u0432\u0430\u043d\u0435 \u043d\u0430 CPU Cache.<\/li>\n\n\n\n<li>\u041f\u043e\u0442\u0435\u043d\u0446\u0438\u0430\u043b\u043d\u043e \u043f\u043e-\u0434\u043e\u0431\u0440\u0430 \u043f\u0440\u043e\u0438\u0437\u0432\u043e\u0434\u0438\u0442\u0435\u043b\u043d\u043e\u0441\u0442 \u043f\u0440\u0438 \u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u044f \u0441 \u043c\u0438\u043b\u0438\u043e\u043d\u0438 objects.<\/li>\n<\/ul>\n\n\n\n<p class=\"wp-block-paragraph\">\u0412 Java 27 Compact Object Headers \u0441\u0442\u0430\u0432\u0430\u0442 Default \u0432 HotSpot JVM. Oracle<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">F. Generational Shenandoah GC (Java 25)<\/h3>\n\n\n\n<p class=\"wp-block-paragraph\">Generational Shenandoah \u0440\u0430\u0437\u0434\u0435\u043b\u044f Heap Memory \u043d\u0430:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Young Generation: \u0417\u0430 \u043d\u043e\u0432\u043e\u0441\u044a\u0437\u0434\u0430\u0434\u0435\u043d\u0438 objects.<\/li>\n\n\n\n<li>Old Generation: \u0417\u0430 \u0434\u044a\u043b\u0433\u043e \u0436\u0438\u0432\u0435\u0435\u0449\u0438 objects.<\/li>\n<\/ul>\n\n\n\n<p class=\"wp-block-paragraph\">\u0414\u0430\u0432\u0443\u0443 \u0442\u0430\u043b:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>\u041f\u043e-\u0435\u0444\u0435\u043a\u0442\u0438\u0432\u043d\u043e \u0441\u044a\u0431\u0438\u0440\u0430\u043d\u0435 \u043d\u0430 \u043d\u0435\u0438\u0437\u043f\u043e\u043b\u0437\u0432\u0430\u043d\u0430 \u043f\u0430\u043c\u0435\u0442.<\/li>\n\n\n\n<li>\u041f\u043e-\u043d\u0438\u0441\u043a\u0438 GC pauses.<\/li>\n\n\n\n<li>\u041f\u043e-\u0434\u043e\u0431\u0440\u0430 \u043f\u0440\u043e\u0438\u0437\u0432\u043e\u0434\u0438\u0442\u0435\u043b\u043d\u043e\u0441\u0442 \u043f\u0440\u0438 \u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u044f \u0441 \u043c\u043d\u043e\u0433\u043e allocations.<\/li>\n\n\n\n<li>\u0417\u0430\u043f\u0430\u0437\u0432\u0430 \u043d\u0438\u0441\u043a\u0430\u0442\u0430 \u043b\u0430\u0442\u0435\u043d\u0442\u043d\u043e\u0441\u0442 \u043d\u0430 Shenandoah.<\/li>\n<\/ul>\n\n\n\n<h3 class=\"wp-block-heading\">G. Generational ZGC (Java 23)<\/h3>\n\n\n\n<p class=\"wp-block-paragraph\">Generational ZGC \u0438\u0437\u043f\u043e\u043b\u0437\u0432\u0430 Young \u0438 Old Generations, \u0437\u0430 \u0434\u0430 \u043e\u043f\u0442\u0438\u043c\u0438\u0437\u0438\u0440\u0430 Garbage Collection.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">\u041e\u0441\u043d\u043e\u0432\u043d\u0438 \u043f\u0440\u0435\u0434\u0438\u043c\u0441\u0442\u0432\u0430:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>\u041f\u043e-\u0440\u044f\u0434\u043a\u043e \u0441\u043a\u0430\u043d\u0438\u0440\u0430\u043d\u0435 \u043d\u0430 \u0434\u044a\u043b\u0433\u043e \u0436\u0438\u0432\u0435\u0435\u0449\u0438 objects.<\/li>\n\n\n\n<li>\u041f\u043e-\u043c\u0430\u043b\u043a\u043e GC overhead.<\/li>\n\n\n\n<li>\u041c\u043d\u043e\u0433\u043e \u043d\u0438\u0441\u043a\u0438 pause times.<\/li>\n\n\n\n<li>\u041f\u043e\u0434\u0445\u043e\u0434\u044f\u0449 \u0437\u0430 \u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u044f \u0441 \u0433\u043e\u043b\u0435\u043c\u0438 Heap Memory \u0440\u0430\u0437\u043c\u0435\u0440\u0438.<\/li>\n<\/ul>\n\n\n\n<p class=\"wp-block-paragraph\">\u0412 Java 23 Generational Mode \u0441\u0442\u0430\u0432\u0430 \u0441\u0442\u0430\u043d\u0434\u0430\u0440\u0442\u043d\u0438\u044f\u0442 \u0440\u0435\u0436\u0438\u043c \u043d\u0430 ZGC.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">H. HTTP\/3 Support (Java 26)<\/h3>\n\n\n\n<p class=\"wp-block-paragraph\">Java 26 \u0434\u043e\u0431\u0430\u0432\u044f \u043f\u043e\u0434\u0434\u0440\u044a\u0436\u043a\u0430 \u043d\u0430 HTTP\/3 \u0432 Java HTTP Client API.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">HTTP\/3 \u0438\u0437\u043f\u043e\u043b\u0437\u0432\u0430 QUIC \u0432\u043c\u0435\u0441\u0442\u043e TCP \u0438 \u043f\u0440\u0435\u0434\u043e\u0441\u0442\u0430\u0432\u044f:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>\u041f\u043e-\u0431\u044a\u0440\u0437\u043e \u0443\u0441\u0442\u0430\u043d\u043e\u0432\u044f\u0432\u0430\u043d\u0435 \u043d\u0430 \u0432\u0440\u044a\u0437\u043a\u0438.<\/li>\n\n\n\n<li>\u041f\u043e-\u0434\u043e\u0431\u0440\u0430 \u0440\u0430\u0431\u043e\u0442\u0430 \u043f\u0440\u0438 \u0437\u0430\u0433\u0443\u0431\u0430 \u043d\u0430 \u043f\u0430\u043a\u0435\u0442\u0438.<\/li>\n\n\n\n<li>\u041f\u043e-\u0435\u0444\u0435\u043a\u0442\u0438\u0432\u043d\u0430 \u043c\u0440\u0435\u0436\u043e\u0432\u0430 \u043a\u043e\u043c\u0443\u043d\u0438\u043a\u0430\u0446\u0438\u044f.<\/li>\n<\/ul>\n\n\n\n<h3 class=\"wp-block-heading\">I. Post-Quantum Cryptography (Java 27)<\/h3>\n\n\n\n<p class=\"wp-block-paragraph\">Java 27 \u0434\u043e\u0431\u0430\u0432\u044f Post-Quantum Hybrid Key Exchange \u0437\u0430 TLS 1.3.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">\u0422\u043e\u0432\u0430 \u043a\u043e\u043c\u0431\u0438\u043d\u0438\u0440\u0430 \u0442\u0440\u0430\u0434\u0438\u0446\u0438\u043e\u043d\u043d\u0438 \u0438 quantum-resistant cryptographic algorithms \u0441 \u0446\u0435\u043b \u043f\u043e-\u0434\u043e\u0431\u0440\u0430 \u0437\u0430\u0449\u0438\u0442\u0430 \u0441\u0440\u0435\u0449\u0443 \u0431\u044a\u0434\u0435\u0449\u0438 \u0437\u0430\u043f\u043b\u0430\u0445\u0438 \u043e\u0442 \u043a\u0432\u0430\u043d\u0442\u043e\u0432\u0438 \u043a\u043e\u043c\u043f\u044e\u0442\u0440\u0438. Oracle<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">3. LTS Versions \u2013 \u043d\u0430\u0439-\u0432\u0430\u0436\u043d\u0438\u0442\u0435 \u0432\u0435\u0440\u0441\u0438\u0438<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">\u041a\u044a\u043c \u043d\u043e\u0435\u043c\u0432\u0440\u0438 2026 \u043e\u0444\u0438\u0446\u0438\u0430\u043b\u043d\u0438\u0442\u0435 LTS \u0432\u0435\u0440\u0441\u0438\u0438 \u0441\u0430:<\/p>\n\n\n\n<figure class=\"wp-block-table\"><table class=\"has-fixed-layout\"><tbody><tr><th>Version<\/th><th>Release Year<\/th><th>Status<\/th><\/tr><tr><td>Java 8<\/td><td>2014<\/td><td>LTS<\/td><\/tr><tr><td>Java 11<\/td><td>2018<\/td><td>LTS<\/td><\/tr><tr><td>Java 17<\/td><td>2021<\/td><td>LTS<\/td><\/tr><tr><td>Java 21<\/td><td>2023<\/td><td>LTS<\/td><\/tr><tr><td>Java 25<\/td><td>2025<\/td><td>Latest LTS<\/td><\/tr><\/tbody><\/table><\/figure>\n\n\n\n<p class=\"wp-block-paragraph\">\u0421\u043b\u0435\u0434\u0432\u0430\u0449\u0430\u0442\u0430 \u043f\u043b\u0430\u043d\u0438\u0440\u0430\u043d\u0430 LTS \u0432\u0435\u0440\u0441\u0438\u044f \u0435 Java 29 \u043f\u0440\u0435\u0437 \u0441\u0435\u043f\u0442\u0435\u043c\u0432\u0440\u0438 2027 \u0433. Oracle United Kingdom<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">4. Which Java Version Should You Know for a Java Developer Interview?<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">\u041c\u043e\u044f\u0442 \u0441\u044a\u0432\u0435\u0442 \u0435 \u0434\u0430 \u043e\u0431\u044a\u0440\u043d\u0435\u0448 \u043d\u0430\u0439-\u0433\u043e\u043b\u044f\u043c\u043e \u0432\u043d\u0438\u043c\u0430\u043d\u0438\u0435 \u043d\u0430:<\/p>\n\n\n\n<ol class=\"wp-block-list\">\n<li>Java 8 \u2013 Lambda Expressions, Stream API, Functional Interfaces, Optional.<\/li>\n\n\n\n<li>Java 11 \u2013 HTTP Client API, String methods, \u043b\u043e\u043a\u0430\u043b\u043d\u0438 <code>var<\/code> \u043f\u0440\u043e\u043c\u0435\u043d\u043b\u0438\u0432\u0438 \u0432 Lambda parameters.<\/li>\n\n\n\n<li>Java 17 \u2013 Sealed Classes, Pattern Matching, Records (\u0444\u0438\u043d\u0430\u043b\u0438\u0437\u0438\u0440\u0430\u043d\u0438 \u043e\u0449\u0435 \u0432 Java 16).<\/li>\n\n\n\n<li>Java 21 \u2013 Virtual Threads, Pattern Matching for switch, Record Patterns, Sequenced Collections.<\/li>\n\n\n\n<li>Java 25 \u2013 Scoped Values, Compact Source Files, Module Import Declarations.<\/li>\n<\/ol>\n\n\n\n<p class=\"wp-block-paragraph\">\u041d\u0430\u0439-\u0432\u0430\u0436\u043d\u043e\u0442\u043e \u0437\u0430 \u0437\u0430\u043f\u043e\u043c\u043d\u044f\u043d\u0435<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Latest GA Version: Java 27<\/li>\n\n\n\n<li>Latest LTS Version: Java 25<\/li>\n\n\n\n<li>Previous LTS Version: Java 21<\/li>\n\n\n\n<li>Virtual Threads: Java 21<\/li>\n\n\n\n<li>Structured Concurrency: \u0432\u0441\u0435 \u043e\u0449\u0435 Preview \u0432 Java 27.<\/li>\n\n\n\n<li>Scoped Values: Final \u0432 Java 25.<\/li>\n\n\n\n<li>Compact Object Headers: Default \u0432 Java 27.<\/li>\n<\/ul>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h1 class=\"wp-block-heading\">\u0421\u0440\u0430\u0432\u043d\u0435\u043d\u0438\u0435 \u043d\u0430 \u0441\u044a\u0432\u0440\u0435\u043c\u0435\u043d\u043d\u0438\u0442\u0435 \u0432\u044a\u0437\u043c\u043e\u0436\u043d\u043e\u0441\u0442\u0438 (Modern Features Comparison): Kotlin vs Java<\/h1>\n\n\n\n<p class=\"wp-block-paragraph\">\u0418 \u0434\u0432\u0430\u0442\u0430 \u0435\u0437\u0438\u043a\u0430 \u0440\u0430\u0431\u043e\u0442\u044f\u0442 \u0432\u044a\u0440\u0445\u0443 JVM (Java Virtual Machine) \u0438 \u0438\u043c\u0430\u0442 \u0441\u0445\u043e\u0434\u043d\u0438 \u0432\u044a\u0437\u043c\u043e\u0436\u043d\u043e\u0441\u0442\u0438, \u043d\u043e \u0441\u0435 \u0440\u0430\u0437\u043b\u0438\u0447\u0430\u0432\u0430\u0442 \u043f\u043e \u0441\u0438\u043d\u0442\u0430\u043a\u0441\u0438\u0441, \u0442\u0438\u043f\u043e\u0432\u0430 \u0441\u0438\u0441\u0442\u0435\u043c\u0430 \u0438 \u043d\u0430\u0447\u0438\u043d \u043d\u0430 \u0440\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u043a\u0430.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">1. \u0421\u0440\u0430\u0432\u043d\u0435\u043d\u0438\u0435 \u043d\u0430 \u043e\u0441\u043d\u043e\u0432\u043d\u0438\u0442\u0435 \u0444\u0443\u043d\u043a\u0446\u0438\u043e\u043d\u0430\u043b\u043d\u043e\u0441\u0442\u0438<\/h2>\n\n\n\n<figure class=\"wp-block-table\"><table class=\"has-fixed-layout\"><tbody><tr><th>\u0424\u0443\u043d\u043a\u0446\u0438\u043e\u043d\u0430\u043b\u043d\u043e\u0441\u0442<\/th><th>\u041a\u043e\u0442\u043b\u0438\u043d<\/th><th>Java<\/th><\/tr><tr><td>Null Safety<\/td><td>\u0412\u0433\u0440\u0430\u0434\u0435\u043d\u0430 \u0437\u0430\u0449\u0438\u0442\u0430 \u043e\u0442 <code>null<\/code> \u0447\u0440\u0435\u0437 nullable (<code>String?<\/code>) \u0438 non-nullable (<code>String<\/code>) \u0442\u0438\u043f\u043e\u0432\u0435.<\/td><td>\u041d\u044f\u043c\u0430 \u0432\u0433\u0440\u0430\u0434\u0435\u043d\u0430 Null Safety \u0441\u0438\u0441\u0442\u0435\u043c\u0430. \u0420\u0430\u0437\u0447\u0438\u0442\u0430 \u043d\u0430 annotations \u0438 \u0434\u043e\u0431\u0440\u0438 \u043f\u0440\u0430\u043a\u0442\u0438\u043a\u0438.<\/td><\/tr><tr><td>Data Classes<\/td><td><code>data class<\/code> \u0430\u0432\u0442\u043e\u043c\u0430\u0442\u0438\u0447\u043d\u043e \u0433\u0435\u043d\u0435\u0440\u0438\u0440\u0430 <code>equals()<\/code>, <code>hashCode()<\/code>, <code>toString()<\/code> \u0438 \u0434\u0440\u0443\u0433\u0438 \u043c\u0435\u0442\u043e\u0434\u0438.<\/td><td>\u0418\u0437\u043f\u043e\u043b\u0437\u0432\u0430 \u0441\u0435 \u0440\u044a\u0447\u043d\u0430 \u0438\u043c\u043f\u043b\u0435\u043c\u0435\u043d\u0442\u0430\u0446\u0438\u044f, <code>record<\/code> (\u043e\u0442 Java 16) \u0438\u043b\u0438 IDE \u0433\u0435\u043d\u0435\u0440\u0430\u0446\u0438\u044f.<\/td><\/tr><tr><td>Coroutines \/ Concurrency<\/td><td>\u041f\u043e\u0434\u0434\u044a\u0440\u0436\u0430 Coroutines \u0437\u0430 \u043b\u0435\u043a\u0430 \u0430\u0441\u0438\u043d\u0445\u0440\u043e\u043d\u043d\u0430 \u0440\u0430\u0431\u043e\u0442\u0430 \u0438 \u043a\u043e\u043d\u043a\u0443\u0440\u0435\u043d\u0442\u043d\u043e\u0441\u0442.<\/td><td>\u0418\u0437\u043f\u043e\u043b\u0437\u0432\u0430 Threads, <code>CompletableFuture<\/code> \u0438 Virtual Threads (\u043e\u0442 Java 21).<\/td><\/tr><tr><td>Extension Functions<\/td><td>\u041f\u043e\u0437\u0432\u043e\u043b\u044f\u0432\u0430 \u0434\u043e\u0431\u0430\u0432\u044f\u043d\u0435 \u043d\u0430 \u0444\u0443\u043d\u043a\u0446\u0438\u0438 \u043a\u044a\u043c \u0441\u044a\u0449\u0435\u0441\u0442\u0432\u0443\u0432\u0430\u0449\u0438 \u0442\u0438\u043f\u043e\u0432\u0435 \u0431\u0435\u0437 \u043f\u0440\u043e\u043c\u044f\u043d\u0430 \u043d\u0430 \u043e\u0440\u0438\u0433\u0438\u043d\u0430\u043b\u043d\u0438\u044f \u043a\u043b\u0430\u0441.<\/td><td>\u041d\u044f\u043c\u0430 \u0434\u0438\u0440\u0435\u043a\u0442\u043d\u0430 \u043f\u043e\u0434\u0434\u0440\u044a\u0436\u043a\u0430. \u0418\u0437\u043f\u043e\u043b\u0437\u0432\u0430\u0442 \u0441\u0435 Utility Classes \u0438 static methods.<\/td><\/tr><tr><td>Smart Casts<\/td><td>\u0410\u0432\u0442\u043e\u043c\u0430\u0442\u0438\u0447\u043d\u043e \u043f\u0440\u0435\u043e\u0431\u0440\u0430\u0437\u0443\u0432\u0430 \u0442\u0438\u043f\u0430 \u0441\u043b\u0435\u0434 \u043f\u0440\u043e\u0432\u0435\u0440\u043a\u0430, \u043a\u043e\u0433\u0430\u0442\u043e \u0442\u043e\u0432\u0430 \u0435 \u0431\u0435\u0437\u043e\u043f\u0430\u0441\u043d\u043e.<\/td><td>\u041d\u044f\u043c\u0430 \u0438\u0434\u0435\u043d\u0442\u0438\u0447\u043d\u0430 \u0444\u0443\u043d\u043a\u0446\u0438\u043e\u043d\u0430\u043b\u043d\u043e\u0441\u0442, \u043d\u043e \u0438\u043c\u0430 Pattern Matching \u0437\u0430 <code>instanceof<\/code> (\u043e\u0442 Java 16).<\/td><\/tr><tr><td>Checked Exceptions<\/td><td>\u041d\u044f\u043c\u0430 Checked Exceptions.<\/td><td>\u041f\u043e\u0434\u0434\u044a\u0440\u0436\u0430 Checked \u0438 Unchecked Exceptions.<\/td><\/tr><tr><td>Type Inference<\/td><td>\u0421\u0438\u043b\u043d\u043e Type Inference, \u043d\u0430\u043f\u0440\u0438\u043c\u0435\u0440 <code>val x = 5<\/code>.<\/td><td>\u0414\u044d\u043c\u0436\u0438\u0436 \u0431\u0430\u0439\u043d\u0430 <code>var<\/code> \u0437\u0430 \u043b\u043e\u043a\u0430\u043b\u043d\u0438 \u043f\u0440\u043e\u043c\u0435\u043d\u043b\u0438\u0432\u0438 (\u043e\u0442 Java 10), \u043a\u0430\u043a\u0442\u043e \u0438 Type Inference \u0432 \u0434\u0440\u0443\u0433\u0438 \u043a\u043e\u043d\u0442\u0435\u043a\u0441\u0442\u0438.<\/td><\/tr><tr><td>Semicolons<\/td><td>\u041d\u0435 \u0441\u0430 \u0437\u0430\u0434\u044a\u043b\u0436\u0438\u0442\u0435\u043b\u043d\u0438.<\/td><td>\u041e\u0431\u0438\u043a\u043d\u043e\u0432\u0435\u043d\u043e \u0441\u0430 \u0437\u0430\u0434\u044a\u043b\u0436\u0438\u0442\u0435\u043b\u043d\u0438 \u0432 \u043a\u0440\u0430\u044f \u043d\u0430 statements.<\/td><\/tr><\/tbody><\/table><\/figure>\n\n\n\n<p class=\"wp-block-paragraph\">\u0412\u0430\u0436\u043d\u043e \u0443\u0442\u043e\u0447\u043d\u0435\u043d\u0438\u0435: Java \u0432\u0435\u0447\u0435 \u0438\u043c\u0430 <code>record<\/code>, Pattern Matching \u0438 Virtual Threads. \u0417\u0430\u0442\u043e\u0432\u0430 \u043d\u044f\u043a\u043e\u0438 \u043e\u0442 \u0442\u0440\u0430\u0434\u0438\u0446\u0438\u043e\u043d\u043d\u0438\u0442\u0435 \u043f\u0440\u0435\u0434\u0438\u043c\u0441\u0442\u0432\u0430 \u043d\u0430 Kotlin \u0432\u0435\u0447\u0435 \u0438\u043c\u0430\u0442 \u0447\u0430\u0441\u0442\u0438\u0447\u0435\u043d \u0438\u043b\u0438 \u0444\u0443\u043d\u043a\u0446\u0438\u043e\u043d\u0430\u043b\u0435\u043d \u0435\u043a\u0432\u0438\u0432\u0430\u043b\u0435\u043d\u0442 \u0432 \u0441\u044a\u0432\u0440\u0435\u043c\u0435\u043d\u043d\u0430\u0442\u0430 Java.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">2. \u041a\u043e\u0433\u0430 \u0434\u0430 \u0438\u0437\u0431\u0435\u0440\u0435\u043c Kotlin?<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">\u0418\u0437\u0431\u0435\u0440\u0435\u0442\u0435 Kotlin, \u043a\u043e\u0433\u0430\u0442\u043e:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>\u0420\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u0432\u0430\u0442\u0435 \u043d\u043e\u0432\u0438 Android \u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u044f.<\/li>\n\n\n\n<li>\u0421\u044a\u0437\u0434\u0430\u0432\u0430\u0442\u0435 \u0441\u044a\u0432\u0440\u0435\u043c\u0435\u043d\u043d\u0438 Microservices \u0441\u044a\u0441 Spring Boot \u0438\u043b\u0438 Ktor.<\/li>\n\n\n\n<li>\u0418\u0441\u043a\u0430\u0442\u0435 \u043f\u043e-\u043a\u0440\u0430\u0442\u044a\u043a \u0438 \u0438\u0437\u0440\u0430\u0437\u0438\u0442\u0435\u043b\u0435\u043d \u043a\u043e\u0434 \u0441 \u043f\u043e-\u043c\u0430\u043b\u043a\u043e Boilerplate.<\/li>\n\n\n\n<li>\u0418\u043c\u0430\u0442\u0435 \u043d\u0443\u0436\u0434\u0430 \u043e\u0442 \u043f\u043e-\u0434\u043e\u0431\u0440\u0430 \u0437\u0430\u0449\u0438\u0442\u0430 \u0441\u0440\u0435\u0449\u0443 <code>NullPointerException<\/code>.<\/li>\n\n\n\n<li>\u0418\u0437\u043f\u043e\u043b\u0437\u0432\u0430\u0442\u0435 Coroutines \u0437\u0430 \u0430\u0441\u0438\u043d\u0445\u0440\u043e\u043d\u043d\u0438 \u0438 \u043a\u043e\u043d\u043a\u0443\u0440\u0435\u043d\u0442\u043d\u0438 \u043e\u043f\u0435\u0440\u0430\u0446\u0438\u0438.<\/li>\n\n\n\n<li>\u0421\u044a\u0437\u0434\u0430\u0432\u0430\u0442\u0435 \u043c\u043d\u043e\u0433\u043e DTO \u0438 Domain Models, \u043f\u043e\u0434\u0445\u043e\u0434\u044f\u0449\u0438 \u0437\u0430 <code>data class<\/code>.<\/li>\n<\/ul>\n\n\n\n<h2 class=\"wp-block-heading\">3. \u041a\u043e\u0433\u0430 \u0434\u0430 \u0438\u0437\u0431\u0435\u0440\u0435\u043c Java?<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">\u0418\u0437\u0431\u0435\u0440\u0435\u0442\u0435 Java, \u043a\u043e\u0433\u0430\u0442\u043e:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>\u041f\u043e\u0434\u0434\u044a\u0440\u0436\u0430\u0442\u0435 \u0438\u043b\u0438 \u0440\u0430\u0437\u0448\u0438\u0440\u044f\u0432\u0430\u0442\u0435 \u0433\u043e\u043b\u0435\u043c\u0438 \u0441\u044a\u0449\u0435\u0441\u0442\u0432\u0443\u0432\u0430\u0449\u0438 Enterprise \u0441\u0438\u0441\u0442\u0435\u043c\u0438.<\/li>\n\n\n\n<li>\u0415\u043a\u0438\u043f\u044a\u0442 \u0432\u0438 \u0438\u043c\u0430 \u043e\u0441\u043d\u043e\u0432\u043d\u043e Java Developers.<\/li>\n\n\n\n<li>\u041f\u0440\u043e\u0435\u043a\u0442\u044a\u0442 \u0438\u0437\u0438\u0441\u043a\u0432\u0430 \u043a\u043e\u043d\u0441\u0435\u0440\u0432\u0430\u0442\u0438\u0432\u0435\u043d \u0438 \u0434\u044a\u043b\u0433\u043e\u0441\u0440\u043e\u0447\u043d\u043e \u0443\u0442\u0432\u044a\u0440\u0434\u0435\u043d \u0442\u0435\u0445\u043d\u043e\u043b\u043e\u0433\u0438\u0447\u0435\u043d \u0438\u0437\u0431\u043e\u0440.<\/li>\n\n\n\n<li>\u0418\u0437\u043f\u043e\u043b\u0437\u0432\u0430\u0442\u0435 \u0431\u0438\u0431\u043b\u0438\u043e\u0442\u0435\u043a\u0438, Frameworks \u0438 \u0438\u043d\u0441\u0442\u0440\u0443\u043c\u0435\u043d\u0442\u0438 \u0441 \u043f\u0440\u0438\u043e\u0440\u0438\u0442\u0435\u0442\u043d\u0430 \u043f\u043e\u0434\u0434\u0440\u044a\u0436\u043a\u0430 \u043d\u0430 Java.<\/li>\n\n\n\n<li>\u0420\u0430\u0437\u043f\u043e\u043b\u0430\u0433\u0430\u0442\u0435 \u0441 \u0443\u0442\u0432\u044a\u0440\u0434\u0435\u043d\u0438 Java Development \u043f\u0440\u043e\u0446\u0435\u0441\u0438 \u0438 \u0438\u043d\u0441\u0442\u0440\u0443\u043c\u0435\u043d\u0442\u0438.<\/li>\n<\/ul>\n\n\n\n<h2 class=\"wp-block-heading\">4. \u041a\u043e\u0439 \u0435\u0437\u0438\u043a \u0434\u0430 \u0438\u0437\u043f\u043e\u043b\u0437\u0432\u0430\u043c\u0435?<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">\u0417\u0430 \u043d\u043e\u0432\u0438 \u043f\u0440\u043e\u0435\u043a\u0442\u0438, \u043e\u0441\u043e\u0431\u0435\u043d\u043e \u043f\u0440\u0438 Back-end Services, Cloud Microservices \u0438 Android Applications, Kotlin \u043c\u043e\u0436\u0435 \u0434\u0430 \u0431\u044a\u0434\u0435 \u043c\u043d\u043e\u0433\u043e \u0434\u043e\u0431\u044a\u0440 \u0438\u0437\u0431\u043e\u0440.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">\u041e\u0441\u043d\u043e\u0432\u043d\u0438\u0442\u0435 \u043c\u0443 \u043f\u0440\u0435\u0434\u0438\u043c\u0441\u0442\u0432\u0430 \u0441\u0430:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>\u041f\u043e-\u043a\u0440\u0430\u0442\u044a\u043a \u0438 \u0447\u0435\u0442\u0438\u043c \u0441\u0438\u043d\u0442\u0430\u043a\u0441\u0438\u0441.<\/li>\n\n\n\n<li>\u0412\u0433\u0440\u0430\u0434\u0435\u043d\u0430 Null Safety.<\/li>\n\n\n\n<li><code>data class<\/code> \u0437\u0430 DTO \u0438 Domain Objects.<\/li>\n\n\n\n<li>Coroutines \u0437\u0430 \u0430\u0441\u0438\u043d\u0445\u0440\u043e\u043d\u043d\u0430 \u043e\u0431\u0440\u0430\u0431\u043e\u0442\u043a\u0430.<\/li>\n\n\n\n<li>\u041e\u0442\u043b\u0438\u0447\u043d\u0430 \u0438\u043d\u0442\u0435\u0433\u0440\u0430\u0446\u0438\u044f \u0441\u044a\u0441 Spring Boot \u0438 JVM Frameworks.<\/li>\n<\/ul>\n\n\n\n<p class=\"wp-block-paragraph\">\u0417\u0430 \u0433\u043e\u043b\u0435\u043c\u0438 \u0441\u044a\u0449\u0435\u0441\u0442\u0432\u0443\u0432\u0430\u0449\u0438 Java \u043f\u0440\u043e\u0435\u043a\u0442\u0438 \u0438 Enterprise \u0441\u0438\u0441\u0442\u0435\u043c\u0438 Java \u0447\u0435\u0441\u0442\u043e \u043e\u0441\u0442\u0430\u0432\u0430 \u043f\u043e-\u043f\u0440\u0430\u043a\u0442\u0438\u0447\u043d\u0438\u044f\u0442 \u0438\u0437\u0431\u043e\u0440 \u0431\u043b\u0430\u0433\u043e\u0434\u0430\u0440\u0435\u043d\u0438\u0435 \u043d\u0430:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>\u041e\u0433\u0440\u043e\u043c\u043d\u0430 \u0435\u043a\u043e\u0441\u0438\u0441\u0442\u0435\u043c\u0430 \u043e\u0442 \u0431\u0438\u0431\u043b\u0438\u043e\u0442\u0435\u043a\u0438.<\/li>\n\n\n\n<li>\u0417\u0440\u0435\u043b\u0438 Development Tools \u0438 \u0434\u043e\u043a\u0443\u043c\u0435\u043d\u0442\u0430\u0446\u0438\u044f.<\/li>\n\n\n\n<li>\u0413\u043e\u043b\u044f\u043c \u0431\u0440\u043e\u0439 \u043e\u043f\u0438\u0442\u043d\u0438 Java Developers.<\/li>\n\n\n\n<li>\u0414\u044a\u043b\u0433\u043e\u0433\u043e\u0434\u0438\u0448\u043d\u0430 \u0441\u0442\u0430\u0431\u0438\u043b\u043d\u043e\u0441\u0442 \u0438 \u0441\u044a\u0432\u043c\u0435\u0441\u0442\u0438\u043c\u043e\u0441\u0442.<\/li>\n<\/ul>\n\n\n\n<h2 class=\"wp-block-heading\">5. \u0421\u043c\u0435\u0441\u0435\u043d \u043f\u043e\u0434\u0445\u043e\u0434 (Java + Kotlin)<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">\u0412 \u043c\u043d\u043e\u0433\u043e \u0440\u0435\u0430\u043b\u043d\u0438 \u043f\u0440\u043e\u0435\u043a\u0442\u0438 \u043d\u0430\u0439-\u0434\u043e\u0431\u0440\u043e\u0442\u043e \u0440\u0435\u0448\u0435\u043d\u0438\u0435 \u0435 \u0438\u0437\u043f\u043e\u043b\u0437\u0432\u0430\u043d\u0435\u0442\u043e \u043d\u0430 \u0434\u0432\u0430\u0442\u0430 \u0435\u0437\u0438\u043a\u0430 \u0435\u0434\u043d\u043e\u0432\u0440\u0435\u043c\u0435\u043d\u043d\u043e.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">\u041d\u0430\u043f\u0440\u0438\u043c\u0435\u0440:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>\u0421\u044a\u0449\u0435\u0441\u0442\u0432\u0443\u0432\u0430\u0449\u0438\u0442\u0435 Legacy Modules \u043e\u0441\u0442\u0430\u0432\u0430\u0442 \u043d\u0430\u043f\u0438\u0441\u0430\u043d\u0438 \u043d\u0430 Java.<\/li>\n\n\n\n<li>\u041d\u043e\u0432\u0438\u0442\u0435 Services \u0438 Components \u043c\u043e\u0433\u0430\u0442 \u0434\u0430 \u0431\u044a\u0434\u0430\u0442 \u0440\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u0432\u0430\u043d\u0438 \u043d\u0430 Kotlin.<\/li>\n\n\n\n<li>\u0414\u0432\u0430\u0442\u0430 \u0435\u0437\u0438\u043a\u0430 \u043c\u043e\u0433\u0430\u0442 \u0434\u0430 \u0432\u0437\u0430\u0438\u043c\u043e\u0434\u0435\u0439\u0441\u0442\u0432\u0430\u0442 \u0447\u0440\u0435\u0437 JVM Interoperability.<\/li>\n<\/ul>\n\n\n\n<p class=\"wp-block-paragraph\">\u0422\u043e\u0432\u0430 \u043f\u043e\u0437\u0432\u043e\u043b\u044f\u0432\u0430 \u043f\u043e\u0441\u0442\u0435\u043f\u0435\u043d\u043d\u043e \u043c\u043e\u0434\u0435\u0440\u043d\u0438\u0437\u0438\u0440\u0430\u043d\u0435 \u043d\u0430 \u0441\u0438\u0441\u0442\u0435\u043c\u0430\u0442\u0430, \u0431\u0435\u0437 \u0434\u0430 \u0441\u0435 \u043d\u0430\u043b\u0430\u0433\u0430 \u0446\u044f\u043b\u043e\u0441\u0442\u043d\u043e \u043f\u0440\u0435\u043d\u0430\u043f\u0438\u0441\u0432\u0430\u043d\u0435.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">\u0412\u0430\u0436\u043d\u043e \u0437\u0430 Java Developer Interview<\/h2>\n\n\n\n<ol class=\"wp-block-list\">\n<li>Kotlin \u0438 Java \u0441\u0435 \u043a\u043e\u043c\u043f\u0438\u043b\u0438\u0440\u0430\u0442 \u0434\u043e JVM Bytecode.<\/li>\n\n\n\n<li>Kotlin \u0435 \u043d\u0430\u043f\u044a\u043b\u043d\u043e interoperable \u0441 Java, \u043d\u043e \u0438\u043c\u0430 \u043d\u044f\u043a\u043e\u0438 \u043e\u0441\u043e\u0431\u0435\u043d\u043e\u0441\u0442\u0438 \u043f\u0440\u0438 \u0432\u0437\u0430\u0438\u043c\u043e\u0434\u0435\u0439\u0441\u0442\u0432\u0438\u0435\u0442\u043e \u043c\u0435\u0436\u0434\u0443 \u0442\u0438\u043f\u043e\u0432\u0435\u0442\u0435.<\/li>\n\n\n\n<li>Java \u0438\u043c\u0430 <code>record<\/code>, \u043a\u043e\u0439\u0442\u043e \u0447\u0430\u0441\u0442\u0438\u0447\u043d\u043e \u043f\u043e\u043a\u0440\u0438\u0432\u0430 \u0444\u0443\u043d\u043a\u0446\u0438\u043e\u043d\u0430\u043b\u043d\u043e\u0441\u0442\u0442\u0430 \u043d\u0430 Kotlin <code>data class<\/code>.<\/li>\n\n\n\n<li>Java Virtual Threads (Java 21+) \u0443\u043b\u0435\u0441\u043d\u044f\u0432\u0430\u0442 \u0441\u044a\u0437\u0434\u0430\u0432\u0430\u043d\u0435\u0442\u043e \u043d\u0430 \u043c\u0430\u0449\u0430\u0431\u0438\u0440\u0443\u0435\u043c\u0438 concurrent \u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u044f.<\/li>\n\n\n\n<li>Kotlin Coroutines \u0438 Java Virtual Threads \u0441\u0430 \u0440\u0430\u0437\u043b\u0438\u0447\u043d\u0438 \u0442\u0435\u0445\u043d\u043e\u043b\u043e\u0433\u0438\u0438 \u0438 \u043d\u0435 \u0442\u0440\u044f\u0431\u0432\u0430 \u0434\u0430 \u0441\u0435 \u0440\u0430\u0437\u0433\u043b\u0435\u0436\u0434\u0430\u0442 \u043a\u0430\u0442\u043e \u0435\u0434\u043d\u043e \u0438 \u0441\u044a\u0449\u043e.<\/li>\n<\/ol>\n\n\n\n<p class=\"wp-block-paragraph\">\u0417\u0430\u043f\u043e\u043c\u043d\u0435\u0442\u0435: Kotlin \u043d\u0435 \u0437\u0430\u043c\u0435\u043d\u044f Java. \u0414\u0432\u0430\u0442\u0430 \u0435\u0437\u0438\u043a\u0430 \u043c\u043e\u0433\u0430\u0442 \u0434\u0430 \u0440\u0430\u0431\u043e\u0442\u044f\u0442 \u0437\u0430\u0435\u0434\u043d\u043e \u0432 \u0435\u0434\u043d\u0430 JVM \u0441\u0438\u0441\u0442\u0435\u043c\u0430. \u0418\u0437\u0431\u043e\u0440\u044a\u0442 \u0437\u0430\u0432\u0438\u0441\u0438 \u043e\u0442 \u043f\u0440\u043e\u0435\u043a\u0442\u0430, \u0435\u043a\u0438\u043f\u0430, \u0430\u0440\u0445\u0438\u0442\u0435\u043a\u0442\u0443\u0440\u0430\u0442\u0430 \u0438 \u0441\u044a\u0449\u0435\u0441\u0442\u0432\u0443\u0432\u0430\u0449\u0430\u0442\u0430 \u0442\u0435\u0445\u043d\u043e\u043b\u043e\u0433\u0438\u0447\u043d\u0430 \u0438\u043d\u0444\u0440\u0430\u0441\u0442\u0440\u0443\u043a\u0442\u0443\u0440\u0430.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\"><\/p>\n\n\n\n<h1 class=\"wp-block-heading\">\u0421\u0440\u0430\u0432\u043d\u0435\u043d\u0438\u0435 \u043d\u0430 \u0441\u044a\u0432\u0440\u0435\u043c\u0435\u043d\u043d\u0438\u0442\u0435 \u0432\u044a\u0437\u043c\u043e\u0436\u043d\u043e\u0441\u0442\u0438 (Modern Features Comparison): Kotlin vs Java<\/h1>\n\n\n\n<p class=\"wp-block-paragraph\">\u0418 \u0434\u0432\u0430\u0442\u0430 \u0435\u0437\u0438\u043a\u0430 \u0440\u0430\u0431\u043e\u0442\u044f\u0442 \u0432\u044a\u0440\u0445\u0443 JVM (Java Virtual Machine) \u0438 \u0438\u043c\u0430\u0442 \u0441\u0445\u043e\u0434\u043d\u0438 \u0432\u044a\u0437\u043c\u043e\u0436\u043d\u043e\u0441\u0442\u0438, \u043d\u043e \u0441\u0435 \u0440\u0430\u0437\u043b\u0438\u0447\u0430\u0432\u0430\u0442 \u043f\u043e \u0441\u0438\u043d\u0442\u0430\u043a\u0441\u0438\u0441, \u0442\u0438\u043f\u043e\u0432\u0430 \u0441\u0438\u0441\u0442\u0435\u043c\u0430 \u0438 \u043d\u0430\u0447\u0438\u043d \u043d\u0430 \u0440\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u043a\u0430.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">1. \u0421\u0440\u0430\u0432\u043d\u0435\u043d\u0438\u0435 \u043d\u0430 \u043e\u0441\u043d\u043e\u0432\u043d\u0438\u0442\u0435 \u0444\u0443\u043d\u043a\u0446\u0438\u043e\u043d\u0430\u043b\u043d\u043e\u0441\u0442\u0438<\/h2>\n\n\n\n<figure class=\"wp-block-table\"><table class=\"has-fixed-layout\"><tbody><tr><th>\u0424\u0443\u043d\u043a\u0446\u0438\u043e\u043d\u0430\u043b\u043d\u043e\u0441\u0442<\/th><th>\u041a\u043e\u0442\u043b\u0438\u043d<\/th><th>Java<\/th><\/tr><tr><td>Null Safety<\/td><td>\u0412\u0433\u0440\u0430\u0434\u0435\u043d\u0430 \u0437\u0430\u0449\u0438\u0442\u0430 \u043e\u0442 <code>null<\/code> \u0447\u0440\u0435\u0437 nullable (<code>String?<\/code>) \u0438 non-nullable (<code>String<\/code>) \u0442\u0438\u043f\u043e\u0432\u0435.<\/td><td>\u041d\u044f\u043c\u0430 \u0432\u0433\u0440\u0430\u0434\u0435\u043d\u0430 Null Safety \u0441\u0438\u0441\u0442\u0435\u043c\u0430. \u0420\u0430\u0437\u0447\u0438\u0442\u0430 \u043d\u0430 annotations \u0438 \u0434\u043e\u0431\u0440\u0438 \u043f\u0440\u0430\u043a\u0442\u0438\u043a\u0438.<\/td><\/tr><tr><td>Data Classes<\/td><td><code>data class<\/code> \u0430\u0432\u0442\u043e\u043c\u0430\u0442\u0438\u0447\u043d\u043e \u0433\u0435\u043d\u0435\u0440\u0438\u0440\u0430 <code>equals()<\/code>, <code>hashCode()<\/code>, <code>toString()<\/code> \u0438 \u0434\u0440\u0443\u0433\u0438 \u043c\u0435\u0442\u043e\u0434\u0438.<\/td><td>\u0418\u0437\u043f\u043e\u043b\u0437\u0432\u0430 \u0441\u0435 \u0440\u044a\u0447\u043d\u0430 \u0438\u043c\u043f\u043b\u0435\u043c\u0435\u043d\u0442\u0430\u0446\u0438\u044f, <code>record<\/code> (\u043e\u0442 Java 16) \u0438\u043b\u0438 IDE \u0433\u0435\u043d\u0435\u0440\u0430\u0446\u0438\u044f.<\/td><\/tr><tr><td>Coroutines \/ Concurrency<\/td><td>\u041f\u043e\u0434\u0434\u044a\u0440\u0436\u0430 Coroutines \u0437\u0430 \u043b\u0435\u043a\u0430 \u0430\u0441\u0438\u043d\u0445\u0440\u043e\u043d\u043d\u0430 \u0440\u0430\u0431\u043e\u0442\u0430 \u0438 \u043a\u043e\u043d\u043a\u0443\u0440\u0435\u043d\u0442\u043d\u043e\u0441\u0442.<\/td><td>\u0418\u0437\u043f\u043e\u043b\u0437\u0432\u0430 Threads, <code>CompletableFuture<\/code> \u0438 Virtual Threads (\u043e\u0442 Java 21).<\/td><\/tr><tr><td>Extension Functions<\/td><td>\u041f\u043e\u0437\u0432\u043e\u043b\u044f\u0432\u0430 \u0434\u043e\u0431\u0430\u0432\u044f\u043d\u0435 \u043d\u0430 \u0444\u0443\u043d\u043a\u0446\u0438\u0438 \u043a\u044a\u043c \u0441\u044a\u0449\u0435\u0441\u0442\u0432\u0443\u0432\u0430\u0449\u0438 \u0442\u0438\u043f\u043e\u0432\u0435 \u0431\u0435\u0437 \u043f\u0440\u043e\u043c\u044f\u043d\u0430 \u043d\u0430 \u043e\u0440\u0438\u0433\u0438\u043d\u0430\u043b\u043d\u0438\u044f \u043a\u043b\u0430\u0441.<\/td><td>\u041d\u044f\u043c\u0430 \u0434\u0438\u0440\u0435\u043a\u0442\u043d\u0430 \u043f\u043e\u0434\u0434\u0440\u044a\u0436\u043a\u0430. \u0418\u0437\u043f\u043e\u043b\u0437\u0432\u0430\u0442 \u0441\u0435 Utility Classes \u0438 static methods.<\/td><\/tr><tr><td>Smart Casts<\/td><td>\u0410\u0432\u0442\u043e\u043c\u0430\u0442\u0438\u0447\u043d\u043e \u043f\u0440\u0435\u043e\u0431\u0440\u0430\u0437\u0443\u0432\u0430 \u0442\u0438\u043f\u0430 \u0441\u043b\u0435\u0434 \u043f\u0440\u043e\u0432\u0435\u0440\u043a\u0430, \u043a\u043e\u0433\u0430\u0442\u043e \u0442\u043e\u0432\u0430 \u0435 \u0431\u0435\u0437\u043e\u043f\u0430\u0441\u043d\u043e.<\/td><td>\u041d\u044f\u043c\u0430 \u0438\u0434\u0435\u043d\u0442\u0438\u0447\u043d\u0430 \u0444\u0443\u043d\u043a\u0446\u0438\u043e\u043d\u0430\u043b\u043d\u043e\u0441\u0442, \u043d\u043e \u0438\u043c\u0430 Pattern Matching \u0437\u0430 <code>instanceof<\/code> (\u043e\u0442 Java 16).<\/td><\/tr><tr><td>Checked Exceptions<\/td><td>\u041d\u044f\u043c\u0430 Checked Exceptions.<\/td><td>\u041f\u043e\u0434\u0434\u044a\u0440\u0436\u0430 Checked \u0438 Unchecked Exceptions.<\/td><\/tr><tr><td>Type Inference<\/td><td>\u0421\u0438\u043b\u043d\u043e Type Inference, \u043d\u0430\u043f\u0440\u0438\u043c\u0435\u0440 <code>val x = 5<\/code>.<\/td><td>\u0414\u044d\u043c\u0436\u0438\u0436 \u0431\u0430\u0439\u043d\u0430 <code>var<\/code> \u0437\u0430 \u043b\u043e\u043a\u0430\u043b\u043d\u0438 \u043f\u0440\u043e\u043c\u0435\u043d\u043b\u0438\u0432\u0438 (\u043e\u0442 Java 10), \u043a\u0430\u043a\u0442\u043e \u0438 Type Inference \u0432 \u0434\u0440\u0443\u0433\u0438 \u043a\u043e\u043d\u0442\u0435\u043a\u0441\u0442\u0438.<\/td><\/tr><tr><td>Semicolons<\/td><td>\u041d\u0435 \u0441\u0430 \u0437\u0430\u0434\u044a\u043b\u0436\u0438\u0442\u0435\u043b\u043d\u0438.<\/td><td>\u041e\u0431\u0438\u043a\u043d\u043e\u0432\u0435\u043d\u043e \u0441\u0430 \u0437\u0430\u0434\u044a\u043b\u0436\u0438\u0442\u0435\u043b\u043d\u0438 \u0432 \u043a\u0440\u0430\u044f \u043d\u0430 statements.<\/td><\/tr><\/tbody><\/table><\/figure>\n\n\n\n<p class=\"wp-block-paragraph\">\u0412\u0430\u0436\u043d\u043e \u0443\u0442\u043e\u0447\u043d\u0435\u043d\u0438\u0435: Java \u0432\u0435\u0447\u0435 \u0438\u043c\u0430 <code>record<\/code>, Pattern Matching \u0438 Virtual Threads. \u0417\u0430\u0442\u043e\u0432\u0430 \u043d\u044f\u043a\u043e\u0438 \u043e\u0442 \u0442\u0440\u0430\u0434\u0438\u0446\u0438\u043e\u043d\u043d\u0438\u0442\u0435 \u043f\u0440\u0435\u0434\u0438\u043c\u0441\u0442\u0432\u0430 \u043d\u0430 Kotlin \u0432\u0435\u0447\u0435 \u0438\u043c\u0430\u0442 \u0447\u0430\u0441\u0442\u0438\u0447\u0435\u043d \u0438\u043b\u0438 \u0444\u0443\u043d\u043a\u0446\u0438\u043e\u043d\u0430\u043b\u0435\u043d \u0435\u043a\u0432\u0438\u0432\u0430\u043b\u0435\u043d\u0442 \u0432 \u0441\u044a\u0432\u0440\u0435\u043c\u0435\u043d\u043d\u0430\u0442\u0430 Java.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">2. \u041a\u043e\u0433\u0430 \u0434\u0430 \u0438\u0437\u0431\u0435\u0440\u0435\u043c Kotlin?<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">\u0418\u0437\u0431\u0435\u0440\u0435\u0442\u0435 Kotlin, \u043a\u043e\u0433\u0430\u0442\u043e:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>\u0420\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u0432\u0430\u0442\u0435 \u043d\u043e\u0432\u0438 Android \u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u044f.<\/li>\n\n\n\n<li>\u0421\u044a\u0437\u0434\u0430\u0432\u0430\u0442\u0435 \u0441\u044a\u0432\u0440\u0435\u043c\u0435\u043d\u043d\u0438 Microservices \u0441\u044a\u0441 Spring Boot \u0438\u043b\u0438 Ktor.<\/li>\n\n\n\n<li>\u0418\u0441\u043a\u0430\u0442\u0435 \u043f\u043e-\u043a\u0440\u0430\u0442\u044a\u043a \u0438 \u0438\u0437\u0440\u0430\u0437\u0438\u0442\u0435\u043b\u0435\u043d \u043a\u043e\u0434 \u0441 \u043f\u043e-\u043c\u0430\u043b\u043a\u043e Boilerplate.<\/li>\n\n\n\n<li>\u0418\u043c\u0430\u0442\u0435 \u043d\u0443\u0436\u0434\u0430 \u043e\u0442 \u043f\u043e-\u0434\u043e\u0431\u0440\u0430 \u0437\u0430\u0449\u0438\u0442\u0430 \u0441\u0440\u0435\u0449\u0443 <code>NullPointerException<\/code>.<\/li>\n\n\n\n<li>\u0418\u0437\u043f\u043e\u043b\u0437\u0432\u0430\u0442\u0435 Coroutines \u0437\u0430 \u0430\u0441\u0438\u043d\u0445\u0440\u043e\u043d\u043d\u0438 \u0438 \u043a\u043e\u043d\u043a\u0443\u0440\u0435\u043d\u0442\u043d\u0438 \u043e\u043f\u0435\u0440\u0430\u0446\u0438\u0438.<\/li>\n\n\n\n<li>\u0421\u044a\u0437\u0434\u0430\u0432\u0430\u0442\u0435 \u043c\u043d\u043e\u0433\u043e DTO \u0438 Domain Models, \u043f\u043e\u0434\u0445\u043e\u0434\u044f\u0449\u0438 \u0437\u0430 <code>data class<\/code>.\u0418\u0437\u0431\u0435\u0440\u0435\u0442\u0435 Kotlin \u0438 \u043a\u043e\u0433\u0430\u0442\u043e:<\/li>\n\n\n\n<li>\u0420\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u0432\u0430\u0442\u0435 \u043c\u043e\u0431\u0438\u043b\u043d\u0438 \u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u044f \u0437\u0430 Android \u0438 iPhone.<\/li>\n\n\n\n<li>\u0418\u0441\u043a\u0430\u0442\u0435 \u0434\u0430 \u0441\u043f\u043e\u0434\u0435\u043b\u044f\u0442\u0435 Business Logic \u043c\u0435\u0436\u0434\u0443 Android \u0438 iOS.<\/li>\n\n\n\n<li>\u0418\u0441\u043a\u0430\u0442\u0435 \u0434\u0430 \u0438\u0437\u043f\u043e\u043b\u0437\u0432\u0430\u0442\u0435 \u043e\u0431\u0449 \u043a\u043e\u0434 \u0437\u0430 Networking, Database \u0438 Data Models.<\/li>\n\n\n\n<li>\u0418\u0441\u043a\u0430\u0442\u0435 \u0434\u0430 \u0441\u044a\u0437\u0434\u0430\u0432\u0430\u0442\u0435 Cross-platform \u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u044f \u0447\u0440\u0435\u0437 Compose Multiplatform, \u0431\u0435\u0437 \u0437\u0430\u0434\u044a\u043b\u0436\u0438\u0442\u0435\u043b\u043d\u043e \u0434\u0430 \u0438\u0437\u043f\u043e\u043b\u0437\u0432\u0430\u0442\u0435 Flutter \u0438\u043b\u0438 React Native.<\/li>\n<\/ul>\n\n\n\n<h2 class=\"wp-block-heading\">\u0414\u043e\u043f\u044a\u043b\u043d\u0438\u0442\u0435\u043b\u043d\u0438 \u0432\u044a\u0437\u043c\u043e\u0436\u043d\u043e\u0441\u0442\u0438 \u043d\u0430 Kotlin \u2013 Mobile Development<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">Kotlin \u043f\u043e\u0437\u0432\u043e\u043b\u044f\u0432\u0430 \u0440\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u0432\u0430\u043d\u0435 \u043d\u0430 \u043c\u043e\u0431\u0438\u043b\u043d\u0438 \u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u044f \u043a\u0430\u043a\u0442\u043e \u0437\u0430 Android, \u0442\u0430\u043a\u0430 \u0438 \u0437\u0430 iPhone (iOS) \u0447\u0440\u0435\u0437 \u0442\u0435\u0445\u043d\u043e\u043b\u043e\u0433\u0438\u044f\u0442\u0430 Kotlin Multiplatform (KMP).<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Android: Kotlin \u0435 \u043e\u0444\u0438\u0446\u0438\u0430\u043b\u043d\u043e \u043f\u043e\u0434\u0434\u044a\u0440\u0436\u0430\u043d \u0438 \u043f\u0440\u0435\u0434\u043f\u043e\u0447\u0438\u0442\u0430\u043d \u0435\u0437\u0438\u043a \u0437\u0430 Android Development. \u041c\u043e\u0436\u0435 \u0434\u0430 \u0441\u0435 \u0438\u0437\u043f\u043e\u043b\u0437\u0432\u0430 \u0441 Android Studio \u0438 Jetpack Compose.<\/li>\n\n\n\n<li>iPhone (iOS): \u0427\u0440\u0435\u0437 Kotlin Multiplatform \u043c\u043e\u0436\u0435 \u0434\u0430 \u0441\u0435 \u0441\u043f\u043e\u0434\u0435\u043b\u044f \u043e\u0431\u0449 \u043a\u043e\u0434 \u043c\u0435\u0436\u0434\u0443 Android \u0438 iOS \u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u044f\u0442\u0430 \u2013 \u043d\u0430\u043f\u0440\u0438\u043c\u0435\u0440 Business Logic, Networking, Data Models \u0438 Database Access.<\/li>\n\n\n\n<li>Cross-platform Development: Kotlin Multiplatform \u043f\u043e\u0437\u0432\u043e\u043b\u044f\u0432\u0430 \u043f\u043e\u0432\u0442\u043e\u0440\u043d\u043e \u0438\u0437\u043f\u043e\u043b\u0437\u0432\u0430\u043d\u0435 \u043d\u0430 \u043a\u043e\u0434 \u043c\u0435\u0436\u0434\u0443 \u0440\u0430\u0437\u043b\u0438\u0447\u043d\u0438 \u043e\u043f\u0435\u0440\u0430\u0446\u0438\u043e\u043d\u043d\u0438 \u0441\u0438\u0441\u0442\u0435\u043c\u0438, \u043a\u0430\u0442\u043e \u0441\u044a\u0449\u0435\u0432\u0440\u0435\u043c\u0435\u043d\u043d\u043e \u0437\u0430\u043f\u0430\u0437\u0432\u0430 \u0432\u044a\u0437\u043c\u043e\u0436\u043d\u043e\u0441\u0442\u0442\u0430 \u0437\u0430 Native UI.<\/li>\n\n\n\n<li>Compose Multiplatform: \u041f\u043e\u0437\u0432\u043e\u043b\u044f\u0432\u0430 \u0438\u0437\u0433\u0440\u0430\u0436\u0434\u0430\u043d\u0435 \u043d\u0430 \u043f\u043e\u0442\u0440\u0435\u0431\u0438\u0442\u0435\u043b\u0441\u043a\u0438 \u0438\u043d\u0442\u0435\u0440\u0444\u0435\u0439\u0441\u0438 \u0437\u0430 Android, iOS, Desktop \u0438 Web \u0441 \u043e\u0431\u0449 Kotlin \u043a\u043e\u0434.<\/li>\n<\/ul>\n\n\n\n<p class=\"wp-block-paragraph\">\u0412\u0430\u0436\u043d\u043e: Kotlin \u043d\u0435 \u043a\u043e\u043c\u043f\u0438\u043b\u0438\u0440\u0430 \u0434\u0438\u0440\u0435\u043a\u0442\u043d\u043e \u043e\u0431\u0438\u043a\u043d\u043e\u0432\u0435\u043d Android \u043a\u043e\u0434 \u0437\u0430 iPhone. \u0417\u0430 iOS Kotlin Multiplatform \u0438\u0437\u043f\u043e\u043b\u0437\u0432\u0430 Kotlin\/Native, \u043a\u043e\u0439\u0442\u043e \u0433\u0435\u043d\u0435\u0440\u0438\u0440\u0430 Native \u043a\u043e\u0434 \u0437\u0430 Apple \u043f\u043b\u0430\u0442\u0444\u043e\u0440\u043c\u0438\u0442\u0435. \u0417\u0430 \u0440\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u043a\u0430 \u0438 \u043a\u043e\u043c\u043f\u0438\u043b\u0438\u0440\u0430\u043d\u0435 \u043d\u0430 iOS \u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u0435 \u043e\u0431\u0438\u043a\u043d\u043e\u0432\u0435\u043d\u043e \u0435 \u043d\u0435\u043e\u0431\u0445\u043e\u0434\u0438\u043c macOS \u0441 Xcode.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">3. \u041a\u043e\u0433\u0430 \u0434\u0430 \u0438\u0437\u0431\u0435\u0440\u0435\u043c Java?<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">\u0418\u0437\u0431\u0435\u0440\u0435\u0442\u0435 Java, \u043a\u043e\u0433\u0430\u0442\u043e:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>\u041f\u043e\u0434\u0434\u044a\u0440\u0436\u0430\u0442\u0435 \u0438\u043b\u0438 \u0440\u0430\u0437\u0448\u0438\u0440\u044f\u0432\u0430\u0442\u0435 \u0433\u043e\u043b\u0435\u043c\u0438 \u0441\u044a\u0449\u0435\u0441\u0442\u0432\u0443\u0432\u0430\u0449\u0438 Enterprise \u0441\u0438\u0441\u0442\u0435\u043c\u0438.<\/li>\n\n\n\n<li>\u0415\u043a\u0438\u043f\u044a\u0442 \u0432\u0438 \u0438\u043c\u0430 \u043e\u0441\u043d\u043e\u0432\u043d\u043e Java Developers.<\/li>\n\n\n\n<li>\u041f\u0440\u043e\u0435\u043a\u0442\u044a\u0442 \u0438\u0437\u0438\u0441\u043a\u0432\u0430 \u043a\u043e\u043d\u0441\u0435\u0440\u0432\u0430\u0442\u0438\u0432\u0435\u043d \u0438 \u0434\u044a\u043b\u0433\u043e\u0441\u0440\u043e\u0447\u043d\u043e \u0443\u0442\u0432\u044a\u0440\u0434\u0435\u043d \u0442\u0435\u0445\u043d\u043e\u043b\u043e\u0433\u0438\u0447\u0435\u043d \u0438\u0437\u0431\u043e\u0440.<\/li>\n\n\n\n<li>\u0418\u0437\u043f\u043e\u043b\u0437\u0432\u0430\u0442\u0435 \u0431\u0438\u0431\u043b\u0438\u043e\u0442\u0435\u043a\u0438, Frameworks \u0438 \u0438\u043d\u0441\u0442\u0440\u0443\u043c\u0435\u043d\u0442\u0438 \u0441 \u043f\u0440\u0438\u043e\u0440\u0438\u0442\u0435\u0442\u043d\u0430 \u043f\u043e\u0434\u0434\u0440\u044a\u0436\u043a\u0430 \u043d\u0430 Java.<\/li>\n\n\n\n<li>\u0420\u0430\u0437\u043f\u043e\u043b\u0430\u0433\u0430\u0442\u0435 \u0441 \u0443\u0442\u0432\u044a\u0440\u0434\u0435\u043d\u0438 Java Development \u043f\u0440\u043e\u0446\u0435\u0441\u0438 \u0438 \u0438\u043d\u0441\u0442\u0440\u0443\u043c\u0435\u043d\u0442\u0438.<\/li>\n<\/ul>\n\n\n\n<h2 class=\"wp-block-heading\">4. \u041a\u043e\u0439 \u0435\u0437\u0438\u043a \u0434\u0430 \u0438\u0437\u043f\u043e\u043b\u0437\u0432\u0430\u043c\u0435?<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">\u0417\u0430 \u043d\u043e\u0432\u0438 \u043f\u0440\u043e\u0435\u043a\u0442\u0438, \u043e\u0441\u043e\u0431\u0435\u043d\u043e \u043f\u0440\u0438 Back-end Services, Cloud Microservices \u0438 Android Applications, Kotlin \u043c\u043e\u0436\u0435 \u0434\u0430 \u0431\u044a\u0434\u0435 \u043c\u043d\u043e\u0433\u043e \u0434\u043e\u0431\u044a\u0440 \u0438\u0437\u0431\u043e\u0440.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">\u041e\u0441\u043d\u043e\u0432\u043d\u0438\u0442\u0435 \u043c\u0443 \u043f\u0440\u0435\u0434\u0438\u043c\u0441\u0442\u0432\u0430 \u0441\u0430:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>\u041f\u043e-\u043a\u0440\u0430\u0442\u044a\u043a \u0438 \u0447\u0435\u0442\u0438\u043c \u0441\u0438\u043d\u0442\u0430\u043a\u0441\u0438\u0441.<\/li>\n\n\n\n<li>\u0412\u0433\u0440\u0430\u0434\u0435\u043d\u0430 Null Safety.<\/li>\n\n\n\n<li><code>data class<\/code> \u0437\u0430 DTO \u0438 Domain Objects.<\/li>\n\n\n\n<li>Coroutines \u0437\u0430 \u0430\u0441\u0438\u043d\u0445\u0440\u043e\u043d\u043d\u0430 \u043e\u0431\u0440\u0430\u0431\u043e\u0442\u043a\u0430.<\/li>\n\n\n\n<li>\u041e\u0442\u043b\u0438\u0447\u043d\u0430 \u0438\u043d\u0442\u0435\u0433\u0440\u0430\u0446\u0438\u044f \u0441\u044a\u0441 Spring Boot \u0438 JVM Frameworks.<\/li>\n<\/ul>\n\n\n\n<p class=\"wp-block-paragraph\">\u0417\u0430 \u0433\u043e\u043b\u0435\u043c\u0438 \u0441\u044a\u0449\u0435\u0441\u0442\u0432\u0443\u0432\u0430\u0449\u0438 Java \u043f\u0440\u043e\u0435\u043a\u0442\u0438 \u0438 Enterprise \u0441\u0438\u0441\u0442\u0435\u043c\u0438 Java \u0447\u0435\u0441\u0442\u043e \u043e\u0441\u0442\u0430\u0432\u0430 \u043f\u043e-\u043f\u0440\u0430\u043a\u0442\u0438\u0447\u043d\u0438\u044f\u0442 \u0438\u0437\u0431\u043e\u0440 \u0431\u043b\u0430\u0433\u043e\u0434\u0430\u0440\u0435\u043d\u0438\u0435 \u043d\u0430:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>\u041e\u0433\u0440\u043e\u043c\u043d\u0430 \u0435\u043a\u043e\u0441\u0438\u0441\u0442\u0435\u043c\u0430 \u043e\u0442 \u0431\u0438\u0431\u043b\u0438\u043e\u0442\u0435\u043a\u0438.<\/li>\n\n\n\n<li>\u0417\u0440\u0435\u043b\u0438 Development Tools \u0438 \u0434\u043e\u043a\u0443\u043c\u0435\u043d\u0442\u0430\u0446\u0438\u044f.<\/li>\n\n\n\n<li>\u0413\u043e\u043b\u044f\u043c \u0431\u0440\u043e\u0439 \u043e\u043f\u0438\u0442\u043d\u0438 Java Developers.<\/li>\n\n\n\n<li>\u0414\u044a\u043b\u0433\u043e\u0433\u043e\u0434\u0438\u0448\u043d\u0430 \u0441\u0442\u0430\u0431\u0438\u043b\u043d\u043e\u0441\u0442 \u0438 \u0441\u044a\u0432\u043c\u0435\u0441\u0442\u0438\u043c\u043e\u0441\u0442.<\/li>\n<\/ul>\n\n\n\n<h2 class=\"wp-block-heading\">5. \u0421\u043c\u0435\u0441\u0435\u043d \u043f\u043e\u0434\u0445\u043e\u0434 (Java + Kotlin)<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">\u0412 \u043c\u043d\u043e\u0433\u043e \u0440\u0435\u0430\u043b\u043d\u0438 \u043f\u0440\u043e\u0435\u043a\u0442\u0438 \u043d\u0430\u0439-\u0434\u043e\u0431\u0440\u043e\u0442\u043e \u0440\u0435\u0448\u0435\u043d\u0438\u0435 \u0435 \u0438\u0437\u043f\u043e\u043b\u0437\u0432\u0430\u043d\u0435\u0442\u043e \u043d\u0430 \u0434\u0432\u0430\u0442\u0430 \u0435\u0437\u0438\u043a\u0430 \u0435\u0434\u043d\u043e\u0432\u0440\u0435\u043c\u0435\u043d\u043d\u043e.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">\u041d\u0430\u043f\u0440\u0438\u043c\u0435\u0440:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>\u0421\u044a\u0449\u0435\u0441\u0442\u0432\u0443\u0432\u0430\u0449\u0438\u0442\u0435 Legacy Modules \u043e\u0441\u0442\u0430\u0432\u0430\u0442 \u043d\u0430\u043f\u0438\u0441\u0430\u043d\u0438 \u043d\u0430 Java.<\/li>\n\n\n\n<li>\u041d\u043e\u0432\u0438\u0442\u0435 Services \u0438 Components \u043c\u043e\u0433\u0430\u0442 \u0434\u0430 \u0431\u044a\u0434\u0430\u0442 \u0440\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u0432\u0430\u043d\u0438 \u043d\u0430 Kotlin.<\/li>\n\n\n\n<li>\u0414\u0432\u0430\u0442\u0430 \u0435\u0437\u0438\u043a\u0430 \u043c\u043e\u0433\u0430\u0442 \u0434\u0430 \u0432\u0437\u0430\u0438\u043c\u043e\u0434\u0435\u0439\u0441\u0442\u0432\u0430\u0442 \u0447\u0440\u0435\u0437 JVM Interoperability.<\/li>\n<\/ul>\n\n\n\n<p class=\"wp-block-paragraph\">\u0422\u043e\u0432\u0430 \u043f\u043e\u0437\u0432\u043e\u043b\u044f\u0432\u0430 \u043f\u043e\u0441\u0442\u0435\u043f\u0435\u043d\u043d\u043e \u043c\u043e\u0434\u0435\u0440\u043d\u0438\u0437\u0438\u0440\u0430\u043d\u0435 \u043d\u0430 \u0441\u0438\u0441\u0442\u0435\u043c\u0430\u0442\u0430, \u0431\u0435\u0437 \u0434\u0430 \u0441\u0435 \u043d\u0430\u043b\u0430\u0433\u0430 \u0446\u044f\u043b\u043e\u0441\u0442\u043d\u043e \u043f\u0440\u0435\u043d\u0430\u043f\u0438\u0441\u0432\u0430\u043d\u0435.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">\u0412\u0430\u0436\u043d\u043e \u0437\u0430 Java Developer Interview<\/h2>\n\n\n\n<ol class=\"wp-block-list\">\n<li>Kotlin \u0438 Java \u0441\u0435 \u043a\u043e\u043c\u043f\u0438\u043b\u0438\u0440\u0430\u0442 \u0434\u043e JVM Bytecode.<\/li>\n\n\n\n<li>Kotlin \u0435 \u043d\u0430\u043f\u044a\u043b\u043d\u043e interoperable \u0441 Java, \u043d\u043e \u0438\u043c\u0430 \u043d\u044f\u043a\u043e\u0438 \u043e\u0441\u043e\u0431\u0435\u043d\u043e\u0441\u0442\u0438 \u043f\u0440\u0438 \u0432\u0437\u0430\u0438\u043c\u043e\u0434\u0435\u0439\u0441\u0442\u0432\u0438\u0435\u0442\u043e \u043c\u0435\u0436\u0434\u0443 \u0442\u0438\u043f\u043e\u0432\u0435\u0442\u0435.<\/li>\n\n\n\n<li>Java \u0438\u043c\u0430 <code>record<\/code>, \u043a\u043e\u0439\u0442\u043e \u0447\u0430\u0441\u0442\u0438\u0447\u043d\u043e \u043f\u043e\u043a\u0440\u0438\u0432\u0430 \u0444\u0443\u043d\u043a\u0446\u0438\u043e\u043d\u0430\u043b\u043d\u043e\u0441\u0442\u0442\u0430 \u043d\u0430 Kotlin <code>data class<\/code>.<\/li>\n\n\n\n<li>Java Virtual Threads (Java 21+) \u0443\u043b\u0435\u0441\u043d\u044f\u0432\u0430\u0442 \u0441\u044a\u0437\u0434\u0430\u0432\u0430\u043d\u0435\u0442\u043e \u043d\u0430 \u043c\u0430\u0449\u0430\u0431\u0438\u0440\u0443\u0435\u043c\u0438 concurrent \u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u044f.<\/li>\n\n\n\n<li>Kotlin Coroutines \u0438 Java Virtual Threads \u0441\u0430 \u0440\u0430\u0437\u043b\u0438\u0447\u043d\u0438 \u0442\u0435\u0445\u043d\u043e\u043b\u043e\u0433\u0438\u0438 \u0438 \u043d\u0435 \u0442\u0440\u044f\u0431\u0432\u0430 \u0434\u0430 \u0441\u0435 \u0440\u0430\u0437\u0433\u043b\u0435\u0436\u0434\u0430\u0442 \u043a\u0430\u0442\u043e \u0435\u0434\u043d\u043e \u0438 \u0441\u044a\u0449\u043e.<\/li>\n<\/ol>\n\n\n\n<p class=\"wp-block-paragraph\">\u0417\u0430\u043f\u043e\u043c\u043d\u0435\u0442\u0435: Kotlin \u043d\u0435 \u0437\u0430\u043c\u0435\u043d\u044f Java. \u0414\u0432\u0430\u0442\u0430 \u0435\u0437\u0438\u043a\u0430 \u043c\u043e\u0433\u0430\u0442 \u0434\u0430 \u0440\u0430\u0431\u043e\u0442\u044f\u0442 \u0437\u0430\u0435\u0434\u043d\u043e \u0432 \u0435\u0434\u043d\u0430 JVM \u0441\u0438\u0441\u0442\u0435\u043c\u0430. \u0418\u0437\u0431\u043e\u0440\u044a\u0442 \u0437\u0430\u0432\u0438\u0441\u0438 \u043e\u0442 \u043f\u0440\u043e\u0435\u043a\u0442\u0430, \u0435\u043a\u0438\u043f\u0430, \u0430\u0440\u0445\u0438\u0442\u0435\u043a\u0442\u0443\u0440\u0430\u0442\u0430 \u0438 \u0441\u044a\u0449\u0435\u0441\u0442\u0432\u0443\u0432\u0430\u0449\u0430\u0442\u0430 \u0442\u0435\u0445\u043d\u043e\u043b\u043e\u0433\u0438\u0447\u043d\u0430 \u0438\u043d\u0444\u0440\u0430\u0441\u0442\u0440\u0443\u043a\u0442\u0443\u0440\u0430.<\/p>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h1 class=\"wp-block-heading\">\u041a\u0430\u043a\u0432\u043e \u043c\u043e\u0436\u0435 JBoss \/ WildFly, \u043a\u043e\u0435\u0442\u043e Spring Boot \u043d\u0435 \u043f\u0440\u0435\u0434\u043b\u0430\u0433\u0430 \u0434\u0438\u0440\u0435\u043a\u0442\u043d\u043e<\/h1>\n\n\n\n<p class=\"wp-block-paragraph\">\u0422\u043e\u0437\u0438 \u043c\u0430\u0442\u0435\u0440\u0438\u0430\u043b \u0441\u0440\u0430\u0432\u043d\u044f\u0432\u0430 \u0432\u044a\u0437\u043c\u043e\u0436\u043d\u043e\u0441\u0442\u0438\u0442\u0435 \u043d\u0430 JBoss \/ WildFly \u0438 Spring Boot. \u041e\u0441\u043d\u043e\u0432\u043d\u0430\u0442\u0430 \u0440\u0430\u0437\u043b\u0438\u043a\u0430 \u0435, \u0447\u0435 JBoss \/ WildFly \u0435 \u043f\u044a\u043b\u043d\u043e\u0446\u0435\u043d\u0435\u043d Application Server, \u0434\u043e\u043a\u0430\u0442\u043e Spring Boot \u0435 Application Framework, \u043a\u043e\u0439\u0442\u043e \u043f\u043e\u0437\u0432\u043e\u043b\u044f\u0432\u0430 \u0438\u0437\u0433\u0440\u0430\u0436\u0434\u0430\u043d\u0435\u0442\u043e \u043d\u0430 \u0441\u0430\u043c\u043e\u0441\u0442\u043e\u044f\u0442\u0435\u043b\u043d\u0438 \u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u044f \u0441\u044a\u0441 \u0441\u043e\u0431\u0441\u0442\u0432\u0435\u043d \u0432\u0433\u0440\u0430\u0434\u0435\u043d Runtime.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">\u0412\u0430\u0436\u043d\u043e \u0435 \u0434\u0430 \u0441\u0435 \u043e\u0442\u0431\u0435\u043b\u0435\u0436\u0438, \u0447\u0435 Spring Boot \u043c\u043e\u0436\u0435 \u0434\u0430 \u0440\u0435\u0430\u043b\u0438\u0437\u0438\u0440\u0430 \u043c\u043d\u043e\u0433\u043e \u043e\u0442 \u0442\u0435\u0437\u0438 \u0444\u0443\u043d\u043a\u0446\u0438\u043e\u043d\u0430\u043b\u043d\u043e\u0441\u0442\u0438 \u0447\u0440\u0435\u0437 \u0434\u043e\u043f\u044a\u043b\u043d\u0438\u0442\u0435\u043b\u043d\u0438 \u0431\u0438\u0431\u043b\u0438\u043e\u0442\u0435\u043a\u0438 \u0438 \u043a\u043e\u043d\u0444\u0438\u0433\u0443\u0440\u0430\u0446\u0438\u0438, \u043d\u043e \u043d\u0435 \u0433\u0438 \u043f\u0440\u0435\u0434\u043e\u0441\u0442\u0430\u0432\u044f \u043a\u0430\u0442\u043e \u0435\u0434\u0438\u043d\u0435\u043d \u0441\u0442\u0430\u043d\u0434\u0430\u0440\u0442\u0438\u0437\u0438\u0440\u0430\u043d Application Server Container.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">1. \u041f\u044a\u043b\u043d\u043e\u0446\u0435\u043d\u043d\u0438 Java EE \/ Jakarta EE Container Services<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">JBoss \u0435 \u0441\u0435\u0440\u0442\u0438\u0444\u0438\u0446\u0438\u0440\u0430\u043d Application Server \u0441 \u0438\u043d\u0442\u0435\u0433\u0440\u0438\u0440\u0430\u043d\u0438 Enterprise \u0443\u0441\u043b\u0443\u0433\u0438.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">\u041e\u0441\u043d\u043e\u0432\u043d\u0438 \u0432\u044a\u0437\u043c\u043e\u0436\u043d\u043e\u0441\u0442\u0438:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>CDI Container \u2013 \u0443\u043f\u0440\u0430\u0432\u043b\u0435\u043d\u0438\u0435 \u043d\u0430 Dependency Injection, Scopes \u0438 Portable Extensions.<\/li>\n\n\n\n<li>EJB Container \u2013 \u043f\u043e\u0434\u0434\u0440\u044a\u0436\u043a\u0430 \u043d\u0430 Stateful \u0438 Stateless Beans, Remote EJB Calls \u0438 EJB Timers.<\/li>\n\n\n\n<li>Container-managed JTA \u2013 \u0443\u043f\u0440\u0430\u0432\u043b\u0435\u043d\u0438\u0435 \u043d\u0430 \u0442\u0440\u0430\u043d\u0437\u0430\u043a\u0446\u0438\u0438, \u0432\u043a\u043b\u044e\u0447\u0438\u0442\u0435\u043b\u043d\u043e XA Transactions \u043c\u0435\u0436\u0434\u0443 \u043d\u044f\u043a\u043e\u043b\u043a\u043e \u0440\u0435\u0441\u0443\u0440\u0441\u0430.<\/li>\n\n\n\n<li>JCA Resource Adapters \u2013 \u0438\u043d\u0442\u0435\u0433\u0440\u0430\u0446\u0438\u044f \u0441 \u0432\u044a\u043d\u0448\u043d\u0438 \u0438 Legacy \u0441\u0438\u0441\u0442\u0435\u043c\u0438.<\/li>\n\n\n\n<li>Jakarta Messaging (JMS) \u2013 \u043a\u043e\u043d\u0444\u0438\u0433\u0443\u0440\u0438\u0440\u0430\u043d\u0435 \u0438 \u0443\u043f\u0440\u0430\u0432\u043b\u0435\u043d\u0438\u0435 \u043d\u0430 Messaging Services \u043d\u0430 \u043d\u0438\u0432\u043e \u0441\u044a\u0440\u0432\u044a\u0440.<\/li>\n\n\n\n<li>Jakarta Security \u2013 Container-managed Security \u0438 Security Realms.<\/li>\n\n\n\n<li>JSF, JAX-RS, JAX-WS, JPA \u2013 \u0438\u043d\u0442\u0435\u0433\u0440\u0438\u0440\u0430\u043d\u0438 \u0442\u0435\u0445\u043d\u043e\u043b\u043e\u0433\u0438\u0438 \u0437\u0430 Web Applications, REST Services, SOAP Services \u0438 Persistence.<\/li>\n<\/ul>\n\n\n\n<p class=\"wp-block-paragraph\">\u0412 Spring Boot: \u0442\u0435\u0437\u0438 \u0444\u0443\u043d\u043a\u0446\u0438\u043e\u043d\u0430\u043b\u043d\u043e\u0441\u0442\u0438 \u0442\u0440\u044f\u0431\u0432\u0430 \u0434\u0430 \u0431\u044a\u0434\u0430\u0442 \u043a\u043e\u043d\u0444\u0438\u0433\u0443\u0440\u0438\u0440\u0430\u043d\u0438 \u0434\u043e\u043f\u044a\u043b\u043d\u0438\u0442\u0435\u043b\u043d\u043e \u0438\u043b\u0438 \u0437\u0430\u043c\u0435\u043d\u0435\u043d\u0438 \u0441\u044a\u0441 \u0441\u044a\u043e\u0442\u0432\u0435\u0442\u043d\u0438\u0442\u0435 Spring \u0440\u0435\u0448\u0435\u043d\u0438\u044f. \u041d\u044f\u043a\u043e\u0438 \u0432\u044a\u0437\u043c\u043e\u0436\u043d\u043e\u0441\u0442\u0438, \u043a\u0430\u0442\u043e Remote EJB \u0438 JCA, \u043d\u044f\u043c\u0430\u0442 \u0435\u0441\u0442\u0435\u0441\u0442\u0432\u0435\u043d \u0435\u043a\u0432\u0438\u0432\u0430\u043b\u0435\u043d\u0442 \u0432 \u0442\u0438\u043f\u0438\u0447\u043d\u0438\u0442\u0435 Spring Boot \u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u044f.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">2. \u0421\u043f\u043e\u0434\u0435\u043b\u0435\u043d\u0430 \u0441\u044a\u0440\u0432\u044a\u0440\u043d\u0430 \u0438\u043d\u0444\u0440\u0430\u0441\u0442\u0440\u0443\u043a\u0442\u0443\u0440\u0430 (Server-Wide Shared Infrastructure)<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">JBoss \u043c\u043e\u0436\u0435 \u0434\u0430 \u0445\u043e\u0441\u0442\u0432\u0430 \u0438 \u0446\u0435\u043d\u0442\u0440\u0430\u043b\u0438\u0437\u0438\u0440\u0430\u043d\u043e \u0434\u0430 \u0443\u043f\u0440\u0430\u0432\u043b\u044f\u0432\u0430 \u043c\u043d\u043e\u0436\u0435\u0441\u0442\u0432\u043e \u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u044f, \u043a\u043e\u0438\u0442\u043e \u0438\u0437\u043f\u043e\u043b\u0437\u0432\u0430\u0442 \u043e\u0431\u0449\u0438 \u0440\u0435\u0441\u0443\u0440\u0441\u0438.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">\u041e\u0441\u043d\u043e\u0432\u043d\u0438 \u0432\u044a\u0437\u043c\u043e\u0436\u043d\u043e\u0441\u0442\u0438:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Shared Datasources \u2013 \u0441\u043f\u043e\u0434\u0435\u043b\u0435\u043d\u0438 JDBC Connection Pools \u0438 XA Pools.<\/li>\n\n\n\n<li>Shared JMS Queues \/ Topics \u2013 \u043e\u0431\u0449\u0438 Messaging \u0440\u0435\u0441\u0443\u0440\u0441\u0438.<\/li>\n\n\n\n<li>Shared Security Realms \u2013 \u0446\u0435\u043d\u0442\u0440\u0430\u043b\u0438\u0437\u0438\u0440\u0430\u043d\u0430 \u0430\u0432\u0442\u0435\u043d\u0442\u0438\u043a\u0430\u0446\u0438\u044f \u0447\u0440\u0435\u0437 LDAP, Kerberos \u0438\u043b\u0438 \u0444\u0430\u0439\u043b\u043e\u0432\u0438 \u0441\u0438\u0441\u0442\u0435\u043c\u0438.<\/li>\n\n\n\n<li>Server-level Thread Pools \u2013 \u0446\u0435\u043d\u0442\u0440\u0430\u043b\u0438\u0437\u0438\u0440\u0430\u043d\u043e \u0443\u043f\u0440\u0430\u0432\u043b\u0435\u043d\u0438\u0435 \u043d\u0430 Thread Pools \u0438 Work Managers.<\/li>\n\n\n\n<li>Central Logging Configuration \u2013 \u043e\u0431\u0449\u0430 \u043a\u043e\u043d\u0444\u0438\u0433\u0443\u0440\u0430\u0446\u0438\u044f \u043d\u0430 Logging \u0437\u0430 \u0432\u0441\u0438\u0447\u043a\u0438 \u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u044f.<\/li>\n\n\n\n<li>JGroups Clustering \u2013 \u0443\u043f\u0440\u0430\u0432\u043b\u0435\u043d\u0438\u0435 \u043d\u0430 \u043a\u043b\u044a\u0441\u0442\u0435\u0440\u0438 \u0438 Session Replication.<\/li>\n\n\n\n<li>Global Transaction Manager \u2013 \u0446\u0435\u043d\u0442\u0440\u0430\u043b\u0438\u0437\u0438\u0440\u0430\u043d\u043e \u0443\u043f\u0440\u0430\u0432\u043b\u0435\u043d\u0438\u0435 \u043d\u0430 \u0442\u0440\u0430\u043d\u0437\u0430\u043a\u0446\u0438\u0438.<\/li>\n<\/ul>\n\n\n\n<p class=\"wp-block-paragraph\">\u0412 Spring Boot: \u0432\u0441\u044f\u043a\u043e \u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u0435 \u043e\u0431\u0438\u043a\u043d\u043e\u0432\u0435\u043d\u043e \u0443\u043f\u0440\u0430\u0432\u043b\u044f\u0432\u0430 \u0441\u043e\u0431\u0441\u0442\u0432\u0435\u043d\u0438\u0442\u0435 \u0441\u0438 DataSources, JMS Connections, Logging \u0438 \u0434\u0440\u0443\u0433\u0438 \u0440\u0435\u0441\u0443\u0440\u0441\u0438. \u0421\u043f\u043e\u0434\u0435\u043b\u044f\u043d\u0435\u0442\u043e \u0435 \u0432\u044a\u0437\u043c\u043e\u0436\u043d\u043e, \u043d\u043e \u0441\u0435 \u043e\u0440\u0433\u0430\u043d\u0438\u0437\u0438\u0440\u0430 \u0447\u0440\u0435\u0437 \u0432\u044a\u043d\u0448\u043d\u0438 \u0438\u043d\u0444\u0440\u0430\u0441\u0442\u0440\u0443\u043a\u0442\u0443\u0440\u043d\u0438 \u0443\u0441\u043b\u0443\u0433\u0438 \u0438\u043b\u0438 \u0434\u043e\u043f\u044a\u043b\u043d\u0438\u0442\u0435\u043b\u043d\u0430 \u043a\u043e\u043d\u0444\u0438\u0433\u0443\u0440\u0430\u0446\u0438\u044f.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">3. Enterprise Packaging: EAR Modules \u0438 Multi-Module Deployment<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">JBoss \u043f\u043e\u0434\u0434\u044a\u0440\u0436\u0430 \u0442\u0440\u0430\u0434\u0438\u0446\u0438\u043e\u043d\u043d\u0438\u044f Enterprise Deployment Model, \u043a\u043e\u0439\u0442\u043e \u043f\u043e\u0437\u0432\u043e\u043b\u044f\u0432\u0430 \u043e\u0431\u0435\u0434\u0438\u043d\u044f\u0432\u0430\u043d\u0435 \u043d\u0430 \u043c\u043d\u043e\u0436\u0435\u0441\u0442\u0432\u043e \u043c\u043e\u0434\u0443\u043b\u0438 \u0432 \u0435\u0434\u043d\u043e \u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u0435.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">\u041e\u0441\u043d\u043e\u0432\u043d\u0438 \u0432\u044a\u0437\u043c\u043e\u0436\u043d\u043e\u0441\u0442\u0438:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>EAR Packaging (Enterprise Archive) \u2013 \u0435\u0434\u0438\u043d EAR \u0444\u0430\u0439\u043b \u043c\u043e\u0436\u0435 \u0434\u0430 \u0441\u044a\u0434\u044a\u0440\u0436\u0430 \u043c\u043d\u043e\u0436\u0435\u0441\u0442\u0432\u043e WAR \u0438 JAR \u043c\u043e\u0434\u0443\u043b\u0438.<\/li>\n\n\n\n<li>Shared Classloader \u2013 \u0441\u043f\u043e\u0434\u0435\u043b\u044f\u043d\u0435 \u043d\u0430 \u043a\u043b\u0430\u0441\u043e\u0432\u0435 \u043c\u0435\u0436\u0434\u0443 \u043e\u0442\u0434\u0435\u043b\u043d\u0438 \u043c\u043e\u0434\u0443\u043b\u0438 \u0441\u043f\u043e\u0440\u0435\u0434 \u043f\u0440\u0430\u0432\u0438\u043b\u0430\u0442\u0430 \u043d\u0430 ClassLoader \u0430\u0440\u0445\u0438\u0442\u0435\u043a\u0442\u0443\u0440\u0430\u0442\u0430.<\/li>\n\n\n\n<li>Version Isolation \u2013 \u0432\u044a\u0437\u043c\u043e\u0436\u043d\u043e\u0441\u0442 \u0440\u0430\u0437\u043b\u0438\u0447\u043d\u0438 \u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u044f \u0434\u0430 \u0438\u0437\u043f\u043e\u043b\u0437\u0432\u0430\u0442 \u0440\u0430\u0437\u043b\u0438\u0447\u043d\u0438 \u0432\u0435\u0440\u0441\u0438\u0438 \u043d\u0430 \u0431\u0438\u0431\u043b\u0438\u043e\u0442\u0435\u043a\u0438, \u043d\u0430\u043f\u0440\u0438\u043c\u0435\u0440 App A \u0441 Hibernate 5 \u0438 App B \u0441 Hibernate 6.<\/li>\n\n\n\n<li>Hot Redeploy \u2013 \u043f\u043e\u0432\u0442\u043e\u0440\u043d\u043e Deployment \u043d\u0430 EAR\/WAR \u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u044f \u0431\u0435\u0437 \u0440\u0435\u0441\u0442\u0430\u0440\u0442\u0438\u0440\u0430\u043d\u0435 \u043d\u0430 \u0446\u0435\u043b\u0438\u044f Application Server.<\/li>\n<\/ul>\n\n\n\n<p class=\"wp-block-paragraph\">Spring Boot: \u043e\u0431\u0438\u0447\u0430\u0439\u043d\u043e \u0438\u0437\u043f\u043e\u043b\u0437\u0432\u0430 Executable JAR (Fat JAR) \u0438\u043b\u0438 WAR. \u0412\u0441\u044f\u043a\u043e \u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u0435 \u043e\u0431\u0438\u043a\u043d\u043e\u0432\u0435\u043d\u043e \u0441\u0435 \u0441\u0442\u0430\u0440\u0442\u0438\u0440\u0430 \u043a\u0430\u0442\u043e \u043e\u0442\u0434\u0435\u043b\u0435\u043d \u043f\u0440\u043e\u0446\u0435\u0441. \u041d\u044f\u043c\u0430 \u0441\u0442\u0430\u043d\u0434\u0430\u0440\u0442\u043d\u0430 \u043f\u043e\u0434\u0434\u0440\u044a\u0436\u043a\u0430 \u043d\u0430 EAR Deployment Model \u043a\u0430\u0442\u043e \u043f\u0440\u0438 JBoss.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">4. JBoss-Specific Management &amp; Subsystems<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">JBoss \u043f\u0440\u0435\u0434\u043e\u0441\u0442\u0430\u0432\u044f \u0446\u0435\u043d\u0442\u0440\u0430\u043b\u0438\u0437\u0438\u0440\u0430\u043d\u0438 \u0438\u043d\u0441\u0442\u0440\u0443\u043c\u0435\u043d\u0442\u0438 \u0437\u0430 \u0430\u0434\u043c\u0438\u043d\u0438\u0441\u0442\u0440\u0438\u0440\u0430\u043d\u0435 \u0438 \u0443\u043f\u0440\u0430\u0432\u043b\u0435\u043d\u0438\u0435 \u043d\u0430 \u0446\u0435\u043b\u0438\u044f Application Server.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">\u041e\u0441\u043d\u043e\u0432\u043d\u0438 \u0432\u044a\u0437\u043c\u043e\u0436\u043d\u043e\u0441\u0442\u0438:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Management CLI \u2013 \u043a\u043e\u043c\u0430\u043d\u0434\u0435\u043d \u0438\u043d\u0442\u0435\u0440\u0444\u0435\u0439\u0441 \u0437\u0430 \u0443\u043f\u0440\u0430\u0432\u043b\u0435\u043d\u0438\u0435 \u043d\u0430 \u0441\u044a\u0440\u0432\u044a\u0440\u0430.<\/li>\n\n\n\n<li>HTTP Management API \u2013 \u0443\u043f\u0440\u0430\u0432\u043b\u0435\u043d\u0438\u0435 \u043d\u0430 \u0441\u044a\u0440\u0432\u044a\u0440\u043d\u0430\u0442\u0430 \u043a\u043e\u043d\u0444\u0438\u0433\u0443\u0440\u0430\u0446\u0438\u044f \u0447\u0440\u0435\u0437 HTTP API.<\/li>\n\n\n\n<li>Server Configuration \u2013 \u0446\u0435\u043d\u0442\u0440\u0430\u043b\u0438\u0437\u0438\u0440\u0430\u043d\u043e \u043a\u043e\u043d\u0444\u0438\u0433\u0443\u0440\u0438\u0440\u0430\u043d\u0435 \u043d\u0430 Datasources, Security Realms, JMS \u0438 Modules.<\/li>\n\n\n\n<li>Domain Mode \u2013 \u0435\u0434\u0438\u043d Domain Controller \u0443\u043f\u0440\u0430\u0432\u043b\u044f\u0432\u0430 \u043c\u043d\u043e\u0436\u0435\u0441\u0442\u0432\u043e JBoss Servers.<\/li>\n\n\n\n<li>Clustering Subsystems \u2013 \u0438\u0437\u043f\u043e\u043b\u0437\u0432\u0430\u043d\u0435 \u043d\u0430 JGroups \u0438 Infinispan \u0437\u0430 Cluster Management \u0438 Distributed Caching.<\/li>\n\n\n\n<li>Subsystem-based Configuration \u2013 \u043e\u0442\u0434\u0435\u043b\u043d\u0438 \u043f\u043e\u0434\u0441\u0438\u0441\u0442\u0435\u043c\u0438 \u0437\u0430 Messaging, Naming, Transactions \u0438 \u0434\u0440\u0443\u0433\u0438 \u0443\u0441\u043b\u0443\u0433\u0438.<\/li>\n<\/ul>\n\n\n\n<p class=\"wp-block-paragraph\">Spring Boot: \u0443\u043f\u0440\u0430\u0432\u043b\u044f\u0432\u0430 \u043e\u0441\u043d\u043e\u0432\u043d\u043e \u043a\u043e\u043d\u0444\u0438\u0433\u0443\u0440\u0430\u0446\u0438\u044f\u0442\u0430 \u043d\u0430 \u043a\u043e\u043d\u043a\u0440\u0435\u0442\u043d\u043e\u0442\u043e \u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u0435. \u041d\u044f\u043c\u0430 \u0432\u0433\u0440\u0430\u0434\u0435\u043d \u0446\u0435\u043d\u0442\u0440\u0430\u043b\u0435\u043d Server Management \u043c\u043e\u0434\u0435\u043b, \u0435\u043a\u0432\u0438\u0432\u0430\u043b\u0435\u043d\u0442\u0435\u043d \u043d\u0430 JBoss Domain Mode.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">5. \u0424\u0443\u043d\u043a\u0446\u0438\u043e\u043d\u0430\u043b\u043d\u043e\u0441\u0442\u0438, \u043a\u043e\u0438\u0442\u043e \u0441\u0430 \u0442\u0440\u0443\u0434\u043d\u0438 \u0438\u043b\u0438 \u043d\u0435\u0435\u0441\u0442\u0435\u0441\u0442\u0432\u0435\u043d\u0438 \u0437\u0430 Spring Boot<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">\u0421\u043b\u0435\u0434\u043d\u0438\u0442\u0435 \u0432\u044a\u0437\u043c\u043e\u0436\u043d\u043e\u0441\u0442\u0438 \u0441\u0430 \u0435\u0441\u0442\u0435\u0441\u0442\u0432\u0435\u043d\u0430 \u0447\u0430\u0441\u0442 \u043e\u0442 JBoss, \u043d\u043e \u0438\u0437\u0438\u0441\u043a\u0432\u0430\u0442 \u0434\u043e\u043f\u044a\u043b\u043d\u0438\u0442\u0435\u043b\u043d\u0430 \u0438\u043d\u0444\u0440\u0430\u0441\u0442\u0440\u0443\u043a\u0442\u0443\u0440\u0430 \u0438\u043b\u0438 \u0440\u0430\u0437\u043b\u0438\u0447\u0435\u043d \u0430\u0440\u0445\u0438\u0442\u0435\u043a\u0442\u0443\u0440\u0435\u043d \u043f\u043e\u0434\u0445\u043e\u0434 \u043f\u0440\u0438 Spring Boot:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Remote EJB \u2013 \u043e\u0442\u0434\u0430\u043b\u0435\u0447\u0435\u043d\u0438 \u0438\u0437\u0432\u0438\u043a\u0432\u0430\u043d\u0438\u044f \u043d\u0430 EJB \u043c\u0435\u0442\u043e\u0434\u0438 \u0447\u0440\u0435\u0437 RMI-\u0431\u0430\u0437\u0438\u0440\u0430\u043d \u043c\u0435\u0445\u0430\u043d\u0438\u0437\u044a\u043c.<\/li>\n\n\n\n<li>JCA Connectors \u2013 \u0443\u043f\u0440\u0430\u0432\u043b\u0435\u043d\u0438\u0435 \u043d\u0430 \u0436\u0438\u0437\u043d\u0435\u043d\u0438\u044f \u0446\u0438\u043a\u044a\u043b \u0438 Connection Pooling \u043e\u0442 Application Server.<\/li>\n\n\n\n<li>Multiple Enterprise Applications in One JVM \u2013 \u043c\u043d\u043e\u0436\u0435\u0441\u0442\u0432\u043e Enterprise \u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u044f \u0432 \u0435\u0434\u043d\u0430 JVM \u0441\u044a\u0441 \u0441\u043f\u043e\u0434\u0435\u043b\u0435\u043d\u0438 \u0440\u0435\u0441\u0443\u0440\u0441\u0438.<\/li>\n\n\n\n<li>Container-managed Security \u2013 \u0446\u0435\u043d\u0442\u0440\u0430\u043b\u0438\u0437\u0438\u0440\u0430\u043d\u0430 Security \u043a\u043e\u043d\u0444\u0438\u0433\u0443\u0440\u0430\u0446\u0438\u044f \u0437\u0430 JSF \u0438 EJB \u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u044f.<\/li>\n\n\n\n<li>EJB Timers with HA Failover \u2013 \u0430\u0432\u0442\u043e\u043c\u0430\u0442\u0438\u0437\u0438\u0440\u0430\u043d\u043e \u0443\u043f\u0440\u0430\u0432\u043b\u0435\u043d\u0438\u0435 \u043d\u0430 Timers \u0441 High Availability \u0438 Failover.<\/li>\n\n\n\n<li>Central JTA\/XA Management \u2013 \u0446\u0435\u043d\u0442\u0440\u0430\u043b\u0438\u0437\u0438\u0440\u0430\u043d\u043e \u0443\u043f\u0440\u0430\u0432\u043b\u0435\u043d\u0438\u0435 \u043d\u0430 \u0442\u0440\u0430\u043d\u0437\u0430\u043a\u0446\u0438\u0438 \u043c\u0435\u0436\u0434\u0443 \u043c\u043d\u043e\u0436\u0435\u0441\u0442\u0432\u043e \u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u044f \u0438 \u0440\u0435\u0441\u0443\u0440\u0441\u0438.<\/li>\n<\/ul>\n\n\n\n<p class=\"wp-block-paragraph\">Spring \u043f\u0440\u0435\u0434\u043b\u0430\u0433\u0430 \u0430\u043b\u0442\u0435\u0440\u043d\u0430\u0442\u0438\u0432\u0438 \u0437\u0430 \u043c\u043d\u043e\u0433\u043e \u043e\u0442 \u0442\u0435\u0437\u0438 \u0444\u0443\u043d\u043a\u0446\u0438\u043e\u043d\u0430\u043b\u043d\u043e\u0441\u0442\u0438, \u043d\u043e \u0442\u0435 \u043d\u0435 \u0441\u0430 \u0441\u0442\u0430\u043d\u0434\u0430\u0440\u0442\u0438\u0437\u0438\u0440\u0430\u043d\u0438 \u043f\u043e \u0441\u044a\u0449\u0438\u044f \u043d\u0430\u0447\u0438\u043d \u043a\u0430\u0442\u043e Jakarta EE Container Services.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">6. \u0417\u0430\u0449\u043e \u0441\u044a\u0449\u0435\u0441\u0442\u0432\u0443\u0432\u0430\u0442 \u0442\u0435\u0437\u0438 \u0440\u0430\u0437\u043b\u0438\u0447\u0438\u044f? (Conceptual Explanation)<\/h2>\n\n\n\n<figure class=\"wp-block-table\"><table class=\"has-fixed-layout\"><tbody><tr><th>JBoss \/ WildFly<\/th><th>Spring Boot<\/th><\/tr><tr><td>Java EE \/ Jakarta EE Application Server<\/td><td>Application Framework + Embedded Runtime<\/td><\/tr><tr><td>\u041f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u044f\u0442\u0430 \u0441\u0435 Deployment-\u0432\u0430\u0442 \u0432\u044a\u0440\u0445\u0443 \u0441\u044a\u0440\u0432\u044a\u0440\u0430.<\/td><td>\u041f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u0435\u0442\u043e \u0441\u044a\u0434\u044a\u0440\u0436\u0430 Embedded Server (Tomcat, Jetty \u0438\u043b\u0438 Undertow).<\/td><\/tr><tr><td>\u0421\u043f\u043e\u0434\u0435\u043b\u0435\u043d\u0430 Server-wide Infrastructure.<\/td><td>\u041e\u0431\u0438\u043a\u043d\u043e\u0432\u0435\u043d\u043e \u0432\u0441\u044f\u043a\u043e \u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u0435 \u0435 \u043d\u0435\u0437\u0430\u0432\u0438\u0441\u0438\u043c\u043e.<\/td><\/tr><tr><td>\u0426\u0435\u043d\u0442\u0440\u0430\u043b\u0438\u0437\u0438\u0440\u0430\u043d\u043e \u0443\u043f\u0440\u0430\u0432\u043b\u0435\u043d\u0438\u0435 \u043d\u0430 \u043c\u043d\u043e\u0436\u0435\u0441\u0442\u0432\u043e \u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u044f.<\/td><td>\u0423\u043f\u0440\u0430\u0432\u043b\u0435\u043d\u0438\u0435 \u043d\u0430 \u043e\u0442\u0434\u0435\u043b\u043d\u0438 \u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u044f \u0438 \u0443\u0441\u043b\u0443\u0433\u0438.<\/td><\/tr><tr><td>\u041f\u043e\u0434\u0445\u043e\u0434\u044f\u0449 \u0437\u0430 Enterprise \u0438 Legacy Systems.<\/td><td>\u041f\u043e\u0434\u0445\u043e\u0434\u044f\u0449 \u0437\u0430 Microservices \u0438 Cloud-native Development.<\/td><\/tr><\/tbody><\/table><\/figure>\n\n\n\n<h2 class=\"wp-block-heading\">7. \u041f\u0440\u0430\u043a\u0442\u0438\u0447\u0435\u0441\u043a\u043e \u043f\u0440\u0430\u0432\u0438\u043b\u043e \u2013 \u043a\u043e\u0433\u0430 \u0434\u0430 \u0438\u0437\u0431\u0435\u0440\u0435\u043c JBoss \u0438\u043b\u0438 Spring Boot?<\/h2>\n\n\n\n<h3 class=\"wp-block-heading\">\u0418\u0437\u0431\u0435\u0440\u0435\u0442\u0435 JBoss \/ WildFly, \u043a\u043e\u0433\u0430\u0442\u043e:<\/h3>\n\n\n\n<ul class=\"wp-block-list\">\n<li>\u041f\u043e\u0434\u0434\u044a\u0440\u0436\u0430\u0442\u0435 \u0441\u044a\u0449\u0435\u0441\u0442\u0432\u0443\u0432\u0430\u0449\u0438 EJB \/ EAR \/ JSF \/ JCA \u0441\u0438\u0441\u0442\u0435\u043c\u0438.<\/li>\n\n\n\n<li>\u0418\u043c\u0430\u0442\u0435 \u043d\u0443\u0436\u0434\u0430 \u043e\u0442 Container-managed JTA\/XA \u043c\u0435\u0436\u0434\u0443 \u043c\u043d\u043e\u0436\u0435\u0441\u0442\u0432\u043e \u0440\u0435\u0441\u0443\u0440\u0441\u0438.<\/li>\n\n\n\n<li>Deployment-\u0432\u0430\u0442\u0435 \u043c\u043d\u043e\u0436\u0435\u0441\u0442\u0432\u043e Enterprise \u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u044f \u0441\u044a\u0441 \u0441\u043f\u043e\u0434\u0435\u043b\u0435\u043d\u0430 \u0441\u044a\u0440\u0432\u044a\u0440\u043d\u0430 \u043a\u043e\u043d\u0444\u0438\u0433\u0443\u0440\u0430\u0446\u0438\u044f.<\/li>\n\n\n\n<li>\u0418\u0437\u043f\u043e\u043b\u0437\u0432\u0430\u0442\u0435 Remote EJB \u0438\u043b\u0438 Server-managed Security Realms.<\/li>\n\n\n\n<li>\u0418\u043c\u0430\u0442\u0435 \u043d\u0443\u0436\u0434\u0430 \u043e\u0442 \u0446\u0435\u043d\u0442\u0440\u0430\u043b\u0438\u0437\u0438\u0440\u0430\u043d\u043e \u0443\u043f\u0440\u0430\u0432\u043b\u0435\u043d\u0438\u0435 \u043d\u0430 Clustering, Messaging \u0438 JMS.<\/li>\n\n\n\n<li>\u0420\u0430\u0431\u043e\u0442\u0438\u0442\u0435 \u0441 \u0442\u0440\u0430\u0434\u0438\u0446\u0438\u043e\u043d\u043d\u0430 Enterprise Java EE \/ Jakarta EE \u0430\u0440\u0445\u0438\u0442\u0435\u043a\u0442\u0443\u0440\u0430.<\/li>\n<\/ul>\n\n\n\n<h3 class=\"wp-block-heading\">\u0418\u0437\u0431\u0435\u0440\u0435\u0442\u0435 Spring Boot, \u043a\u043e\u0433\u0430\u0442\u043e:<\/h3>\n\n\n\n<ul class=\"wp-block-list\">\n<li>\u0420\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u0432\u0430\u0442\u0435 \u043d\u043e\u0432\u0438 Microservices (REST APIs, Cloud-native Applications).<\/li>\n\n\n\n<li>\u0418\u0441\u043a\u0430\u0442\u0435 \u043f\u0440\u043e\u0441\u0442\u043e\u0442\u0430, \u0431\u044a\u0440\u0437\u0430 \u0440\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u043a\u0430 \u0438 \u043d\u0435\u0437\u0430\u0432\u0438\u0441\u0438\u043c\u043e\u0441\u0442 \u043d\u0430 \u043e\u0442\u0434\u0435\u043b\u043d\u0438\u0442\u0435 Services.<\/li>\n\n\n\n<li>\u041d\u044f\u043c\u0430\u0442\u0435 \u043d\u0443\u0436\u0434\u0430 \u043e\u0442 \u0442\u0440\u0430\u0434\u0438\u0446\u0438\u043e\u043d\u043d\u0438\u044f Java EE Deployment Model (EAR, EJB, JCA).<\/li>\n\n\n\n<li>\u0418\u0441\u043a\u0430\u0442\u0435 \u0434\u0430 \u0438\u0437\u0431\u0435\u0433\u043d\u0435\u0442\u0435 \u0441\u043b\u043e\u0436\u043d\u043e\u0441\u0442\u0442\u0430 \u043d\u0430 \u0442\u0435\u0436\u043a\u0438\u0442\u0435 Application Servers.<\/li>\n\n\n\n<li>Deployment-\u0432\u0430\u0442\u0435 \u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u044f \u0432 Kubernetes, Docker \u0438\u043b\u0438 Cloud Platforms.<\/li>\n<\/ul>\n\n\n\n<h2 class=\"wp-block-heading\">\u0412\u0430\u0436\u043d\u043e \u0437\u0430 Java Developer Interview<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">\u0417\u0430\u043f\u043e\u043c\u043d\u0435\u0442\u0435 \u0442\u0440\u0438\u0442\u0435 \u043e\u0441\u043d\u043e\u0432\u043d\u0438 \u0440\u0430\u0437\u043b\u0438\u043a\u0438:<\/p>\n\n\n\n<ol class=\"wp-block-list\">\n<li>JBoss \/ WildFly \u0435 Application Server, \u043a\u043e\u0439\u0442\u043e \u043f\u0440\u0435\u0434\u043e\u0441\u0442\u0430\u0432\u044f Jakarta EE Container Services. Spring Boot \u0435 Application Framework.<\/li>\n\n\n\n<li>JBoss \u0443\u043f\u0440\u0430\u0432\u043b\u044f\u0432\u0430 \u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u044f\u0442\u0430 \u0438 \u0442\u0435\u0445\u043d\u0438\u0442\u0435 \u043e\u0431\u0449\u0438 \u0440\u0435\u0441\u0443\u0440\u0441\u0438 \u0446\u0435\u043d\u0442\u0440\u0430\u043b\u0438\u0437\u0438\u0440\u0430\u043d\u043e, \u0434\u043e\u043a\u0430\u0442\u043e Spring Boot \u043e\u0431\u0438\u043a\u043d\u043e\u0432\u0435\u043d\u043e \u043d\u0430\u0441\u044a\u0440\u0447\u0430\u0432\u0430 \u043d\u0435\u0437\u0430\u0432\u0438\u0441\u0438\u043c\u0438 \u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u044f.<\/li>\n\n\n\n<li>Spring Boot \u043d\u0435 \u0435 \u043e\u0433\u0440\u0430\u043d\u0438\u0447\u0435\u043d \u0434\u043e Microservices \u2013 \u043c\u043e\u0436\u0435 \u0434\u0430 \u0441\u0435 \u0438\u0437\u043f\u043e\u043b\u0437\u0432\u0430 \u0438 \u0437\u0430 \u0433\u043e\u043b\u0435\u043c\u0438 Monolithic Enterprise Applications.<\/li>\n<\/ol>\n\n\n\n<p class=\"wp-block-paragraph\">\u041e\u0441\u043d\u043e\u0432\u0435\u043d \u0438\u0437\u0432\u043e\u0434: JBoss \/ WildFly \u0435 \u043f\u043e\u0434\u0445\u043e\u0434\u044f\u0449 \u0437\u0430 \u0442\u0440\u0430\u0434\u0438\u0446\u0438\u043e\u043d\u043d\u0438 Enterprise \u0441\u0438\u0441\u0442\u0435\u043c\u0438, \u043a\u043e\u0438\u0442\u043e \u0440\u0430\u0437\u0447\u0438\u0442\u0430\u0442 \u043d\u0430 \u0446\u0435\u043d\u0442\u0440\u0430\u043b\u0438\u0437\u0438\u0440\u0430\u043d\u0438 Container Services. Spring Boot \u0435 \u043f\u043e-\u0433\u044a\u0432\u043a\u0430\u0432 \u0438\u0437\u0431\u043e\u0440 \u0437\u0430 \u0441\u044a\u0432\u0440\u0435\u043c\u0435\u043d\u043d\u0438 \u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u044f, \u043f\u0440\u0438 \u043a\u043e\u0438\u0442\u043e \u0441\u0435 \u0442\u044a\u0440\u0441\u044f\u0442 \u043d\u0435\u0437\u0430\u0432\u0438\u0441\u0438\u043c\u043e\u0441\u0442, \u043b\u0435\u0441\u043d\u043e Deployment \u0438 Microservices Architecture.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\"><\/p>\n\n\n\n<h1 class=\"wp-block-heading\">JVM (Java Virtual Machine)<\/h1>\n\n\n\n<p class=\"wp-block-paragraph\">JVM (Java Virtual Machine) \u0435 \u0432\u0438\u0440\u0442\u0443\u0430\u043b\u043d\u0430 \u043c\u0430\u0448\u0438\u043d\u0430, \u043a\u043e\u044f\u0442\u043e \u0438\u0437\u043f\u044a\u043b\u043d\u044f\u0432\u0430 Java Bytecode. \u0422\u044f \u043e\u0441\u0438\u0433\u0443\u0440\u044f\u0432\u0430 \u043d\u0435\u0437\u0430\u0432\u0438\u0441\u0438\u043c\u043e\u0441\u0442 \u043d\u0430 Java \u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u044f\u0442\u0430 \u043e\u0442 \u043a\u043e\u043d\u043a\u0440\u0435\u0442\u043d\u0430\u0442\u0430 \u043e\u043f\u0435\u0440\u0430\u0446\u0438\u043e\u043d\u043d\u0430 \u0441\u0438\u0441\u0442\u0435\u043c\u0430 \u0438 \u0443\u043f\u0440\u0430\u0432\u043b\u044f\u0432\u0430 \u0438\u0437\u043f\u044a\u043b\u043d\u0435\u043d\u0438\u0435\u0442\u043e \u043d\u0430 \u043f\u0440\u043e\u0433\u0440\u0430\u043c\u0438\u0442\u0435, \u043f\u0430\u043c\u0435\u0442\u0442\u0430 \u0438 \u0437\u0430\u0440\u0435\u0436\u0434\u0430\u043d\u0435\u0442\u043e \u043d\u0430 \u043a\u043b\u0430\u0441\u043e\u0432\u0435\u0442\u0435.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">1. \u041a\u043e\u043c\u043f\u0438\u043b\u0430\u0446\u0438\u044f (Compilation)<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">\u041a\u043e\u0433\u0430\u0442\u043e \u043a\u043e\u043c\u043f\u0438\u043b\u0438\u0440\u0430\u043c\u0435 <code>.java<\/code> \u0444\u0430\u0439\u043b, Java Compiler (<code>javac<\/code>) \u0433\u0435\u043d\u0435\u0440\u0438\u0440\u0430 \u0435\u0434\u0438\u043d \u0438\u043b\u0438 \u043f\u043e\u0432\u0435\u0447\u0435 <code>.class<\/code> \u0444\u0430\u0439\u043b\u043e\u0432\u0435, \u0441\u044a\u0434\u044a\u0440\u0436\u0430\u0449\u0438 Bytecode (\u043c\u0435\u0436\u0434\u0438\u043d\u043d\u043e \u043f\u0440\u0435\u0434\u0441\u0442\u0430\u0432\u044f\u043d\u0435 \u043d\u0430 \u043f\u0440\u043e\u0433\u0440\u0430\u043c\u043d\u0438\u044f \u043a\u043e\u0434).<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Bytecode \u0435 \u043d\u0435\u0437\u0430\u0432\u0438\u0441\u0438\u043c \u043e\u0442 \u043a\u043e\u043d\u043a\u0440\u0435\u0442\u043d\u0430\u0442\u0430 \u043e\u043f\u0435\u0440\u0430\u0446\u0438\u043e\u043d\u043d\u0430 \u0441\u0438\u0441\u0442\u0435\u043c\u0430 \u0438 \u043f\u0440\u043e\u0446\u0435\u0441\u043e\u0440\u043d\u0430 \u0430\u0440\u0445\u0438\u0442\u0435\u043a\u0442\u0443\u0440\u0430.<\/li>\n\n\n\n<li>\u041c\u043e\u0436\u0435 \u0434\u0430 \u0441\u0435 \u0438\u0437\u043f\u044a\u043b\u043d\u044f\u0432\u0430 \u043d\u0430 \u0432\u0441\u044f\u043a\u0430 \u0441\u0438\u0441\u0442\u0435\u043c\u0430, \u043a\u043e\u044f\u0442\u043e \u0440\u0430\u0437\u043f\u043e\u043b\u0430\u0433\u0430 \u0441\u044a\u0441 \u0441\u044a\u0432\u043c\u0435\u0441\u0442\u0438\u043c\u0430 JVM.<\/li>\n\n\n\n<li>\u0417\u0430 \u0440\u0430\u0437\u043b\u0438\u043a\u0430 \u043e\u0442 Native Machine Code, Bytecode \u043d\u0435 \u0441\u0435 \u0438\u0437\u043f\u044a\u043b\u043d\u044f\u0432\u0430 \u0434\u0438\u0440\u0435\u043a\u0442\u043d\u043e \u043e\u0442 \u043f\u0440\u043e\u0446\u0435\u0441\u043e\u0440\u0430.<\/li>\n<\/ul>\n\n\n\n<p class=\"wp-block-paragraph\">\u0416\u0438\u0448\u044d\u044d:<\/p>\n\n\n<div class=\"wp-block-code\">\n\t<div class=\"cm-editor\">\n\t\t<div class=\"cm-scroller\">\n\t\t\t\n<pre>\n<code><div class=\"cm-line\">javac Student.java<\/div><\/code><\/pre>\n\t\t<\/div>\n\t<\/div>\n<\/div>\n\n\n<p class=\"wp-block-paragraph\">\u0420\u0435\u0437\u0443\u043b\u0442\u0430\u0442\u044a\u0442 \u0435:<\/p>\n\n\n<div class=\"wp-block-code\">\n\t<div class=\"cm-editor\">\n\t\t<div class=\"cm-scroller\">\n\t\t\t\n<pre>\n<code><div class=\"cm-line\">Student.class<\/div><\/code><\/pre>\n\t\t<\/div>\n\t<\/div>\n<\/div>\n\n\n<h2 class=\"wp-block-heading\">2. \u041f\u043e\u0434\u0441\u0438\u0441\u0442\u0435\u043c\u0430 \u0437\u0430 \u0437\u0430\u0440\u0435\u0436\u0434\u0430\u043d\u0435 \u043d\u0430 \u043a\u043b\u0430\u0441\u043e\u0432\u0435 (Class Loader Subsystem)<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">Class Loader Subsystem \u043e\u0442\u0433\u043e\u0432\u0430\u0440\u044f \u0437\u0430 \u0437\u0430\u0440\u0435\u0436\u0434\u0430\u043d\u0435\u0442\u043e \u043d\u0430 \u043a\u043b\u0430\u0441\u043e\u0432\u0435\u0442\u0435 \u0432 JVM.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">\u041e\u0441\u043d\u043e\u0432\u043d\u0438 \u0437\u0430\u0434\u0430\u0447\u0438:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>\u0417\u0430\u0440\u0435\u0436\u0434\u0430 <code>.class<\/code> \u0444\u0430\u0439\u043b\u043e\u0432\u0435\u0442\u0435.<\/li>\n\n\n\n<li>\u041f\u0440\u0435\u043e\u0431\u0440\u0430\u0437\u0443\u0432\u0430 Bytecode \u043f\u0440\u0435\u0434\u0441\u0442\u0430\u0432\u044f\u043d\u0435\u0442\u043e \u0432 \u0441\u0442\u0440\u0443\u043a\u0442\u0443\u0440\u0438 \u043e\u0442 \u0434\u0430\u043d\u043d\u0438, \u0438\u0437\u043f\u043e\u043b\u0437\u0432\u0430\u043d\u0438 \u043e\u0442 JVM.<\/li>\n\n\n\n<li>\u0421\u044a\u0437\u0434\u0430\u0432\u0430 \u043e\u0431\u0435\u043a\u0442 \u043e\u0442 \u0442\u0438\u043f <code>Class<\/code>, \u043a\u043e\u0439\u0442\u043e \u043f\u0440\u0435\u0434\u0441\u0442\u0430\u0432\u044f \u0437\u0430\u0440\u0435\u0434\u0435\u043d\u0438\u044f \u043a\u043b\u0430\u0441.<\/li>\n\n\n\n<li>\u0421\u0432\u044a\u0440\u0437\u0432\u0430 \u0437\u0430\u0440\u0435\u0434\u0435\u043d\u0438\u044f \u043a\u043b\u0430\u0441 \u0441 \u043d\u0435\u043e\u0431\u0445\u043e\u0434\u0438\u043c\u0438\u0442\u0435 \u0441\u0442\u0440\u0443\u043a\u0442\u0443\u0440\u0438 \u0432 \u043f\u0430\u043c\u0435\u0442\u0442\u0430.<\/li>\n<\/ul>\n\n\n\n<p class=\"wp-block-paragraph\">\u0416\u0438\u0448\u044d\u044d:<\/p>\n\n\n<div class=\"wp-block-code\">\n\t<div class=\"cm-editor\">\n\t\t<div class=\"cm-scroller\">\n\t\t\t\n<pre>\n<code><div class=\"cm-line\">Student s1 = new Student();<\/div><div class=\"cm-line\"><\/div><div class=\"cm-line\">Class&lt;?&gt; c1 = s1.getClass();<\/div><\/code><\/pre>\n\t\t<\/div>\n\t<\/div>\n<\/div>\n\n\n<p class=\"wp-block-paragraph\">\u042d\u043d\u0434 <code>getClass()<\/code> \u0432\u0440\u044a\u0449\u0430 \u043e\u0431\u0435\u043a\u0442 \u043e\u0442 \u0442\u0438\u043f <code>Class<\/code>, \u043a\u043e\u0439\u0442\u043e \u043f\u0440\u0435\u0434\u0441\u0442\u0430\u0432\u043b\u044f\u0432\u0430 \u043a\u043b\u0430\u0441\u0430 <code>Student<\/code>.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">\u0412\u0430\u0436\u043d\u043e: \u0417\u0430\u0440\u0435\u0434\u0435\u043d\u0438\u044f\u0442 \u043a\u043b\u0430\u0441 \u043d\u0435 \u0441\u0435 \u0441\u044a\u0445\u0440\u0430\u043d\u044f\u0432\u0430 \u043a\u0430\u0442\u043e \u043e\u0431\u0438\u043a\u043d\u043e\u0432\u0435\u043d Java Object \u0432 Heap Memory. \u0418\u043d\u0444\u043e\u0440\u043c\u0430\u0446\u0438\u044f\u0442\u0430 \u0437\u0430 \u043a\u043b\u0430\u0441\u043e\u0432\u0435\u0442\u0435 \u0441\u0435 \u0443\u043f\u0440\u0430\u0432\u043b\u044f\u0432\u0430 \u043e\u0442 JVM, \u0430 \u043e\u0431\u0435\u043a\u0442\u0438\u0442\u0435 \u043e\u0442 \u0442\u0438\u043f <code>Class<\/code> \u0441\u0430 \u0432 Heap.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">3. \u0421\u0432\u044a\u0440\u0437\u0432\u0430\u043d\u0435 (Linking)<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">Linking \u0435 \u043f\u0440\u043e\u0446\u0435\u0441\u044a\u0442, \u043f\u0440\u0438 \u043a\u043e\u0439\u0442\u043e JVM \u043f\u043e\u0434\u0433\u043e\u0442\u0432\u044f \u0437\u0430\u0440\u0435\u0434\u0435\u043d\u0438\u044f \u043a\u043b\u0430\u0441 \u0437\u0430 \u0438\u0437\u043f\u044a\u043b\u043d\u0435\u043d\u0438\u0435.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">\u042d\u043d\u044d \u043d\u044c \u0433\u0443\u0440\u0432\u0430\u043d \u0430\u043b\u0445\u0430\u043c\u0430\u0430\u0441 \u0431\u04af\u0440\u0434\u044d\u043d\u044d:<\/p>\n\n\n\n<figure class=\"wp-block-table\"><table class=\"has-fixed-layout\"><tbody><tr><th>\u0421\u0442\u044a\u043f\u043a\u0430<\/th><th>\u041e\u043f\u0438\u0441\u0430\u043d\u0438\u0435<\/th><\/tr><tr><td>Verification<\/td><td>\u041f\u0440\u043e\u0432\u0435\u0440\u044f\u0432\u0430 \u0434\u0430\u043b\u0438 Bytecode \u0435 \u0432\u0430\u043b\u0438\u0434\u0435\u043d \u0438 \u043e\u0442\u0433\u043e\u0432\u0430\u0440\u044f \u043d\u0430 \u0438\u0437\u0438\u0441\u043a\u0432\u0430\u043d\u0438\u044f\u0442\u0430 \u0437\u0430 \u0431\u0435\u0437\u043e\u043f\u0430\u0441\u043d\u043e\u0441\u0442 \u043d\u0430 JVM.<\/td><\/tr><tr><td>Preparation<\/td><td>\u0421\u044a\u0437\u0434\u0430\u0432\u0430 \u043d\u0435\u043e\u0431\u0445\u043e\u0434\u0438\u043c\u0438\u0442\u0435 \u0441\u0442\u0440\u0443\u043a\u0442\u0443\u0440\u0438 \u0438 \u0440\u0430\u0437\u043f\u0440\u0435\u0434\u0435\u043b\u044f \u043f\u0430\u043c\u0435\u0442 \u0437\u0430 Static Variables, \u043a\u0430\u0442\u043e \u0438\u043c \u0437\u0430\u0434\u0430\u0432\u0430 \u043d\u0430\u0447\u0430\u043b\u043d\u0438 \u0441\u0442\u043e\u0439\u043d\u043e\u0441\u0442\u0438 \u043f\u043e \u043f\u043e\u0434\u0440\u0430\u0437\u0431\u0438\u0440\u0430\u043d\u0435.<\/td><\/tr><tr><td>Resolution<\/td><td>\u041f\u0440\u0435\u043e\u0431\u0440\u0430\u0437\u0443\u0432\u0430 Symbolic References \u043a\u044a\u043c \u0434\u0440\u0443\u0433\u0438 \u043a\u043b\u0430\u0441\u043e\u0432\u0435, \u043f\u043e\u043b\u0435\u0442\u0430 \u0438 \u043c\u0435\u0442\u043e\u0434\u0438 \u0432 \u0434\u0438\u0440\u0435\u043a\u0442\u043d\u0438 \u043f\u0440\u0435\u043f\u0440\u0430\u0442\u043a\u0438, \u043a\u043e\u0433\u0430\u0442\u043e \u0435 \u043d\u0435\u043e\u0431\u0445\u043e\u0434\u0438\u043c\u043e.<\/td><\/tr><\/tbody><\/table><\/figure>\n\n\n\n<p class=\"wp-block-paragraph\">\u0412\u0430\u0436\u043d\u043e: Resolution \u043c\u043e\u0436\u0435 \u0434\u0430 \u0441\u0435 \u0438\u0437\u0432\u044a\u0440\u0448\u0438 \u043e\u0442\u043b\u043e\u0436\u0435\u043d\u043e (Lazily), \u0430 \u043d\u0435 \u0437\u0430\u0434\u044a\u043b\u0436\u0438\u0442\u0435\u043b\u043d\u043e \u043f\u0440\u0438 \u043f\u044a\u0440\u0432\u043e\u043d\u0430\u0447\u0430\u043b\u043d\u043e\u0442\u043e \u0437\u0430\u0440\u0435\u0436\u0434\u0430\u043d\u0435 \u043d\u0430 \u043a\u043b\u0430\u0441\u0430.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">4. \u0418\u043d\u0438\u0446\u0438\u0430\u043b\u0438\u0437\u0430\u0446\u0438\u044f (Initialization)<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">\u041f\u0440\u0438 Initialization JVM \u0438\u0437\u043f\u044a\u043b\u043d\u044f\u0432\u0430 \u0441\u0442\u0430\u0442\u0438\u0447\u043d\u0438\u0442\u0435 \u0438\u043d\u0438\u0446\u0438\u0430\u043b\u0438\u0437\u0430\u0442\u043e\u0440\u0438 \u0438 \u043f\u0440\u0438\u0441\u0432\u043e\u044f\u0432\u0430 \u0437\u0430\u0434\u0430\u0434\u0435\u043d\u0438\u0442\u0435 \u043d\u0430\u0447\u0430\u043b\u043d\u0438 \u0441\u0442\u043e\u0439\u043d\u043e\u0441\u0442\u0438 \u043d\u0430 Static Variables.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">\u0416\u0438\u0448\u044d\u044d:<\/p>\n\n\n<div class=\"wp-block-code\">\n\t<div class=\"cm-editor\">\n\t\t<div class=\"cm-scroller\">\n\t\t\t\n<pre>\n<code><div class=\"cm-line\">public class Student {<\/div><div class=\"cm-line\"><\/div><div class=\"cm-line\">    static int count = 10;<\/div><div class=\"cm-line\"><\/div><div class=\"cm-line\">    static {<\/div><div class=\"cm-line\">        System.out.println(&quot;Class initialized&quot;);<\/div><div class=\"cm-line\">    }<\/div><div class=\"cm-line\"><\/div><div class=\"cm-line\">    int age = 20;<\/div><div class=\"cm-line\">}<\/div><\/code><\/pre>\n\t\t<\/div>\n\t<\/div>\n<\/div>\n\n\n<ul class=\"wp-block-list\">\n<li><code>count<\/code> \u0441\u0435 \u0438\u043d\u0438\u0446\u0438\u0430\u043b\u0438\u0437\u0438\u0440\u0430 \u043f\u0440\u0438 Initialization \u043d\u0430 \u043a\u043b\u0430\u0441\u0430.<\/li>\n\n\n\n<li><code>static<\/code> \u0431\u043b\u043e\u043a\u044a\u0442 \u0441\u0435 \u0438\u0437\u043f\u044a\u043b\u043d\u044f\u0432\u0430 \u043f\u0440\u0438 \u0438\u043d\u0438\u0446\u0438\u0430\u043b\u0438\u0437\u0430\u0446\u0438\u044f\u0442\u0430 \u043d\u0430 \u043a\u043b\u0430\u0441\u0430.<\/li>\n\n\n\n<li><code>age<\/code> \u0441\u0435 \u0438\u043d\u0438\u0446\u0438\u0430\u043b\u0438\u0437\u0438\u0440\u0430 \u043f\u0440\u0438 \u0441\u044a\u0437\u0434\u0430\u0432\u0430\u043d\u0435\u0442\u043e \u043d\u0430 \u0432\u0441\u0435\u043a\u0438 \u043d\u043e\u0432 \u043e\u0431\u0435\u043a\u0442 \u043e\u0442 <code>Student<\/code>.<\/li>\n<\/ul>\n\n\n\n<h2 class=\"wp-block-heading\">5. \u0414\u0432\u0438\u0433\u0430\u0442\u0435\u043b \u0437\u0430 \u0438\u0437\u043f\u044a\u043b\u043d\u0435\u043d\u0438\u0435 (Execution Engine)<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">Execution Engine \u043e\u0442\u0433\u043e\u0432\u0430\u0440\u044f \u0437\u0430 \u0438\u0437\u043f\u044a\u043b\u043d\u0435\u043d\u0438\u0435\u0442\u043e \u043d\u0430 Bytecode.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">\u041e\u0441\u043d\u043e\u0432\u043d\u0438 \u043a\u043e\u043c\u043f\u043e\u043d\u0435\u043d\u0442\u0438:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Interpreter \u2013 \u0438\u0437\u043f\u044a\u043b\u043d\u044f\u0432\u0430 Bytecode \u0438\u043d\u0441\u0442\u0440\u0443\u043a\u0446\u0438\u0438 \u0435\u0434\u043d\u0430 \u043f\u043e \u0435\u0434\u043d\u0430.<\/li>\n\n\n\n<li>JIT Compiler (Just-In-Time Compiler) \u2013 \u043a\u043e\u043c\u043f\u0438\u043b\u0438\u0440\u0430 \u0447\u0435\u0441\u0442\u043e \u0438\u0437\u043f\u044a\u043b\u043d\u044f\u0432\u0430\u043d\u0438 \u0443\u0447\u0430\u0441\u0442\u044a\u0446\u0438 \u043e\u0442 Bytecode \u0434\u043e Native Machine Code \u0437\u0430 \u043f\u043e-\u0434\u043e\u0431\u0440\u0430 \u043f\u0440\u043e\u0438\u0437\u0432\u043e\u0434\u0438\u0442\u0435\u043b\u043d\u043e\u0441\u0442.<\/li>\n\n\n\n<li>Garbage Collector (GC) \u2013 \u0430\u0432\u0442\u043e\u043c\u0430\u0442\u0438\u0447\u043d\u043e \u043e\u0441\u0432\u043e\u0431\u043e\u0436\u0434\u0430\u0432\u0430 \u043f\u0430\u043c\u0435\u0442\u0442\u0430, \u0437\u0430\u0435\u0442\u0430 \u043e\u0442 \u043e\u0431\u0435\u043a\u0442\u0438, \u043a\u043e\u0438\u0442\u043e \u0432\u0435\u0447\u0435 \u043d\u0435 \u0441\u0430 \u0434\u043e\u0441\u0442\u0438\u0436\u0438\u043c\u0438.<\/li>\n<\/ul>\n\n\n\n<p class=\"wp-block-paragraph\">JIT Compiler \u043f\u043e\u0437\u0432\u043e\u043b\u044f\u0432\u0430 \u043d\u0430 JVM \u0434\u0430 \u043e\u043f\u0442\u0438\u043c\u0438\u0437\u0438\u0440\u0430 \u0438\u0437\u043f\u044a\u043b\u043d\u0435\u043d\u0438\u0435\u0442\u043e \u043d\u0430 \u043f\u0440\u043e\u0433\u0440\u0430\u043c\u0430\u0442\u0430 \u043f\u043e \u0432\u0440\u0435\u043c\u0435 \u043d\u0430 \u0440\u0430\u0431\u043e\u0442\u0430 (Runtime).<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">6. \u041e\u0431\u043e\u0431\u0449\u0435\u043d\u0438\u0435 \u2013 \u043a\u0430\u043a \u0440\u0430\u0431\u043e\u0442\u0438 JVM?<\/h2>\n\n\n\n<figure class=\"wp-block-image size-full\"><a href=\"https:\/\/i0.wp.com\/vkrastev1blog.com\/wp-content\/uploads\/2026\/05\/image-1.png?ssl=1\"><img data-recalc-dims=\"1\" loading=\"lazy\" decoding=\"async\" width=\"957\" height=\"617\" data-attachment-id=\"3299\" data-permalink=\"https:\/\/vkrastev1blog.com\/2026\/05\/29\/questions-and-informations-prepairing-for-java-developer-job-interview\/image-51\/\" data-orig-file=\"https:\/\/i0.wp.com\/vkrastev1blog.com\/wp-content\/uploads\/2026\/05\/image-1.png?fit=957%2C617&amp;ssl=1\" data-orig-size=\"957,617\" data-comments-opened=\"1\" data-image-title=\"image\" data-image-description=\"\" data-image-caption=\"\" data-large-file=\"https:\/\/i0.wp.com\/vkrastev1blog.com\/wp-content\/uploads\/2026\/05\/image-1.png?fit=957%2C617&amp;ssl=1\" src=\"https:\/\/i0.wp.com\/vkrastev1blog.com\/wp-content\/uploads\/2026\/05\/image-1.png?resize=957%2C617&#038;ssl=1\" alt=\"\" class=\"wp-image-3299\" srcset=\"https:\/\/i0.wp.com\/vkrastev1blog.com\/wp-content\/uploads\/2026\/05\/image-1.png?w=957&amp;ssl=1 957w, https:\/\/i0.wp.com\/vkrastev1blog.com\/wp-content\/uploads\/2026\/05\/image-1.png?resize=300%2C193&amp;ssl=1 300w, https:\/\/i0.wp.com\/vkrastev1blog.com\/wp-content\/uploads\/2026\/05\/image-1.png?resize=768%2C495&amp;ssl=1 768w\" sizes=\"auto, (max-width: 957px) 100vw, 957px\" \/><\/a><\/figure>\n\n\n\n<h2 class=\"wp-block-heading\">\u0412\u0430\u0436\u043d\u043e \u0437\u0430 Java Developer Interview<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">\u0417\u0430\u043f\u043e\u043c\u043d\u0435\u0442\u0435 \u0441\u043b\u0435\u0434\u043d\u0438\u0442\u0435 \u043f\u0435\u0442 \u043a\u043e\u043c\u043f\u043e\u043d\u0435\u043d\u0442\u0430:<\/p>\n\n\n\n<ol class=\"wp-block-list\">\n<li>Compilation \u2013 \u043f\u0440\u0435\u043e\u0431\u0440\u0430\u0437\u0443\u0432\u0430 <code>.java<\/code> \u0444\u0430\u0439\u043b\u043e\u0432\u0435\u0442\u0435 \u0432 Bytecode (<code>.class<\/code>).<\/li>\n\n\n\n<li>Class Loader \u2013 \u0437\u0430\u0440\u0435\u0436\u0434\u0430 \u043a\u043b\u0430\u0441\u043e\u0432\u0435\u0442\u0435 \u0432 JVM.<\/li>\n\n\n\n<li>Linking \u2013 \u0432\u043a\u043b\u044e\u0447\u0432\u0430 Verification, Preparation \u0438 Resolution.<\/li>\n\n\n\n<li>Initialization \u2013 \u0438\u0437\u043f\u044a\u043b\u043d\u044f\u0432\u0430 Static Initializers \u0438 \u0438\u043d\u0438\u0446\u0438\u0430\u043b\u0438\u0437\u0438\u0440\u0430 Static Variables.<\/li>\n\n\n\n<li>Execution Engine \u2013 \u0438\u0437\u043f\u044a\u043b\u043d\u044f\u0432\u0430 Bytecode \u0447\u0440\u0435\u0437 Interpreter \u0438 JIT Compiler.<\/li>\n<\/ol>\n\n\n\n<p class=\"wp-block-paragraph\">\u041e\u0441\u043d\u043e\u0432\u0435\u043d \u0438\u0437\u0432\u043e\u0434: JVM \u043f\u043e\u0437\u0432\u043e\u043b\u044f\u0432\u0430 \u043d\u0430 Java \u043f\u0440\u043e\u0433\u0440\u0430\u043c\u0438\u0442\u0435 \u0434\u0430 \u0431\u044a\u0434\u0430\u0442 Platform Independent, \u043a\u0430\u0442\u043e \u0438\u0437\u043f\u044a\u043b\u043d\u044f\u0432\u0430 Bytecode \u0447\u0440\u0435\u0437 Interpreter \u0438 JIT Compiler \u0438 \u0443\u043f\u0440\u0430\u0432\u043b\u044f\u0432\u0430 \u043f\u0430\u043c\u0435\u0442\u0442\u0430 \u0447\u0440\u0435\u0437 Garbage Collector.<\/p>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h1 class=\"wp-block-heading\">Apache Kafka<\/h1>\n\n\n\n<p class=\"wp-block-paragraph\">Apache Kafka \u0435 Distributed Event Streaming Platform (\u043f\u043b\u0430\u0442\u0444\u043e\u0440\u043c\u0430 \u0437\u0430 \u0440\u0430\u0437\u043f\u0440\u0435\u0434\u0435\u043b\u0435\u043d\u0430 \u043e\u0431\u0440\u0430\u0431\u043e\u0442\u043a\u0430 \u043d\u0430 \u043f\u043e\u0442\u043e\u0446\u0438 \u043e\u0442 \u0441\u044a\u0431\u0438\u0442\u0438\u044f), \u043a\u043e\u044f\u0442\u043e \u0447\u0435\u0441\u0442\u043e \u0441\u0435 \u0438\u0437\u043f\u043e\u043b\u0437\u0432\u0430 \u043a\u0430\u0442\u043e Message Broker.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">\u0422\u044f \u043f\u043e\u0437\u0432\u043e\u043b\u044f\u0432\u0430 \u043d\u0430 \u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u044f\u0442\u0430 \u0434\u0430 \u043f\u0443\u0431\u043b\u0438\u043a\u0443\u0432\u0430\u0442 (Publish), \u0441\u044a\u0445\u0440\u0430\u043d\u044f\u0432\u0430\u0442 (Store), \u043e\u0431\u0440\u0430\u0431\u043e\u0442\u0432\u0430\u0442 (Process) \u0438 \u043f\u043e\u043b\u0443\u0447\u0430\u0432\u0430\u0442 (Subscribe) \u043f\u043e\u0442\u043e\u0446\u0438 \u043e\u0442 \u0441\u044a\u043e\u0431\u0449\u0435\u043d\u0438\u044f \u0432 \u0440\u0435\u0430\u043b\u043d\u043e \u0432\u0440\u0435\u043c\u0435 (Real Time).<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Kafka \u0435 \u043f\u0440\u043e\u0435\u043a\u0442\u0438\u0440\u0430\u043d\u0430 \u0437\u0430:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>\u0412\u0438\u0441\u043e\u043a\u0430 \u043f\u0440\u043e\u043f\u0443\u0441\u043a\u0430\u0442\u0435\u043b\u043d\u0430 \u0441\u043f\u043e\u0441\u043e\u0431\u043d\u043e\u0441\u0442 (High Throughput).<\/li>\n\n\n\n<li>\u041c\u0430\u0449\u0430\u0431\u0438\u0440\u0443\u0435\u043c\u043e\u0441\u0442 (Scalability).<\/li>\n\n\n\n<li>\u0423\u0441\u0442\u043e\u0439\u0447\u0438\u0432\u043e\u0441\u0442 \u043f\u0440\u0438 \u043e\u0442\u043a\u0430\u0437\u0438 (Fault Tolerance).<\/li>\n\n\n\n<li>\u041d\u0438\u0441\u043a\u0430 \u043b\u0430\u0442\u0435\u043d\u0442\u043d\u043e\u0441\u0442 (Low Latency).<\/li>\n\n\n\n<li>\u041d\u0430\u0434\u0435\u0436\u0434\u043d\u0430 \u043a\u043e\u043c\u0443\u043d\u0438\u043a\u0430\u0446\u0438\u044f \u043c\u0435\u0436\u0434\u0443 \u0440\u0430\u0437\u043b\u0438\u0447\u043d\u0438 \u0441\u0438\u0441\u0442\u0435\u043c\u0438.<\/li>\n<\/ul>\n\n\n\n<h2 class=\"wp-block-heading\">1. \u041e\u0441\u043d\u043e\u0432\u043d\u0438 \u043a\u043e\u043d\u0446\u0435\u043f\u0446\u0438\u0438 (Core Concepts)<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">Topics \u2013 \u043b\u043e\u0433\u0438\u0447\u0435\u0441\u043a\u0438 \u043a\u0430\u0442\u0435\u0433\u043e\u0440\u0438\u0438, \u0432 \u043a\u043e\u0438\u0442\u043e \u0441\u0435 \u043f\u0443\u0431\u043b\u0438\u043a\u0443\u0432\u0430\u0442 \u0441\u044a\u043e\u0431\u0449\u0435\u043d\u0438\u044f\u0442\u0430 (Messages \u0438\u043b\u0438 Records).<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Partitions \u2013 \u0432\u0441\u0435\u043a\u0438 Topic \u043c\u043e\u0436\u0435 \u0434\u0430 \u0431\u044a\u0434\u0435 \u0440\u0430\u0437\u0434\u0435\u043b\u0435\u043d \u043d\u0430 \u043c\u043d\u043e\u0436\u0435\u0441\u0442\u0432\u043e Partitions. \u0422\u0435 \u043f\u043e\u0437\u0432\u043e\u043b\u044f\u0432\u0430\u0442 \u043f\u0430\u0440\u0430\u043b\u0435\u043b\u043d\u0430 \u043e\u0431\u0440\u0430\u0431\u043e\u0442\u043a\u0430 \u0438 \u0445\u043e\u0440\u0438\u0437\u043e\u043d\u0442\u0430\u043b\u043d\u043e \u043c\u0430\u0449\u0430\u0431\u0438\u0440\u0430\u043d\u0435.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Producers \u2013 \u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u044f \u0438\u043b\u0438 \u0443\u0441\u043b\u0443\u0433\u0438, \u043a\u043e\u0438\u0442\u043e \u0438\u0437\u043f\u0440\u0430\u0449\u0430\u0442 \u0441\u044a\u043e\u0431\u0449\u0435\u043d\u0438\u044f \u043a\u044a\u043c Kafka Topics.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Consumers \u2013 \u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u044f \u0438\u043b\u0438 \u0443\u0441\u043b\u0443\u0433\u0438, \u043a\u043e\u0438\u0442\u043e \u043f\u043e\u043b\u0443\u0447\u0430\u0432\u0430\u0442 \u0438 \u043e\u0431\u0440\u0430\u0431\u043e\u0442\u0432\u0430\u0442 \u0441\u044a\u043e\u0431\u0449\u0435\u043d\u0438\u044f\u0442\u0430.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Brokers \u2013 Kafka \u0441\u044a\u0440\u0432\u044a\u0440\u0438, \u043a\u043e\u0438\u0442\u043e \u0441\u044a\u0445\u0440\u0430\u043d\u044f\u0432\u0430\u0442 \u0438 \u0443\u043f\u0440\u0430\u0432\u043b\u044f\u0432\u0430\u0442 Partitions.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Consumer Groups \u2013 \u0433\u0440\u0443\u043f\u0438 \u043e\u0442 Consumers, \u043a\u043e\u0438\u0442\u043e \u0440\u0430\u0437\u043f\u0440\u0435\u0434\u0435\u043b\u044f\u0442 \u043e\u0431\u0440\u0430\u0431\u043e\u0442\u043a\u0430\u0442\u0430 \u043d\u0430 Partitions \u043f\u043e\u043c\u0435\u0436\u0434\u0443 \u0441\u0438.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">2. \u041f\u043e\u0442\u043e\u043a \u043d\u0430 \u0434\u0430\u043d\u043d\u0438\u0442\u0435 (Data Flow)<\/h2>\n\n\n\n<figure class=\"wp-block-image size-full\"><a href=\"https:\/\/i0.wp.com\/vkrastev1blog.com\/wp-content\/uploads\/2026\/05\/image-2.png?ssl=1\"><img data-recalc-dims=\"1\" loading=\"lazy\" decoding=\"async\" width=\"972\" height=\"586\" data-attachment-id=\"3302\" data-permalink=\"https:\/\/vkrastev1blog.com\/2026\/05\/29\/questions-and-informations-prepairing-for-java-developer-job-interview\/image-52\/\" data-orig-file=\"https:\/\/i0.wp.com\/vkrastev1blog.com\/wp-content\/uploads\/2026\/05\/image-2.png?fit=972%2C586&amp;ssl=1\" data-orig-size=\"972,586\" data-comments-opened=\"1\" data-image-title=\"image\" data-image-description=\"\" data-image-caption=\"\" data-large-file=\"https:\/\/i0.wp.com\/vkrastev1blog.com\/wp-content\/uploads\/2026\/05\/image-2.png?fit=972%2C586&amp;ssl=1\" src=\"https:\/\/i0.wp.com\/vkrastev1blog.com\/wp-content\/uploads\/2026\/05\/image-2.png?resize=972%2C586&#038;ssl=1\" alt=\"\" class=\"wp-image-3302\" srcset=\"https:\/\/i0.wp.com\/vkrastev1blog.com\/wp-content\/uploads\/2026\/05\/image-2.png?w=972&amp;ssl=1 972w, https:\/\/i0.wp.com\/vkrastev1blog.com\/wp-content\/uploads\/2026\/05\/image-2.png?resize=300%2C181&amp;ssl=1 300w, https:\/\/i0.wp.com\/vkrastev1blog.com\/wp-content\/uploads\/2026\/05\/image-2.png?resize=768%2C463&amp;ssl=1 768w\" sizes=\"auto, (max-width: 972px) 100vw, 972px\" \/><\/a><\/figure>\n\n\n\n<p class=\"wp-block-paragraph\">\u041f\u0440\u0438\u043c\u0435\u0440: Online Shop \u043f\u0443\u0431\u043b\u0438\u043a\u0443\u0432\u0430 \u0441\u044a\u0431\u0438\u0442\u0438\u0435 <code>OrderCreated<\/code> \u0432 Kafka Topic. \u041e\u0442\u0434\u0435\u043b\u043d\u0438 Consumers \u043c\u043e\u0433\u0430\u0442 \u0434\u0430 \u043e\u0431\u0440\u0430\u0431\u043e\u0442\u044f\u0442 \u043f\u043e\u0440\u044a\u0447\u043a\u0430\u0442\u0430, \u0434\u0430 \u0438\u0437\u043f\u0440\u0430\u0442\u044f\u0442 \u0438\u043c\u0435\u0439\u043b \u0438 \u0434\u0430 \u0430\u043a\u0442\u0443\u0430\u043b\u0438\u0437\u0438\u0440\u0430\u0442 \u0441\u043a\u043b\u0430\u0434\u043e\u0432\u0430\u0442\u0430 \u043d\u0430\u043b\u0438\u0447\u043d\u043e\u0441\u0442.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">3. \u0421\u044a\u0445\u0440\u0430\u043d\u0435\u043d\u0438\u0435 \u043d\u0430 \u0434\u0430\u043d\u043d\u0438\u0442\u0435 (Storage)<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">Kafka \u0441\u044a\u0445\u0440\u0430\u043d\u044f\u0432\u0430 \u0441\u044a\u043e\u0431\u0449\u0435\u043d\u0438\u044f\u0442\u0430 \u043d\u0430 \u0434\u0438\u0441\u043a\u0430 (Disk Storage), \u0430 \u043d\u0435 \u0441\u0430\u043c\u043e \u0432 \u043e\u043f\u0435\u0440\u0430\u0442\u0438\u0432\u043d\u0430\u0442\u0430 \u043f\u0430\u043c\u0435\u0442 (RAM).<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">\u0413\u043e\u043b \u043e\u043d\u0446\u043b\u043e\u0433\u0443\u0443\u0434:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Persistence \u2013 \u0441\u044a\u043e\u0431\u0449\u0435\u043d\u0438\u044f\u0442\u0430 \u0441\u0435 \u0441\u044a\u0445\u0440\u0430\u043d\u044f\u0432\u0430\u0442 \u0437\u0430 \u043e\u043f\u0440\u0435\u0434\u0435\u043b\u0435\u043d \u043f\u0435\u0440\u0438\u043e\u0434 \u0438\u043b\u0438 \u0441\u043f\u043e\u0440\u0435\u0434 \u0437\u0430\u0434\u0430\u0434\u0435\u043d \u0440\u0430\u0437\u043c\u0435\u0440.<\/li>\n\n\n\n<li>Replication \u2013 Partitions \u043c\u043e\u0433\u0430\u0442 \u0434\u0430 \u0438\u043c\u0430\u0442 \u043a\u043e\u043f\u0438\u044f (Replicas) \u043d\u0430 \u0440\u0430\u0437\u043b\u0438\u0447\u043d\u0438 Brokers.<\/li>\n\n\n\n<li>Fault Tolerance \u2013 \u043f\u0440\u0438 \u043e\u0442\u043a\u0430\u0437 \u043d\u0430 Broker \u043c\u043e\u0436\u0435 \u0434\u0430 \u0431\u044a\u0434\u0435 \u0438\u0437\u0431\u0440\u0430\u043d \u0434\u0440\u0443\u0433 Replica \u0437\u0430 Leader.<\/li>\n\n\n\n<li>Retention \u2013 \u0441\u044a\u043e\u0431\u0449\u0435\u043d\u0438\u044f\u0442\u0430 \u043e\u0441\u0442\u0430\u0432\u0430\u0442 \u0434\u043e\u0441\u0442\u044a\u043f\u043d\u0438 \u0441\u043f\u043e\u0440\u0435\u0434 \u043a\u043e\u043d\u0444\u0438\u0433\u0443\u0440\u0438\u0440\u0430\u043d\u0430\u0442\u0430 Retention Policy.<\/li>\n<\/ul>\n\n\n\n<p class=\"wp-block-paragraph\">\u0412\u0430\u0436\u043d\u043e: Kafka \u043d\u0435 \u0438\u0437\u0442\u0440\u0438\u0432\u0430 \u0430\u0432\u0442\u043e\u043c\u0430\u0442\u0438\u0447\u043d\u043e \u0441\u044a\u043e\u0431\u0449\u0435\u043d\u0438\u0435\u0442\u043e \u0432\u0435\u0434\u043d\u0430\u0433\u0430 \u0441\u043b\u0435\u0434 \u043f\u0440\u043e\u0447\u0438\u0442\u0430\u043d\u0435\u0442\u043e \u043c\u0443 \u043e\u0442 Consumer. \u0422\u043e \u043e\u0441\u0442\u0430\u0432\u0430 \u0434\u043e\u0441\u0442\u044a\u043f\u043d\u043e \u0434\u043e \u0438\u0437\u0442\u0438\u0447\u0430\u043d\u0435 \u043d\u0430 Retention \u043f\u0435\u0440\u0438\u043e\u0434\u0430 \u0438\u043b\u0438 \u0434\u043e \u043f\u0440\u0438\u043b\u0430\u0433\u0430\u043d\u0435 \u043d\u0430 \u0434\u0440\u0443\u0433\u0430 \u043f\u043e\u043b\u0438\u0442\u0438\u043a\u0430 \u0437\u0430 \u0441\u044a\u0445\u0440\u0430\u043d\u0435\u043d\u0438\u0435.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">4. \u041f\u0440\u0435\u0434\u0438\u043c\u0441\u0442\u0432\u0430 \u043d\u0430 Apache Kafka \u043a\u0430\u0442\u043e Message Broker<\/h2>\n\n\n\n<h3 class=\"wp-block-heading\">4.1. \u0412\u0438\u0441\u043e\u043a\u0430 \u043f\u0440\u043e\u0438\u0437\u0432\u043e\u0434\u0438\u0442\u0435\u043b\u043d\u043e\u0441\u0442 \u0438 \u043d\u0438\u0441\u043a\u0430 \u043b\u0430\u0442\u0435\u043d\u0442\u043d\u043e\u0441\u0442 (High Throughput &amp; Low Latency)<\/h3>\n\n\n\n<ul class=\"wp-block-list\">\n<li>\u041e\u0431\u0440\u0430\u0431\u043e\u0442\u0432\u0430 \u043c\u043d\u043e\u0433\u043e \u0433\u043e\u043b\u0435\u043c\u0438 \u043e\u0431\u0435\u043c\u0438 \u043e\u0442 \u0441\u044a\u043e\u0431\u0449\u0435\u043d\u0438\u044f.<\/li>\n\n\n\n<li>\u041f\u043e\u0434\u0434\u044a\u0440\u0436\u0430 \u0432\u0438\u0441\u043e\u043a\u0430 \u043f\u0440\u043e\u043f\u0443\u0441\u043a\u0430\u0442\u0435\u043b\u043d\u0430 \u0441\u043f\u043e\u0441\u043e\u0431\u043d\u043e\u0441\u0442.<\/li>\n\n\n\n<li>\u041e\u0441\u0438\u0433\u0443\u0440\u044f\u0432\u0430 \u043d\u0438\u0441\u043a\u0430 \u043b\u0430\u0442\u0435\u043d\u0442\u043d\u043e\u0441\u0442 \u043f\u0440\u0438 \u043f\u0440\u0430\u0432\u0438\u043b\u043d\u0430 \u043a\u043e\u043d\u0444\u0438\u0433\u0443\u0440\u0430\u0446\u0438\u044f.<\/li>\n\n\n\n<li>\u041f\u043e\u0434\u0445\u043e\u0434\u044f\u0449\u0430 \u0435 \u0437\u0430 \u0441\u0438\u0441\u0442\u0435\u043c\u0438 \u0441 \u0433\u043e\u043b\u044f\u043c \u0431\u0440\u043e\u0439 \u0441\u044a\u0431\u0438\u0442\u0438\u044f \u0432 \u0440\u0435\u0430\u043b\u043d\u043e \u0432\u0440\u0435\u043c\u0435.<\/li>\n<\/ul>\n\n\n\n<h3 class=\"wp-block-heading\">4.2. \u041c\u0430\u0449\u0430\u0431\u0438\u0440\u0443\u0435\u043c\u043e\u0441\u0442 (Scalability)<\/h3>\n\n\n\n<ul class=\"wp-block-list\">\n<li>\u041f\u043e\u0434\u0434\u044a\u0440\u0436\u0430 \u0445\u043e\u0440\u0438\u0437\u043e\u043d\u0442\u0430\u043b\u043d\u043e \u043c\u0430\u0449\u0430\u0431\u0438\u0440\u0430\u043d\u0435 \u0447\u0440\u0435\u0437 \u0434\u043e\u0431\u0430\u0432\u044f\u043d\u0435 \u043d\u0430 Brokers.<\/li>\n\n\n\n<li>Partitions \u043f\u043e\u0437\u0432\u043e\u043b\u044f\u0432\u0430\u0442 \u043f\u0430\u0440\u0430\u043b\u0435\u043b\u043d\u0430 \u043e\u0431\u0440\u0430\u0431\u043e\u0442\u043a\u0430.<\/li>\n\n\n\n<li>\u041c\u043e\u0436\u0435 \u0434\u0430 \u043e\u0431\u0441\u043b\u0443\u0436\u0432\u0430 \u043c\u043d\u043e\u0433\u043e Producers \u0438 Consumers \u0435\u0434\u043d\u043e\u0432\u0440\u0435\u043c\u0435\u043d\u043d\u043e.<\/li>\n<\/ul>\n\n\n\n<h3 class=\"wp-block-heading\">4.3. \u0423\u0441\u0442\u043e\u0439\u0447\u0438\u0432\u043e\u0441\u0442 \u0438 \u043d\u0430\u0434\u0435\u0436\u0434\u043d\u043e\u0441\u0442 (Durability &amp; Fault Tolerance)<\/h3>\n\n\n\n<ul class=\"wp-block-list\">\n<li>\u0421\u044a\u043e\u0431\u0449\u0435\u043d\u0438\u044f\u0442\u0430 \u0441\u0435 \u0437\u0430\u043f\u0438\u0441\u0432\u0430\u0442 \u043d\u0430 \u0434\u0438\u0441\u043a\u0430.<\/li>\n\n\n\n<li>Replication \u043e\u0441\u0438\u0433\u0443\u0440\u044f\u0432\u0430 \u043a\u043e\u043f\u0438\u044f \u043d\u0430 \u0434\u0430\u043d\u043d\u0438\u0442\u0435 \u043d\u0430 \u0440\u0430\u0437\u043b\u0438\u0447\u043d\u0438 Brokers.<\/li>\n\n\n\n<li>\u041f\u0440\u0438 \u043e\u0442\u043a\u0430\u0437 \u043d\u0430 Leader Replica \u043c\u043e\u0436\u0435 \u0434\u0430 \u0431\u044a\u0434\u0435 \u0438\u0437\u0431\u0440\u0430\u043d \u043d\u043e\u0432 Leader.<\/li>\n\n\n\n<li>\u041f\u043e\u0437\u0432\u043e\u043b\u044f\u0432\u0430 \u0432\u044a\u0437\u0441\u0442\u0430\u043d\u043e\u0432\u044f\u0432\u0430\u043d\u0435 \u0441\u043b\u0435\u0434 \u043e\u0442\u043a\u0430\u0437\u0438.<\/li>\n<\/ul>\n\n\n\n<h3 class=\"wp-block-heading\">4.4. \u041d\u0435\u0437\u0430\u0432\u0438\u0441\u0438\u043c\u043e\u0441\u0442 \u043c\u0435\u0436\u0434\u0443 Producers \u0438 Consumers (Decoupling)<\/h3>\n\n\n\n<p class=\"wp-block-paragraph\">Producers \u0438 Consumers \u0440\u0430\u0431\u043e\u0442\u044f\u0442 \u043d\u0435\u0437\u0430\u0432\u0438\u0441\u0438\u043c\u043e \u0435\u0434\u0438\u043d \u043e\u0442 \u0434\u0440\u0443\u0433.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">\u041d\u0430\u043f\u0440\u0438\u043c\u0435\u0440:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Order Service \u043f\u0443\u0431\u043b\u0438\u043a\u0443\u0432\u0430 \u0441\u044a\u0431\u0438\u0442\u0438\u0435 \u0437\u0430 \u043d\u043e\u0432\u0430 \u043f\u043e\u0440\u044a\u0447\u043a\u0430.<\/li>\n\n\n\n<li>Payment Service \u043e\u0431\u0440\u0430\u0431\u043e\u0442\u0432\u0430 \u043f\u043b\u0430\u0449\u0430\u043d\u0435\u0442\u043e.<\/li>\n\n\n\n<li>Notification Service \u0438\u0437\u043f\u0440\u0430\u0449\u0430 \u0443\u0432\u0435\u0434\u043e\u043c\u043b\u0435\u043d\u0438\u0435.<\/li>\n\n\n\n<li>Warehouse Service \u0430\u043a\u0442\u0443\u0430\u043b\u0438\u0437\u0438\u0440\u0430 \u0441\u043a\u043b\u0430\u0434\u043e\u0432\u0430\u0442\u0430 \u043d\u0430\u043b\u0438\u0447\u043d\u043e\u0441\u0442.<\/li>\n<\/ul>\n\n\n\n<p class=\"wp-block-paragraph\">Producer \u043d\u0435 \u0435 \u043d\u0435\u043e\u0431\u0445\u043e\u0434\u0438\u043c\u043e \u0434\u0430 \u0437\u043d\u0430\u0435 \u043a\u043e\u0438 Consumers \u0449\u0435 \u043e\u0431\u0440\u0430\u0431\u043e\u0442\u0432\u0430\u0442 \u0441\u044a\u0431\u0438\u0442\u0438\u0435\u0442\u043e.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">4.5. \u041e\u0431\u0440\u0430\u0431\u043e\u0442\u043a\u0430 \u043d\u0430 \u043f\u043e\u0442\u043e\u0446\u0438 \u043e\u0442 \u0434\u0430\u043d\u043d\u0438 (Stream Processing)<\/h3>\n\n\n\n<p class=\"wp-block-paragraph\">Kafka \u043f\u043e\u0434\u0434\u044a\u0440\u0436\u0430 Stream Processing \u0447\u0440\u0435\u0437:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Kafka Streams \u2013 \u0431\u0438\u0431\u043b\u0438\u043e\u0442\u0435\u043a\u0430 \u0437\u0430 \u043e\u0431\u0440\u0430\u0431\u043e\u0442\u043a\u0430 \u0438 \u0442\u0440\u0430\u043d\u0441\u0444\u043e\u0440\u043c\u0430\u0446\u0438\u044f \u043d\u0430 \u043f\u043e\u0442\u043e\u0446\u0438 \u043e\u0442 \u0441\u044a\u0431\u0438\u0442\u0438\u044f.<\/li>\n\n\n\n<li>Apache Flink \u2013 \u043f\u043b\u0430\u0442\u0444\u043e\u0440\u043c\u0430 \u0437\u0430 \u0440\u0430\u0437\u043f\u0440\u0435\u0434\u0435\u043b\u0435\u043d\u0430 \u043e\u0431\u0440\u0430\u0431\u043e\u0442\u043a\u0430 \u043d\u0430 \u043f\u043e\u0442\u043e\u0446\u0438.<\/li>\n\n\n\n<li>Apache Spark \u2013 \u043f\u043e\u0434\u0434\u044a\u0440\u0436\u0430 \u043e\u0431\u0440\u0430\u0431\u043e\u0442\u043a\u0430 \u043d\u0430 Streaming Data.<\/li>\n<\/ul>\n\n\n\n<p class=\"wp-block-paragraph\">\u0422\u043e\u0432\u0430 \u043f\u043e\u0437\u0432\u043e\u043b\u044f\u0432\u0430 Real-Time Analytics, \u0444\u0438\u043b\u0442\u0440\u0438\u0440\u0430\u043d\u0435, \u0430\u0433\u0440\u0435\u0433\u0438\u0440\u0430\u043d\u0435 \u0438 \u0442\u0440\u0430\u043d\u0441\u0444\u043e\u0440\u043c\u0430\u0446\u0438\u044f \u043d\u0430 \u0434\u0430\u043d\u043d\u0438.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">4.6. \u041f\u043e\u0432\u0442\u043e\u0440\u043d\u043e \u043f\u0440\u043e\u0447\u0438\u0442\u0430\u043d\u0435 \u0438 \u0441\u044a\u0445\u0440\u0430\u043d\u0435\u043d\u0438\u0435 (Replay &amp; Retention)<\/h3>\n\n\n\n<ul class=\"wp-block-list\">\n<li>\u0421\u044a\u043e\u0431\u0449\u0435\u043d\u0438\u044f\u0442\u0430 \u0441\u0435 \u0441\u044a\u0445\u0440\u0430\u043d\u044f\u0432\u0430\u0442 \u0441\u043f\u043e\u0440\u0435\u0434 \u043a\u043e\u043d\u0444\u0438\u0433\u0443\u0440\u0438\u0440\u0430\u043d\u0430\u0442\u0430 Retention Policy.<\/li>\n\n\n\n<li>Consumers \u043c\u043e\u0433\u0430\u0442 \u0434\u0430 \u043f\u0440\u043e\u0447\u0438\u0442\u0430\u0442 \u0441\u044a\u043e\u0431\u0449\u0435\u043d\u0438\u044f\u0442\u0430 \u043f\u043e\u0432\u0442\u043e\u0440\u043d\u043e.<\/li>\n\n\n\n<li>\u0427\u0440\u0435\u0437 Offset \u043c\u043e\u0436\u0435 \u0434\u0430 \u0441\u0435 \u043e\u043f\u0440\u0435\u0434\u0435\u043b\u0438 \u043e\u0442 \u043a\u043e\u044f \u043f\u043e\u0437\u0438\u0446\u0438\u044f \u0434\u0430 \u0437\u0430\u043f\u043e\u0447\u043d\u0435 \u0447\u0435\u0442\u0435\u043d\u0435\u0442\u043e.<\/li>\n\n\n\n<li>\u041f\u043e\u043b\u0435\u0437\u043d\u043e \u0435 \u043f\u0440\u0438 \u0432\u044a\u0437\u0441\u0442\u0430\u043d\u043e\u0432\u044f\u0432\u0430\u043d\u0435 \u043d\u0430 \u0434\u0430\u043d\u043d\u0438, \u043f\u043e\u0432\u0442\u043e\u0440\u043d\u0430 \u043e\u0431\u0440\u0430\u0431\u043e\u0442\u043a\u0430 \u0438 \u043e\u0434\u0438\u0442 (Audit).<\/li>\n<\/ul>\n\n\n\n<h3 class=\"wp-block-heading\">4.7. \u0418\u043d\u0442\u0435\u0433\u0440\u0430\u0446\u0438\u043e\u043d\u043d\u0430 \u0435\u043a\u043e\u0441\u0438\u0441\u0442\u0435\u043c\u0430 (Integration Ecosystem)<\/h3>\n\n\n\n<p class=\"wp-block-paragraph\">Kafka Connect \u043f\u0440\u0435\u0434\u043e\u0441\u0442\u0430\u0432\u044f \u0433\u043e\u0442\u043e\u0432\u0430 \u0438\u043d\u0444\u0440\u0430\u0441\u0442\u0440\u0443\u043a\u0442\u0443\u0440\u0430 \u0437\u0430 \u0438\u043d\u0442\u0435\u0433\u0440\u0430\u0446\u0438\u044f \u0441 \u0440\u0430\u0437\u043b\u0438\u0447\u043d\u0438 \u0441\u0438\u0441\u0442\u0435\u043c\u0438:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Databases.<\/li>\n\n\n\n<li>Cloud Services.<\/li>\n\n\n\n<li>File Systems.<\/li>\n\n\n\n<li>External Applications.<\/li>\n\n\n\n<li>\u0414\u0440\u0443\u0433\u0438 Data Sources \u0438 Data Sinks.<\/li>\n<\/ul>\n\n\n\n<h3 class=\"wp-block-heading\">4.8. \u0413\u0430\u0440\u0430\u043d\u0446\u0438\u0438 \u0437\u0430 \u0434\u043e\u0441\u0442\u0430\u0432\u043a\u0430 (Delivery Semantics)<\/h3>\n\n\n\n<p class=\"wp-block-paragraph\">Kafka \u043f\u043e\u0434\u0434\u044a\u0440\u0436\u0430 \u0442\u0440\u0438 \u043e\u0441\u043d\u043e\u0432\u043d\u0438 \u043c\u043e\u0434\u0435\u043b\u0430:<\/p>\n\n\n\n<figure class=\"wp-block-table\"><table class=\"has-fixed-layout\"><tbody><tr><th>\u041c\u043e\u0434\u0435\u043b<\/th><th>\u041e\u043f\u0438\u0441\u0430\u043d\u0438\u0435<\/th><\/tr><tr><td>At-most-once<\/td><td>\u0421\u044a\u043e\u0431\u0449\u0435\u043d\u0438\u0435\u0442\u043e \u0441\u0435 \u043e\u0431\u0440\u0430\u0431\u043e\u0442\u0432\u0430 \u043d\u0430\u0439-\u043c\u043d\u043e\u0433\u043e \u0432\u0435\u0434\u043d\u044a\u0436. \u0412\u044a\u0437\u043c\u043e\u0436\u043d\u0430 \u0435 \u0437\u0430\u0433\u0443\u0431\u0430 \u043d\u0430 \u0441\u044a\u043e\u0431\u0449\u0435\u043d\u0438\u044f.<\/td><\/tr><tr><td>At-least-once<\/td><td>\u0421\u044a\u043e\u0431\u0449\u0435\u043d\u0438\u0435\u0442\u043e \u0441\u0435 \u043e\u0431\u0440\u0430\u0431\u043e\u0442\u0432\u0430 \u043f\u043e\u043d\u0435 \u0432\u0435\u0434\u043d\u044a\u0436. \u0412\u044a\u0437\u043c\u043e\u0436\u043d\u0438 \u0441\u0430 \u0434\u0443\u0431\u043b\u0438\u0440\u0430\u043d\u0438\u044f.<\/td><\/tr><tr><td>Exactly-once (EOS)<\/td><td>\u041e\u0441\u0438\u0433\u0443\u0440\u044f\u0432\u0430 Exactly-once \u043e\u0431\u0440\u0430\u0431\u043e\u0442\u043a\u0430 \u0432 \u043f\u043e\u0434\u0434\u044a\u0440\u0436\u0430\u043d\u0438\u0442\u0435 Kafka workflows \u0447\u0440\u0435\u0437 Transactions \u0438 Idempotent Producers.<\/td><\/tr><\/tbody><\/table><\/figure>\n\n\n\n<p class=\"wp-block-paragraph\">\u0412\u0430\u0436\u043d\u043e: Exactly-once \u043d\u0435 \u043e\u0437\u043d\u0430\u0447\u0430\u0432\u0430 \u0430\u0432\u0442\u043e\u043c\u0430\u0442\u0438\u0447\u043d\u043e, \u0447\u0435 \u0432\u0441\u044f\u043a\u0430 \u0432\u044a\u043d\u0448\u043d\u0430 \u043e\u043f\u0435\u0440\u0430\u0446\u0438\u044f \u2013 \u043d\u0430\u043f\u0440\u0438\u043c\u0435\u0440 \u0437\u0430\u043f\u0438\u0441 \u0432 \u043f\u0440\u043e\u0438\u0437\u0432\u043e\u043b\u043d\u0430 Database \u0438\u043b\u0438 \u0438\u0437\u043f\u0440\u0430\u0449\u0430\u043d\u0435 \u043d\u0430 Email \u2013 \u0449\u0435 \u0441\u0435 \u0438\u0437\u043f\u044a\u043b\u043d\u0438 \u0442\u043e\u0447\u043d\u043e \u0432\u0435\u0434\u043d\u044a\u0436. \u0417\u0430 \u0442\u0430\u043a\u0438\u0432\u0430 \u0441\u0446\u0435\u043d\u0430\u0440\u0438\u0438 \u0441\u0430 \u043d\u0435\u043e\u0431\u0445\u043e\u0434\u0438\u043c\u0438 \u0434\u043e\u043f\u044a\u043b\u043d\u0438\u0442\u0435\u043b\u043d\u0438 \u043c\u0435\u0445\u0430\u043d\u0438\u0437\u043c\u0438 \u0437\u0430 \u043a\u043e\u043e\u0440\u0434\u0438\u043d\u0430\u0446\u0438\u044f \u0438 Idempotency.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">5. \u0412\u0430\u0436\u043d\u043e \u0437\u0430 Java Developer Interview<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">\u0417\u0430\u043f\u043e\u043c\u043d\u0435\u0442\u0435 \u0441\u043b\u0435\u0434\u043d\u0438\u0442\u0435 \u043f\u043e\u043d\u044f\u0442\u0438\u044f:<\/p>\n\n\n\n<ol class=\"wp-block-list\">\n<li>Topic \u2013 \u043b\u043e\u0433\u0438\u0447\u0435\u0441\u043a\u0430 \u043a\u0430\u0442\u0435\u0433\u043e\u0440\u0438\u044f \u0437\u0430 \u0441\u044a\u0445\u0440\u0430\u043d\u0435\u043d\u0438\u0435 \u043d\u0430 \u0441\u044a\u043e\u0431\u0449\u0435\u043d\u0438\u044f.<\/li>\n\n\n\n<li>Partition \u2013 \u0447\u0430\u0441\u0442 \u043e\u0442 Topic, \u043a\u043e\u044f\u0442\u043e \u043f\u043e\u0437\u0432\u043e\u043b\u044f\u0432\u0430 \u043f\u0430\u0440\u0430\u043b\u0435\u043b\u043d\u0430 \u043e\u0431\u0440\u0430\u0431\u043e\u0442\u043a\u0430.<\/li>\n\n\n\n<li>Producer \u2013 \u0438\u0437\u043f\u0440\u0430\u0449\u0430 \u0441\u044a\u043e\u0431\u0449\u0435\u043d\u0438\u044f \u043a\u044a\u043c Kafka.<\/li>\n\n\n\n<li>Consumer \u2013 \u0447\u0435\u0442\u0435 \u0441\u044a\u043e\u0431\u0449\u0435\u043d\u0438\u044f \u043e\u0442 Kafka.<\/li>\n\n\n\n<li>Consumer Group \u2013 \u0433\u0440\u0443\u043f\u0430 Consumers, \u043a\u043e\u0438\u0442\u043e \u0441\u0438 \u0440\u0430\u0437\u043f\u0440\u0435\u0434\u0435\u043b\u044f\u0442 Partitions.<\/li>\n\n\n\n<li>Offset \u2013 \u043f\u043e\u0437\u0438\u0446\u0438\u044f \u043d\u0430 \u0441\u044a\u043e\u0431\u0449\u0435\u043d\u0438\u0435 \u0432 \u0434\u0430\u0434\u0435\u043d Partition.<\/li>\n\n\n\n<li>Broker \u2013 Kafka Server, \u043a\u043e\u0439\u0442\u043e \u0441\u044a\u0445\u0440\u0430\u043d\u044f\u0432\u0430 \u0438 \u043e\u0431\u0441\u043b\u0443\u0436\u0432\u0430 \u0434\u0430\u043d\u043d\u0438\u0442\u0435.<\/li>\n\n\n\n<li>Replication \u2013 \u0441\u044a\u0437\u0434\u0430\u0432\u0430\u043d\u0435 \u043d\u0430 \u043a\u043e\u043f\u0438\u044f \u043d\u0430 Partitions \u0437\u0430 \u043d\u0430\u0434\u0435\u0436\u0434\u043d\u043e\u0441\u0442.<\/li>\n\n\n\n<li>Kafka Connect \u2013 \u0438\u043d\u0442\u0435\u0433\u0440\u0430\u0446\u0438\u044f \u0441 \u0432\u044a\u043d\u0448\u043d\u0438 \u0441\u0438\u0441\u0442\u0435\u043c\u0438.<\/li>\n\n\n\n<li>Kafka Streams \u2013 \u043e\u0431\u0440\u0430\u0431\u043e\u0442\u043a\u0430 \u043d\u0430 \u043f\u043e\u0442\u043e\u0446\u0438 \u043e\u0442 \u0441\u044a\u0431\u0438\u0442\u0438\u044f.<\/li>\n<\/ol>\n\n\n\n<p class=\"wp-block-paragraph\">\u041e\u0441\u043d\u043e\u0432\u0435\u043d \u0438\u0437\u0432\u043e\u0434: Apache Kafka \u0435 \u0440\u0430\u0437\u043f\u0440\u0435\u0434\u0435\u043b\u0435\u043d\u0430 Event Streaming \u043f\u043b\u0430\u0442\u0444\u043e\u0440\u043c\u0430, \u043a\u043e\u044f\u0442\u043e \u043f\u043e\u0437\u0432\u043e\u043b\u044f\u0432\u0430 \u043d\u0430\u0434\u0435\u0436\u0434\u0435\u043d \u043e\u0431\u043c\u0435\u043d, \u0441\u044a\u0445\u0440\u0430\u043d\u0435\u043d\u0438\u0435 \u0438 \u043e\u0431\u0440\u0430\u0431\u043e\u0442\u043a\u0430 \u043d\u0430 \u0433\u043e\u043b\u0435\u043c\u0438 \u043e\u0431\u0435\u043c\u0438 \u043e\u0442 \u0441\u044a\u0431\u0438\u0442\u0438\u044f \u0432 \u0440\u0435\u0430\u043b\u043d\u043e \u0432\u0440\u0435\u043c\u0435. \u0422\u044f \u0435 \u043e\u0441\u043e\u0431\u0435\u043d\u043e \u043f\u043e\u043b\u0435\u0437\u043d\u0430 \u043f\u0440\u0438 Microservices Architecture, Event-Driven Architecture \u0438 \u0441\u0438\u0441\u0442\u0435\u043c\u0438 \u0441 \u0433\u043e\u043b\u044f\u043c\u043e \u043d\u0430\u0442\u043e\u0432\u0430\u0440\u0432\u0430\u043d\u0435.<\/p>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h1 class=\"wp-block-heading\">Apache Kafka vs. RabbitMQ<\/h1>\n\n\n\n<p class=\"wp-block-paragraph\">Apache Kafka \u0438 RabbitMQ \u0441\u0430 \u0442\u0435\u0445\u043d\u043e\u043b\u043e\u0433\u0438\u0438 \u0437\u0430 \u043e\u0431\u043c\u0435\u043d \u043d\u0430 \u0441\u044a\u043e\u0431\u0449\u0435\u043d\u0438\u044f \u043c\u0435\u0436\u0434\u0443 \u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u044f (Message Broker \/ Messaging Systems), \u043d\u043e \u0438\u043c\u0430\u0442 \u0440\u0430\u0437\u043b\u0438\u0447\u043d\u0430 \u0430\u0440\u0445\u0438\u0442\u0435\u043a\u0442\u0443\u0440\u0430 \u0438 \u043f\u0440\u0435\u0434\u043d\u0430\u0437\u043d\u0430\u0447\u0435\u043d\u0438\u0435.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Kafka \u0435 \u043e\u0440\u0438\u0435\u043d\u0442\u0438\u0440\u0430\u043d\u0430 \u043a\u044a\u043c Event Streaming \u0438 \u043e\u0431\u0440\u0430\u0431\u043e\u0442\u043a\u0430 \u043d\u0430 \u0433\u043e\u043b\u0435\u043c\u0438 \u043f\u043e\u0442\u043e\u0446\u0438 \u043e\u0442 \u0434\u0430\u043d\u043d\u0438, \u0434\u043e\u043a\u0430\u0442\u043e RabbitMQ \u0435 \u0442\u0440\u0430\u0434\u0438\u0446\u0438\u043e\u043d\u0435\u043d Message Broker, \u043f\u043e\u0434\u0445\u043e\u0434\u044f\u0449 \u0437\u0430 Message Queues, Routing \u0438 \u0430\u0441\u0438\u043d\u0445\u0440\u043e\u043d\u043d\u0430 \u043a\u043e\u043c\u0443\u043d\u0438\u043a\u0430\u0446\u0438\u044f \u043c\u0435\u0436\u0434\u0443 \u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u044f.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">1. \u0421\u0440\u0430\u0432\u043d\u0435\u043d\u0438\u0435 \u043d\u0430 \u043e\u0441\u043d\u043e\u0432\u043d\u0438\u0442\u0435 \u0445\u0430\u0440\u0430\u043a\u0442\u0435\u0440\u0438\u0441\u0442\u0438\u043a\u0438<\/h2>\n\n\n\n<figure class=\"wp-block-table\"><table class=\"has-fixed-layout\"><tbody><tr><th>\u0425\u0430\u0440\u0430\u043a\u0442\u0435\u0440\u0438\u0441\u0442\u0438\u043a\u0430<\/th><th>Apache Kafka<\/th><th>RabbitMQ<\/th><\/tr><tr><td>\u0422\u04e9\u0440\u04e9\u043b<\/td><td>Distributed Event Streaming Platform<\/td><td>Traditional Message Broker<\/td><\/tr><tr><td>Data Model<\/td><td>Topics \u0438 Partitions (Append-only Logs)<\/td><td>Queues \u0438 Exchanges<\/td><\/tr><tr><td>Message Delivery<\/td><td>Publish-Subscribe \u0447\u0440\u0435\u0437 Consumer Groups; \u0441\u044a\u043e\u0431\u0449\u0435\u043d\u0438\u044f\u0442\u0430 \u043c\u043e\u0433\u0430\u0442 \u0434\u0430 \u0441\u0435 \u043f\u0440\u043e\u0447\u0438\u0442\u0430\u0442 \u043f\u043e\u0432\u0442\u043e\u0440\u043d\u043e.<\/td><td>Point-to-Point \u0447\u0440\u0435\u0437 Queues \u0438\u043b\u0438 Pub-Sub \u0447\u0440\u0435\u0437 Exchanges.<\/td><\/tr><tr><td>Throughput<\/td><td>\u041c\u043d\u043e\u0433\u043e \u0432\u0438\u0441\u043e\u043a \u2013 \u043f\u043e\u0434\u0445\u043e\u0434\u044f\u0449\u0430 \u0437\u0430 \u043c\u0438\u043b\u0438\u043e\u043d\u0438 \u0441\u044a\u043e\u0431\u0449\u0435\u043d\u0438\u044f \u0432 \u0441\u0435\u043a\u0443\u043d\u0434\u0430 \u043f\u0440\u0438 \u043f\u043e\u0434\u0445\u043e\u0434\u044f\u0449\u0430 \u0438\u043d\u0444\u0440\u0430\u0441\u0442\u0440\u0443\u043a\u0442\u0443\u0440\u0430.<\/td><td>\u0412\u0438\u0441\u043e\u043a, \u043d\u043e \u043f\u0440\u043e\u0438\u0437\u0432\u043e\u0434\u0438\u0442\u0435\u043b\u043d\u043e\u0441\u0442\u0442\u0430 \u0437\u0430\u0432\u0438\u0441\u0438 \u043e\u0442 \u043a\u043e\u043d\u0444\u0438\u0433\u0443\u0440\u0430\u0446\u0438\u044f\u0442\u0430, \u043f\u0440\u043e\u0442\u043e\u043a\u043e\u043b\u0430 \u0438 \u0440\u0430\u0437\u043c\u0435\u0440\u0430 \u043d\u0430 \u0441\u044a\u043e\u0431\u0449\u0435\u043d\u0438\u044f\u0442\u0430.<\/td><\/tr><tr><td>Latency<\/td><td>\u041d\u0438\u0441\u043a\u0430 \u043b\u0430\u0442\u0435\u043d\u0442\u043d\u043e\u0441\u0442, \u043e\u0431\u0438\u043a\u043d\u043e\u0432\u0435\u043d\u043e \u0432 \u043c\u0438\u043b\u0438\u0441\u0435\u043a\u0443\u043d\u0434\u0438.<\/td><td>\u041c\u043d\u043e\u0433\u043e \u043d\u0438\u0441\u043a\u0430 \u043b\u0430\u0442\u0435\u043d\u0442\u043d\u043e\u0441\u0442; \u043f\u043e\u0434\u0445\u043e\u0434\u044f\u0449 \u0437\u0430 Request\/Response \u043a\u043e\u043c\u0443\u043d\u0438\u043a\u0430\u0446\u0438\u044f.<\/td><\/tr><tr><td>Durability<\/td><td>\u0421\u044a\u043e\u0431\u0449\u0435\u043d\u0438\u044f\u0442\u0430 \u0441\u0435 \u0441\u044a\u0445\u0440\u0430\u043d\u044f\u0432\u0430\u0442 \u043d\u0430 \u0434\u0438\u0441\u043a \u0438 \u043c\u043e\u0433\u0430\u0442 \u0434\u0430 \u0441\u0435 \u0440\u0435\u043f\u043b\u0438\u043a\u0438\u0440\u0430\u0442 \u043c\u0435\u0436\u0434\u0443 Brokers.<\/td><td>\u041f\u043e\u0434\u0434\u044a\u0440\u0436\u0430 Persistent Messages \u0438 Durable Queues.<\/td><\/tr><tr><td>\u04e8\u0440\u0433\u04e9\u0442\u0433\u04e9\u0445 \u0447\u0430\u0434\u0432\u0430\u0440<\/td><td>\u0425\u043e\u0440\u0438\u0437\u043e\u043d\u0442\u0430\u043b\u043d\u043e \u043c\u0430\u0449\u0430\u0431\u0438\u0440\u0430\u043d\u0435 \u0447\u0440\u0435\u0437 Partitions \u0438 Brokers.<\/td><td>\u041f\u043e\u0434\u0434\u044a\u0440\u0436\u0430 Clustering \u0438 Distributed Queues \u0447\u0440\u0435\u0437 \u043f\u043e\u0434\u0445\u043e\u0434\u044f\u0449\u0438 \u043c\u0435\u0445\u0430\u043d\u0438\u0437\u043c\u0438.<\/td><\/tr><tr><td>Ordering<\/td><td>\u0413\u0430\u0440\u0430\u043d\u0442\u0438\u0440\u0430 \u0440\u0435\u0434\u0430 \u043d\u0430 \u0441\u044a\u043e\u0431\u0449\u0435\u043d\u0438\u044f\u0442\u0430 \u0432 \u0440\u0430\u043c\u043a\u0438\u0442\u0435 \u043d\u0430 \u0435\u0434\u0438\u043d Partition.<\/td><td>\u041f\u043e\u0434\u0434\u044a\u0440\u0436\u0430 FIFO \u0440\u0435\u0434 \u0432 Queue, \u043d\u043e \u043f\u0440\u0438 \u043a\u043e\u043d\u043a\u0443\u0440\u0438\u0440\u0430\u0449\u0438 \u0441\u0435 Consumers \u0438 \u043f\u043e\u0432\u0442\u043e\u0440\u043d\u0438 \u0434\u043e\u0441\u0442\u0430\u0432\u043a\u0438 \u0440\u0435\u0434\u044a\u0442 \u043c\u043e\u0436\u0435 \u0434\u0430 \u0441\u0435 \u043f\u0440\u043e\u043c\u0435\u043d\u0438.<\/td><\/tr><tr><td>Use Cases<\/td><td>Event Streaming, Data Pipelines, Log Aggregation, IoT \u0438 Real-Time Analytics.<\/td><td>Task Queues, RPC Communication, Background Jobs \u0438 Reliable Messaging.<\/td><\/tr><tr><td>Integration<\/td><td>Kafka Connect, Kafka Streams, Apache Flink, Apache Spark.<\/td><td>AMQP, MQTT, STOMP, \u043c\u043d\u043e\u0436\u0435\u0441\u0442\u0432\u043e Language Clients \u0438 Plugins.<\/td><\/tr><tr><td>Delivery Guarantees<\/td><td>At-most-once, At-least-once \u0438 Exactly-once \u0432 \u043f\u043e\u0434\u0434\u044a\u0440\u0436\u0430\u043d\u0438\u0442\u0435 \u0441\u0446\u0435\u043d\u0430\u0440\u0438\u0438.<\/td><td>At-most-once \u0438 At-least-once; Exactly-once \u0435\u0444\u0435\u043a\u0442\u044a\u0442 \u0438\u0437\u0438\u0441\u043a\u0432\u0430 \u0434\u043e\u043f\u044a\u043b\u043d\u0438\u0442\u0435\u043b\u043d\u0430 \u043e\u0431\u0440\u0430\u0431\u043e\u0442\u043a\u0430 \u0438 Idempotency.<\/td><\/tr><tr><td>Best at<\/td><td>Big Data Streaming, Analytics \u0438 Replayable Event Logs.<\/td><td>Message Routing, Task Queues \u0438 Transactional Messaging.<\/td><\/tr><\/tbody><\/table><\/figure>\n\n\n\n<h2 class=\"wp-block-heading\">2. \u041e\u0441\u043d\u043e\u0432\u043d\u0430 \u0440\u0430\u0437\u043b\u0438\u043a\u0430 \u0432 \u0430\u0440\u0445\u0438\u0442\u0435\u043a\u0442\u0443\u0440\u0430\u0442\u0430 (Architecture)<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">Apache Kafka \u2013 Event Streaming<\/p>\n\n\n\n<figure class=\"wp-block-image size-full\"><a href=\"https:\/\/i0.wp.com\/vkrastev1blog.com\/wp-content\/uploads\/2026\/05\/image-3.png?ssl=1\"><img data-recalc-dims=\"1\" loading=\"lazy\" decoding=\"async\" width=\"971\" height=\"505\" data-attachment-id=\"3306\" data-permalink=\"https:\/\/vkrastev1blog.com\/2026\/05\/29\/questions-and-informations-prepairing-for-java-developer-job-interview\/image-53\/\" data-orig-file=\"https:\/\/i0.wp.com\/vkrastev1blog.com\/wp-content\/uploads\/2026\/05\/image-3.png?fit=971%2C505&amp;ssl=1\" data-orig-size=\"971,505\" data-comments-opened=\"1\" data-image-title=\"image\" data-image-description=\"\" data-image-caption=\"\" data-large-file=\"https:\/\/i0.wp.com\/vkrastev1blog.com\/wp-content\/uploads\/2026\/05\/image-3.png?fit=971%2C505&amp;ssl=1\" src=\"https:\/\/i0.wp.com\/vkrastev1blog.com\/wp-content\/uploads\/2026\/05\/image-3.png?resize=971%2C505&#038;ssl=1\" alt=\"\" class=\"wp-image-3306\" srcset=\"https:\/\/i0.wp.com\/vkrastev1blog.com\/wp-content\/uploads\/2026\/05\/image-3.png?w=971&amp;ssl=1 971w, https:\/\/i0.wp.com\/vkrastev1blog.com\/wp-content\/uploads\/2026\/05\/image-3.png?resize=300%2C156&amp;ssl=1 300w, https:\/\/i0.wp.com\/vkrastev1blog.com\/wp-content\/uploads\/2026\/05\/image-3.png?resize=768%2C399&amp;ssl=1 768w\" sizes=\"auto, (max-width: 971px) 100vw, 971px\" \/><\/a><\/figure>\n\n\n\n<p class=\"wp-block-paragraph\">RabbitMQ &#8211; Message Queuing<\/p>\n\n\n\n<figure class=\"wp-block-image size-full\"><a href=\"https:\/\/i0.wp.com\/vkrastev1blog.com\/wp-content\/uploads\/2026\/05\/image-4.png?ssl=1\"><img data-recalc-dims=\"1\" loading=\"lazy\" decoding=\"async\" width=\"967\" height=\"522\" data-attachment-id=\"3307\" data-permalink=\"https:\/\/vkrastev1blog.com\/2026\/05\/29\/questions-and-informations-prepairing-for-java-developer-job-interview\/image-54\/\" data-orig-file=\"https:\/\/i0.wp.com\/vkrastev1blog.com\/wp-content\/uploads\/2026\/05\/image-4.png?fit=967%2C522&amp;ssl=1\" data-orig-size=\"967,522\" data-comments-opened=\"1\" data-image-title=\"image\" data-image-description=\"\" data-image-caption=\"\" data-large-file=\"https:\/\/i0.wp.com\/vkrastev1blog.com\/wp-content\/uploads\/2026\/05\/image-4.png?fit=967%2C522&amp;ssl=1\" src=\"https:\/\/i0.wp.com\/vkrastev1blog.com\/wp-content\/uploads\/2026\/05\/image-4.png?resize=967%2C522&#038;ssl=1\" alt=\"\" class=\"wp-image-3307\" srcset=\"https:\/\/i0.wp.com\/vkrastev1blog.com\/wp-content\/uploads\/2026\/05\/image-4.png?w=967&amp;ssl=1 967w, https:\/\/i0.wp.com\/vkrastev1blog.com\/wp-content\/uploads\/2026\/05\/image-4.png?resize=300%2C162&amp;ssl=1 300w, https:\/\/i0.wp.com\/vkrastev1blog.com\/wp-content\/uploads\/2026\/05\/image-4.png?resize=768%2C415&amp;ssl=1 768w\" sizes=\"auto, (max-width: 967px) 100vw, 967px\" \/><\/a><\/figure>\n\n\n\n<h2 class=\"wp-block-heading\">3. \u041e\u0441\u043d\u043e\u0432\u043d\u0438 \u043f\u0440\u0435\u0434\u0438\u043c\u0441\u0442\u0432\u0430 \u043d\u0430 Kafka<\/h2>\n\n\n\n<ul class=\"wp-block-list\">\n<li>High Throughput \u2013 \u043e\u0431\u0440\u0430\u0431\u043e\u0442\u0432\u0430 \u043c\u043d\u043e\u0433\u043e \u0433\u043e\u043b\u0435\u043c\u0438 \u043e\u0431\u0435\u043c\u0438 \u043e\u0442 \u0441\u044a\u043e\u0431\u0449\u0435\u043d\u0438\u044f.<\/li>\n\n\n\n<li>Event Replay \u2013 \u043f\u043e\u0437\u0432\u043e\u043b\u044f\u0432\u0430 \u043f\u043e\u0432\u0442\u043e\u0440\u043d\u043e \u043f\u0440\u043e\u0447\u0438\u0442\u0430\u043d\u0435 \u043d\u0430 \u0441\u044a\u043e\u0431\u0449\u0435\u043d\u0438\u044f\u0442\u0430 \u0447\u0440\u0435\u0437 Offset.<\/li>\n\n\n\n<li>Scalability \u2013 \u043b\u0435\u0441\u043d\u043e \u0445\u043e\u0440\u0438\u0437\u043e\u043d\u0442\u0430\u043b\u043d\u043e \u043c\u0430\u0449\u0430\u0431\u0438\u0440\u0430\u043d\u0435 \u0447\u0440\u0435\u0437 Partitions \u0438 Brokers.<\/li>\n\n\n\n<li>Event Streaming \u2013 \u043f\u043e\u0434\u0445\u043e\u0434\u044f\u0449\u0430 \u0437\u0430 Real-Time Analytics \u0438 Data Pipelines.<\/li>\n\n\n\n<li>Multiple Consumers \u2013 \u0440\u0430\u0437\u043b\u0438\u0447\u043d\u0438 Consumer Groups \u043c\u043e\u0433\u0430\u0442 \u043d\u0435\u0437\u0430\u0432\u0438\u0441\u0438\u043c\u043e \u0434\u0430 \u043e\u0431\u0440\u0430\u0431\u043e\u0442\u0432\u0430\u0442 \u0435\u0434\u043d\u0438 \u0438 \u0441\u044a\u0449\u0438 \u0441\u044a\u0431\u0438\u0442\u0438\u044f.<\/li>\n<\/ul>\n\n\n\n<h2 class=\"wp-block-heading\">4. \u041e\u0441\u043d\u043e\u0432\u043d\u0438 \u043f\u0440\u0435\u0434\u0438\u043c\u0441\u0442\u0432\u0430 \u043d\u0430 RabbitMQ<\/h2>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Advanced Message Routing \u2013 \u043c\u0430\u0440\u0448\u0440\u0443\u0442\u0438\u0437\u0438\u0440\u0430\u043d\u0435 \u0447\u0440\u0435\u0437 Direct, Topic, Fanout \u0438 Headers Exchanges.<\/li>\n\n\n\n<li>Message Acknowledgement \u2013 \u043f\u043e\u0442\u0432\u044a\u0440\u0436\u0434\u0430\u0432\u0430\u043d\u0435 \u043d\u0430 \u0443\u0441\u043f\u0435\u0448\u043d\u043e \u043e\u0431\u0440\u0430\u0431\u043e\u0442\u0435\u043d\u0438 \u0441\u044a\u043e\u0431\u0449\u0435\u043d\u0438\u044f.<\/li>\n\n\n\n<li>Message Queues \u2013 \u043f\u043e\u0434\u0445\u043e\u0434\u044f\u0449 \u0437\u0430 Background Jobs \u0438 Task Processing.<\/li>\n\n\n\n<li>Flexible Protocols \u2013 \u043f\u043e\u0434\u0434\u044a\u0440\u0436\u0430 AMQP, MQTT \u0438 STOMP.<\/li>\n\n\n\n<li>Dead Letter Exchanges (DLX) \u2013 \u043e\u0431\u0440\u0430\u0431\u043e\u0442\u043a\u0430 \u043d\u0430 \u0441\u044a\u043e\u0431\u0449\u0435\u043d\u0438\u044f, \u043a\u043e\u0438\u0442\u043e \u043d\u0435 \u043c\u043e\u0433\u0430\u0442 \u0434\u0430 \u0431\u044a\u0434\u0430\u0442 \u0434\u043e\u0441\u0442\u0430\u0432\u0435\u043d\u0438 \u0438\u043b\u0438 \u043e\u0431\u0440\u0430\u0431\u043e\u0442\u0435\u043d\u0438 \u0443\u0441\u043f\u0435\u0448\u043d\u043e.<\/li>\n\n\n\n<li>Priority Queues \u2013 \u0432\u044a\u0437\u043c\u043e\u0436\u043d\u043e\u0441\u0442 \u0437\u0430 \u043f\u0440\u0438\u043e\u0440\u0438\u0442\u0438\u0437\u0438\u0440\u0430\u043d\u0435 \u043d\u0430 \u0441\u044a\u043e\u0431\u0449\u0435\u043d\u0438\u044f\u0442\u0430.<\/li>\n<\/ul>\n\n\n\n<h2 class=\"wp-block-heading\">5. \u041a\u043e\u0433\u0430 \u0434\u0430 \u0438\u0437\u0431\u0435\u0440\u0435\u043c Kafka \u0438 \u043a\u043e\u0433\u0430 RabbitMQ?<\/h2>\n\n\n\n<h3 class=\"wp-block-heading\">\u0418\u0437\u0431\u0435\u0440\u0435\u0442\u0435 Apache Kafka, \u043a\u043e\u0433\u0430\u0442\u043e:<\/h3>\n\n\n\n<ul class=\"wp-block-list\">\n<li>\u0420\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u0432\u0430\u0442\u0435 Event-Driven Microservices Architecture.<\/li>\n\n\n\n<li>\u0422\u0440\u044f\u0431\u0432\u0430 \u0434\u0430 \u043e\u0431\u0440\u0430\u0431\u043e\u0442\u0432\u0430\u0442\u0435 \u0433\u043e\u043b\u0435\u043c\u0438 \u043f\u043e\u0442\u043e\u0446\u0438 \u043e\u0442 \u0441\u044a\u0431\u0438\u0442\u0438\u044f.<\/li>\n\n\n\n<li>\u0418\u0437\u0433\u0440\u0430\u0436\u0434\u0430\u0442\u0435 Real-Time Analytics \u0441\u0438\u0441\u0442\u0435\u043c\u0438.<\/li>\n\n\n\n<li>\u0418\u043c\u0430\u0442\u0435 \u043d\u0443\u0436\u0434\u0430 \u043e\u0442 Event Replay.<\/li>\n\n\n\n<li>\u0421\u044a\u0437\u0434\u0430\u0432\u0430\u0442\u0435 Data Pipelines.<\/li>\n\n\n\n<li>\u041c\u043d\u043e\u0436\u0435\u0441\u0442\u0432\u043e \u043d\u0435\u0437\u0430\u0432\u0438\u0441\u0438\u043c\u0438 \u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u044f \u0442\u0440\u044f\u0431\u0432\u0430 \u0434\u0430 \u043f\u043e\u043b\u0443\u0447\u0430\u0432\u0430\u0442 \u0435\u0434\u043d\u0438 \u0438 \u0441\u044a\u0449\u0438 \u0441\u044a\u0431\u0438\u0442\u0438\u044f.<\/li>\n<\/ul>\n\n\n\n<h3 class=\"wp-block-heading\">\u0418\u0437\u0431\u0435\u0440\u0435\u0442\u0435 RabbitMQ, \u043a\u043e\u0433\u0430\u0442\u043e:<\/h3>\n\n\n\n<ul class=\"wp-block-list\">\n<li>\u0418\u0437\u0433\u0440\u0430\u0436\u0434\u0430\u0442\u0435 Task Queues \u0438 Background Jobs.<\/li>\n\n\n\n<li>\u0418\u043c\u0430\u0442\u0435 \u043d\u0443\u0436\u0434\u0430 \u043e\u0442 \u0441\u043b\u043e\u0436\u043d\u0438 Message Routing \u043f\u0440\u0430\u0432\u0438\u043b\u0430.<\/li>\n\n\n\n<li>\u0418\u0437\u043f\u043e\u043b\u0437\u0432\u0430\u0442\u0435 \u0430\u0441\u0438\u043d\u0445\u0440\u043e\u043d\u043d\u0430 Request\/Response \u043a\u043e\u043c\u0443\u043d\u0438\u043a\u0430\u0446\u0438\u044f.<\/li>\n\n\n\n<li>\u0418\u0441\u043a\u0430\u0442\u0435 Message Acknowledgement \u0438 \u043a\u043e\u043d\u0442\u0440\u043e\u043b \u0432\u044a\u0440\u0445\u0443 \u0434\u043e\u0441\u0442\u0430\u0432\u043a\u0430\u0442\u0430.<\/li>\n\n\n\n<li>\u0418\u0437\u0433\u0440\u0430\u0436\u0434\u0430\u0442\u0435 \u0441\u0438\u0441\u0442\u0435\u043c\u0438 \u0437\u0430 \u043e\u0431\u0440\u0430\u0431\u043e\u0442\u043a\u0430 \u043d\u0430 \u043f\u043e\u0440\u044a\u0447\u043a\u0438, \u043f\u043b\u0430\u0449\u0430\u043d\u0438\u044f \u0438 \u0438\u0437\u0432\u0435\u0441\u0442\u0438\u044f.<\/li>\n\n\n\n<li>\u041d\u0443\u0436\u0434\u0430\u0435\u0442\u0435 \u0441\u0435 \u043e\u0442 \u0442\u0440\u0430\u0434\u0438\u0446\u0438\u043e\u043d\u0435\u043d Message Broker \u0441 \u0433\u044a\u0432\u043a\u0430\u0432\u043e \u043c\u0430\u0440\u0448\u0440\u0443\u0442\u0438\u0437\u0438\u0440\u0430\u043d\u0435.<\/li>\n<\/ul>\n\n\n\n<h2 class=\"wp-block-heading\">6. \u041c\u043e\u0433\u0430\u0442 \u043b\u0438 Kafka \u0438 RabbitMQ \u0434\u0430 \u0441\u0435 \u0438\u0437\u043f\u043e\u043b\u0437\u0432\u0430\u0442 \u0437\u0430\u0435\u0434\u043d\u043e?<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">\u0414\u0430. \u0412 \u043d\u044f\u043a\u043e\u0438 Enterprise \u0441\u0438\u0441\u0442\u0435\u043c\u0438 \u0434\u0432\u0435\u0442\u0435 \u0442\u0435\u0445\u043d\u043e\u043b\u043e\u0433\u0438\u0438 \u0441\u0435 \u0438\u0437\u043f\u043e\u043b\u0437\u0432\u0430\u0442 \u0435\u0434\u043d\u043e\u0432\u0440\u0435\u043c\u0435\u043d\u043d\u043e.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">\u041d\u0430\u043f\u0440\u0438\u043c\u0435\u0440 \u043f\u0440\u0438 Online Shop:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>RabbitMQ \u2013 \u0438\u0437\u043f\u0440\u0430\u0449\u0430 \u0437\u0430\u0434\u0430\u0447\u0438 \u043a\u044a\u043c Payment Service \u0438 Notification Service.<\/li>\n\n\n\n<li>Kafka \u2013 \u0441\u044a\u0445\u0440\u0430\u043d\u044f\u0432\u0430 \u0441\u044a\u0431\u0438\u0442\u0438\u044f \u043a\u0430\u0442\u043e <code>OrderCreated<\/code>, <code>PaymentCompleted<\/code> \u0431\u043e\u043b\u043e\u043d <code>OrderShipped<\/code> \u0437\u0430 \u043f\u043e\u0441\u043b\u0435\u0434\u0432\u0430\u0449\u0430 \u043e\u0431\u0440\u0430\u0431\u043e\u0442\u043a\u0430, Analytics \u0438 Event Replay.<\/li>\n<\/ul>\n\n\n\n<p class=\"wp-block-paragraph\">\u0422\u0430\u043a\u0430 RabbitMQ \u043c\u043e\u0436\u0435 \u0434\u0430 \u0443\u043f\u0440\u0430\u0432\u043b\u044f\u0432\u0430 \u043e\u043f\u0435\u0440\u0430\u0442\u0438\u0432\u043d\u0438\u0442\u0435 \u0437\u0430\u0434\u0430\u0447\u0438, \u0430 Kafka \u2013 \u043f\u043e\u0442\u043e\u043a\u0430 \u043e\u0442 \u0431\u0438\u0437\u043d\u0435\u0441 \u0441\u044a\u0431\u0438\u0442\u0438\u044f.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">\u0412\u0430\u0436\u043d\u043e \u0437\u0430 Java Developer Interview<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">\u0425\u0430\u043c\u0433\u0438\u0439\u043d \u0447\u0443\u0445\u0430\u043b \u044f\u043b\u0433\u0430\u0430\u0433 \u0441\u0430\u043d\u0430\u0430\u0440\u0430\u0439:<\/p>\n\n\n\n<figure class=\"wp-block-table\"><table class=\"has-fixed-layout\"><tbody><tr><th>Apache Kafka<\/th><th>RabbitMQ<\/th><\/tr><tr><td>Event Streaming Platform<\/td><td>Message Broker<\/td><\/tr><tr><td>Topics \u0438 Partitions<\/td><td>Exchanges \u0438 Queues<\/td><\/tr><tr><td>\u0421\u044a\u043e\u0431\u0449\u0435\u043d\u0438\u044f\u0442\u0430 \u0441\u0435 \u0437\u0430\u043f\u0430\u0437\u0432\u0430\u0442 \u0441\u043f\u043e\u0440\u0435\u0434 Retention Policy.<\/td><td>\u0421\u044a\u043e\u0431\u0449\u0435\u043d\u0438\u044f\u0442\u0430 \u043e\u0431\u0438\u043a\u043d\u043e\u0432\u0435\u043d\u043e \u0441\u0435 \u043f\u0440\u0435\u043c\u0430\u0445\u0432\u0430\u0442 \u0441\u043b\u0435\u0434 Acknowledgement.<\/td><\/tr><tr><td>Consumer Groups \u0438 Offsets<\/td><td>Consumers \u0438 Message Acknowledgements<\/td><\/tr><tr><td>\u041f\u043e\u0434\u0445\u043e\u0434\u044f\u0449\u0430 \u0437\u0430 \u0433\u043e\u043b\u0435\u043c\u0438 \u043f\u043e\u0442\u043e\u0446\u0438 \u043e\u0442 \u0434\u0430\u043d\u043d\u0438.<\/td><td>\u041f\u043e\u0434\u0445\u043e\u0434\u044f\u0449 \u0437\u0430 Task Queues \u0438 Message Routing.<\/td><\/tr><\/tbody><\/table><\/figure>\n\n\n\n<p class=\"wp-block-paragraph\">\u041e\u0441\u043d\u043e\u0432\u0435\u043d \u0438\u0437\u0432\u043e\u0434:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Kafka = Data Streaming Backbone \u2013 \u0441\u044a\u0445\u0440\u0430\u043d\u0435\u043d\u0438\u0435 \u0438 \u043e\u0431\u0440\u0430\u0431\u043e\u0442\u043a\u0430 \u043d\u0430 \u043f\u043e\u0442\u043e\u0446\u0438 \u043e\u0442 \u0441\u044a\u0431\u0438\u0442\u0438\u044f.<\/li>\n\n\n\n<li>RabbitMQ = Messaging Backbone \u2013 \u043c\u0430\u0440\u0448\u0440\u0443\u0442\u0438\u0437\u0438\u0440\u0430\u043d\u0435 \u0438 \u0434\u043e\u0441\u0442\u0430\u0432\u043a\u0430 \u043d\u0430 \u0441\u044a\u043e\u0431\u0449\u0435\u043d\u0438\u044f \u043c\u0435\u0436\u0434\u0443 \u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u044f.<\/li>\n<\/ul>\n\n\n\n<p class=\"wp-block-paragraph\">\u041d\u0438\u0442\u043e \u0435\u0434\u043d\u0430 \u043e\u0442 \u0434\u0432\u0435\u0442\u0435 \u0442\u0435\u0445\u043d\u043e\u043b\u043e\u0433\u0438\u0438 \u043d\u0435 \u0435 \u0443\u043d\u0438\u0432\u0435\u0440\u0441\u0430\u043b\u043d\u043e \u043f\u043e-\u0434\u043e\u0431\u0440\u0430. \u0418\u0437\u0431\u043e\u0440\u044a\u0442 \u0437\u0430\u0432\u0438\u0441\u0438 \u043e\u0442 \u0430\u0440\u0445\u0438\u0442\u0435\u043a\u0442\u0443\u0440\u0430\u0442\u0430 \u0438 \u043a\u043e\u043d\u043a\u0440\u0435\u0442\u043d\u0438\u0442\u0435 \u0438\u0437\u0438\u0441\u043a\u0432\u0430\u043d\u0438\u044f \u043d\u0430 \u0441\u0438\u0441\u0442\u0435\u043c\u0430\u0442\u0430.<\/p>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h1 class=\"wp-block-heading\">Livelock \u0432 Threads (Livelock \u043f\u0440\u0438 \u043d\u0438\u0448\u043a\u0438\u0442\u0435)<\/h1>\n\n\n\n<p class=\"wp-block-paragraph\">Livelock \u0435 \u043f\u0440\u043e\u0431\u043b\u0435\u043c \u043f\u0440\u0438 Concurrent Programming \u0432 Java, \u043f\u0440\u0438 \u043a\u043e\u0439\u0442\u043e \u0434\u0432\u0435 \u0438\u043b\u0438 \u043f\u043e\u0432\u0435\u0447\u0435 Threads \u043f\u0440\u043e\u0434\u044a\u043b\u0436\u0430\u0432\u0430\u0442 \u0430\u043a\u0442\u0438\u0432\u043d\u043e \u0434\u0430 \u0440\u0435\u0430\u0433\u0438\u0440\u0430\u0442 \u0435\u0434\u043d\u0430 \u043d\u0430 \u0434\u0440\u0443\u0433\u0430, \u043e\u043f\u0438\u0442\u0432\u0430\u0439\u043a\u0438 \u0441\u0435 \u0434\u0430 \u0440\u0430\u0437\u0440\u0435\u0448\u0430\u0442 \u043a\u043e\u043d\u0444\u043b\u0438\u043a\u0442, \u043d\u043e \u0432 \u043a\u0440\u0430\u0439\u043d\u0430 \u0441\u043c\u0435\u0442\u043a\u0430 \u043d\u0438\u0442\u043e \u0435\u0434\u043d\u0430 \u043e\u0442 \u0442\u044f\u0445 \u043d\u0435 \u0443\u0441\u043f\u044f\u0432\u0430 \u0434\u0430 \u043f\u043e\u0441\u0442\u0438\u0433\u043d\u0435 \u043d\u0430\u043f\u0440\u0435\u0434\u044a\u043a (Progress).<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">\u0417\u0430 \u0440\u0430\u0437\u043b\u0438\u043a\u0430 \u043e\u0442 Deadlock, \u043f\u0440\u0438 \u043a\u043e\u0439\u0442\u043e \u043d\u0438\u0448\u043a\u0438\u0442\u0435 \u0441\u0430 \u0431\u043b\u043e\u043a\u0438\u0440\u0430\u043d\u0438 \u0438 \u0447\u0430\u043a\u0430\u0442 \u0431\u0435\u0437\u043a\u0440\u0430\u0439\u043d\u043e, \u043f\u0440\u0438 Livelock \u043d\u0438\u0448\u043a\u0438\u0442\u0435 \u043f\u0440\u043e\u0434\u044a\u043b\u0436\u0430\u0432\u0430\u0442 \u0434\u0430 \u0440\u0430\u0431\u043e\u0442\u044f\u0442 \u0438 \u0434\u0430 \u043f\u0440\u043e\u043c\u0435\u043d\u044f\u0442 \u0441\u044a\u0441\u0442\u043e\u044f\u043d\u0438\u0435\u0442\u043e \u0441\u0438, \u043d\u043e \u043d\u0435 \u043c\u043e\u0433\u0430\u0442 \u0434\u0430 \u0437\u0430\u0432\u044a\u0440\u0448\u0430\u0442 \u0437\u0430\u0434\u0430\u0447\u0438\u0442\u0435 \u0441\u0438.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">1. \u041e\u0441\u043d\u043e\u0432\u043d\u0438 \u0445\u0430\u0440\u0430\u043a\u0442\u0435\u0440\u0438\u0441\u0442\u0438\u043a\u0438 (Key Characteristics of Livelock)<\/h2>\n\n\n\n<ol class=\"wp-block-list\">\n<li>Threads are active \u2013 \u043d\u0438\u0448\u043a\u0438\u0442\u0435 \u043d\u0435 \u0441\u0430 \u0431\u043b\u043e\u043a\u0438\u0440\u0430\u043d\u0438, \u0430 \u043f\u0440\u043e\u0434\u044a\u043b\u0436\u0430\u0432\u0430\u0442 \u0434\u0430 \u0438\u0437\u043f\u044a\u043b\u043d\u044f\u0432\u0430\u0442 \u0438\u043d\u0441\u0442\u0440\u0443\u043a\u0446\u0438\u0438.<\/li>\n\n\n\n<li>Continuous State Changes \u2013 \u043d\u0435\u043f\u0440\u0435\u043a\u044a\u0441\u043d\u0430\u0442\u043e \u043f\u0440\u043e\u043c\u0435\u043d\u044f\u0442 \u0441\u044a\u0441\u0442\u043e\u044f\u043d\u0438\u0435\u0442\u043e \u0441\u0438 \u0432 \u043e\u0442\u0433\u043e\u0432\u043e\u0440 \u043d\u0430 \u0434\u0435\u0439\u0441\u0442\u0432\u0438\u044f\u0442\u0430 \u043d\u0430 \u0434\u0440\u0443\u0433\u0438\u0442\u0435 \u043d\u0438\u0448\u043a\u0438.<\/li>\n\n\n\n<li>No Progress \u2013 \u0432\u044a\u043f\u0440\u0435\u043a\u0438 \u0430\u043a\u0442\u0438\u0432\u043d\u043e\u0441\u0442\u0442\u0430 \u0441\u0438, \u043d\u0435 \u043f\u043e\u0441\u0442\u0438\u0433\u0430\u0442 \u043d\u0430\u043f\u0440\u0435\u0434\u044a\u043a \u0438 \u043d\u0435 \u0437\u0430\u0432\u044a\u0440\u0448\u0432\u0430\u0442 \u0437\u0430\u0434\u0430\u0447\u0438\u0442\u0435 \u0441\u0438.<\/li>\n\n\n\n<li>Repeated Conflict Resolution \u2013 \u043c\u043d\u043e\u0433\u043e\u043a\u0440\u0430\u0442\u043d\u043e \u0441\u0435 \u043e\u043f\u0438\u0442\u0432\u0430\u0442 \u0434\u0430 \u0440\u0430\u0437\u0440\u0435\u0448\u0430\u0442 \u0435\u0434\u0438\u043d \u0438 \u0441\u044a\u0449 \u043a\u043e\u043d\u0444\u043b\u0438\u043a\u0442, \u043d\u043e \u0434\u0435\u0439\u0441\u0442\u0432\u0438\u044f\u0442\u0430 \u0438\u043c \u0432\u0437\u0430\u0438\u043c\u043d\u043e \u0441\u0438 \u043f\u0440\u0435\u0447\u0430\u0442.<\/li>\n<\/ol>\n\n\n\n<h2 class=\"wp-block-heading\">2. \u041f\u0440\u0438\u043c\u0435\u0440 \u0437\u0430 Livelock<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">\u041f\u0440\u0435\u0434\u0441\u0442\u0430\u0432\u0435\u0442\u0435 \u0441\u0438 \u0434\u0432\u0430\u043c\u0430 \u0434\u0443\u0448\u0438, \u043a\u043e\u0438\u0442\u043e \u0441\u0435 \u043e\u043f\u0438\u0442\u0432\u0430\u0442 \u0434\u0430 \u0441\u0435 \u0440\u0430\u0437\u043c\u0438\u043d\u0430\u0442 \u0432 \u0442\u0435\u0441\u0435\u043d \u043a\u043e\u0440\u0438\u0434\u043e\u0440.<\/p>\n\n\n\n<figure class=\"wp-block-image size-full\"><a href=\"https:\/\/i0.wp.com\/vkrastev1blog.com\/wp-content\/uploads\/2026\/05\/image-5.png?ssl=1\"><img data-recalc-dims=\"1\" loading=\"lazy\" decoding=\"async\" width=\"970\" height=\"541\" data-attachment-id=\"3311\" data-permalink=\"https:\/\/vkrastev1blog.com\/2026\/05\/29\/questions-and-informations-prepairing-for-java-developer-job-interview\/image-55\/\" data-orig-file=\"https:\/\/i0.wp.com\/vkrastev1blog.com\/wp-content\/uploads\/2026\/05\/image-5.png?fit=970%2C541&amp;ssl=1\" data-orig-size=\"970,541\" data-comments-opened=\"1\" data-image-title=\"image\" data-image-description=\"\" data-image-caption=\"\" data-large-file=\"https:\/\/i0.wp.com\/vkrastev1blog.com\/wp-content\/uploads\/2026\/05\/image-5.png?fit=970%2C541&amp;ssl=1\" src=\"https:\/\/i0.wp.com\/vkrastev1blog.com\/wp-content\/uploads\/2026\/05\/image-5.png?resize=970%2C541&#038;ssl=1\" alt=\"\" class=\"wp-image-3311\" srcset=\"https:\/\/i0.wp.com\/vkrastev1blog.com\/wp-content\/uploads\/2026\/05\/image-5.png?w=970&amp;ssl=1 970w, https:\/\/i0.wp.com\/vkrastev1blog.com\/wp-content\/uploads\/2026\/05\/image-5.png?resize=300%2C167&amp;ssl=1 300w, https:\/\/i0.wp.com\/vkrastev1blog.com\/wp-content\/uploads\/2026\/05\/image-5.png?resize=768%2C428&amp;ssl=1 768w\" sizes=\"auto, (max-width: 970px) 100vw, 970px\" \/><\/a><\/figure>\n\n\n\n<ul class=\"wp-block-list\">\n<li>\u041f\u044a\u0440\u0432\u0438\u044f\u0442 \u0447\u043e\u0432\u0435\u043a \u043f\u0440\u0430\u0432\u0438 \u043a\u0440\u0430\u0447\u043a\u0430 \u043d\u0430\u043b\u044f\u0432\u043e, \u0437\u0430 \u0434\u0430 \u043f\u0440\u043e\u043f\u0443\u0441\u043d\u0435 \u0432\u0442\u043e\u0440\u0438\u044f.<\/li>\n\n\n\n<li>\u0412\u0442\u043e\u0440\u0438\u044f\u0442 \u0441\u044a\u0449\u043e \u043f\u0440\u0430\u0432\u0438 \u043a\u0440\u0430\u0447\u043a\u0430 \u043d\u0430\u043b\u044f\u0432\u043e.<\/li>\n\n\n\n<li>\u041f\u044a\u0440\u0432\u0438\u044f\u0442 \u043e\u0442\u043d\u043e\u0432\u043e \u0441\u0435 \u043e\u043f\u0438\u0442\u0432\u0430 \u0434\u0430 \u043e\u0442\u0441\u0442\u044a\u043f\u0438.<\/li>\n\n\n\n<li>\u0412\u0442\u043e\u0440\u0438\u044f\u0442 \u043f\u0440\u0430\u0432\u0438 \u0441\u044a\u0449\u043e\u0442\u043e.<\/li>\n<\/ul>\n\n\n\n<p class=\"wp-block-paragraph\">\u0422\u0430\u043a\u0430 \u0434\u0432\u0430\u043c\u0430\u0442\u0430 \u043d\u0435\u043f\u0440\u0435\u043a\u044a\u0441\u043d\u0430\u0442\u043e \u043f\u0440\u043e\u043c\u0435\u043d\u044f\u0442 \u043f\u043e\u0437\u0438\u0446\u0438\u044f\u0442\u0430 \u0441\u0438, \u043d\u043e \u043d\u0438\u043a\u043e\u0439 \u043d\u0435 \u0443\u0441\u043f\u044f\u0432\u0430 \u0434\u0430 \u043f\u0440\u0435\u043c\u0438\u043d\u0435.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">\u0422\u043e\u0432\u0430 \u0435 \u0430\u043d\u0430\u043b\u043e\u0433\u0438\u044f \u043d\u0430 Livelock \u043f\u0440\u0438 Threads.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">3. Java \u043f\u0440\u0438\u043c\u0435\u0440 (Livelock Example)<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">\u0421\u043b\u0435\u0434\u043d\u0438\u044f\u0442 \u043f\u0440\u0438\u043c\u0435\u0440 \u0434\u0435\u043c\u043e\u043d\u0441\u0442\u0440\u0438\u0440\u0430 Livelock \u0447\u0440\u0435\u0437 \u0434\u0432\u0435 \u043d\u0438\u0448\u043a\u0438, \u043a\u043e\u0438\u0442\u043e \u043f\u043e\u0441\u0442\u043e\u044f\u043d\u043d\u043e \u0441\u0438 \u043e\u0442\u0441\u0442\u044a\u043f\u0432\u0430\u0442 \u043f\u0440\u0438 \u043e\u043f\u0438\u0442 \u0434\u0430 \u043f\u043e\u043b\u0443\u0447\u0430\u0442 \u043e\u0431\u0449 \u0440\u0435\u0441\u0443\u0440\u0441.<\/p>\n\n\n<div class=\"wp-block-code\">\n\t<div class=\"cm-editor\">\n\t\t<div class=\"cm-scroller\">\n\t\t\t\n<pre>\n<code><div class=\"cm-line\">import java.util.concurrent.atomic.AtomicBoolean;<\/div><div class=\"cm-line\"><\/div><div class=\"cm-line\">public class LivelockExample {<\/div><div class=\"cm-line\"><\/div><div class=\"cm-line\">    static class Person {<\/div><div class=\"cm-line\">        private final String name;<\/div><div class=\"cm-line\">        private volatile boolean active = true;<\/div><div class=\"cm-line\"><\/div><div class=\"cm-line\">        Person(String name) {<\/div><div class=\"cm-line\">            this.name = name;<\/div><div class=\"cm-line\">        }<\/div><div class=\"cm-line\"><\/div><div class=\"cm-line\">        public boolean isActive() {<\/div><div class=\"cm-line\">            return active;<\/div><div class=\"cm-line\">        }<\/div><div class=\"cm-line\"><\/div><div class=\"cm-line\">        public void giveWay() {<\/div><div class=\"cm-line\">            System.out.println(name + &quot; gives way.&quot;);<\/div><div class=\"cm-line\">            active = false;<\/div><div class=\"cm-line\">        }<\/div><div class=\"cm-line\"><\/div><div class=\"cm-line\">        public void tryProceed() {<\/div><div class=\"cm-line\">            active = true;<\/div><div class=\"cm-line\">            System.out.println(name + &quot; tries to proceed.&quot;);<\/div><div class=\"cm-line\">        }<\/div><div class=\"cm-line\">    }<\/div><div class=\"cm-line\"><\/div><div class=\"cm-line\">    public static void main(String[] args) {<\/div><div class=\"cm-line\"><\/div><div class=\"cm-line\">        Person person1 = new Person(&quot;Person 1&quot;);<\/div><div class=\"cm-line\">        Person person2 = new Person(&quot;Person 2&quot;);<\/div><div class=\"cm-line\"><\/div><div class=\"cm-line\">        Thread t1 = new Thread(() -&gt; {<\/div><div class=\"cm-line\">            while (person1.isActive()) {<\/div><div class=\"cm-line\">                if (person2.isActive()) {<\/div><div class=\"cm-line\">                    person1.giveWay();<\/div><div class=\"cm-line\">                } else {<\/div><div class=\"cm-line\">                    person1.tryProceed();<\/div><div class=\"cm-line\">                }<\/div><div class=\"cm-line\">            }<\/div><div class=\"cm-line\">        });<\/div><div class=\"cm-line\"><\/div><div class=\"cm-line\">        Thread t2 = new Thread(() -&gt; {<\/div><div class=\"cm-line\">            while (person2.isActive()) {<\/div><div class=\"cm-line\">                if (person1.isActive()) {<\/div><div class=\"cm-line\">                    person2.giveWay();<\/div><div class=\"cm-line\">                } else {<\/div><div class=\"cm-line\">                    person2.tryProceed();<\/div><div class=\"cm-line\">                }<\/div><div class=\"cm-line\">            }<\/div><div class=\"cm-line\">        });<\/div><div class=\"cm-line\"><\/div><div class=\"cm-line\">        t1.start();<\/div><div class=\"cm-line\">        t2.start();<\/div><div class=\"cm-line\">    }<\/div><div class=\"cm-line\">}<\/div><\/code><\/pre>\n\t\t<\/div>\n\t<\/div>\n<\/div>\n\n\n<p class=\"wp-block-paragraph\">\u0417\u0430\u0431\u0435\u043b\u0435\u0436\u043a\u0430: \u0422\u043e\u0432\u0430 \u0435 \u0438\u043b\u044e\u0441\u0442\u0440\u0430\u0442\u0438\u0432\u0435\u043d \u043f\u0440\u0438\u043c\u0435\u0440, \u0430 \u043d\u0435 \u043d\u0430\u0434\u0435\u0436\u0434\u043d\u0430 \u0434\u0435\u043c\u043e\u043d\u0441\u0442\u0440\u0430\u0446\u0438\u044f \u043d\u0430 Livelock. \u0418\u0437\u0445\u043e\u0434\u044a\u0442 \u0437\u0430\u0432\u0438\u0441\u0438 \u043e\u0442 Thread Scheduling, \u0430 \u0446\u0438\u043a\u044a\u043b\u044a\u0442 \u043c\u043e\u0436\u0435 \u0434\u0430 \u0437\u0430\u0432\u044a\u0440\u0448\u0438 \u0438\u043b\u0438 \u0434\u0430 \u0441\u0435 \u0434\u044a\u0440\u0436\u0438 \u0440\u0430\u0437\u043b\u0438\u0447\u043d\u043e. <code>AtomicBoolean<\/code> import-\u044a\u0442 \u0441\u044a\u0449\u043e \u043d\u0435 \u0435 \u043d\u0435\u043e\u0431\u0445\u043e\u0434\u0438\u043c.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">4. \u041e\u0431\u044f\u0441\u043d\u0435\u043d\u0438\u0435 \u043d\u0430 \u043f\u0440\u0438\u043c\u0435\u0440\u0430 (Explanation of the Example)<\/h2>\n\n\n\n<ol class=\"wp-block-list\">\n<li>Person Class \u2013 \u043f\u0440\u0435\u0434\u0441\u0442\u0430\u0432\u044f \u0443\u0447\u0430\u0441\u0442\u043d\u0438\u043a \u0432 \u043a\u043e\u043d\u0444\u043b\u0438\u043a\u0442\u0430, \u043a\u0430\u0442\u043e \u0432\u0441\u0435\u043a\u0438 \u0443\u0447\u0430\u0441\u0442\u043d\u0438\u043a \u0438\u043c\u0430 \u0441\u043e\u0431\u0441\u0442\u0432\u0435\u043d\u043e \u0441\u044a\u0441\u0442\u043e\u044f\u043d\u0438\u0435.<\/li>\n\n\n\n<li>Threads \u2013 <code>t1<\/code> \u0431\u043e\u043b\u043e\u043d <code>t2<\/code> \u043f\u0440\u0435\u0434\u0441\u0442\u0430\u0432\u044f\u0442 \u0434\u0432\u0430\u043c\u0430\u0442\u0430 \u0443\u0447\u0430\u0441\u0442\u043d\u0438\u0446\u0438, \u043a\u043e\u0438\u0442\u043e \u0441\u0435 \u043e\u043f\u0438\u0442\u0432\u0430\u0442 \u0434\u0430 \u043f\u0440\u0435\u043c\u0438\u043d\u0430\u0442.<\/li>\n\n\n\n<li>State Changes \u2013 \u0432\u0441\u0435\u043a\u0438 \u0443\u0447\u0430\u0441\u0442\u043d\u0438\u043a \u043f\u0440\u043e\u043c\u0435\u043d\u044f \u0441\u044a\u0441\u0442\u043e\u044f\u043d\u0438\u0435\u0442\u043e \u0441\u0438 \u0432 \u0437\u0430\u0432\u0438\u0441\u0438\u043c\u043e\u0441\u0442 \u043e\u0442 \u0441\u044a\u0441\u0442\u043e\u044f\u043d\u0438\u0435\u0442\u043e \u043d\u0430 \u0434\u0440\u0443\u0433\u0438\u044f.<\/li>\n\n\n\n<li>Conflict \u2013 \u0434\u0432\u0430\u043c\u0430\u0442\u0430 \u043c\u043e\u0433\u0430\u0442 \u0434\u0430 \u043f\u0440\u043e\u0434\u044a\u043b\u0436\u0430\u0442 \u0434\u0430 \u0441\u0438 \u043e\u0442\u0441\u0442\u044a\u043f\u0432\u0430\u0442, \u0431\u0435\u0437 \u0434\u0430 \u043f\u043e\u0441\u0442\u0438\u0433\u043d\u0430\u0442 \u043d\u0430\u043f\u0440\u0435\u0434\u044a\u043a.<\/li>\n<\/ol>\n\n\n\n<p class=\"wp-block-paragraph\">\u041e\u0441\u043d\u043e\u0432\u043d\u0430\u0442\u0430 \u0438\u0434\u0435\u044f \u0435, \u0447\u0435 \u043d\u0438\u0448\u043a\u0438\u0442\u0435 \u043d\u0435 \u0441\u0430 \u0431\u043b\u043e\u043a\u0438\u0440\u0430\u043d\u0438, \u0430 \u0441\u0430 \u0430\u043a\u0442\u0438\u0432\u043d\u0438, \u043d\u043e \u0434\u0435\u0439\u0441\u0442\u0432\u0438\u044f\u0442\u0430 \u0438\u043c \u0432\u0437\u0430\u0438\u043c\u043d\u043e \u0432\u044a\u0437\u043f\u0440\u0435\u043f\u044f\u0442\u0441\u0442\u0432\u0430\u0442 \u0437\u0430\u0432\u044a\u0440\u0448\u0432\u0430\u043d\u0435\u0442\u043e \u043d\u0430 \u0437\u0430\u0434\u0430\u0447\u0438\u0442\u0435.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">5. \u041a\u0430\u043a \u0434\u0430 \u0438\u0437\u0431\u0435\u0433\u043d\u0435\u043c Livelock? (How to Avoid Livelock)<\/h2>\n\n\n\n<ol class=\"wp-block-list\">\n<li>Timeouts \u2013 \u0438\u0437\u043f\u043e\u043b\u0437\u0432\u0430\u0439\u0442\u0435 \u0432\u0440\u0435\u043c\u0435\u0432\u0438 \u043e\u0433\u0440\u0430\u043d\u0438\u0447\u0435\u043d\u0438\u044f \u043f\u0440\u0438 \u043f\u043e\u0432\u0442\u043e\u0440\u043d\u0438 \u043e\u043f\u0438\u0442\u0438 \u0437\u0430 \u043f\u043e\u043b\u0443\u0447\u0430\u0432\u0430\u043d\u0435 \u043d\u0430 \u0440\u0435\u0441\u0443\u0440\u0441.<\/li>\n\n\n\n<li>Fixed Strategy \u2013 \u043e\u043f\u0440\u0435\u0434\u0435\u043b\u0435\u0442\u0435 \u043f\u0440\u0435\u0434\u0432\u0430\u0440\u0438\u0442\u0435\u043b\u043d\u043e \u043a\u043e\u044f \u043d\u0438\u0448\u043a\u0430 \u0438\u043c\u0430 \u043f\u0440\u0438\u043e\u0440\u0438\u0442\u0435\u0442 \u0438\u043b\u0438 \u043f\u0440\u0430\u0432\u043e \u0434\u0430 \u043f\u0440\u043e\u0434\u044a\u043b\u0436\u0438 \u043f\u044a\u0440\u0432\u0430.<\/li>\n\n\n\n<li>Randomization \u2013 \u0434\u043e\u0431\u0430\u0432\u0435\u0442\u0435 \u0441\u043b\u0443\u0447\u0430\u0439\u043d\u043e \u0437\u0430\u043a\u044a\u0441\u043d\u0435\u043d\u0438\u0435 (Random Delay) \u043c\u0435\u0436\u0434\u0443 \u043f\u043e\u0432\u0442\u043e\u0440\u043d\u0438\u0442\u0435 \u043e\u043f\u0438\u0442\u0438, \u0437\u0430 \u0434\u0430 \u043f\u0440\u0435\u043a\u044a\u0441\u043d\u0435\u0442\u0435 \u0441\u0438\u043d\u0445\u0440\u043e\u043d\u043d\u0438\u044f \u0446\u0438\u043a\u044a\u043b.<\/li>\n\n\n\n<li>Better Coordination \u2013 \u0438\u0437\u043f\u043e\u043b\u0437\u0432\u0430\u0439\u0442\u0435 \u043f\u043e\u0434\u0445\u043e\u0434\u044f\u0449\u0438 \u043c\u0435\u0445\u0430\u043d\u0438\u0437\u043c\u0438 \u0437\u0430 \u043a\u043e\u043e\u0440\u0434\u0438\u043d\u0430\u0446\u0438\u044f, \u043a\u0430\u0442\u043e <code>Semaphore<\/code>, <code>Lock<\/code> \u0438 \u044f\u0441\u043d\u0430 \u0441\u0442\u0440\u0430\u0442\u0435\u0433\u0438\u044f \u0437\u0430 \u0443\u043f\u0440\u0430\u0432\u043b\u0435\u043d\u0438\u0435 \u043d\u0430 \u0440\u0435\u0441\u0443\u0440\u0441\u0438\u0442\u0435.<\/li>\n\n\n\n<li>Bounded Retries \u2013 \u043e\u0433\u0440\u0430\u043d\u0438\u0447\u0435\u0442\u0435 \u0431\u0440\u043e\u044f \u043d\u0430 \u043f\u043e\u0432\u0442\u043e\u0440\u043d\u0438\u0442\u0435 \u043e\u043f\u0438\u0442\u0438, \u0432\u043c\u0435\u0441\u0442\u043e \u0434\u0430 \u0438\u0437\u043f\u043e\u043b\u0437\u0432\u0430\u0442\u0435 \u0431\u0435\u0437\u043a\u0440\u0430\u0435\u043d Retry Loop.<\/li>\n<\/ol>\n\n\n\n<h2 class=\"wp-block-heading\">6. \u0420\u0430\u0437\u043b\u0438\u043a\u0430 \u043c\u0435\u0436\u0434\u0443 Deadlock, Livelock \u0438 Starvation<\/h2>\n\n\n\n<figure class=\"wp-block-table\"><table class=\"has-fixed-layout\"><tbody><tr><th>\u041f\u0440\u043e\u0431\u043b\u0435\u043c<\/th><th>\u041e\u043f\u0438\u0441\u0430\u043d\u0438\u0435<\/th><th>\u041f\u043e\u0432\u0435\u0434\u0435\u043d\u0438\u0435 \u043d\u0430 Threads<\/th><\/tr><tr><td>Deadlock<\/td><td>\u0414\u0432\u0435 \u0438\u043b\u0438 \u043f\u043e\u0432\u0435\u0447\u0435 \u043d\u0438\u0448\u043a\u0438 \u0447\u0430\u043a\u0430\u0442 \u0432\u0437\u0430\u0438\u043c\u043d\u043e \u043e\u0441\u0432\u043e\u0431\u043e\u0436\u0434\u0430\u0432\u0430\u043d\u0435 \u043d\u0430 \u0440\u0435\u0441\u0443\u0440\u0441\u0438.<\/td><td>\u0411\u043b\u043e\u043a\u0438\u0440\u0430\u043d\u0438 \u0441\u0430.<\/td><\/tr><tr><td>Livelock<\/td><td>\u041d\u0438\u0448\u043a\u0438\u0442\u0435 \u043d\u0435\u043f\u0440\u0435\u043a\u044a\u0441\u043d\u0430\u0442\u043e \u0440\u0435\u0430\u0433\u0438\u0440\u0430\u0442 \u0435\u0434\u043d\u0430 \u043d\u0430 \u0434\u0440\u0443\u0433\u0430, \u0431\u0435\u0437 \u0434\u0430 \u043f\u043e\u0441\u0442\u0438\u0433\u0430\u0442 \u043d\u0430\u043f\u0440\u0435\u0434\u044a\u043a.<\/td><td>\u0410\u043a\u0442\u0438\u0432\u043d\u0438 \u0441\u0430, \u043d\u043e \u043d\u0435 \u0437\u0430\u0432\u044a\u0440\u0448\u0432\u0430\u0442 \u0437\u0430\u0434\u0430\u0447\u0438\u0442\u0435 \u0441\u0438.<\/td><\/tr><tr><td>Starvation<\/td><td>\u0415\u0434\u043d\u0430 \u043d\u0438\u0448\u043a\u0430 \u043f\u043e\u0441\u0442\u043e\u044f\u043d\u043d\u043e \u043d\u0435 \u043f\u043e\u043b\u0443\u0447\u0430\u0432\u0430 \u043d\u0435\u043e\u0431\u0445\u043e\u0434\u0438\u043c\u0438\u0442\u0435 \u0440\u0435\u0441\u0443\u0440\u0441\u0438 \u0438\u043b\u0438 CPU \u0432\u0440\u0435\u043c\u0435.<\/td><td>\u041c\u043e\u0436\u0435 \u0434\u0430 \u0435 \u0430\u043a\u0442\u0438\u0432\u043d\u0430 \u0438\u043b\u0438 \u0434\u0430 \u0447\u0430\u043a\u0430, \u043d\u043e \u043d\u0435 \u043f\u043e\u043b\u0443\u0447\u0430\u0432\u0430 \u0434\u043e\u0441\u0442\u0430\u0442\u044a\u0447\u043d\u043e \u0432\u044a\u0437\u043c\u043e\u0436\u043d\u043e\u0441\u0442\u0438 \u0437\u0430 \u0438\u0437\u043f\u044a\u043b\u043d\u0435\u043d\u0438\u0435.<\/td><\/tr><\/tbody><\/table><\/figure>\n\n\n\n<h2 class=\"wp-block-heading\">\u0412\u0430\u0436\u043d\u043e \u0437\u0430 Java Developer Interview<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">\u0421\u0430\u043d\u0430\u0436 \u0431\u0430\u0439\u043d\u0430 \u0443\u0443:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Deadlock: Threads \u0441\u0430 \u0431\u043b\u043e\u043a\u0438\u0440\u0430\u043d\u0438 \u0438 \u0447\u0430\u043a\u0430\u0442 \u0431\u0435\u0437\u043a\u0440\u0430\u0439\u043d\u043e.<\/li>\n\n\n\n<li>Livelock: Threads \u0441\u0430 \u0430\u043a\u0442\u0438\u0432\u043d\u0438, \u043d\u043e \u043d\u0435 \u043f\u043e\u0441\u0442\u0438\u0433\u0430\u0442 \u043d\u0430\u043f\u0440\u0435\u0434\u044a\u043a.<\/li>\n\n\n\n<li>Starvation: \u0415\u0434\u043d\u0430 Thread \u043d\u0435 \u043f\u043e\u043b\u0443\u0447\u0430\u0432\u0430 \u043d\u0435\u043e\u0431\u0445\u043e\u0434\u0438\u043c\u0438\u0442\u0435 \u0440\u0435\u0441\u0443\u0440\u0441\u0438 \u0437\u0430\u0440\u0430\u0434\u0438 \u043a\u043e\u043d\u043a\u0443\u0440\u0435\u043d\u0446\u0438\u044f \u0438\u043b\u0438 \u043d\u0435\u0441\u043f\u0440\u0430\u0432\u0435\u0434\u043b\u0438\u0432\u043e \u0440\u0430\u0437\u043f\u0440\u0435\u0434\u0435\u043b\u0435\u043d\u0438\u0435.<\/li>\n<\/ul>\n\n\n\n<p class=\"wp-block-paragraph\">\u041e\u0441\u043d\u043e\u0432\u0435\u043d \u0438\u0437\u0432\u043e\u0434: \u041f\u0440\u0438 Livelock \u043d\u0438\u0448\u043a\u0438\u0442\u0435 \u043d\u0435 \u0441\u0430 \u0441\u043f\u0440\u0435\u043b\u0438 \u0434\u0430 \u0440\u0430\u0431\u043e\u0442\u044f\u0442 \u2013 \u0442\u0435 \u043f\u0440\u043e\u0434\u044a\u043b\u0436\u0430\u0432\u0430\u0442 \u0434\u0430 \u0438\u0437\u043f\u044a\u043b\u043d\u044f\u0432\u0430\u0442 \u0434\u0435\u0439\u0441\u0442\u0432\u0438\u044f, \u043d\u043e \u0432\u0437\u0430\u0438\u043c\u043d\u043e \u0441\u0438 \u043f\u0440\u0435\u0447\u0430\u0442 \u0434\u0430 \u0437\u0430\u0432\u044a\u0440\u0448\u0430\u0442 \u0437\u0430\u0434\u0430\u0447\u0438\u0442\u0435 \u0441\u0438.<\/p>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h1 class=\"wp-block-heading\">Marker Interfaces (\u041c\u0430\u0440\u043a\u0435\u0440\u043d\u0438 \u0438\u043d\u0442\u0435\u0440\u0444\u0435\u0439\u0441\u0438)<\/h1>\n\n\n\n<p class=\"wp-block-paragraph\">Marker Interface \u0432 Java \u0435 \u0438\u043d\u0442\u0435\u0440\u0444\u0435\u0439\u0441, \u043a\u043e\u0439\u0442\u043e \u043d\u0435 \u0441\u044a\u0434\u044a\u0440\u0436\u0430 \u043c\u0435\u0442\u043e\u0434\u0438 \u0438\u043b\u0438 \u043f\u043e\u043b\u0435\u0442\u0430. \u0422\u043e\u0439 \u0441\u0435 \u0438\u0437\u043f\u043e\u043b\u0437\u0432\u0430, \u0437\u0430 \u0434\u0430 \u043c\u0430\u0440\u043a\u0438\u0440\u0430 (Tag) \u0434\u0430\u0434\u0435\u043d Class \u0438 \u0434\u0430 \u0443\u043a\u0430\u0437\u0432\u0430, \u0447\u0435 \u0442\u043e\u0437\u0438 \u043a\u043b\u0430\u0441 \u043f\u0440\u0438\u0442\u0435\u0436\u0430\u0432\u0430 \u043e\u043f\u0440\u0435\u0434\u0435\u043b\u0435\u043d\u043e \u0441\u0432\u043e\u0439\u0441\u0442\u0432\u043e \u0438\u043b\u0438 \u0442\u0440\u044f\u0431\u0432\u0430 \u0434\u0430 \u0431\u044a\u0434\u0435 \u043e\u0431\u0440\u0430\u0431\u043e\u0442\u0432\u0430\u043d \u043f\u043e \u0441\u043f\u0435\u0446\u0438\u0430\u043b\u0435\u043d \u043d\u0430\u0447\u0438\u043d \u043e\u0442 Java Runtime \u0438\u043b\u0438 Frameworks.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">\u0421 \u0434\u0440\u0443\u0433\u0438 \u0434\u0443\u043c\u0438, Marker Interface \u043f\u0440\u0435\u0434\u043e\u0441\u0442\u0430\u0432\u044f \u0438\u043d\u0444\u043e\u0440\u043c\u0430\u0446\u0438\u044f \u0437\u0430 \u0434\u0430\u0434\u0435\u043d \u043a\u043b\u0430\u0441 \u0447\u0440\u0435\u0437 \u0441\u0430\u043c\u0438\u044f \u0444\u0430\u043a\u0442, \u0447\u0435 \u0442\u043e\u0439 \u0433\u043e \u0438\u043c\u043f\u043b\u0435\u043c\u0435\u043d\u0442\u0438\u0440\u0430 (<code>implements<\/code>).<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">1. \u041f\u0440\u0438\u043c\u0435\u0440\u0438 \u0437\u0430 Marker Interfaces<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">Java \u043f\u0440\u0435\u0434\u043e\u0441\u0442\u0430\u0432\u044f \u043d\u044f\u043a\u043e\u043b\u043a\u043e \u0441\u0442\u0430\u043d\u0434\u0430\u0440\u0442\u043d\u0438 Marker Interfaces:<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">1. Serializable<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>\u041c\u0430\u0440\u043a\u0438\u0440\u0430 \u043a\u043b\u0430\u0441, \u0447\u0438\u0438\u0442\u043e \u043e\u0431\u0435\u043a\u0442\u0438 \u043c\u043e\u0433\u0430\u0442 \u0434\u0430 \u0431\u044a\u0434\u0430\u0442 Serialized.<\/li>\n\n\n\n<li>Serialization \u043f\u0440\u0435\u043e\u0431\u0440\u0430\u0437\u0443\u0432\u0430 \u043e\u0431\u0435\u043a\u0442\u0430 \u0432 \u043f\u043e\u0442\u043e\u043a \u043e\u0442 \u0431\u0430\u0439\u0442\u043e\u0432\u0435 (Byte Stream), \u043a\u043e\u0439\u0442\u043e \u043c\u043e\u0436\u0435 \u0434\u0430 \u0431\u044a\u0434\u0435 \u0441\u044a\u0445\u0440\u0430\u043d\u0435\u043d \u0438\u043b\u0438 \u043f\u0440\u0435\u0434\u0430\u0434\u0435\u043d \u043f\u043e \u043c\u0440\u0435\u0436\u0430\u0442\u0430.<\/li>\n\n\n\n<li>\u0418\u0437\u043f\u043e\u043b\u0437\u0432\u0430 \u0441\u0435 \u043e\u0442 <code>ObjectOutputStream<\/code>.<\/li>\n<\/ul>\n\n\n<div class=\"wp-block-code\">\n\t<div class=\"cm-editor\">\n\t\t<div class=\"cm-scroller\">\n\t\t\t\n<pre>\n<code><div class=\"cm-line\">import java.io.Serializable;<\/div><div class=\"cm-line\"><\/div><div class=\"cm-line\">public class Student implements Serializable {<\/div><div class=\"cm-line\">    private String name;<\/div><div class=\"cm-line\">    private int age;<\/div><div class=\"cm-line\">}<\/div><\/code><\/pre>\n\t\t<\/div>\n\t<\/div>\n<\/div>\n\n\n<p class=\"wp-block-paragraph\">2. Cloneable<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>\u0423\u043a\u0430\u0437\u0432\u0430, \u0447\u0435 \u0434\u0430\u0434\u0435\u043d \u043a\u043b\u0430\u0441 \u043f\u043e\u0437\u0432\u043e\u043b\u044f\u0432\u0430 \u0441\u044a\u0437\u0434\u0430\u0432\u0430\u043d\u0435\u0442\u043e \u043d\u0430 \u043a\u043e\u043f\u0438\u044f \u043d\u0430 \u0441\u0432\u043e\u0438\u0442\u0435 \u043e\u0431\u0435\u043a\u0442\u0438 \u0447\u0440\u0435\u0437 <code>Object.clone()<\/code>.<\/li>\n\n\n\n<li>\u0410\u043a\u043e \u043a\u043b\u0430\u0441\u044a\u0442 \u043d\u0435 \u0438\u043c\u043f\u043b\u0435\u043c\u0435\u043d\u0442\u0438\u0440\u0430 <code>Cloneable<\/code>, \u0438\u0437\u0432\u0438\u043a\u0432\u0430\u043d\u0435\u0442\u043e \u043d\u0430 <code>clone()<\/code> \u0432\u044a\u0440\u0445\u0443 \u043d\u0435\u0433\u043e \u0432\u043e\u0434\u0438 \u0434\u043e <code>CloneNotSupportedException<\/code>.<\/li>\n<\/ul>\n\n\n<div class=\"wp-block-code\">\n\t<div class=\"cm-editor\">\n\t\t<div class=\"cm-scroller\">\n\t\t\t\n<pre>\n<code><div class=\"cm-line\">public class Student implements Cloneable {<\/div><div class=\"cm-line\">    private String name;<\/div><div class=\"cm-line\"><\/div><div class=\"cm-line\">    @Override<\/div><div class=\"cm-line\">    public Object clone() throws CloneNotSupportedException {<\/div><div class=\"cm-line\">        return super.clone();<\/div><div class=\"cm-line\">    }<\/div><div class=\"cm-line\">}<\/div><\/code><\/pre>\n\t\t<\/div>\n\t<\/div>\n<\/div>\n\n\n<p class=\"wp-block-paragraph\">3. Remote<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>\u0418\u0437\u043f\u043e\u043b\u0437\u0432\u0430 \u0441\u0435 \u043f\u0440\u0438 RMI (Remote Method Invocation).<\/li>\n\n\n\n<li>\u041c\u0430\u0440\u043a\u0438\u0440\u0430 \u0438\u043d\u0442\u0435\u0440\u0444\u0435\u0439\u0441\u0438, \u0447\u0438\u0438\u0442\u043e \u043c\u0435\u0442\u043e\u0434\u0438 \u043c\u043e\u0433\u0430\u0442 \u0434\u0430 \u0431\u044a\u0434\u0430\u0442 \u0438\u0437\u0432\u0438\u043a\u0432\u0430\u043d\u0438 \u043e\u0442 \u043e\u0442\u0434\u0430\u043b\u0435\u0447\u0435\u043d\u0438 JVM \u043f\u0440\u043e\u0446\u0435\u0441\u0438.<\/li>\n<\/ul>\n\n\n<div class=\"wp-block-code\">\n\t<div class=\"cm-editor\">\n\t\t<div class=\"cm-scroller\">\n\t\t\t\n<pre>\n<code><div class=\"cm-line\">import java.rmi.Remote;<\/div><div class=\"cm-line\">import java.rmi.RemoteException;<\/div><div class=\"cm-line\"><\/div><div class=\"cm-line\">public interface StudentService extends Remote {<\/div><div class=\"cm-line\">    void getStudent() throws RemoteException;<\/div><div class=\"cm-line\">}<\/div><\/code><\/pre>\n\t\t<\/div>\n\t<\/div>\n<\/div>\n\n\n<h2 class=\"wp-block-heading\">2. \u041a\u0430\u043a \u0440\u0430\u0431\u043e\u0442\u044f\u0442 Marker Interfaces? (How It Works)<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">Marker Interfaces \u0438\u0437\u043f\u043e\u043b\u0437\u0432\u0430\u0442 Type Checking \u2013 \u043f\u0440\u043e\u0432\u0435\u0440\u043a\u0430 \u0434\u0430\u043b\u0438 \u0434\u0430\u0434\u0435\u043d \u043a\u043b\u0430\u0441 \u0438\u043c\u043f\u043b\u0435\u043c\u0435\u043d\u0442\u0438\u0440\u0430 \u043a\u043e\u043d\u043a\u0440\u0435\u0442\u0435\u043d \u0438\u043d\u0442\u0435\u0440\u0444\u0435\u0439\u0441.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">\u0416\u0438\u0448\u044d\u044d \u043d\u044c <code>Serializable<\/code> \u0443\u043a\u0430\u0437\u0432\u0430 \u043d\u0430 <code>ObjectOutputStream<\/code>, \u0447\u0435 \u043e\u0431\u0435\u043a\u0442\u044a\u0442 \u043c\u043e\u0436\u0435 \u0434\u0430 \u0431\u044a\u0434\u0435 Serialized.<\/p>\n\n\n<div class=\"wp-block-code\">\n\t<div class=\"cm-editor\">\n\t\t<div class=\"cm-scroller\">\n\t\t\t\n<pre>\n<code><div class=\"cm-line\">import java.io.Serializable;<\/div><div class=\"cm-line\"><\/div><div class=\"cm-line\">public class Student implements Serializable {<\/div><div class=\"cm-line\">    private String name = &quot;John&quot;;<\/div><div class=\"cm-line\">}<\/div><div class=\"cm-line\"><\/div><div class=\"cm-line\">public class Main {<\/div><div class=\"cm-line\">    public static void main(String[] args) {<\/div><div class=\"cm-line\">        Student student = new Student();<\/div><div class=\"cm-line\"><\/div><div class=\"cm-line\">        if (student instanceof Serializable) {<\/div><div class=\"cm-line\">            System.out.println(&quot;Object is Serializable&quot;);<\/div><div class=\"cm-line\">        }<\/div><div class=\"cm-line\">    }<\/div><div class=\"cm-line\">}<\/div><\/code><\/pre>\n\t\t<\/div>\n\t<\/div>\n<\/div>\n\n\n<p class=\"wp-block-paragraph\">\u04ae\u0440 \u0434\u04af\u043d:<\/p>\n\n\n<div class=\"wp-block-code\">\n\t<div class=\"cm-editor\">\n\t\t<div class=\"cm-scroller\">\n\t\t\t\n<pre>\n<code><div class=\"cm-line\">Object is Serializable<\/div><\/code><\/pre>\n\t\t<\/div>\n\t<\/div>\n<\/div>\n\n\n<p class=\"wp-block-paragraph\">\u0410\u043a\u043e \u043a\u043b\u0430\u0441\u044a\u0442 \u043d\u0435 \u0438\u043c\u043f\u043b\u0435\u043c\u0435\u043d\u0442\u0438\u0440\u0430 <code>Serializable<\/code>, \u043e\u043f\u0438\u0442\u044a\u0442 \u0437\u0430 \u0441\u0442\u0430\u043d\u0434\u0430\u0440\u0442\u043d\u0430 Java Serialization \u043d\u0430 \u0442\u0430\u043a\u044a\u0432 \u043e\u0431\u0435\u043a\u0442 \u0449\u0435 \u0434\u043e\u0432\u0435\u0434\u0435 \u0434\u043e <code>NotSerializableException<\/code> (\u043e\u0441\u0432\u0435\u043d \u0430\u043a\u043e \u043d\u0435 \u0441\u0435 \u0438\u0437\u043f\u043e\u043b\u0437\u0432\u0430 \u0441\u043f\u0435\u0446\u0438\u0430\u043b\u0435\u043d \u043c\u0435\u0445\u0430\u043d\u0438\u0437\u044a\u043c \u043a\u0430\u0442\u043e <code>writeReplace()<\/code>).<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">3. Marker Interfaces \u0441\u0440\u0435\u0449\u0443 Annotations<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">\u0421 \u0432\u044a\u0432\u0435\u0436\u0434\u0430\u043d\u0435\u0442\u043e \u043d\u0430 Annotations \u0432 Java 5 \u043c\u043d\u043e\u0433\u043e \u043e\u0442 \u0441\u043b\u0443\u0447\u0430\u0438\u0442\u0435 \u043d\u0430 \u0438\u0437\u043f\u043e\u043b\u0437\u0432\u0430\u043d\u0435 \u043d\u0430 Marker Interfaces \u043c\u043e\u0433\u0430\u0442 \u0434\u0430 \u0431\u044a\u0434\u0430\u0442 \u0440\u0435\u0430\u043b\u0438\u0437\u0438\u0440\u0430\u043d\u0438 \u0447\u0440\u0435\u0437 Annotations.<\/p>\n\n\n\n<figure class=\"wp-block-table\"><table class=\"has-fixed-layout\"><tbody><tr><th>Marker Interface<\/th><th>Annotation<\/th><\/tr><tr><td>\u041c\u0430\u0440\u043a\u0438\u0440\u0430 \u043a\u043b\u0430\u0441\u0430 \u0447\u0440\u0435\u0437 <code>implements<\/code>.<\/td><td>\u041c\u0430\u0440\u043a\u0438\u0440\u0430 \u043a\u043b\u0430\u0441\u0430 \u0447\u0440\u0435\u0437 <code>@Annotation<\/code>.<\/td><\/tr><tr><td>\u041f\u043e\u0434\u0434\u044a\u0440\u0436\u0430 Type Checking \u0447\u0440\u0435\u0437 <code>instanceof<\/code>.<\/td><td>\u0418\u043d\u0444\u043e\u0440\u043c\u0430\u0446\u0438\u044f\u0442\u0430 \u0441\u0435 \u043f\u0440\u043e\u0432\u0435\u0440\u044f\u0432\u0430 \u0447\u0440\u0435\u0437 Reflection \u0438\u043b\u0438 Annotation Processing.<\/td><\/tr><tr><td>\u041c\u043e\u0436\u0435 \u0434\u0430 \u0443\u0447\u0430\u0441\u0442\u0432\u0430 \u0432 Type Hierarchy.<\/td><td>\u041d\u0435 \u043f\u0440\u043e\u043c\u0435\u043d\u044f Type Hierarchy.<\/td><\/tr><tr><td>\u041f\u043e\u0434\u0445\u043e\u0434\u044f\u0449 \u0437\u0430 \u043c\u0430\u0440\u043a\u0438\u0440\u0430\u043d\u0435, \u043a\u043e\u0433\u0430\u0442\u043e \u0435 \u0432\u0430\u0436\u043d\u043e \u0434\u0430\u0434\u0435\u043d \u043a\u043b\u0430\u0441 \u0434\u0430 \u0431\u044a\u0434\u0435 \u043e\u043f\u0440\u0435\u0434\u0435\u043b\u0435\u043d \u0442\u0438\u043f.<\/td><td>\u041f\u043e\u0434\u0445\u043e\u0434\u044f\u0449 \u0437\u0430 \u043c\u0435\u0442\u0430\u0434\u0430\u043d\u043d\u0438 \u0438 \u043a\u043e\u043d\u0444\u0438\u0433\u0443\u0440\u0430\u0446\u0438\u044f.<\/td><\/tr><\/tbody><\/table><\/figure>\n\n\n\n<p class=\"wp-block-paragraph\">\u041f\u0440\u0438\u043c\u0435\u0440 \u0441 Annotation:<\/p>\n\n\n<div class=\"wp-block-code\">\n\t<div class=\"cm-editor\">\n\t\t<div class=\"cm-scroller\">\n\t\t\t\n<pre>\n<code><div class=\"cm-line\">@interface Important {<\/div><div class=\"cm-line\">}<\/div><div class=\"cm-line\"><\/div><div class=\"cm-line\">@Important<\/div><div class=\"cm-line\">public class Student {<\/div><div class=\"cm-line\">}<\/div><\/code><\/pre>\n\t\t<\/div>\n\t<\/div>\n<\/div>\n\n\n<p class=\"wp-block-paragraph\">\u041a\u043e\u0433\u0430 \u0434\u0430 \u0438\u0437\u043f\u043e\u043b\u0437\u0432\u0430\u043c\u0435 Marker Interface?<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>\u041a\u043e\u0433\u0430\u0442\u043e \u0438\u0441\u043a\u0430\u043c\u0435 \u0434\u0430 \u043c\u0430\u0440\u043a\u0438\u0440\u0430\u043c\u0435 \u043a\u043b\u0430\u0441 \u043a\u0430\u0442\u043e \u043e\u043f\u0440\u0435\u0434\u0435\u043b\u0435\u043d \u0442\u0438\u043f.<\/li>\n\n\n\n<li>\u041a\u043e\u0433\u0430\u0442\u043e \u0435 \u043d\u0435\u043e\u0431\u0445\u043e\u0434\u0438\u043c\u0430 \u043f\u0440\u043e\u0432\u0435\u0440\u043a\u0430 \u0447\u0440\u0435\u0437 <code>instanceof<\/code>.<\/li>\n\n\n\n<li>\u041a\u043e\u0433\u0430\u0442\u043e \u043f\u043e\u0432\u0435\u0434\u0435\u043d\u0438\u0435\u0442\u043e \u0437\u0430\u0432\u0438\u0441\u0438 \u043e\u0442 \u0438\u043c\u043f\u043b\u0435\u043c\u0435\u043d\u0442\u0438\u0440\u0430\u043d\u0435\u0442\u043e \u043d\u0430 \u043a\u043e\u043d\u043a\u0440\u0435\u0442\u0435\u043d \u0438\u043d\u0442\u0435\u0440\u0444\u0435\u0439\u0441.<\/li>\n<\/ul>\n\n\n\n<p class=\"wp-block-paragraph\">\u041a\u043e\u0433\u0430 \u0434\u0430 \u0438\u0437\u043f\u043e\u043b\u0437\u0432\u0430\u043c\u0435 Annotation?<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>\u041a\u043e\u0433\u0430\u0442\u043e \u0438\u0441\u043a\u0430\u043c\u0435 \u0434\u0430 \u0434\u043e\u0431\u0430\u0432\u0438\u043c \u043c\u0435\u0442\u0430\u0434\u0430\u043d\u043d\u0438 \u043a\u044a\u043c \u043a\u043b\u0430\u0441\u043e\u0432\u0435, \u043c\u0435\u0442\u043e\u0434\u0438 \u0438\u043b\u0438 \u043f\u043e\u043b\u0435\u0442\u0430.<\/li>\n\n\n\n<li>\u041a\u043e\u0433\u0430\u0442\u043e \u0438\u0437\u043f\u043e\u043b\u0437\u0432\u0430\u043c\u0435 Frameworks \u043a\u0430\u0442\u043e Spring \u0438\u043b\u0438 Hibernate.<\/li>\n\n\n\n<li>\u041a\u043e\u0433\u0430\u0442\u043e \u0438\u043d\u0444\u043e\u0440\u043c\u0430\u0446\u0438\u044f\u0442\u0430 \u0441\u0435 \u043e\u0431\u0440\u0430\u0431\u043e\u0442\u0432\u0430 \u0447\u0440\u0435\u0437 Reflection \u0438\u043b\u0438 Annotation Processing.<\/li>\n<\/ul>\n\n\n\n<h2 class=\"wp-block-heading\">4. \u0412\u0430\u0436\u043d\u043e \u0437\u0430 Java Developer Interview<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">\u0421\u0430\u043d\u0430\u0436 \u0431\u0430\u0439\u043d\u0430 \u0443\u0443:<\/p>\n\n\n\n<ol class=\"wp-block-list\">\n<li>Marker Interface \u0435 \u0438\u043d\u0442\u0435\u0440\u0444\u0435\u0439\u0441 \u0431\u0435\u0437 \u043c\u0435\u0442\u043e\u0434\u0438 \u0438 \u043f\u043e\u043b\u0435\u0442\u0430.<\/li>\n\n\n\n<li>\u0418\u0437\u043f\u043e\u043b\u0437\u0432\u0430 \u0441\u0435 \u0437\u0430 \u043c\u0430\u0440\u043a\u0438\u0440\u0430\u043d\u0435 \u043d\u0430 \u043a\u043b\u0430\u0441\u043e\u0432\u0435 \u0441 \u043e\u043f\u0440\u0435\u0434\u0435\u043b\u0435\u043d\u043e \u0441\u0432\u043e\u0439\u0441\u0442\u0432\u043e.<\/li>\n\n\n\n<li>\u041e\u0441\u043d\u043e\u0432\u043d\u0438 \u043f\u0440\u0438\u043c\u0435\u0440\u0438 \u0441\u0430 <code>Serializable<\/code>, <code>Cloneable<\/code> \u0431\u043e\u043b\u043e\u043d <code>Remote<\/code>.<\/li>\n\n\n\n<li><code>instanceof<\/code> \u043f\u043e\u0437\u0432\u043e\u043b\u044f\u0432\u0430 \u043f\u0440\u043e\u0432\u0435\u0440\u043a\u0430 \u0434\u0430\u043b\u0438 \u0434\u0430\u0434\u0435\u043d \u043e\u0431\u0435\u043a\u0442 \u0438\u043c\u043f\u043b\u0435\u043c\u0435\u043d\u0442\u0438\u0440\u0430 Marker Interface.<\/li>\n\n\n\n<li>Annotations \u0441\u0430 \u0430\u043b\u0442\u0435\u0440\u043d\u0430\u0442\u0438\u0432\u0435\u043d \u043c\u0435\u0445\u0430\u043d\u0438\u0437\u044a\u043c \u0437\u0430 \u0434\u043e\u0431\u0430\u0432\u044f\u043d\u0435 \u043d\u0430 \u043c\u0435\u0442\u0430\u0434\u0430\u043d\u043d\u0438, \u043d\u043e \u043d\u0435 \u0437\u0430\u043c\u0435\u043d\u044f\u0442 \u043d\u0430\u043f\u044a\u043b\u043d\u043e Marker Interfaces.<\/li>\n<\/ol>\n\n\n\n<p class=\"wp-block-paragraph\">\u041e\u0441\u043d\u043e\u0432\u0435\u043d \u0438\u0437\u0432\u043e\u0434: Marker Interface \u0435 \u043d\u0430\u0447\u0438\u043d Java \u0434\u0430 \u0438\u0434\u0435\u043d\u0442\u0438\u0444\u0438\u0446\u0438\u0440\u0430 \u043e\u043f\u0440\u0435\u0434\u0435\u043b\u0435\u043d\u0438 \u043a\u043b\u0430\u0441\u043e\u0432\u0435 \u0447\u0440\u0435\u0437 Type System, \u0431\u0435\u0437 \u0434\u0430 \u0435 \u043d\u0435\u043e\u0431\u0445\u043e\u0434\u0438\u043c\u043e \u0438\u043d\u0442\u0435\u0440\u0444\u0435\u0439\u0441\u044a\u0442 \u0434\u0430 \u0434\u0435\u0444\u0438\u043d\u0438\u0440\u0430 \u043c\u0435\u0442\u043e\u0434\u0438.<\/p>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h1 class=\"wp-block-heading\">\u041a\u0430\u043a \u0435\u0434\u0438\u043d Method \u0432 Java \u043c\u043e\u0436\u0435 \u0434\u0430 \u0432\u0440\u044a\u0449\u0430 \u043f\u043e\u0432\u0435\u0447\u0435 \u043e\u0442 \u0435\u0434\u043d\u0430 \u0441\u0442\u043e\u0439\u043d\u043e\u0441\u0442? (Returning Multiple Values)<\/h1>\n\n\n\n<p class=\"wp-block-paragraph\">\u0412 Java \u0435\u0434\u0438\u043d Method \u043d\u0435 \u043c\u043e\u0436\u0435 \u0434\u0438\u0440\u0435\u043a\u0442\u043d\u043e \u0434\u0430 \u0432\u0440\u044a\u0449\u0430 \u043d\u044f\u043a\u043e\u043b\u043a\u043e \u043e\u0442\u0434\u0435\u043b\u043d\u0438 \u0441\u0442\u043e\u0439\u043d\u043e\u0441\u0442\u0438. \u0422\u043e\u0439 \u043c\u043e\u0436\u0435 \u0434\u0430 \u0432\u0440\u044a\u0449\u0430 \u0441\u0430\u043c\u043e \u0435\u0434\u043d\u0430 \u0441\u0442\u043e\u0439\u043d\u043e\u0441\u0442 \u0438\u043b\u0438 \u0435\u0434\u0438\u043d Object.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">\u0412\u044a\u043f\u0440\u0435\u043a\u0438 \u0442\u043e\u0432\u0430 \u0438\u043c\u0430 \u043d\u044f\u043a\u043e\u043b\u043a\u043e \u043d\u0430\u0447\u0438\u043d\u0430 \u0434\u0430 \u043f\u043e\u0441\u0442\u0438\u0433\u043d\u0435\u043c \u0435\u0444\u0435\u043a\u0442\u0430 \u043d\u0430 \u0432\u0440\u044a\u0449\u0430\u043d\u0435 \u043d\u0430 \u043f\u043e\u0432\u0435\u0447\u0435 \u043e\u0442 \u0435\u0434\u043d\u0430 \u0441\u0442\u043e\u0439\u043d\u043e\u0441\u0442.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">1. \u0418\u0437\u043f\u043e\u043b\u0437\u0432\u0430\u043d\u0435 \u043d\u0430 Custom Class \u0438\u043b\u0438 Object<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">\u041c\u043e\u0436\u0435\u043c \u0434\u0430 \u0441\u044a\u0437\u0434\u0430\u0434\u0435\u043c \u0441\u043e\u0431\u0441\u0442\u0432\u0435\u043d Class, \u043a\u043e\u0439\u0442\u043e \u0441\u044a\u0434\u044a\u0440\u0436\u0430 \u043d\u044f\u043a\u043e\u043b\u043a\u043e Fields. \u041c\u0435\u0442\u043e\u0434\u044a\u0442 \u0432\u0440\u044a\u0449\u0430 \u0435\u0434\u0438\u043d Object, \u0441\u044a\u0434\u044a\u0440\u0436\u0430\u0449 \u0432\u0441\u0438\u0447\u043a\u0438 \u043d\u0435\u043e\u0431\u0445\u043e\u0434\u0438\u043c\u0438 \u0441\u0442\u043e\u0439\u043d\u043e\u0441\u0442\u0438.<\/p>\n\n\n<div class=\"wp-block-code\">\n\t<div class=\"cm-editor\">\n\t\t<div class=\"cm-scroller\">\n\t\t\t\n<pre>\n<code><div class=\"cm-line\">public class StudentInfo {<\/div><div class=\"cm-line\">    private String name;<\/div><div class=\"cm-line\">    private int age;<\/div><div class=\"cm-line\"><\/div><div class=\"cm-line\">    public StudentInfo(String name, int age) {<\/div><div class=\"cm-line\">        this.name = name;<\/div><div class=\"cm-line\">        this.age = age;<\/div><div class=\"cm-line\">    }<\/div><div class=\"cm-line\"><\/div><div class=\"cm-line\">    public String getName() {<\/div><div class=\"cm-line\">        return name;<\/div><div class=\"cm-line\">    }<\/div><div class=\"cm-line\"><\/div><div class=\"cm-line\">    public int getAge() {<\/div><div class=\"cm-line\">        return age;<\/div><div class=\"cm-line\">    }<\/div><div class=\"cm-line\">}<\/div><\/code><\/pre>\n\t\t<\/div>\n\t<\/div>\n<\/div>\n\n\n<p class=\"wp-block-paragraph\">\u041c\u0435\u0442\u043e\u0434, \u043a\u043e\u0439\u0442\u043e \u0432\u0440\u044a\u0449\u0430 Object:<\/p>\n\n\n<div class=\"wp-block-code\">\n\t<div class=\"cm-editor\">\n\t\t<div class=\"cm-scroller\">\n\t\t\t\n<pre>\n<code><div class=\"cm-line\">public StudentInfo getValues() {<\/div><div class=\"cm-line\">    return new StudentInfo(&quot;John&quot;, 25);<\/div><div class=\"cm-line\">}<\/div><\/code><\/pre>\n\t\t<\/div>\n\t<\/div>\n<\/div>\n\n\n<p class=\"wp-block-paragraph\">\u0418\u0437\u043f\u043e\u043b\u0437\u0432\u0430\u043d\u0435:<\/p>\n\n\n<div class=\"wp-block-code\">\n\t<div class=\"cm-editor\">\n\t\t<div class=\"cm-scroller\">\n\t\t\t\n<pre>\n<code><div class=\"cm-line\">StudentInfo info = getValues();<\/div><div class=\"cm-line\"><\/div><div class=\"cm-line\">System.out.println(info.getName());<\/div><div class=\"cm-line\">System.out.println(info.getAge());<\/div><\/code><\/pre>\n\t\t<\/div>\n\t<\/div>\n<\/div>\n\n\n<p class=\"wp-block-paragraph\">\u0422\u043e\u0432\u0430 \u0435 \u0447\u0438\u0441\u0442 \u0438 \u043f\u043e\u0434\u0445\u043e\u0434\u044f\u0449 \u0437\u0430 \u043c\u043d\u043e\u0433\u043e\u043a\u0440\u0430\u0442\u043d\u0430 \u0443\u043f\u043e\u0442\u0440\u0435\u0431\u0430 \u043f\u043e\u0434\u0445\u043e\u0434. \u0412 \u0441\u044a\u0432\u0440\u0435\u043c\u0435\u043d\u043d\u0430\u0442\u0430 Java \u043c\u043e\u0436\u0435 \u0434\u0430 \u0438\u0437\u043f\u043e\u043b\u0437\u0432\u0430\u043c\u0435 \u0438 <code>record<\/code>.<\/p>\n\n\n<div class=\"wp-block-code\">\n\t<div class=\"cm-editor\">\n\t\t<div class=\"cm-scroller\">\n\t\t\t\n<pre>\n<code><div class=\"cm-line\">public record StudentInfo(String name, int age) {}<\/div><div class=\"cm-line\"><\/div><div class=\"cm-line\">public StudentInfo getValues() {<\/div><div class=\"cm-line\">    return new StudentInfo(&quot;John&quot;, 25);<\/div><div class=\"cm-line\">}<\/div><\/code><\/pre>\n\t\t<\/div>\n\t<\/div>\n<\/div>\n\n\n<h2 class=\"wp-block-heading\">2. \u0418\u0437\u043f\u043e\u043b\u0437\u0432\u0430\u043d\u0435 \u043d\u0430 Arrays<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">\u041c\u043e\u0436\u0435\u043c \u0434\u0430 \u0432\u044a\u0440\u043d\u0435\u043c Array, \u043a\u043e\u0433\u0430\u0442\u043e \u0432\u0441\u0438\u0447\u043a\u0438 \u0441\u0442\u043e\u0439\u043d\u043e\u0441\u0442\u0438 \u0441\u0430 \u043e\u0442 \u0435\u0434\u0438\u043d \u0438 \u0441\u044a\u0449\u0438 \u0442\u0438\u043f.<\/p>\n\n\n<div class=\"wp-block-code\">\n\t<div class=\"cm-editor\">\n\t\t<div class=\"cm-scroller\">\n\t\t\t\n<pre>\n<code><div class=\"cm-line\">public int[] getValues() {<\/div><div class=\"cm-line\">    return new int[] {10, 20, 30};<\/div><div class=\"cm-line\">}<\/div><\/code><\/pre>\n\t\t<\/div>\n\t<\/div>\n<\/div>\n\n\n<p class=\"wp-block-paragraph\">\u0418\u0437\u043f\u043e\u043b\u0437\u0432\u0430\u043d\u0435:<\/p>\n\n\n<div class=\"wp-block-code\">\n\t<div class=\"cm-editor\">\n\t\t<div class=\"cm-scroller\">\n\t\t\t\n<pre>\n<code><div class=\"cm-line\">int[] values = getValues();<\/div><div class=\"cm-line\"><\/div><div class=\"cm-line\">System.out.println(values[0]);<\/div><div class=\"cm-line\">System.out.println(values[1]);<\/div><div class=\"cm-line\">System.out.println(values[2]);<\/div><\/code><\/pre>\n\t\t<\/div>\n\t<\/div>\n<\/div>\n\n\n<p class=\"wp-block-paragraph\">\u0422\u043e\u0437\u0438 \u043f\u043e\u0434\u0445\u043e\u0434 \u0435 \u043f\u043e\u0434\u0445\u043e\u0434\u044f\u0449 \u0437\u0430 \u0444\u0438\u043a\u0441\u0438\u0440\u0430\u043d \u0431\u0440\u043e\u0439 \u0441\u0442\u043e\u0439\u043d\u043e\u0441\u0442\u0438 \u043e\u0442 \u0435\u0434\u0438\u043d \u0442\u0438\u043f.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">3. \u0418\u0437\u043f\u043e\u043b\u0437\u0432\u0430\u043d\u0435 \u043d\u0430 Map<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">\u041c\u043e\u0436\u0435\u043c \u0434\u0430 \u0432\u044a\u0440\u043d\u0435\u043c <code>Map<\/code>, \u043a\u043e\u0433\u0430\u0442\u043e \u0441\u0442\u043e\u0439\u043d\u043e\u0441\u0442\u0438\u0442\u0435 \u0438\u043c\u0430\u0442 \u0432\u0440\u044a\u0437\u043a\u0430 Key-Value.<\/p>\n\n\n<div class=\"wp-block-code\">\n\t<div class=\"cm-editor\">\n\t\t<div class=\"cm-scroller\">\n\t\t\t\n<pre>\n<code><div class=\"cm-line\">import java.util.Map;<\/div><div class=\"cm-line\"><\/div><div class=\"cm-line\">public Map&lt;String, Object&gt; getValues() {<\/div><div class=\"cm-line\">    return Map.of(<\/div><div class=\"cm-line\">        &quot;name&quot;, &quot;John&quot;,<\/div><div class=\"cm-line\">        &quot;age&quot;, 25,<\/div><div class=\"cm-line\">        &quot;salary&quot;, 3000.0<\/div><div class=\"cm-line\">    );<\/div><div class=\"cm-line\">}<\/div><\/code><\/pre>\n\t\t<\/div>\n\t<\/div>\n<\/div>\n\n\n<p class=\"wp-block-paragraph\">\u0418\u0437\u043f\u043e\u043b\u0437\u0432\u0430\u043d\u0435:<\/p>\n\n\n<div class=\"wp-block-code\">\n\t<div class=\"cm-editor\">\n\t\t<div class=\"cm-scroller\">\n\t\t\t\n<pre>\n<code><div class=\"cm-line\">Map&lt;String, Object&gt; values = getValues();<\/div><div class=\"cm-line\"><\/div><div class=\"cm-line\">System.out.println(values.get(&quot;name&quot;));<\/div><div class=\"cm-line\">System.out.println(values.get(&quot;age&quot;));<\/div><div class=\"cm-line\">System.out.println(values.get(&quot;salary&quot;));<\/div><\/code><\/pre>\n\t\t<\/div>\n\t<\/div>\n<\/div>\n\n\n<p class=\"wp-block-paragraph\">\u0422\u043e\u0437\u0438 \u043f\u043e\u0434\u0445\u043e\u0434 \u0435 \u0433\u044a\u0432\u043a\u0430\u0432, \u0437\u0430\u0449\u043e\u0442\u043e \u043c\u043e\u0436\u0435\u043c \u0434\u0430 \u0438\u0437\u043f\u043e\u043b\u0437\u0432\u0430\u043c\u0435 \u043e\u043f\u0438\u0441\u0430\u0442\u0435\u043b\u043d\u0438 Keys. \u041d\u0435\u0434\u043e\u0441\u0442\u0430\u0442\u044a\u043a\u044a\u0442 \u0435, \u0447\u0435 \u043f\u0440\u0438 <code>Map&lt;String, Object&gt;<\/code> \u0447\u0435\u0441\u0442\u043e \u0441\u0435 \u043d\u0430\u043b\u0430\u0433\u0430 Type Casting.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">4. \u0418\u0437\u043f\u043e\u043b\u0437\u0432\u0430\u043d\u0435 \u043d\u0430 Pair \u0438\u043b\u0438 Tuple<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">\u041c\u043e\u0436\u0435\u043c \u0434\u0430 \u0438\u0437\u043f\u043e\u043b\u0437\u0432\u0430\u043c\u0435 \u0433\u043e\u0442\u043e\u0432\u0438 \u043a\u043b\u0430\u0441\u043e\u0432\u0435 \u043e\u0442 \u0432\u044a\u043d\u0448\u043d\u0438 \u0431\u0438\u0431\u043b\u0438\u043e\u0442\u0435\u043a\u0438, \u043a\u043e\u0438\u0442\u043e \u043f\u043e\u0437\u0432\u043e\u043b\u044f\u0432\u0430\u0442 \u0432\u0440\u044a\u0449\u0430\u043d\u0435 \u043d\u0430 \u0434\u0432\u0435 \u0438\u043b\u0438 \u043f\u043e\u0432\u0435\u0447\u0435 \u0441\u0442\u043e\u0439\u043d\u043e\u0441\u0442\u0438.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">\u041d\u0430\u043f\u0440\u0438\u043c\u0435\u0440 Apache Commons Lang \u2013 Pair:<\/p>\n\n\n<div class=\"wp-block-code\">\n\t<div class=\"cm-editor\">\n\t\t<div class=\"cm-scroller\">\n\t\t\t\n<pre>\n<code><div class=\"cm-line\">import org.apache.commons.lang3.tuple.Pair;<\/div><div class=\"cm-line\"><\/div><div class=\"cm-line\">public Pair&lt;String, Integer&gt; getValues() {<\/div><div class=\"cm-line\">    return Pair.of(&quot;John&quot;, 25);<\/div><div class=\"cm-line\">}<\/div><\/code><\/pre>\n\t\t<\/div>\n\t<\/div>\n<\/div>\n\n\n<p class=\"wp-block-paragraph\">\u0418\u0437\u043f\u043e\u043b\u0437\u0432\u0430\u043d\u0435:<\/p>\n\n\n<div class=\"wp-block-code\">\n\t<div class=\"cm-editor\">\n\t\t<div class=\"cm-scroller\">\n\t\t\t\n<pre>\n<code><div class=\"cm-line\">Pair&lt;String, Integer&gt; result = getValues();<\/div><div class=\"cm-line\"><\/div><div class=\"cm-line\">System.out.println(result.getLeft());<\/div><div class=\"cm-line\">System.out.println(result.getRight());<\/div><\/code><\/pre>\n\t\t<\/div>\n\t<\/div>\n<\/div>\n\n\n<p class=\"wp-block-paragraph\">\u0422\u043e\u0437\u0438 \u043f\u043e\u0434\u0445\u043e\u0434 \u0435 \u0443\u0434\u043e\u0431\u0435\u043d \u0437\u0430 \u043c\u0430\u043b\u044a\u043a \u0431\u0440\u043e\u0439 \u0441\u0442\u043e\u0439\u043d\u043e\u0441\u0442\u0438, \u0431\u0435\u0437 \u0434\u0430 \u0435 \u043d\u0435\u043e\u0431\u0445\u043e\u0434\u0438\u043c\u043e \u0434\u0430 \u0441\u044a\u0437\u0434\u0430\u0432\u0430\u043c\u0435 \u0441\u043e\u0431\u0441\u0442\u0432\u0435\u043d Class.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">5. \u0418\u0437\u043f\u043e\u043b\u0437\u0432\u0430\u043d\u0435 \u043d\u0430 List \u0438\u043b\u0438 Set<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">\u041a\u043e\u0433\u0430\u0442\u043e \u0442\u0440\u044f\u0431\u0432\u0430 \u0434\u0430 \u0432\u044a\u0440\u043d\u0435\u043c \u043c\u043d\u043e\u0436\u0435\u0441\u0442\u0432\u043e \u0441\u0442\u043e\u0439\u043d\u043e\u0441\u0442\u0438 \u043e\u0442 \u0435\u0434\u0438\u043d \u0438 \u0441\u044a\u0449\u0438 \u0442\u0438\u043f, \u043c\u043e\u0436\u0435\u043c \u0434\u0430 \u0438\u0437\u043f\u043e\u043b\u0437\u0432\u0430\u043c\u0435 Collections.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">List Example:<\/p>\n\n\n<div class=\"wp-block-code\">\n\t<div class=\"cm-editor\">\n\t\t<div class=\"cm-scroller\">\n\t\t\t\n<pre>\n<code><div class=\"cm-line\">import java.util.List;<\/div><div class=\"cm-line\"><\/div><div class=\"cm-line\">public List&lt;String&gt; getNames() {<\/div><div class=\"cm-line\">    return List.of(&quot;John&quot;, &quot;Peter&quot;, &quot;Michael&quot;);<\/div><div class=\"cm-line\">}<\/div><\/code><\/pre>\n\t\t<\/div>\n\t<\/div>\n<\/div>\n\n\n<p class=\"wp-block-paragraph\">Set Example:<\/p>\n\n\n<div class=\"wp-block-code\">\n\t<div class=\"cm-editor\">\n\t\t<div class=\"cm-scroller\">\n\t\t\t\n<pre>\n<code><div class=\"cm-line\">import java.util.Set;<\/div><div class=\"cm-line\"><\/div><div class=\"cm-line\">public Set&lt;Integer&gt; getNumbers() {<\/div><div class=\"cm-line\">    return Set.of(10, 20, 30);<\/div><div class=\"cm-line\">}<\/div><\/code><\/pre>\n\t\t<\/div>\n\t<\/div>\n<\/div>\n\n\n<p class=\"wp-block-paragraph\"><code>List<\/code> \u0437\u0430\u043f\u0430\u0437\u0432\u0430 \u0440\u0435\u0434\u0430 \u0438 \u0434\u043e\u043f\u0443\u0441\u043a\u0430 \u0434\u0443\u0431\u043b\u0438\u0440\u0430\u043d\u0438 \u0441\u0442\u043e\u0439\u043d\u043e\u0441\u0442\u0438, \u0434\u043e\u043a\u0430\u0442\u043e <code>Set<\/code> \u0441\u044a\u0445\u0440\u0430\u043d\u044f\u0432\u0430 \u0443\u043d\u0438\u043a\u0430\u043b\u043d\u0438 \u0441\u0442\u043e\u0439\u043d\u043e\u0441\u0442\u0438.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">6. \u0421\u0440\u0430\u0432\u043d\u0435\u043d\u0438\u0435 \u043d\u0430 \u043f\u043e\u0434\u0445\u043e\u0434\u0438\u0442\u0435<\/h2>\n\n\n\n<figure class=\"wp-block-table\"><table class=\"has-fixed-layout\"><tbody><tr><th>\u041f\u043e\u0434\u0445\u043e\u0434<\/th><th>\u041a\u043e\u0433\u0430 \u0435 \u043f\u043e\u0434\u0445\u043e\u0434\u044f\u0449?<\/th><\/tr><tr><td>Custom Class \/ Record<\/td><td>\u041a\u043e\u0433\u0430\u0442\u043e \u0432\u0440\u044a\u0449\u0430\u043c\u0435 \u0440\u0430\u0437\u043b\u0438\u0447\u043d\u0438 \u0442\u0438\u043f\u043e\u0432\u0435 \u0441\u0442\u043e\u0439\u043d\u043e\u0441\u0442\u0438 \u0441 \u044f\u0441\u043d\u043e \u043e\u043f\u0440\u0435\u0434\u0435\u043b\u0435\u043d\u043e \u043f\u0440\u0435\u0434\u043d\u0430\u0437\u043d\u0430\u0447\u0435\u043d\u0438\u0435.<\/td><\/tr><tr><td>Array<\/td><td>\u041a\u043e\u0433\u0430\u0442\u043e \u0432\u0440\u044a\u0449\u0430\u043c\u0435 \u043d\u044f\u043a\u043e\u043b\u043a\u043e \u0441\u0442\u043e\u0439\u043d\u043e\u0441\u0442\u0438 \u043e\u0442 \u0435\u0434\u0438\u043d \u0438 \u0441\u044a\u0449\u0438 \u0442\u0438\u043f.<\/td><\/tr><tr><td>Map<\/td><td>\u041a\u043e\u0433\u0430\u0442\u043e \u0441\u0442\u043e\u0439\u043d\u043e\u0441\u0442\u0438\u0442\u0435 \u0438\u043c\u0430\u0442 Key-Value \u0441\u0442\u0440\u0443\u043a\u0442\u0443\u0440\u0430.<\/td><\/tr><tr><td>Pair \/ Tuple<\/td><td>\u041a\u043e\u0433\u0430\u0442\u043e \u0432\u0440\u044a\u0449\u0430\u043c\u0435 \u0434\u0432\u0435 \u0438\u043b\u0438 \u043d\u044f\u043a\u043e\u043b\u043a\u043e \u0441\u0442\u043e\u0439\u043d\u043e\u0441\u0442\u0438 \u0431\u0435\u0437 \u043d\u0443\u0436\u0434\u0430 \u043e\u0442 \u0441\u043e\u0431\u0441\u0442\u0432\u0435\u043d Class.<\/td><\/tr><tr><td>List \/ Set<\/td><td>\u041a\u043e\u0433\u0430\u0442\u043e \u0432\u0440\u044a\u0449\u0430\u043c\u0435 \u043a\u043e\u043b\u0435\u043a\u0446\u0438\u044f \u043e\u0442 \u0441\u0442\u043e\u0439\u043d\u043e\u0441\u0442\u0438 \u043e\u0442 \u0435\u0434\u0438\u043d \u0442\u0438\u043f.<\/td><\/tr><\/tbody><\/table><\/figure>\n\n\n\n<h2 class=\"wp-block-heading\">\u0412\u0430\u0436\u043d\u043e \u0437\u0430 Java Developer Interview<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">\u0421\u0430\u043d\u0430\u0436 \u0431\u0430\u0439\u043d\u0430 \u0443\u0443:<\/p>\n\n\n\n<ol class=\"wp-block-list\">\n<li>Java Method \u043c\u043e\u0436\u0435 \u0434\u0430 \u0432\u0440\u044a\u0449\u0430 \u0441\u0430\u043c\u043e \u0435\u0434\u043d\u0430 \u0441\u0442\u043e\u0439\u043d\u043e\u0441\u0442.<\/li>\n\n\n\n<li>\u0422\u0430\u0437\u0438 \u0441\u0442\u043e\u0439\u043d\u043e\u0441\u0442 \u043c\u043e\u0436\u0435 \u0434\u0430 \u0431\u044a\u0434\u0435 Primitive Type, Array, Collection \u0438\u043b\u0438 Object.<\/li>\n\n\n\n<li>Custom Class \u0438 Record \u0441\u0430 \u043f\u0440\u0435\u0434\u043f\u043e\u0447\u0438\u0442\u0430\u043d \u043f\u043e\u0434\u0445\u043e\u0434, \u043a\u043e\u0433\u0430\u0442\u043e \u0432\u0440\u044a\u0449\u0430\u043c\u0435 \u043d\u044f\u043a\u043e\u043b\u043a\u043e \u0440\u0430\u0437\u043b\u0438\u0447\u043d\u0438 \u0441\u0442\u043e\u0439\u043d\u043e\u0441\u0442\u0438.<\/li>\n\n\n\n<li><code>Map<\/code> \u0435 \u043f\u043e\u043b\u0435\u0437\u0435\u043d \u043f\u0440\u0438 Key-Value \u0441\u0442\u0440\u0443\u043a\u0442\u0443\u0440\u0438, \u043d\u043e \u043c\u043e\u0436\u0435 \u0434\u0430 \u0438\u0437\u0438\u0441\u043a\u0432\u0430 Type Casting.<\/li>\n\n\n\n<li><code>Pair<\/code> \u0431\u043e\u043b\u043e\u043d <code>Tuple<\/code> \u0441\u0430 \u0443\u0434\u043e\u0431\u043d\u0438 \u0430\u043b\u0442\u0435\u0440\u043d\u0430\u0442\u0438\u0432\u0438, \u043d\u043e \u043d\u0435 \u0432\u0438\u043d\u0430\u0433\u0438 \u0441\u0430 \u043d\u0430\u0439-\u0434\u043e\u0431\u0440\u0438\u044f\u0442 \u0438\u0437\u0431\u043e\u0440 \u0437\u0430 \u0441\u043b\u043e\u0436\u043d\u0438 \u0440\u0435\u0437\u0443\u043b\u0442\u0430\u0442\u0438.<\/li>\n<\/ol>\n\n\n\n<p class=\"wp-block-paragraph\">\u041e\u0441\u043d\u043e\u0432\u0435\u043d \u0438\u0437\u0432\u043e\u0434: \u0412 \u0441\u044a\u0432\u0440\u0435\u043c\u0435\u043d\u043d\u0430\u0442\u0430 Java \u043d\u0430\u0439-\u0447\u0438\u0441\u0442\u0438\u044f\u0442 \u043f\u043e\u0434\u0445\u043e\u0434 \u0437\u0430 \u0432\u0440\u044a\u0449\u0430\u043d\u0435 \u043d\u0430 \u043d\u044f\u043a\u043e\u043b\u043a\u043e \u0440\u0430\u0437\u043b\u0438\u0447\u043d\u0438 \u0441\u0442\u043e\u0439\u043d\u043e\u0441\u0442\u0438 \u0435 \u0438\u0437\u043f\u043e\u043b\u0437\u0432\u0430\u043d\u0435\u0442\u043e \u043d\u0430 Custom Class \u0438\u043b\u0438 Record, \u0437\u0430\u0449\u043e\u0442\u043e \u043e\u0441\u0438\u0433\u0443\u0440\u044f\u0432\u0430\u0442 Type Safety, \u0447\u0435\u0442\u0438\u043c\u043e\u0441\u0442 \u0438 \u043b\u0435\u0441\u043d\u0430 \u043f\u043e\u0434\u0434\u0440\u044a\u0436\u043a\u0430 \u043d\u0430 \u043a\u043e\u0434\u0430.<\/p>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h1 class=\"wp-block-heading\">Microservices Patterns (\u0410\u0440\u0445\u0438\u0442\u0435\u043a\u0442\u0443\u0440\u043d\u0438 \u043c\u043e\u0434\u0435\u043b\u0438 \u043f\u0440\u0438 Microservices)<\/h1>\n\n\n\n<p class=\"wp-block-paragraph\">Microservices Patterns \u0441\u0430 \u0430\u0440\u0445\u0438\u0442\u0435\u043a\u0442\u0443\u0440\u043d\u0438 \u043c\u043e\u0434\u0435\u043b\u0438 \u0438 \u043f\u0440\u0430\u043a\u0442\u0438\u043a\u0438, \u043a\u043e\u0438\u0442\u043e \u043f\u043e\u043c\u0430\u0433\u0430\u0442 \u043f\u0440\u0438 \u043f\u0440\u043e\u0435\u043a\u0442\u0438\u0440\u0430\u043d\u0435\u0442\u043e, \u0440\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u0432\u0430\u043d\u0435\u0442\u043e, \u043a\u043e\u043c\u0443\u043d\u0438\u043a\u0430\u0446\u0438\u044f\u0442\u0430, Deployment \u0438 \u0443\u043f\u0440\u0430\u0432\u043b\u0435\u043d\u0438\u0435\u0442\u043e \u043d\u0430 Microservices Architecture.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">\u0422\u0435 \u0440\u0435\u0448\u0430\u0432\u0430\u0442 \u0440\u0430\u0437\u043b\u0438\u0447\u043d\u0438 \u043f\u0440\u043e\u0431\u043b\u0435\u043c\u0438, \u0441\u0432\u044a\u0440\u0437\u0430\u043d\u0438 \u0441 \u043d\u0435\u0437\u0430\u0432\u0438\u0441\u0438\u043c\u043e\u0441\u0442\u0442\u0430 \u043d\u0430 \u0443\u0441\u043b\u0443\u0433\u0438\u0442\u0435, \u043a\u043e\u043c\u0443\u043d\u0438\u043a\u0430\u0446\u0438\u044f\u0442\u0430, \u0443\u043f\u0440\u0430\u0432\u043b\u0435\u043d\u0438\u0435\u0442\u043e \u043d\u0430 \u0434\u0430\u043d\u043d\u0438\u0442\u0435, \u0441\u0438\u0433\u0443\u0440\u043d\u043e\u0441\u0442\u0442\u0430 \u0438 \u0443\u0441\u0442\u043e\u0439\u0447\u0438\u0432\u043e\u0441\u0442\u0442\u0430 \u043d\u0430 \u0441\u0438\u0441\u0442\u0435\u043c\u0430\u0442\u0430.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">1. Decomposition Patterns (\u041c\u043e\u0434\u0435\u043b\u0438 \u0437\u0430 \u0440\u0430\u0437\u0434\u0435\u043b\u044f\u043d\u0435 \u043d\u0430 \u0441\u0438\u0441\u0442\u0435\u043c\u0430\u0442\u0430)<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">\u0422\u0435\u0437\u0438 \u043c\u043e\u0434\u0435\u043b\u0438 \u043e\u043f\u0440\u0435\u0434\u0435\u043b\u044f\u0442 \u043a\u0430\u043a \u0435\u0434\u043d\u0430 \u0433\u043e\u043b\u044f\u043c\u0430 \u0441\u0438\u0441\u0442\u0435\u043c\u0430 (Monolithic Application) \u0434\u0430 \u0431\u044a\u0434\u0435 \u0440\u0430\u0437\u0434\u0435\u043b\u0435\u043d\u0430 \u043d\u0430 \u043d\u0435\u0437\u0430\u0432\u0438\u0441\u0438\u043c\u0438 Microservices.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Decompose by Business Capability<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>\u0420\u0430\u0437\u0434\u0435\u043b\u044f\u043d\u0435 \u043d\u0430 \u0441\u0438\u0441\u0442\u0435\u043c\u0430\u0442\u0430 \u0441\u043f\u043e\u0440\u0435\u0434 \u0431\u0438\u0437\u043d\u0435\u0441 \u0444\u0443\u043d\u043a\u0446\u0438\u0438\u0442\u0435.<\/li>\n\n\n\n<li>\u0412\u0441\u0435\u043a\u0438 Service \u043e\u0442\u0433\u043e\u0432\u0430\u0440\u044f \u0437\u0430 \u043a\u043e\u043d\u043a\u0440\u0435\u0442\u043d\u0430 \u0431\u0438\u0437\u043d\u0435\u0441 \u0434\u0435\u0439\u043d\u043e\u0441\u0442.<\/li>\n\n\n\n<li>\u041f\u0440\u0438\u043c\u0435\u0440: Billing Service, Inventory Service, Payment Service.<\/li>\n<\/ul>\n\n\n\n<p class=\"wp-block-paragraph\">Decompose by Subdomain<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>\u0418\u0437\u043f\u043e\u043b\u0437\u0432\u0430 \u0441\u0435 \u043f\u043e\u0434\u0445\u043e\u0434\u044a\u0442 Domain-Driven Design (DDD).<\/li>\n\n\n\n<li>\u0421\u0438\u0441\u0442\u0435\u043c\u0430\u0442\u0430 \u0441\u0435 \u0440\u0430\u0437\u0434\u0435\u043b\u044f \u043d\u0430 \u043e\u0442\u0434\u0435\u043b\u043d\u0438 Subdomains \u0441\u043f\u043e\u0440\u0435\u0434 \u0431\u0438\u0437\u043d\u0435\u0441 \u043b\u043e\u0433\u0438\u043a\u0430\u0442\u0430.<\/li>\n\n\n\n<li>\u0412\u0441\u0435\u043a\u0438 Microservice \u043e\u0431\u0441\u043b\u0443\u0436\u0432\u0430 \u043e\u043f\u0440\u0435\u0434\u0435\u043b\u0435\u043d \u0431\u0438\u0437\u043d\u0435\u0441 Subdomain.<\/li>\n<\/ul>\n\n\n\n<h2 class=\"wp-block-heading\">2. Communication Patterns (\u041c\u043e\u0434\u0435\u043b\u0438 \u0437\u0430 \u043a\u043e\u043c\u0443\u043d\u0438\u043a\u0430\u0446\u0438\u044f)<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">\u041e\u043f\u0440\u0435\u0434\u0435\u043b\u044f\u0442 \u043a\u0430\u043a Microservices \u043e\u0431\u043c\u0435\u043d\u044f\u0442 \u0438\u043d\u0444\u043e\u0440\u043c\u0430\u0446\u0438\u044f \u043f\u043e\u043c\u0435\u0436\u0434\u0443 \u0441\u0438.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">API Gateway<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>\u0415\u0434\u0438\u043d\u043d\u0430 \u0432\u0445\u043e\u0434\u043d\u0430 \u0442\u043e\u0447\u043a\u0430 \u0437\u0430 \u043a\u043b\u0438\u0435\u043d\u0442\u0441\u043a\u0438\u0442\u0435 \u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u044f.<\/li>\n\n\n\n<li>\u041c\u0430\u0440\u0448\u0440\u0443\u0442\u0438\u0437\u0438\u0440\u0430 \u0437\u0430\u044f\u0432\u043a\u0438\u0442\u0435 \u043a\u044a\u043c \u0441\u044a\u043e\u0442\u0432\u0435\u0442\u043d\u0438\u0442\u0435 Microservices.<\/li>\n\n\n\n<li>\u041c\u043e\u0436\u0435 \u0434\u0430 \u043f\u0440\u0435\u0434\u043e\u0441\u0442\u0430\u0432\u044f Authentication, Rate Limiting \u0438 Load Balancing.<\/li>\n<\/ul>\n\n\n\n<p class=\"wp-block-paragraph\">Service Registry<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>\u041f\u043e\u0434\u0434\u044a\u0440\u0436\u0430 \u0441\u043f\u0438\u0441\u044a\u043a \u0441 \u043d\u0430\u043b\u0438\u0447\u043d\u0438\u0442\u0435 Services \u0438 \u0442\u0435\u0445\u043d\u0438\u0442\u0435 \u0430\u0434\u0440\u0435\u0441\u0438.<\/li>\n\n\n\n<li>\u041f\u043e\u0437\u0432\u043e\u043b\u044f\u0432\u0430 Dynamic Service Discovery.<\/li>\n\n\n\n<li>\u041f\u0440\u0438\u043c\u0435\u0440: Eureka, Consul.<\/li>\n<\/ul>\n\n\n\n<p class=\"wp-block-paragraph\">Circuit Breaker<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>\u041f\u0440\u0435\u0434\u043e\u0442\u0432\u0440\u0430\u0442\u044f\u0432\u0430 Cascading Failures.<\/li>\n\n\n\n<li>\u041f\u0440\u0438 \u043c\u043d\u043e\u0433\u043e\u043a\u0440\u0430\u0442\u043d\u0438 \u043d\u0435\u0443\u0441\u043f\u0435\u0448\u043d\u0438 \u0437\u0430\u044f\u0432\u043a\u0438 \u043f\u0440\u0435\u043a\u0440\u0430\u0442\u044f\u0432\u0430 \u0432\u0440\u0435\u043c\u0435\u043d\u043d\u043e \u0438\u0437\u0432\u0438\u043a\u0432\u0430\u043d\u0438\u044f\u0442\u0430 \u043a\u044a\u043c \u043f\u0440\u043e\u0431\u043b\u0435\u043c\u043d\u0438\u044f Service.<\/li>\n\n\n\n<li>\u0421\u043b\u0435\u0434 \u043e\u043f\u0440\u0435\u0434\u0435\u043b\u0435\u043d \u043f\u0435\u0440\u0438\u043e\u0434 \u043f\u0440\u043e\u0432\u0435\u0440\u044f\u0432\u0430 \u0434\u0430\u043b\u0438 Service \u043e\u0442\u043d\u043e\u0432\u043e \u0440\u0430\u0431\u043e\u0442\u0438.<\/li>\n<\/ul>\n\n\n\n<p class=\"wp-block-paragraph\">Message Broker<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>\u041e\u0441\u0438\u0433\u0443\u0440\u044f\u0432\u0430 \u0430\u0441\u0438\u043d\u0445\u0440\u043e\u043d\u043d\u0430 \u043a\u043e\u043c\u0443\u043d\u0438\u043a\u0430\u0446\u0438\u044f \u043c\u0435\u0436\u0434\u0443 Microservices.<\/li>\n\n\n\n<li>\u0418\u0437\u043f\u043e\u043b\u0437\u0432\u0430 Message Queues \u0438\u043b\u0438 Event Streaming.<\/li>\n\n\n\n<li>\u041f\u0440\u0438\u043c\u0435\u0440\u0438: RabbitMQ \u0438 Apache Kafka.<\/li>\n<\/ul>\n\n\n\n<h2 class=\"wp-block-heading\">3. Data Management Patterns (\u041c\u043e\u0434\u0435\u043b\u0438 \u0437\u0430 \u0443\u043f\u0440\u0430\u0432\u043b\u0435\u043d\u0438\u0435 \u043d\u0430 \u0434\u0430\u043d\u043d\u0438\u0442\u0435)<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">\u041e\u043f\u0440\u0435\u0434\u0435\u043b\u044f\u0442 \u043a\u0430\u043a Microservices \u0441\u044a\u0445\u0440\u0430\u043d\u044f\u0432\u0430\u0442, \u043e\u0431\u0440\u0430\u0431\u043e\u0442\u0432\u0430\u0442 \u0438 \u0441\u043f\u043e\u0434\u0435\u043b\u044f\u0442 \u0438\u043d\u0444\u043e\u0440\u043c\u0430\u0446\u0438\u044f.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Database per Service<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>\u0412\u0441\u0435\u043a\u0438 Microservice \u0438\u043c\u0430 \u0441\u043e\u0431\u0441\u0442\u0432\u0435\u043d\u0430 Database.<\/li>\n\n\n\n<li>\u0414\u0430\u043d\u043d\u0438\u0442\u0435 \u0441\u0435 \u0443\u043f\u0440\u0430\u0432\u043b\u044f\u0432\u0430\u0442 \u043d\u0435\u0437\u0430\u0432\u0438\u0441\u0438\u043c\u043e.<\/li>\n\n\n\n<li>\u041d\u0430\u043c\u0430\u043b\u044f\u0432\u0430 Coupling \u043c\u0435\u0436\u0434\u0443 \u0443\u0441\u043b\u0443\u0433\u0438\u0442\u0435.<\/li>\n<\/ul>\n\n\n\n<p class=\"wp-block-paragraph\">Shared Database<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>\u041d\u044f\u043a\u043e\u043b\u043a\u043e Microservices \u0438\u0437\u043f\u043e\u043b\u0437\u0432\u0430\u0442 \u0435\u0434\u043d\u0430 \u043e\u0431\u0449\u0430 Database.<\/li>\n\n\n\n<li>\u041f\u043e-\u043b\u0435\u0441\u043d\u043e \u0441\u043f\u043e\u0434\u0435\u043b\u044f\u043d\u0435 \u043d\u0430 \u0434\u0430\u043d\u043d\u0438, \u043d\u043e \u0441\u044a\u0437\u0434\u0430\u0432\u0430 \u043f\u043e-\u0441\u0438\u043b\u043d\u0430 \u0437\u0430\u0432\u0438\u0441\u0438\u043c\u043e\u0441\u0442 \u043c\u0435\u0436\u0434\u0443 \u0443\u0441\u043b\u0443\u0433\u0438\u0442\u0435.<\/li>\n\n\n\n<li>\u041c\u043e\u0436\u0435 \u0434\u0430 \u0437\u0430\u0442\u0440\u0443\u0434\u043d\u0438 \u043d\u0435\u0437\u0430\u0432\u0438\u0441\u0438\u043c\u043e\u0442\u043e \u0440\u0430\u0437\u0432\u0438\u0442\u0438\u0435 \u0438 Deployment.<\/li>\n<\/ul>\n\n\n\n<p class=\"wp-block-paragraph\">Event Sourcing<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>\u0412\u043c\u0435\u0441\u0442\u043e \u0434\u0430 \u0441\u044a\u0445\u0440\u0430\u043d\u044f\u0432\u0430 \u0441\u0430\u043c\u043e \u0442\u0435\u043a\u0443\u0449\u043e\u0442\u043e \u0441\u044a\u0441\u0442\u043e\u044f\u043d\u0438\u0435 \u043d\u0430 \u043e\u0431\u0435\u043a\u0442\u0430, \u0441\u0438\u0441\u0442\u0435\u043c\u0430\u0442\u0430 \u0437\u0430\u043f\u0438\u0441\u0432\u0430 \u043f\u043e\u0441\u043b\u0435\u0434\u043e\u0432\u0430\u0442\u0435\u043b\u043d\u043e\u0441\u0442 \u043e\u0442 Events.<\/li>\n\n\n\n<li>\u0422\u0435\u043a\u0443\u0449\u043e\u0442\u043e \u0441\u044a\u0441\u0442\u043e\u044f\u043d\u0438\u0435 \u043c\u043e\u0436\u0435 \u0434\u0430 \u0431\u044a\u0434\u0435 \u0432\u044a\u0437\u0441\u0442\u0430\u043d\u043e\u0432\u0435\u043d\u043e \u0447\u0440\u0435\u0437 Replay \u043d\u0430 Events.<\/li>\n\n\n\n<li>\u041e\u0441\u0438\u0433\u0443\u0440\u044f\u0432\u0430 \u0434\u043e\u0431\u0440\u0430 \u043f\u0440\u043e\u0441\u043b\u0435\u0434\u0438\u043c\u043e\u0441\u0442 \u043d\u0430 \u043f\u0440\u043e\u043c\u0435\u043d\u0438\u0442\u0435.<\/li>\n<\/ul>\n\n\n\n<p class=\"wp-block-paragraph\">CQRS (Command Query Responsibility Segregation)<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>\u0420\u0430\u0437\u0434\u0435\u043b\u044f \u043e\u043f\u0435\u0440\u0430\u0446\u0438\u0438\u0442\u0435 \u0437\u0430 \u043f\u0440\u043e\u043c\u044f\u043d\u0430 \u043d\u0430 \u0434\u0430\u043d\u043d\u0438 (Commands) \u043e\u0442 \u043e\u043f\u0435\u0440\u0430\u0446\u0438\u0438\u0442\u0435 \u0437\u0430 \u0447\u0435\u0442\u0435\u043d\u0435 (Queries).<\/li>\n\n\n\n<li>\u041f\u043e\u0437\u0432\u043e\u043b\u044f\u0432\u0430 \u043e\u0442\u0434\u0435\u043b\u043d\u0430 \u043e\u043f\u0442\u0438\u043c\u0438\u0437\u0430\u0446\u0438\u044f \u043d\u0430 Read \u0438 Write \u043c\u043e\u0434\u0435\u043b\u0438\u0442\u0435.<\/li>\n\n\n\n<li>\u041f\u043e\u043b\u0435\u0437\u0435\u043d \u043f\u0440\u0438 \u0441\u0438\u0441\u0442\u0435\u043c\u0438 \u0441 \u0440\u0430\u0437\u043b\u0438\u0447\u043d\u043e \u043d\u0430\u0442\u043e\u0432\u0430\u0440\u0432\u0430\u043d\u0435 \u0437\u0430 \u0447\u0435\u0442\u0435\u043d\u0435 \u0438 \u0437\u0430\u043f\u0438\u0441.<\/li>\n<\/ul>\n\n\n\n<p class=\"wp-block-paragraph\">Saga Pattern<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>\u0423\u043f\u0440\u0430\u0432\u043b\u044f\u0432\u0430 Distributed Transactions \u043c\u0435\u0436\u0434\u0443 \u043d\u044f\u043a\u043e\u043b\u043a\u043e Microservices.<\/li>\n\n\n\n<li>\u0412\u0441\u044f\u043a\u0430 \u0443\u0441\u043b\u0443\u0433\u0430 \u0438\u0437\u043f\u044a\u043b\u043d\u044f\u0432\u0430 \u0441\u043e\u0431\u0441\u0442\u0432\u0435\u043d\u0430 Local Transaction.<\/li>\n\n\n\n<li>\u041f\u0440\u0438 \u043d\u0435\u0443\u0441\u043f\u0435\u0445 \u0441\u0435 \u0438\u0437\u043f\u044a\u043b\u043d\u044f\u0432\u0430\u0442 Compensating Transactions, \u043a\u043e\u0438\u0442\u043e \u043a\u043e\u043c\u043f\u0435\u043d\u0441\u0438\u0440\u0430\u0442 \u0432\u0435\u0447\u0435 \u0438\u0437\u0432\u044a\u0440\u0448\u0435\u043d\u0438\u0442\u0435 \u0434\u0435\u0439\u0441\u0442\u0432\u0438\u044f.<\/li>\n<\/ul>\n\n\n\n<h2 class=\"wp-block-heading\">4. Deployment Patterns (\u041c\u043e\u0434\u0435\u043b\u0438 \u0437\u0430 \u0432\u043d\u0435\u0434\u0440\u044f\u0432\u0430\u043d\u0435)<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">\u041e\u043f\u0440\u0435\u0434\u0435\u043b\u044f\u0442 \u043a\u0430\u043a Microservices \u0441\u0435 Deployment-\u0432\u0430\u0442 \u0438 \u0443\u043f\u0440\u0430\u0432\u043b\u044f\u0432\u0430\u0442 \u0432 \u043f\u0440\u043e\u0438\u0437\u0432\u043e\u0434\u0441\u0442\u0432\u0435\u043d\u0430 \u0441\u0440\u0435\u0434\u0430.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Sidecar<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>\u0420\u0430\u0437\u043f\u043e\u043b\u0430\u0433\u0430 \u043f\u043e\u043c\u043e\u0449\u0435\u043d \u043a\u043e\u043c\u043f\u043e\u043d\u0435\u043d\u0442 \u0434\u043e \u043e\u0441\u043d\u043e\u0432\u043d\u0438\u044f Service.<\/li>\n\n\n\n<li>\u041f\u043e\u043c\u043e\u0449\u043d\u0438\u044f\u0442 \u043a\u043e\u043c\u043f\u043e\u043d\u0435\u043d\u0442 \u043c\u043e\u0436\u0435 \u0434\u0430 \u043e\u0431\u0440\u0430\u0431\u043e\u0442\u0432\u0430 Logging, Monitoring, Proxy \u0438\u043b\u0438 Security.<\/li>\n\n\n\n<li>\u0427\u0435\u0441\u0442\u043e \u0441\u0435 \u0438\u0437\u043f\u043e\u043b\u0437\u0432\u0430 \u0432 Kubernetes.<\/li>\n<\/ul>\n\n\n\n<p class=\"wp-block-paragraph\">Service Mesh<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>\u0423\u043f\u0440\u0430\u0432\u043b\u044f\u0432\u0430 Service-to-Service Communication.<\/li>\n\n\n\n<li>\u041e\u0441\u0438\u0433\u0443\u0440\u044f\u0432\u0430 Load Balancing, Traffic Management, Security \u0438 Observability.<\/li>\n\n\n\n<li>\u041f\u0440\u0438\u043c\u0435\u0440\u0438: Istio, Linkerd.<\/li>\n<\/ul>\n\n\n\n<p class=\"wp-block-paragraph\">Blue-Green Deployment<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>\u041f\u043e\u0434\u0434\u044a\u0440\u0436\u0430 \u0434\u0432\u0435 \u0441\u0440\u0435\u0434\u0438 \u2013 Blue (\u0442\u0435\u043a\u0443\u0449\u0430 \u0432\u0435\u0440\u0441\u0438\u044f) \u0438 Green (\u043d\u043e\u0432\u0430 \u0432\u0435\u0440\u0441\u0438\u044f).<\/li>\n\n\n\n<li>\u041d\u043e\u0432\u0430\u0442\u0430 \u0432\u0435\u0440\u0441\u0438\u044f \u0441\u0435 \u0442\u0435\u0441\u0442\u0432\u0430 \u0432 Green \u0441\u0440\u0435\u0434\u0430\u0442\u0430.<\/li>\n\n\n\n<li>\u0421\u043b\u0435\u0434 \u0443\u0441\u043f\u0435\u0448\u0435\u043d \u0442\u0435\u0441\u0442 \u0442\u0440\u0430\u0444\u0438\u043a\u044a\u0442 \u0441\u0435 \u043f\u0440\u0435\u043d\u0430\u0441\u043e\u0447\u0432\u0430 \u043a\u044a\u043c \u043d\u0435\u044f.<\/li>\n\n\n\n<li>\u041f\u043e\u0437\u0432\u043e\u043b\u044f\u0432\u0430 \u0431\u044a\u0440\u0437 Rollback \u043f\u0440\u0438 \u043f\u0440\u043e\u0431\u043b\u0435\u043c.<\/li>\n<\/ul>\n\n\n\n<p class=\"wp-block-paragraph\">Canary Deployment<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>\u041d\u043e\u0432\u0430\u0442\u0430 \u0432\u0435\u0440\u0441\u0438\u044f \u0441\u0435 \u043f\u0440\u0435\u0434\u043e\u0441\u0442\u0430\u0432\u044f \u043f\u044a\u0440\u0432\u043e\u043d\u0430\u0447\u0430\u043b\u043d\u043e \u043d\u0430 \u043c\u0430\u043b\u043a\u0430 \u0447\u0430\u0441\u0442 \u043e\u0442 \u043f\u043e\u0442\u0440\u0435\u0431\u0438\u0442\u0435\u043b\u0438\u0442\u0435.<\/li>\n\n\n\n<li>\u0421\u043b\u0435\u0434\u0438 \u0441\u0435 \u043f\u043e\u0432\u0435\u0434\u0435\u043d\u0438\u0435\u0442\u043e \u0438 \u0441\u0442\u0430\u0431\u0438\u043b\u043d\u043e\u0441\u0442\u0442\u0430.<\/li>\n\n\n\n<li>\u041f\u0440\u0438 \u0443\u0441\u043f\u0435\u0448\u0435\u043d \u0440\u0435\u0437\u0443\u043b\u0442\u0430\u0442 \u043f\u043e\u0441\u0442\u0435\u043f\u0435\u043d\u043d\u043e \u0441\u0435 \u0443\u0432\u0435\u043b\u0438\u0447\u0430\u0432\u0430 \u043f\u0440\u043e\u0446\u0435\u043d\u0442\u044a\u0442 \u043d\u0430 \u0442\u0440\u0430\u0444\u0438\u043a\u0430 \u043a\u044a\u043c \u043d\u043e\u0432\u0430\u0442\u0430 \u0432\u0435\u0440\u0441\u0438\u044f.<\/li>\n<\/ul>\n\n\n\n<h2 class=\"wp-block-heading\">5. Resilience Patterns (\u041c\u043e\u0434\u0435\u043b\u0438 \u0437\u0430 \u0443\u0441\u0442\u043e\u0439\u0447\u0438\u0432\u043e\u0441\u0442)<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">\u0426\u0435\u043b\u0442\u0430 \u0438\u043c \u0435 \u0434\u0430 \u043f\u0440\u0435\u0434\u043e\u0442\u0432\u0440\u0430\u0442\u044f\u0442 \u043e\u0442\u043a\u0430\u0437\u0438 \u0438 \u0434\u0430 \u0437\u0430\u043f\u0430\u0437\u044f\u0442 \u0440\u0430\u0431\u043e\u0442\u043e\u0441\u043f\u043e\u0441\u043e\u0431\u043d\u043e\u0441\u0442\u0442\u0430 \u043d\u0430 \u0441\u0438\u0441\u0442\u0435\u043c\u0430\u0442\u0430 \u043f\u0440\u0438 \u043f\u0440\u043e\u0431\u043b\u0435\u043c\u0438.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Retry<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>\u041f\u043e\u0432\u0442\u0430\u0440\u044f \u043d\u0435\u0443\u0441\u043f\u0435\u0448\u043d\u0430 \u0437\u0430\u044f\u0432\u043a\u0430 \u0430\u0432\u0442\u043e\u043c\u0430\u0442\u0438\u0447\u043d\u043e.<\/li>\n\n\n\n<li>\u0427\u0435\u0441\u0442\u043e \u0441\u0435 \u0438\u0437\u043f\u043e\u043b\u0437\u0432\u0430 Exponential Backoff \u043c\u0435\u0436\u0434\u0443 \u043e\u043f\u0438\u0442\u0438\u0442\u0435.<\/li>\n\n\n\n<li>\u0422\u0440\u044f\u0431\u0432\u0430 \u0434\u0430 \u0441\u0435 \u043f\u0440\u0438\u043b\u0430\u0433\u0430 \u0432\u043d\u0438\u043c\u0430\u0442\u0435\u043b\u043d\u043e, \u0437\u0430 \u0434\u0430 \u043d\u0435 \u0441\u0435 \u0443\u0432\u0435\u043b\u0438\u0447\u0430\u0432\u0430 \u043d\u0430\u0442\u043e\u0432\u0430\u0440\u0432\u0430\u043d\u0435\u0442\u043e \u043f\u0440\u0438 \u0432\u0435\u0447\u0435 \u043f\u0440\u0435\u0442\u043e\u0432\u0430\u0440\u0435\u043d\u0430 \u0443\u0441\u043b\u0443\u0433\u0430.<\/li>\n<\/ul>\n\n\n\n<p class=\"wp-block-paragraph\">Bulkhead<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>\u0418\u0437\u043e\u043b\u0438\u0440\u0430 \u0440\u0435\u0441\u0443\u0440\u0441\u0438\u0442\u0435 \u043d\u0430 \u0440\u0430\u0437\u043b\u0438\u0447\u043d\u0438\u0442\u0435 \u0443\u0441\u043b\u0443\u0433\u0438 \u0438\u043b\u0438 \u043e\u043f\u0435\u0440\u0430\u0446\u0438\u0438.<\/li>\n\n\n\n<li>\u041f\u0440\u043e\u0431\u043b\u0435\u043c \u0432 \u0435\u0434\u043d\u0430 \u0447\u0430\u0441\u0442 \u043e\u0442 \u0441\u0438\u0441\u0442\u0435\u043c\u0430\u0442\u0430 \u043d\u0435 \u0442\u0440\u044f\u0431\u0432\u0430 \u0434\u0430 \u0438\u0437\u0447\u0435\u0440\u043f\u0438 \u0440\u0435\u0441\u0443\u0440\u0441\u0438\u0442\u0435 \u043d\u0430 \u043e\u0441\u0442\u0430\u043d\u0430\u043b\u0438\u0442\u0435.<\/li>\n\n\n\n<li>\u0418\u043c\u0435\u0442\u043e \u0438\u0434\u0432\u0430 \u043e\u0442 \u043f\u0440\u0435\u0433\u0440\u0430\u0434\u0438\u0442\u0435 \u0432\u044a\u0432 \u0432\u043e\u0434\u043e\u043d\u0435\u043f\u0440\u043e\u043d\u0438\u0446\u0430\u0435\u043c\u0438\u0442\u0435 \u043e\u0442\u0434\u0435\u043b\u0435\u043d\u0438\u044f \u043d\u0430 \u043a\u043e\u0440\u0430\u0431\u0438\u0442\u0435.<\/li>\n<\/ul>\n\n\n\n<p class=\"wp-block-paragraph\">Timeout<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>\u041e\u043f\u0440\u0435\u0434\u0435\u043b\u044f \u043c\u0430\u043a\u0441\u0438\u043c\u0430\u043b\u043d\u043e\u0442\u043e \u0432\u0440\u0435\u043c\u0435 \u0437\u0430 \u0438\u0437\u0447\u0430\u043a\u0432\u0430\u043d\u0435 \u043d\u0430 \u043e\u0442\u0433\u043e\u0432\u043e\u0440 \u043e\u0442 \u0434\u0440\u0443\u0433\u0430 \u0443\u0441\u043b\u0443\u0433\u0430.<\/li>\n\n\n\n<li>\u041f\u0440\u0435\u0434\u043e\u0442\u0432\u0440\u0430\u0442\u044f\u0432\u0430 \u0431\u0435\u0437\u043a\u0440\u0430\u0439\u043d\u043e \u0447\u0430\u043a\u0430\u043d\u0435 \u0438 \u0438\u0437\u0447\u0435\u0440\u043f\u0432\u0430\u043d\u0435 \u043d\u0430 \u0440\u0435\u0441\u0443\u0440\u0441\u0438.<\/li>\n<\/ul>\n\n\n\n<p class=\"wp-block-paragraph\">Failover<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>\u041f\u0440\u0435\u043d\u0430\u0441\u043e\u0447\u0432\u0430 \u0442\u0440\u0430\u0444\u0438\u043a\u0430 \u043a\u044a\u043c \u0440\u0435\u0437\u0435\u0440\u0432\u0435\u043d Service \u0438\u043b\u0438 Instance \u043f\u0440\u0438 \u043e\u0442\u043a\u0430\u0437 \u043d\u0430 \u043e\u0441\u043d\u043e\u0432\u043d\u0438\u044f.<\/li>\n\n\n\n<li>\u041f\u043e\u0434\u043e\u0431\u0440\u044f\u0432\u0430 Availability \u0438 Fault Tolerance.<\/li>\n<\/ul>\n\n\n\n<h2 class=\"wp-block-heading\">6. Observability Patterns (\u041c\u043e\u0434\u0435\u043b\u0438 \u0437\u0430 \u043d\u0430\u0431\u043b\u044e\u0434\u0435\u043d\u0438\u0435)<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">\u041f\u043e\u0437\u0432\u043e\u043b\u044f\u0432\u0430\u0442 \u0434\u0430 \u0441\u0435 \u0441\u043b\u0435\u0434\u0438 \u0441\u044a\u0441\u0442\u043e\u044f\u043d\u0438\u0435\u0442\u043e \u0438 \u043f\u0440\u043e\u0438\u0437\u0432\u043e\u0434\u0438\u0442\u0435\u043b\u043d\u043e\u0441\u0442\u0442\u0430 \u043d\u0430 Microservices.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Log Aggregation<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>\u0421\u044a\u0431\u0438\u0440\u0430 Logs \u043e\u0442 \u0432\u0441\u0438\u0447\u043a\u0438 Microservices \u043d\u0430 \u0435\u0434\u043d\u043e \u043c\u044f\u0441\u0442\u043e.<\/li>\n\n\n\n<li>\u0423\u043b\u0435\u0441\u043d\u044f\u0432\u0430 Debugging \u0438 \u0430\u043d\u0430\u043b\u0438\u0437\u0438\u0440\u0430\u043d\u0435\u0442\u043e \u043d\u0430 \u0433\u0440\u0435\u0448\u043a\u0438.<\/li>\n\n\n\n<li>\u041f\u0440\u0438\u043c\u0435\u0440\u0438: ELK Stack, Grafana Loki.<\/li>\n<\/ul>\n\n\n\n<p class=\"wp-block-paragraph\">Distributed Tracing<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>\u041f\u0440\u043e\u0441\u043b\u0435\u0434\u044f\u0432\u0430 \u0435\u0434\u043d\u0430 \u0437\u0430\u044f\u0432\u043a\u0430 \u043f\u0440\u0435\u0437 \u043c\u043d\u043e\u0436\u0435\u0441\u0442\u0432\u043e Microservices.<\/li>\n\n\n\n<li>\u041f\u043e\u0437\u0432\u043e\u043b\u044f\u0432\u0430 \u043e\u0442\u043a\u0440\u0438\u0432\u0430\u043d\u0435 \u043d\u0430 Bottlenecks \u0438 \u0437\u0430\u0431\u0430\u0432\u044f\u043d\u0438\u044f.<\/li>\n\n\n\n<li>\u041f\u0440\u0438\u043c\u0435\u0440\u0438: OpenTelemetry, Jaeger, Zipkin.<\/li>\n<\/ul>\n\n\n\n<p class=\"wp-block-paragraph\">Health Check<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>\u041f\u0440\u043e\u0432\u0435\u0440\u044f\u0432\u0430 \u0434\u0430\u043b\u0438 \u0434\u0430\u0434\u0435\u043d Service \u0440\u0430\u0431\u043e\u0442\u0438 \u043f\u0440\u0430\u0432\u0438\u043b\u043d\u043e.<\/li>\n\n\n\n<li>\u041e\u0431\u0438\u043a\u043d\u043e\u0432\u0435\u043d\u043e \u0432\u043a\u043b\u044e\u0447\u0432\u0430 Liveness \u0438 Readiness Checks.<\/li>\n\n\n\n<li>\u0418\u0437\u043f\u043e\u043b\u0437\u0432\u0430 \u0441\u0435 \u043e\u0442 Kubernetes \u0437\u0430 \u0443\u043f\u0440\u0430\u0432\u043b\u0435\u043d\u0438\u0435 \u043d\u0430 \u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u044f\u0442\u0430.<\/li>\n<\/ul>\n\n\n\n<p class=\"wp-block-paragraph\">Metrics Collection<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>\u0421\u044a\u0431\u0438\u0440\u0430 \u043f\u043e\u043a\u0430\u0437\u0430\u0442\u0435\u043b\u0438 \u0437\u0430 \u043f\u0440\u043e\u0438\u0437\u0432\u043e\u0434\u0438\u0442\u0435\u043b\u043d\u043e\u0441\u0442 \u0438 \u043d\u0430\u0442\u043e\u0432\u0430\u0440\u0432\u0430\u043d\u0435.<\/li>\n\n\n\n<li>\u041f\u0440\u0438\u043c\u0435\u0440\u0438: CPU Usage, Memory Usage, Request Rate, Error Rate \u0438 Response Time.<\/li>\n\n\n\n<li>\u0418\u043d\u0441\u0442\u0440\u0443\u043c\u0435\u043d\u0442\u0438: Prometheus \u0438 Grafana.<\/li>\n<\/ul>\n\n\n\n<h2 class=\"wp-block-heading\">7. Security Patterns (\u041c\u043e\u0434\u0435\u043b\u0438 \u0437\u0430 \u0441\u0438\u0433\u0443\u0440\u043d\u043e\u0441\u0442)<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">\u041e\u0441\u0438\u0433\u0443\u0440\u044f\u0432\u0430\u0442 \u0437\u0430\u0449\u0438\u0442\u0430 \u043d\u0430 \u043a\u043e\u043c\u0443\u043d\u0438\u043a\u0430\u0446\u0438\u044f\u0442\u0430, \u0434\u043e\u0441\u0442\u044a\u043f\u0430 \u0438 \u0434\u0430\u043d\u043d\u0438\u0442\u0435.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Access Token<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>\u0418\u0437\u043f\u043e\u043b\u0437\u0432\u0430 Tokens \u0437\u0430 Authentication \u0438 Authorization.<\/li>\n\n\n\n<li>\u0427\u0435\u0441\u0442\u043e \u0441\u0435 \u0438\u0437\u043f\u043e\u043b\u0437\u0432\u0430 OAuth 2.0 \u0438 OpenID Connect.<\/li>\n\n\n\n<li>\u041f\u0440\u0438\u043c\u0435\u0440: JWT (JSON Web Token).<\/li>\n<\/ul>\n\n\n\n<p class=\"wp-block-paragraph\">Encryption<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>\u0417\u0430\u0449\u0438\u0442\u0430\u0432\u0430 \u0434\u0430\u043d\u043d\u0438\u0442\u0435 \u043f\u0440\u0438 \u043f\u0440\u0435\u0434\u0430\u0432\u0430\u043d\u0435 (Data in Transit) \u0438 \u043f\u0440\u0438 \u0441\u044a\u0445\u0440\u0430\u043d\u0435\u043d\u0438\u0435 (Data at Rest).<\/li>\n\n\n\n<li>\u041f\u0440\u0438\u043c\u0435\u0440\u0438: TLS\/HTTPS \u0438 Database Encryption.<\/li>\n<\/ul>\n\n\n\n<p class=\"wp-block-paragraph\">API Throttling<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>\u041e\u0433\u0440\u0430\u043d\u0438\u0447\u0430\u0432\u0430\u043d\u0435 \u043d\u0430 \u0431\u0440\u043e\u044f \u0437\u0430\u044f\u0432\u043a\u0438 \u0437\u0430 \u043e\u043f\u0440\u0435\u0434\u0435\u043b\u0435\u043d \u043f\u0435\u0440\u0438\u043e\u0434.<\/li>\n\n\n\n<li>\u041f\u0440\u0435\u0434\u043e\u0442\u0432\u0440\u0430\u0442\u044f\u0432\u0430 \u0437\u043b\u043e\u0443\u043f\u043e\u0442\u0440\u0435\u0431\u0438 \u0438 \u043f\u0440\u0435\u043a\u043e\u043c\u0435\u0440\u043d\u043e \u043d\u0430\u0442\u043e\u0432\u0430\u0440\u0432\u0430\u043d\u0435.<\/li>\n\n\n\n<li>\u0427\u0435\u0441\u0442\u043e \u0441\u0435 \u0440\u0435\u0430\u043b\u0438\u0437\u0438\u0440\u0430 \u0447\u0440\u0435\u0437 Rate Limiting.<\/li>\n<\/ul>\n\n\n\n<h2 class=\"wp-block-heading\">8. Testing Patterns (\u041c\u043e\u0434\u0435\u043b\u0438 \u0437\u0430 \u0442\u0435\u0441\u0442\u0432\u0430\u043d\u0435)<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">\u041f\u043e\u043c\u0430\u0433\u0430\u0442 \u0437\u0430 \u043f\u0440\u043e\u0432\u0435\u0440\u043a\u0430 \u043d\u0430 \u043f\u0440\u0430\u0432\u0438\u043b\u043d\u0430\u0442\u0430 \u0440\u0430\u0431\u043e\u0442\u0430 \u043d\u0430 \u043e\u0442\u0434\u0435\u043b\u043d\u0438\u0442\u0435 Microservices \u0438 \u0432\u0437\u0430\u0438\u043c\u043e\u0434\u0435\u0439\u0441\u0442\u0432\u0438\u0435\u0442\u043e \u043c\u0435\u0436\u0434\u0443 \u0442\u044f\u0445.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Consumer-Driven Contracts<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Consumer \u043e\u043f\u0440\u0435\u0434\u0435\u043b\u044f \u043e\u0447\u0430\u043a\u0432\u0430\u043d\u0438\u044f\u0442\u0430 \u0441\u0438 \u043a\u044a\u043c API \u043d\u0430 Provider Service.<\/li>\n\n\n\n<li>Provider \u043f\u0440\u043e\u0432\u0435\u0440\u044f\u0432\u0430 \u0434\u0430\u043b\u0438 \u0438\u0437\u043f\u044a\u043b\u043d\u044f\u0432\u0430 \u0442\u0435\u0437\u0438 \u043e\u0447\u0430\u043a\u0432\u0430\u043d\u0438\u044f.<\/li>\n\n\n\n<li>\u041d\u0430\u043c\u0430\u043b\u044f\u0432\u0430 \u0440\u0438\u0441\u043a\u0430 \u043e\u0442 \u043d\u0435\u0441\u044a\u0432\u043c\u0435\u0441\u0442\u0438\u043c\u0438 \u043f\u0440\u043e\u043c\u0435\u043d\u0438 \u0432 API.<\/li>\n\n\n\n<li>\u041f\u0440\u0438\u043c\u0435\u0440\u0435\u043d \u0438\u043d\u0441\u0442\u0440\u0443\u043c\u0435\u043d\u0442: Pact.<\/li>\n<\/ul>\n\n\n\n<p class=\"wp-block-paragraph\">Service Virtualization<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>\u0421\u0438\u043c\u0443\u043b\u0438\u0440\u0430 \u043f\u043e\u0432\u0435\u0434\u0435\u043d\u0438\u0435\u0442\u043e \u043d\u0430 \u0432\u044a\u043d\u0448\u043d\u0438 Services, \u043a\u043e\u0438\u0442\u043e \u043d\u0435 \u0441\u0430 \u043d\u0430\u043b\u0438\u0447\u043d\u0438 \u043f\u043e \u0432\u0440\u0435\u043c\u0435 \u043d\u0430 \u0442\u0435\u0441\u0442\u0432\u0430\u043d\u0435.<\/li>\n\n\n\n<li>\u041f\u043e\u0437\u0432\u043e\u043b\u044f\u0432\u0430 \u0442\u0435\u0441\u0442\u0432\u0430\u043d\u0435 \u0431\u0435\u0437 \u0440\u0435\u0430\u043b\u043d\u0430 \u0437\u0430\u0432\u0438\u0441\u0438\u043c\u043e\u0441\u0442 \u043e\u0442 \u0432\u044a\u043d\u0448\u043d\u0430\u0442\u0430 \u0441\u0438\u0441\u0442\u0435\u043c\u0430.<\/li>\n<\/ul>\n\n\n\n<p class=\"wp-block-paragraph\">Chaos Engineering<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>\u0412\u044a\u0432\u0435\u0436\u0434\u0430 \u043a\u043e\u043d\u0442\u0440\u043e\u043b\u0438\u0440\u0430\u043d\u0438 \u043e\u0442\u043a\u0430\u0437\u0438 \u0432 \u0441\u0438\u0441\u0442\u0435\u043c\u0430\u0442\u0430.<\/li>\n\n\n\n<li>\u041f\u0440\u043e\u0432\u0435\u0440\u044f\u0432\u0430 \u0434\u0430\u043b\u0438 Microservices \u043c\u043e\u0433\u0430\u0442 \u0434\u0430 \u043f\u0440\u043e\u0434\u044a\u043b\u0436\u0430\u0442 \u0434\u0430 \u0440\u0430\u0431\u043e\u0442\u044f\u0442 \u043f\u0440\u0438 \u043f\u0440\u043e\u0431\u043b\u0435\u043c\u0438.<\/li>\n\n\n\n<li>\u041f\u0440\u0438\u043c\u0435\u0440: \u0432\u0440\u0435\u043c\u0435\u043d\u043d\u043e \u043f\u0440\u0435\u043a\u044a\u0441\u0432\u0430\u043d\u0435 \u043d\u0430 \u043c\u0440\u0435\u0436\u043e\u0432\u0430 \u0432\u0440\u044a\u0437\u043a\u0430 \u0438\u043b\u0438 \u0441\u043f\u0438\u0440\u0430\u043d\u0435 \u043d\u0430 Service Instance.<\/li>\n<\/ul>\n\n\n\n<h2 class=\"wp-block-heading\">9. Integration Patterns (\u041c\u043e\u0434\u0435\u043b\u0438 \u0437\u0430 \u0438\u043d\u0442\u0435\u0433\u0440\u0430\u0446\u0438\u044f)<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">\u0418\u0437\u043f\u043e\u043b\u0437\u0432\u0430\u0442 \u0441\u0435 \u0437\u0430 \u0441\u0432\u044a\u0440\u0437\u0432\u0430\u043d\u0435 \u043d\u0430 \u0440\u0430\u0437\u043b\u0438\u0447\u043d\u0438 Microservices \u0438 \u0432\u044a\u043d\u0448\u043d\u0438 \u0441\u0438\u0441\u0442\u0435\u043c\u0438.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Aggregator<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>\u0418\u0437\u043f\u0440\u0430\u0449\u0430 \u0437\u0430\u044f\u0432\u043a\u0438 \u043a\u044a\u043c \u043d\u044f\u043a\u043e\u043b\u043a\u043e Microservices.<\/li>\n\n\n\n<li>\u041e\u0431\u0435\u0434\u0438\u043d\u044f\u0432\u0430 \u043f\u043e\u043b\u0443\u0447\u0435\u043d\u0438\u0442\u0435 \u0440\u0435\u0437\u0443\u043b\u0442\u0430\u0442\u0438 \u0432 \u0435\u0434\u0438\u043d \u043e\u0431\u0449 Response.<\/li>\n\n\n\n<li>\u041d\u0430\u043f\u0440\u0438\u043c\u0435\u0440 Dashboard, \u043a\u043e\u0439\u0442\u043e \u0441\u044a\u0431\u0438\u0440\u0430 \u0438\u043d\u0444\u043e\u0440\u043c\u0430\u0446\u0438\u044f \u043e\u0442 Customer, Order \u0438 Payment Services.<\/li>\n<\/ul>\n\n\n\n<p class=\"wp-block-paragraph\">\u041f\u0440\u043e\u043a\u0441\u0438<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>\u0414\u0435\u0439\u0441\u0442\u0432\u0430 \u043a\u0430\u0442\u043e \u043f\u043e\u0441\u0440\u0435\u0434\u043d\u0438\u043a \u043c\u0435\u0436\u0434\u0443 Client \u0438 Service \u0438\u043b\u0438 \u043c\u0435\u0436\u0434\u0443 \u0434\u0432\u0435 Services.<\/li>\n\n\n\n<li>\u041f\u0440\u0435\u043f\u0440\u0430\u0449\u0430 \u0437\u0430\u044f\u0432\u043a\u0438\u0442\u0435 \u0438 \u043e\u0442\u0433\u043e\u0432\u043e\u0440\u0438\u0442\u0435.<\/li>\n\n\n\n<li>\u041c\u043e\u0436\u0435 \u0434\u0430 \u0434\u043e\u0431\u0430\u0432\u044f Authentication, Logging \u0438 Routing.<\/li>\n<\/ul>\n\n\n\n<p class=\"wp-block-paragraph\">\u0410\u0434\u0430\u043f\u0442\u0435\u0440<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>\u041f\u0440\u0435\u043e\u0431\u0440\u0430\u0437\u0443\u0432\u0430 Data Formats \u0438\u043b\u0438 Communication Protocols.<\/li>\n\n\n\n<li>\u041f\u043e\u0437\u0432\u043e\u043b\u044f\u0432\u0430 \u0438\u043d\u0442\u0435\u0433\u0440\u0430\u0446\u0438\u044f \u043c\u0435\u0436\u0434\u0443 \u0441\u0438\u0441\u0442\u0435\u043c\u0438 \u0441 \u0440\u0430\u0437\u043b\u0438\u0447\u043d\u0438 \u0438\u043d\u0442\u0435\u0440\u0444\u0435\u0439\u0441\u0438.<\/li>\n\n\n\n<li>\u041d\u0430\u043f\u0440\u0438\u043c\u0435\u0440 \u043f\u0440\u0435\u043e\u0431\u0440\u0430\u0437\u0443\u0432\u0430\u043d\u0435 \u043d\u0430 XML \u043a\u044a\u043c JSON.<\/li>\n<\/ul>\n\n\n\n<h2 class=\"wp-block-heading\">10. \u041d\u0430\u0439-\u0432\u0430\u0436\u043d\u0438\u0442\u0435 Microservices Patterns \u0437\u0430 Java Developer Interview<\/h2>\n\n\n\n<figure class=\"wp-block-table\"><table class=\"has-fixed-layout\"><tbody><tr><th>Pattern<\/th><th>\u041e\u0441\u043d\u043e\u0432\u043d\u043e \u043f\u0440\u0435\u0434\u043d\u0430\u0437\u043d\u0430\u0447\u0435\u043d\u0438\u0435<\/th><\/tr><tr><td>API Gateway<\/td><td>\u0415\u0434\u0438\u043d\u043d\u0430 \u0432\u0445\u043e\u0434\u043d\u0430 \u0442\u043e\u0447\u043a\u0430 \u043a\u044a\u043c Microservices<\/td><\/tr><tr><td>Service Discovery<\/td><td>\u041e\u0442\u043a\u0440\u0438\u0432\u0430\u043d\u0435 \u043d\u0430 \u043d\u0430\u043b\u0438\u0447\u043d\u0438\u0442\u0435 Services<\/td><\/tr><tr><td>Circuit Breaker<\/td><td>\u041f\u0440\u0435\u0434\u043e\u0442\u0432\u0440\u0430\u0442\u044f\u0432\u0430\u043d\u0435 \u043d\u0430 Cascading Failures<\/td><\/tr><tr><td>Database per Service<\/td><td>\u041d\u0435\u0437\u0430\u0432\u0438\u0441\u0438\u043c\u043e \u0443\u043f\u0440\u0430\u0432\u043b\u0435\u043d\u0438\u0435 \u043d\u0430 \u0434\u0430\u043d\u043d\u0438\u0442\u0435<\/td><\/tr><tr><td>Saga<\/td><td>\u0423\u043f\u0440\u0430\u0432\u043b\u0435\u043d\u0438\u0435 \u043d\u0430 Distributed Transactions<\/td><\/tr><tr><td>CQRS<\/td><td>\u0420\u0430\u0437\u0434\u0435\u043b\u044f\u043d\u0435 \u043d\u0430 Read \u0438 Write \u043e\u043f\u0435\u0440\u0430\u0446\u0438\u0438\u0442\u0435<\/td><\/tr><tr><td>Event Sourcing<\/td><td>\u0417\u0430\u043f\u0430\u0437\u0432\u0430\u043d\u0435 \u043d\u0430 \u043f\u043e\u0441\u043b\u0435\u0434\u043e\u0432\u0430\u0442\u0435\u043b\u043d\u043e\u0441\u0442\u0442\u0430 \u043e\u0442 Events<\/td><\/tr><tr><td>Retry<\/td><td>\u041f\u043e\u0432\u0442\u043e\u0440\u0435\u043d\u0438\u0435 \u043d\u0430 \u043d\u0435\u0443\u0441\u043f\u0435\u0448\u043d\u0438 \u043e\u043f\u0435\u0440\u0430\u0446\u0438\u0438<\/td><\/tr><tr><td>Bulkhead<\/td><td>\u0418\u0437\u043e\u043b\u0438\u0440\u0430\u043d\u0435 \u043d\u0430 \u0440\u0435\u0441\u0443\u0440\u0441\u0438<\/td><\/tr><tr><td>Distributed Tracing<\/td><td>\u041f\u0440\u043e\u0441\u043b\u0435\u0434\u044f\u0432\u0430\u043d\u0435 \u043d\u0430 \u0437\u0430\u044f\u0432\u043a\u0438 \u043c\u0435\u0436\u0434\u0443 Services<\/td><\/tr><tr><td>Blue-Green Deployment<\/td><td>\u0411\u0435\u0437\u043f\u0440\u043e\u0431\u043b\u0435\u043c\u043d\u043e \u043f\u0440\u0435\u043c\u0438\u043d\u0430\u0432\u0430\u043d\u0435 \u043a\u044a\u043c \u043d\u043e\u0432\u0430 \u0432\u0435\u0440\u0441\u0438\u044f<\/td><\/tr><tr><td>Canary Deployment<\/td><td>\u041f\u043e\u0441\u0442\u0435\u043f\u0435\u043d\u043d\u043e \u0432\u043d\u0435\u0434\u0440\u044f\u0432\u0430\u043d\u0435 \u043d\u0430 \u043d\u043e\u0432\u0430 \u0432\u0435\u0440\u0441\u0438\u044f<\/td><\/tr><\/tbody><\/table><\/figure>\n\n\n\n<h2 class=\"wp-block-heading\">\u041e\u0441\u043d\u043e\u0432\u0435\u043d \u0438\u0437\u0432\u043e\u0434<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">Microservices Patterns \u043f\u043e\u043c\u0430\u0433\u0430\u0442 \u0437\u0430 \u0438\u0437\u0433\u0440\u0430\u0436\u0434\u0430\u043d\u0435\u0442\u043e \u043d\u0430 \u043c\u0430\u0449\u0430\u0431\u0438\u0440\u0443\u0435\u043c\u0438, \u043d\u0435\u0437\u0430\u0432\u0438\u0441\u0438\u043c\u0438 \u0438 \u0443\u0441\u0442\u043e\u0439\u0447\u0438\u0432\u0438 \u0440\u0430\u0437\u043f\u0440\u0435\u0434\u0435\u043b\u0435\u043d\u0438 \u0441\u0438\u0441\u0442\u0435\u043c\u0438.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">\u0417\u0430 Java Developer \u0435 \u043e\u0441\u043e\u0431\u0435\u043d\u043e \u0432\u0430\u0436\u043d\u043e \u0434\u0430 \u0440\u0430\u0437\u0431\u0438\u0440\u0430 API Gateway, Service Discovery, Circuit Breaker, Saga, CQRS, Kafka\/RabbitMQ, Database per Service \u0438 Distributed Tracing, \u0437\u0430\u0449\u043e\u0442\u043e \u0442\u0435\u0437\u0438 \u043c\u043e\u0434\u0435\u043b\u0438 \u0441\u0435 \u0441\u0440\u0435\u0449\u0430\u0442 \u0447\u0435\u0441\u0442\u043e \u043f\u0440\u0438 \u0440\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u043a\u0430\u0442\u0430 \u043d\u0430 \u0441\u044a\u0432\u0440\u0435\u043c\u0435\u043d\u043d\u0438 Enterprise Applications \u0438 Microservices Architecture.<\/p>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h1 class=\"wp-block-heading\">Microservices vs Monolith Architecture<\/h1>\n\n\n\n<p class=\"wp-block-paragraph\">Monolithic Architecture \u0438 Microservices Architecture \u0441\u0430 \u0434\u0432\u0430 \u043e\u0441\u043d\u043e\u0432\u043d\u0438 \u0430\u0440\u0445\u0438\u0442\u0435\u043a\u0442\u0443\u0440\u043d\u0438 \u043f\u043e\u0434\u0445\u043e\u0434\u0430 \u0437\u0430 \u0438\u0437\u0433\u0440\u0430\u0436\u0434\u0430\u043d\u0435 \u043d\u0430 \u0441\u043e\u0444\u0442\u0443\u0435\u0440\u043d\u0438 \u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u044f.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">\u041e\u0441\u043d\u043e\u0432\u043d\u0430\u0442\u0430 \u0440\u0430\u0437\u043b\u0438\u043a\u0430 \u0435, \u0447\u0435 \u043f\u0440\u0438 Monolith \u0446\u044f\u043b\u043e\u0442\u043e \u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u0435 \u0441\u0435 \u0440\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u0432\u0430 \u0438 Deployment-\u0432\u0430 \u043a\u0430\u0442\u043e \u0435\u0434\u043d\u0430 \u043e\u0441\u043d\u043e\u0432\u043d\u0430 \u0435\u0434\u0438\u043d\u0438\u0446\u0430, \u0434\u043e\u043a\u0430\u0442\u043e \u043f\u0440\u0438 Microservices \u0441\u0438\u0441\u0442\u0435\u043c\u0430\u0442\u0430 \u0441\u0435 \u0440\u0430\u0437\u0434\u0435\u043b\u044f \u043d\u0430 \u043c\u043d\u043e\u0436\u0435\u0441\u0442\u0432\u043e \u043d\u0435\u0437\u0430\u0432\u0438\u0441\u0438\u043c\u0438 Services.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">1. Monolithic Architecture (\u041c\u043e\u043d\u043e\u043b\u0438\u0442\u043d\u0430 \u0430\u0440\u0445\u0438\u0442\u0435\u043a\u0442\u0443\u0440\u0430)<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">Monolithic Application \u0435 \u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u0435, \u0438\u0437\u0433\u0440\u0430\u0434\u0435\u043d\u043e \u043a\u0430\u0442\u043e \u0435\u0434\u043d\u0430 \u0446\u044f\u043b\u043e\u0441\u0442\u043d\u0430 \u0441\u0438\u0441\u0442\u0435\u043c\u0430. \u041d\u0435\u0433\u043e\u0432\u0438\u0442\u0435 \u043a\u043e\u043c\u043f\u043e\u043d\u0435\u043d\u0442\u0438, \u043a\u0430\u0442\u043e User Interface, Business Logic \u0438 Data Access Layer, \u043e\u0431\u0438\u043a\u043d\u043e\u0432\u0435\u043d\u043e \u0441\u0430 \u0447\u0430\u0441\u0442 \u043e\u0442 \u0435\u0434\u043d\u0430 Codebase \u0438 \u0441\u0435 Deployment-\u0432\u0430\u0442 \u0437\u0430\u0435\u0434\u043d\u043e.<\/p>\n\n\n\n<figure class=\"wp-block-image size-full\"><a href=\"https:\/\/i0.wp.com\/vkrastev1blog.com\/wp-content\/uploads\/2026\/05\/image-6.png?ssl=1\"><img data-recalc-dims=\"1\" loading=\"lazy\" decoding=\"async\" width=\"965\" height=\"537\" data-attachment-id=\"3322\" data-permalink=\"https:\/\/vkrastev1blog.com\/2026\/05\/29\/questions-and-informations-prepairing-for-java-developer-job-interview\/image-56\/\" data-orig-file=\"https:\/\/i0.wp.com\/vkrastev1blog.com\/wp-content\/uploads\/2026\/05\/image-6.png?fit=965%2C537&amp;ssl=1\" data-orig-size=\"965,537\" data-comments-opened=\"1\" data-image-title=\"image\" data-image-description=\"\" data-image-caption=\"\" data-large-file=\"https:\/\/i0.wp.com\/vkrastev1blog.com\/wp-content\/uploads\/2026\/05\/image-6.png?fit=965%2C537&amp;ssl=1\" src=\"https:\/\/i0.wp.com\/vkrastev1blog.com\/wp-content\/uploads\/2026\/05\/image-6.png?resize=965%2C537&#038;ssl=1\" alt=\"\" class=\"wp-image-3322\" srcset=\"https:\/\/i0.wp.com\/vkrastev1blog.com\/wp-content\/uploads\/2026\/05\/image-6.png?w=965&amp;ssl=1 965w, https:\/\/i0.wp.com\/vkrastev1blog.com\/wp-content\/uploads\/2026\/05\/image-6.png?resize=300%2C167&amp;ssl=1 300w, https:\/\/i0.wp.com\/vkrastev1blog.com\/wp-content\/uploads\/2026\/05\/image-6.png?resize=768%2C427&amp;ssl=1 768w\" sizes=\"auto, (max-width: 965px) 100vw, 965px\" \/><\/a><\/figure>\n\n\n\n<p class=\"wp-block-paragraph\"><a href=\"https:\/\/medium.com\/data-science\/is-microservice-architecture-the-best-choice-for-machine-learning-deployment-39ae325a2baf?utm_source=chatgpt.com\">medium.com<\/a><\/p>\n\n\n\n<h3 class=\"wp-block-heading\">\u041f\u0440\u0435\u0434\u0438\u043c\u0441\u0442\u0432\u0430 (Advantages)<\/h3>\n\n\n\n<p class=\"wp-block-paragraph\">Easy Deployment<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>\u041f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u0435\u0442\u043e \u0441\u0435 Deployment-\u0432\u0430 \u043a\u0430\u0442\u043e \u0435\u0434\u043d\u0430 \u0435\u0434\u0438\u043d\u0438\u0446\u0430.<\/li>\n\n\n\n<li>\u041d\u0435 \u0435 \u043d\u0435\u043e\u0431\u0445\u043e\u0434\u0438\u043c\u043e \u043a\u043e\u043e\u0440\u0434\u0438\u043d\u0438\u0440\u0430\u043d\u0435 \u043d\u0430 \u043c\u043d\u043e\u0436\u0435\u0441\u0442\u0432\u043e \u043d\u0435\u0437\u0430\u0432\u0438\u0441\u0438\u043c\u0438 Services.<\/li>\n<\/ul>\n\n\n\n<p class=\"wp-block-paragraph\">Development Speed<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>\u0412 \u043d\u0430\u0447\u0430\u043b\u043e\u0442\u043e \u043d\u0430 \u043f\u0440\u043e\u0435\u043a\u0442\u0430 \u0440\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u043a\u0430\u0442\u0430 \u0435 \u043f\u043e-\u0431\u044a\u0440\u0437\u0430 \u043f\u043e\u0440\u0430\u0434\u0438 \u043f\u043e-\u043f\u0440\u043e\u0441\u0442\u0430\u0442\u0430 \u0430\u0440\u0445\u0438\u0442\u0435\u043a\u0442\u0443\u0440\u0430.<\/li>\n\n\n\n<li>\u041f\u043e-\u043b\u0435\u0441\u043d\u043e Debugging \u0438 Testing.<\/li>\n<\/ul>\n\n\n\n<p class=\"wp-block-paragraph\">\u0413\u04af\u0439\u0446\u044d\u0442\u0433\u044d\u043b<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>\u0412\u044a\u0442\u0440\u0435\u0448\u043d\u0430\u0442\u0430 \u043a\u043e\u043c\u0443\u043d\u0438\u043a\u0430\u0446\u0438\u044f \u043c\u0435\u0436\u0434\u0443 \u043a\u043e\u043c\u043f\u043e\u043d\u0435\u043d\u0442\u0438\u0442\u0435 \u043e\u0431\u0438\u043a\u043d\u043e\u0432\u0435\u043d\u043e \u0435 \u0447\u0440\u0435\u0437 \u0434\u0438\u0440\u0435\u043a\u0442\u043d\u0438 Method Calls.<\/li>\n\n\n\n<li>\u041d\u0435 \u0441\u0435 \u043d\u0430\u043b\u0430\u0433\u0430 Network Communication \u043c\u0435\u0436\u0434\u0443 \u043e\u0442\u0434\u0435\u043b\u043d\u0438 Services.<\/li>\n\n\n\n<li>\u041d\u0430\u043c\u0430\u043b\u044f\u0432\u0430 Network Latency.<\/li>\n<\/ul>\n\n\n\n<p class=\"wp-block-paragraph\">Simplicity<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>\u041f\u043e-\u043b\u0435\u0441\u043d\u043e \u0443\u043f\u0440\u0430\u0432\u043b\u0435\u043d\u0438\u0435 \u043d\u0430 Configuration, Logging \u0438 Deployment.<\/li>\n\n\n\n<li>\u041f\u043e-\u043c\u0430\u043b\u043a\u043e \u0438\u043d\u0444\u0440\u0430\u0441\u0442\u0440\u0443\u043a\u0442\u0443\u0440\u043d\u0438 \u0437\u0430\u0432\u0438\u0441\u0438\u043c\u043e\u0441\u0442\u0438.<\/li>\n<\/ul>\n\n\n\n<h3 class=\"wp-block-heading\">\u041d\u0435\u0434\u043e\u0441\u0442\u0430\u0442\u044a\u0446\u0438 (Disadvantages)<\/h3>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Limited Scalability \u2013 \u043e\u0431\u0438\u043a\u043d\u043e\u0432\u0435\u043d\u043e \u0446\u044f\u043b\u043e\u0442\u043e \u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u0435 \u0441\u0435 \u043c\u0430\u0449\u0430\u0431\u0438\u0440\u0430, \u0434\u043e\u0440\u0438 \u043a\u043e\u0433\u0430\u0442\u043e \u0441\u0430\u043c\u043e \u0435\u0434\u0438\u043d \u043a\u043e\u043c\u043f\u043e\u043d\u0435\u043d\u0442 \u0438\u043c\u0430 \u043d\u0443\u0436\u0434\u0430 \u043e\u0442 \u043f\u043e\u0432\u0435\u0447\u0435 \u0440\u0435\u0441\u0443\u0440\u0441\u0438.<\/li>\n\n\n\n<li>Tight Coupling \u2013 \u043a\u043e\u043c\u043f\u043e\u043d\u0435\u043d\u0442\u0438\u0442\u0435 \u043c\u043e\u0433\u0430\u0442 \u0434\u0430 \u0441\u0442\u0430\u043d\u0430\u0442 \u0441\u0438\u043b\u043d\u043e \u0437\u0430\u0432\u0438\u0441\u0438\u043c\u0438 \u0435\u0434\u0438\u043d \u043e\u0442 \u0434\u0440\u0443\u0433.<\/li>\n\n\n\n<li>Technology Lock-in \u2013 \u043f\u043e-\u0442\u0440\u0443\u0434\u043d\u043e \u0435 \u0434\u0430 \u0441\u0435 \u0438\u0437\u043f\u043e\u043b\u0437\u0432\u0430\u0442 \u0440\u0430\u0437\u043b\u0438\u0447\u043d\u0438 \u0442\u0435\u0445\u043d\u043e\u043b\u043e\u0433\u0438\u0438 \u0437\u0430 \u043e\u0442\u0434\u0435\u043b\u043d\u0438\u0442\u0435 \u043a\u043e\u043c\u043f\u043e\u043d\u0435\u043d\u0442\u0438.<\/li>\n\n\n\n<li>Deployment Risk \u2013 \u043f\u0440\u043e\u043c\u044f\u043d\u0430 \u0432 \u0435\u0434\u0438\u043d \u043a\u043e\u043c\u043f\u043e\u043d\u0435\u043d\u0442 \u043c\u043e\u0436\u0435 \u0434\u0430 \u043d\u0430\u043b\u043e\u0436\u0438 \u043f\u043e\u0432\u0442\u043e\u0440\u043d\u043e Deployment \u043d\u0430 \u0446\u044f\u043b\u043e\u0442\u043e \u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u0435.<\/li>\n\n\n\n<li>Maintenance Complexity \u2013 \u043f\u0440\u0438 \u0440\u0430\u0437\u0440\u0430\u0441\u0442\u0432\u0430\u043d\u0435 \u043d\u0430 \u0441\u0438\u0441\u0442\u0435\u043c\u0430\u0442\u0430 Codebase \u043c\u043e\u0436\u0435 \u0434\u0430 \u0441\u0442\u0430\u043d\u0435 \u0442\u0440\u0443\u0434\u043d\u0430 \u0437\u0430 \u043f\u043e\u0434\u0434\u0440\u044a\u0436\u043a\u0430.<\/li>\n<\/ul>\n\n\n\n<h2 class=\"wp-block-heading\">2. Microservices Architecture (\u041c\u0438\u043a\u0440\u043e\u0441\u044a\u0440\u0432\u0438\u0441\u043d\u0430 \u0430\u0440\u0445\u0438\u0442\u0435\u043a\u0442\u0443\u0440\u0430)<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">Microservices Architecture \u0440\u0430\u0437\u0434\u0435\u043b\u044f \u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u0435\u0442\u043e \u043d\u0430 \u043c\u043d\u043e\u0436\u0435\u0441\u0442\u0432\u043e \u043c\u0430\u043b\u043a\u0438, \u043d\u0435\u0437\u0430\u0432\u0438\u0441\u0438\u043c\u0438 Services. \u0412\u0441\u0435\u043a\u0438 Service \u043e\u0442\u0433\u043e\u0432\u0430\u0440\u044f \u0437\u0430 \u043e\u043f\u0440\u0435\u0434\u0435\u043b\u0435\u043d\u0430 Business Capability \u0438\u043b\u0438 Business Domain.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">\u041e\u0442\u0434\u0435\u043b\u043d\u0438\u0442\u0435 Services \u043c\u043e\u0433\u0430\u0442 \u0434\u0430 \u0431\u044a\u0434\u0430\u0442 \u0440\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u0432\u0430\u043d\u0438, Deployment-\u0432\u0430\u043d\u0438 \u0438 \u043c\u0430\u0449\u0430\u0431\u0438\u0440\u0430\u043d\u0438 \u043d\u0435\u0437\u0430\u0432\u0438\u0441\u0438\u043c\u043e.<\/p>\n\n\n\n<figure class=\"wp-block-image size-full\"><a href=\"https:\/\/i0.wp.com\/vkrastev1blog.com\/wp-content\/uploads\/2026\/05\/image-7.png?ssl=1\"><img data-recalc-dims=\"1\" loading=\"lazy\" decoding=\"async\" width=\"966\" height=\"542\" data-attachment-id=\"3323\" data-permalink=\"https:\/\/vkrastev1blog.com\/2026\/05\/29\/questions-and-informations-prepairing-for-java-developer-job-interview\/image-57\/\" data-orig-file=\"https:\/\/i0.wp.com\/vkrastev1blog.com\/wp-content\/uploads\/2026\/05\/image-7.png?fit=966%2C542&amp;ssl=1\" data-orig-size=\"966,542\" data-comments-opened=\"1\" data-image-title=\"image\" data-image-description=\"\" data-image-caption=\"\" data-large-file=\"https:\/\/i0.wp.com\/vkrastev1blog.com\/wp-content\/uploads\/2026\/05\/image-7.png?fit=966%2C542&amp;ssl=1\" src=\"https:\/\/i0.wp.com\/vkrastev1blog.com\/wp-content\/uploads\/2026\/05\/image-7.png?resize=966%2C542&#038;ssl=1\" alt=\"\" class=\"wp-image-3323\" srcset=\"https:\/\/i0.wp.com\/vkrastev1blog.com\/wp-content\/uploads\/2026\/05\/image-7.png?w=966&amp;ssl=1 966w, https:\/\/i0.wp.com\/vkrastev1blog.com\/wp-content\/uploads\/2026\/05\/image-7.png?resize=300%2C168&amp;ssl=1 300w, https:\/\/i0.wp.com\/vkrastev1blog.com\/wp-content\/uploads\/2026\/05\/image-7.png?resize=768%2C431&amp;ssl=1 768w\" sizes=\"auto, (max-width: 966px) 100vw, 966px\" \/><\/a><\/figure>\n\n\n\n<p class=\"wp-block-paragraph\"><a href=\"https:\/\/www.freecodecamp.org\/news\/microservices-vs-monoliths-explained\/?utm_source=chatgpt.com\">freecodecamp.org<\/a><\/p>\n\n\n\n<p class=\"wp-block-paragraph\">\u041d\u0430\u043f\u0440\u0438\u043c\u0435\u0440 \u0435\u0434\u043d\u0430 Online Shop \u0441\u0438\u0441\u0442\u0435\u043c\u0430 \u043c\u043e\u0436\u0435 \u0434\u0430 \u0432\u043a\u043b\u044e\u0447\u0432\u0430:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Customer Service \u2013 \u0443\u043f\u0440\u0430\u0432\u043b\u0435\u043d\u0438\u0435 \u043d\u0430 \u043a\u043b\u0438\u0435\u043d\u0442\u0438\u0442\u0435.<\/li>\n\n\n\n<li>Order Service \u2013 \u0443\u043f\u0440\u0430\u0432\u043b\u0435\u043d\u0438\u0435 \u043d\u0430 \u043f\u043e\u0440\u044a\u0447\u043a\u0438\u0442\u0435.<\/li>\n\n\n\n<li>Payment Service \u2013 \u043e\u0431\u0440\u0430\u0431\u043e\u0442\u043a\u0430 \u043d\u0430 \u043f\u043b\u0430\u0449\u0430\u043d\u0438\u044f\u0442\u0430.<\/li>\n\n\n\n<li>Inventory Service \u2013 \u0443\u043f\u0440\u0430\u0432\u043b\u0435\u043d\u0438\u0435 \u043d\u0430 \u0441\u043a\u043b\u0430\u0434\u043e\u0432\u0438\u0442\u0435 \u043d\u0430\u043b\u0438\u0447\u043d\u043e\u0441\u0442\u0438.<\/li>\n\n\n\n<li>Notification Service \u2013 \u0438\u0437\u043f\u0440\u0430\u0449\u0430\u043d\u0435 \u043d\u0430 Email \u0438 \u0434\u0440\u0443\u0433\u0438 \u0438\u0437\u0432\u0435\u0441\u0442\u0438\u044f.<\/li>\n<\/ul>\n\n\n\n<h3 class=\"wp-block-heading\">\u041f\u0440\u0435\u0434\u0438\u043c\u0441\u0442\u0432\u0430 (Advantages)<\/h3>\n\n\n\n<p class=\"wp-block-paragraph\">\u04e8\u0440\u0433\u04e9\u0442\u0433\u04e9\u0445 \u0447\u0430\u0434\u0432\u0430\u0440<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>\u0412\u0441\u0435\u043a\u0438 Service \u043c\u043e\u0436\u0435 \u0434\u0430 \u0431\u044a\u0434\u0435 \u043c\u0430\u0449\u0430\u0431\u0438\u0440\u0430\u043d \u043d\u0435\u0437\u0430\u0432\u0438\u0441\u0438\u043c\u043e.<\/li>\n\n\n\n<li>\u041d\u0430\u043f\u0440\u0438\u043c\u0435\u0440 Payment Service \u043c\u043e\u0436\u0435 \u0434\u0430 \u043f\u043e\u043b\u0443\u0447\u0438 \u043f\u043e\u0432\u0435\u0447\u0435 Instances \u043f\u0440\u0438 \u0443\u0432\u0435\u043b\u0438\u0447\u0435\u043d\u043e \u043d\u0430\u0442\u043e\u0432\u0430\u0440\u0432\u0430\u043d\u0435 \u043d\u0430 \u043f\u043b\u0430\u0449\u0430\u043d\u0438\u044f\u0442\u0430.<\/li>\n<\/ul>\n\n\n\n<p class=\"wp-block-paragraph\">Flexibility<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>\u0420\u0430\u0437\u043b\u0438\u0447\u043d\u0438\u0442\u0435 Services \u043c\u043e\u0433\u0430\u0442 \u0434\u0430 \u0438\u0437\u043f\u043e\u043b\u0437\u0432\u0430\u0442 \u0440\u0430\u0437\u043b\u0438\u0447\u043d\u0438 Programming Languages, Frameworks \u0438 Databases.<\/li>\n\n\n\n<li>\u041f\u043e\u0437\u0432\u043e\u043b\u044f\u0432\u0430 \u0438\u0437\u0431\u043e\u0440 \u043d\u0430 \u043d\u0430\u0439-\u043f\u043e\u0434\u0445\u043e\u0434\u044f\u0449\u0430\u0442\u0430 \u0442\u0435\u0445\u043d\u043e\u043b\u043e\u0433\u0438\u044f \u0437\u0430 \u043a\u043e\u043d\u043a\u0440\u0435\u0442\u043d\u0430\u0442\u0430 \u0437\u0430\u0434\u0430\u0447\u0430.<\/li>\n<\/ul>\n\n\n\n<p class=\"wp-block-paragraph\">Isolation<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>\u041f\u0440\u043e\u0431\u043b\u0435\u043c \u0432 \u0435\u0434\u0438\u043d Service \u043d\u0435 \u0435 \u0437\u0430\u0434\u044a\u043b\u0436\u0438\u0442\u0435\u043b\u043d\u043e \u0434\u0430 \u0437\u0430\u0441\u0435\u0433\u043d\u0435 \u0446\u044f\u043b\u0430\u0442\u0430 \u0441\u0438\u0441\u0442\u0435\u043c\u0430.<\/li>\n\n\n\n<li>\u0427\u0440\u0435\u0437 Circuit Breaker, Timeout \u0438 Bulkhead \u043c\u043e\u0436\u0435 \u0434\u0430 \u0441\u0435 \u043e\u0433\u0440\u0430\u043d\u0438\u0447\u0438 \u0440\u0430\u0437\u043f\u0440\u043e\u0441\u0442\u0440\u0430\u043d\u0435\u043d\u0438\u0435\u0442\u043e \u043d\u0430 \u043e\u0442\u043a\u0430\u0437\u0438.<\/li>\n<\/ul>\n\n\n\n<p class=\"wp-block-paragraph\">Independent Deployment<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>\u0412\u0441\u0435\u043a\u0438 Service \u043c\u043e\u0436\u0435 \u0434\u0430 \u0431\u044a\u0434\u0435 Deployment-\u0432\u0430\u043d \u043d\u0435\u0437\u0430\u0432\u0438\u0441\u0438\u043c\u043e.<\/li>\n\n\n\n<li>\u041d\u0435 \u0435 \u043d\u0435\u043e\u0431\u0445\u043e\u0434\u0438\u043c\u043e \u0446\u044f\u043b\u0430\u0442\u0430 \u0441\u0438\u0441\u0442\u0435\u043c\u0430 \u0434\u0430 \u0431\u044a\u0434\u0435 \u0441\u043f\u0438\u0440\u0430\u043d\u0430 \u043f\u0440\u0438 \u0432\u0441\u044f\u043a\u0430 \u043f\u0440\u043e\u043c\u044f\u043d\u0430.<\/li>\n<\/ul>\n\n\n\n<p class=\"wp-block-paragraph\">Team Autonomy<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">&#8211; \u0420\u0430\u0437\u043b\u0438\u0447\u043d\u0438 Development Teams \u043c\u043e\u0433\u0430\u0442 \u0434\u0430 \u0440\u0430\u0431\u043e\u0442\u044f\u0442 \u043d\u0435\u0437\u0430\u0432\u0438\u0441\u0438\u043c\u043e \u0432\u044a\u0440\u0445\u0443 \u043e\u0442\u0434\u0435\u043b\u043d\u0438 Services.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">\u041f\u0440\u0435\u0434\u0438\u0437\u0432\u0438\u043a\u0430\u0442\u0435\u043b\u0441\u0442\u0432\u0430 (Challenges)<\/h3>\n\n\n\n<p class=\"wp-block-paragraph\">\u041d\u0430\u0440\u0438\u0439\u043d \u0442\u04e9\u0432\u04e9\u0433\u0442\u044d\u0439 \u0431\u0430\u0439\u0434\u0430\u043b<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>\u0423\u043f\u0440\u0430\u0432\u043b\u0435\u043d\u0438\u0435\u0442\u043e \u043d\u0430 \u043c\u043d\u043e\u0436\u0435\u0441\u0442\u0432\u043e Services \u0438\u0437\u0438\u0441\u043a\u0432\u0430 \u0434\u043e\u043f\u044a\u043b\u043d\u0438\u0442\u0435\u043b\u043d\u0430 \u0438\u043d\u0444\u0440\u0430\u0441\u0442\u0440\u0443\u043a\u0442\u0443\u0440\u0430.<\/li>\n\n\n\n<li>\u0427\u0435\u0441\u0442\u043e \u0441\u0435 \u0438\u0437\u043f\u043e\u043b\u0437\u0432\u0430\u0442 Docker, Kubernetes \u0438 Service Discovery.<\/li>\n<\/ul>\n\n\n\n<p class=\"wp-block-paragraph\">Network Overhead<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>\u041a\u043e\u043c\u0443\u043d\u0438\u043a\u0430\u0446\u0438\u044f\u0442\u0430 \u043c\u0435\u0436\u0434\u0443 Services \u043f\u0440\u0435\u043c\u0438\u043d\u0430\u0432\u0430 \u043f\u0440\u0435\u0437 \u043c\u0440\u0435\u0436\u0430\u0442\u0430.<\/li>\n\n\n\n<li>\u0422\u043e\u0432\u0430 \u0434\u043e\u0431\u0430\u0432\u044f Network Latency \u0438 \u0432\u044a\u0437\u043c\u043e\u0436\u043d\u043e\u0441\u0442 \u0437\u0430 Network Failures.<\/li>\n<\/ul>\n\n\n\n<p class=\"wp-block-paragraph\">Deployment Complexity<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>\u041d\u0435\u043e\u0431\u0445\u043e\u0434\u0438\u043c\u043e \u0435 \u0443\u043f\u0440\u0430\u0432\u043b\u0435\u043d\u0438\u0435 \u043d\u0430 \u043c\u043d\u043e\u0436\u0435\u0441\u0442\u0432\u043e \u043d\u0435\u0437\u0430\u0432\u0438\u0441\u0438\u043c\u0438 Deployments \u0438 \u0432\u0435\u0440\u0441\u0438\u0438.<\/li>\n\n\n\n<li>\u0418\u0437\u0438\u0441\u043a\u0432\u0430 \u0441\u0435 \u0434\u043e\u0431\u0440\u0435 \u043e\u0440\u0433\u0430\u043d\u0438\u0437\u0438\u0440\u0430\u043d CI\/CD \u043f\u0440\u043e\u0446\u0435\u0441.<\/li>\n<\/ul>\n\n\n\n<p class=\"wp-block-paragraph\">Data Management<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>\u0412\u0441\u0435\u043a\u0438 Service \u043e\u0431\u0438\u043a\u043d\u043e\u0432\u0435\u043d\u043e \u043f\u0440\u0438\u0442\u0435\u0436\u0430\u0432\u0430 \u0441\u043e\u0431\u0441\u0442\u0432\u0435\u043d\u0430 Database.<\/li>\n\n\n\n<li>Distributed Transactions \u0441\u0430 \u043f\u043e-\u0441\u043b\u043e\u0436\u043d\u0438 \u0438 \u0447\u0435\u0441\u0442\u043e \u0438\u0437\u0438\u0441\u043a\u0432\u0430\u0442 Saga Pattern.<\/li>\n<\/ul>\n\n\n\n<p class=\"wp-block-paragraph\">Monitoring and Debugging<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>\u041f\u0440\u043e\u0441\u043b\u0435\u0434\u044f\u0432\u0430\u043d\u0435\u0442\u043e \u043d\u0430 \u0435\u0434\u043d\u0430 \u0437\u0430\u044f\u0432\u043a\u0430 \u043f\u0440\u0435\u0437 \u043c\u043d\u043e\u0436\u0435\u0441\u0442\u0432\u043e Services \u0435 \u043f\u043e-\u0442\u0440\u0443\u0434\u043d\u043e.<\/li>\n\n\n\n<li>\u041d\u0435\u043e\u0431\u0445\u043e\u0434\u0438\u043c\u0438 \u0441\u0430 Centralized Logging \u0438 Distributed Tracing.<\/li>\n<\/ul>\n\n\n\n<h2 class=\"wp-block-heading\">3. Monolith vs Microservices \u2013 \u0421\u0440\u0430\u0432\u043d\u0435\u043d\u0438\u0435<\/h2>\n\n\n\n<figure class=\"wp-block-table\"><table class=\"has-fixed-layout\"><tbody><tr><th>\u0425\u0430\u0440\u0430\u043a\u0442\u0435\u0440\u0438\u0441\u0442\u0438\u043a\u0430<\/th><th>Monolith<\/th><th>Microservices<\/th><\/tr><tr><td>Architecture<\/td><td>\u0415\u0434\u043d\u043e \u0446\u044f\u043b\u043e\u0441\u0442\u043d\u043e \u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u0435<\/td><td>\u041c\u043d\u043e\u0436\u0435\u0441\u0442\u0432\u043e \u043d\u0435\u0437\u0430\u0432\u0438\u0441\u0438\u043c\u0438 Services<\/td><\/tr><tr><td>Codebase<\/td><td>\u041e\u0431\u0438\u043a\u043d\u043e\u0432\u0435\u043d\u043e \u0435\u0434\u043d\u0430 \u043e\u0431\u0449\u0430 Codebase<\/td><td>\u041e\u0442\u0434\u0435\u043b\u043d\u0438 Codebases \u0438\u043b\u0438 \u043c\u043e\u0434\u0443\u043b\u0438<\/td><\/tr><tr><td>Deployment<\/td><td>\u0417\u0430\u0435\u0434\u043d\u043e<\/td><td>\u041d\u0435\u0437\u0430\u0432\u0438\u0441\u0438\u043c\u043e<\/td><\/tr><tr><td>\u04e8\u0440\u0433\u04e9\u0442\u0433\u04e9\u0445 \u0447\u0430\u0434\u0432\u0430\u0440<\/td><td>\u041e\u0431\u0438\u043a\u043d\u043e\u0432\u0435\u043d\u043e \u0446\u044f\u043b\u043e\u0442\u043e \u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u0435<\/td><td>\u0412\u0441\u0435\u043a\u0438 Service \u043d\u0435\u0437\u0430\u0432\u0438\u0441\u0438\u043c\u043e<\/td><\/tr><tr><td>Communication<\/td><td>Method Calls<\/td><td>REST, gRPC, Messaging<\/td><\/tr><tr><td>Database<\/td><td>\u0427\u0435\u0441\u0442\u043e \u043e\u0431\u0449\u0430 Database<\/td><td>\u041e\u0431\u0438\u043a\u043d\u043e\u0432\u0435\u043d\u043e Database per Service<\/td><\/tr><tr><td>Technology<\/td><td>\u041e\u0431\u0438\u043a\u043d\u043e\u0432\u0435\u043d\u043e \u0435\u0434\u0438\u043d \u0442\u0435\u0445\u043d\u043e\u043b\u043e\u0433\u0438\u0447\u0435\u043d \u0441\u0442\u0435\u043a<\/td><td>\u0420\u0430\u0437\u043b\u0438\u0447\u043d\u0438 \u0442\u0435\u0445\u043d\u043e\u043b\u043e\u0433\u0438\u0438<\/td><\/tr><tr><td>Testing<\/td><td>\u041f\u043e-\u043b\u0435\u0441\u043d\u043e \u0438\u043d\u0442\u0435\u0433\u0440\u0430\u0446\u0438\u043e\u043d\u043d\u043e \u0442\u0435\u0441\u0442\u0432\u0430\u043d\u0435<\/td><td>\u041f\u043e-\u0441\u043b\u043e\u0436\u043d\u043e Distributed Testing<\/td><\/tr><tr><td>\u0413\u04af\u0439\u0446\u044d\u0442\u0433\u044d\u043b<\/td><td>\u041f\u043e-\u043c\u0430\u043b\u043a\u043e Network Overhead<\/td><td>\u0414\u043e\u043f\u044a\u043b\u043d\u0438\u0442\u0435\u043b\u043d\u0430 Network Latency<\/td><\/tr><tr><td>Maintenance<\/td><td>\u041f\u043e-\u043b\u0435\u0441\u043d\u043e \u0432 \u043d\u0430\u0447\u0430\u043b\u043e\u0442\u043e<\/td><td>\u0418\u0437\u0438\u0441\u043a\u0432\u0430 \u0434\u043e\u0431\u0440\u0430 Service Architecture<\/td><\/tr><tr><td>Infrastructure<\/td><td>\u041f\u043e-\u043f\u0440\u043e\u0441\u0442\u0430<\/td><td>\u041f\u043e-\u0441\u043b\u043e\u0436\u043d\u0430<\/td><\/tr><tr><td>Fault Isolation<\/td><td>\u041f\u043e-\u043e\u0433\u0440\u0430\u043d\u0438\u0447\u0435\u043d\u0430<\/td><td>\u041f\u043e-\u0434\u043e\u0431\u0440\u0430 \u043f\u0440\u0438 \u043f\u0440\u0430\u0432\u0438\u043b\u0435\u043d \u0434\u0438\u0437\u0430\u0439\u043d<\/td><\/tr><\/tbody><\/table><\/figure>\n\n\n\n<h2 class=\"wp-block-heading\">4. \u041f\u0440\u0438\u043c\u0435\u0440 \u0441 Online Shop<\/h2>\n\n\n\n<figure class=\"wp-block-image size-full\"><a href=\"https:\/\/i0.wp.com\/vkrastev1blog.com\/wp-content\/uploads\/2026\/05\/image-8.png?ssl=1\"><img data-recalc-dims=\"1\" loading=\"lazy\" decoding=\"async\" width=\"962\" height=\"712\" data-attachment-id=\"3324\" data-permalink=\"https:\/\/vkrastev1blog.com\/2026\/05\/29\/questions-and-informations-prepairing-for-java-developer-job-interview\/image-58\/\" data-orig-file=\"https:\/\/i0.wp.com\/vkrastev1blog.com\/wp-content\/uploads\/2026\/05\/image-8.png?fit=962%2C712&amp;ssl=1\" data-orig-size=\"962,712\" data-comments-opened=\"1\" data-image-title=\"image\" data-image-description=\"\" data-image-caption=\"\" data-large-file=\"https:\/\/i0.wp.com\/vkrastev1blog.com\/wp-content\/uploads\/2026\/05\/image-8.png?fit=962%2C712&amp;ssl=1\" src=\"https:\/\/i0.wp.com\/vkrastev1blog.com\/wp-content\/uploads\/2026\/05\/image-8.png?resize=962%2C712&#038;ssl=1\" alt=\"\" class=\"wp-image-3324\" srcset=\"https:\/\/i0.wp.com\/vkrastev1blog.com\/wp-content\/uploads\/2026\/05\/image-8.png?w=962&amp;ssl=1 962w, https:\/\/i0.wp.com\/vkrastev1blog.com\/wp-content\/uploads\/2026\/05\/image-8.png?resize=300%2C222&amp;ssl=1 300w, https:\/\/i0.wp.com\/vkrastev1blog.com\/wp-content\/uploads\/2026\/05\/image-8.png?resize=768%2C568&amp;ssl=1 768w\" sizes=\"auto, (max-width: 962px) 100vw, 962px\" \/><\/a><\/figure>\n\n\n\n<p class=\"wp-block-paragraph\">\u041f\u0440\u0438 Monolith \u0432\u0441\u0438\u0447\u043a\u0438 \u0431\u0438\u0437\u043d\u0435\u0441 \u0444\u0443\u043d\u043a\u0446\u0438\u0438 \u0441\u0430 \u0447\u0430\u0441\u0442 \u043e\u0442 \u0435\u0434\u043d\u043e \u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u0435 \u0438 \u043e\u0431\u0438\u043a\u043d\u043e\u0432\u0435\u043d\u043e \u0438\u0437\u043f\u043e\u043b\u0437\u0432\u0430\u0442 \u043e\u0431\u0449\u0430 Database.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">\u041f\u0440\u0438 Microservices \u0432\u0441\u044f\u043a\u0430 \u0443\u0441\u043b\u0443\u0433\u0430 \u0443\u043f\u0440\u0430\u0432\u043b\u044f\u0432\u0430 \u0441\u043e\u0431\u0441\u0442\u0432\u0435\u043d\u0438\u0442\u0435 \u0441\u0438 \u0434\u0430\u043d\u043d\u0438 \u0438 \u043a\u043e\u043c\u0443\u043d\u0438\u043a\u0438\u0440\u0430 \u0441 \u043e\u0441\u0442\u0430\u043d\u0430\u043b\u0438\u0442\u0435 \u0447\u0440\u0435\u0437 API \u0438\u043b\u0438 Message Broker.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">5. \u041a\u043e\u0433\u0430 \u0434\u0430 \u0438\u0437\u0431\u0435\u0440\u0435\u043c Monolith \u0438 \u043a\u043e\u0433\u0430 Microservices?<\/h2>\n\n\n\n<h3 class=\"wp-block-heading\">\u0418\u0437\u0431\u0435\u0440\u0435\u0442\u0435 Monolith, \u043a\u043e\u0433\u0430\u0442\u043e:<\/h3>\n\n\n\n<ul class=\"wp-block-list\">\n<li>\u0420\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u0432\u0430\u0442\u0435 \u043c\u0430\u043b\u043a\u043e \u0438\u043b\u0438 \u0441\u0440\u0435\u0434\u043d\u043e \u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u0435.<\/li>\n\n\n\n<li>\u041f\u0440\u043e\u0435\u043a\u0442\u044a\u0442 \u0435 \u0432 \u043d\u0430\u0447\u0430\u043b\u043d\u0430 \u0444\u0430\u0437\u0430.<\/li>\n\n\n\n<li>\u0415\u043a\u0438\u043f\u044a\u0442 \u0435 \u043c\u0430\u043b\u044a\u043a.<\/li>\n\n\n\n<li>\u041d\u044f\u043c\u0430\u0442\u0435 \u043d\u0443\u0436\u0434\u0430 \u043e\u0442 \u043d\u0435\u0437\u0430\u0432\u0438\u0441\u0438\u043c\u043e \u043c\u0430\u0449\u0430\u0431\u0438\u0440\u0430\u043d\u0435 \u043d\u0430 \u043e\u0442\u0434\u0435\u043b\u043d\u0438 \u043a\u043e\u043c\u043f\u043e\u043d\u0435\u043d\u0442\u0438.<\/li>\n\n\n\n<li>\u0418\u0441\u043a\u0430\u0442\u0435 \u043f\u043e-\u043f\u0440\u043e\u0441\u0442\u043e Deployment \u0438 Maintenance.<\/li>\n\n\n\n<li>\u041d\u044f\u043c\u0430\u0442\u0435 \u043d\u0435\u043e\u0431\u0445\u043e\u0434\u0438\u043c\u043e\u0441\u0442 \u043e\u0442 \u0441\u043b\u043e\u0436\u043d\u0430 Distributed Infrastructure.<\/li>\n<\/ul>\n\n\n\n<h3 class=\"wp-block-heading\">\u0418\u0437\u0431\u0435\u0440\u0435\u0442\u0435 Microservices, \u043a\u043e\u0433\u0430\u0442\u043e:<\/h3>\n\n\n\n<ul class=\"wp-block-list\">\n<li>\u0420\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u0432\u0430\u0442\u0435 \u0433\u043e\u043b\u044f\u043c\u0430 Enterprise \u0441\u0438\u0441\u0442\u0435\u043c\u0430.<\/li>\n\n\n\n<li>\u0418\u043c\u0430\u0442\u0435 \u043c\u043d\u043e\u0436\u0435\u0441\u0442\u0432\u043e \u043d\u0435\u0437\u0430\u0432\u0438\u0441\u0438\u043c\u0438 Business Domains.<\/li>\n\n\n\n<li>\u0420\u0430\u0437\u043b\u0438\u0447\u043d\u0438 Teams \u0440\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u0432\u0430\u0442 \u043e\u0442\u0434\u0435\u043b\u043d\u0438 \u0444\u0443\u043d\u043a\u0446\u0438\u043e\u043d\u0430\u043b\u043d\u043e\u0441\u0442\u0438.<\/li>\n\n\n\n<li>\u041e\u0442\u0434\u0435\u043b\u043d\u0438\u0442\u0435 Services \u0438\u043c\u0430\u0442 \u0440\u0430\u0437\u043b\u0438\u0447\u043d\u0438 \u0438\u0437\u0438\u0441\u043a\u0432\u0430\u043d\u0438\u044f \u0437\u0430 Scalability.<\/li>\n\n\n\n<li>\u0418\u043c\u0430\u0442\u0435 \u043d\u0443\u0436\u0434\u0430 \u043e\u0442 Independent Deployment.<\/li>\n\n\n\n<li>\u0420\u0430\u0437\u043f\u043e\u043b\u0430\u0433\u0430\u0442\u0435 \u0441 \u043d\u0435\u043e\u0431\u0445\u043e\u0434\u0438\u043c\u0430\u0442\u0430 \u0438\u043d\u0444\u0440\u0430\u0441\u0442\u0440\u0443\u043a\u0442\u0443\u0440\u0430 \u0437\u0430 \u0443\u043f\u0440\u0430\u0432\u043b\u0435\u043d\u0438\u0435 \u043d\u0430 Distributed Systems.<\/li>\n<\/ul>\n\n\n\n<h2 class=\"wp-block-heading\">6. \u041c\u043e\u0436\u0435 \u043b\u0438 Monolith \u0434\u0430 \u0431\u044a\u0434\u0435 \u0434\u043e\u0431\u044a\u0440 \u0430\u0440\u0445\u0438\u0442\u0435\u043a\u0442\u0443\u0440\u0435\u043d \u0438\u0437\u0431\u043e\u0440?<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">\u0414\u0430! \u0421\u044a\u0449\u0435\u0441\u0442\u0432\u0443\u0432\u0430 \u0438 \u0430\u0440\u0445\u0438\u0442\u0435\u043a\u0442\u0443\u0440\u0435\u043d \u043f\u043e\u0434\u0445\u043e\u0434, \u043d\u0430\u0440\u0435\u0447\u0435\u043d Modular Monolith.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">\u041f\u0440\u0438 \u043d\u0435\u0433\u043e \u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u0435\u0442\u043e \u043e\u0441\u0442\u0430\u0432\u0430 \u0435\u0434\u043d\u043e \u0446\u044f\u043b\u043e \u0437\u0430 Deployment, \u043d\u043e \u0432\u044a\u0442\u0440\u0435\u0448\u043d\u043e \u0435 \u0440\u0430\u0437\u0434\u0435\u043b\u0435\u043d\u043e \u043d\u0430 \u043d\u0435\u0437\u0430\u0432\u0438\u0441\u0438\u043c\u0438 Modules \u0441 \u044f\u0441\u043d\u043e \u0434\u0435\u0444\u0438\u043d\u0438\u0440\u0430\u043d\u0438 \u0433\u0440\u0430\u043d\u0438\u0446\u0438.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">\u041d\u0430\u043f\u0440\u0438\u043c\u0435\u0440:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Customer Module<\/li>\n\n\n\n<li>Order Module<\/li>\n\n\n\n<li>Payment Module<\/li>\n\n\n\n<li>Inventory Module<\/li>\n<\/ul>\n\n\n\n<p class=\"wp-block-paragraph\">\u0422\u0435\u0437\u0438 Modules \u0438\u043c\u0430\u0442 \u043e\u0442\u0434\u0435\u043b\u043d\u0430 Business Logic \u0438 \u043a\u043e\u043d\u0442\u0440\u043e\u043b\u0438\u0440\u0430\u0442 \u0434\u043e\u0441\u0442\u044a\u043f\u0430 \u0434\u043e \u0441\u043e\u0431\u0441\u0442\u0432\u0435\u043d\u0438\u0442\u0435 \u0441\u0438 \u0434\u0430\u043d\u043d\u0438.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Modular Monolith \u043f\u043e\u0437\u0432\u043e\u043b\u044f\u0432\u0430 \u0434\u043e\u0431\u0440\u0430 \u043e\u0440\u0433\u0430\u043d\u0438\u0437\u0430\u0446\u0438\u044f \u043d\u0430 \u043a\u043e\u0434\u0430, \u0431\u0435\u0437 \u0441\u043b\u043e\u0436\u043d\u043e\u0441\u0442\u0442\u0430 \u043d\u0430 Distributed Systems. \u041f\u0440\u0438 \u043d\u0435\u043e\u0431\u0445\u043e\u0434\u0438\u043c\u043e\u0441\u0442 \u043e\u0442\u0434\u0435\u043b\u0435\u043d Module \u043c\u043e\u0436\u0435 \u043f\u043e-\u043a\u044a\u0441\u043d\u043e \u0434\u0430 \u0431\u044a\u0434\u0435 \u043e\u0442\u0434\u0435\u043b\u0435\u043d \u043a\u0430\u0442\u043e Microservice.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">\u0412\u0430\u0436\u043d\u043e \u0437\u0430 Java Developer Interview<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">\u0417\u0430\u043f\u043e\u043c\u043d\u0435\u0442\u0435 \u0441\u043b\u0435\u0434\u043d\u0438\u0442\u0435 \u043e\u0441\u043d\u043e\u0432\u043d\u0438 \u0440\u0430\u0437\u043b\u0438\u043a\u0438:<\/p>\n\n\n\n<ol class=\"wp-block-list\">\n<li>Monolith \u2013 \u0435\u0434\u043d\u043e \u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u0435, \u043a\u043e\u0435\u0442\u043e \u0441\u0435 Deployment-\u0432\u0430 \u043a\u0430\u0442\u043e \u0435\u0434\u043d\u0430 \u0435\u0434\u0438\u043d\u0438\u0446\u0430.<\/li>\n\n\n\n<li>Microservices \u2013 \u043c\u043d\u043e\u0436\u0435\u0441\u0442\u0432\u043e \u043d\u0435\u0437\u0430\u0432\u0438\u0441\u0438\u043c\u0438 Services, \u043a\u043e\u0438\u0442\u043e \u043a\u043e\u043c\u0443\u043d\u0438\u043a\u0438\u0440\u0430\u0442 \u0447\u0440\u0435\u0437 API \u0438\u043b\u0438 Messaging.<\/li>\n\n\n\n<li>Scalability \u2013 Microservices \u043f\u043e\u0437\u0432\u043e\u043b\u044f\u0432\u0430\u0442 \u043d\u0435\u0437\u0430\u0432\u0438\u0441\u0438\u043c\u043e \u043c\u0430\u0449\u0430\u0431\u0438\u0440\u0430\u043d\u0435 \u043d\u0430 \u043e\u0442\u0434\u0435\u043b\u043d\u0438\u0442\u0435 Services.<\/li>\n\n\n\n<li>Communication \u2013 Monolith \u0438\u0437\u043f\u043e\u043b\u0437\u0432\u0430 \u043f\u0440\u0435\u0434\u0438\u043c\u043d\u043e \u0432\u044a\u0442\u0440\u0435\u0448\u043d\u0438 Method Calls, \u0434\u043e\u043a\u0430\u0442\u043e Microservices \u0438\u0437\u043f\u043e\u043b\u0437\u0432\u0430\u0442 Network Communication.<\/li>\n\n\n\n<li>Database per Service \u2013 \u043e\u0441\u043d\u043e\u0432\u0435\u043d \u043f\u0440\u0438\u043d\u0446\u0438\u043f \u0437\u0430 \u043d\u0435\u0437\u0430\u0432\u0438\u0441\u0438\u043c\u043e\u0441\u0442 \u043d\u0430 \u0434\u0430\u043d\u043d\u0438\u0442\u0435 \u043f\u0440\u0438 Microservices.<\/li>\n\n\n\n<li>Modular Monolith \u2013 \u0434\u043e\u0431\u0440\u0430 \u043c\u0435\u0436\u0434\u0438\u043d\u043d\u0430 \u0430\u0440\u0445\u0438\u0442\u0435\u043a\u0442\u0443\u0440\u0430 \u043c\u0435\u0436\u0434\u0443 \u0442\u0440\u0430\u0434\u0438\u0446\u0438\u043e\u043d\u043d\u0438\u044f Monolith \u0438 Microservices.<\/li>\n<\/ol>\n\n\n\n<p class=\"wp-block-paragraph\">\u041e\u0441\u043d\u043e\u0432\u0435\u043d \u0438\u0437\u0432\u043e\u0434: Microservices \u043d\u0435 \u0441\u0430 \u0430\u0432\u0442\u043e\u043c\u0430\u0442\u0438\u0447\u043d\u043e \u043f\u043e-\u0434\u043e\u0431\u0440\u0438 \u043e\u0442 Monolith. \u0417\u0430 \u043c\u0430\u043b\u043a\u0438 \u0438 \u0441\u0440\u0435\u0434\u043d\u0438 \u043f\u0440\u043e\u0435\u043a\u0442\u0438 Modular Monolith \u0447\u0435\u0441\u0442\u043e \u0435 \u043f\u043e-\u043f\u0440\u043e\u0441\u0442 \u0438 \u0438\u043a\u043e\u043d\u043e\u043c\u0438\u0447\u0435\u0441\u043a\u0438 \u0435\u0444\u0435\u043a\u0442\u0438\u0432\u0435\u043d \u0438\u0437\u0431\u043e\u0440. Microservices \u0441\u0430 \u043f\u043e\u0434\u0445\u043e\u0434\u044f\u0449\u0438, \u043a\u043e\u0433\u0430\u0442\u043e \u043d\u0435\u0437\u0430\u0432\u0438\u0441\u0438\u043c\u043e\u0442\u043e Deployment, Scalability \u0438 \u043e\u0440\u0433\u0430\u043d\u0438\u0437\u0430\u0446\u0438\u043e\u043d\u043d\u0430\u0442\u0430 \u043d\u0435\u0437\u0430\u0432\u0438\u0441\u0438\u043c\u043e\u0441\u0442 \u043d\u0430 \u0435\u043a\u0438\u043f\u0438\u0442\u0435 \u043e\u043f\u0440\u0430\u0432\u0434\u0430\u0432\u0430\u0442 \u0434\u043e\u043f\u044a\u043b\u043d\u0438\u0442\u0435\u043b\u043d\u0430\u0442\u0430 \u0441\u043b\u043e\u0436\u043d\u043e\u0441\u0442.<\/p>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h1 class=\"wp-block-heading\">Pass-by-Value vs Pass-by-Reference \u0432 Java<\/h1>\n\n\n\n<p class=\"wp-block-paragraph\">Java \u0432\u0438\u043d\u0430\u0433\u0438 \u0438\u0437\u043f\u043e\u043b\u0437\u0432\u0430 Pass-by-Value, \u043d\u0435\u0437\u0430\u0432\u0438\u0441\u0438\u043c\u043e \u0434\u0430\u043b\u0438 \u043f\u043e\u0434\u0430\u0432\u0430\u043c\u0435 Primitive Types \u0438\u043b\u0438 Objects \u043a\u044a\u043c \u0434\u0430\u0434\u0435\u043d Method.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">\u0420\u0430\u0437\u043b\u0438\u043a\u0430\u0442\u0430 \u0435 \u0432 \u0442\u043e\u0432\u0430 \u043a\u0430\u043a\u0432\u0430 \u0441\u0442\u043e\u0439\u043d\u043e\u0441\u0442 \u0441\u0435 \u043a\u043e\u043f\u0438\u0440\u0430 \u0438 \u043f\u0440\u0435\u0434\u0430\u0432\u0430 \u043d\u0430 \u043c\u0435\u0442\u043e\u0434\u0430:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>\u041f\u0440\u0438 Primitive Types \u0441\u0435 \u043f\u0440\u0435\u0434\u0430\u0432\u0430 \u043a\u043e\u043f\u0438\u0435 \u043d\u0430 \u0441\u0430\u043c\u0430\u0442\u0430 \u0441\u0442\u043e\u0439\u043d\u043e\u0441\u0442.<\/li>\n\n\n\n<li>\u041f\u0440\u0438 Objects \u0441\u0435 \u043f\u0440\u0435\u0434\u0430\u0432\u0430 \u043a\u043e\u043f\u0438\u0435 \u043d\u0430 Reference (\u043f\u0440\u0435\u043f\u0440\u0430\u0442\u043a\u0430\u0442\u0430) \u043a\u044a\u043c \u043e\u0431\u0435\u043a\u0442\u0430.<\/li>\n<\/ul>\n\n\n\n<p class=\"wp-block-paragraph\">\u0412\u0430\u0436\u043d\u043e \u0435 \u0434\u0430 \u0441\u0435 \u0440\u0430\u0437\u0431\u0435\u0440\u0435, \u0447\u0435 Java \u043d\u0435 \u0438\u0437\u043f\u043e\u043b\u0437\u0432\u0430 Pass-by-Reference.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">1. Pass-by-Value (\u041f\u0440\u0435\u0434\u0430\u0432\u0430\u043d\u0435 \u043f\u043e \u0441\u0442\u043e\u0439\u043d\u043e\u0441\u0442)<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">\u041a\u043e\u0433\u0430\u0442\u043e \u043f\u043e\u0434\u0430\u0432\u0430\u043c\u0435 \u043f\u0440\u043e\u043c\u0435\u043d\u043b\u0438\u0432\u0430 \u043a\u044a\u043c Method, Java \u0441\u044a\u0437\u0434\u0430\u0432\u0430 \u043a\u043e\u043f\u0438\u0435 \u043d\u0430 \u043d\u0435\u0439\u043d\u0430\u0442\u0430 \u0441\u0442\u043e\u0439\u043d\u043e\u0441\u0442.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">\u041f\u0440\u043e\u043c\u044f\u043d\u0430\u0442\u0430 \u043d\u0430 \u043f\u0430\u0440\u0430\u043c\u0435\u0442\u044a\u0440\u0430 \u0432\u044a\u0442\u0440\u0435 \u0432 \u043c\u0435\u0442\u043e\u0434\u0430 \u043d\u0435 \u043f\u0440\u043e\u043c\u0435\u043d\u044f \u043e\u0440\u0438\u0433\u0438\u043d\u0430\u043b\u043d\u0430\u0442\u0430 \u043f\u0440\u043e\u043c\u0435\u043d\u043b\u0438\u0432\u0430.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">2. Primitive Types Example<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">\u041f\u0440\u0438 Primitive Types, \u043a\u0430\u0442\u043e <code>int<\/code>, <code>char<\/code>, <code>boolean<\/code>, <code>double<\/code> \u0438 \u0434\u0440\u0443\u0433\u0438, \u043c\u0435\u0442\u043e\u0434\u044a\u0442 \u043f\u043e\u043b\u0443\u0447\u0430\u0432\u0430 \u043a\u043e\u043f\u0438\u0435 \u043d\u0430 \u0434\u0435\u0439\u0441\u0442\u0432\u0438\u0442\u0435\u043b\u043d\u0430\u0442\u0430 \u0441\u0442\u043e\u0439\u043d\u043e\u0441\u0442.<\/p>\n\n\n<div class=\"wp-block-code\">\n\t<div class=\"cm-editor\">\n\t\t<div class=\"cm-scroller\">\n\t\t\t\n<pre>\n<code><div class=\"cm-line\">public class Main {<\/div><div class=\"cm-line\"><\/div><div class=\"cm-line\">    public static void changeValue(int num) {<\/div><div class=\"cm-line\">        num = 100;<\/div><div class=\"cm-line\">    }<\/div><div class=\"cm-line\"><\/div><div class=\"cm-line\">    public static void main(String[] args) {<\/div><div class=\"cm-line\"><\/div><div class=\"cm-line\">        int num = 5;<\/div><div class=\"cm-line\"><\/div><div class=\"cm-line\">        changeValue(num);<\/div><div class=\"cm-line\"><\/div><div class=\"cm-line\">        System.out.println(num);<\/div><div class=\"cm-line\">    }<\/div><div class=\"cm-line\">}<\/div><\/code><\/pre>\n\t\t<\/div>\n\t<\/div>\n<\/div>\n\n\n<p class=\"wp-block-paragraph\">\u04ae\u0440 \u0434\u04af\u043d:<\/p>\n\n\n<div class=\"wp-block-code\">\n\t<div class=\"cm-editor\">\n\t\t<div class=\"cm-scroller\">\n\t\t\t\n<pre>\n<code><div class=\"cm-line\">5<\/div><\/code><\/pre>\n\t\t<\/div>\n\t<\/div>\n<\/div>\n\n\n<p class=\"wp-block-paragraph\">\u041e\u0431\u044f\u0441\u043d\u0435\u043d\u0438\u0435:<\/p>\n\n\n\n<ol class=\"wp-block-list\">\n<li>\u0421\u044a\u0437\u0434\u0430\u0432\u0430\u043c\u0435 \u043f\u0440\u043e\u043c\u0435\u043d\u043b\u0438\u0432\u0430 <code>num<\/code> \u0441\u044a\u0441 \u0441\u0442\u043e\u0439\u043d\u043e\u0441\u0442 <code>5<\/code>.<\/li>\n\n\n\n<li>\u0418\u0437\u0432\u0438\u043a\u0432\u0430\u043c\u0435 <code>changeValue(num)<\/code>.<\/li>\n\n\n\n<li>\u041c\u0435\u0442\u043e\u0434\u044a\u0442 \u043f\u043e\u043b\u0443\u0447\u0430\u0432\u0430 \u043a\u043e\u043f\u0438\u0435 \u043d\u0430 \u0441\u0442\u043e\u0439\u043d\u043e\u0441\u0442\u0442\u0430 <code>5<\/code>.<\/li>\n\n\n\n<li>\u041f\u0440\u043e\u043c\u0435\u043d\u044f\u043c\u0435 \u043b\u043e\u043a\u0430\u043b\u043d\u043e\u0442\u043e \u043a\u043e\u043f\u0438\u0435 \u043d\u0430 <code>100<\/code>.<\/li>\n\n\n\n<li>\u041e\u0440\u0438\u0433\u0438\u043d\u0430\u043b\u043d\u0430\u0442\u0430 \u043f\u0440\u043e\u043c\u0435\u043d\u043b\u0438\u0432\u0430 <code>num<\/code> \u043e\u0441\u0442\u0430\u0432\u0430 \u043d\u0435\u043f\u0440\u043e\u043c\u0435\u043d\u0435\u043d\u0430 \u0441\u044a\u0441 \u0441\u0442\u043e\u0439\u043d\u043e\u0441\u0442 <code>5<\/code>.<\/li>\n<\/ol>\n\n\n\n<h2 class=\"wp-block-heading\">3. Objects Example<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">\u041f\u0440\u0438 Objects Java \u0441\u044a\u0449\u043e \u0438\u0437\u043f\u043e\u043b\u0437\u0432\u0430 Pass-by-Value, \u043d\u043e \u0441\u0442\u043e\u0439\u043d\u043e\u0441\u0442\u0442\u0430, \u043a\u043e\u044f\u0442\u043e \u0441\u0435 \u043a\u043e\u043f\u0438\u0440\u0430, \u0435 Reference \u043a\u044a\u043c \u043e\u0431\u0435\u043a\u0442\u0430.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">\u0422\u043e\u0432\u0430 \u043e\u0437\u043d\u0430\u0447\u0430\u0432\u0430, \u0447\u0435 \u043c\u0435\u0442\u043e\u0434\u044a\u0442 \u043f\u043e\u043b\u0443\u0447\u0430\u0432\u0430 \u043a\u043e\u043f\u0438\u0435 \u043d\u0430 Reference, \u043a\u043e\u0435\u0442\u043e \u0441\u043e\u0447\u0438 \u043a\u044a\u043c \u0441\u044a\u0449\u0438\u044f \u043e\u0431\u0435\u043a\u0442 \u0432 Heap Memory.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">\u0421\u043b\u0435\u0434\u043e\u0432\u0430\u0442\u0435\u043b\u043d\u043e \u043f\u0440\u043e\u043c\u044f\u043d\u0430\u0442\u0430 \u043d\u0430 \u043f\u043e\u043b\u0435\u0442\u0430\u0442\u0430 (Fields) \u043d\u0430 \u043e\u0431\u0435\u043a\u0442\u0430 \u0441\u0435 \u043e\u0442\u0440\u0430\u0437\u044f\u0432\u0430 \u0432\u044a\u0440\u0445\u0443 \u043e\u0440\u0438\u0433\u0438\u043d\u0430\u043b\u043d\u0438\u044f \u043e\u0431\u0435\u043a\u0442.<\/p>\n\n\n<div class=\"wp-block-code\">\n\t<div class=\"cm-editor\">\n\t\t<div class=\"cm-scroller\">\n\t\t\t\n<pre>\n<code><div class=\"cm-line\">class Box {<\/div><div class=\"cm-line\">    int size;<\/div><div class=\"cm-line\">}<\/div><div class=\"cm-line\"><\/div><div class=\"cm-line\">public class Main {<\/div><div class=\"cm-line\"><\/div><div class=\"cm-line\">    public static void changeBox(Box box) {<\/div><div class=\"cm-line\">        box.size = 15;<\/div><div class=\"cm-line\">    }<\/div><div class=\"cm-line\"><\/div><div class=\"cm-line\">    public static void main(String[] args) {<\/div><div class=\"cm-line\"><\/div><div class=\"cm-line\">        Box myBox = new Box();<\/div><div class=\"cm-line\">        myBox.size = 10;<\/div><div class=\"cm-line\"><\/div><div class=\"cm-line\">        changeBox(myBox);<\/div><div class=\"cm-line\"><\/div><div class=\"cm-line\">        System.out.println(myBox.size);<\/div><div class=\"cm-line\">    }<\/div><div class=\"cm-line\">}<\/div><\/code><\/pre>\n\t\t<\/div>\n\t<\/div>\n<\/div>\n\n\n<p class=\"wp-block-paragraph\">\u04ae\u0440 \u0434\u04af\u043d:<\/p>\n\n\n<div class=\"wp-block-code\">\n\t<div class=\"cm-editor\">\n\t\t<div class=\"cm-scroller\">\n\t\t\t\n<pre>\n<code><div class=\"cm-line\">15<\/div><\/code><\/pre>\n\t\t<\/div>\n\t<\/div>\n<\/div>\n\n\n<p class=\"wp-block-paragraph\">\u041e\u0431\u044f\u0441\u043d\u0435\u043d\u0438\u0435:<\/p>\n\n\n\n<ol class=\"wp-block-list\">\n<li>\u0421\u044a\u0437\u0434\u0430\u0432\u0430\u043c\u0435 \u043e\u0431\u0435\u043a\u0442 <code>myBox<\/code> \u0441\u044a\u0441 <code>size = 10<\/code>.<\/li>\n\n\n\n<li>\u041f\u043e\u0434\u0430\u0432\u0430\u043c\u0435 Reference \u043a\u044a\u043c \u043e\u0431\u0435\u043a\u0442\u0430 \u043d\u0430 \u043c\u0435\u0442\u043e\u0434\u0430 <code>changeBox()<\/code>.<\/li>\n\n\n\n<li>\u041c\u0435\u0442\u043e\u0434\u044a\u0442 \u043f\u043e\u043b\u0443\u0447\u0430\u0432\u0430 \u043a\u043e\u043f\u0438\u0435 \u043d\u0430 Reference.<\/li>\n\n\n\n<li>\u0418 \u0434\u0432\u0435\u0442\u0435 References \u0441\u043e\u0447\u0430\u0442 \u043a\u044a\u043c \u0435\u0434\u0438\u043d \u0438 \u0441\u044a\u0449 \u043e\u0431\u0435\u043a\u0442.<\/li>\n\n\n\n<li>\u041f\u0440\u043e\u043c\u0435\u043d\u044f\u043c\u0435 <code>box.size<\/code> \u043d\u0430 <code>15<\/code>.<\/li>\n\n\n\n<li>\u041f\u0440\u043e\u043c\u044f\u043d\u0430\u0442\u0430 \u0441\u0435 \u0432\u0438\u0436\u0434\u0430 \u0438 \u0447\u0440\u0435\u0437 \u043e\u0440\u0438\u0433\u0438\u043d\u0430\u043b\u043d\u0430\u0442\u0430 \u043f\u0440\u043e\u043c\u0435\u043d\u043b\u0438\u0432\u0430 <code>myBox<\/code>.<\/li>\n<\/ol>\n\n\n\n<h2 class=\"wp-block-heading\">4. \u041a\u0430\u043a\u0432\u043e \u0441\u0442\u0430\u0432\u0430, \u0430\u043a\u043e \u043f\u0440\u043e\u043c\u0435\u043d\u0438\u043c \u0441\u0430\u043c\u0438\u044f Reference?<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">\u0410\u043a\u043e \u043f\u0440\u0438\u0441\u0432\u043e\u0438\u043c \u043d\u043e\u0432 \u043e\u0431\u0435\u043a\u0442 \u043d\u0430 \u043f\u0430\u0440\u0430\u043c\u0435\u0442\u044a\u0440\u0430 \u0432\u044a\u0442\u0440\u0435 \u0432 \u043c\u0435\u0442\u043e\u0434\u0430, \u043e\u0440\u0438\u0433\u0438\u043d\u0430\u043b\u043d\u0430\u0442\u0430 \u043f\u0440\u043e\u043c\u0435\u043d\u043b\u0438\u0432\u0430 \u043d\u044f\u043c\u0430 \u0434\u0430 \u0431\u044a\u0434\u0435 \u043f\u0440\u043e\u043c\u0435\u043d\u0435\u043d\u0430.<\/p>\n\n\n<div class=\"wp-block-code\">\n\t<div class=\"cm-editor\">\n\t\t<div class=\"cm-scroller\">\n\t\t\t\n<pre>\n<code><div class=\"cm-line\">class Box {<\/div><div class=\"cm-line\">    int size;<\/div><div class=\"cm-line\">}<\/div><div class=\"cm-line\"><\/div><div class=\"cm-line\">public class Main {<\/div><div class=\"cm-line\"><\/div><div class=\"cm-line\">    public static void changeBox(Box box) {<\/div><div class=\"cm-line\"><\/div><div class=\"cm-line\">        box = new Box();<\/div><div class=\"cm-line\">        box.size = 100;<\/div><div class=\"cm-line\">    }<\/div><div class=\"cm-line\"><\/div><div class=\"cm-line\">    public static void main(String[] args) {<\/div><div class=\"cm-line\"><\/div><div class=\"cm-line\">        Box myBox = new Box();<\/div><div class=\"cm-line\">        myBox.size = 10;<\/div><div class=\"cm-line\"><\/div><div class=\"cm-line\">        changeBox(myBox);<\/div><div class=\"cm-line\"><\/div><div class=\"cm-line\">        System.out.println(myBox.size);<\/div><div class=\"cm-line\">    }<\/div><div class=\"cm-line\">}<\/div><\/code><\/pre>\n\t\t<\/div>\n\t<\/div>\n<\/div>\n\n\n<p class=\"wp-block-paragraph\">\u04ae\u0440 \u0434\u04af\u043d:<\/p>\n\n\n<div class=\"wp-block-code\">\n\t<div class=\"cm-editor\">\n\t\t<div class=\"cm-scroller\">\n\t\t\t\n<pre>\n<code><div class=\"cm-line\">10<\/div><\/code><\/pre>\n\t\t<\/div>\n\t<\/div>\n<\/div>\n\n\n<p class=\"wp-block-paragraph\">\u041e\u0431\u044f\u0441\u043d\u0435\u043d\u0438\u0435:<\/p>\n\n\n\n<ol class=\"wp-block-list\">\n<li><code>myBox<\/code> \u0441\u043e\u0447\u0438 \u043a\u044a\u043c \u043f\u044a\u0440\u0432\u0438\u044f \u043e\u0431\u0435\u043a\u0442 \u0441\u044a\u0441 <code>size = 10<\/code>.<\/li>\n\n\n\n<li>\u041c\u0435\u0442\u043e\u0434\u044a\u0442 \u043f\u043e\u043b\u0443\u0447\u0430\u0432\u0430 \u043a\u043e\u043f\u0438\u0435 \u043d\u0430 Reference.<\/li>\n\n\n\n<li><code>box = new Box()<\/code> \u0441\u044a\u0437\u0434\u0430\u0432\u0430 \u043d\u043e\u0432 \u043e\u0431\u0435\u043a\u0442.<\/li>\n\n\n\n<li>\u041b\u043e\u043a\u0430\u043b\u043d\u0438\u044f\u0442 Reference <code>box<\/code> \u0432\u0435\u0447\u0435 \u0441\u043e\u0447\u0438 \u043a\u044a\u043c \u043d\u043e\u0432\u0438\u044f \u043e\u0431\u0435\u043a\u0442.<\/li>\n\n\n\n<li>\u041e\u0440\u0438\u0433\u0438\u043d\u0430\u043b\u043d\u0438\u044f\u0442 Reference <code>myBox<\/code> \u043f\u0440\u043e\u0434\u044a\u043b\u0436\u0430\u0432\u0430 \u0434\u0430 \u0441\u043e\u0447\u0438 \u043a\u044a\u043c \u043f\u044a\u0440\u0432\u043e\u043d\u0430\u0447\u0430\u043b\u043d\u0438\u044f \u043e\u0431\u0435\u043a\u0442.<\/li>\n\n\n\n<li>\u0421\u043b\u0435\u0434\u043e\u0432\u0430\u0442\u0435\u043b\u043d\u043e <code>myBox.size<\/code> \u043e\u0441\u0442\u0430\u0432\u0430 <code>10<\/code>.<\/li>\n<\/ol>\n\n\n\n<h2 class=\"wp-block-heading\">5. \u0421\u0440\u0430\u0432\u043d\u0435\u043d\u0438\u0435 \u2013 Primitive Types vs Objects<\/h2>\n\n\n\n<figure class=\"wp-block-table\"><table class=\"has-fixed-layout\"><tbody><tr><th>\u0425\u0430\u0440\u0430\u043a\u0442\u0435\u0440\u0438\u0441\u0442\u0438\u043a\u0430<\/th><th>Primitive Types<\/th><th>Objects<\/th><\/tr><tr><td>\u041a\u0430\u043a\u0432\u043e \u0441\u0435 \u043f\u0440\u0435\u0434\u0430\u0432\u0430?<\/td><td>\u041a\u043e\u043f\u0438\u0435 \u043d\u0430 \u0441\u0442\u043e\u0439\u043d\u043e\u0441\u0442\u0442\u0430<\/td><td>\u041a\u043e\u043f\u0438\u0435 \u043d\u0430 Reference<\/td><\/tr><tr><td>\u041f\u0440\u043e\u043c\u044f\u043d\u0430 \u043d\u0430 \u043f\u0430\u0440\u0430\u043c\u0435\u0442\u044a\u0440\u0430<\/td><td>\u041d\u0435 \u043f\u0440\u043e\u043c\u0435\u043d\u044f \u043e\u0440\u0438\u0433\u0438\u043d\u0430\u043b\u043d\u0430\u0442\u0430 \u043f\u0440\u043e\u043c\u0435\u043d\u043b\u0438\u0432\u0430<\/td><td>\u041d\u0435 \u043f\u0440\u043e\u043c\u0435\u043d\u044f \u043e\u0440\u0438\u0433\u0438\u043d\u0430\u043b\u043d\u0438\u044f Reference<\/td><\/tr><tr><td>\u041f\u0440\u043e\u043c\u044f\u043d\u0430 \u043d\u0430 Object Fields<\/td><td>\u041d\u0435\u043f\u0440\u0438\u043b\u043e\u0436\u0438\u043c\u043e<\/td><td>\u041f\u0440\u043e\u043c\u0435\u043d\u044f \u043e\u0440\u0438\u0433\u0438\u043d\u0430\u043b\u043d\u0438\u044f \u043e\u0431\u0435\u043a\u0442<\/td><\/tr><tr><td>\u041f\u0440\u0438\u0441\u0432\u043e\u044f\u0432\u0430\u043d\u0435 \u043d\u0430 \u043d\u043e\u0432\u0430 \u0441\u0442\u043e\u0439\u043d\u043e\u0441\u0442 \/ \u043e\u0431\u0435\u043a\u0442<\/td><td>\u041d\u0435 \u043f\u0440\u043e\u043c\u0435\u043d\u044f \u043e\u0440\u0438\u0433\u0438\u043d\u0430\u043b\u043d\u0430\u0442\u0430 \u043f\u0440\u043e\u043c\u0435\u043d\u043b\u0438\u0432\u0430<\/td><td>\u041d\u0435 \u043f\u0440\u043e\u043c\u0435\u043d\u044f \u043e\u0440\u0438\u0433\u0438\u043d\u0430\u043b\u043d\u0438\u044f Reference<\/td><\/tr><\/tbody><\/table><\/figure>\n\n\n\n<h2 class=\"wp-block-heading\">\u0412\u0430\u0436\u043d\u043e \u0437\u0430 Java Developer Interview<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">\u0417\u0430\u043f\u043e\u043c\u043d\u0435\u0442\u0435 \u0441\u043b\u0435\u0434\u043d\u0438\u0442\u0435 \u0442\u0440\u0438 \u043f\u0440\u0430\u0432\u0438\u043b\u0430:<\/p>\n\n\n\n<ol class=\"wp-block-list\">\n<li>Java is ALWAYS Pass-by-Value.<\/li>\n\n\n\n<li>\u041f\u0440\u0438 Primitive Types \u0441\u0435 \u043a\u043e\u043f\u0438\u0440\u0430 \u0434\u0435\u0439\u0441\u0442\u0432\u0438\u0442\u0435\u043b\u043d\u0430\u0442\u0430 \u0441\u0442\u043e\u0439\u043d\u043e\u0441\u0442.<\/li>\n\n\n\n<li>\u041f\u0440\u0438 Objects \u0441\u0435 \u043a\u043e\u043f\u0438\u0440\u0430 Reference \u043a\u044a\u043c \u043e\u0431\u0435\u043a\u0442\u0430, \u0430 \u043d\u0435 \u0441\u0430\u043c\u0438\u044f\u0442 \u043e\u0431\u0435\u043a\u0442.<\/li>\n<\/ol>\n\n\n\n<p class=\"wp-block-paragraph\">\u041f\u0440\u0430\u0432\u0438\u043b\u0435\u043d \u043e\u0442\u0433\u043e\u0432\u043e\u0440 \u043d\u0430 \u0438\u043d\u0442\u0435\u0440\u0432\u044e<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Does Java support Pass-by-Reference?<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">No. Java is strictly Pass-by-Value. When an object is passed to a method, a copy of its reference is passed by value. Therefore, the method can modify the object&#8217;s state, but it cannot change the caller&#8217;s original reference.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">\u041e\u0441\u043d\u043e\u0432\u0435\u043d \u0438\u0437\u0432\u043e\u0434: Java \u0432\u0438\u043d\u0430\u0433\u0438 \u043f\u0440\u0435\u0434\u0430\u0432\u0430 \u043a\u043e\u043f\u0438\u0435 \u043d\u0430 \u0441\u0442\u043e\u0439\u043d\u043e\u0441\u0442\u0442\u0430. \u041f\u0440\u0438 Objects \u0442\u043e\u0432\u0430 \u0435 \u043a\u043e\u043f\u0438\u0435 \u043d\u0430 Reference, \u043a\u043e\u0435\u0442\u043e \u043f\u043e\u0437\u0432\u043e\u043b\u044f\u0432\u0430 \u043f\u0440\u043e\u043c\u044f\u043d\u0430 \u043d\u0430 \u0441\u044a\u0441\u0442\u043e\u044f\u043d\u0438\u0435\u0442\u043e \u043d\u0430 \u043e\u0440\u0438\u0433\u0438\u043d\u0430\u043b\u043d\u0438\u044f \u043e\u0431\u0435\u043a\u0442, \u043d\u043e \u043d\u0435 \u0438 \u043f\u0440\u043e\u043c\u044f\u043d\u0430 \u043d\u0430 \u043e\u0440\u0438\u0433\u0438\u043d\u0430\u043b\u043d\u0430\u0442\u0430 Reference \u043f\u0440\u043e\u043c\u0435\u043d\u043b\u0438\u0432\u0430.<\/p>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h1 class=\"wp-block-heading\">Private Methods \u0432 Abstract Class<\/h1>\n\n\n\n<p class=\"wp-block-paragraph\">\u0412 Java \u0435\u0434\u0438\u043d Abstract Class \u043c\u043e\u0436\u0435 \u0434\u0430 \u0441\u044a\u0434\u044a\u0440\u0436\u0430 <code>private<\/code> methods, \u0432\u044a\u043f\u0440\u0435\u043a\u0438 \u0447\u0435 \u0441\u0430\u043c\u0438\u0442\u0435 <code>abstract methods<\/code> \u043d\u0435 \u043c\u043e\u0433\u0430\u0442 \u0434\u0430 \u0431\u044a\u0434\u0430\u0442 <code>private<\/code>.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">\u041f\u0440\u0438\u0447\u0438\u043d\u0430\u0442\u0430 \u0435, \u0447\u0435 <code>abstract methods<\/code> \u0442\u0440\u044f\u0431\u0432\u0430 \u0434\u0430 \u0431\u044a\u0434\u0430\u0442 \u0434\u043e\u0441\u0442\u044a\u043f\u043d\u0438 \u0437\u0430 \u0438\u043c\u043f\u043b\u0435\u043c\u0435\u043d\u0442\u0430\u0446\u0438\u044f (Override) \u043e\u0442 \u043d\u0430\u0441\u043b\u0435\u0434\u044f\u0432\u0430\u0449\u0438\u0442\u0435 \u043a\u043b\u0430\u0441\u043e\u0432\u0435, \u0434\u043e\u043a\u0430\u0442\u043e <code>private methods<\/code> \u0441\u0430 \u043f\u0440\u0435\u0434\u043d\u0430\u0437\u043d\u0430\u0447\u0435\u043d\u0438 \u0441\u0430\u043c\u043e \u0437\u0430 \u0432\u044a\u0442\u0440\u0435\u0448\u043d\u0430 \u0443\u043f\u043e\u0442\u0440\u0435\u0431\u0430 \u0432 Abstract Class.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">1. Helper Methods (\u041f\u043e\u043c\u043e\u0449\u043d\u0438 \u043c\u0435\u0442\u043e\u0434\u0438)<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">Private Methods \u043c\u043e\u0433\u0430\u0442 \u0434\u0430 \u0441\u044a\u0434\u044a\u0440\u0436\u0430\u0442 \u043e\u0431\u0449\u0430 \u0444\u0443\u043d\u043a\u0446\u0438\u043e\u043d\u0430\u043b\u043d\u043e\u0441\u0442, \u043a\u043e\u044f\u0442\u043e \u0441\u0435 \u0438\u0437\u043f\u043e\u043b\u0437\u0432\u0430 \u043e\u0442 \u0434\u0440\u0443\u0433\u0438 \u043c\u0435\u0442\u043e\u0434\u0438 \u0432 Abstract Class.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">\u0422\u043e\u0432\u0430 \u043f\u0440\u0435\u0434\u043e\u0442\u0432\u0440\u0430\u0442\u044f\u0432\u0430 \u0434\u0443\u0431\u043b\u0438\u0440\u0430\u043d\u0435\u0442\u043e \u043d\u0430 \u043a\u043e\u0434 \u0432 \u043d\u0430\u0441\u043b\u0435\u0434\u044f\u0432\u0430\u0449\u0438\u0442\u0435 \u043a\u043b\u0430\u0441\u043e\u0432\u0435.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">\u0416\u0438\u0448\u044d\u044d:<\/p>\n\n\n<div class=\"wp-block-code\">\n\t<div class=\"cm-editor\">\n\t\t<div class=\"cm-scroller\">\n\t\t\t\n<pre>\n<code><div class=\"cm-line\">abstract class Employee {<\/div><div class=\"cm-line\"><\/div><div class=\"cm-line\">    public void displaySalary(double salary) {<\/div><div class=\"cm-line\">        validateSalary(salary);<\/div><div class=\"cm-line\">        System.out.println(&quot;Salary: &quot; + formatSalary(salary));<\/div><div class=\"cm-line\">    }<\/div><div class=\"cm-line\"><\/div><div class=\"cm-line\">    private void validateSalary(double salary) {<\/div><div class=\"cm-line\">        if (salary &lt; 0) {<\/div><div class=\"cm-line\">            throw new IllegalArgumentException(<\/div><div class=\"cm-line\">                &quot;Salary cannot be negative&quot;<\/div><div class=\"cm-line\">            );<\/div><div class=\"cm-line\">        }<\/div><div class=\"cm-line\">    }<\/div><div class=\"cm-line\"><\/div><div class=\"cm-line\">    private String formatSalary(double salary) {<\/div><div class=\"cm-line\">        return String.format(&quot;%.2f&quot;, salary);<\/div><div class=\"cm-line\">    }<\/div><div class=\"cm-line\">}<\/div><div class=\"cm-line\"><\/div><div class=\"cm-line\">class Manager extends Employee {<\/div><div class=\"cm-line\">}<\/div><div class=\"cm-line\"><\/div><div class=\"cm-line\">public class Main {<\/div><div class=\"cm-line\">    public static void main(String[] args) {<\/div><div class=\"cm-line\">        Manager manager = new Manager();<\/div><div class=\"cm-line\">        manager.displaySalary(3500.50);<\/div><div class=\"cm-line\">    }<\/div><div class=\"cm-line\">}<\/div><\/code><\/pre>\n\t\t<\/div>\n\t<\/div>\n<\/div>\n\n\n<p class=\"wp-block-paragraph\">\u04ae\u0440 \u0434\u04af\u043d:<\/p>\n\n\n<div class=\"wp-block-code\">\n\t<div class=\"cm-editor\">\n\t\t<div class=\"cm-scroller\">\n\t\t\t\n<pre>\n<code><div class=\"cm-line\">Salary: 3500.50<\/div><\/code><\/pre>\n\t\t<\/div>\n\t<\/div>\n<\/div>\n\n\n<p class=\"wp-block-paragraph\">\u041e\u0431\u044f\u0441\u043d\u0435\u043d\u0438\u0435:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li><code>displaySalary()<\/code> \u0435 <code>public<\/code> \u0438 \u043c\u043e\u0436\u0435 \u0434\u0430 \u0431\u044a\u0434\u0435 \u0438\u0437\u0432\u0438\u043a\u0430\u043d \u043e\u0442 \u043d\u0430\u0441\u043b\u0435\u0434\u044f\u0432\u0430\u0449\u0438\u0442\u0435 \u043a\u043b\u0430\u0441\u043e\u0432\u0435 \u0438 \u0432\u044a\u043d\u0448\u043d\u0438\u044f \u043a\u043e\u0434.<\/li>\n\n\n\n<li><code>validateSalary()<\/code> \u043f\u0440\u043e\u0432\u0435\u0440\u044f\u0432\u0430 \u0434\u0430\u043b\u0438 \u0437\u0430\u043f\u043b\u0430\u0442\u0430\u0442\u0430 \u0435 \u0432\u0430\u043b\u0438\u0434\u043d\u0430.<\/li>\n\n\n\n<li><code>formatSalary()<\/code> \u0444\u043e\u0440\u043c\u0430\u0442\u0438\u0440\u0430 \u0441\u0442\u043e\u0439\u043d\u043e\u0441\u0442\u0442\u0430.<\/li>\n\n\n\n<li>\u0414\u0432\u0430\u0442\u0430 <code>private<\/code> methods \u043d\u0435 \u043c\u043e\u0433\u0430\u0442 \u0434\u0430 \u0431\u044a\u0434\u0430\u0442 \u0438\u0437\u0432\u0438\u043a\u0430\u043d\u0438 \u0434\u0438\u0440\u0435\u043a\u0442\u043d\u043e \u043e\u0442 <code>Manager<\/code>.<\/li>\n<\/ul>\n\n\n\n<h2 class=\"wp-block-heading\">2. Encapsulation (\u041a\u0430\u043f\u0441\u0443\u043b\u0430\u0446\u0438\u044f)<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">Private Methods \u043f\u043e\u0437\u0432\u043e\u043b\u044f\u0432\u0430\u0442 \u0434\u0430 \u0441\u043a\u0440\u0438\u0435\u043c \u0432\u044a\u0442\u0440\u0435\u0448\u043d\u0430\u0442\u0430 \u0440\u0435\u0430\u043b\u0438\u0437\u0430\u0446\u0438\u044f \u043d\u0430 \u0434\u0430\u0434\u0435\u043d\u0430 \u0444\u0443\u043d\u043a\u0446\u0438\u043e\u043d\u0430\u043b\u043d\u043e\u0441\u0442 \u043e\u0442 \u043d\u0430\u0441\u043b\u0435\u0434\u044f\u0432\u0430\u0449\u0438\u0442\u0435 \u043a\u043b\u0430\u0441\u043e\u0432\u0435.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">\u0422\u0430\u043a\u0430 Abstract Class \u043a\u043e\u043d\u0442\u0440\u043e\u043b\u0438\u0440\u0430 \u043a\u0430\u043a \u0441\u0435 \u0438\u0437\u043f\u044a\u043b\u043d\u044f\u0432\u0430\u0442 \u043e\u043f\u0440\u0435\u0434\u0435\u043b\u0435\u043d\u0438 \u043e\u043f\u0435\u0440\u0430\u0446\u0438\u0438.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">\u0416\u0438\u0448\u044d\u044d:<\/p>\n\n\n<div class=\"wp-block-code\">\n\t<div class=\"cm-editor\">\n\t\t<div class=\"cm-scroller\">\n\t\t\t\n<pre>\n<code><div class=\"cm-line\">abstract class Payment {<\/div><div class=\"cm-line\"><\/div><div class=\"cm-line\">    public final void processPayment(double amount) {<\/div><div class=\"cm-line\">        validateAmount(amount);<\/div><div class=\"cm-line\">        executePayment(amount);<\/div><div class=\"cm-line\">        System.out.println(&quot;Payment completed.&quot;);<\/div><div class=\"cm-line\">    }<\/div><div class=\"cm-line\"><\/div><div class=\"cm-line\">    private void validateAmount(double amount) {<\/div><div class=\"cm-line\">        if (amount &lt;= 0) {<\/div><div class=\"cm-line\">            throw new IllegalArgumentException(<\/div><div class=\"cm-line\">                &quot;Invalid payment amount&quot;<\/div><div class=\"cm-line\">            );<\/div><div class=\"cm-line\">        }<\/div><div class=\"cm-line\">    }<\/div><div class=\"cm-line\"><\/div><div class=\"cm-line\">    protected abstract void executePayment(double amount);<\/div><div class=\"cm-line\">}<\/div><div class=\"cm-line\"><\/div><div class=\"cm-line\">class CreditCardPayment extends Payment {<\/div><div class=\"cm-line\"><\/div><div class=\"cm-line\">    @Override<\/div><div class=\"cm-line\">    protected void executePayment(double amount) {<\/div><div class=\"cm-line\">        System.out.println(<\/div><div class=\"cm-line\">            &quot;Processing credit card payment: &quot; + amount<\/div><div class=\"cm-line\">        );<\/div><div class=\"cm-line\">    }<\/div><div class=\"cm-line\">}<\/div><div class=\"cm-line\"><\/div><div class=\"cm-line\">public class Main {<\/div><div class=\"cm-line\">    public static void main(String[] args) {<\/div><div class=\"cm-line\">        Payment payment = new CreditCardPayment();<\/div><div class=\"cm-line\">        payment.processPayment(100);<\/div><div class=\"cm-line\">    }<\/div><div class=\"cm-line\">}<\/div><\/code><\/pre>\n\t\t<\/div>\n\t<\/div>\n<\/div>\n\n\n<p class=\"wp-block-paragraph\">\u04ae\u0440 \u0434\u04af\u043d:<\/p>\n\n\n<div class=\"wp-block-code\">\n\t<div class=\"cm-editor\">\n\t\t<div class=\"cm-scroller\">\n\t\t\t\n<pre>\n<code><div class=\"cm-line\">Processing credit card payment: 100.0<\/div><div class=\"cm-line\">Payment completed.<\/div><\/code><\/pre>\n\t\t<\/div>\n\t<\/div>\n<\/div>\n\n\n<p class=\"wp-block-paragraph\">\u041e\u0431\u044f\u0441\u043d\u0435\u043d\u0438\u0435:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li><code>processPayment()<\/code> \u0434\u0435\u0444\u0438\u043d\u0438\u0440\u0430 \u043e\u0431\u0449\u0438\u044f \u0430\u043b\u0433\u043e\u0440\u0438\u0442\u044a\u043c.<\/li>\n\n\n\n<li><code>validateAmount()<\/code> \u0435 <code>private<\/code> \u0438 \u043d\u0435 \u043c\u043e\u0436\u0435 \u0434\u0430 \u0431\u044a\u0434\u0435 \u043f\u0440\u043e\u043c\u0435\u043d\u044f\u043d \u0447\u0440\u0435\u0437 Override.<\/li>\n\n\n\n<li><code>executePayment()<\/code> \u0435 <code>protected abstract<\/code> \u0438 \u0442\u0440\u044f\u0431\u0432\u0430 \u0434\u0430 \u0431\u044a\u0434\u0435 \u0438\u043c\u043f\u043b\u0435\u043c\u0435\u043d\u0442\u0438\u0440\u0430\u043d \u043e\u0442 \u043d\u0430\u0441\u043b\u0435\u0434\u044f\u0432\u0430\u0449\u0438\u044f \u043a\u043b\u0430\u0441.<\/li>\n\n\n\n<li><code>final<\/code> \u043f\u0440\u0435\u0434\u043e\u0442\u0432\u0440\u0430\u0442\u044f\u0432\u0430 Override \u043d\u0430 \u0446\u0435\u043b\u0438\u044f <code>processPayment()<\/code> \u043c\u0435\u0442\u043e\u0434.<\/li>\n<\/ul>\n\n\n\n<p class=\"wp-block-paragraph\">\u0422\u043e\u0437\u0438 \u043f\u0440\u0438\u043c\u0435\u0440 \u0434\u0435\u043c\u043e\u043d\u0441\u0442\u0440\u0438\u0440\u0430 Template Method Design Pattern.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">3. Internal Data Processing (\u0412\u044a\u0442\u0440\u0435\u0448\u043d\u0430 \u043e\u0431\u0440\u0430\u0431\u043e\u0442\u043a\u0430 \u043d\u0430 \u0434\u0430\u043d\u043d\u0438)<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">Private Methods \u043c\u043e\u0433\u0430\u0442 \u0434\u0430 \u043e\u0431\u0440\u0430\u0431\u043e\u0442\u0432\u0430\u0442 \u0434\u0430\u043d\u043d\u0438 \u0432\u044a\u0442\u0440\u0435 \u0432 Abstract Class, \u0431\u0435\u0437 \u043d\u0430\u0441\u043b\u0435\u0434\u044f\u0432\u0430\u0449\u0438\u0442\u0435 \u043a\u043b\u0430\u0441\u043e\u0432\u0435 \u0434\u0430 \u0438\u043c\u0430\u0442 \u0434\u043e\u0441\u0442\u044a\u043f \u0434\u043e \u0434\u0435\u0442\u0430\u0439\u043b\u0438\u0442\u0435 \u043d\u0430 \u043e\u0431\u0440\u0430\u0431\u043e\u0442\u043a\u0430\u0442\u0430.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">\u0416\u0438\u0448\u044d\u044d:<\/p>\n\n\n<div class=\"wp-block-code\">\n\t<div class=\"cm-editor\">\n\t\t<div class=\"cm-scroller\">\n\t\t\t\n<pre>\n<code><div class=\"cm-line\">abstract class DataProcessor {<\/div><div class=\"cm-line\"><\/div><div class=\"cm-line\">    public void process(String data) {<\/div><div class=\"cm-line\">        String cleanedData = cleanData(data);<\/div><div class=\"cm-line\">        saveData(cleanedData);<\/div><div class=\"cm-line\">    }<\/div><div class=\"cm-line\"><\/div><div class=\"cm-line\">    private String cleanData(String data) {<\/div><div class=\"cm-line\">        return data.trim().toUpperCase();<\/div><div class=\"cm-line\">    }<\/div><div class=\"cm-line\"><\/div><div class=\"cm-line\">    protected abstract void saveData(String data);<\/div><div class=\"cm-line\">}<\/div><div class=\"cm-line\"><\/div><div class=\"cm-line\">class DatabaseProcessor extends DataProcessor {<\/div><div class=\"cm-line\"><\/div><div class=\"cm-line\">    @Override<\/div><div class=\"cm-line\">    protected void saveData(String data) {<\/div><div class=\"cm-line\">        System.out.println(&quot;Saving: &quot; + data);<\/div><div class=\"cm-line\">    }<\/div><div class=\"cm-line\">}<\/div><div class=\"cm-line\"><\/div><div class=\"cm-line\">public class Main {<\/div><div class=\"cm-line\">    public static void main(String[] args) {<\/div><div class=\"cm-line\">        DataProcessor processor = new DatabaseProcessor();<\/div><div class=\"cm-line\">        processor.process(&quot;  hello world  &quot;);<\/div><div class=\"cm-line\">    }<\/div><div class=\"cm-line\">}<\/div><\/code><\/pre>\n\t\t<\/div>\n\t<\/div>\n<\/div>\n\n\n<p class=\"wp-block-paragraph\">\u04ae\u0440 \u0434\u04af\u043d:<\/p>\n\n\n<div class=\"wp-block-code\">\n\t<div class=\"cm-editor\">\n\t\t<div class=\"cm-scroller\">\n\t\t\t\n<pre>\n<code><div class=\"cm-line\">Saving: HELLO WORLD<\/div><\/code><\/pre>\n\t\t<\/div>\n\t<\/div>\n<\/div>\n\n\n<p class=\"wp-block-paragraph\">\u041e\u0431\u044f\u0441\u043d\u0435\u043d\u0438\u0435:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li><code>process()<\/code> \u0443\u043f\u0440\u0430\u0432\u043b\u044f\u0432\u0430 \u043f\u0440\u043e\u0446\u0435\u0441\u0430.<\/li>\n\n\n\n<li><code>cleanData()<\/code> \u043e\u0431\u0440\u0430\u0431\u043e\u0442\u0432\u0430 \u0432\u0445\u043e\u0434\u043d\u0438\u0442\u0435 \u0434\u0430\u043d\u043d\u0438 \u0438 \u0435 \u0441\u043a\u0440\u0438\u0442 \u043e\u0442 \u043d\u0430\u0441\u043b\u0435\u0434\u044f\u0432\u0430\u0449\u0438\u0442\u0435 \u043a\u043b\u0430\u0441\u043e\u0432\u0435.<\/li>\n\n\n\n<li><code>saveData()<\/code> \u043f\u0440\u0435\u0434\u043e\u0441\u0442\u0430\u0432\u044f \u0432\u044a\u0437\u043c\u043e\u0436\u043d\u043e\u0441\u0442 \u043d\u0430 \u043d\u0430\u0441\u043b\u0435\u0434\u044f\u0432\u0430\u0449\u0438\u044f \u043a\u043b\u0430\u0441 \u0434\u0430 \u0440\u0435\u0430\u043b\u0438\u0437\u0438\u0440\u0430 \u043a\u043e\u043d\u043a\u0440\u0435\u0442\u043d\u043e\u0442\u043e \u0441\u044a\u0445\u0440\u0430\u043d\u0435\u043d\u0438\u0435.<\/li>\n<\/ul>\n\n\n\n<h2 class=\"wp-block-heading\">4. \u041c\u043e\u0433\u0430\u0442 \u043b\u0438 Abstract Methods \u0434\u0430 \u0431\u044a\u0434\u0430\u0442 Private?<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">\u041d\u0435. \u0421\u043b\u0435\u0434\u043d\u0438\u044f\u0442 \u043a\u043e\u0434 \u0435 \u043d\u0435\u0432\u0430\u043b\u0438\u0434\u0435\u043d:<\/p>\n\n\n<div class=\"wp-block-code\">\n\t<div class=\"cm-editor\">\n\t\t<div class=\"cm-scroller\">\n\t\t\t\n<pre>\n<code><div class=\"cm-line\">abstract class Employee {<\/div><div class=\"cm-line\"><\/div><div class=\"cm-line\">    private abstract void calculateSalary();<\/div><div class=\"cm-line\">}<\/div><\/code><\/pre>\n\t\t<\/div>\n\t<\/div>\n<\/div>\n\n\n<p class=\"wp-block-paragraph\">\u041f\u0440\u0438\u0447\u0438\u043d\u0430\u0442\u0430 \u0435, \u0447\u0435 <code>private<\/code> \u043c\u0435\u0442\u043e\u0434\u0438\u0442\u0435 \u043d\u0435 \u0441\u0430 \u0434\u043e\u0441\u0442\u044a\u043f\u043d\u0438 \u0437\u0430 \u043d\u0430\u0441\u043b\u0435\u0434\u044f\u0432\u0430\u0449\u0438\u0442\u0435 \u043a\u043b\u0430\u0441\u043e\u0432\u0435 \u0438 \u043d\u0435 \u043c\u043e\u0433\u0430\u0442 \u0434\u0430 \u0431\u044a\u0434\u0430\u0442 Override-\u043d\u0430\u0442\u0438.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">\u041f\u0440\u0430\u0432\u0438\u043b\u043d\u0438\u044f\u0442 \u0432\u0430\u0440\u0438\u0430\u043d\u0442 \u0435:<\/p>\n\n\n<div class=\"wp-block-code\">\n\t<div class=\"cm-editor\">\n\t\t<div class=\"cm-scroller\">\n\t\t\t\n<pre>\n<code><div class=\"cm-line\">abstract class Employee {<\/div><div class=\"cm-line\"><\/div><div class=\"cm-line\">    protected abstract void calculateSalary();<\/div><div class=\"cm-line\"><\/div><div class=\"cm-line\">    private void validateEmployee() {<\/div><div class=\"cm-line\">        System.out.println(&quot;Employee validated&quot;);<\/div><div class=\"cm-line\">    }<\/div><div class=\"cm-line\">}<\/div><\/code><\/pre>\n\t\t<\/div>\n\t<\/div>\n<\/div>\n\n\n<h2 class=\"wp-block-heading\">5. \u041e\u0431\u043e\u0431\u0449\u0435\u043d\u0438\u0435<\/h2>\n\n\n\n<figure class=\"wp-block-table\"><table class=\"has-fixed-layout\"><tbody><tr><th>Method Type<\/th><th>\u0412 Abstract Class<\/th><th>\u041c\u043e\u0436\u0435 \u043b\u0438 \u0434\u0430 \u0431\u044a\u0434\u0435 Override-\u043d\u0430\u0442?<\/th><\/tr><tr><td><code>private<\/code> concrete method<\/td><td>\u0414\u0430<\/td><td>\u041d\u0435<\/td><\/tr><tr><td><code>protected<\/code> concrete method<\/td><td>\u0414\u0430<\/td><td>\u0414\u0430<\/td><\/tr><tr><td><code>public<\/code> concrete method<\/td><td>\u0414\u0430<\/td><td>\u0414\u0430<\/td><\/tr><tr><td><code>protected abstract<\/code> method<\/td><td>\u0414\u0430<\/td><td>\u0414\u0430<\/td><\/tr><tr><td><code>public abstract<\/code> method<\/td><td>\u0414\u0430<\/td><td>\u0414\u0430<\/td><\/tr><tr><td><code>private abstract<\/code> method<\/td><td>\u041d\u0435<\/td><td>\u041d\u0435<\/td><\/tr><\/tbody><\/table><\/figure>\n\n\n\n<h2 class=\"wp-block-heading\">\u0412\u0430\u0436\u043d\u043e \u0437\u0430 Java Developer Interview<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">\u0421\u0430\u043d\u0430\u0436 \u0431\u0430\u0439\u043d\u0430 \u0443\u0443:<\/p>\n\n\n\n<ol class=\"wp-block-list\">\n<li>Abstract Class \u043c\u043e\u0436\u0435 \u0434\u0430 \u0441\u044a\u0434\u044a\u0440\u0436\u0430 <code>private<\/code> methods \u0441 \u0440\u0435\u0430\u043b\u043d\u0430 \u0438\u043c\u043f\u043b\u0435\u043c\u0435\u043d\u0442\u0430\u0446\u0438\u044f.<\/li>\n\n\n\n<li><code>private<\/code> methods \u0441\u0435 \u0438\u0437\u043f\u043e\u043b\u0437\u0432\u0430\u0442 \u0437\u0430 Helper Methods \u0438 Encapsulation.<\/li>\n\n\n\n<li>Private Methods \u043d\u0435 \u0441\u0435 \u043d\u0430\u0441\u043b\u0435\u0434\u044f\u0432\u0430\u0442 \u0438 \u043d\u0435 \u043c\u043e\u0433\u0430\u0442 \u0434\u0430 \u0431\u044a\u0434\u0430\u0442 Override-\u043d\u0430\u0442\u0438.<\/li>\n\n\n\n<li>Abstract Methods \u043d\u0435 \u043c\u043e\u0433\u0430\u0442 \u0434\u0430 \u0431\u044a\u0434\u0430\u0442 <code>private<\/code>, \u0437\u0430\u0449\u043e\u0442\u043e \u0442\u0440\u044f\u0431\u0432\u0430 \u0434\u0430 \u0431\u044a\u0434\u0430\u0442 \u0434\u043e\u0441\u0442\u044a\u043f\u043d\u0438 \u0437\u0430 Override.<\/li>\n\n\n\n<li><code>Template Method Design Pattern<\/code> \u0447\u0435\u0441\u0442\u043e \u0438\u0437\u043f\u043e\u043b\u0437\u0432\u0430 <code>final<\/code> public method, <code>protected abstract<\/code> methods \u0438 <code>private<\/code> helper methods.<\/li>\n<\/ol>\n\n\n\n<p class=\"wp-block-paragraph\">\u041e\u0441\u043d\u043e\u0432\u0435\u043d \u0438\u0437\u0432\u043e\u0434: Private Methods \u0432 Abstract Class \u043f\u043e\u0437\u0432\u043e\u043b\u044f\u0432\u0430\u0442 \u0434\u0430 \u0441\u043a\u0440\u0438\u0435\u043c \u0432\u044a\u0442\u0440\u0435\u0448\u043d\u0430\u0442\u0430 \u043b\u043e\u0433\u0438\u043a\u0430 \u0438 \u0434\u0430 \u043a\u043e\u043d\u0442\u0440\u043e\u043b\u0438\u0440\u0430\u043c\u0435 \u043a\u0430\u043a \u043d\u0430\u0441\u043b\u0435\u0434\u044f\u0432\u0430\u0449\u0438\u0442\u0435 \u043a\u043b\u0430\u0441\u043e\u0432\u0435 \u0438\u0437\u043f\u043e\u043b\u0437\u0432\u0430\u0442 \u043e\u0431\u0449\u0430\u0442\u0430 \u0444\u0443\u043d\u043a\u0446\u0438\u043e\u043d\u0430\u043b\u043d\u043e\u0441\u0442.<\/p>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h1 class=\"wp-block-heading\">Private Constructors \u0432 Java (\u0418\u0437\u043f\u043e\u043b\u0437\u0432\u0430\u043d\u0435 \u043d\u0430 Private Constructors)<\/h1>\n\n\n\n<p class=\"wp-block-paragraph\">Private Constructor \u0435 \u043a\u043e\u043d\u0441\u0442\u0440\u0443\u043a\u0442\u043e\u0440, \u0434\u0435\u043a\u043b\u0430\u0440\u0438\u0440\u0430\u043d \u0441 <code>private<\/code> Access Modifier. \u0422\u043e\u0439 \u043d\u0435 \u043f\u043e\u0437\u0432\u043e\u043b\u044f\u0432\u0430 \u0441\u044a\u0437\u0434\u0430\u0432\u0430\u043d\u0435\u0442\u043e \u043d\u0430 \u043e\u0431\u0435\u043a\u0442\u0438 \u043e\u0442 \u043a\u043b\u0430\u0441\u0430 \u0438\u0437\u0432\u044a\u043d \u0441\u0430\u043c\u0438\u044f \u043a\u043b\u0430\u0441.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">\u0418\u0437\u043f\u043e\u043b\u0437\u0432\u0430 \u0441\u0435 \u043e\u0441\u043d\u043e\u0432\u043d\u043e \u0437\u0430 \u043a\u043e\u043d\u0442\u0440\u043e\u043b\u0438\u0440\u0430\u043d\u0435 \u043d\u0430 \u0441\u044a\u0437\u0434\u0430\u0432\u0430\u043d\u0435\u0442\u043e \u043d\u0430 Objects, \u043f\u0440\u0435\u0434\u043e\u0442\u0432\u0440\u0430\u0442\u044f\u0432\u0430\u043d\u0435 \u043d\u0430 \u043d\u0430\u0441\u043b\u0435\u0434\u044f\u0432\u0430\u043d\u0435 \u0438 \u0440\u0435\u0430\u043b\u0438\u0437\u0438\u0440\u0430\u043d\u0435 \u043d\u0430 Design Patterns \u043a\u0430\u0442\u043e Singleton.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">1. Utility Classes (\u041f\u043e\u043c\u043e\u0449\u043d\u0438 \u043a\u043b\u0430\u0441\u043e\u0432\u0435)<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">Utility Classes \u0441\u044a\u0434\u044a\u0440\u0436\u0430\u0442 \u0441\u0430\u043c\u043e <code>static methods<\/code> \u0431\u043e\u043b\u043e\u043d <code>static members<\/code>. \u041d\u0435 \u0435 \u043d\u0435\u043e\u0431\u0445\u043e\u0434\u0438\u043c\u043e \u0434\u0430 \u0441\u044a\u0437\u0434\u0430\u0432\u0430\u043c\u0435 \u043e\u0431\u0435\u043a\u0442\u0438 \u043e\u0442 \u0442\u0435\u0437\u0438 \u043a\u043b\u0430\u0441\u043e\u0432\u0435.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Private Constructor \u043f\u0440\u0435\u0434\u043e\u0442\u0432\u0440\u0430\u0442\u044f\u0432\u0430 \u0441\u043b\u0443\u0447\u0430\u0439\u043d\u043e\u0442\u043e \u0441\u044a\u0437\u0434\u0430\u0432\u0430\u043d\u0435 \u043d\u0430 Instance.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">\u0416\u0438\u0448\u044d\u044d:<\/p>\n\n\n<div class=\"wp-block-code\">\n\t<div class=\"cm-editor\">\n\t\t<div class=\"cm-scroller\">\n\t\t\t\n<pre>\n<code><div class=\"cm-line\">public final class MathUtils {<\/div><div class=\"cm-line\"><\/div><div class=\"cm-line\">    private MathUtils() {<\/div><div class=\"cm-line\">        \/\/ Prevent object creation<\/div><div class=\"cm-line\">    }<\/div><div class=\"cm-line\"><\/div><div class=\"cm-line\">    public static int add(int a, int b) {<\/div><div class=\"cm-line\">        return a + b;<\/div><div class=\"cm-line\">    }<\/div><div class=\"cm-line\"><\/div><div class=\"cm-line\">    public static int multiply(int a, int b) {<\/div><div class=\"cm-line\">        return a * b;<\/div><div class=\"cm-line\">    }<\/div><div class=\"cm-line\">}<\/div><\/code><\/pre>\n\t\t<\/div>\n\t<\/div>\n<\/div>\n\n\n<p class=\"wp-block-paragraph\">\u0418\u0437\u043f\u043e\u043b\u0437\u0432\u0430\u043d\u0435:<\/p>\n\n\n<div class=\"wp-block-code\">\n\t<div class=\"cm-editor\">\n\t\t<div class=\"cm-scroller\">\n\t\t\t\n<pre>\n<code><div class=\"cm-line\">public class Main {<\/div><div class=\"cm-line\">    public static void main(String[] args) {<\/div><div class=\"cm-line\"><\/div><div class=\"cm-line\">        int result = MathUtils.add(10, 20);<\/div><div class=\"cm-line\"><\/div><div class=\"cm-line\">        System.out.println(result);<\/div><div class=\"cm-line\">    }<\/div><div class=\"cm-line\">}<\/div><\/code><\/pre>\n\t\t<\/div>\n\t<\/div>\n<\/div>\n\n\n<p class=\"wp-block-paragraph\">\u04ae\u0440 \u0434\u04af\u043d:<\/p>\n\n\n<div class=\"wp-block-code\">\n\t<div class=\"cm-editor\">\n\t\t<div class=\"cm-scroller\">\n\t\t\t\n<pre>\n<code><div class=\"cm-line\">30<\/div><\/code><\/pre>\n\t\t<\/div>\n\t<\/div>\n<\/div>\n\n\n<p class=\"wp-block-paragraph\">\u0421\u043b\u0435\u0434\u043d\u0438\u044f\u0442 \u043a\u043e\u0434 \u043d\u044f\u043c\u0430 \u0434\u0430 \u0440\u0430\u0431\u043e\u0442\u0438:<\/p>\n\n\n<div class=\"wp-block-code\">\n\t<div class=\"cm-editor\">\n\t\t<div class=\"cm-scroller\">\n\t\t\t\n<pre>\n<code><div class=\"cm-line\">MathUtils utils = new MathUtils();<\/div><\/code><\/pre>\n\t\t<\/div>\n\t<\/div>\n<\/div>\n\n\n<p class=\"wp-block-paragraph\">\u041f\u0440\u0438\u0447\u0438\u043d\u0430\u0442\u0430 \u0435, \u0447\u0435 \u043a\u043e\u043d\u0441\u0442\u0440\u0443\u043a\u0442\u043e\u0440\u044a\u0442 \u0435 <code>private<\/code>.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">\u0427\u0443\u0445\u0430\u043b: <code>final<\/code> \u043f\u0440\u0435\u0434\u043e\u0442\u0432\u0440\u0430\u0442\u044f\u0432\u0430 \u043d\u0430\u0441\u043b\u0435\u0434\u044f\u0432\u0430\u043d\u0435\u0442\u043e \u043d\u0430 \u043a\u043b\u0430\u0441\u0430, \u0434\u043e\u043a\u0430\u0442\u043e <code>private constructor<\/code> \u043f\u0440\u0435\u0434\u043e\u0442\u0432\u0440\u0430\u0442\u044f\u0432\u0430 \u0441\u044a\u0437\u0434\u0430\u0432\u0430\u043d\u0435\u0442\u043e \u043d\u0430 \u043e\u0431\u0435\u043a\u0442\u0438 \u043e\u0442\u0432\u044a\u043d. \u0422\u043e\u0432\u0430 \u0441\u0430 \u0434\u0432\u0435 \u0440\u0430\u0437\u043b\u0438\u0447\u043d\u0438 \u043e\u0433\u0440\u0430\u043d\u0438\u0447\u0435\u043d\u0438\u044f.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">2. Constant Classes (\u041a\u043b\u0430\u0441\u043e\u0432\u0435 \u0441 \u043a\u043e\u043d\u0441\u0442\u0430\u043d\u0442\u0438)<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">Private Constructor \u043c\u043e\u0436\u0435 \u0434\u0430 \u0441\u0435 \u0438\u0437\u043f\u043e\u043b\u0437\u0432\u0430 \u043f\u0440\u0438 \u043a\u043b\u0430\u0441\u043e\u0432\u0435, \u043a\u043e\u0438\u0442\u043e \u0441\u044a\u0434\u044a\u0440\u0436\u0430\u0442 \u0441\u0430\u043c\u043e \u043a\u043e\u043d\u0441\u0442\u0430\u043d\u0442\u0438.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">\u0416\u0438\u0448\u044d\u044d:<\/p>\n\n\n<div class=\"wp-block-code\">\n\t<div class=\"cm-editor\">\n\t\t<div class=\"cm-scroller\">\n\t\t\t\n<pre>\n<code><div class=\"cm-line\">public final class AppConstants {<\/div><div class=\"cm-line\"><\/div><div class=\"cm-line\">    private AppConstants() {<\/div><div class=\"cm-line\">    }<\/div><div class=\"cm-line\"><\/div><div class=\"cm-line\">    public static final String APP_NAME = &quot;MyApplication&quot;;<\/div><div class=\"cm-line\">    public static final int MAX_USERS = 100;<\/div><div class=\"cm-line\">    public static final double TAX_RATE = 0.20;<\/div><div class=\"cm-line\">}<\/div><\/code><\/pre>\n\t\t<\/div>\n\t<\/div>\n<\/div>\n\n\n<p class=\"wp-block-paragraph\">\u0418\u0437\u043f\u043e\u043b\u0437\u0432\u0430\u043d\u0435:<\/p>\n\n\n<div class=\"wp-block-code\">\n\t<div class=\"cm-editor\">\n\t\t<div class=\"cm-scroller\">\n\t\t\t\n<pre>\n<code><div class=\"cm-line\">public class Main {<\/div><div class=\"cm-line\"><\/div><div class=\"cm-line\">    public static void main(String[] args) {<\/div><div class=\"cm-line\"><\/div><div class=\"cm-line\">        System.out.println(AppConstants.APP_NAME);<\/div><div class=\"cm-line\">        System.out.println(AppConstants.MAX_USERS);<\/div><div class=\"cm-line\">    }<\/div><div class=\"cm-line\">}<\/div><\/code><\/pre>\n\t\t<\/div>\n\t<\/div>\n<\/div>\n\n\n<p class=\"wp-block-paragraph\">\u04ae\u0440 \u0434\u04af\u043d:<\/p>\n\n\n<div class=\"wp-block-code\">\n\t<div class=\"cm-editor\">\n\t\t<div class=\"cm-scroller\">\n\t\t\t\n<pre>\n<code><div class=\"cm-line\">MyApplication<\/div><div class=\"cm-line\">100<\/div><\/code><\/pre>\n\t\t<\/div>\n\t<\/div>\n<\/div>\n\n\n<p class=\"wp-block-paragraph\">\u041d\u0435 \u0435 \u043d\u0435\u043e\u0431\u0445\u043e\u0434\u0438\u043c\u043e \u0434\u0430 \u0441\u044a\u0437\u0434\u0430\u0432\u0430\u043c\u0435 Instance \u043d\u0430 <code>AppConstants<\/code>.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">3. Avoiding Subclassing (\u041f\u0440\u0435\u0434\u043e\u0442\u0432\u0440\u0430\u0442\u044f\u0432\u0430\u043d\u0435 \u043d\u0430 \u043d\u0430\u0441\u043b\u0435\u0434\u044f\u0432\u0430\u043d\u0435)<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">Private Constructor \u043c\u043e\u0436\u0435 \u0434\u0430 \u043f\u0440\u0435\u0434\u043e\u0442\u0432\u0440\u0430\u0442\u0438 \u043d\u0430\u0441\u043b\u0435\u0434\u044f\u0432\u0430\u043d\u0435\u0442\u043e \u043d\u0430 \u043a\u043b\u0430\u0441 \u043e\u0442 \u0434\u0440\u0443\u0433\u0438 \u043a\u043b\u0430\u0441\u043e\u0432\u0435.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">\u0416\u0438\u0448\u044d\u044d:<\/p>\n\n\n<div class=\"wp-block-code\">\n\t<div class=\"cm-editor\">\n\t\t<div class=\"cm-scroller\">\n\t\t\t\n<pre>\n<code><div class=\"cm-line\">public class Parent {<\/div><div class=\"cm-line\"><\/div><div class=\"cm-line\">    private Parent() {<\/div><div class=\"cm-line\">    }<\/div><div class=\"cm-line\">}<\/div><\/code><\/pre>\n\t\t<\/div>\n\t<\/div>\n<\/div>\n\n\n<p class=\"wp-block-paragraph\">\u0421\u043b\u0435\u0434\u043d\u0438\u044f\u0442 \u043a\u043e\u0434 \u043d\u044f\u043c\u0430 \u0434\u0430 \u0441\u0435 \u043a\u043e\u043c\u043f\u0438\u043b\u0438\u0440\u0430:<\/p>\n\n\n<div class=\"wp-block-code\">\n\t<div class=\"cm-editor\">\n\t\t<div class=\"cm-scroller\">\n\t\t\t\n<pre>\n<code><div class=\"cm-line\">public class Child extends Parent {<\/div><div class=\"cm-line\">}<\/div><\/code><\/pre>\n\t\t<\/div>\n\t<\/div>\n<\/div>\n\n\n<p class=\"wp-block-paragraph\">\u041f\u0440\u0438\u0447\u0438\u043d\u0430\u0442\u0430 \u0435, \u0447\u0435 <code>Child<\/code> \u0442\u0440\u044f\u0431\u0432\u0430 \u0434\u0430 \u0438\u0437\u0432\u0438\u043a\u0430 Constructor \u043d\u0430 <code>Parent<\/code>, \u043d\u043e \u0442\u043e\u0439 \u0435 <code>private<\/code> \u0438 \u043d\u0435 \u0435 \u0434\u043e\u0441\u0442\u044a\u043f\u0435\u043d.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">\u0412\u0430\u0436\u043d\u043e: \u0417\u0430 \u0434\u0430 \u0437\u0430\u0431\u0440\u0430\u043d\u0438\u043c \u0438\u0437\u0446\u044f\u043b\u043e \u043d\u0430\u0441\u043b\u0435\u0434\u044f\u0432\u0430\u043d\u0435\u0442\u043e, \u043f\u043e-\u044f\u0441\u043d\u0438\u044f\u0442 \u0438 \u0441\u0442\u0430\u043d\u0434\u0430\u0440\u0442\u0435\u043d \u043f\u043e\u0434\u0445\u043e\u0434 \u0435 \u0438\u0437\u043f\u043e\u043b\u0437\u0432\u0430\u043d\u0435\u0442\u043e \u043d\u0430 <code>final class<\/code>.<\/p>\n\n\n<div class=\"wp-block-code\">\n\t<div class=\"cm-editor\">\n\t\t<div class=\"cm-scroller\">\n\t\t\t\n<pre>\n<code><div class=\"cm-line\">public final class Parent {<\/div><div class=\"cm-line\">}<\/div><\/code><\/pre>\n\t\t<\/div>\n\t<\/div>\n<\/div>\n\n\n<p class=\"wp-block-paragraph\">\u0422\u0430\u043a\u0430 Java \u0438\u0437\u0440\u0438\u0447\u043d\u043e \u0437\u0430\u0431\u0440\u0430\u043d\u044f\u0432\u0430 \u0441\u044a\u0437\u0434\u0430\u0432\u0430\u043d\u0435\u0442\u043e \u043d\u0430 Subclasses.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">4. Constructor Delegation (\u0414\u0435\u043b\u0435\u0433\u0438\u0440\u0430\u043d\u0435 \u043c\u0435\u0436\u0434\u0443 \u043a\u043e\u043d\u0441\u0442\u0440\u0443\u043a\u0442\u043e\u0440\u0438)<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">Private Constructor \u043c\u043e\u0436\u0435 \u0434\u0430 \u0441\u0435 \u0438\u0437\u043f\u043e\u043b\u0437\u0432\u0430 \u0437\u0430 \u0446\u0435\u043d\u0442\u0440\u0430\u043b\u0438\u0437\u0438\u0440\u0430\u043d\u0435 \u043d\u0430 \u043e\u0431\u0449\u0430\u0442\u0430 \u043b\u043e\u0433\u0438\u043a\u0430 \u043f\u0440\u0438 \u0438\u043d\u0438\u0446\u0438\u0430\u043b\u0438\u0437\u0430\u0446\u0438\u044f \u043d\u0430 \u043e\u0431\u0435\u043a\u0442\u0438.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">\u0414\u0440\u0443\u0433\u0438\u0442\u0435 Constructors \u0438\u0437\u0432\u0438\u043a\u0432\u0430\u0442 \u043e\u0431\u0449\u0438\u044f Private Constructor \u0447\u0440\u0435\u0437 <code>this()<\/code>.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">\u0416\u0438\u0448\u044d\u044d:<\/p>\n\n\n<div class=\"wp-block-code\">\n\t<div class=\"cm-editor\">\n\t\t<div class=\"cm-scroller\">\n\t\t\t\n<pre>\n<code><div class=\"cm-line\">public class Employee {<\/div><div class=\"cm-line\"><\/div><div class=\"cm-line\">    private String name;<\/div><div class=\"cm-line\">    private int age;<\/div><div class=\"cm-line\">    private String department;<\/div><div class=\"cm-line\"><\/div><div class=\"cm-line\">    private Employee(String name, int age, String department) {<\/div><div class=\"cm-line\">        this.name = name;<\/div><div class=\"cm-line\">        this.age = age;<\/div><div class=\"cm-line\">        this.department = department;<\/div><div class=\"cm-line\">    }<\/div><div class=\"cm-line\"><\/div><div class=\"cm-line\">    public Employee(String name, int age) {<\/div><div class=\"cm-line\">        this(name, age, &quot;IT&quot;);<\/div><div class=\"cm-line\">    }<\/div><div class=\"cm-line\"><\/div><div class=\"cm-line\">    public Employee(String name) {<\/div><div class=\"cm-line\">        this(name, 25, &quot;IT&quot;);<\/div><div class=\"cm-line\">    }<\/div><div class=\"cm-line\"><\/div><div class=\"cm-line\">    public void display() {<\/div><div class=\"cm-line\">        System.out.println(name + &quot; - &quot; + age + &quot; - &quot; + <\/div><div class=\"cm-line\">        department);<\/div><div class=\"cm-line\">    }<\/div><div class=\"cm-line\">}<\/div><\/code><\/pre>\n\t\t<\/div>\n\t<\/div>\n<\/div>\n\n\n<p class=\"wp-block-paragraph\">\u0418\u0437\u043f\u043e\u043b\u0437\u0432\u0430\u043d\u0435:<\/p>\n\n\n<div class=\"wp-block-code\">\n\t<div class=\"cm-editor\">\n\t\t<div class=\"cm-scroller\">\n\t\t\t\n<pre>\n<code><div class=\"cm-line\">public class Main {<\/div><div class=\"cm-line\"><\/div><div class=\"cm-line\">    public static void main(String[] args) {<\/div><div class=\"cm-line\"><\/div><div class=\"cm-line\">        Employee e1 = new Employee(&quot;John&quot;);<\/div><div class=\"cm-line\">        Employee e2 = new Employee(&quot;Peter&quot;, 30);<\/div><div class=\"cm-line\"><\/div><div class=\"cm-line\">        e1.display();<\/div><div class=\"cm-line\">        e2.display();<\/div><div class=\"cm-line\">    }<\/div><div class=\"cm-line\">}<\/div><\/code><\/pre>\n\t\t<\/div>\n\t<\/div>\n<\/div>\n\n\n<p class=\"wp-block-paragraph\">\u04ae\u0440 \u0434\u04af\u043d:<\/p>\n\n\n<div class=\"wp-block-code\">\n\t<div class=\"cm-editor\">\n\t\t<div class=\"cm-scroller\">\n\t\t\t\n<pre>\n<code><div class=\"cm-line\">John - 25 - IT<\/div><div class=\"cm-line\">Peter - 30 - IT<\/div><\/code><\/pre>\n\t\t<\/div>\n\t<\/div>\n<\/div>\n\n\n<p class=\"wp-block-paragraph\">\u041e\u0431\u044f\u0441\u043d\u0435\u043d\u0438\u0435:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Private Constructor \u0441\u044a\u0434\u044a\u0440\u0436\u0430 \u043e\u0431\u0449\u0430\u0442\u0430 \u043b\u043e\u0433\u0438\u043a\u0430 \u0437\u0430 \u0438\u043d\u0438\u0446\u0438\u0430\u043b\u0438\u0437\u0430\u0446\u0438\u044f.<\/li>\n\n\n\n<li>Public Constructors \u0438\u0437\u0432\u0438\u043a\u0432\u0430\u0442 Private Constructor \u0447\u0440\u0435\u0437 <code>this()<\/code>.<\/li>\n\n\n\n<li>\u0418\u0437\u0431\u044f\u0433\u0432\u0430\u043c\u0435 \u0434\u0443\u0431\u043b\u0438\u0440\u0430\u043d\u0435 \u043d\u0430 \u043a\u043e\u0434.<\/li>\n\n\n\n<li>\u041e\u0431\u0435\u043a\u0442\u0438\u0442\u0435 \u043c\u043e\u0433\u0430\u0442 \u0434\u0430 \u0431\u044a\u0434\u0430\u0442 \u0441\u044a\u0437\u0434\u0430\u0432\u0430\u043d\u0438 \u0441\u0430\u043c\u043e \u0447\u0440\u0435\u0437 \u043f\u0443\u0431\u043b\u0438\u0447\u043d\u0438\u0442\u0435 Constructors.<\/li>\n<\/ul>\n\n\n\n<h2 class=\"wp-block-heading\">5. Singleton Pattern (Singleton Design Pattern)<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">\u0415\u0434\u043d\u0430 \u043e\u0442 \u043d\u0430\u0439-\u0438\u0437\u0432\u0435\u0441\u0442\u043d\u0438\u0442\u0435 \u0443\u043f\u043e\u0442\u0440\u0435\u0431\u0438 \u043d\u0430 Private Constructor \u0435 \u0440\u0435\u0430\u043b\u0438\u0437\u0430\u0446\u0438\u044f\u0442\u0430 \u043d\u0430 Singleton Pattern.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Singleton \u0433\u0430\u0440\u0430\u043d\u0442\u0438\u0440\u0430, \u0447\u0435 \u043e\u0442 \u0434\u0430\u0434\u0435\u043d \u043a\u043b\u0430\u0441 \u0449\u0435 \u0441\u044a\u0449\u0435\u0441\u0442\u0432\u0443\u0432\u0430 \u0441\u0430\u043c\u043e \u0435\u0434\u0438\u043d Instance, \u043f\u0440\u0435\u0434\u043e\u0441\u0442\u0430\u0432\u0435\u043d \u0447\u0440\u0435\u0437 \u043f\u0443\u0431\u043b\u0438\u0447\u0435\u043d \u043c\u0435\u0442\u043e\u0434.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Example \u2013 Eager Initialization:<\/p>\n\n\n<div class=\"wp-block-code\">\n\t<div class=\"cm-editor\">\n\t\t<div class=\"cm-scroller\">\n\t\t\t\n<pre>\n<code><div class=\"cm-line\">public class DatabaseConnection {<\/div><div class=\"cm-line\"><\/div><div class=\"cm-line\">    private static final DatabaseConnection INSTANCE =<\/div><div class=\"cm-line\">            new DatabaseConnection();<\/div><div class=\"cm-line\"><\/div><div class=\"cm-line\">    private DatabaseConnection() {<\/div><div class=\"cm-line\">        System.out.println(&quot;Database connection created&quot;);<\/div><div class=\"cm-line\">    }<\/div><div class=\"cm-line\"><\/div><div class=\"cm-line\">    public static DatabaseConnection getInstance() {<\/div><div class=\"cm-line\">        return INSTANCE;<\/div><div class=\"cm-line\">    }<\/div><div class=\"cm-line\">}<\/div><\/code><\/pre>\n\t\t<\/div>\n\t<\/div>\n<\/div>\n\n\n<p class=\"wp-block-paragraph\">\u0418\u0437\u043f\u043e\u043b\u0437\u0432\u0430\u043d\u0435:<\/p>\n\n\n<div class=\"wp-block-code\">\n\t<div class=\"cm-editor\">\n\t\t<div class=\"cm-scroller\">\n\t\t\t\n<pre>\n<code><div class=\"cm-line\">public class Main {<\/div><div class=\"cm-line\"><\/div><div class=\"cm-line\">    public static void main(String[] args) {<\/div><div class=\"cm-line\"><\/div><div class=\"cm-line\">        DatabaseConnection db1 =<\/div><div class=\"cm-line\">                DatabaseConnection.getInstance();<\/div><div class=\"cm-line\"><\/div><div class=\"cm-line\">        DatabaseConnection db2 =<\/div><div class=\"cm-line\">                DatabaseConnection.getInstance();<\/div><div class=\"cm-line\"><\/div><div class=\"cm-line\">        System.out.println(db1 == db2);<\/div><div class=\"cm-line\">    }<\/div><div class=\"cm-line\">}<\/div><\/code><\/pre>\n\t\t<\/div>\n\t<\/div>\n<\/div>\n\n\n<p class=\"wp-block-paragraph\">\u04ae\u0440 \u0434\u04af\u043d:<\/p>\n\n\n<div class=\"wp-block-code\">\n\t<div class=\"cm-editor\">\n\t\t<div class=\"cm-scroller\">\n\t\t\t\n<pre>\n<code><div class=\"cm-line\">Database connection created<\/div><div class=\"cm-line\">true<\/div><\/code><\/pre>\n\t\t<\/div>\n\t<\/div>\n<\/div>\n\n\n<p class=\"wp-block-paragraph\">\u041e\u0431\u044f\u0441\u043d\u0435\u043d\u0438\u0435:<\/p>\n\n\n\n<ol class=\"wp-block-list\">\n<li><code>private constructor<\/code> \u043d\u0435 \u043f\u043e\u0437\u0432\u043e\u043b\u044f\u0432\u0430 \u0441\u044a\u0437\u0434\u0430\u0432\u0430\u043d\u0435\u0442\u043e \u043d\u0430 \u043e\u0431\u0435\u043a\u0442\u0438 \u0438\u0437\u0432\u044a\u043d \u043a\u043b\u0430\u0441\u0430.<\/li>\n\n\n\n<li><code>static final INSTANCE<\/code> \u0441\u044a\u0437\u0434\u0430\u0432\u0430 \u0435\u0434\u0438\u043d\u0441\u0442\u0432\u0435\u043d\u0430\u0442\u0430 Instance.<\/li>\n\n\n\n<li><code>getInstance()<\/code> \u043f\u0440\u0435\u0434\u043e\u0441\u0442\u0430\u0432\u044f \u0434\u043e\u0441\u0442\u044a\u043f \u0434\u043e \u0441\u044a\u0449\u0438\u044f \u043e\u0431\u0435\u043a\u0442.<\/li>\n\n\n\n<li><code>db1 == db2<\/code> \u0432\u0440\u044a\u0449\u0430 <code>true<\/code>, \u0437\u0430\u0449\u043e\u0442\u043e \u0434\u0432\u0435\u0442\u0435 \u043f\u0440\u043e\u043c\u0435\u043d\u043b\u0438\u0432\u0438 \u0441\u043e\u0447\u0430\u0442 \u043a\u044a\u043c \u0435\u0434\u0438\u043d \u0438 \u0441\u044a\u0449 \u043e\u0431\u0435\u043a\u0442.<\/li>\n<\/ol>\n\n\n\n<p class=\"wp-block-paragraph\">\u0422\u043e\u0437\u0438 \u0432\u0430\u0440\u0438\u0430\u043d\u0442 \u0435 Thread-safe \u043f\u0440\u0438 \u043d\u043e\u0440\u043c\u0430\u043b\u043d\u0430\u0442\u0430 \u0438\u043d\u0438\u0446\u0438\u0430\u043b\u0438\u0437\u0430\u0446\u0438\u044f \u043d\u0430 Java Classes.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">6. \u0421\u0440\u0430\u0432\u043d\u0435\u043d\u0438\u0435 \u043d\u0430 \u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u044f\u0442\u0430 \u043d\u0430 Private Constructor<\/h2>\n\n\n\n<figure class=\"wp-block-table\"><table class=\"has-fixed-layout\"><tbody><tr><th>\u041f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u0435<\/th><th>\u0417\u043e\u0440\u0438\u043b\u0433\u043e<\/th><\/tr><tr><td>Utility Class<\/td><td>\u041f\u0440\u0435\u0434\u043e\u0442\u0432\u0440\u0430\u0442\u044f\u0432\u0430 \u043d\u0435\u043d\u0443\u0436\u043d\u043e \u0441\u044a\u0437\u0434\u0430\u0432\u0430\u043d\u0435 \u043d\u0430 Objects.<\/td><\/tr><tr><td>Constant Class<\/td><td>\u041e\u0441\u0438\u0433\u0443\u0440\u044f\u0432\u0430 \u0434\u043e\u0441\u0442\u044a\u043f \u0434\u043e Static Constants \u0431\u0435\u0437 Instance.<\/td><\/tr><tr><td>Avoiding Subclassing<\/td><td>\u041d\u0435 \u043f\u043e\u0437\u0432\u043e\u043b\u044f\u0432\u0430 \u043d\u0430\u0441\u043b\u0435\u0434\u044f\u0432\u0430\u043d\u0435 \u043e\u0442\u0432\u044a\u043d, \u043a\u043e\u0433\u0430\u0442\u043e \u043d\u044f\u043c\u0430 \u0434\u043e\u0441\u0442\u044a\u043f\u0435\u043d Constructor.<\/td><\/tr><tr><td>Constructor Delegation<\/td><td>\u0426\u0435\u043d\u0442\u0440\u0430\u043b\u0438\u0437\u0438\u0440\u0430 \u043e\u0431\u0449\u0430\u0442\u0430 \u043b\u043e\u0433\u0438\u043a\u0430 \u0437\u0430 \u0438\u043d\u0438\u0446\u0438\u0430\u043b\u0438\u0437\u0430\u0446\u0438\u044f.<\/td><\/tr><tr><td>Singleton \u0437\u0430\u0433\u0432\u0430\u0440<\/td><td>\u041a\u043e\u043d\u0442\u0440\u043e\u043b\u0438\u0440\u0430 \u0441\u044a\u0437\u0434\u0430\u0432\u0430\u043d\u0435\u0442\u043e \u043d\u0430 \u0435\u0434\u0438\u043d\u0441\u0442\u0432\u0435\u043d Instance.<\/td><\/tr><\/tbody><\/table><\/figure>\n\n\n\n<h2 class=\"wp-block-heading\">\u0412\u0430\u0436\u043d\u043e \u0437\u0430 Java Developer Interview<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">\u0421\u0430\u043d\u0430\u0436 \u0431\u0430\u0439\u043d\u0430 \u0443\u0443:<\/p>\n\n\n\n<ol class=\"wp-block-list\">\n<li><code>private constructor<\/code> \u043f\u0440\u0435\u0434\u043e\u0442\u0432\u0440\u0430\u0442\u044f\u0432\u0430 \u0441\u044a\u0437\u0434\u0430\u0432\u0430\u043d\u0435\u0442\u043e \u043d\u0430 \u043e\u0431\u0435\u043a\u0442\u0438 \u0438\u0437\u0432\u044a\u043d \u043a\u043b\u0430\u0441\u0430.<\/li>\n\n\n\n<li>\u0418\u0437\u043f\u043e\u043b\u0437\u0432\u0430 \u0441\u0435 \u043f\u0440\u0438 Utility Classes \u0438 Classes \u0441 Constants.<\/li>\n\n\n\n<li>\u041c\u043e\u0436\u0435 \u0434\u0430 \u043f\u0440\u0435\u0434\u043e\u0442\u0432\u0440\u0430\u0442\u0438 \u043d\u0430\u0441\u043b\u0435\u0434\u044f\u0432\u0430\u043d\u0435\u0442\u043e, \u043d\u043e <code>final class<\/code> \u0435 \u043f\u043e-\u044f\u0441\u043d\u0438\u044f\u0442 \u043d\u0430\u0447\u0438\u043d \u0437\u0430 \u0437\u0430\u0431\u0440\u0430\u043d\u0430 \u043d\u0430 Subclassing.<\/li>\n\n\n\n<li><code>this()<\/code> \u043f\u043e\u0437\u0432\u043e\u043b\u044f\u0432\u0430 Constructor Delegation.<\/li>\n\n\n\n<li>Singleton Pattern \u0438\u0437\u043f\u043e\u043b\u0437\u0432\u0430 Private Constructor, \u0437\u0430 \u0434\u0430 \u043a\u043e\u043d\u0442\u0440\u043e\u043b\u0438\u0440\u0430 \u0431\u0440\u043e\u044f \u043d\u0430 Instances.<\/li>\n\n\n\n<li>Private Constructor \u043d\u0435 \u043e\u0437\u043d\u0430\u0447\u0430\u0432\u0430, \u0447\u0435 \u043e\u0431\u0435\u043a\u0442 \u043d\u0435 \u043c\u043e\u0436\u0435 \u0434\u0430 \u0431\u044a\u0434\u0435 \u0441\u044a\u0437\u0434\u0430\u0434\u0435\u043d \u0438\u0437\u043e\u0431\u0449\u043e \u2013 \u0441\u0430\u043c\u0438\u044f\u0442 \u043a\u043b\u0430\u0441 \u043c\u043e\u0436\u0435 \u0434\u0430 \u0433\u043e \u0441\u044a\u0437\u0434\u0430\u0434\u0435.<\/li>\n<\/ol>\n\n\n\n<p class=\"wp-block-paragraph\">\u041e\u0441\u043d\u043e\u0432\u0435\u043d \u0438\u0437\u0432\u043e\u0434: Private Constructor \u0435 \u043c\u0435\u0445\u0430\u043d\u0438\u0437\u044a\u043c \u0437\u0430 \u043a\u043e\u043d\u0442\u0440\u043e\u043b \u0432\u044a\u0440\u0445\u0443 \u0441\u044a\u0437\u0434\u0430\u0432\u0430\u043d\u0435\u0442\u043e \u043d\u0430 Objects. \u041d\u0430\u0439-\u0447\u0435\u0441\u0442\u0438\u0442\u0435 \u043c\u0443 \u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u044f \u0441\u0430 Utility Classes, Constructor Delegation \u0438 Singleton Design Pattern.<\/p>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h1 class=\"wp-block-heading\">Protected vs Package-Private (Default) Access Modifiers \u0432 Java<\/h1>\n\n\n\n<p class=\"wp-block-paragraph\">\u0412 Java <code>protected<\/code> \u0431\u043e\u043b\u043e\u043d <code>package-private<\/code> (default) \u0441\u0430 \u0434\u0432\u0430 Access Modifiers, \u043a\u043e\u0438\u0442\u043e \u043e\u043f\u0440\u0435\u0434\u0435\u043b\u044f\u0442 \u0434\u043e\u0441\u0442\u044a\u043f\u0430 \u0434\u043e Classes, Fields, Constructors \u0438 Methods.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">\u041e\u0441\u043d\u043e\u0432\u043d\u0430\u0442\u0430 \u0440\u0430\u0437\u043b\u0438\u043a\u0430 \u0435, \u0447\u0435 <code>protected<\/code> \u043f\u043e\u0437\u0432\u043e\u043b\u044f\u0432\u0430 \u0434\u043e\u0441\u0442\u044a\u043f \u0438 \u043e\u0442 \u043d\u0430\u0441\u043b\u0435\u0434\u044f\u0432\u0430\u0449\u0438 \u043a\u043b\u0430\u0441\u043e\u0432\u0435 (Subclasses) \u0432 \u0434\u0440\u0443\u0433\u0438 Packages, \u0434\u043e\u043a\u0430\u0442\u043e <code>package-private<\/code> \u043e\u0433\u0440\u0430\u043d\u0438\u0447\u0430\u0432\u0430 \u0434\u043e\u0441\u0442\u044a\u043f\u0430 \u0441\u0430\u043c\u043e \u0434\u043e \u043a\u043b\u0430\u0441\u043e\u0432\u0435 \u0432 \u0441\u044a\u0449\u0438\u044f Package.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">1. \u0421\u0440\u0430\u0432\u043d\u0435\u043d\u0438\u0435 (Comparison)<\/h2>\n\n\n\n<figure class=\"wp-block-table\"><table class=\"has-fixed-layout\"><tbody><tr><th>Access Modifier<\/th><th>\u0414\u043e\u0441\u0442\u044a\u043f<\/th><\/tr><tr><td>\u043e\u043b\u043e\u043d \u043d\u0438\u0439\u0442\u0438\u0439\u043d<\/td><td>\u041e\u0442\u0432\u0441\u044f\u043a\u044a\u0434\u0435, \u043a\u044a\u0434\u0435\u0442\u043e \u043a\u043b\u0430\u0441\u044a\u0442 \u0435 \u0434\u043e\u0441\u0442\u044a\u043f\u0435\u043d.<\/td><\/tr><tr><td>protected<\/td><td>\u0412 \u0441\u044a\u0449\u0438\u044f Package \u0438 \u043e\u0442 Subclasses \u0432 \u0434\u0440\u0443\u0433\u0438 Packages.<\/td><\/tr><tr><td>package-private (default)<\/td><td>\u0421\u0430\u043c\u043e \u043e\u0442 \u043a\u043b\u0430\u0441\u043e\u0432\u0435 \u0432 \u0441\u044a\u0449\u0438\u044f Package.<\/td><\/tr><tr><td>\u0445\u0443\u0432\u0438\u0439\u043d<\/td><td>\u0421\u0430\u043c\u043e \u0432\u044a\u0442\u0440\u0435 \u0432 \u0441\u044a\u0449\u0438\u044f Class.<\/td><\/tr><\/tbody><\/table><\/figure>\n\n\n\n<p class=\"wp-block-paragraph\">\u0427\u0443\u0445\u0430\u043b: <code>package-private<\/code> \u043d\u0435 \u0435 \u043a\u043b\u044e\u0447\u043e\u0432\u0430 \u0434\u0443\u043c\u0430 \u0432 Java. \u0422\u043e\u0432\u0430 \u0435 \u0434\u043e\u0441\u0442\u044a\u043f\u044a\u0442, \u043a\u043e\u0439\u0442\u043e \u043f\u043e\u043b\u0443\u0447\u0430\u0432\u0430\u043c\u0435, \u043a\u043e\u0433\u0430\u0442\u043e \u043d\u0435 \u0437\u0430\u0434\u0430\u0434\u0435\u043c Access Modifier.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">2. Protected \u2013 Example<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">\u041a\u043b\u0430\u0441\u044a\u0442 <code>Parent<\/code> \u0441\u0435 \u043d\u0430\u043c\u0438\u0440\u0430 \u0432 Package <code>com.example.parent<\/code>.<\/p>\n\n\n<div class=\"wp-block-code\">\n\t<div class=\"cm-editor\">\n\t\t<div class=\"cm-scroller\">\n\t\t\t\n<pre>\n<code><div class=\"cm-line\">package com.example.parent;<\/div><div class=\"cm-line\"><\/div><div class=\"cm-line\">public class Parent {<\/div><div class=\"cm-line\"><\/div><div class=\"cm-line\">    protected String name = &quot;John&quot;;<\/div><div class=\"cm-line\"><\/div><div class=\"cm-line\">    protected void display() {<\/div><div class=\"cm-line\">        System.out.println(name);<\/div><div class=\"cm-line\">    }<\/div><div class=\"cm-line\">}<\/div><\/code><\/pre>\n\t\t<\/div>\n\t<\/div>\n<\/div>\n\n\n<p class=\"wp-block-paragraph\">\u041a\u043b\u0430\u0441\u044a\u0442 <code>Child<\/code> \u0441\u0435 \u043d\u0430\u043c\u0438\u0440\u0430 \u0432 \u0434\u0440\u0443\u0433 Package \u2013 <code>com.example.child<\/code>.<\/p>\n\n\n<div class=\"wp-block-code\">\n\t<div class=\"cm-editor\">\n\t\t<div class=\"cm-scroller\">\n\t\t\t\n<pre>\n<code><div class=\"cm-line\">package com.example.child;<\/div><div class=\"cm-line\"><\/div><div class=\"cm-line\">import com.example.parent.Parent;<\/div><div class=\"cm-line\"><\/div><div class=\"cm-line\">public class Child extends Parent {<\/div><div class=\"cm-line\"><\/div><div class=\"cm-line\">    public void show() {<\/div><div class=\"cm-line\">        System.out.println(name);<\/div><div class=\"cm-line\">        display();<\/div><div class=\"cm-line\">    }<\/div><div class=\"cm-line\">}<\/div><\/code><\/pre>\n\t\t<\/div>\n\t<\/div>\n<\/div>\n\n\n<p class=\"wp-block-paragraph\">\u0422\u043e\u0432\u0430 \u0435 \u043f\u043e\u0437\u0432\u043e\u043b\u0435\u043d\u043e, \u0437\u0430\u0449\u043e\u0442\u043e <code>Child<\/code> \u043d\u0430\u0441\u043b\u0435\u0434\u044f\u0432\u0430 <code>Parent<\/code> \u0438 \u0438\u043c\u0430 \u0434\u043e\u0441\u0442\u044a\u043f \u0434\u043e \u043d\u0435\u0433\u043e\u0432\u0438\u0442\u0435 <code>protected<\/code> Members.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">\u0412\u0430\u0436\u043d\u043e \u0443\u0442\u043e\u0447\u043d\u0435\u043d\u0438\u0435: \u041a\u043e\u0433\u0430\u0442\u043e <code>protected<\/code> Member \u0441\u0435 \u0438\u0437\u043f\u043e\u043b\u0437\u0432\u0430 \u0438\u0437\u0432\u044a\u043d Package \u0447\u0440\u0435\u0437 \u043d\u0430\u0441\u043b\u0435\u0434\u044f\u0432\u0430\u043d\u0435, \u0434\u043e\u0441\u0442\u044a\u043f\u044a\u0442 \u0435 \u043e\u0433\u0440\u0430\u043d\u0438\u0447\u0435\u043d \u0434\u043e \u043a\u043e\u043d\u0442\u0435\u043a\u0441\u0442\u0430 \u043d\u0430 \u043d\u0430\u0441\u043b\u0435\u0434\u044f\u0432\u0430\u043d\u0435\u0442\u043e. \u041d\u0430\u043f\u0440\u0438\u043c\u0435\u0440 <code>Child<\/code> \u043d\u0435 \u043c\u043e\u0436\u0435 \u043f\u0440\u043e\u0441\u0442\u043e \u0434\u0430 \u0438\u0437\u043f\u043e\u043b\u0437\u0432\u0430 <code>protected<\/code> Member \u0447\u0440\u0435\u0437 \u043f\u0440\u043e\u0438\u0437\u0432\u043e\u043b\u0435\u043d \u043e\u0431\u0435\u043a\u0442 \u043e\u0442 \u0442\u0438\u043f <code>Parent<\/code>.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">3. Package-Private (Default) \u2013 Example<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">\u041a\u043b\u0430\u0441\u044a\u0442 <code>Parent<\/code> \u0441\u0435 \u043d\u0430\u043c\u0438\u0440\u0430 \u0432 Package <code>com.example.parent<\/code>.<\/p>\n\n\n<div class=\"wp-block-code\">\n\t<div class=\"cm-editor\">\n\t\t<div class=\"cm-scroller\">\n\t\t\t\n<pre>\n<code><div class=\"cm-line\">package com.example.parent;<\/div><div class=\"cm-line\"><\/div><div class=\"cm-line\">public class Parent {<\/div><div class=\"cm-line\"><\/div><div class=\"cm-line\">    String name = &quot;John&quot;;<\/div><div class=\"cm-line\"><\/div><div class=\"cm-line\">    void display() {<\/div><div class=\"cm-line\">        System.out.println(name);<\/div><div class=\"cm-line\">    }<\/div><div class=\"cm-line\">}<\/div><\/code><\/pre>\n\t\t<\/div>\n\t<\/div>\n<\/div>\n\n\n<p class=\"wp-block-paragraph\">\u0410\u043a\u043e \u0441\u044a\u0437\u0434\u0430\u0434\u0435\u043c <code>Child<\/code> \u0432 \u0434\u0440\u0443\u0433 Package:<\/p>\n\n\n<div class=\"wp-block-code\">\n\t<div class=\"cm-editor\">\n\t\t<div class=\"cm-scroller\">\n\t\t\t\n<pre>\n<code><div class=\"cm-line\">package com.example.child;<\/div><div class=\"cm-line\"><\/div><div class=\"cm-line\">import com.example.parent.Parent;<\/div><div class=\"cm-line\"><\/div><div class=\"cm-line\">public class Child extends Parent {<\/div><div class=\"cm-line\"><\/div><div class=\"cm-line\">    public void show() {<\/div><div class=\"cm-line\">        System.out.println(name);<\/div><div class=\"cm-line\">        display();<\/div><div class=\"cm-line\">    }<\/div><div class=\"cm-line\">}<\/div><\/code><\/pre>\n\t\t<\/div>\n\t<\/div>\n<\/div>\n\n\n<p class=\"wp-block-paragraph\">\u041a\u043e\u0434\u044a\u0442 \u043d\u044f\u043c\u0430 \u0434\u0430 \u0441\u0435 \u043a\u043e\u043c\u043f\u0438\u043b\u0438\u0440\u0430, \u0437\u0430\u0449\u043e\u0442\u043e <code>name<\/code> \u0431\u043e\u043b\u043e\u043d <code>display()<\/code> \u0438\u043c\u0430\u0442 Package-Private \u0434\u043e\u0441\u0442\u044a\u043f.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">\u0414\u043e\u0440\u0438 <code>Child<\/code> \u0434\u0430 \u043d\u0430\u0441\u043b\u0435\u0434\u044f\u0432\u0430 <code>Parent<\/code>, \u0442\u043e\u0439 \u043d\u044f\u043c\u0430 \u0434\u043e\u0441\u0442\u044a\u043f \u0434\u043e \u0442\u0435\u0437\u0438 Members \u0438\u0437\u0432\u044a\u043d Package <code>com.example.parent<\/code>.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">4. Key Difference \u2013 \u041e\u0441\u043d\u043e\u0432\u043d\u0430 \u0440\u0430\u0437\u043b\u0438\u043a\u0430<\/h2>\n\n\n\n<figure class=\"wp-block-table\"><table class=\"has-fixed-layout\"><tbody><tr><th>\u0425\u0430\u0440\u0430\u043a\u0442\u0435\u0440\u0438\u0441\u0442\u0438\u043a\u0430<\/th><th>Protected<\/th><th>Package-Private<\/th><\/tr><tr><td>\u0414\u043e\u0441\u0442\u044a\u043f \u0432 \u0441\u044a\u0449\u0438\u044f Package<\/td><td>\u0414\u0430<\/td><td>\u0414\u0430<\/td><\/tr><tr><td>\u0414\u043e\u0441\u0442\u044a\u043f \u043e\u0442 \u0434\u0440\u0443\u0433 Package<\/td><td>\u0421\u0430\u043c\u043e \u0447\u0440\u0435\u0437 \u043d\u0430\u0441\u043b\u0435\u0434\u044f\u0432\u0430\u043d\u0435 \u0438 \u043f\u0440\u0438 \u0441\u043f\u0430\u0437\u0432\u0430\u043d\u0435 \u043d\u0430 \u043f\u0440\u0430\u0432\u0438\u043b\u0430\u0442\u0430 \u0437\u0430 <code>protected<\/code> \u0434\u043e\u0441\u0442\u044a\u043f<\/td><td>\u041d\u0435<\/td><\/tr><tr><td>\u0414\u043e\u0441\u0442\u044a\u043f \u043e\u0442 Subclass \u0432 \u0434\u0440\u0443\u0433 Package<\/td><td>\u0414\u0430<\/td><td>\u041d\u0435<\/td><\/tr><tr><td>\u0414\u043e\u0441\u0442\u044a\u043f \u0447\u0440\u0435\u0437 \u043f\u0440\u043e\u0438\u0437\u0432\u043e\u043b\u0435\u043d Parent Object \u0432 \u0434\u0440\u0443\u0433 Package<\/td><td>\u041d\u0435<\/td><td>\u041d\u0435<\/td><\/tr><tr><td>Java Keyword<\/td><td><code>protected<\/code><\/td><td>\u041d\u044f\u043c\u0430 \u2013 \u043b\u0438\u043f\u0441\u0432\u0430 Modifier<\/td><\/tr><\/tbody><\/table><\/figure>\n\n\n\n<h2 class=\"wp-block-heading\">\u0412\u0430\u0436\u043d\u043e \u0437\u0430 Java Developer Interview<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">\u0421\u0430\u043d\u0430\u0436 \u0431\u0430\u0439\u043d\u0430 \u0443\u0443:<\/p>\n\n\n\n<ol class=\"wp-block-list\">\n<li>Protected \u043f\u043e\u0437\u0432\u043e\u043b\u044f\u0432\u0430 \u0434\u043e\u0441\u0442\u044a\u043f \u0432 \u0441\u044a\u0449\u0438\u044f Package \u0438 \u043e\u0442 Subclasses \u0432 \u0434\u0440\u0443\u0433\u0438 Packages.<\/li>\n\n\n\n<li>Package-Private \u043f\u043e\u0437\u0432\u043e\u043b\u044f\u0432\u0430 \u0434\u043e\u0441\u0442\u044a\u043f \u0441\u0430\u043c\u043e \u0432 \u0441\u044a\u0449\u0438\u044f Package.<\/li>\n\n\n\n<li>\u041d\u0430\u0441\u043b\u0435\u0434\u044f\u0432\u0430\u043d\u0435\u0442\u043e \u0441\u0430\u043c\u043e \u043f\u043e \u0441\u0435\u0431\u0435 \u0441\u0438 \u043d\u0435 \u0434\u0430\u0432\u0430 \u0434\u043e\u0441\u0442\u044a\u043f \u0434\u043e Package-Private Members \u043e\u0442 \u0434\u0440\u0443\u0433 Package.<\/li>\n\n\n\n<li><code>package-private<\/code> \u0435 Default Access Level, \u043a\u043e\u0433\u0430\u0442\u043e \u043d\u0435 \u0435 \u0437\u0430\u0434\u0430\u0434\u0435\u043d Modifier.<\/li>\n\n\n\n<li>At <code>protected<\/code> \u0434\u043e\u0441\u0442\u044a\u043f \u0438\u0437\u0432\u044a\u043d Package \u0438\u043c\u0430 \u0441\u043f\u0435\u0446\u0438\u0430\u043b\u043d\u043e \u043e\u0433\u0440\u0430\u043d\u0438\u0447\u0435\u043d\u0438\u0435: \u0434\u043e\u0441\u0442\u044a\u043f\u044a\u0442 \u043f\u0440\u0435\u0437 Reference \u0442\u0440\u044f\u0431\u0432\u0430 \u0434\u0430 \u0431\u044a\u0434\u0435 \u0447\u0440\u0435\u0437 \u0441\u0430\u043c\u0438\u044f Subclass \u0438\u043b\u0438 \u043d\u0435\u0433\u043e\u0432 Subtype.<\/li>\n<\/ol>\n\n\n\n<p class=\"wp-block-paragraph\">\u041e\u0441\u043d\u043e\u0432\u0435\u043d \u0438\u0437\u0432\u043e\u0434: <code>protected<\/code> \u043e\u0441\u0438\u0433\u0443\u0440\u044f\u0432\u0430 \u043f\u043e-\u0448\u0438\u0440\u043e\u043a \u0434\u043e\u0441\u0442\u044a\u043f \u043e\u0442 <code>package-private<\/code>, \u0437\u0430\u0449\u043e\u0442\u043e \u043f\u043e\u0437\u0432\u043e\u043b\u044f\u0432\u0430 \u043d\u0430 \u043d\u0430\u0441\u043b\u0435\u0434\u044f\u0432\u0430\u0449\u0438\u0442\u0435 \u043a\u043b\u0430\u0441\u043e\u0432\u0435 \u0434\u0430 \u0438\u0437\u043f\u043e\u043b\u0437\u0432\u0430\u0442 \u0437\u0430\u0449\u0438\u0442\u0435\u043d\u0438\u0442\u0435 Members \u0434\u043e\u0440\u0438 \u043a\u043e\u0433\u0430\u0442\u043e \u0441\u0435 \u043d\u0430\u043c\u0438\u0440\u0430\u0442 \u0432 \u0440\u0430\u0437\u043b\u0438\u0447\u043d\u0438 Packages.<\/p>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h1 class=\"wp-block-heading\">Java 21 \u2013 Sequenced Collections<\/h1>\n\n\n\n<p class=\"wp-block-paragraph\">Sequenced Collections \u0441\u0430 \u043d\u043e\u0432\u0430 \u0444\u0443\u043d\u043a\u0446\u0438\u043e\u043d\u0430\u043b\u043d\u043e\u0441\u0442, \u0432\u044a\u0432\u0435\u0434\u0435\u043d\u0430 \u0432 Java 21 (JEP 431), \u043a\u043e\u044f\u0442\u043e \u043f\u0440\u0435\u0434\u043e\u0441\u0442\u0430\u0432\u044f \u0443\u043d\u0438\u0444\u0438\u0446\u0438\u0440\u0430\u043d \u043d\u0430\u0447\u0438\u043d \u0437\u0430 \u0440\u0430\u0431\u043e\u0442\u0430 \u0441 Collections, \u0438\u043c\u0430\u0449\u0438 \u0434\u0435\u0444\u0438\u043d\u0438\u0440\u0430\u043d \u0440\u0435\u0434 \u043d\u0430 \u0435\u043b\u0435\u043c\u0435\u043d\u0442\u0438\u0442\u0435 (Encounter Order).<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">\u041f\u0440\u0435\u0434\u0438 Java 21 \u0440\u0430\u0437\u043b\u0438\u0447\u043d\u0438\u0442\u0435 Collections \u0438\u043c\u0430\u0445\u0430 \u0440\u0430\u0437\u043b\u0438\u0447\u043d\u0438 \u043c\u0435\u0442\u043e\u0434\u0438 \u0437\u0430 \u0434\u043e\u0441\u0442\u044a\u043f \u0434\u043e \u043f\u044a\u0440\u0432\u0438\u044f \u0438 \u043f\u043e\u0441\u043b\u0435\u0434\u043d\u0438\u044f \u0435\u043b\u0435\u043c\u0435\u043d\u0442. Sequenced Collections \u0432\u044a\u0432\u0435\u0436\u0434\u0430\u0442 \u043e\u0431\u0449 \u0438\u043d\u0442\u0435\u0440\u0444\u0435\u0439\u0441 \u0438 \u0441\u0442\u0430\u043d\u0434\u0430\u0440\u0442\u0438\u0437\u0438\u0440\u0430\u043d\u0438 \u043c\u0435\u0442\u043e\u0434\u0438 \u0437\u0430 \u0440\u0430\u0431\u043e\u0442\u0430 \u0441 \u043d\u0430\u0447\u0430\u043b\u043e\u0442\u043e, \u043a\u0440\u0430\u044f \u0438 \u043e\u0431\u0440\u0430\u0442\u043d\u0438\u044f \u0440\u0435\u0434 \u043d\u0430 \u043a\u043e\u043b\u0435\u043a\u0446\u0438\u044f\u0442\u0430.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">1. \u041d\u043e\u0432\u0438 \u0438\u043d\u0442\u0435\u0440\u0444\u0435\u0439\u0441\u0438 (New Interfaces)<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">Java 21 \u0432\u044a\u0432\u0435\u0436\u0434\u0430 \u0442\u0440\u0438 \u043e\u0441\u043d\u043e\u0432\u043d\u0438 \u0438\u043d\u0442\u0435\u0440\u0444\u0435\u0439\u0441\u0430:<\/p>\n\n\n\n<figure class=\"wp-block-table\"><table class=\"has-fixed-layout\"><tbody><tr><th>\u0418\u043d\u0442\u0435\u0440\u0444\u044d\u0439\u0441<\/th><th>\u0417\u043e\u0440\u0438\u043b\u0433\u043e<\/th><\/tr><tr><td><code>SequencedCollection<\/code><\/td><td>\u041a\u043e\u043b\u0435\u043a\u0446\u0438\u0438 \u0441 \u0434\u0435\u0444\u0438\u043d\u0438\u0440\u0430\u043d \u0440\u0435\u0434 \u043d\u0430 \u0435\u043b\u0435\u043c\u0435\u043d\u0442\u0438\u0442\u0435.<\/td><\/tr><tr><td><code>SequencedSet<\/code><\/td><td>Set \u0441 \u0434\u0435\u0444\u0438\u043d\u0438\u0440\u0430\u043d \u0440\u0435\u0434 \u0438 \u0443\u043d\u0438\u043a\u0430\u043b\u043d\u0438 \u0435\u043b\u0435\u043c\u0435\u043d\u0442\u0438.<\/td><\/tr><tr><td><code>SequencedMap<\/code><\/td><td>Map \u0441 \u0434\u0435\u0444\u0438\u043d\u0438\u0440\u0430\u043d \u0440\u0435\u0434 \u043d\u0430 Key-Value \u0437\u0430\u043f\u0438\u0441\u0438\u0442\u0435.<\/td><\/tr><\/tbody><\/table><\/figure>\n\n\n\n<p class=\"wp-block-paragraph\">\u0419\u0435\u0440\u0430\u0440\u0445\u0438\u044f\u0442\u0430 \u043d\u0430 \u0438\u043d\u0442\u0435\u0440\u0444\u0435\u0439\u0441\u0438\u0442\u0435:<\/p>\n\n\n\n<figure class=\"wp-block-image size-full\"><a href=\"https:\/\/i0.wp.com\/vkrastev1blog.com\/wp-content\/uploads\/2026\/05\/image-9.png?ssl=1\"><img data-recalc-dims=\"1\" loading=\"lazy\" decoding=\"async\" width=\"972\" height=\"302\" data-attachment-id=\"3337\" data-permalink=\"https:\/\/vkrastev1blog.com\/2026\/05\/29\/questions-and-informations-prepairing-for-java-developer-job-interview\/image-59\/\" data-orig-file=\"https:\/\/i0.wp.com\/vkrastev1blog.com\/wp-content\/uploads\/2026\/05\/image-9.png?fit=972%2C302&amp;ssl=1\" data-orig-size=\"972,302\" data-comments-opened=\"1\" data-image-title=\"image\" data-image-description=\"\" data-image-caption=\"\" data-large-file=\"https:\/\/i0.wp.com\/vkrastev1blog.com\/wp-content\/uploads\/2026\/05\/image-9.png?fit=972%2C302&amp;ssl=1\" src=\"https:\/\/i0.wp.com\/vkrastev1blog.com\/wp-content\/uploads\/2026\/05\/image-9.png?resize=972%2C302&#038;ssl=1\" alt=\"\" class=\"wp-image-3337\" srcset=\"https:\/\/i0.wp.com\/vkrastev1blog.com\/wp-content\/uploads\/2026\/05\/image-9.png?w=972&amp;ssl=1 972w, https:\/\/i0.wp.com\/vkrastev1blog.com\/wp-content\/uploads\/2026\/05\/image-9.png?resize=300%2C93&amp;ssl=1 300w, https:\/\/i0.wp.com\/vkrastev1blog.com\/wp-content\/uploads\/2026\/05\/image-9.png?resize=768%2C239&amp;ssl=1 768w\" sizes=\"auto, (max-width: 972px) 100vw, 972px\" \/><\/a><\/figure>\n\n\n\n<p class=\"wp-block-paragraph\">\u041f\u0440\u0438\u043c\u0435\u0440\u0438 \u0437\u0430 \u043a\u043b\u0430\u0441\u043e\u0432\u0435, \u043a\u043e\u0438\u0442\u043e \u0438\u043c\u043f\u043b\u0435\u043c\u0435\u043d\u0442\u0438\u0440\u0430\u0442 \u043d\u043e\u0432\u0438\u0442\u0435 \u0438\u043d\u0442\u0435\u0440\u0444\u0435\u0439\u0441\u0438:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li><code>ArrayList<\/code><\/li>\n\n\n\n<li><code>LinkedList<\/code><\/li>\n\n\n\n<li><code>LinkedHashSet<\/code><\/li>\n\n\n\n<li><code>TreeSet<\/code><\/li>\n\n\n\n<li><code>LinkedHashMap<\/code><\/li>\n\n\n\n<li><code>TreeMap<\/code><\/li>\n<\/ul>\n\n\n\n<h2 class=\"wp-block-heading\">2. \u041e\u0441\u043d\u043e\u0432\u043d\u0438 Methods (SequencedCollection)<\/h2>\n\n\n\n<figure class=\"wp-block-table\"><table class=\"has-fixed-layout\"><tbody><tr><th>\u0410\u0440\u0433\u0430<\/th><th>\u0417\u043e\u0440\u0438\u043b\u0433\u043e<\/th><th>\u0416\u0438\u0448\u044d\u044d<\/th><\/tr><tr><td><code>getFirst()<\/code><\/td><td>\u0412\u0440\u044a\u0449\u0430 \u043f\u044a\u0440\u0432\u0438\u044f \u0435\u043b\u0435\u043c\u0435\u043d\u0442.<\/td><td><code>list.getFirst()<\/code><\/td><\/tr><tr><td><code>getLast()<\/code><\/td><td>\u0412\u0440\u044a\u0449\u0430 \u043f\u043e\u0441\u043b\u0435\u0434\u043d\u0438\u044f \u0435\u043b\u0435\u043c\u0435\u043d\u0442.<\/td><td><code>list.getLast()<\/code><\/td><\/tr><tr><td><code>addFirst(E e)<\/code><\/td><td>\u0414\u043e\u0431\u0430\u0432\u044f \u0435\u043b\u0435\u043c\u0435\u043d\u0442 \u0432 \u043d\u0430\u0447\u0430\u043b\u043e\u0442\u043e.<\/td><td><code>list.addFirst(\"Zara\")<\/code><\/td><\/tr><tr><td><code>addLast(E e)<\/code><\/td><td>\u0414\u043e\u0431\u0430\u0432\u044f \u0435\u043b\u0435\u043c\u0435\u043d\u0442 \u0432 \u043a\u0440\u0430\u044f.<\/td><td><code>list.addLast(\"Tom\")<\/code><\/td><\/tr><tr><td><code>removeFirst()<\/code><\/td><td>\u041f\u0440\u0435\u043c\u0430\u0445\u0432\u0430 \u0438 \u0432\u0440\u044a\u0449\u0430 \u043f\u044a\u0440\u0432\u0438\u044f \u0435\u043b\u0435\u043c\u0435\u043d\u0442.<\/td><td><code>list.removeFirst()<\/code><\/td><\/tr><tr><td><code>removeLast()<\/code><\/td><td>\u041f\u0440\u0435\u043c\u0430\u0445\u0432\u0430 \u0438 \u0432\u0440\u044a\u0449\u0430 \u043f\u043e\u0441\u043b\u0435\u0434\u043d\u0438\u044f \u0435\u043b\u0435\u043c\u0435\u043d\u0442.<\/td><td><code>list.removeLast()<\/code><\/td><\/tr><tr><td><code>reversed()<\/code><\/td><td>\u0412\u0440\u044a\u0449\u0430 \u043e\u0431\u0440\u0430\u0442\u0435\u043d (Reverse) View \u043d\u0430 \u043a\u043e\u043b\u0435\u043a\u0446\u0438\u044f\u0442\u0430.<\/td><td><code>list.reversed()<\/code><\/td><\/tr><\/tbody><\/table><\/figure>\n\n\n\n<h2 class=\"wp-block-heading\">3. Methods \u043f\u0440\u0438 SequencedMap<\/h2>\n\n\n\n<figure class=\"wp-block-table\"><table class=\"has-fixed-layout\"><tbody><tr><th>\u0410\u0440\u0433\u0430<\/th><th>\u0417\u043e\u0440\u0438\u043b\u0433\u043e<\/th><th>\u0416\u0438\u0448\u044d\u044d<\/th><\/tr><tr><td><code>firstEntry()<\/code><\/td><td>\u0412\u0440\u044a\u0449\u0430 \u043f\u044a\u0440\u0432\u0438\u044f Key-Value \u0437\u0430\u043f\u0438\u0441.<\/td><td><code>map.firstEntry()<\/code><\/td><\/tr><tr><td><code>lastEntry()<\/code><\/td><td>\u0412\u0440\u044a\u0449\u0430 \u043f\u043e\u0441\u043b\u0435\u0434\u043d\u0438\u044f Key-Value \u0437\u0430\u043f\u0438\u0441.<\/td><td><code>map.lastEntry()<\/code><\/td><\/tr><tr><td><code>pollFirstEntry()<\/code><\/td><td>\u041f\u0440\u0435\u043c\u0430\u0445\u0432\u0430 \u0438 \u0432\u0440\u044a\u0449\u0430 \u043f\u044a\u0440\u0432\u0438\u044f \u0437\u0430\u043f\u0438\u0441.<\/td><td><code>map.pollFirstEntry()<\/code><\/td><\/tr><tr><td><code>pollLastEntry()<\/code><\/td><td>\u041f\u0440\u0435\u043c\u0430\u0445\u0432\u0430 \u0438 \u0432\u0440\u044a\u0449\u0430 \u043f\u043e\u0441\u043b\u0435\u0434\u043d\u0438\u044f \u0437\u0430\u043f\u0438\u0441.<\/td><td><code>map.pollLastEntry()<\/code><\/td><\/tr><tr><td><code>reversed()<\/code><\/td><td>\u0412\u0440\u044a\u0449\u0430 \u043e\u0431\u0440\u0430\u0442\u0435\u043d View \u043d\u0430 Map.<\/td><td><code>map.reversed()<\/code><\/td><\/tr><tr><td><code>putFirst(K k, V v)<\/code><\/td><td>\u0414\u043e\u0431\u0430\u0432\u044f \u0438\u043b\u0438 \u043f\u0440\u0435\u043c\u0435\u0441\u0442\u0432\u0430 \u0437\u0430\u043f\u0438\u0441 \u0432 \u043d\u0430\u0447\u0430\u043b\u043e\u0442\u043e.<\/td><td><code>map.putFirst(\"A\", 10)<\/code><\/td><\/tr><tr><td><code>putLast(K k, V v)<\/code><\/td><td>\u0414\u043e\u0431\u0430\u0432\u044f \u0438\u043b\u0438 \u043f\u0440\u0435\u043c\u0435\u0441\u0442\u0432\u0430 \u0437\u0430\u043f\u0438\u0441 \u0432 \u043a\u0440\u0430\u044f.<\/td><td><code>map.putLast(\"Z\", 20)<\/code><\/td><\/tr><\/tbody><\/table><\/figure>\n\n\n\n<p class=\"wp-block-paragraph\">\u0427\u0443\u0445\u0430\u043b: <code>getFirst()<\/code> \u0431\u043e\u043b\u043e\u043d <code>getLast()<\/code> \u043d\u0435 \u0441\u0430 \u043c\u0435\u0442\u043e\u0434\u0438 \u043d\u0430 <code>SequencedMap<\/code>. \u0417\u0430 Map \u0441\u0435 \u0438\u0437\u043f\u043e\u043b\u0437\u0432\u0430\u0442 <code>firstEntry()<\/code> \u0431\u043e\u043b\u043e\u043d <code>lastEntry()<\/code>. \u0421\u044a\u0449\u043e \u0442\u0430\u043a\u0430 <code>putFirst()<\/code> \u0431\u043e\u043b\u043e\u043d <code>putLast()<\/code> \u0441\u0430 \u0441\u043f\u0435\u0446\u0438\u0444\u0438\u0447\u043d\u0438 \u0437\u0430 <code>SequencedMap<\/code>.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">4. Java Code Examples<\/h2>\n\n\n\n<h3 class=\"wp-block-heading\">Example 1 \u2013 SequencedCollection<\/h3>\n\n\n<div class=\"wp-block-code\">\n\t<div class=\"cm-editor\">\n\t\t<div class=\"cm-scroller\">\n\t\t\t\n<pre>\n<code><div class=\"cm-line\">import java.util.ArrayList;<\/div><div class=\"cm-line\">import java.util.List;<\/div><div class=\"cm-line\"><\/div><div class=\"cm-line\">public class Main {<\/div><div class=\"cm-line\"><\/div><div class=\"cm-line\">    public static void main(String[] args) {<\/div><div class=\"cm-line\"><\/div><div class=\"cm-line\">        List&lt;String&gt; names = new ArrayList&lt;&gt;();<\/div><div class=\"cm-line\"><\/div><div class=\"cm-line\">        names.add(&quot;John&quot;);<\/div><div class=\"cm-line\">        names.add(&quot;Peter&quot;);<\/div><div class=\"cm-line\">        names.add(&quot;Michael&quot;);<\/div><div class=\"cm-line\"><\/div><div class=\"cm-line\">        System.out.println(names.getFirst());<\/div><div class=\"cm-line\">        System.out.println(names.getLast());<\/div><div class=\"cm-line\"><\/div><div class=\"cm-line\">        names.addFirst(&quot;Zara&quot;);<\/div><div class=\"cm-line\">        names.addLast(&quot;Tom&quot;);<\/div><div class=\"cm-line\"><\/div><div class=\"cm-line\">        System.out.println(names);<\/div><div class=\"cm-line\"><\/div><div class=\"cm-line\">        names.removeFirst();<\/div><div class=\"cm-line\">        names.removeLast();<\/div><div class=\"cm-line\"><\/div><div class=\"cm-line\">        System.out.println(names);<\/div><div class=\"cm-line\">    }<\/div><div class=\"cm-line\">}<\/div><\/code><\/pre>\n\t\t<\/div>\n\t<\/div>\n<\/div>\n\n\n<p class=\"wp-block-paragraph\">\u04ae\u0440 \u0434\u04af\u043d:<\/p>\n\n\n<div class=\"wp-block-code\">\n\t<div class=\"cm-editor\">\n\t\t<div class=\"cm-scroller\">\n\t\t\t\n<pre>\n<code><div class=\"cm-line\">John<\/div><div class=\"cm-line\">Michael<\/div><div class=\"cm-line\">[Zara, John, Peter, Michael, Tom]<\/div><div class=\"cm-line\">[John, Peter, Michael]<\/div><\/code><\/pre>\n\t\t<\/div>\n\t<\/div>\n<\/div>\n\n\n<h3 class=\"wp-block-heading\">Example 2 \u2013 SequencedMap<\/h3>\n\n\n<div class=\"wp-block-code\">\n\t<div class=\"cm-editor\">\n\t\t<div class=\"cm-scroller\">\n\t\t\t\n<pre>\n<code><div class=\"cm-line\">import java.util.LinkedHashMap;<\/div><div class=\"cm-line\">import java.util.SequencedMap;<\/div><div class=\"cm-line\"><\/div><div class=\"cm-line\">public class Main {<\/div><div class=\"cm-line\"><\/div><div class=\"cm-line\">    public static void main(String[] args) {<\/div><div class=\"cm-line\"><\/div><div class=\"cm-line\">        SequencedMap&lt;String, Integer&gt; map =<\/div><div class=\"cm-line\">                new LinkedHashMap&lt;&gt;();<\/div><div class=\"cm-line\"><\/div><div class=\"cm-line\">        map.put(&quot;John&quot;, 25);<\/div><div class=\"cm-line\">        map.put(&quot;Peter&quot;, 30);<\/div><div class=\"cm-line\">        map.put(&quot;Michael&quot;, 35);<\/div><div class=\"cm-line\"><\/div><div class=\"cm-line\">        System.out.println(map.firstEntry());<\/div><div class=\"cm-line\">        System.out.println(map.lastEntry());<\/div><div class=\"cm-line\"><\/div><div class=\"cm-line\">        map.putFirst(&quot;Zara&quot;, 22);<\/div><div class=\"cm-line\">        map.putLast(&quot;Tom&quot;, 40);<\/div><div class=\"cm-line\"><\/div><div class=\"cm-line\">        System.out.println(map);<\/div><div class=\"cm-line\">    }<\/div><div class=\"cm-line\">}<\/div><\/code><\/pre>\n\t\t<\/div>\n\t<\/div>\n<\/div>\n\n\n<p class=\"wp-block-paragraph\">\u04ae\u0440 \u0434\u04af\u043d:<\/p>\n\n\n<div class=\"wp-block-code\">\n\t<div class=\"cm-editor\">\n\t\t<div class=\"cm-scroller\">\n\t\t\t\n<pre>\n<code><div class=\"cm-line\">John=25<\/div><div class=\"cm-line\">Michael=35<\/div><div class=\"cm-line\">{Zara=22, John=25, Peter=30, Michael=35, Tom=40}<\/div><\/code><\/pre>\n\t\t<\/div>\n\t<\/div>\n<\/div>\n\n\n<h3 class=\"wp-block-heading\">Example 3 \u2013 Reversed View<\/h3>\n\n\n\n<p class=\"wp-block-paragraph\">\u0430\u0440\u0433\u0430 <code>reversed()<\/code> \u0432\u0440\u044a\u0449\u0430 View \u043d\u0430 \u043e\u0440\u0438\u0433\u0438\u043d\u0430\u043b\u043d\u0430\u0442\u0430 \u043a\u043e\u043b\u0435\u043a\u0446\u0438\u044f \u0432 \u043e\u0431\u0440\u0430\u0442\u0435\u043d \u0440\u0435\u0434, \u0430 \u043d\u0435 \u0441\u044a\u0437\u0434\u0430\u0432\u0430 \u043d\u0435\u0437\u0430\u0432\u0438\u0441\u0438\u043c\u043e \u043a\u043e\u043f\u0438\u0435.<\/p>\n\n\n<div class=\"wp-block-code\">\n\t<div class=\"cm-editor\">\n\t\t<div class=\"cm-scroller\">\n\t\t\t\n<pre>\n<code><div class=\"cm-line\">import java.util.ArrayList;<\/div><div class=\"cm-line\">import java.util.List;<\/div><div class=\"cm-line\"><\/div><div class=\"cm-line\">public class Main {<\/div><div class=\"cm-line\"><\/div><div class=\"cm-line\">    public static void main(String[] args) {<\/div><div class=\"cm-line\"><\/div><div class=\"cm-line\">        List&lt;String&gt; names = new ArrayList&lt;&gt;(<\/div><div class=\"cm-line\">                List.of(&quot;John&quot;, &quot;Peter&quot;, &quot;Michael&quot;)<\/div><div class=\"cm-line\">        );<\/div><div class=\"cm-line\"><\/div><div class=\"cm-line\">        List&lt;String&gt; reversedNames = names.reversed();<\/div><div class=\"cm-line\"><\/div><div class=\"cm-line\">        System.out.println(reversedNames);<\/div><div class=\"cm-line\"><\/div><div class=\"cm-line\">        reversedNames.add(&quot;Zara&quot;);<\/div><div class=\"cm-line\"><\/div><div class=\"cm-line\">        System.out.println(names);<\/div><div class=\"cm-line\">    }<\/div><div class=\"cm-line\">}<\/div><\/code><\/pre>\n\t\t<\/div>\n\t<\/div>\n<\/div>\n\n\n<p class=\"wp-block-paragraph\">\u04ae\u0440 \u0434\u04af\u043d:<\/p>\n\n\n<div class=\"wp-block-code\">\n\t<div class=\"cm-editor\">\n\t\t<div class=\"cm-scroller\">\n\t\t\t\n<pre>\n<code><div class=\"cm-line\">[Michael, Peter, John]<\/div><div class=\"cm-line\">[John, Peter, Michael, Zara]<\/div><\/code><\/pre>\n\t\t<\/div>\n\t<\/div>\n<\/div>\n\n\n<p class=\"wp-block-paragraph\">\u041e\u0431\u044f\u0441\u043d\u0435\u043d\u0438\u0435: \u041f\u0440\u043e\u043c\u0435\u043d\u0438\u0442\u0435 \u0432 <code>reversedNames<\/code> \u0441\u0435 \u043e\u0442\u0440\u0430\u0437\u044f\u0432\u0430\u0442 \u0432\u044a\u0440\u0445\u0443 \u043e\u0440\u0438\u0433\u0438\u043d\u0430\u043b\u043d\u0430\u0442\u0430 \u043a\u043e\u043b\u0435\u043a\u0446\u0438\u044f <code>names<\/code>, \u0437\u0430\u0449\u043e\u0442\u043e \u0442\u043e\u0432\u0430 \u0435 Live View.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">5. \u041a\u0430\u043a\u0432\u043e \u0435 \u043f\u0440\u0435\u0434\u0438\u043c\u0441\u0442\u0432\u043e\u0442\u043e \u043d\u0430 Sequenced Collections?<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">\u041f\u0440\u0435\u0434\u0438 Java 21 \u0434\u043e\u0441\u0442\u044a\u043f\u044a\u0442 \u0434\u043e \u043f\u044a\u0440\u0432\u0438\u044f \u0438 \u043f\u043e\u0441\u043b\u0435\u0434\u043d\u0438\u044f \u0435\u043b\u0435\u043c\u0435\u043d\u0442 \u0437\u0430\u0432\u0438\u0441\u0435\u0448\u0435 \u043e\u0442 \u043a\u043e\u043d\u043a\u0440\u0435\u0442\u043d\u0430\u0442\u0430 \u0438\u043c\u043f\u043b\u0435\u043c\u0435\u043d\u0442\u0430\u0446\u0438\u044f \u043d\u0430 Collection.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">\u041d\u0430\u043f\u0440\u0438\u043c\u0435\u0440:<\/p>\n\n\n<div class=\"wp-block-code\">\n\t<div class=\"cm-editor\">\n\t\t<div class=\"cm-scroller\">\n\t\t\t\n<pre>\n<code><div class=\"cm-line\">\/\/ Before Java 21<\/div><div class=\"cm-line\">list.get(0);<\/div><div class=\"cm-line\">list.get(list.size() - 1);<\/div><\/code><\/pre>\n\t\t<\/div>\n\t<\/div>\n<\/div>\n\n\n<p class=\"wp-block-paragraph\">At <code>LinkedHashSet<\/code> \u0438 \u0434\u0440\u0443\u0433\u0438 Collections \u043d\u044f\u043c\u0430\u0448\u0435 \u0443\u043d\u0438\u0432\u0435\u0440\u0441\u0430\u043b\u0435\u043d \u043d\u0430\u0447\u0438\u043d \u0437\u0430 \u0434\u0438\u0440\u0435\u043a\u0442\u0435\u043d \u0434\u043e\u0441\u0442\u044a\u043f \u0434\u043e \u043f\u044a\u0440\u0432\u0438\u044f \u0438 \u043f\u043e\u0441\u043b\u0435\u0434\u043d\u0438\u044f \u0435\u043b\u0435\u043c\u0435\u043d\u0442.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">\u0421 Java 21:<\/p>\n\n\n<div class=\"wp-block-code\">\n\t<div class=\"cm-editor\">\n\t\t<div class=\"cm-scroller\">\n\t\t\t\n<pre>\n<code><div class=\"cm-line\">\/\/ Java 21+<\/div><div class=\"cm-line\">collection.getFirst();<\/div><div class=\"cm-line\">collection.getLast();<\/div><div class=\"cm-line\">collection.reversed();<\/div><\/code><\/pre>\n\t\t<\/div>\n\t<\/div>\n<\/div>\n\n\n<p class=\"wp-block-paragraph\">\u0422\u043e\u0432\u0430 \u043f\u0440\u0430\u0432\u0438 \u043a\u043e\u0434\u0430 \u043f\u043e-\u0443\u043d\u0438\u0444\u0438\u0446\u0438\u0440\u0430\u043d, \u0447\u0435\u0442\u0438\u043c \u0438 \u043d\u0435\u0437\u0430\u0432\u0438\u0441\u0438\u043c \u043e\u0442 \u043a\u043e\u043d\u043a\u0440\u0435\u0442\u043d\u0430\u0442\u0430 \u0438\u043c\u043f\u043b\u0435\u043c\u0435\u043d\u0442\u0430\u0446\u0438\u044f.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">\u0412\u0430\u0436\u043d\u043e \u0437\u0430 Java Developer Interview<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">\u0421\u0430\u043d\u0430\u0436 \u0431\u0430\u0439\u043d\u0430 \u0443\u0443:<\/p>\n\n\n\n<ol class=\"wp-block-list\">\n<li>Sequenced Collections \u0441\u0430 \u0432\u044a\u0432\u0435\u0434\u0435\u043d\u0438 \u0432 Java 21 \u0447\u0440\u0435\u0437 JEP 431.<\/li>\n\n\n\n<li>\u041d\u043e\u0432\u0438\u0442\u0435 \u0438\u043d\u0442\u0435\u0440\u0444\u0435\u0439\u0441\u0438 \u0441\u0430 <code>SequencedCollection<\/code>, <code>SequencedSet<\/code> \u0431\u043e\u043b\u043e\u043d <code>SequencedMap<\/code>.<\/li>\n\n\n\n<li><code>getFirst()<\/code> \u0431\u043e\u043b\u043e\u043d <code>getLast()<\/code> \u043e\u0441\u0438\u0433\u0443\u0440\u044f\u0432\u0430\u0442 \u0434\u043e\u0441\u0442\u044a\u043f \u0434\u043e \u043f\u044a\u0440\u0432\u0438\u044f \u0438 \u043f\u043e\u0441\u043b\u0435\u0434\u043d\u0438\u044f \u0435\u043b\u0435\u043c\u0435\u043d\u0442.<\/li>\n\n\n\n<li><code>reversed()<\/code> \u0432\u0440\u044a\u0449\u0430 Live View \u0432 \u043e\u0431\u0440\u0430\u0442\u0435\u043d \u0440\u0435\u0434, \u0430 \u043d\u0435 \u043d\u0435\u0437\u0430\u0432\u0438\u0441\u0438\u043c\u043e \u043a\u043e\u043f\u0438\u0435.<\/li>\n\n\n\n<li><code>SequencedMap<\/code> \u0438\u0437\u043f\u043e\u043b\u0437\u0432\u0430 <code>firstEntry()<\/code>, <code>lastEntry()<\/code>, <code>putFirst()<\/code> \u0431\u043e\u043b\u043e\u043d <code>putLast()<\/code>.<\/li>\n\n\n\n<li>\u041d\u0435 \u0432\u0441\u0438\u0447\u043a\u0438 Collections \u043f\u043e\u0434\u0434\u044a\u0440\u0436\u0430\u0442 \u043f\u0440\u043e\u043c\u044f\u043d\u0430 \u043d\u0430 \u0440\u0435\u0434\u0430 \u2013 \u043f\u0440\u0438 \u043d\u0435\u043f\u043e\u0434\u0434\u044a\u0440\u0436\u0430\u043d\u0438 \u043e\u043f\u0435\u0440\u0430\u0446\u0438\u0438 \u043c\u043e\u0436\u0435 \u0434\u0430 \u0441\u0435 \u043f\u043e\u043b\u0443\u0447\u0438 <code>UnsupportedOperationException<\/code>.<\/li>\n<\/ol>\n\n\n\n<p class=\"wp-block-paragraph\">\u041e\u0441\u043d\u043e\u0432\u0435\u043d \u0438\u0437\u0432\u043e\u0434: Sequenced Collections \u0432 Java 21 \u0441\u0442\u0430\u043d\u0434\u0430\u0440\u0442\u0438\u0437\u0438\u0440\u0430\u0442 \u0440\u0430\u0431\u043e\u0442\u0430\u0442\u0430 \u0441 Collections, \u043a\u043e\u0438\u0442\u043e \u0438\u043c\u0430\u0442 \u043e\u043f\u0440\u0435\u0434\u0435\u043b\u0435\u043d \u0440\u0435\u0434 \u043d\u0430 \u0435\u043b\u0435\u043c\u0435\u043d\u0442\u0438\u0442\u0435, \u043a\u0430\u0442\u043e \u043f\u0440\u0435\u0434\u043e\u0441\u0442\u0430\u0432\u044f\u0442 \u0443\u043d\u0438\u0444\u0438\u0446\u0438\u0440\u0430\u043d\u0438 Methods \u0437\u0430 \u0434\u043e\u0441\u0442\u044a\u043f, \u0434\u043e\u0431\u0430\u0432\u044f\u043d\u0435, \u043f\u0440\u0435\u043c\u0430\u0445\u0432\u0430\u043d\u0435 \u0438 \u043e\u0431\u0440\u044a\u0449\u0430\u043d\u0435 \u043d\u0430 \u0440\u0435\u0434\u0430.<\/p>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h1 class=\"wp-block-heading\">Spring \u0430\u043d\u043e\u0442\u0430\u0446\u0438\u0438 (Spring Annotations)<\/h1>\n\n\n\n<p class=\"wp-block-paragraph\">Spring Framework \u0438\u0437\u043f\u043e\u043b\u0437\u0432\u0430 \u0430\u043d\u043e\u0442\u0430\u0446\u0438\u0438 (Annotations), \u0447\u0440\u0435\u0437 \u043a\u043e\u0438\u0442\u043e \u0441\u0435 \u043a\u043e\u043d\u0444\u0438\u0433\u0443\u0440\u0438\u0440\u0430\u0442 \u043a\u043e\u043c\u043f\u043e\u043d\u0435\u043d\u0442\u0438\u0442\u0435 \u043d\u0430 \u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u0435\u0442\u043e, \u0443\u043f\u0440\u0430\u0432\u043b\u044f\u0432\u0430\u0442 \u0441\u0435 \u0437\u0430\u0432\u0438\u0441\u0438\u043c\u043e\u0441\u0442\u0438\u0442\u0435 (Dependency Injection), \u043e\u0431\u0440\u0430\u0431\u043e\u0442\u0432\u0430\u0442 \u0441\u0435 HTTP \u0437\u0430\u044f\u0432\u043a\u0438 \u0438 \u0441\u0435 \u043a\u043e\u043d\u0442\u0440\u043e\u043b\u0438\u0440\u0430\u0442 \u0442\u0440\u0430\u043d\u0437\u0430\u043a\u0446\u0438\u0438\u0442\u0435.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">\u041f\u043e-\u0434\u043e\u043b\u0443 \u0441\u0430 \u043f\u0440\u0435\u0434\u0441\u0442\u0430\u0432\u0435\u043d\u0438 \u043d\u0430\u0439-\u0447\u0435\u0441\u0442\u043e \u0438\u0437\u043f\u043e\u043b\u0437\u0432\u0430\u043d\u0438\u0442\u0435 Spring \u0438 Spring Boot \u0430\u043d\u043e\u0442\u0430\u0446\u0438\u0438, \u0441 \u043a\u0440\u0430\u0442\u043a\u043e \u043e\u0431\u044f\u0441\u043d\u0435\u043d\u0438\u0435 \u0438 \u043f\u0440\u0438\u043c\u0435\u0440\u0438.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">1. \u041e\u0441\u043d\u043e\u0432\u043d\u0438 \u0430\u043d\u043e\u0442\u0430\u0446\u0438\u0438 \u0437\u0430 Spring \u043a\u043e\u043c\u043f\u043e\u043d\u0435\u043d\u0442\u0438<\/h2>\n\n\n\n<figure class=\"wp-block-table\"><table class=\"has-fixed-layout\"><tbody><tr><th>\u0410\u043d\u043e\u0442\u0430\u0446\u0438\u044f<\/th><th>\u0417\u043e\u0440\u0438\u043b\u0433\u043e<\/th><\/tr><tr><td><code>@Component<\/code><\/td><td>\u041c\u0430\u0440\u043a\u0438\u0440\u0430 \u043a\u043b\u0430\u0441 \u043a\u0430\u0442\u043e Spring-managed component. Spring \u0433\u043e \u043e\u0442\u043a\u0440\u0438\u0432\u0430 \u0447\u0440\u0435\u0437 Component Scanning \u0438 \u0433\u043e \u0440\u0435\u0433\u0438\u0441\u0442\u0440\u0438\u0440\u0430 \u043a\u0430\u0442\u043e Bean.<\/td><\/tr><tr><td><code>@Controller<\/code><\/td><td>\u0421\u043f\u0435\u0446\u0438\u0430\u043b\u0438\u0437\u0430\u0446\u0438\u044f \u043d\u0430 <code>@Component<\/code>, \u0438\u0437\u043f\u043e\u043b\u0437\u0432\u0430\u043d\u0430 \u0437\u0430 MVC \u043a\u043e\u043d\u0442\u0440\u043e\u043b\u0435\u0440\u0438, \u043a\u043e\u0438\u0442\u043e \u043e\u0431\u0440\u0430\u0431\u043e\u0442\u0432\u0430\u0442 HTTP \u0437\u0430\u044f\u0432\u043a\u0438 \u0438 \u043e\u0431\u0438\u043a\u043d\u043e\u0432\u0435\u043d\u043e \u0432\u0440\u044a\u0449\u0430\u0442 \u0438\u043c\u0435\u043d\u0430 \u043d\u0430 View.<\/td><\/tr><tr><td><code>@Service<\/code><\/td><td>\u0421\u043f\u0435\u0446\u0438\u0430\u043b\u0438\u0437\u0430\u0446\u0438\u044f \u043d\u0430 <code>@Component<\/code>, \u043f\u0440\u0435\u0434\u043d\u0430\u0437\u043d\u0430\u0447\u0435\u043d\u0430 \u0437\u0430 Service Layer. \u041e\u0431\u0438\u043a\u043d\u043e\u0432\u0435\u043d\u043e \u0441\u044a\u0434\u044a\u0440\u0436\u0430 Business Logic.<\/td><\/tr><tr><td><code>@Repository<\/code><\/td><td>\u0421\u043f\u0435\u0446\u0438\u0430\u043b\u0438\u0437\u0430\u0446\u0438\u044f \u043d\u0430 <code>@Component<\/code>, \u0438\u0437\u043f\u043e\u043b\u0437\u0432\u0430\u043d\u0430 \u0432 Data Access Layer. \u041e\u0441\u0432\u0435\u043d \u0442\u043e\u0432\u0430 \u043e\u0441\u0438\u0433\u0443\u0440\u044f\u0432\u0430 Exception Translation \u0437\u0430 \u043e\u043f\u0440\u0435\u0434\u0435\u043b\u0435\u043d\u0438 database exceptions.<\/td><\/tr><tr><td><code>@Configuration<\/code><\/td><td>\u041c\u0430\u0440\u043a\u0438\u0440\u0430 \u043a\u043b\u0430\u0441, \u043a\u043e\u0439\u0442\u043e \u0441\u044a\u0434\u044a\u0440\u0436\u0430 \u043a\u043e\u043d\u0444\u0438\u0433\u0443\u0440\u0430\u0446\u0438\u044f \u043d\u0430 Spring \u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u0435\u0442\u043e, \u043e\u0431\u0438\u043a\u043d\u043e\u0432\u0435\u043d\u043e \u0447\u0440\u0435\u0437 \u043c\u0435\u0442\u043e\u0434\u0438 \u0441 <code>@Bean<\/code>.<\/td><\/tr><tr><td><code>@Bean<\/code><\/td><td>\u041f\u043e\u0441\u0442\u0430\u0432\u044f \u0441\u0435 \u0432\u044a\u0440\u0445\u0443 \u043c\u0435\u0442\u043e\u0434, \u0447\u0438\u044f\u0442\u043e \u0432\u044a\u0440\u043d\u0430\u0442\u0430 \u0441\u0442\u043e\u0439\u043d\u043e\u0441\u0442 \u0441\u0435 \u0440\u0435\u0433\u0438\u0441\u0442\u0440\u0438\u0440\u0430 \u043a\u0430\u0442\u043e Bean \u0432 Spring Container.<\/td><\/tr><\/tbody><\/table><\/figure>\n\n\n\n<p class=\"wp-block-paragraph\">\u0416\u0438\u0448\u044d\u044d:<\/p>\n\n\n<div class=\"wp-block-code\">\n\t<div class=\"cm-editor\">\n\t\t<div class=\"cm-scroller\">\n\t\t\t\n<pre>\n<code><div class=\"cm-line\">@Component<\/div><div class=\"cm-line\">public class EmailValidator {<\/div><div class=\"cm-line\"><\/div><div class=\"cm-line\">    public boolean isValid(String email) {<\/div><div class=\"cm-line\">        return email != null &amp;&amp; email.contains(&quot;@&quot;);<\/div><div class=\"cm-line\">    }<\/div><div class=\"cm-line\">}<\/div><\/code><\/pre>\n\t\t<\/div>\n\t<\/div>\n<\/div>\n\n\n<p class=\"wp-block-paragraph\">\u041f\u0440\u0438\u043c\u0435\u0440 \u0437\u0430 Java-based Configuration:<\/p>\n\n\n<div class=\"wp-block-code\">\n\t<div class=\"cm-editor\">\n\t\t<div class=\"cm-scroller\">\n\t\t\t\n<pre>\n<code><div class=\"cm-line\">@Configuration<\/div><div class=\"cm-line\">public class AppConfig {<\/div><div class=\"cm-line\"><\/div><div class=\"cm-line\">    @Bean<\/div><div class=\"cm-line\">    public EmailValidator emailValidator() {<\/div><div class=\"cm-line\">        return new EmailValidator();<\/div><div class=\"cm-line\">    }<\/div><div class=\"cm-line\">}<\/div><\/code><\/pre>\n\t\t<\/div>\n\t<\/div>\n<\/div>\n\n\n<h2 class=\"wp-block-heading\">2. \u0410\u043d\u043e\u0442\u0430\u0446\u0438\u0438 \u0437\u0430 Dependency Injection<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">\u0422\u0435\u0437\u0438 \u0430\u043d\u043e\u0442\u0430\u0446\u0438\u0438 \u0443\u043f\u0440\u0430\u0432\u043b\u044f\u0432\u0430\u0442 \u0430\u0432\u0442\u043e\u043c\u0430\u0442\u0438\u0447\u043d\u043e\u0442\u043e \u0438\u043d\u0436\u0435\u043a\u0442\u0438\u0440\u0430\u043d\u0435 \u043d\u0430 \u0437\u0430\u0432\u0438\u0441\u0438\u043c\u043e\u0441\u0442\u0438 \u043c\u0435\u0436\u0434\u0443 Spring Beans.<\/p>\n\n\n\n<figure class=\"wp-block-table\"><table class=\"has-fixed-layout\"><tbody><tr><th>\u0410\u043d\u043e\u0442\u0430\u0446\u0438\u044f<\/th><th>\u0417\u043e\u0440\u0438\u043b\u0433\u043e<\/th><\/tr><tr><td><code>@Autowired<\/code><\/td><td>\u0418\u0437\u043f\u043e\u043b\u0437\u0432\u0430 \u0441\u0435 \u0437\u0430 \u0430\u0432\u0442\u043e\u043c\u0430\u0442\u0438\u0447\u043d\u043e Dependency Injection \u0447\u0440\u0435\u0437 Constructor, Method \u0438\u043b\u0438 Field.<\/td><\/tr><tr><td><code>@Qualifier<\/code><\/td><td>\u0423\u043a\u0430\u0437\u0432\u0430 \u043a\u043e\u043d\u043a\u0440\u0435\u0442\u043d\u0438\u044f Bean, \u043a\u043e\u0439\u0442\u043e \u0442\u0440\u044f\u0431\u0432\u0430 \u0434\u0430 \u0431\u044a\u0434\u0435 \u0438\u043d\u0436\u0435\u043a\u0442\u0438\u0440\u0430\u043d, \u043a\u043e\u0433\u0430\u0442\u043e \u0438\u043c\u0430 \u043d\u044f\u043a\u043e\u043b\u043a\u043e \u043a\u0430\u043d\u0434\u0438\u0434\u0430\u0442\u0430 \u043e\u0442 \u0435\u0434\u0438\u043d \u0438 \u0441\u044a\u0449 \u0442\u0438\u043f.<\/td><\/tr><tr><td><code>@Value<\/code><\/td><td>\u0418\u043d\u0436\u0435\u043a\u0442\u0438\u0440\u0430 \u0441\u0442\u043e\u0439\u043d\u043e\u0441\u0442\u0438 \u043e\u0442 application properties, environment variables \u0438\u043b\u0438 \u0434\u0440\u0443\u0433\u0438 \u043a\u043e\u043d\u0444\u0438\u0433\u0443\u0440\u0430\u0446\u0438\u043e\u043d\u043d\u0438 \u0438\u0437\u0442\u043e\u0447\u043d\u0438\u0446\u0438.<\/td><\/tr><tr><td><code>@Primary<\/code><\/td><td>\u041e\u043f\u0440\u0435\u0434\u0435\u043b\u044f \u043f\u0440\u0435\u0434\u043f\u043e\u0447\u0438\u0442\u0430\u043d Bean, \u043a\u043e\u0433\u0430\u0442\u043e \u0438\u043c\u0430 \u043d\u044f\u043a\u043e\u043b\u043a\u043e \u043a\u0430\u043d\u0434\u0438\u0434\u0430\u0442\u0430 \u043e\u0442 \u0435\u0434\u0438\u043d \u0438 \u0441\u044a\u0449 \u0442\u0438\u043f.<\/td><\/tr><\/tbody><\/table><\/figure>\n\n\n\n<p class=\"wp-block-paragraph\">\u0416\u0438\u0448\u044d\u044d:<\/p>\n\n\n<div class=\"wp-block-code\">\n\t<div class=\"cm-editor\">\n\t\t<div class=\"cm-scroller\">\n\t\t\t\n<pre>\n<code><div class=\"cm-line\">public interface NotificationService {<\/div><div class=\"cm-line\">    void send(String message);<\/div><div class=\"cm-line\">}<\/div><\/code><\/pre>\n\t\t<\/div>\n\t<\/div>\n<\/div>\n\n<div class=\"wp-block-code\">\n\t<div class=\"cm-editor\">\n\t\t<div class=\"cm-scroller\">\n\t\t\t\n<pre>\n<code><div class=\"cm-line\">@Service(&quot;emailService&quot;)<\/div><div class=\"cm-line\">public class EmailService implements NotificationService {<\/div><div class=\"cm-line\"><\/div><div class=\"cm-line\">    public void send(String message) {<\/div><div class=\"cm-line\">        System.out.println(&quot;Email: &quot; + message);<\/div><div class=\"cm-line\">    }<\/div><div class=\"cm-line\">}<\/div><\/code><\/pre>\n\t\t<\/div>\n\t<\/div>\n<\/div>\n\n<div class=\"wp-block-code\">\n\t<div class=\"cm-editor\">\n\t\t<div class=\"cm-scroller\">\n\t\t\t\n<pre>\n<code><div class=\"cm-line\">@Service(&quot;smsService&quot;)<\/div><div class=\"cm-line\">public class SmsService implements NotificationService {<\/div><div class=\"cm-line\"><\/div><div class=\"cm-line\">    public void send(String message) {<\/div><div class=\"cm-line\">        System.out.println(&quot;SMS: &quot; + message);<\/div><div class=\"cm-line\">    }<\/div><div class=\"cm-line\">}<\/div><\/code><\/pre>\n\t\t<\/div>\n\t<\/div>\n<\/div>\n\n\n<p class=\"wp-block-paragraph\">\u0418\u0437\u043f\u043e\u043b\u0437\u0432\u0430\u043d\u0435 \u043d\u0430 <code>@Qualifier<\/code>:<\/p>\n\n\n<div class=\"wp-block-code\">\n\t<div class=\"cm-editor\">\n\t\t<div class=\"cm-scroller\">\n\t\t\t\n<pre>\n<code><div class=\"cm-line\">@Service<\/div><div class=\"cm-line\">public class NotificationManager {<\/div><div class=\"cm-line\"><\/div><div class=\"cm-line\">    private final NotificationService service;<\/div><div class=\"cm-line\"><\/div><div class=\"cm-line\">    public NotificationManager(<\/div><div class=\"cm-line\">            @Qualifier(&quot;emailService&quot;)<\/div><div class=\"cm-line\">            NotificationService service) {<\/div><div class=\"cm-line\">        this.service = service;<\/div><div class=\"cm-line\">    }<\/div><div class=\"cm-line\">}<\/div><\/code><\/pre>\n\t\t<\/div>\n\t<\/div>\n<\/div>\n\n\n<p class=\"wp-block-paragraph\">\u0412\u0430\u0436\u043d\u043e: \u0410\u043a\u043e \u0438\u043c\u0430 \u0441\u0430\u043c\u043e \u0435\u0434\u0438\u043d \u043f\u043e\u0434\u0445\u043e\u0434\u044f\u0449 Bean, Spring \u043e\u0431\u0438\u043a\u043d\u043e\u0432\u0435\u043d\u043e \u043c\u043e\u0436\u0435 \u0434\u0430 \u0433\u043e \u0438\u043d\u0436\u0435\u043a\u0442\u0438\u0440\u0430 \u0431\u0435\u0437 <code>@Autowired<\/code>. \u041f\u0440\u0438 Constructor Injection, \u043a\u043e\u0433\u0430\u0442\u043e \u043a\u043b\u0430\u0441\u044a\u0442 \u0438\u043c\u0430 \u0441\u0430\u043c\u043e \u0435\u0434\u0438\u043d \u043a\u043e\u043d\u0441\u0442\u0440\u0443\u043a\u0442\u043e\u0440, \u0430\u043d\u043e\u0442\u0430\u0446\u0438\u044f\u0442\u0430 <code>@Autowired<\/code> \u043d\u0435 \u0435 \u043d\u0435\u043e\u0431\u0445\u043e\u0434\u0438\u043c\u0430.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">3. \u0410\u043d\u043e\u0442\u0430\u0446\u0438\u0438 \u0437\u0430 Bean Lifecycle \u0438 Scope<\/h2>\n\n\n\n<figure class=\"wp-block-table\"><table class=\"has-fixed-layout\"><tbody><tr><th>\u0410\u043d\u043e\u0442\u0430\u0446\u0438\u044f<\/th><th>\u0417\u043e\u0440\u0438\u043b\u0433\u043e<\/th><\/tr><tr><td><code>@Scope<\/code><\/td><td>\u041e\u043f\u0440\u0435\u0434\u0435\u043b\u044f \u0436\u0438\u0437\u043d\u0435\u043d\u0438\u044f \u0446\u0438\u043a\u044a\u043b \u0438 Scope \u043d\u0430 Bean, \u043d\u0430\u043f\u0440\u0438\u043c\u0435\u0440 <code>singleton<\/code> \u044d\u0441\u0432\u044d\u043b <code>prototype<\/code>.<\/td><\/tr><tr><td><code>@Lazy<\/code><\/td><td>\u041e\u0442\u043b\u0430\u0433\u0430 \u0438\u043d\u0438\u0446\u0438\u0430\u043b\u0438\u0437\u0430\u0446\u0438\u044f\u0442\u0430 \u043d\u0430 Bean \u0434\u043e \u043c\u043e\u043c\u0435\u043d\u0442\u0430, \u0432 \u043a\u043e\u0439\u0442\u043e \u0442\u043e\u0439 \u0431\u044a\u0434\u0435 \u043d\u0435\u043e\u0431\u0445\u043e\u0434\u0438\u043c.<\/td><\/tr><\/tbody><\/table><\/figure>\n\n\n\n<p class=\"wp-block-paragraph\">\u0416\u0438\u0448\u044d\u044d:<\/p>\n\n\n<div class=\"wp-block-code\">\n\t<div class=\"cm-editor\">\n\t\t<div class=\"cm-scroller\">\n\t\t\t\n<pre>\n<code><div class=\"cm-line\">@Component<\/div><div class=\"cm-line\">@Scope(&quot;prototype&quot;)<\/div><div class=\"cm-line\">public class ReportGenerator {<\/div><div class=\"cm-line\">    \/\/ New instance for each request from the container<\/div><div class=\"cm-line\">}<\/div><\/code><\/pre>\n\t\t<\/div>\n\t<\/div>\n<\/div>\n\n<div class=\"wp-block-code\">\n\t<div class=\"cm-editor\">\n\t\t<div class=\"cm-scroller\">\n\t\t\t\n<pre>\n<code><div class=\"cm-line\">@Component<\/div><div class=\"cm-line\">@Lazy<\/div><div class=\"cm-line\">public class HeavyService {<\/div><div class=\"cm-line\">    \/\/ Initialized only when needed<\/div><div class=\"cm-line\">}<\/div><\/code><\/pre>\n\t\t<\/div>\n\t<\/div>\n<\/div>\n\n\n<p class=\"wp-block-paragraph\">\u041e\u0441\u043d\u043e\u0432\u043d\u0438 Bean Scopes:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li><code>singleton<\/code> \u2013 \u0435\u0434\u0438\u043d \u0435\u043a\u0437\u0435\u043c\u043f\u043b\u044f\u0440 \u043d\u0430 Bean \u0432 \u0440\u0430\u043c\u043a\u0438\u0442\u0435 \u043d\u0430 Spring Container. \u0422\u043e\u0432\u0430 \u0435 \u0441\u0442\u0430\u043d\u0434\u0430\u0440\u0442\u043d\u0438\u044f\u0442 Scope.<\/li>\n\n\n\n<li><code>prototype<\/code> \u2013 \u043d\u043e\u0432 \u0435\u043a\u0437\u0435\u043c\u043f\u043b\u044f\u0440 \u043f\u0440\u0438 \u0432\u0441\u044f\u043a\u043e \u043f\u043e\u0438\u0441\u043a\u0432\u0430\u043d\u0435 \u043e\u0442 Container.<\/li>\n\n\n\n<li><code>request<\/code> \u2013 \u0435\u0434\u0438\u043d \u0435\u043a\u0437\u0435\u043c\u043f\u043b\u044f\u0440 \u0437\u0430 \u0432\u0441\u044f\u043a\u0430 HTTP \u0437\u0430\u044f\u0432\u043a\u0430.<\/li>\n\n\n\n<li><code>session<\/code> \u2013 \u0435\u0434\u0438\u043d \u0435\u043a\u0437\u0435\u043c\u043f\u043b\u044f\u0440 \u0437\u0430 \u0432\u0441\u044f\u043a\u0430 HTTP \u0441\u0435\u0441\u0438\u044f.<\/li>\n<\/ul>\n\n\n\n<p class=\"wp-block-paragraph\"><code>request<\/code> \u0431\u043e\u043b\u043e\u043d <code>session<\/code> \u0441\u0430 \u043f\u0440\u0438\u043b\u043e\u0436\u0438\u043c\u0438 \u0432 Web Application Context.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">4. \u0410\u043d\u043e\u0442\u0430\u0446\u0438\u0438 \u0437\u0430 Spring MVC \u0438 REST API<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">\u0422\u0435\u0437\u0438 \u0430\u043d\u043e\u0442\u0430\u0446\u0438\u0438 \u0441\u0435 \u0438\u0437\u043f\u043e\u043b\u0437\u0432\u0430\u0442 \u0437\u0430 \u043e\u0431\u0440\u0430\u0431\u043e\u0442\u043a\u0430 \u043d\u0430 HTTP \u0437\u0430\u044f\u0432\u043a\u0438 \u0438 \u0441\u044a\u0437\u0434\u0430\u0432\u0430\u043d\u0435 \u043d\u0430 Web Services.<\/p>\n\n\n\n<figure class=\"wp-block-table\"><table class=\"has-fixed-layout\"><tbody><tr><th>\u0410\u043d\u043e\u0442\u0430\u0446\u0438\u044f<\/th><th>\u0417\u043e\u0440\u0438\u043b\u0433\u043e<\/th><\/tr><tr><td><code>@RequestMapping<\/code><\/td><td>\u0421\u0432\u044a\u0440\u0437\u0432\u0430 HTTP \u0437\u0430\u044f\u0432\u043a\u0438 \u0441 Controller \u0438\u043b\u0438 \u043a\u043e\u043d\u043a\u0440\u0435\u0442\u0435\u043d Handler Method.<\/td><\/tr><tr><td><code>@GetMapping<\/code><\/td><td>\u041e\u0431\u0440\u0430\u0431\u043e\u0442\u0432\u0430 HTTP GET \u0437\u0430\u044f\u0432\u043a\u0438.<\/td><\/tr><tr><td><code>@PostMapping<\/code><\/td><td>\u041e\u0431\u0440\u0430\u0431\u043e\u0442\u0432\u0430 HTTP POST \u0437\u0430\u044f\u0432\u043a\u0438.<\/td><\/tr><tr><td><code>@PutMapping<\/code><\/td><td>\u041e\u0431\u0440\u0430\u0431\u043e\u0442\u0432\u0430 HTTP PUT \u0437\u0430\u044f\u0432\u043a\u0438.<\/td><\/tr><tr><td><code>@DeleteMapping<\/code><\/td><td>\u041e\u0431\u0440\u0430\u0431\u043e\u0442\u0432\u0430 HTTP DELETE \u0437\u0430\u044f\u0432\u043a\u0438.<\/td><\/tr><tr><td><code>@RestController<\/code><\/td><td>\u041a\u043e\u043c\u0431\u0438\u043d\u0438\u0440\u0430 <code>@Controller<\/code> \u0431\u043e\u043b\u043e\u043d <code>@ResponseBody<\/code>. \u0418\u0437\u043f\u043e\u043b\u0437\u0432\u0430 \u0441\u0435 \u043f\u0440\u0438 \u0441\u044a\u0437\u0434\u0430\u0432\u0430\u043d\u0435 \u043d\u0430 REST API.<\/td><\/tr><tr><td><code>@ResponseBody<\/code><\/td><td>\u0423\u043a\u0430\u0437\u0432\u0430, \u0447\u0435 \u0432\u044a\u0440\u043d\u0430\u0442\u0430\u0442\u0430 \u0441\u0442\u043e\u0439\u043d\u043e\u0441\u0442 \u0442\u0440\u044f\u0431\u0432\u0430 \u0434\u0430 \u0431\u044a\u0434\u0435 \u0437\u0430\u043f\u0438\u0441\u0430\u043d\u0430 \u0434\u0438\u0440\u0435\u043a\u0442\u043d\u043e \u0432 HTTP Response Body.<\/td><\/tr><tr><td><code>@PathVariable<\/code><\/td><td>\u0418\u0437\u0432\u043b\u0438\u0447\u0430 \u0441\u0442\u043e\u0439\u043d\u043e\u0441\u0442 \u043e\u0442 URI Path Variable.<\/td><\/tr><tr><td><code>@RequestParam<\/code><\/td><td>\u0418\u0437\u0432\u043b\u0438\u0447\u0430 \u0441\u0442\u043e\u0439\u043d\u043e\u0441\u0442 \u043e\u0442 Query Parameter.<\/td><\/tr><tr><td><code>@RequestBody<\/code><\/td><td>\u0421\u0432\u044a\u0440\u0437\u0432\u0430 HTTP Request Body \u0441 Java \u043e\u0431\u0435\u043a\u0442.<\/td><\/tr><\/tbody><\/table><\/figure>\n\n\n\n<p class=\"wp-block-paragraph\">\u041f\u0440\u0438\u043c\u0435\u0440 \u0437\u0430 REST Controller:<\/p>\n\n\n<div class=\"wp-block-code\">\n\t<div class=\"cm-editor\">\n\t\t<div class=\"cm-scroller\">\n\t\t\t\n<pre>\n<code><div class=\"cm-line\">@RestController<\/div><div class=\"cm-line\">@RequestMapping(&quot;\/api\/users&quot;)<\/div><div class=\"cm-line\">public class UserController {<\/div><div class=\"cm-line\"><\/div><div class=\"cm-line\">    @GetMapping(&quot;\/{id}&quot;)<\/div><div class=\"cm-line\">    public String getUser(@PathVariable Long id) {<\/div><div class=\"cm-line\">        return &quot;User ID: &quot; + id;<\/div><div class=\"cm-line\">    }<\/div><div class=\"cm-line\"><\/div><div class=\"cm-line\">    @PostMapping<\/div><div class=\"cm-line\">    public String createUser(<\/div><div class=\"cm-line\">            @RequestBody User user) {<\/div><div class=\"cm-line\">        return &quot;User created: &quot; + user.getName();<\/div><div class=\"cm-line\">    }<\/div><div class=\"cm-line\"><\/div><div class=\"cm-line\">    @GetMapping(&quot;\/search&quot;)<\/div><div class=\"cm-line\">    public String searchUser(<\/div><div class=\"cm-line\">            @RequestParam String name) {<\/div><div class=\"cm-line\">        return &quot;Searching for: &quot; + name;<\/div><div class=\"cm-line\">    }<\/div><div class=\"cm-line\"><\/div><div class=\"cm-line\">    @PutMapping(&quot;\/{id}&quot;)<\/div><div class=\"cm-line\">    public String updateUser(<\/div><div class=\"cm-line\">            @PathVariable Long id,<\/div><div class=\"cm-line\">            @RequestBody User user) {<\/div><div class=\"cm-line\">        return &quot;Updated user: &quot; + id;<\/div><div class=\"cm-line\">    }<\/div><div class=\"cm-line\"><\/div><div class=\"cm-line\">    @DeleteMapping(&quot;\/{id}&quot;)<\/div><div class=\"cm-line\">    public String deleteUser(<\/div><div class=\"cm-line\">            @PathVariable Long id) {<\/div><div class=\"cm-line\">        return &quot;Deleted user: &quot; + id;<\/div><div class=\"cm-line\">    }<\/div><div class=\"cm-line\">}<\/div><\/code><\/pre>\n\t\t<\/div>\n\t<\/div>\n<\/div>\n\n\n<p class=\"wp-block-paragraph\">\u0416\u0438\u0448\u044d\u044d \u043d\u044c <code>User<\/code> \u043a\u043b\u0430\u0441:<\/p>\n\n\n<div class=\"wp-block-code\">\n\t<div class=\"cm-editor\">\n\t\t<div class=\"cm-scroller\">\n\t\t\t\n<pre>\n<code><div class=\"cm-line\">public class User {<\/div><div class=\"cm-line\"><\/div><div class=\"cm-line\">    private String name;<\/div><div class=\"cm-line\"><\/div><div class=\"cm-line\">    public String getName() {<\/div><div class=\"cm-line\">        return name;<\/div><div class=\"cm-line\">    }<\/div><div class=\"cm-line\"><\/div><div class=\"cm-line\">    public void setName(String name) {<\/div><div class=\"cm-line\">        this.name = name;<\/div><div class=\"cm-line\">    }<\/div><div class=\"cm-line\">}<\/div><\/code><\/pre>\n\t\t<\/div>\n\t<\/div>\n<\/div>\n\n\n<p class=\"wp-block-paragraph\">\u0420\u0430\u0437\u043b\u0438\u043a\u0430 \u043c\u0435\u0436\u0434\u0443 <code>@PathVariable<\/code> \u0431\u043e\u043b\u043e\u043d <code>@RequestParam<\/code>:<\/p>\n\n\n\n<figure class=\"wp-block-table\"><table class=\"has-fixed-layout\"><tbody><tr><th>\u0410\u043d\u043e\u0442\u0430\u0446\u0438\u044f<\/th><th>\u041f\u0440\u0438\u043c\u0435\u0440\u0435\u043d URL<\/th><th>\u0418\u0437\u0432\u043b\u0435\u0447\u0435\u043d\u0430 \u0441\u0442\u043e\u0439\u043d\u043e\u0441\u0442<\/th><\/tr><tr><td><code>@PathVariable<\/code><\/td><td><code>\/api\/users\/15<\/code><\/td><td><code>15<\/code><\/td><\/tr><tr><td><code>@RequestParam<\/code><\/td><td><code>\/api\/users\/search?name=Ivan<\/code><\/td><td><code>Ivan<\/code><\/td><\/tr><\/tbody><\/table><\/figure>\n\n\n\n<h2 class=\"wp-block-heading\">5. \u0410\u043d\u043e\u0442\u0430\u0446\u0438\u0438 \u0437\u0430 \u0442\u0440\u0430\u043d\u0437\u0430\u043a\u0446\u0438\u0438<\/h2>\n\n\n\n<figure class=\"wp-block-table\"><table class=\"has-fixed-layout\"><tbody><tr><th>\u0410\u043d\u043e\u0442\u0430\u0446\u0438\u044f<\/th><th>\u0417\u043e\u0440\u0438\u043b\u0433\u043e<\/th><\/tr><tr><td><code>@Transactional<\/code><\/td><td>\u041e\u043f\u0440\u0435\u0434\u0435\u043b\u044f \u0442\u0440\u0430\u043d\u0437\u0430\u043a\u0446\u0438\u043e\u043d\u043d\u043e \u043f\u043e\u0432\u0435\u0434\u0435\u043d\u0438\u0435 \u043d\u0430 \u043c\u0435\u0442\u043e\u0434 \u0438\u043b\u0438 \u043a\u043b\u0430\u0441. \u041f\u043e\u0437\u0432\u043e\u043b\u044f\u0432\u0430 \u043e\u043f\u0435\u0440\u0430\u0446\u0438\u0438\u0442\u0435 \u0441 \u0431\u0430\u0437\u0430\u0442\u0430 \u0434\u0430\u043d\u043d\u0438 \u0434\u0430 \u0431\u044a\u0434\u0430\u0442 \u0438\u0437\u043f\u044a\u043b\u043d\u0435\u043d\u0438 \u043a\u0430\u0442\u043e \u0435\u0434\u043d\u0430 \u0442\u0440\u0430\u043d\u0437\u0430\u043a\u0446\u0438\u044f.<\/td><\/tr><\/tbody><\/table><\/figure>\n\n\n\n<p class=\"wp-block-paragraph\">\u0416\u0438\u0448\u044d\u044d:<\/p>\n\n\n<div class=\"wp-block-code\">\n\t<div class=\"cm-editor\">\n\t\t<div class=\"cm-scroller\">\n\t\t\t\n<pre>\n<code><div class=\"cm-line\">@Service<\/div><div class=\"cm-line\">public class BankService {<\/div><div class=\"cm-line\"><\/div><div class=\"cm-line\">    @Transactional<\/div><div class=\"cm-line\">    public void transferMoney(<\/div><div class=\"cm-line\">            Account from,<\/div><div class=\"cm-line\">            Account to,<\/div><div class=\"cm-line\">            double amount) {<\/div><div class=\"cm-line\"><\/div><div class=\"cm-line\">        from.withdraw(amount);<\/div><div class=\"cm-line\">        to.deposit(amount);<\/div><div class=\"cm-line\">    }<\/div><div class=\"cm-line\">}<\/div><\/code><\/pre>\n\t\t<\/div>\n\t<\/div>\n<\/div>\n\n\n<p class=\"wp-block-paragraph\">\u0410\u043a\u043e \u0432\u044a\u0437\u043d\u0438\u043a\u043d\u0435 \u043f\u043e\u0434\u0445\u043e\u0434\u044f\u0449\u043e Runtime Exception, Spring \u043f\u043e \u043f\u043e\u0434\u0440\u0430\u0437\u0431\u0438\u0440\u0430\u043d\u0435 \u0449\u0435 \u0438\u0437\u0432\u044a\u0440\u0448\u0438 Rollback \u043d\u0430 \u0442\u0440\u0430\u043d\u0437\u0430\u043a\u0446\u0438\u044f\u0442\u0430.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">\u0412\u0430\u0436\u043d\u043e: \u041f\u043e \u043f\u043e\u0434\u0440\u0430\u0437\u0431\u0438\u0440\u0430\u043d\u0435 Spring \u0438\u0437\u0432\u044a\u0440\u0448\u0432\u0430 Rollback \u043f\u0440\u0438 <code>RuntimeException<\/code> \u0431\u043e\u043b\u043e\u043d <code>Error<\/code>, \u043d\u043e \u043d\u0435 \u0438 \u043f\u0440\u0438 Checked Exceptions. \u0417\u0430 Checked Exceptions \u043c\u043e\u0436\u0435 \u0434\u0430 \u0441\u0435 \u0438\u0437\u043f\u043e\u043b\u0437\u0432\u0430 <code>rollbackFor<\/code>.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">6. \u0410\u043d\u043e\u0442\u0430\u0446\u0438\u0438 \u0437\u0430 Spring Boot<\/h2>\n\n\n\n<figure class=\"wp-block-table\"><table class=\"has-fixed-layout\"><tbody><tr><th>\u0410\u043d\u043e\u0442\u0430\u0446\u0438\u044f<\/th><th>\u0417\u043e\u0440\u0438\u043b\u0433\u043e<\/th><\/tr><tr><td><code>@EnableAutoConfiguration<\/code><\/td><td>\u0410\u043a\u0442\u0438\u0432\u0438\u0440\u0430 \u043c\u0435\u0445\u0430\u043d\u0438\u0437\u043c\u0430 \u0437\u0430 \u0430\u0432\u0442\u043e\u043c\u0430\u0442\u0438\u0447\u043d\u0430 \u043a\u043e\u043d\u0444\u0438\u0433\u0443\u0440\u0430\u0446\u0438\u044f \u043d\u0430 Spring Boot.<\/td><\/tr><tr><td><code>@SpringBootApplication<\/code><\/td><td>\u041a\u043e\u043c\u0431\u0438\u043d\u0438\u0440\u0430 <code>@Configuration<\/code>, <code>@EnableAutoConfiguration<\/code> \u0431\u043e\u043b\u043e\u043d <code>@ComponentScan<\/code>. \u0418\u0437\u043f\u043e\u043b\u0437\u0432\u0430 \u0441\u0435 \u043a\u0430\u0442\u043e \u043e\u0441\u043d\u043e\u0432\u043d\u0430 \u0430\u043d\u043e\u0442\u0430\u0446\u0438\u044f \u043d\u0430 Spring Boot \u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u044f\u0442\u0430.<\/td><\/tr><\/tbody><\/table><\/figure>\n\n\n\n<p class=\"wp-block-paragraph\">\u0416\u0438\u0448\u044d\u044d:<\/p>\n\n\n<div class=\"wp-block-code\">\n\t<div class=\"cm-editor\">\n\t\t<div class=\"cm-scroller\">\n\t\t\t\n<pre>\n<code><div class=\"cm-line\">@SpringBootApplication<\/div><div class=\"cm-line\">public class Application {<\/div><div class=\"cm-line\"><\/div><div class=\"cm-line\">    public static void main(String[] args) {<\/div><div class=\"cm-line\">        SpringApplication.run(<\/div><div class=\"cm-line\">            Application.class, args);<\/div><div class=\"cm-line\">    }<\/div><div class=\"cm-line\">}<\/div><\/code><\/pre>\n\t\t<\/div>\n\t<\/div>\n<\/div>\n\n\n<p class=\"wp-block-paragraph\"><code>@SpringBootApplication<\/code> \u043e\u0431\u0435\u0434\u0438\u043d\u044f\u0432\u0430 \u0442\u0440\u0438 \u043e\u0441\u043d\u043e\u0432\u043d\u0438 \u0444\u0443\u043d\u043a\u0446\u0438\u043e\u043d\u0430\u043b\u043d\u043e\u0441\u0442\u0438:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li><code>@Configuration<\/code> \u2013 \u043f\u043e\u0437\u0432\u043e\u043b\u044f\u0432\u0430 \u0434\u0435\u0444\u0438\u043d\u0438\u0440\u0430\u043d\u0435 \u043d\u0430 Bean \u043a\u043e\u043d\u0444\u0438\u0433\u0443\u0440\u0430\u0446\u0438\u044f.<\/li>\n\n\n\n<li><code>@EnableAutoConfiguration<\/code> \u2013 \u043a\u043e\u043d\u0444\u0438\u0433\u0443\u0440\u0438\u0440\u0430 \u0430\u0432\u0442\u043e\u043c\u0430\u0442\u0438\u0447\u043d\u043e \u043a\u043e\u043c\u043f\u043e\u043d\u0435\u043d\u0442\u0438 \u0441\u043f\u043e\u0440\u0435\u0434 \u043d\u0430\u043b\u0438\u0447\u043d\u0438\u0442\u0435 \u0437\u0430\u0432\u0438\u0441\u0438\u043c\u043e\u0441\u0442\u0438 \u0438 \u043d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0438.<\/li>\n\n\n\n<li><code>@ComponentScan<\/code> \u2013 \u0441\u043a\u0430\u043d\u0438\u0440\u0430 \u043f\u0430\u043a\u0435\u0442\u0438\u0442\u0435 \u0437\u0430 Spring \u043a\u043e\u043c\u043f\u043e\u043d\u0435\u043d\u0442\u0438 \u0438 \u0433\u0438 \u0440\u0435\u0433\u0438\u0441\u0442\u0440\u0438\u0440\u0430 \u043a\u0430\u0442\u043e Beans.<\/li>\n<\/ul>\n\n\n\n<h2 class=\"wp-block-heading\">\u0412\u0430\u0436\u043d\u043e \u0437\u0430 Java Developer Interview<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">\u0427\u0435\u0441\u0442\u043e \u0437\u0430\u0434\u0430\u0432\u0430\u043d\u0438 \u0432\u044a\u043f\u0440\u043e\u0441\u0438 \u043f\u043e \u0442\u0435\u043c\u0430\u0442\u0430:<\/p>\n\n\n\n<ol class=\"wp-block-list\">\n<li>\u041a\u0430\u043a\u0432\u0430 \u0435 \u0440\u0430\u0437\u043b\u0438\u043a\u0430\u0442\u0430 \u043c\u0435\u0436\u0434\u0443 <code>@Component<\/code>, <code>@Service<\/code> \u0431\u043e\u043b\u043e\u043d <code>@Repository<\/code>?\u0418 \u0442\u0440\u0438\u0442\u0435 \u0440\u0435\u0433\u0438\u0441\u0442\u0440\u0438\u0440\u0430\u0442 Spring-managed Beans. \u0420\u0430\u0437\u043b\u0438\u043a\u0430\u0442\u0430 \u0435 \u0432 \u043f\u0440\u0435\u0434\u043d\u0430\u0437\u043d\u0430\u0447\u0435\u043d\u0438\u0435\u0442\u043e \u0438\u043c: \u043e\u0431\u0449 \u043a\u043e\u043c\u043f\u043e\u043d\u0435\u043d\u0442, Business Logic \u0438 Data Access Layer. <code>@Repository<\/code> \u043e\u0441\u0438\u0433\u0443\u0440\u044f\u0432\u0430 \u0438 Exception Translation.<\/li>\n\n\n\n<li>\u041a\u0430\u043a\u0432\u0430 \u0435 \u0440\u0430\u0437\u043b\u0438\u043a\u0430\u0442\u0430 \u043c\u0435\u0436\u0434\u0443 <code>@Controller<\/code> \u0431\u043e\u043b\u043e\u043d <code>@RestController<\/code>?<code>@Controller<\/code> \u043e\u0431\u0438\u043a\u043d\u043e\u0432\u0435\u043d\u043e \u0432\u0440\u044a\u0449\u0430 View, \u0434\u043e\u043a\u0430\u0442\u043e <code>@RestController<\/code> \u0432\u0440\u044a\u0449\u0430 \u0434\u0438\u0440\u0435\u043a\u0442\u043d\u043e \u0434\u0430\u043d\u043d\u0438 \u0432 HTTP Response Body.<\/li>\n\n\n\n<li>\u041a\u0430\u043a\u0432\u0430 \u0435 \u0440\u0430\u0437\u043b\u0438\u043a\u0430\u0442\u0430 \u043c\u0435\u0436\u0434\u0443 <code>@Autowired<\/code>, <code>@Qualifier<\/code> \u0431\u043e\u043b\u043e\u043d <code>@Primary<\/code>?\n<ul class=\"wp-block-list\">\n<li><code>@Autowired<\/code> \u2013 \u0438\u043d\u0436\u0435\u043a\u0442\u0438\u0440\u0430 \u0437\u0430\u0432\u0438\u0441\u0438\u043c\u043e\u0441\u0442.<\/li>\n\n\n\n<li><code>@Qualifier<\/code> \u2013 \u0438\u0437\u0431\u0438\u0440\u0430 \u043a\u043e\u043d\u043a\u0440\u0435\u0442\u0435\u043d Bean.<\/li>\n\n\n\n<li><code>@Primary<\/code> \u2013 \u043e\u043f\u0440\u0435\u0434\u0435\u043b\u044f \u043f\u0440\u0435\u0434\u043f\u043e\u0447\u0438\u0442\u0430\u043d Bean \u043f\u0440\u0438 \u043d\u044f\u043a\u043e\u043b\u043a\u043e \u043a\u0430\u043d\u0434\u0438\u0434\u0430\u0442\u0430.<\/li>\n<\/ul>\n<\/li>\n\n\n\n<li>\u041a\u0430\u043a\u0432\u0430 \u0435 \u0440\u0430\u0437\u043b\u0438\u043a\u0430\u0442\u0430 \u043c\u0435\u0436\u0434\u0443 <code>@Bean<\/code> \u0431\u043e\u043b\u043e\u043d <code>@Component<\/code>?\n<ul class=\"wp-block-list\">\n<li><code>@Component<\/code> \u0441\u0435 \u043f\u043e\u0441\u0442\u0430\u0432\u044f \u0432\u044a\u0440\u0445\u0443 \u043a\u043b\u0430\u0441 \u0438 \u043f\u043e\u0437\u0432\u043e\u043b\u044f\u0432\u0430 \u0430\u0432\u0442\u043e\u043c\u0430\u0442\u0438\u0447\u043d\u043e\u0442\u043e \u043c\u0443 \u043e\u0442\u043a\u0440\u0438\u0432\u0430\u043d\u0435 \u0447\u0440\u0435\u0437 Component Scanning.<\/li>\n\n\n\n<li><code>@Bean<\/code> \u0441\u0435 \u043f\u043e\u0441\u0442\u0430\u0432\u044f \u0432\u044a\u0440\u0445\u0443 \u043c\u0435\u0442\u043e\u0434, \u043e\u0431\u0438\u043a\u043d\u043e\u0432\u0435\u043d\u043e \u0432 <code>@Configuration<\/code> \u043a\u043b\u0430\u0441, \u0438 \u0440\u0435\u0433\u0438\u0441\u0442\u0440\u0438\u0440\u0430 \u0432\u044a\u0440\u043d\u0430\u0442\u0438\u044f \u043e\u0442 \u043d\u0435\u0433\u043e \u043e\u0431\u0435\u043a\u0442.<\/li>\n<\/ul>\n<\/li>\n\n\n\n<li>\u041a\u0430\u043a\u0432\u043e \u043f\u0440\u0435\u0434\u0441\u0442\u0430\u0432\u043b\u044f\u0432\u0430 <code>@Transactional<\/code>?\u0410\u043d\u043e\u0442\u0430\u0446\u0438\u044f, \u043a\u043e\u044f\u0442\u043e \u043f\u043e\u0437\u0432\u043e\u043b\u044f\u0432\u0430 \u0443\u043f\u0440\u0430\u0432\u043b\u0435\u043d\u0438\u0435 \u043d\u0430 \u0442\u0440\u0430\u043d\u0437\u0430\u043a\u0446\u0438\u0438\u0442\u0435 \u0447\u0440\u0435\u0437 Spring Transaction Management.<\/li>\n\n\n\n<li>\u041a\u0430\u043a\u0432\u043e \u043f\u0440\u0430\u0432\u0438 <code>@SpringBootApplication<\/code>?\u0410\u043a\u0442\u0438\u0432\u0438\u0440\u0430 \u043e\u0441\u043d\u043e\u0432\u043d\u0438\u0442\u0435 \u043c\u0435\u0445\u0430\u043d\u0438\u0437\u043c\u0438 \u0437\u0430 \u043a\u043e\u043d\u0444\u0438\u0433\u0443\u0440\u0430\u0446\u0438\u044f, Auto-Configuration \u0438 Component Scanning.<\/li>\n<\/ol>\n\n\n\n<h2 class=\"wp-block-heading\">\u041e\u0441\u043d\u043e\u0432\u0435\u043d \u0438\u0437\u0432\u043e\u0434<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">Spring Annotations \u0437\u043d\u0430\u0447\u0438\u0442\u0435\u043b\u043d\u043e \u043d\u0430\u043c\u0430\u043b\u044f\u0432\u0430\u0442 \u043d\u0435\u043e\u0431\u0445\u043e\u0434\u0438\u043c\u043e\u0441\u0442\u0442\u0430 \u043e\u0442 \u0440\u044a\u0447\u043d\u0430 \u043a\u043e\u043d\u0444\u0438\u0433\u0443\u0440\u0430\u0446\u0438\u044f \u0438 \u043f\u043e\u0437\u0432\u043e\u043b\u044f\u0432\u0430\u0442 \u0438\u0437\u0433\u0440\u0430\u0436\u0434\u0430\u043d\u0435\u0442\u043e \u043d\u0430 \u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u044f \u0441 \u044f\u0441\u043d\u0430 \u0430\u0440\u0445\u0438\u0442\u0435\u043a\u0442\u0443\u0440\u0430 \u0438 \u0440\u0430\u0437\u0434\u0435\u043b\u0435\u043d\u0438\u0435 \u043d\u0430 \u043e\u0442\u0433\u043e\u0432\u043e\u0440\u043d\u043e\u0441\u0442\u0438\u0442\u0435.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">\u0417\u0430 Java Developer \u0435 \u043e\u0441\u043e\u0431\u0435\u043d\u043e \u0432\u0430\u0436\u043d\u043e \u0434\u0430 \u043f\u043e\u0437\u043d\u0430\u0432\u0430 <code>@Component<\/code>, <code>@Service<\/code>, <code>@Repository<\/code>, <code>@Autowired<\/code>, <code>@Qualifier<\/code>, <code>@Transactional<\/code>, <code>@RestController<\/code> \u0431\u043e\u043b\u043e\u043d <code>@SpringBootApplication<\/code>, \u0442\u044a\u0439 \u043a\u0430\u0442\u043e \u0442\u0435 \u0441\u0435 \u0438\u0437\u043f\u043e\u043b\u0437\u0432\u0430\u0442 \u043c\u043d\u043e\u0433\u043e \u0447\u0435\u0441\u0442\u043e \u0432 \u0440\u0435\u0430\u043b\u043d\u0438 Spring Boot \u043f\u0440\u043e\u0435\u043a\u0442\u0438 \u0438 \u043d\u0430 \u0442\u0435\u0445\u043d\u0438\u0447\u0435\u0441\u043a\u0438 \u0438\u043d\u0442\u0435\u0440\u0432\u044e\u0442\u0430.<\/p>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h1 class=\"wp-block-heading\">\u041e\u0431\u0445\u0432\u0430\u0442\u0438 \u043d\u0430 Spring Beans (Spring Bean Scopes)<\/h1>\n\n\n\n<p class=\"wp-block-paragraph\">\u0412 Spring Framework \u0432\u0441\u0435\u043a\u0438 Bean \u0438\u043c\u0430 \u043e\u043f\u0440\u0435\u0434\u0435\u043b\u0435\u043d Scope (\u043e\u0431\u0445\u0432\u0430\u0442), \u043a\u043e\u0439\u0442\u043e \u043e\u043f\u0440\u0435\u0434\u0435\u043b\u044f \u043d\u0435\u0433\u043e\u0432\u0438\u044f \u0436\u0438\u0437\u043d\u0435\u043d \u0446\u0438\u043a\u044a\u043b (Lifecycle) \u0438 \u043d\u0430\u0447\u0438\u043d\u0430, \u043f\u043e \u043a\u043e\u0439\u0442\u043e \u0435\u043a\u0437\u0435\u043c\u043f\u043b\u044f\u0440\u0438\u0442\u0435 \u043c\u0443 \u0441\u0435 \u0441\u044a\u0437\u0434\u0430\u0432\u0430\u0442 \u0438 \u0441\u043f\u043e\u0434\u0435\u043b\u044f\u0442 \u0432 \u0440\u0430\u043c\u043a\u0438\u0442\u0435 \u043d\u0430 Spring Container.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Spring \u043f\u0440\u0435\u0434\u043e\u0441\u0442\u0430\u0432\u044f \u0448\u0435\u0441\u0442 \u043e\u0441\u043d\u043e\u0432\u043d\u0438 Bean Scopes.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">1. \u0412\u0438\u0434\u043e\u0432\u0435 Spring Bean Scopes<\/h2>\n\n\n\n<h3 class=\"wp-block-heading\">1. Singleton (Default Scope)<\/h3>\n\n\n\n<p class=\"wp-block-paragraph\">\u041f\u043e \u043f\u043e\u0434\u0440\u0430\u0437\u0431\u0438\u0440\u0430\u043d\u0435<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Scope: \u0421\u044a\u0437\u0434\u0430\u0432\u0430 \u0441\u0435 \u0441\u0430\u043c\u043e \u0435\u0434\u0438\u043d \u0435\u043a\u0437\u0435\u043c\u043f\u043b\u044f\u0440 \u043d\u0430 Bean \u0437\u0430 \u0441\u044a\u043e\u0442\u0432\u0435\u0442\u043d\u0438\u044f Spring Container.<\/li>\n\n\n\n<li>\u0410\u043d\u043e\u0442\u0430\u0446\u0438\u044f: <code>@Scope(\"singleton\")<\/code><\/li>\n\n\n\n<li>\u0418\u0437\u043f\u043e\u043b\u0437\u0432\u0430\u043d\u0435: \u041f\u043e\u0434\u0445\u043e\u0434\u044f\u0449 \u0437\u0430 Service \u043a\u043b\u0430\u0441\u043e\u0432\u0435, Repository \u043a\u043b\u0430\u0441\u043e\u0432\u0435 \u0438 \u0434\u0440\u0443\u0433\u0438 \u043a\u043e\u043c\u043f\u043e\u043d\u0435\u043d\u0442\u0438, \u043a\u043e\u0438\u0442\u043e \u043c\u043e\u0433\u0430\u0442 \u0431\u0435\u0437\u043e\u043f\u0430\u0441\u043d\u043e \u0434\u0430 \u0441\u043f\u043e\u0434\u0435\u043b\u044f\u0442 \u0435\u0434\u0438\u043d \u0435\u043a\u0437\u0435\u043c\u043f\u043b\u044f\u0440.<\/li>\n<\/ul>\n\n\n\n<p class=\"wp-block-paragraph\">\u0410\u043a\u043e \u043d\u0435 \u0437\u0430\u0434\u0430\u0434\u0435\u043c \u0438\u0437\u0440\u0438\u0447\u043d\u043e Scope, Spring \u0438\u0437\u043f\u043e\u043b\u0437\u0432\u0430 <code>singleton<\/code>.<\/p>\n\n\n<div class=\"wp-block-code\">\n\t<div class=\"cm-editor\">\n\t\t<div class=\"cm-scroller\">\n\t\t\t\n<pre>\n<code><div class=\"cm-line\">@Component<\/div><div class=\"cm-line\">@Scope(&quot;singleton&quot;)<\/div><div class=\"cm-line\">public class UserService {<\/div><div class=\"cm-line\">    \/\/ One shared instance per Spring Container<\/div><div class=\"cm-line\">}<\/div><\/code><\/pre>\n\t\t<\/div>\n\t<\/div>\n<\/div>\n\n\n<p class=\"wp-block-paragraph\">\u0412\u0430\u0436\u043d\u043e: Singleton \u0432 Spring \u043d\u0435 \u043e\u0437\u043d\u0430\u0447\u0430\u0432\u0430 \u043a\u043b\u0430\u0441\u0438\u0447\u0435\u0441\u043a\u0438\u044f Singleton Design Pattern. \u0422\u0443\u043a \u0441\u0442\u0430\u0432\u0430 \u0432\u044a\u043f\u0440\u043e\u0441 \u0437\u0430 \u0435\u0434\u0438\u043d \u0435\u043a\u0437\u0435\u043c\u043f\u043b\u044f\u0440 \u043d\u0430 Bean \u0432 \u0440\u0430\u043c\u043a\u0438\u0442\u0435 \u043d\u0430 \u043a\u043e\u043d\u043a\u0440\u0435\u0442\u043d\u0438\u044f Spring Container, \u0430 \u043d\u0435 \u043d\u0435\u043f\u0440\u0435\u043c\u0435\u043d\u043d\u043e \u0435\u0434\u0438\u043d \u0435\u043a\u0437\u0435\u043c\u043f\u043b\u044f\u0440 \u0437\u0430 \u0446\u044f\u043b\u0430\u0442\u0430 JVM.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">2. Prototype<\/h3>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Scope: \u0421\u044a\u0437\u0434\u0430\u0432\u0430 \u0441\u0435 \u043d\u043e\u0432 \u0435\u043a\u0437\u0435\u043c\u043f\u043b\u044f\u0440 \u043d\u0430 Bean \u043f\u0440\u0438 \u0432\u0441\u044f\u043a\u043e \u043f\u043e\u0438\u0441\u043a\u0432\u0430\u043d\u0435 \u043e\u0442 Spring Container.<\/li>\n\n\n\n<li>\u0410\u043d\u043e\u0442\u0430\u0446\u0438\u044f: <code>@Scope(\"prototype\")<\/code><\/li>\n\n\n\n<li>\u0418\u0437\u043f\u043e\u043b\u0437\u0432\u0430\u043d\u0435: \u041a\u043e\u0433\u0430\u0442\u043e \u0441\u0430 \u043d\u0435\u043e\u0431\u0445\u043e\u0434\u0438\u043c\u0438 \u043d\u0435\u0437\u0430\u0432\u0438\u0441\u0438\u043c\u0438 \u0435\u043a\u0437\u0435\u043c\u043f\u043b\u044f\u0440\u0438 \u043d\u0430 \u0435\u0434\u0438\u043d \u0438 \u0441\u044a\u0449 Bean.<\/li>\n<\/ul>\n\n\n<div class=\"wp-block-code\">\n\t<div class=\"cm-editor\">\n\t\t<div class=\"cm-scroller\">\n\t\t\t\n<pre>\n<code><div class=\"cm-line\">@Component<\/div><div class=\"cm-line\">@Scope(&quot;prototype&quot;)<\/div><div class=\"cm-line\">public class ReportGenerator {<\/div><div class=\"cm-line\"><\/div><div class=\"cm-line\">    public ReportGenerator() {<\/div><div class=\"cm-line\">        System.out.println(&quot;New ReportGenerator instance&quot;);<\/div><div class=\"cm-line\">    }<\/div><div class=\"cm-line\">}<\/div><\/code><\/pre>\n\t\t<\/div>\n\t<\/div>\n<\/div>\n\n\n<p class=\"wp-block-paragraph\">\u041f\u0440\u0438 \u0432\u0441\u044f\u043a\u043e \u0438\u0437\u0432\u0438\u043a\u0432\u0430\u043d\u0435 \u043d\u0430:<\/p>\n\n\n<div class=\"wp-block-code\">\n\t<div class=\"cm-editor\">\n\t\t<div class=\"cm-scroller\">\n\t\t\t\n<pre>\n<code><div class=\"cm-line\">context.getBean(ReportGenerator.class);<\/div><\/code><\/pre>\n\t\t<\/div>\n\t<\/div>\n<\/div>\n\n\n<p class=\"wp-block-paragraph\">Spring \u0441\u044a\u0437\u0434\u0430\u0432\u0430 \u043d\u043e\u0432 \u0435\u043a\u0437\u0435\u043c\u043f\u043b\u044f\u0440.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">\u0412\u0430\u0436\u043d\u043e: Spring \u0441\u044a\u0437\u0434\u0430\u0432\u0430 \u0438 \u0438\u043d\u0438\u0446\u0438\u0430\u043b\u0438\u0437\u0438\u0440\u0430 Prototype Bean, \u043d\u043e \u043d\u0435 \u0443\u043f\u0440\u0430\u0432\u043b\u044f\u0432\u0430 \u043f\u044a\u043b\u043d\u0438\u044f \u043c\u0443 Lifecycle \u0441\u043b\u0435\u0434 \u043f\u0440\u0435\u0434\u043e\u0441\u0442\u0430\u0432\u044f\u043d\u0435\u0442\u043e \u043c\u0443 \u043d\u0430 \u043a\u043b\u0438\u0435\u043d\u0442\u0430. \u041f\u043e-\u0441\u043f\u0435\u0446\u0438\u0430\u043b\u043d\u043e, \u0441\u0442\u0430\u043d\u0434\u0430\u0440\u0442\u043d\u0438\u0442\u0435 destruction callbacks \u043d\u0435 \u0441\u0435 \u0438\u0437\u043f\u044a\u043b\u043d\u044f\u0432\u0430\u0442 \u0430\u0432\u0442\u043e\u043c\u0430\u0442\u0438\u0447\u043d\u043e.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">3. Request (Web Application Scope)<\/h3>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Scope: \u0421\u044a\u0437\u0434\u0430\u0432\u0430 \u0441\u0435 \u043d\u043e\u0432 \u0435\u043a\u0437\u0435\u043c\u043f\u043b\u044f\u0440 \u0437\u0430 \u0432\u0441\u044f\u043a\u0430 HTTP \u0437\u0430\u044f\u0432\u043a\u0430.<\/li>\n\n\n\n<li>\u0410\u043d\u043e\u0442\u0430\u0446\u0438\u044f: <code>@Scope(\"request\")<\/code><\/li>\n\n\n\n<li>\u0418\u0437\u043f\u043e\u043b\u0437\u0432\u0430\u043d\u0435: \u0417\u0430 \u0434\u0430\u043d\u043d\u0438, \u043a\u043e\u0438\u0442\u043e \u0441\u0430 \u0441\u043f\u0435\u0446\u0438\u0444\u0438\u0447\u043d\u0438 \u0437\u0430 \u043a\u043e\u043d\u043a\u0440\u0435\u0442\u043d\u0430 HTTP \u0437\u0430\u044f\u0432\u043a\u0430.<\/li>\n<\/ul>\n\n\n<div class=\"wp-block-code\">\n\t<div class=\"cm-editor\">\n\t\t<div class=\"cm-scroller\">\n\t\t\t\n<pre>\n<code><div class=\"cm-line\">@Component<\/div><div class=\"cm-line\">@RequestScope<\/div><div class=\"cm-line\">public class RequestData {<\/div><div class=\"cm-line\"><\/div><div class=\"cm-line\">    private String requestId;<\/div><div class=\"cm-line\"><\/div><div class=\"cm-line\">    public String getRequestId() {<\/div><div class=\"cm-line\">        return requestId;<\/div><div class=\"cm-line\">    }<\/div><div class=\"cm-line\"><\/div><div class=\"cm-line\">    public void setRequestId(String requestId) {<\/div><div class=\"cm-line\">        this.requestId = requestId;<\/div><div class=\"cm-line\">    }<\/div><div class=\"cm-line\">}<\/div><\/code><\/pre>\n\t\t<\/div>\n\t<\/div>\n<\/div>\n\n\n<p class=\"wp-block-paragraph\"><code>@RequestScope<\/code> \u0435 \u0441\u043f\u0435\u0446\u0438\u0430\u043b\u0438\u0437\u0438\u0440\u0430\u043d\u0430 \u0430\u043d\u043e\u0442\u0430\u0446\u0438\u044f, \u0435\u043a\u0432\u0438\u0432\u0430\u043b\u0435\u043d\u0442\u043d\u0430 \u043d\u0430 <code>@Scope(\"request\")<\/code> \u0441 \u043f\u043e\u0434\u0445\u043e\u0434\u044f\u0449 Proxy Mode \u043f\u043e \u043f\u043e\u0434\u0440\u0430\u0437\u0431\u0438\u0440\u0430\u043d\u0435.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">4. Session (Web Application Scope)<\/h3>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Scope: \u0421\u044a\u0437\u0434\u0430\u0432\u0430 \u0441\u0435 \u0435\u0434\u0438\u043d \u0435\u043a\u0437\u0435\u043c\u043f\u043b\u044f\u0440 \u0437\u0430 \u0432\u0441\u044f\u043a\u0430 HTTP Session.<\/li>\n\n\n\n<li>\u0410\u043d\u043e\u0442\u0430\u0446\u0438\u044f: <code>@Scope(\"session\")<\/code><\/li>\n\n\n\n<li>\u0418\u0437\u043f\u043e\u043b\u0437\u0432\u0430\u043d\u0435: \u0417\u0430 \u0434\u0430\u043d\u043d\u0438, \u043a\u043e\u0438\u0442\u043e \u0442\u0440\u044f\u0431\u0432\u0430 \u0434\u0430 \u0441\u0435 \u0437\u0430\u043f\u0430\u0437\u0432\u0430\u0442 \u043f\u043e \u0432\u0440\u0435\u043c\u0435 \u043d\u0430 \u043f\u043e\u0442\u0440\u0435\u0431\u0438\u0442\u0435\u043b\u0441\u043a\u0430\u0442\u0430 \u0441\u0435\u0441\u0438\u044f.<\/li>\n<\/ul>\n\n\n<div class=\"wp-block-code\">\n\t<div class=\"cm-editor\">\n\t\t<div class=\"cm-scroller\">\n\t\t\t\n<pre>\n<code><div class=\"cm-line\">@Component<\/div><div class=\"cm-line\">@SessionScope<\/div><div class=\"cm-line\">public class UserSession {<\/div><div class=\"cm-line\"><\/div><div class=\"cm-line\">    private String username;<\/div><div class=\"cm-line\"><\/div><div class=\"cm-line\">    public String getUsername() {<\/div><div class=\"cm-line\">        return username;<\/div><div class=\"cm-line\">    }<\/div><div class=\"cm-line\"><\/div><div class=\"cm-line\">    public void setUsername(String username) {<\/div><div class=\"cm-line\">        this.username = username;<\/div><div class=\"cm-line\">    }<\/div><div class=\"cm-line\">}<\/div><\/code><\/pre>\n\t\t<\/div>\n\t<\/div>\n<\/div>\n\n\n<p class=\"wp-block-paragraph\"><code>@SessionScope<\/code> \u0435 \u0441\u043f\u0435\u0446\u0438\u0430\u043b\u0438\u0437\u0438\u0440\u0430\u043d\u0430 \u0430\u043d\u043e\u0442\u0430\u0446\u0438\u044f \u0437\u0430 Session-scoped Beans.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">5. Application (Web Application Scope)<\/h3>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Scope: \u0415\u0434\u0438\u043d \u0435\u043a\u0437\u0435\u043c\u043f\u043b\u044f\u0440 \u0437\u0430 \u0446\u0435\u043b\u0438\u044f ServletContext \u043d\u0430 Web Application.<\/li>\n\n\n\n<li>\u0410\u043d\u043e\u0442\u0430\u0446\u0438\u044f: <code>@Scope(\"application\")<\/code><\/li>\n\n\n\n<li>\u0418\u0437\u043f\u043e\u043b\u0437\u0432\u0430\u043d\u0435: \u0417\u0430 \u0440\u0435\u0441\u0443\u0440\u0441\u0438 \u0438 \u0434\u0430\u043d\u043d\u0438, \u043a\u043e\u0438\u0442\u043e \u0442\u0440\u044f\u0431\u0432\u0430 \u0434\u0430 \u0431\u044a\u0434\u0430\u0442 \u0441\u043f\u043e\u0434\u0435\u043b\u044f\u043d\u0438 \u043e\u0442 \u0432\u0441\u0438\u0447\u043a\u0438 HTTP \u0437\u0430\u044f\u0432\u043a\u0438 \u0432 \u0440\u0430\u043c\u043a\u0438\u0442\u0435 \u043d\u0430 \u0435\u0434\u043d\u043e Web Application.<\/li>\n<\/ul>\n\n\n<div class=\"wp-block-code\">\n\t<div class=\"cm-editor\">\n\t\t<div class=\"cm-scroller\">\n\t\t\t\n<pre>\n<code><div class=\"cm-line\">@Component<\/div><div class=\"cm-line\">@ApplicationScope<\/div><div class=\"cm-line\">public class ApplicationSettings {<\/div><div class=\"cm-line\"><\/div><div class=\"cm-line\">    private String applicationName = &quot;My Application&quot;;<\/div><div class=\"cm-line\"><\/div><div class=\"cm-line\">    public String getApplicationName() {<\/div><div class=\"cm-line\">        return applicationName;<\/div><div class=\"cm-line\">    }<\/div><div class=\"cm-line\">}<\/div><\/code><\/pre>\n\t\t<\/div>\n\t<\/div>\n<\/div>\n\n\n<p class=\"wp-block-paragraph\"><code>@ApplicationScope<\/code> \u0435 \u0441\u043f\u0435\u0446\u0438\u0430\u043b\u0438\u0437\u0438\u0440\u0430\u043d\u0430 \u0430\u043d\u043e\u0442\u0430\u0446\u0438\u044f \u0437\u0430 Application-scoped Beans.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">\u0420\u0430\u0437\u043b\u0438\u043a\u0430 \u043c\u0435\u0436\u0434\u0443 Singleton \u0438 Application:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li><code>singleton<\/code> \u2013 \u0435\u0434\u0438\u043d \u0435\u043a\u0437\u0435\u043c\u043f\u043b\u044f\u0440 \u0432 \u0440\u0430\u043c\u043a\u0438\u0442\u0435 \u043d\u0430 Spring Container.<\/li>\n\n\n\n<li><code>application<\/code> \u2013 \u0435\u0434\u0438\u043d \u0435\u043a\u0437\u0435\u043c\u043f\u043b\u044f\u0440 \u0432 \u0440\u0430\u043c\u043a\u0438\u0442\u0435 \u043d\u0430 ServletContext.<\/li>\n<\/ul>\n\n\n\n<p class=\"wp-block-paragraph\">\u0412 \u0442\u0438\u043f\u0438\u0447\u043d\u043e Spring Boot Web Application \u0442\u0435\u0437\u0438 \u0434\u0432\u0430 Scope \u0447\u0435\u0441\u0442\u043e \u0438\u0437\u0433\u043b\u0435\u0436\u0434\u0430\u0442 \u0435\u0434\u043d\u0430\u043a\u0432\u043e, \u043d\u043e \u0438\u043c\u0430\u0442 \u0440\u0430\u0437\u043b\u0438\u0447\u043d\u0430 \u0441\u0435\u043c\u0430\u043d\u0442\u0438\u043a\u0430.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">6. WebSocket<\/h3>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Scope: \u0421\u044a\u0437\u0434\u0430\u0432\u0430 \u0441\u0435 \u043d\u043e\u0432 \u0435\u043a\u0437\u0435\u043c\u043f\u043b\u044f\u0440 \u0437\u0430 \u0432\u0441\u044f\u043a\u0430 WebSocket Session.<\/li>\n\n\n\n<li>\u0410\u043d\u043e\u0442\u0430\u0446\u0438\u044f: <code>@Scope(\"websocket\")<\/code><\/li>\n\n\n\n<li>\u0418\u0437\u043f\u043e\u043b\u0437\u0432\u0430\u043d\u0435: \u0417\u0430 \u0434\u0430\u043d\u043d\u0438 \u0438 \u043a\u043e\u043c\u043f\u043e\u043d\u0435\u043d\u0442\u0438, \u0441\u043f\u0435\u0446\u0438\u0444\u0438\u0447\u043d\u0438 \u0437\u0430 \u043a\u043e\u043d\u043a\u0440\u0435\u0442\u043d\u0430 WebSocket \u0432\u0440\u044a\u0437\u043a\u0430.<\/li>\n<\/ul>\n\n\n<div class=\"wp-block-code\">\n\t<div class=\"cm-editor\">\n\t\t<div class=\"cm-scroller\">\n\t\t\t\n<pre>\n<code><div class=\"cm-line\">@Component<\/div><div class=\"cm-line\">@Scope(&quot;websocket&quot;)<\/div><div class=\"cm-line\">public class WebSocketSessionData {<\/div><div class=\"cm-line\"><\/div><div class=\"cm-line\">    private String username;<\/div><div class=\"cm-line\"><\/div><div class=\"cm-line\">    public String getUsername() {<\/div><div class=\"cm-line\">        return username;<\/div><div class=\"cm-line\">    }<\/div><div class=\"cm-line\"><\/div><div class=\"cm-line\">    public void setUsername(String username) {<\/div><div class=\"cm-line\">        this.username = username;<\/div><div class=\"cm-line\">    }<\/div><div class=\"cm-line\">}<\/div><\/code><\/pre>\n\t\t<\/div>\n\t<\/div>\n<\/div>\n\n\n<p class=\"wp-block-paragraph\">\u0422\u043e\u0437\u0438 Scope \u0435 \u043f\u043e\u043b\u0435\u0437\u0435\u043d \u043f\u0440\u0438 \u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u044f, \u043a\u043e\u0438\u0442\u043e \u0438\u0437\u043f\u043e\u043b\u0437\u0432\u0430\u0442 WebSocket \u0437\u0430 \u0434\u0432\u0443\u043f\u043e\u0441\u043e\u0447\u043d\u0430 \u043a\u043e\u043c\u0443\u043d\u0438\u043a\u0430\u0446\u0438\u044f \u0432 \u0440\u0435\u0430\u043b\u043d\u043e \u0432\u0440\u0435\u043c\u0435.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">2. \u0421\u0440\u0430\u0432\u043d\u0435\u043d\u0438\u0435 \u043d\u0430 Spring Bean Scopes<\/h2>\n\n\n\n<figure class=\"wp-block-table\"><table class=\"has-fixed-layout\"><tbody><tr><th>Scope<\/th><th>\u041a\u043e\u0433\u0430 \u0441\u0435 \u0441\u044a\u0437\u0434\u0430\u0432\u0430 \u043d\u043e\u0432 \u0435\u043a\u0437\u0435\u043c\u043f\u043b\u044f\u0440?<\/th><th>\u041e\u0431\u043b\u0430\u0441\u0442 \u043d\u0430 \u0441\u043f\u043e\u0434\u0435\u043b\u044f\u043d\u0435<\/th><\/tr><tr><td><code>singleton<\/code><\/td><td>\u0412\u0435\u0434\u043d\u044a\u0436 \u0437\u0430 Spring Container<\/td><td>Spring Container<\/td><\/tr><tr><td><code>prototype<\/code><\/td><td>\u041f\u0440\u0438 \u0432\u0441\u044f\u043a\u043e \u043f\u043e\u0438\u0441\u043a\u0432\u0430\u043d\u0435 \u043e\u0442 Container<\/td><td>\u041d\u0435\u0437\u0430\u0432\u0438\u0441\u0438\u043c\u0438 \u0435\u043a\u0437\u0435\u043c\u043f\u043b\u044f\u0440\u0438<\/td><\/tr><tr><td><code>request<\/code><\/td><td>\u0417\u0430 \u0432\u0441\u044f\u043a\u0430 HTTP \u0437\u0430\u044f\u0432\u043a\u0430<\/td><td>\u0415\u0434\u043d\u0430 HTTP \u0437\u0430\u044f\u0432\u043a\u0430<\/td><\/tr><tr><td><code>session<\/code><\/td><td>\u0417\u0430 \u0432\u0441\u044f\u043a\u0430 HTTP Session<\/td><td>\u0415\u0434\u043d\u0430 \u043f\u043e\u0442\u0440\u0435\u0431\u0438\u0442\u0435\u043b\u0441\u043a\u0430 \u0441\u0435\u0441\u0438\u044f<\/td><\/tr><tr><td><code>application<\/code><\/td><td>\u0417\u0430 \u0432\u0441\u0435\u043a\u0438 ServletContext<\/td><td>\u0426\u044f\u043b\u043e\u0442\u043e Web Application<\/td><\/tr><tr><td><code>websocket<\/code><\/td><td>\u0417\u0430 \u0432\u0441\u044f\u043a\u0430 WebSocket Session<\/td><td>\u0415\u0434\u043d\u0430 WebSocket \u0441\u0435\u0441\u0438\u044f<\/td><\/tr><\/tbody><\/table><\/figure>\n\n\n\n<h2 class=\"wp-block-heading\">3. \u0412\u0430\u0436\u043d\u043e \u0443\u0442\u043e\u0447\u043d\u0435\u043d\u0438\u0435: Singleton Bean \u0438 Prototype Bean<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">\u041a\u043e\u0433\u0430\u0442\u043e Prototype Bean \u0431\u044a\u0434\u0435 \u0438\u043d\u0436\u0435\u043a\u0442\u0438\u0440\u0430\u043d \u0434\u0438\u0440\u0435\u043a\u0442\u043d\u043e \u0432 Singleton Bean \u0447\u0440\u0435\u0437 Constructor Injection, \u0442\u043e\u0439 \u043e\u0431\u0438\u043a\u043d\u043e\u0432\u0435\u043d\u043e \u0441\u0435 \u0441\u044a\u0437\u0434\u0430\u0432\u0430 \u0441\u0430\u043c\u043e \u0432\u0435\u0434\u043d\u044a\u0436 \u2013 \u043f\u0440\u0438 \u0441\u044a\u0437\u0434\u0430\u0432\u0430\u043d\u0435\u0442\u043e \u043d\u0430 Singleton Bean.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">\u0416\u0438\u0448\u044d\u044d:<\/p>\n\n\n<div class=\"wp-block-code\">\n\t<div class=\"cm-editor\">\n\t\t<div class=\"cm-scroller\">\n\t\t\t\n<pre>\n<code><div class=\"cm-line\">@Component<\/div><div class=\"cm-line\">@Scope(&quot;prototype&quot;)<\/div><div class=\"cm-line\">public class TaskProcessor {<\/div><div class=\"cm-line\">}<\/div><\/code><\/pre>\n\t\t<\/div>\n\t<\/div>\n<\/div>\n\n<div class=\"wp-block-code\">\n\t<div class=\"cm-editor\">\n\t\t<div class=\"cm-scroller\">\n\t\t\t\n<pre>\n<code><div class=\"cm-line\">@Service<\/div><div class=\"cm-line\">public class TaskService {<\/div><div class=\"cm-line\"><\/div><div class=\"cm-line\">    private final TaskProcessor processor;<\/div><div class=\"cm-line\"><\/div><div class=\"cm-line\">    public TaskService(TaskProcessor processor) {<\/div><div class=\"cm-line\">        this.processor = processor;<\/div><div class=\"cm-line\">    }<\/div><div class=\"cm-line\">}<\/div><\/code><\/pre>\n\t\t<\/div>\n\t<\/div>\n<\/div>\n\n\n<p class=\"wp-block-paragraph\">\u0412 \u0442\u043e\u0437\u0438 \u0441\u043b\u0443\u0447\u0430\u0439 <code>TaskService<\/code> \u0449\u0435 \u0438\u0437\u043f\u043e\u043b\u0437\u0432\u0430 \u0435\u0434\u0438\u043d \u0438 \u0441\u044a\u0449 \u0438\u043d\u0436\u0435\u043a\u0442\u0438\u0440\u0430\u043d <code>TaskProcessor<\/code> \u043f\u0440\u0435\u0437 \u0446\u0435\u043b\u0438\u044f \u0441\u0438 Lifecycle.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">\u0410\u043a\u043e \u0435 \u043d\u0435\u043e\u0431\u0445\u043e\u0434\u0438\u043c\u043e \u0434\u0430 \u043f\u043e\u043b\u0443\u0447\u0430\u0432\u0430\u043c\u0435 \u043d\u043e\u0432 Prototype Bean \u043f\u0440\u0438 \u0432\u0441\u044f\u043a\u043e \u0438\u0437\u0432\u0438\u043a\u0432\u0430\u043d\u0435, \u043c\u043e\u0436\u0435\u043c \u0434\u0430 \u0438\u0437\u043f\u043e\u043b\u0437\u0432\u0430\u043c\u0435 <code>ObjectProvider<\/code>:<\/p>\n\n\n<div class=\"wp-block-code\">\n\t<div class=\"cm-editor\">\n\t\t<div class=\"cm-scroller\">\n\t\t\t\n<pre>\n<code><div class=\"cm-line\">@Service<\/div><div class=\"cm-line\">public class TaskService {<\/div><div class=\"cm-line\"><\/div><div class=\"cm-line\">    private final ObjectProvider&lt;TaskProcessor&gt; provider;<\/div><div class=\"cm-line\"><\/div><div class=\"cm-line\">    public TaskService(<\/div><div class=\"cm-line\">            ObjectProvider&lt;TaskProcessor&gt; provider) {<\/div><div class=\"cm-line\">        this.provider = provider;<\/div><div class=\"cm-line\">    }<\/div><div class=\"cm-line\"><\/div><div class=\"cm-line\">    public void process() {<\/div><div class=\"cm-line\"><\/div><div class=\"cm-line\">        TaskProcessor processor =<\/div><div class=\"cm-line\">                provider.getObject();<\/div><div class=\"cm-line\"><\/div><div class=\"cm-line\">        \/\/ Process task<\/div><div class=\"cm-line\">    }<\/div><div class=\"cm-line\">}<\/div><\/code><\/pre>\n\t\t<\/div>\n\t<\/div>\n<\/div>\n\n\n<p class=\"wp-block-paragraph\">\u0412\u0441\u044f\u043a\u043e \u0438\u0437\u0432\u0438\u043a\u0432\u0430\u043d\u0435 \u043d\u0430 <code>provider.getObject()<\/code> \u0441\u044a\u0437\u0434\u0430\u0432\u0430 \u043d\u043e\u0432 Prototype Bean.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">\u0412\u0430\u0436\u043d\u043e \u0437\u0430 Java Developer Interview<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">\u0427\u0435\u0441\u0442\u043e \u0437\u0430\u0434\u0430\u0432\u0430\u043d\u0438 \u0432\u044a\u043f\u0440\u043e\u0441\u0438:<\/p>\n\n\n\n<ol class=\"wp-block-list\">\n<li>\u041a\u043e\u0439 \u0435 Default Scope \u043d\u0430 Spring Bean?<code>singleton<\/code> \u2013 \u0435\u0434\u0438\u043d \u0435\u043a\u0437\u0435\u043c\u043f\u043b\u044f\u0440 \u0437\u0430 Spring Container.<\/li>\n\n\n\n<li>\u041a\u0430\u043a\u0432\u0430 \u0435 \u0440\u0430\u0437\u043b\u0438\u043a\u0430\u0442\u0430 \u043c\u0435\u0436\u0434\u0443 Singleton \u0438 Prototype?Singleton \u0438\u0437\u043f\u043e\u043b\u0437\u0432\u0430 \u0435\u0434\u0438\u043d \u0441\u043f\u043e\u0434\u0435\u043b\u0435\u043d \u0435\u043a\u0437\u0435\u043c\u043f\u043b\u044f\u0440, \u0434\u043e\u043a\u0430\u0442\u043e Prototype \u0441\u044a\u0437\u0434\u0430\u0432\u0430 \u043d\u043e\u0432 \u0435\u043a\u0437\u0435\u043c\u043f\u043b\u044f\u0440 \u043f\u0440\u0438 \u0432\u0441\u044f\u043a\u043e \u043f\u043e\u0438\u0441\u043a\u0432\u0430\u043d\u0435 \u043e\u0442 Container.<\/li>\n\n\n\n<li>\u041a\u0430\u043a\u0432\u0430 \u0435 \u0440\u0430\u0437\u043b\u0438\u043a\u0430\u0442\u0430 \u043c\u0435\u0436\u0434\u0443 Singleton Design Pattern \u0438 Spring Singleton Scope?Spring Singleton \u0433\u0430\u0440\u0430\u043d\u0442\u0438\u0440\u0430 \u0435\u0434\u0438\u043d \u0435\u043a\u0437\u0435\u043c\u043f\u043b\u044f\u0440 \u0437\u0430 \u043a\u043e\u043d\u043a\u0440\u0435\u0442\u043d\u0438\u044f Spring Container, \u0434\u043e\u043a\u0430\u0442\u043e \u043a\u043b\u0430\u0441\u0438\u0447\u0435\u0441\u043a\u0438\u044f\u0442 Singleton Design Pattern \u0446\u0435\u043b\u0438 \u0435\u0434\u0438\u043d \u0435\u043a\u0437\u0435\u043c\u043f\u043b\u044f\u0440 \u0437\u0430 \u0441\u044a\u043e\u0442\u0432\u0435\u0442\u043d\u0438\u044f Class \u0438 \u043d\u0435\u0433\u043e\u0432\u0438\u044f ClassLoader.<\/li>\n\n\n\n<li>\u041a\u0430\u043a\u0432\u043e \u0441\u0435 \u0441\u043b\u0443\u0447\u0432\u0430, \u043a\u043e\u0433\u0430\u0442\u043e Prototype Bean \u0431\u044a\u0434\u0435 \u0438\u043d\u0436\u0435\u043a\u0442\u0438\u0440\u0430\u043d \u0432 Singleton Bean?\u041f\u043e \u043f\u043e\u0434\u0440\u0430\u0437\u0431\u0438\u0440\u0430\u043d\u0435 \u0441\u0435 \u0438\u043d\u0436\u0435\u043a\u0442\u0438\u0440\u0430 \u0435\u0434\u0438\u043d \u0435\u043a\u0437\u0435\u043c\u043f\u043b\u044f\u0440, \u043a\u043e\u0439\u0442\u043e \u0441\u0435 \u0438\u0437\u043f\u043e\u043b\u0437\u0432\u0430 \u043e\u0442 Singleton Bean \u043f\u0440\u0435\u0437 \u0446\u0435\u043b\u0438\u044f \u043c\u0443 Lifecycle.<\/li>\n\n\n\n<li>\u041a\u043e\u0438 Bean Scopes \u0441\u0430 \u0441\u043f\u0435\u0446\u0438\u0444\u0438\u0447\u043d\u0438 \u0437\u0430 Web Applications?<code>request<\/code>, <code>session<\/code>, <code>application<\/code> \u0431\u043e\u043b\u043e\u043d <code>websocket<\/code>.<\/li>\n\n\n\n<li>\u041a\u043e\u0439 \u0443\u043f\u0440\u0430\u0432\u043b\u044f\u0432\u0430 \u0443\u043d\u0438\u0449\u043e\u0436\u0430\u0432\u0430\u043d\u0435\u0442\u043e \u043d\u0430 Prototype Beans?\u041a\u043b\u0438\u0435\u043d\u0442\u0441\u043a\u0438\u044f\u0442 \u043a\u043e\u0434 \u0435 \u043e\u0442\u0433\u043e\u0432\u043e\u0440\u0435\u043d \u0437\u0430 \u043e\u0441\u0432\u043e\u0431\u043e\u0436\u0434\u0430\u0432\u0430\u043d\u0435\u0442\u043e \u043d\u0430 \u0440\u0435\u0441\u0443\u0440\u0441\u0438\u0442\u0435 \u0438 \u0438\u0437\u043f\u044a\u043b\u043d\u0435\u043d\u0438\u0435\u0442\u043e \u043d\u0430 \u043d\u0435\u043e\u0431\u0445\u043e\u0434\u0438\u043c\u0430\u0442\u0430 cleanup \u043b\u043e\u0433\u0438\u043a\u0430 \u0441\u043b\u0435\u0434 \u043f\u043e\u043b\u0443\u0447\u0430\u0432\u0430\u043d\u0435\u0442\u043e \u043d\u0430 Prototype Bean.<\/li>\n<\/ol>\n\n\n\n<h2 class=\"wp-block-heading\">\u041e\u0441\u043d\u043e\u0432\u0435\u043d \u0438\u0437\u0432\u043e\u0434<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">\u041d\u0430\u0439-\u0447\u0435\u0441\u0442\u043e \u0438\u0437\u043f\u043e\u043b\u0437\u0432\u0430\u043d\u0438\u0442\u0435 Spring Bean Scopes \u0441\u0430 <code>singleton<\/code> \u0431\u043e\u043b\u043e\u043d <code>prototype<\/code>. \u041e\u0441\u0442\u0430\u043d\u0430\u043b\u0438\u0442\u0435 \u0447\u0435\u0442\u0438\u0440\u0438 \u2013 <code>request<\/code>, <code>session<\/code>, <code>application<\/code> \u0431\u043e\u043b\u043e\u043d <code>websocket<\/code> \u2013 \u043f\u0440\u0435\u0434\u043e\u0441\u0442\u0430\u0432\u044f\u0442 \u0434\u043e\u043f\u044a\u043b\u043d\u0438\u0442\u0435\u043b\u043d\u0438 \u0432\u044a\u0437\u043c\u043e\u0436\u043d\u043e\u0441\u0442\u0438 \u0437\u0430 \u0443\u043f\u0440\u0430\u0432\u043b\u0435\u043d\u0438\u0435 \u043d\u0430 \u043e\u0431\u0435\u043a\u0442\u0438 \u0432 Web Applications.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">\u0417\u0430 Java Developer \u0435 \u043e\u0441\u043e\u0431\u0435\u043d\u043e \u0432\u0430\u0436\u043d\u043e \u0434\u0430 \u0440\u0430\u0437\u0431\u0438\u0440\u0430 \u0440\u0430\u0437\u043b\u0438\u043a\u0430\u0442\u0430 \u043c\u0435\u0436\u0434\u0443 Bean Scope \u0438 Object Lifecycle, \u043a\u0430\u043a\u0442\u043e \u0438 \u0432\u0437\u0430\u0438\u043c\u043e\u0434\u0435\u0439\u0441\u0442\u0432\u0438\u0435\u0442\u043e \u043c\u0435\u0436\u0434\u0443 Singleton \u0438 Prototype Beans.<\/p>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h1 class=\"wp-block-heading\">\u041d\u043e\u0440\u043c\u0430\u043b\u0438\u0437\u0430\u0446\u0438\u044f \u043d\u0430 SQL \u0431\u0430\u0437\u0438 \u0434\u0430\u043d\u043d\u0438 (SQL Normalization)<\/h1>\n\n\n\n<h2 class=\"wp-block-heading\">1. \u041a\u0430\u043a\u0432\u043e \u043f\u0440\u0435\u0434\u0441\u0442\u0430\u0432\u043b\u044f\u0432\u0430 \u043d\u043e\u0440\u043c\u0430\u043b\u0438\u0437\u0430\u0446\u0438\u044f\u0442\u0430 (Normalization)?<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">\u041d\u043e\u0440\u043c\u0430\u043b\u0438\u0437\u0430\u0446\u0438\u044f\u0442\u0430 (Normalization) \u0435 \u043f\u0440\u043e\u0446\u0435\u0441 \u043d\u0430 \u043e\u0440\u0433\u0430\u043d\u0438\u0437\u0438\u0440\u0430\u043d\u0435 \u043d\u0430 \u0434\u0430\u043d\u043d\u0438\u0442\u0435 \u0432 \u0440\u0435\u043b\u0430\u0446\u0438\u043e\u043d\u043d\u0430 \u0431\u0430\u0437\u0430 \u0434\u0430\u043d\u043d\u0438 (Relational Database), \u0447\u0438\u044f\u0442\u043e \u043e\u0441\u043d\u043e\u0432\u043d\u0430 \u0446\u0435\u043b \u0435 \u0434\u0430 \u043d\u0430\u043c\u0430\u043b\u0438 \u0438\u0437\u043b\u0438\u0448\u043d\u043e\u0442\u043e \u0434\u0443\u0431\u043b\u0438\u0440\u0430\u043d\u0435 \u043d\u0430 \u0438\u043d\u0444\u043e\u0440\u043c\u0430\u0446\u0438\u044f (Data Redundancy) \u0438 \u0434\u0430 \u043f\u0440\u0435\u0434\u043e\u0442\u0432\u0440\u0430\u0442\u0438 \u0430\u043d\u043e\u043c\u0430\u043b\u0438\u0438 \u043f\u0440\u0438 \u0434\u043e\u0431\u0430\u0432\u044f\u043d\u0435, \u043f\u0440\u043e\u043c\u044f\u043d\u0430 \u0438\u043b\u0438 \u0438\u0437\u0442\u0440\u0438\u0432\u0430\u043d\u0435 \u043d\u0430 \u0434\u0430\u043d\u043d\u0438.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">\u0422\u044f \u0441\u0435 \u043f\u043e\u0441\u0442\u0438\u0433\u0430 \u0447\u0440\u0435\u0437 \u0440\u0430\u0437\u0434\u0435\u043b\u044f\u043d\u0435 \u043d\u0430 \u0433\u043e\u043b\u0435\u043c\u0438 \u0442\u0430\u0431\u043b\u0438\u0446\u0438 \u043d\u0430 \u043f\u043e-\u043c\u0430\u043b\u043a\u0438, \u043b\u043e\u0433\u0438\u0447\u0435\u0441\u043a\u0438 \u0441\u0432\u044a\u0440\u0437\u0430\u043d\u0438 \u0442\u0430\u0431\u043b\u0438\u0446\u0438, \u043a\u0430\u0442\u043e \u0432\u0440\u044a\u0437\u043a\u0438\u0442\u0435 \u043c\u0435\u0436\u0434\u0443 \u0442\u044f\u0445 \u0441\u0435 \u043e\u0441\u044a\u0449\u0435\u0441\u0442\u0432\u044f\u0432\u0430\u0442 \u0447\u0440\u0435\u0437 Primary Keys \u0438 Foreign Keys.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">2. \u0417\u0430\u0449\u043e \u043d\u043e\u0440\u043c\u0430\u043b\u0438\u0437\u0430\u0446\u0438\u044f\u0442\u0430 \u0435 \u0432\u0430\u0436\u043d\u0430?<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">\u041e\u0441\u043d\u043e\u0432\u043d\u0438\u0442\u0435 \u043f\u0440\u0435\u0434\u0438\u043c\u0441\u0442\u0432\u0430 \u0441\u0430:<\/p>\n\n\n\n<ol class=\"wp-block-list\">\n<li>\u041d\u0430\u043c\u0430\u043b\u044f\u0432\u0430\u043d\u0435 \u043d\u0430 \u0438\u0437\u043b\u0438\u0448\u043d\u0438\u0442\u0435 \u0434\u0430\u043d\u043d\u0438 (Reduce Data Redundancy) \u2013 \u0438\u0437\u0431\u044f\u0433\u0432\u0430 \u0441\u0435 \u043c\u043d\u043e\u0433\u043e\u043a\u0440\u0430\u0442\u043d\u043e\u0442\u043e \u0441\u044a\u0445\u0440\u0430\u043d\u044f\u0432\u0430\u043d\u0435 \u043d\u0430 \u0435\u0434\u043d\u0430 \u0438 \u0441\u044a\u0449\u0430 \u0438\u043d\u0444\u043e\u0440\u043c\u0430\u0446\u0438\u044f.<\/li>\n\n\n\n<li>\u041f\u0440\u0435\u0434\u043e\u0442\u0432\u0440\u0430\u0442\u044f\u0432\u0430\u043d\u0435 \u043d\u0430 \u0430\u043d\u043e\u043c\u0430\u043b\u0438\u0438 (Prevent Data Anomalies) \u2013 \u043d\u0430\u043c\u0430\u043b\u044f\u0432\u0430 \u043f\u0440\u043e\u0431\u043b\u0435\u043c\u0438\u0442\u0435 \u043f\u0440\u0438 \u0434\u043e\u0431\u0430\u0432\u044f\u043d\u0435, \u0430\u043a\u0442\u0443\u0430\u043b\u0438\u0437\u0438\u0440\u0430\u043d\u0435 \u0438 \u0438\u0437\u0442\u0440\u0438\u0432\u0430\u043d\u0435 \u043d\u0430 \u0437\u0430\u043f\u0438\u0441\u0438.<\/li>\n\n\n\n<li>\u041f\u043e\u0434\u043e\u0431\u0440\u044f\u0432\u0430\u043d\u0435 \u043d\u0430 \u0446\u0435\u043b\u043e\u0441\u0442\u0442\u0430 \u043d\u0430 \u0434\u0430\u043d\u043d\u0438\u0442\u0435 (Improve Data Integrity) \u2013 \u0433\u0430\u0440\u0430\u043d\u0442\u0438\u0440\u0430 \u0441\u0435 \u043f\u043e-\u0433\u043e\u043b\u044f\u043c\u0430 \u043f\u043e\u0441\u043b\u0435\u0434\u043e\u0432\u0430\u0442\u0435\u043b\u043d\u043e\u0441\u0442 \u0438 \u0442\u043e\u0447\u043d\u043e\u0441\u0442 \u043d\u0430 \u0438\u043d\u0444\u043e\u0440\u043c\u0430\u0446\u0438\u044f\u0442\u0430.<\/li>\n\n\n\n<li>\u041f\u043e-\u043b\u0435\u0441\u043d\u0430 \u043f\u043e\u0434\u0434\u0440\u044a\u0436\u043a\u0430 (Simplify Maintenance) \u2013 \u043f\u0440\u043e\u043c\u0435\u043d\u0438\u0442\u0435 \u0432 \u0434\u0430\u043d\u043d\u0438\u0442\u0435 \u0441\u0435 \u0438\u0437\u0432\u044a\u0440\u0448\u0432\u0430\u0442 \u043d\u0430 \u0435\u0434\u043d\u043e \u043b\u043e\u0433\u0438\u0447\u0435\u0441\u043a\u043e \u043c\u044f\u0441\u0442\u043e.<\/li>\n<\/ol>\n\n\n\n<p class=\"wp-block-paragraph\">\u0412\u0430\u0436\u043d\u043e \u0443\u0442\u043e\u0447\u043d\u0435\u043d\u0438\u0435: \u041d\u043e\u0440\u043c\u0430\u043b\u0438\u0437\u0430\u0446\u0438\u044f\u0442\u0430 \u043d\u0435 \u0433\u0430\u0440\u0430\u043d\u0442\u0438\u0440\u0430 \u043f\u043e-\u0431\u044a\u0440\u0437\u043e \u0438\u0437\u043f\u044a\u043b\u043d\u0435\u043d\u0438\u0435 \u043d\u0430 SQL \u0437\u0430\u044f\u0432\u043a\u0438\u0442\u0435. \u0422\u044f \u043c\u043e\u0436\u0435 \u0434\u0430 \u043d\u0430\u043c\u0430\u043b\u0438 \u0438\u0437\u043b\u0438\u0448\u043d\u043e\u0442\u043e \u0441\u044a\u0445\u0440\u0430\u043d\u0435\u043d\u0438\u0435 \u043d\u0430 \u0434\u0430\u043d\u043d\u0438 \u0438 \u0434\u0430 \u043f\u043e\u0434\u043e\u0431\u0440\u0438 \u0442\u044f\u0445\u043d\u0430\u0442\u0430 \u0446\u044f\u043b\u043e\u0441\u0442, \u043d\u043e \u043f\u0440\u0438 \u043d\u044f\u043a\u043e\u0438 \u0437\u0430\u044f\u0432\u043a\u0438 \u0443\u0432\u0435\u043b\u0438\u0447\u0430\u0432\u0430 \u0431\u0440\u043e\u044f \u043d\u0430 \u043d\u0435\u043e\u0431\u0445\u043e\u0434\u0438\u043c\u0438\u0442\u0435 <code>JOIN<\/code> \u043e\u043f\u0435\u0440\u0430\u0446\u0438\u0438. \u0412 \u043e\u043f\u0440\u0435\u0434\u0435\u043b\u0435\u043d\u0438 \u0441\u043b\u0443\u0447\u0430\u0438 Denormalization \u043c\u043e\u0436\u0435 \u0434\u0430 \u043f\u043e\u0434\u043e\u0431\u0440\u0438 \u043f\u0440\u043e\u0438\u0437\u0432\u043e\u0434\u0438\u0442\u0435\u043b\u043d\u043e\u0441\u0442\u0442\u0430.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">3. \u041f\u0440\u0438\u043c\u0435\u0440 \u0437\u0430 \u043d\u043e\u0440\u043c\u0430\u043b\u0438\u0437\u0430\u0446\u0438\u044f<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">\u0414\u0430 \u0440\u0430\u0437\u0433\u043b\u0435\u0434\u0430\u043c\u0435 \u0442\u0430\u0431\u043b\u0438\u0446\u0430, \u0432 \u043a\u043e\u044f\u0442\u043e \u0441\u0435 \u0441\u044a\u0445\u0440\u0430\u043d\u044f\u0432\u0430\u0442 \u043a\u043b\u0438\u0435\u043d\u0442\u0438 \u0438 \u0442\u0435\u0445\u043d\u0438\u0442\u0435 \u043f\u043e\u0440\u044a\u0447\u043a\u0438.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">\u041f\u0440\u0435\u0434\u0438 \u043d\u043e\u0440\u043c\u0430\u043b\u0438\u0437\u0430\u0446\u0438\u044f\u0442\u0430:<\/p>\n\n\n\n<figure class=\"wp-block-table\"><table class=\"has-fixed-layout\"><tbody><tr><th>Order_ID<\/th><th>Customer_Name<\/th><th>Customer_City<\/th><th>Product<\/th><\/tr><tr><td>101<\/td><td>Ivan Petrov<\/td><td>Varna<\/td><td>Laptop<\/td><\/tr><tr><td>102<\/td><td>Ivan Petrov<\/td><td>Varna<\/td><td>Mouse<\/td><\/tr><tr><td>103<\/td><td>Maria Ivanova<\/td><td>Sofia<\/td><td>Keyboard<\/td><\/tr><\/tbody><\/table><\/figure>\n\n\n\n<p class=\"wp-block-paragraph\">\u0412 \u0442\u043e\u0437\u0438 \u043f\u0440\u0438\u043c\u0435\u0440 \u0438\u043d\u0444\u043e\u0440\u043c\u0430\u0446\u0438\u044f\u0442\u0430 \u0437\u0430 \u043a\u043b\u0438\u0435\u043d\u0442\u0430 \u0441\u0435 \u043f\u043e\u0432\u0442\u0430\u0440\u044f \u0432\u044a\u0432 \u0432\u0441\u0435\u043a\u0438 \u043d\u0435\u0433\u043e\u0432 \u0437\u0430\u043f\u0438\u0441.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">\u0422\u043e\u0432\u0430 \u0441\u044a\u0437\u0434\u0430\u0432\u0430 \u043d\u044f\u043a\u043e\u043b\u043a\u043e \u043f\u043e\u0442\u0435\u043d\u0446\u0438\u0430\u043b\u043d\u0438 \u043f\u0440\u043e\u0431\u043b\u0435\u043c\u0430:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Update Anomaly: \u0410\u043a\u043e Ivan Petrov \u043f\u0440\u043e\u043c\u0435\u043d\u0438 \u0433\u0440\u0430\u0434\u0430 \u0441\u0438, \u0442\u0440\u044f\u0431\u0432\u0430 \u0434\u0430 \u0430\u043a\u0442\u0443\u0430\u043b\u0438\u0437\u0438\u0440\u0430\u043c\u0435 \u0432\u0441\u0438\u0447\u043a\u0438 \u043d\u0435\u0433\u043e\u0432\u0438 \u0437\u0430\u043f\u0438\u0441\u0438.<\/li>\n\n\n\n<li>Insert Anomaly: \u041d\u0435 \u043c\u043e\u0436\u0435\u043c \u043b\u0435\u0441\u043d\u043e \u0434\u0430 \u0434\u043e\u0431\u0430\u0432\u0438\u043c \u043a\u043b\u0438\u0435\u043d\u0442, \u043a\u043e\u0439\u0442\u043e \u0432\u0441\u0435 \u043e\u0449\u0435 \u043d\u044f\u043c\u0430 \u043f\u043e\u0440\u044a\u0447\u043a\u0430.<\/li>\n\n\n\n<li>Delete Anomaly: \u0410\u043a\u043e \u0438\u0437\u0442\u0440\u0438\u0435\u043c \u043f\u043e\u0441\u043b\u0435\u0434\u043d\u0430\u0442\u0430 \u043f\u043e\u0440\u044a\u0447\u043a\u0430 \u043d\u0430 \u0434\u0430\u0434\u0435\u043d \u043a\u043b\u0438\u0435\u043d\u0442, \u043c\u043e\u0436\u0435 \u0434\u0430 \u0437\u0430\u0433\u0443\u0431\u0438\u043c \u0438 \u0438\u043d\u0444\u043e\u0440\u043c\u0430\u0446\u0438\u044f\u0442\u0430 \u0437\u0430 \u0441\u0430\u043c\u0438\u044f \u043a\u043b\u0438\u0435\u043d\u0442.<\/li>\n<\/ul>\n\n\n\n<p class=\"wp-block-paragraph\">\u0421\u043b\u0435\u0434 \u043d\u043e\u0440\u043c\u0430\u043b\u0438\u0437\u0430\u0446\u0438\u044f\u0442\u0430:<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">\u0422\u0430\u0431\u043b\u0438\u0446\u0430 <code>Customers<\/code>:<\/p>\n\n\n\n<figure class=\"wp-block-table\"><table class=\"has-fixed-layout\"><tbody><tr><th>Customer_ID (PK)<\/th><th>Customer_Name<\/th><th>Customer_City<\/th><\/tr><tr><td>1<\/td><td>Ivan Petrov<\/td><td>Varna<\/td><\/tr><tr><td>2<\/td><td>Maria Ivanova<\/td><td>Sofia<\/td><\/tr><\/tbody><\/table><\/figure>\n\n\n\n<p class=\"wp-block-paragraph\">\u0422\u0430\u0431\u043b\u0438\u0446\u0430 <code>Orders<\/code>:<\/p>\n\n\n\n<figure class=\"wp-block-table\"><table class=\"has-fixed-layout\"><tbody><tr><th>Order_ID (PK)<\/th><th>Customer_ID (FK)<\/th><th>Product<\/th><\/tr><tr><td>101<\/td><td>1<\/td><td>Laptop<\/td><\/tr><tr><td>102<\/td><td>1<\/td><td>Mouse<\/td><\/tr><tr><td>103<\/td><td>2<\/td><td>Keyboard<\/td><\/tr><\/tbody><\/table><\/figure>\n\n\n\n<p class=\"wp-block-paragraph\">\u0421\u0435\u0433\u0430 \u0438\u043d\u0444\u043e\u0440\u043c\u0430\u0446\u0438\u044f\u0442\u0430 \u0437\u0430 \u0432\u0441\u0435\u043a\u0438 \u043a\u043b\u0438\u0435\u043d\u0442 \u0441\u0435 \u0441\u044a\u0445\u0440\u0430\u043d\u044f\u0432\u0430 \u0441\u0430\u043c\u043e \u0432\u0435\u0434\u043d\u044a\u0436. \u0412\u0440\u044a\u0437\u043a\u0430\u0442\u0430 \u043c\u0435\u0436\u0434\u0443 \u0442\u0430\u0431\u043b\u0438\u0446\u0438\u0442\u0435 \u0441\u0435 \u043e\u0441\u044a\u0449\u0435\u0441\u0442\u0432\u044f\u0432\u0430 \u0447\u0440\u0435\u0437 <code>Customer_ID<\/code>.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">4. \u041e\u0441\u043d\u043e\u0432\u043d\u0438 \u043d\u043e\u0440\u043c\u0430\u043b\u043d\u0438 \u0444\u043e\u0440\u043c\u0438 (Normal Forms)<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">\u041d\u043e\u0440\u043c\u0430\u043b\u0438\u0437\u0430\u0446\u0438\u044f\u0442\u0430 \u0441\u0435 \u0438\u0437\u0432\u044a\u0440\u0448\u0432\u0430 \u0447\u0440\u0435\u0437 \u043f\u043e\u0441\u043b\u0435\u0434\u043e\u0432\u0430\u0442\u0435\u043b\u043d\u043e \u043f\u0440\u0438\u043b\u0430\u0433\u0430\u043d\u0435 \u043d\u0430 \u043f\u0440\u0430\u0432\u0438\u043b\u0430, \u043d\u0430\u0440\u0435\u0447\u0435\u043d\u0438 Normal Forms.<\/p>\n\n\n\n<figure class=\"wp-block-table\"><table class=\"has-fixed-layout\"><tbody><tr><th>\u041d\u043e\u0440\u043c\u0430\u043b\u043d\u0430 \u0444\u043e\u0440\u043c\u0430<\/th><th>\u041e\u0441\u043d\u043e\u0432\u043d\u043e \u0438\u0437\u0438\u0441\u043a\u0432\u0430\u043d\u0435<\/th><\/tr><tr><td>1NF (First Normal Form)<\/td><td>\u0412\u0441\u044f\u043a\u0430 \u043a\u043b\u0435\u0442\u043a\u0430 \u0441\u044a\u0434\u044a\u0440\u0436\u0430 \u0435\u0434\u043d\u0430 \u0430\u0442\u043e\u043c\u0430\u0440\u043d\u0430 \u0441\u0442\u043e\u0439\u043d\u043e\u0441\u0442; \u043d\u044f\u043c\u0430 \u043f\u043e\u0432\u0442\u0430\u0440\u044f\u0449\u0438 \u0441\u0435 \u0433\u0440\u0443\u043f\u0438 \u043e\u0442 \u043a\u043e\u043b\u043e\u043d\u0438.<\/td><\/tr><tr><td>2NF (Second Normal Form)<\/td><td>\u0422\u0430\u0431\u043b\u0438\u0446\u0430\u0442\u0430 \u0435 \u0432 1NF \u0438 \u0432\u0441\u0435\u043a\u0438 \u043d\u0435\u043a\u043b\u044e\u0447\u043e\u0432 \u0430\u0442\u0440\u0438\u0431\u0443\u0442 \u0437\u0430\u0432\u0438\u0441\u0438 \u043e\u0442 \u0446\u0435\u043b\u0438\u044f \u043a\u0430\u043d\u0434\u0438\u0434\u0430\u0442-\u043a\u043b\u044e\u0447, \u0430 \u043d\u0435 \u0441\u0430\u043c\u043e \u043e\u0442 \u0447\u0430\u0441\u0442 \u043e\u0442 \u043d\u0435\u0433\u043e.<\/td><\/tr><tr><td>3NF (Third Normal Form)<\/td><td>\u0422\u0430\u0431\u043b\u0438\u0446\u0430\u0442\u0430 \u0435 \u0432 2NF \u0438 \u043d\u044f\u043c\u0430 \u0442\u0440\u0430\u043d\u0437\u0438\u0442\u0438\u0432\u043d\u0438 \u0437\u0430\u0432\u0438\u0441\u0438\u043c\u043e\u0441\u0442\u0438 \u043d\u0430 \u043d\u0435\u043a\u043b\u044e\u0447\u043e\u0432\u0438 \u0430\u0442\u0440\u0438\u0431\u0443\u0442\u0438 \u043e\u0442 \u043a\u043b\u044e\u0447\u0430.<\/td><\/tr><tr><td>BCNF (Boyce-Codd Normal Form)<\/td><td>\u0417\u0430 \u0432\u0441\u044f\u043a\u0430 \u043d\u0435\u0442\u0440\u0438\u0432\u0438\u0430\u043b\u043d\u0430 \u0444\u0443\u043d\u043a\u0446\u0438\u043e\u043d\u0430\u043b\u043d\u0430 \u0437\u0430\u0432\u0438\u0441\u0438\u043c\u043e\u0441\u0442 \u0434\u0435\u0442\u0435\u0440\u043c\u0438\u043d\u0430\u043d\u0442\u044a\u0442 \u0442\u0440\u044f\u0431\u0432\u0430 \u0434\u0430 \u0431\u044a\u0434\u0435 Superkey.<\/td><\/tr><\/tbody><\/table><\/figure>\n\n\n\n<p class=\"wp-block-paragraph\">\u041f\u043e-\u043f\u043e\u0434\u0440\u043e\u0431\u043d\u043e \u043d\u043e\u0440\u043c\u0430\u043b\u043d\u0438\u0442\u0435 \u0444\u043e\u0440\u043c\u0438 \u043c\u043e\u0433\u0430\u0442 \u0434\u0430 \u0441\u0435 \u0440\u0430\u0437\u0433\u043b\u0435\u0434\u0430\u0442 \u0441 \u043e\u0442\u0434\u0435\u043b\u043d\u0438 \u043f\u0440\u0438\u043c\u0435\u0440\u0438, \u043e\u0441\u043e\u0431\u0435\u043d\u043e 1NF, 2NF \u0438 3NF, \u043a\u043e\u0438\u0442\u043e \u0441\u0430 \u043d\u0430\u0439-\u0447\u0435\u0441\u0442\u043e \u043e\u0431\u0441\u044a\u0436\u0434\u0430\u043d\u0438 \u043d\u0430 \u0442\u0435\u0445\u043d\u0438\u0447\u0435\u0441\u043a\u0438 \u0438\u043d\u0442\u0435\u0440\u0432\u044e\u0442\u0430.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">5. \u0421\u0446\u0435\u043d\u0430\u0440\u0438\u0438, \u0432 \u043a\u043e\u0438\u0442\u043e \u0441\u0435 \u0438\u0437\u043f\u043e\u043b\u0437\u0432\u0430 \u043d\u043e\u0440\u043c\u0430\u043b\u0438\u0437\u0430\u0446\u0438\u044f<\/h2>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Data Integrity: \u041a\u043e\u0433\u0430\u0442\u043e \u0442\u0440\u044f\u0431\u0432\u0430 \u0434\u0430 \u0441\u0435 \u043f\u0440\u0435\u0434\u043e\u0442\u0432\u0440\u0430\u0442\u044f\u0442 \u043f\u0440\u043e\u0442\u0438\u0432\u043e\u0440\u0435\u0447\u0438\u0432\u0438 \u0434\u0430\u043d\u043d\u0438 \u043f\u0440\u0438 \u043f\u0440\u043e\u043c\u044f\u043d\u0430 \u043d\u0430 \u0438\u043d\u0444\u043e\u0440\u043c\u0430\u0446\u0438\u044f\u0442\u0430 \u0437\u0430 \u043a\u043b\u0438\u0435\u043d\u0442, \u043f\u0440\u043e\u0434\u0443\u043a\u0442 \u0438\u043b\u0438 \u0441\u043b\u0443\u0436\u0438\u0442\u0435\u043b.<\/li>\n\n\n\n<li>Efficient Data Management: \u041a\u043e\u0433\u0430\u0442\u043e \u0438\u043d\u0444\u043e\u0440\u043c\u0430\u0446\u0438\u044f\u0442\u0430 \u0442\u0440\u044f\u0431\u0432\u0430 \u0434\u0430 \u0431\u044a\u0434\u0435 \u043e\u0440\u0433\u0430\u043d\u0438\u0437\u0438\u0440\u0430\u043d\u0430 \u0432 \u043b\u043e\u0433\u0438\u0447\u0435\u0441\u043a\u0438 \u0441\u0432\u044a\u0440\u0437\u0430\u043d\u0438 \u0442\u0430\u0431\u043b\u0438\u0446\u0438.<\/li>\n\n\n\n<li>Storage Optimization: \u041a\u043e\u0433\u0430\u0442\u043e \u0438\u043c\u0430 \u043d\u0435\u043d\u0443\u0436\u043d\u043e \u0434\u0443\u0431\u043b\u0438\u0440\u0430\u043d\u0435 \u043d\u0430 \u0438\u043d\u0444\u043e\u0440\u043c\u0430\u0446\u0438\u044f, \u043a\u043e\u0435\u0442\u043e \u0443\u0432\u0435\u043b\u0438\u0447\u0430\u0432\u0430 \u0440\u0430\u0437\u043c\u0435\u0440\u0430 \u043d\u0430 \u0431\u0430\u0437\u0430\u0442\u0430 \u0434\u0430\u043d\u043d\u0438.<\/li>\n\n\n\n<li>Transactional Systems: \u041f\u0440\u0438 \u0441\u0438\u0441\u0442\u0435\u043c\u0438 \u0437\u0430 \u0431\u0430\u043d\u043a\u043e\u0432\u0438 \u043e\u043f\u0435\u0440\u0430\u0446\u0438\u0438, \u043f\u043e\u0440\u044a\u0447\u043a\u0438, \u043f\u043b\u0430\u0449\u0430\u043d\u0438\u044f \u0438 \u0443\u043f\u0440\u0430\u0432\u043b\u0435\u043d\u0438\u0435 \u043d\u0430 \u043a\u043b\u0438\u0435\u043d\u0442\u0438, \u043a\u044a\u0434\u0435\u0442\u043e \u043f\u043e\u0441\u043b\u0435\u0434\u043e\u0432\u0430\u0442\u0435\u043b\u043d\u043e\u0441\u0442\u0442\u0430 \u043d\u0430 \u0434\u0430\u043d\u043d\u0438\u0442\u0435 \u0435 \u043e\u0441\u043e\u0431\u0435\u043d\u043e \u0432\u0430\u0436\u043d\u0430.<\/li>\n<\/ul>\n\n\n\n<h2 class=\"wp-block-heading\">\u0412\u0430\u0436\u043d\u043e \u0437\u0430 Java Developer Interview<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">1. \u041a\u0430\u043a\u0432\u043e \u043f\u0440\u0435\u0434\u0441\u0442\u0430\u0432\u043b\u044f\u0432\u0430 SQL Normalization?<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">\u041f\u0440\u043e\u0446\u0435\u0441 \u043d\u0430 \u0441\u0442\u0440\u0443\u043a\u0442\u0443\u0440\u0438\u0440\u0430\u043d\u0435 \u043d\u0430 \u0440\u0435\u043b\u0430\u0446\u0438\u043e\u043d\u043d\u0438 \u0442\u0430\u0431\u043b\u0438\u0446\u0438 \u0441 \u0446\u0435\u043b \u043d\u0430\u043c\u0430\u043b\u044f\u0432\u0430\u043d\u0435 \u043d\u0430 \u0438\u0437\u043b\u0438\u0448\u043d\u0438\u0442\u0435 \u0434\u0430\u043d\u043d\u0438 \u0438 \u043f\u0440\u0435\u0434\u043e\u0442\u0432\u0440\u0430\u0442\u044f\u0432\u0430\u043d\u0435 \u043d\u0430 \u0430\u043d\u043e\u043c\u0430\u043b\u0438\u0438.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">2. \u041a\u0430\u043a\u0432\u0438 \u043f\u0440\u043e\u0431\u043b\u0435\u043c\u0438 \u043f\u0440\u0435\u0434\u043e\u0442\u0432\u0440\u0430\u0442\u044f\u0432\u0430 \u043d\u043e\u0440\u043c\u0430\u043b\u0438\u0437\u0430\u0446\u0438\u044f\u0442\u0430?<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Insert Anomaly<\/li>\n\n\n\n<li>Update Anomaly<\/li>\n\n\n\n<li>Delete Anomaly<\/li>\n<\/ul>\n\n\n\n<p class=\"wp-block-paragraph\">3. \u041a\u0430\u043a\u0432\u0430 \u0435 \u0440\u0430\u0437\u043b\u0438\u043a\u0430\u0442\u0430 \u043c\u0435\u0436\u0434\u0443 Primary Key \u0438 Foreign Key?<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li><code>Primary Key<\/code> \u2013 \u0443\u043d\u0438\u043a\u0430\u043b\u043d\u043e \u0438\u0434\u0435\u043d\u0442\u0438\u0444\u0438\u0446\u0438\u0440\u0430 \u0432\u0441\u0435\u043a\u0438 \u0437\u0430\u043f\u0438\u0441 \u0432 \u0442\u0430\u0431\u043b\u0438\u0446\u0430\u0442\u0430.<\/li>\n\n\n\n<li><code>Foreign Key<\/code> \u2013 \u0441\u044a\u0437\u0434\u0430\u0432\u0430 \u0432\u0440\u044a\u0437\u043a\u0430 \u0441 Primary Key \u0438\u043b\u0438 \u0434\u0440\u0443\u0433 \u043f\u043e\u0434\u0445\u043e\u0434\u044f\u0449 \u0443\u043d\u0438\u043a\u0430\u043b\u0435\u043d \u043a\u043b\u044e\u0447 \u0432 \u0434\u0440\u0443\u0433\u0430 \u0442\u0430\u0431\u043b\u0438\u0446\u0430.<\/li>\n<\/ul>\n\n\n\n<p class=\"wp-block-paragraph\">4. \u041f\u043e\u0434\u043e\u0431\u0440\u044f\u0432\u0430 \u043b\u0438 \u043d\u043e\u0440\u043c\u0430\u043b\u0438\u0437\u0430\u0446\u0438\u044f\u0442\u0430 \u043f\u0440\u043e\u0438\u0437\u0432\u043e\u0434\u0438\u0442\u0435\u043b\u043d\u043e\u0441\u0442\u0442\u0430 \u043d\u0430 \u0431\u0430\u0437\u0430\u0442\u0430 \u0434\u0430\u043d\u043d\u0438?<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">\u041d\u0435 \u0432\u0438\u043d\u0430\u0433\u0438. \u0422\u044f \u043f\u043e\u0434\u043e\u0431\u0440\u044f\u0432\u0430 \u0441\u0442\u0440\u0443\u043a\u0442\u0443\u0440\u0430\u0442\u0430 \u0438 \u0446\u0435\u043b\u043e\u0441\u0442\u0442\u0430 \u043d\u0430 \u0434\u0430\u043d\u043d\u0438\u0442\u0435, \u043d\u043e \u043f\u043e\u043d\u044f\u043a\u043e\u0433\u0430 \u0443\u0432\u0435\u043b\u0438\u0447\u0430\u0432\u0430 \u0431\u0440\u043e\u044f \u043d\u0430 <code>JOIN<\/code> \u043e\u043f\u0435\u0440\u0430\u0446\u0438\u0438\u0442\u0435. \u041f\u0440\u0438 \u043e\u043f\u0440\u0435\u0434\u0435\u043b\u0435\u043d\u0438 \u043d\u0430\u0442\u043e\u0432\u0430\u0440\u0432\u0430\u043d\u0438\u044f Denormalization \u043c\u043e\u0436\u0435 \u0434\u0430 \u0431\u044a\u0434\u0435 \u043f\u043e-\u043f\u043e\u0434\u0445\u043e\u0434\u044f\u0449\u0430.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">\u041e\u0441\u043d\u043e\u0432\u0435\u043d \u0438\u0437\u0432\u043e\u0434<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">SQL Normalization \u0435 \u043e\u0441\u043d\u043e\u0432\u0435\u043d \u043f\u0440\u0438\u043d\u0446\u0438\u043f \u043f\u0440\u0438 \u043f\u0440\u043e\u0435\u043a\u0442\u0438\u0440\u0430\u043d\u0435\u0442\u043e \u043d\u0430 \u0440\u0435\u043b\u0430\u0446\u0438\u043e\u043d\u043d\u0438 \u0431\u0430\u0437\u0438 \u0434\u0430\u043d\u043d\u0438. \u0422\u044f \u043e\u0441\u0438\u0433\u0443\u0440\u044f\u0432\u0430 \u043b\u043e\u0433\u0438\u0447\u0435\u0441\u043a\u0430 \u043e\u0440\u0433\u0430\u043d\u0438\u0437\u0430\u0446\u0438\u044f \u043d\u0430 \u0438\u043d\u0444\u043e\u0440\u043c\u0430\u0446\u0438\u044f\u0442\u0430, \u043d\u0430\u043c\u0430\u043b\u044f\u0432\u0430 \u0434\u0443\u0431\u043b\u0438\u0440\u0430\u043d\u0435\u0442\u043e \u0438 \u043f\u0440\u0435\u0434\u043e\u0442\u0432\u0440\u0430\u0442\u044f\u0432\u0430 \u0430\u043d\u043e\u043c\u0430\u043b\u0438\u0438 \u043f\u0440\u0438 \u043f\u0440\u043e\u043c\u044f\u043d\u0430 \u043d\u0430 \u0434\u0430\u043d\u043d\u0438\u0442\u0435.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">\u0417\u0430 Java Developer \u0435 \u0432\u0430\u0436\u043d\u043e \u0434\u0430 \u0440\u0430\u0437\u0431\u0438\u0440\u0430 \u043f\u043e\u043d\u0435 1NF, 2NF \u0438 3NF, \u043a\u0430\u043a\u0442\u043e \u0438 \u0432\u0440\u044a\u0437\u043a\u0430\u0442\u0430 \u043c\u0435\u0436\u0434\u0443 Primary Keys, Foreign Keys \u0438 \u0442\u0430\u0431\u043b\u0438\u0446\u0438\u0442\u0435 \u0432 \u0435\u0434\u043d\u0430 \u0440\u0435\u043b\u0430\u0446\u0438\u043e\u043d\u043d\u0430 \u0431\u0430\u0437\u0430 \u0434\u0430\u043d\u043d\u0438.<\/p>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h1 class=\"wp-block-heading\">Strategy Pattern (\u0428\u0430\u0431\u043b\u043e\u043d \u0437\u0430 \u043f\u0440\u043e\u0435\u043a\u0442\u0438\u0440\u0430\u043d\u0435 \u201e\u0421\u0442\u0440\u0430\u0442\u0435\u0433\u0438\u044f\u201c)<\/h1>\n\n\n\n<h2 class=\"wp-block-heading\">1. \u041a\u0430\u043a\u0432\u043e \u043f\u0440\u0435\u0434\u0441\u0442\u0430\u0432\u043b\u044f\u0432\u0430 Strategy Pattern?<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">Strategy Pattern \u0435 \u043f\u043e\u0432\u0435\u0434\u0435\u043d\u0447\u0435\u0441\u043a\u0438 \u0448\u0430\u0431\u043b\u043e\u043d \u0437\u0430 \u043f\u0440\u043e\u0435\u043a\u0442\u0438\u0440\u0430\u043d\u0435 (Behavioral Design Pattern), \u043a\u043e\u0439\u0442\u043e \u0434\u0435\u0444\u0438\u043d\u0438\u0440\u0430 \u0441\u0435\u043c\u0435\u0439\u0441\u0442\u0432\u043e \u043e\u0442 \u0430\u043b\u0433\u043e\u0440\u0438\u0442\u043c\u0438, \u043a\u0430\u043f\u0441\u0443\u043b\u0438\u0440\u0430 \u0432\u0441\u0435\u043a\u0438 \u043e\u0442 \u0442\u044f\u0445 \u0432 \u043e\u0442\u0434\u0435\u043b\u0435\u043d \u043a\u043b\u0430\u0441 \u0438 \u0433\u0438 \u043f\u0440\u0430\u0432\u0438 \u0432\u0437\u0430\u0438\u043c\u043e\u0437\u0430\u043c\u0435\u043d\u044f\u0435\u043c\u0438.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">\u0422\u043e\u0439 \u043f\u043e\u0437\u0432\u043e\u043b\u044f\u0432\u0430 \u0430\u043b\u0433\u043e\u0440\u0438\u0442\u044a\u043c\u044a\u0442 \u0434\u0430 \u0431\u044a\u0434\u0435 \u043f\u0440\u043e\u043c\u0435\u043d\u044f\u043d \u043d\u0435\u0437\u0430\u0432\u0438\u0441\u0438\u043c\u043e \u043e\u0442 \u043a\u043b\u0430\u0441\u0430, \u043a\u043e\u0439\u0442\u043e \u0433\u043e \u0438\u0437\u043f\u043e\u043b\u0437\u0432\u0430.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">\u041e\u0441\u043d\u043e\u0432\u043d\u0430\u0442\u0430 \u0438\u0434\u0435\u044f \u0435 \u0432\u043c\u0435\u0441\u0442\u043e \u0434\u0430 \u0438\u0437\u043f\u043e\u043b\u0437\u0432\u0430\u043c\u0435 \u043c\u043d\u043e\u0436\u0435\u0441\u0442\u0432\u043e <code>if-else<\/code> \u044d\u0441\u0432\u044d\u043b <code>switch<\/code> \u0443\u0441\u043b\u043e\u0432\u0438\u044f \u0437\u0430 \u0438\u0437\u0431\u043e\u0440 \u043d\u0430 \u0430\u043b\u0433\u043e\u0440\u0438\u0442\u044a\u043c, \u0434\u0430 \u0441\u044a\u0437\u0434\u0430\u0434\u0435\u043c \u043e\u0442\u0434\u0435\u043b\u043d\u0430 \u0438\u043c\u043f\u043b\u0435\u043c\u0435\u043d\u0442\u0430\u0446\u0438\u044f \u0437\u0430 \u0432\u0441\u044f\u043a\u0430 \u0441\u0442\u0440\u0430\u0442\u0435\u0433\u0438\u044f \u0438 \u0434\u0430 \u0433\u0438 \u0438\u0437\u043f\u043e\u043b\u0437\u0432\u0430\u043c\u0435 \u0447\u0440\u0435\u0437 \u043e\u0431\u0449 \u0438\u043d\u0442\u0435\u0440\u0444\u0435\u0439\u0441.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">2. \u041f\u0440\u0438\u043c\u0435\u0440: \u0420\u0430\u0437\u043b\u0438\u0447\u043d\u0438 \u043d\u0430\u0447\u0438\u043d\u0438 \u0437\u0430 \u043f\u043b\u0430\u0449\u0430\u043d\u0435 (Payment Strategies)<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">\u0414\u0430 \u043f\u0440\u0435\u0434\u043f\u043e\u043b\u043e\u0436\u0438\u043c, \u0447\u0435 \u0440\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u0432\u0430\u043c\u0435 \u043e\u043d\u043b\u0430\u0439\u043d \u043c\u0430\u0433\u0430\u0437\u0438\u043d, \u043a\u043e\u0439\u0442\u043e \u043f\u043e\u0434\u0434\u044a\u0440\u0436\u0430 \u0442\u0440\u0438 \u043d\u0430\u0447\u0438\u043d\u0430 \u043d\u0430 \u043f\u043b\u0430\u0449\u0430\u043d\u0435:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Credit Card<\/li>\n\n\n\n<li>PayPal<\/li>\n\n\n\n<li>Bank Transfer<\/li>\n<\/ul>\n\n\n\n<p class=\"wp-block-paragraph\">\u0412\u043c\u0435\u0441\u0442\u043e \u0434\u0430 \u0440\u0435\u0430\u043b\u0438\u0437\u0438\u0440\u0430\u043c\u0435 \u0432\u0441\u0438\u0447\u043a\u0438 \u043d\u0430\u0447\u0438\u043d\u0438 \u043d\u0430 \u043f\u043b\u0430\u0449\u0430\u043d\u0435 \u0432 \u0435\u0434\u0438\u043d \u043a\u043b\u0430\u0441 \u0441 \u043c\u043d\u043e\u0436\u0435\u0441\u0442\u0432\u043e \u0443\u0441\u043b\u043e\u0432\u043d\u0438 \u043f\u0440\u043e\u0432\u0435\u0440\u043a\u0438, \u0438\u0437\u043f\u043e\u043b\u0437\u0432\u0430\u043c\u0435 Strategy Pattern.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">\u0421\u0442\u044a\u043f\u043a\u0430 1: \u0421\u044a\u0437\u0434\u0430\u0432\u0430\u043c\u0435 \u043e\u0431\u0449 \u0438\u043d\u0442\u0435\u0440\u0444\u0435\u0439\u0441<\/p>\n\n\n<div class=\"wp-block-code\">\n\t<div class=\"cm-editor\">\n\t\t<div class=\"cm-scroller\">\n\t\t\t\n<pre>\n<code><div class=\"cm-line\">public interface PaymentStrategy {<\/div><div class=\"cm-line\"><\/div><div class=\"cm-line\">    void pay(double amount);<\/div><div class=\"cm-line\">}<\/div><\/code><\/pre>\n\t\t<\/div>\n\t<\/div>\n<\/div>\n\n\n<p class=\"wp-block-paragraph\">\u0421\u0442\u044a\u043f\u043a\u0430 2: \u0421\u044a\u0437\u0434\u0430\u0432\u0430\u043c\u0435 \u043e\u0442\u0434\u0435\u043b\u043d\u0438 \u0441\u0442\u0440\u0430\u0442\u0435\u0433\u0438\u0438<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Credit Card:<\/p>\n\n\n<div class=\"wp-block-code\">\n\t<div class=\"cm-editor\">\n\t\t<div class=\"cm-scroller\">\n\t\t\t\n<pre>\n<code><div class=\"cm-line\">public class CreditCardPayment<\/div><div class=\"cm-line\">        implements PaymentStrategy {<\/div><div class=\"cm-line\"><\/div><div class=\"cm-line\">    @Override<\/div><div class=\"cm-line\">    public void pay(double amount) {<\/div><div class=\"cm-line\">        System.out.println(<\/div><div class=\"cm-line\">            &quot;Paid &quot; + amount + &quot; using Credit Card&quot;<\/div><div class=\"cm-line\">        );<\/div><div class=\"cm-line\">    }<\/div><div class=\"cm-line\">}<\/div><\/code><\/pre>\n\t\t<\/div>\n\t<\/div>\n<\/div>\n\n\n<p class=\"wp-block-paragraph\">PayPal:<\/p>\n\n\n<div class=\"wp-block-code\">\n\t<div class=\"cm-editor\">\n\t\t<div class=\"cm-scroller\">\n\t\t\t\n<pre>\n<code><div class=\"cm-line\">public class PayPalPayment<\/div><div class=\"cm-line\">        implements PaymentStrategy {<\/div><div class=\"cm-line\"><\/div><div class=\"cm-line\">    @Override<\/div><div class=\"cm-line\">    public void pay(double amount) {<\/div><div class=\"cm-line\">        System.out.println(<\/div><div class=\"cm-line\">            &quot;Paid &quot; + amount + &quot; using PayPal&quot;<\/div><div class=\"cm-line\">        );<\/div><div class=\"cm-line\">    }<\/div><div class=\"cm-line\">}<\/div><\/code><\/pre>\n\t\t<\/div>\n\t<\/div>\n<\/div>\n\n\n<p class=\"wp-block-paragraph\">Bank Transfer:<\/p>\n\n\n<div class=\"wp-block-code\">\n\t<div class=\"cm-editor\">\n\t\t<div class=\"cm-scroller\">\n\t\t\t\n<pre>\n<code><div class=\"cm-line\">public class BankTransferPayment<\/div><div class=\"cm-line\">        implements PaymentStrategy {<\/div><div class=\"cm-line\"><\/div><div class=\"cm-line\">    @Override<\/div><div class=\"cm-line\">    public void pay(double amount) {<\/div><div class=\"cm-line\">        System.out.println(<\/div><div class=\"cm-line\">            &quot;Paid &quot; + amount + &quot; using Bank Transfer&quot;<\/div><div class=\"cm-line\">        );<\/div><div class=\"cm-line\">    }<\/div><div class=\"cm-line\">}<\/div><\/code><\/pre>\n\t\t<\/div>\n\t<\/div>\n<\/div>\n\n\n<p class=\"wp-block-paragraph\">\u0421\u0442\u044a\u043f\u043a\u0430 3: \u0421\u044a\u0437\u0434\u0430\u0432\u0430\u043c\u0435 Context \u043a\u043b\u0430\u0441<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">\u0422\u043e\u0437\u0438 \u043a\u043b\u0430\u0441 \u0438\u0437\u043f\u043e\u043b\u0437\u0432\u0430 \u0438\u0437\u0431\u0440\u0430\u043d\u0430\u0442\u0430 \u0441\u0442\u0440\u0430\u0442\u0435\u0433\u0438\u044f, \u0431\u0435\u0437 \u0434\u0430 \u0437\u043d\u0430\u0435 \u043f\u043e\u0434\u0440\u043e\u0431\u043d\u043e\u0441\u0442\u0438\u0442\u0435 \u0437\u0430 \u043d\u0435\u0439\u043d\u0430\u0442\u0430 \u0438\u043c\u043f\u043b\u0435\u043c\u0435\u043d\u0442\u0430\u0446\u0438\u044f.<\/p>\n\n\n<div class=\"wp-block-code\">\n\t<div class=\"cm-editor\">\n\t\t<div class=\"cm-scroller\">\n\t\t\t\n<pre>\n<code><div class=\"cm-line\">public class PaymentContext {<\/div><div class=\"cm-line\"><\/div><div class=\"cm-line\">    private PaymentStrategy strategy;<\/div><div class=\"cm-line\"><\/div><div class=\"cm-line\">    public PaymentContext(PaymentStrategy strategy) {<\/div><div class=\"cm-line\">        this.strategy = strategy;<\/div><div class=\"cm-line\">    }<\/div><div class=\"cm-line\"><\/div><div class=\"cm-line\">    public void setStrategy(PaymentStrategy strategy) {<\/div><div class=\"cm-line\">        this.strategy = strategy;<\/div><div class=\"cm-line\">    }<\/div><div class=\"cm-line\"><\/div><div class=\"cm-line\">    public void executePayment(double amount) {<\/div><div class=\"cm-line\">        strategy.pay(amount);<\/div><div class=\"cm-line\">    }<\/div><div class=\"cm-line\">}<\/div><\/code><\/pre>\n\t\t<\/div>\n\t<\/div>\n<\/div>\n\n\n<p class=\"wp-block-paragraph\">\u0421\u0442\u044a\u043f\u043a\u0430 4: \u0418\u0437\u043f\u043e\u043b\u0437\u0432\u0430\u043d\u0435 \u043d\u0430 Strategy Pattern<\/p>\n\n\n<div class=\"wp-block-code\">\n\t<div class=\"cm-editor\">\n\t\t<div class=\"cm-scroller\">\n\t\t\t\n<pre>\n<code><div class=\"cm-line\">public class Main {<\/div><div class=\"cm-line\"><\/div><div class=\"cm-line\">    public static void main(String[] args) {<\/div><div class=\"cm-line\"><\/div><div class=\"cm-line\">        PaymentContext payment =<\/div><div class=\"cm-line\">                new PaymentContext(<\/div><div class=\"cm-line\">                    new CreditCardPayment()<\/div><div class=\"cm-line\">                );<\/div><div class=\"cm-line\"><\/div><div class=\"cm-line\">        payment.executePayment(100.00);<\/div><div class=\"cm-line\"><\/div><div class=\"cm-line\">        \/\/ Change strategy at runtime<\/div><div class=\"cm-line\">        payment.setStrategy(<\/div><div class=\"cm-line\">            new PayPalPayment()<\/div><div class=\"cm-line\">        );<\/div><div class=\"cm-line\"><\/div><div class=\"cm-line\">        payment.executePayment(200.00);<\/div><div class=\"cm-line\"><\/div><div class=\"cm-line\">        payment.setStrategy(<\/div><div class=\"cm-line\">            new BankTransferPayment()<\/div><div class=\"cm-line\">        );<\/div><div class=\"cm-line\"><\/div><div class=\"cm-line\">        payment.executePayment(300.00);<\/div><div class=\"cm-line\">    }<\/div><div class=\"cm-line\">}<\/div><\/code><\/pre>\n\t\t<\/div>\n\t<\/div>\n<\/div>\n\n\n<p class=\"wp-block-paragraph\">\u04ae\u0440 \u0434\u04af\u043d:<\/p>\n\n\n<div class=\"wp-block-code\">\n\t<div class=\"cm-editor\">\n\t\t<div class=\"cm-scroller\">\n\t\t\t\n<pre>\n<code><div class=\"cm-line\">Paid 100.0 using Credit Card<\/div><div class=\"cm-line\">Paid 200.0 using PayPal<\/div><div class=\"cm-line\">Paid 300.0 using Bank Transfer<\/div><\/code><\/pre>\n\t\t<\/div>\n\t<\/div>\n<\/div>\n\n\n<p class=\"wp-block-paragraph\">\u041a\u0430\u043a\u0442\u043e \u0441\u0435 \u0432\u0438\u0436\u0434\u0430, \u043c\u043e\u0436\u0435\u043c \u0434\u0430 \u043f\u0440\u043e\u043c\u0435\u043d\u044f\u043c\u0435 \u0430\u043b\u0433\u043e\u0440\u0438\u0442\u044a\u043c\u0430 \u043f\u043e \u0432\u0440\u0435\u043c\u0435 \u043d\u0430 \u0438\u0437\u043f\u044a\u043b\u043d\u0435\u043d\u0438\u0435 (Runtime), \u0431\u0435\u0437 \u0434\u0430 \u043f\u0440\u043e\u043c\u0435\u043d\u044f\u043c\u0435 \u043a\u043e\u0434\u0430 \u043d\u0430 <code>PaymentContext<\/code>.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">3. \u041f\u0440\u0435\u0434\u0438\u043c\u0441\u0442\u0432\u0430 \u043d\u0430 Strategy Pattern<\/h2>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Flexibility: \u041f\u043e\u0437\u0432\u043e\u043b\u044f\u0432\u0430 \u043b\u0435\u0441\u043d\u0430 \u0441\u043c\u044f\u043d\u0430 \u043d\u0430 \u0430\u043b\u0433\u043e\u0440\u0438\u0442\u043c\u0438\u0442\u0435.<\/li>\n\n\n\n<li>Maintainability: \u0412\u0441\u0435\u043a\u0438 \u0430\u043b\u0433\u043e\u0440\u0438\u0442\u044a\u043c \u0435 \u0432 \u043e\u0442\u0434\u0435\u043b\u0435\u043d \u043a\u043b\u0430\u0441 \u0438 \u0441\u0435 \u043f\u043e\u0434\u0434\u044a\u0440\u0436\u0430 \u043d\u0435\u0437\u0430\u0432\u0438\u0441\u0438\u043c\u043e.<\/li>\n\n\n\n<li>Extensibility: \u041c\u043e\u0436\u0435\u043c \u0434\u0430 \u0434\u043e\u0431\u0430\u0432\u044f\u043c\u0435 \u043d\u043e\u0432\u0438 \u0441\u0442\u0440\u0430\u0442\u0435\u0433\u0438\u0438, \u0431\u0435\u0437 \u0434\u0430 \u043f\u0440\u043e\u043c\u0435\u043d\u044f\u043c\u0435 \u0441\u044a\u0449\u0435\u0441\u0442\u0432\u0443\u0432\u0430\u0449\u0438\u0442\u0435.<\/li>\n\n\n\n<li>Reduced Conditional Logic: \u041d\u0430\u043c\u0430\u043b\u044f\u0432\u0430 \u043d\u0435\u043e\u0431\u0445\u043e\u0434\u0438\u043c\u043e\u0441\u0442\u0442\u0430 \u043e\u0442 \u0433\u043e\u043b\u0435\u043c\u0438 <code>if-else<\/code> \u0431\u043e\u043b\u043e\u043d <code>switch<\/code> \u043a\u043e\u043d\u0441\u0442\u0440\u0443\u043a\u0446\u0438\u0438.<\/li>\n\n\n\n<li>Open\/Closed Principle: \u041f\u043e\u0434\u043f\u043e\u043c\u0430\u0433\u0430 \u0440\u0430\u0437\u0448\u0438\u0440\u044f\u0432\u0430\u043d\u0435\u0442\u043e \u043d\u0430 \u0444\u0443\u043d\u043a\u0446\u0438\u043e\u043d\u0430\u043b\u043d\u043e\u0441\u0442\u0442\u0430 \u0431\u0435\u0437 \u043f\u0440\u043e\u043c\u044f\u043d\u0430 \u043d\u0430 \u0432\u0435\u0447\u0435 \u0441\u044a\u0449\u0435\u0441\u0442\u0432\u0443\u0432\u0430\u0449\u0438\u044f \u043a\u043e\u0434.<\/li>\n<\/ul>\n\n\n\n<h2 class=\"wp-block-heading\">4. \u041a\u043e\u0433\u0430 \u0441\u0435 \u0438\u0437\u043f\u043e\u043b\u0437\u0432\u0430 Strategy Pattern?<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">\u041f\u043e\u0434\u0445\u043e\u0434\u044f\u0449 \u0435 \u0432 \u0441\u0438\u0442\u0443\u0430\u0446\u0438\u0438, \u043a\u043e\u0433\u0430\u0442\u043e:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>\u0418\u043c\u0430 \u043d\u044f\u043a\u043e\u043b\u043a\u043e \u043d\u0430\u0447\u0438\u043d\u0430 \u0437\u0430 \u0438\u0437\u043f\u044a\u043b\u043d\u0435\u043d\u0438\u0435 \u043d\u0430 \u0435\u0434\u043d\u0430 \u0438 \u0441\u044a\u0449\u0430 \u043e\u043f\u0435\u0440\u0430\u0446\u0438\u044f.<\/li>\n\n\n\n<li>\u0410\u043b\u0433\u043e\u0440\u0438\u0442\u044a\u043c\u044a\u0442 \u0442\u0440\u044f\u0431\u0432\u0430 \u0434\u0430 \u043c\u043e\u0436\u0435 \u0434\u0430 \u0441\u0435 \u0441\u043c\u0435\u043d\u044f \u0434\u0438\u043d\u0430\u043c\u0438\u0447\u043d\u043e.<\/li>\n\n\n\n<li>\u0418\u0441\u043a\u0430\u043c\u0435 \u0434\u0430 \u0438\u0437\u0431\u0435\u0433\u043d\u0435\u043c \u0441\u043b\u043e\u0436\u043d\u0430 \u0443\u0441\u043b\u043e\u0432\u043d\u0430 \u043b\u043e\u0433\u0438\u043a\u0430.<\/li>\n\n\n\n<li>\u0420\u0430\u0437\u043b\u0438\u0447\u043d\u0438 \u043a\u043b\u0438\u0435\u043d\u0442\u0438 \u0442\u0440\u044f\u0431\u0432\u0430 \u0434\u0430 \u0438\u0437\u043f\u043e\u043b\u0437\u0432\u0430\u0442 \u0440\u0430\u0437\u043b\u0438\u0447\u043d\u0438 \u0430\u043b\u0433\u043e\u0440\u0438\u0442\u043c\u0438.<\/li>\n<\/ul>\n\n\n\n<p class=\"wp-block-paragraph\">\u0414\u0440\u0443\u0433\u0438 \u043f\u0440\u0430\u043a\u0442\u0438\u0447\u0435\u0441\u043a\u0438 \u043f\u0440\u0438\u043c\u0435\u0440\u0438:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>\u0420\u0430\u0437\u043b\u0438\u0447\u043d\u0438 \u043c\u0435\u0442\u043e\u0434\u0438 \u0437\u0430 \u0438\u0437\u0447\u0438\u0441\u043b\u044f\u0432\u0430\u043d\u0435 \u043d\u0430 \u0442\u0440\u0430\u043d\u0441\u043f\u043e\u0440\u0442\u043d\u0438 \u0440\u0430\u0437\u0445\u043e\u0434\u0438.<\/li>\n\n\n\n<li>\u0420\u0430\u0437\u043b\u0438\u0447\u043d\u0438 \u0430\u043b\u0433\u043e\u0440\u0438\u0442\u043c\u0438 \u0437\u0430 \u0441\u043e\u0440\u0442\u0438\u0440\u0430\u043d\u0435.<\/li>\n\n\n\n<li>\u0420\u0430\u0437\u043b\u0438\u0447\u043d\u0438 \u043d\u0430\u0447\u0438\u043d\u0438 \u0437\u0430 \u0430\u0432\u0442\u0435\u043d\u0442\u0438\u043a\u0430\u0446\u0438\u044f.<\/li>\n\n\n\n<li>\u0420\u0430\u0437\u043b\u0438\u0447\u043d\u0438 \u0430\u043b\u0433\u043e\u0440\u0438\u0442\u043c\u0438 \u0437\u0430 \u0438\u0437\u0447\u0438\u0441\u043b\u044f\u0432\u0430\u043d\u0435 \u043d\u0430 \u043e\u0442\u0441\u0442\u044a\u043f\u043a\u0438.<\/li>\n\n\n\n<li>\u0420\u0430\u0437\u043b\u0438\u0447\u043d\u0438 \u0441\u0442\u0440\u0430\u0442\u0435\u0433\u0438\u0438 \u0437\u0430 \u043e\u0431\u0440\u0430\u0431\u043e\u0442\u043a\u0430 \u043d\u0430 \u0444\u0430\u0439\u043b\u043e\u0432\u0435.<\/li>\n<\/ul>\n\n\n\n<h2 class=\"wp-block-heading\">\u0412\u0430\u0436\u043d\u043e \u0437\u0430 Java Developer Interview<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">1. \u041a\u0430\u043a\u0432\u043e \u043f\u0440\u0435\u0434\u0441\u0442\u0430\u0432\u043b\u044f\u0432\u0430 Strategy Pattern?<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Behavioral Design Pattern, \u043a\u043e\u0439\u0442\u043e \u043a\u0430\u043f\u0441\u0443\u043b\u0438\u0440\u0430 \u0440\u0430\u0437\u043b\u0438\u0447\u043d\u0438 \u0430\u043b\u0433\u043e\u0440\u0438\u0442\u043c\u0438 \u0437\u0430\u0434 \u043e\u0431\u0449 \u0438\u043d\u0442\u0435\u0440\u0444\u0435\u0439\u0441 \u0438 \u043f\u043e\u0437\u0432\u043e\u043b\u044f\u0432\u0430 \u0442\u0435 \u0434\u0430 \u0431\u044a\u0434\u0430\u0442 \u0432\u0437\u0430\u0438\u043c\u043e\u0437\u0430\u043c\u0435\u043d\u044f\u0435\u043c\u0438.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">2. \u041a\u0430\u043a\u0432\u0430 \u0435 \u043e\u0441\u043d\u043e\u0432\u043d\u0430\u0442\u0430 \u043c\u0443 \u0446\u0435\u043b?<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">\u0414\u0430 \u043e\u0442\u0434\u0435\u043b\u0438 \u0430\u043b\u0433\u043e\u0440\u0438\u0442\u044a\u043c\u0430 \u043e\u0442 \u043a\u043b\u0430\u0441\u0430, \u043a\u043e\u0439\u0442\u043e \u0433\u043e \u0438\u0437\u043f\u043e\u043b\u0437\u0432\u0430, \u0438 \u0434\u0430 \u043f\u043e\u0437\u0432\u043e\u043b\u0438 \u043f\u0440\u043e\u043c\u044f\u043d\u0430\u0442\u0430 \u043c\u0443 \u0431\u0435\u0437 \u043f\u0440\u043e\u043c\u044f\u043d\u0430 \u043d\u0430 Context \u043a\u043b\u0430\u0441\u0430.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">3. \u041a\u0430\u043a Strategy Pattern \u043d\u0430\u043c\u0430\u043b\u044f\u0432\u0430 \u0443\u0441\u043b\u043e\u0432\u043d\u0430\u0442\u0430 \u043b\u043e\u0433\u0438\u043a\u0430?<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">\u0412\u043c\u0435\u0441\u0442\u043e \u043c\u043d\u043e\u0436\u0435\u0441\u0442\u0432\u043e <code>if-else<\/code> \u044d\u0441\u0432\u044d\u043b <code>switch<\/code> \u043f\u0440\u043e\u0432\u0435\u0440\u043a\u0438, \u0432\u0441\u044f\u043a\u0430 \u0441\u0442\u0440\u0430\u0442\u0435\u0433\u0438\u044f \u0438\u043c\u0430 \u0441\u043e\u0431\u0441\u0442\u0432\u0435\u043d\u0430 \u0438\u043c\u043f\u043b\u0435\u043c\u0435\u043d\u0442\u0430\u0446\u0438\u044f \u043d\u0430 \u043e\u0431\u0449 \u0438\u043d\u0442\u0435\u0440\u0444\u0435\u0439\u0441.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">4. \u041a\u043e\u0439 \u043f\u0440\u0438\u043d\u0446\u0438\u043f \u043e\u0442 SOLID \u0441\u0435 \u043f\u043e\u0434\u043f\u043e\u043c\u0430\u0433\u0430 \u043e\u0442 Strategy Pattern?<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">\u041e\u0441\u043d\u043e\u0432\u043d\u043e Open\/Closed Principle (OCP), \u043a\u0430\u043a\u0442\u043e \u0438 Dependency Inversion Principle (DIP), \u0442\u044a\u0439 \u043a\u0430\u0442\u043e Context \u0437\u0430\u0432\u0438\u0441\u0438 \u043e\u0442 \u0430\u0431\u0441\u0442\u0440\u0430\u043a\u0446\u0438\u044f (<code>PaymentStrategy<\/code>), \u0430 \u043d\u0435 \u043e\u0442 \u043a\u043e\u043d\u043a\u0440\u0435\u0442\u043d\u0430 \u0438\u043c\u043f\u043b\u0435\u043c\u0435\u043d\u0442\u0430\u0446\u0438\u044f.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">5. \u041a\u0430\u043a\u0432\u0430 \u0435 \u0440\u0430\u0437\u043b\u0438\u043a\u0430\u0442\u0430 \u043c\u0435\u0436\u0434\u0443 Strategy Pattern \u0438 State Pattern?<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li><code>Strategy Pattern<\/code> \u2013 \u043f\u043e\u0437\u0432\u043e\u043b\u044f\u0432\u0430 \u0438\u0437\u0431\u043e\u0440 \u043d\u0430 \u0440\u0430\u0437\u043b\u0438\u0447\u0435\u043d \u0430\u043b\u0433\u043e\u0440\u0438\u0442\u044a\u043c \u0438\u043b\u0438 \u043f\u043e\u0432\u0435\u0434\u0435\u043d\u0438\u0435.<\/li>\n\n\n\n<li><code>State Pattern<\/code> \u2013 \u043f\u0440\u043e\u043c\u0435\u043d\u044f \u043f\u043e\u0432\u0435\u0434\u0435\u043d\u0438\u0435\u0442\u043e \u043d\u0430 \u043e\u0431\u0435\u043a\u0442\u0430 \u0432 \u0437\u0430\u0432\u0438\u0441\u0438\u043c\u043e\u0441\u0442 \u043e\u0442 \u043d\u0435\u0433\u043e\u0432\u043e\u0442\u043e \u0432\u044a\u0442\u0440\u0435\u0448\u043d\u043e \u0441\u044a\u0441\u0442\u043e\u044f\u043d\u0438\u0435.<\/li>\n<\/ul>\n\n\n\n<h2 class=\"wp-block-heading\">\u041e\u0441\u043d\u043e\u0432\u0435\u043d \u0438\u0437\u0432\u043e\u0434<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">Strategy Pattern \u043f\u043e\u0437\u0432\u043e\u043b\u044f\u0432\u0430 \u0440\u0430\u0437\u043b\u0438\u0447\u043d\u0438 \u0430\u043b\u0433\u043e\u0440\u0438\u0442\u043c\u0438 \u0434\u0430 \u0431\u044a\u0434\u0430\u0442 \u043e\u0440\u0433\u0430\u043d\u0438\u0437\u0438\u0440\u0430\u043d\u0438 \u0432 \u043e\u0442\u0434\u0435\u043b\u043d\u0438 \u043a\u043b\u0430\u0441\u043e\u0432\u0435 \u0438 \u0438\u0437\u043f\u043e\u043b\u0437\u0432\u0430\u043d\u0438 \u0447\u0440\u0435\u0437 \u043e\u0431\u0449 \u0438\u043d\u0442\u0435\u0440\u0444\u0435\u0439\u0441. \u0422\u043e\u0432\u0430 \u043f\u0440\u0430\u0432\u0438 \u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u0435\u0442\u043e \u043f\u043e-\u0433\u044a\u0432\u043a\u0430\u0432\u043e, \u0440\u0430\u0437\u0448\u0438\u0440\u044f\u0435\u043c\u043e \u0438 \u043b\u0435\u0441\u043d\u043e \u0437\u0430 \u043f\u043e\u0434\u0434\u0440\u044a\u0436\u043a\u0430.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">\u0417\u0430\u043f\u043e\u043c\u043d\u0438 \u0437\u0430 \u0438\u043d\u0442\u0435\u0440\u0432\u044e: \u0412\u043c\u0435\u0441\u0442\u043e \u0434\u0430 \u043f\u0440\u043e\u043c\u0435\u043d\u044f\u043c\u0435 \u0435\u0434\u0438\u043d \u043a\u043b\u0430\u0441 \u0441 \u043c\u043d\u043e\u0436\u0435\u0441\u0442\u0432\u043e \u0443\u0441\u043b\u043e\u0432\u043d\u0438 \u043f\u0440\u043e\u0432\u0435\u0440\u043a\u0438, \u0438\u0437\u043f\u043e\u043b\u0437\u0432\u0430\u043c\u0435 \u043e\u0431\u0449 \u0438\u043d\u0442\u0435\u0440\u0444\u0435\u0439\u0441 \u0438 \u043e\u0442\u0434\u0435\u043b\u043d\u0438 \u0441\u0442\u0440\u0430\u0442\u0435\u0433\u0438\u0438, \u043a\u043e\u0438\u0442\u043e \u043c\u043e\u0433\u0430\u0442 \u0434\u0430 \u0441\u0435 \u0441\u043c\u0435\u043d\u044f\u0442 \u043f\u043e \u0432\u0440\u0435\u043c\u0435 \u043d\u0430 \u0438\u0437\u043f\u044a\u043b\u043d\u0435\u043d\u0438\u0435.<\/p>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h1 class=\"wp-block-heading\">Stream API (Streams) \u0432 Java<\/h1>\n\n\n\n<h2 class=\"wp-block-heading\">1. \u041a\u0430\u043a\u0432\u043e \u043f\u0440\u0435\u0434\u0441\u0442\u0430\u0432\u043b\u044f\u0432\u0430 Stream API?<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">Stream API \u0435 \u0432\u044a\u0432\u0435\u0434\u0435\u043d \u0432 Java 8 \u043a\u0430\u0442\u043e \u0447\u0430\u0441\u0442 \u043e\u0442 \u043f\u0430\u043a\u0435\u0442\u0430 <code>java.util.stream<\/code>. \u0422\u043e\u0439 \u043f\u0440\u0435\u0434\u043e\u0441\u0442\u0430\u0432\u044f \u043c\u043e\u0449\u0435\u043d \u043c\u0435\u0445\u0430\u043d\u0438\u0437\u044a\u043c \u0437\u0430 \u043e\u0431\u0440\u0430\u0431\u043e\u0442\u043a\u0430 \u043d\u0430 \u043f\u043e\u0441\u043b\u0435\u0434\u043e\u0432\u0430\u0442\u0435\u043b\u043d\u043e\u0441\u0442\u0438 \u043e\u0442 \u0435\u043b\u0435\u043c\u0435\u043d\u0442\u0438 (Sequences of Elements), \u043d\u0430\u043f\u0440\u0438\u043c\u0435\u0440 \u0434\u0430\u043d\u043d\u0438 \u043e\u0442 Collections \u0438 Arrays, \u0447\u0440\u0435\u0437 \u0434\u0435\u043a\u043b\u0430\u0440\u0430\u0442\u0438\u0432\u0435\u043d \u0438 \u0444\u0443\u043d\u043a\u0446\u0438\u043e\u043d\u0430\u043b\u0435\u043d \u0441\u0442\u0438\u043b \u043d\u0430 \u043f\u0440\u043e\u0433\u0440\u0430\u043c\u0438\u0440\u0430\u043d\u0435 (Declarative and Functional Programming).<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Stream API \u0443\u043b\u0435\u0441\u043d\u044f\u0432\u0430 \u043e\u043f\u0435\u0440\u0430\u0446\u0438\u0438 \u043a\u0430\u0442\u043e:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>\u0424\u0438\u043b\u0442\u0440\u0438\u0440\u0430\u043d\u0435 \u043d\u0430 \u0434\u0430\u043d\u043d\u0438 (Filtering).<\/li>\n\n\n\n<li>\u0422\u0440\u0430\u043d\u0441\u0444\u043e\u0440\u043c\u0438\u0440\u0430\u043d\u0435 \u043d\u0430 \u0434\u0430\u043d\u043d\u0438 (Mapping).<\/li>\n\n\n\n<li>\u0421\u043e\u0440\u0442\u0438\u0440\u0430\u043d\u0435 (Sorting).<\/li>\n\n\n\n<li>\u0413\u0440\u0443\u043f\u0438\u0440\u0430\u043d\u0435 (Grouping).<\/li>\n\n\n\n<li>\u0410\u0433\u0440\u0435\u0433\u0438\u0440\u0430\u043d\u0435 (Aggregation).<\/li>\n\n\n\n<li>\u041d\u0430\u043c\u0438\u0440\u0430\u043d\u0435 \u043d\u0430 \u0440\u0435\u0437\u0443\u043b\u0442\u0430\u0442\u0438 (Reduction).<\/li>\n<\/ul>\n\n\n\n<p class=\"wp-block-paragraph\">\u041e\u0441\u043d\u043e\u0432\u043d\u0430\u0442\u0430 \u0438\u0434\u0435\u044f \u0435 \u0434\u0430 \u043e\u043f\u0438\u0441\u0432\u0430\u043c\u0435 \u043a\u0430\u043a\u0432\u043e \u0438\u0441\u043a\u0430\u043c\u0435 \u0434\u0430 \u043d\u0430\u043f\u0440\u0430\u0432\u0438\u043c \u0441 \u0434\u0430\u043d\u043d\u0438\u0442\u0435, \u0432\u043c\u0435\u0441\u0442\u043e \u0434\u0430 \u043f\u0438\u0448\u0435\u043c \u043f\u043e\u0434\u0440\u043e\u0431\u043d\u043e \u043a\u0430\u043a \u0434\u0430 \u043e\u0431\u0445\u043e\u0436\u0434\u0430\u043c\u0435 \u0438 \u043e\u0431\u0440\u0430\u0431\u043e\u0442\u0432\u0430\u043c\u0435 \u0432\u0441\u0435\u043a\u0438 \u0435\u043b\u0435\u043c\u0435\u043d\u0442.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">\u0412\u0430\u0436\u043d\u043e: Stream \u043d\u0435 \u0435 Collection \u0438 \u043d\u0435 \u0441\u044a\u0445\u0440\u0430\u043d\u044f\u0432\u0430 \u0434\u0430\u043d\u043d\u0438. \u0422\u043e\u0439 \u043f\u0440\u0435\u0434\u0441\u0442\u0430\u0432\u043b\u044f\u0432\u0430 \u043f\u043e\u0441\u043b\u0435\u0434\u043e\u0432\u0430\u0442\u0435\u043b\u043d\u043e\u0441\u0442 \u043e\u0442 \u043e\u043f\u0435\u0440\u0430\u0446\u0438\u0438 \u0437\u0430 \u043e\u0431\u0440\u0430\u0431\u043e\u0442\u043a\u0430 \u043d\u0430 \u0434\u0430\u043d\u043d\u0438 \u043e\u0442 \u043e\u043f\u0440\u0435\u0434\u0435\u043b\u0435\u043d \u0438\u0437\u0442\u043e\u0447\u043d\u0438\u043a.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">2. \u041e\u0441\u043d\u043e\u0432\u043d\u0438 \u0445\u0430\u0440\u0430\u043a\u0442\u0435\u0440\u0438\u0441\u0442\u0438\u043a\u0438 \u043d\u0430 Streams<\/h2>\n\n\n\n<ol class=\"wp-block-list\">\n<li>Declarative Programming: \u041e\u043f\u0438\u0441\u0432\u0430\u043c\u0435 \u0436\u0435\u043b\u0430\u043d\u0430\u0442\u0430 \u043e\u0431\u0440\u0430\u0431\u043e\u0442\u043a\u0430, \u0431\u0435\u0437 \u0434\u0430 \u0443\u043f\u0440\u0430\u0432\u043b\u044f\u0432\u0430\u043c\u0435 \u0440\u044a\u0447\u043d\u043e \u0432\u0441\u044f\u043a\u0430 \u0441\u0442\u044a\u043f\u043a\u0430 \u043e\u0442 \u043e\u0431\u0445\u043e\u0436\u0434\u0430\u043d\u0435\u0442\u043e.<\/li>\n\n\n\n<li>Pipeline: \u041e\u043f\u0435\u0440\u0430\u0446\u0438\u0438\u0442\u0435 \u043c\u043e\u0433\u0430\u0442 \u0434\u0430 \u0431\u044a\u0434\u0430\u0442 \u0441\u0432\u044a\u0440\u0437\u0432\u0430\u043d\u0438 \u043f\u043e\u0441\u043b\u0435\u0434\u043e\u0432\u0430\u0442\u0435\u043b\u043d\u043e \u0432 \u0435\u0434\u043d\u0430 \u043e\u0431\u0440\u0430\u0431\u043e\u0442\u0432\u0430\u0449\u0430 \u0432\u0435\u0440\u0438\u0433\u0430.<\/li>\n\n\n\n<li>Lazy Evaluation: Intermediate Operations \u043d\u0435 \u0441\u0435 \u0438\u0437\u043f\u044a\u043b\u043d\u044f\u0432\u0430\u0442, \u0434\u043e\u043a\u0430\u0442\u043e \u043d\u0435 \u0431\u044a\u0434\u0435 \u0438\u0437\u0432\u0438\u043a\u0430\u043d\u0430 Terminal Operation.<\/li>\n\n\n\n<li>Parallel Processing: Streams \u043c\u043e\u0433\u0430\u0442 \u0434\u0430 \u043e\u0431\u0440\u0430\u0431\u043e\u0442\u0432\u0430\u0442 \u0434\u0430\u043d\u043d\u0438 \u043f\u0430\u0440\u0430\u043b\u0435\u043b\u043d\u043e \u0447\u0440\u0435\u0437 <code>parallelStream()<\/code> \u044d\u0441\u0432\u044d\u043b <code>parallel()<\/code>.<\/li>\n<\/ol>\n\n\n\n<h2 class=\"wp-block-heading\">3. \u041f\u0440\u0438\u043c\u0435\u0440\u0438 \u0437\u0430 \u0438\u0437\u043f\u043e\u043b\u0437\u0432\u0430\u043d\u0435 \u043d\u0430 Stream API<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">\u0417\u0430 \u043f\u0440\u0438\u043c\u0435\u0440\u0438\u0442\u0435 \u0449\u0435 \u0438\u0437\u043f\u043e\u043b\u0437\u0432\u0430\u043c\u0435 \u0441\u043b\u0435\u0434\u043d\u0438\u044f \u0441\u043f\u0438\u0441\u044a\u043a:<\/p>\n\n\n<div class=\"wp-block-code\">\n\t<div class=\"cm-editor\">\n\t\t<div class=\"cm-scroller\">\n\t\t\t\n<pre>\n<code><div class=\"cm-line\">List&lt;Integer&gt; numbers =<\/div><div class=\"cm-line\">        Arrays.asList(10, 5, 20, 15, 30, 25);<\/div><\/code><\/pre>\n\t\t<\/div>\n\t<\/div>\n<\/div>\n\n\n<h3 class=\"wp-block-heading\">3.1. \u0424\u0438\u043b\u0442\u0440\u0438\u0440\u0430\u043d\u0435 \u043d\u0430 \u0434\u0430\u043d\u043d\u0438 (Filtering)<\/h3>\n\n\n\n<p class=\"wp-block-paragraph\">\u0430\u0440\u0433\u0430 <code>filter()<\/code> \u0438\u0437\u0431\u0438\u0440\u0430 \u0441\u0430\u043c\u043e \u0435\u043b\u0435\u043c\u0435\u043d\u0442\u0438\u0442\u0435, \u043a\u043e\u0438\u0442\u043e \u043e\u0442\u0433\u043e\u0432\u0430\u0440\u044f\u0442 \u043d\u0430 \u043e\u043f\u0440\u0435\u0434\u0435\u043b\u0435\u043d\u043e \u0443\u0441\u043b\u043e\u0432\u0438\u0435 (Predicate).<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">\u041f\u0440\u0438\u043c\u0435\u0440: \u041d\u0430\u043c\u0438\u0440\u0430\u043d\u0435 \u043d\u0430 \u0447\u0438\u0441\u043b\u0430\u0442\u0430, \u043f\u043e-\u0433\u043e\u043b\u0435\u043c\u0438 \u043e\u0442 15.<\/p>\n\n\n<div class=\"wp-block-code\">\n\t<div class=\"cm-editor\">\n\t\t<div class=\"cm-scroller\">\n\t\t\t\n<pre>\n<code><div class=\"cm-line\">List&lt;Integer&gt; result = numbers.stream()<\/div><div class=\"cm-line\">        .filter(n -&gt; n &gt; 15)<\/div><div class=\"cm-line\">        .collect(Collectors.toList());<\/div><div class=\"cm-line\"><\/div><div class=\"cm-line\">System.out.println(result);<\/div><\/code><\/pre>\n\t\t<\/div>\n\t<\/div>\n<\/div>\n\n\n<p class=\"wp-block-paragraph\">\u04ae\u0440 \u0434\u04af\u043d:<\/p>\n\n\n<div class=\"wp-block-code\">\n\t<div class=\"cm-editor\">\n\t\t<div class=\"cm-scroller\">\n\t\t\t\n<pre>\n<code><div class=\"cm-line\">[20, 30, 25]<\/div><\/code><\/pre>\n\t\t<\/div>\n\t<\/div>\n<\/div>\n\n\n<h3 class=\"wp-block-heading\">3.2. \u0422\u0440\u0430\u043d\u0441\u0444\u043e\u0440\u043c\u0438\u0440\u0430\u043d\u0435 \u043d\u0430 \u0434\u0430\u043d\u043d\u0438 (Mapping)<\/h3>\n\n\n\n<p class=\"wp-block-paragraph\">\u0430\u0440\u0433\u0430 <code>map()<\/code> \u0442\u0440\u0430\u043d\u0441\u0444\u043e\u0440\u043c\u0438\u0440\u0430 \u0432\u0441\u0435\u043a\u0438 \u0435\u043b\u0435\u043c\u0435\u043d\u0442 \u0447\u0440\u0435\u0437 \u0437\u0430\u0434\u0430\u0434\u0435\u043d\u0430 \u0444\u0443\u043d\u043a\u0446\u0438\u044f (Function).<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">\u041f\u0440\u0438\u043c\u0435\u0440: \u0423\u043c\u043d\u043e\u0436\u0430\u0432\u0430\u043d\u0435 \u043d\u0430 \u0432\u0441\u0438\u0447\u043a\u0438 \u0447\u0438\u0441\u043b\u0430 \u043f\u043e 2.<\/p>\n\n\n<div class=\"wp-block-code\">\n\t<div class=\"cm-editor\">\n\t\t<div class=\"cm-scroller\">\n\t\t\t\n<pre>\n<code><div class=\"cm-line\">List&lt;Integer&gt; result = numbers.stream()<\/div><div class=\"cm-line\">        .map(n -&gt; n * 2)<\/div><div class=\"cm-line\">        .collect(Collectors.toList());<\/div><div class=\"cm-line\"><\/div><div class=\"cm-line\">System.out.println(result);<\/div><\/code><\/pre>\n\t\t<\/div>\n\t<\/div>\n<\/div>\n\n\n<p class=\"wp-block-paragraph\">\u04ae\u0440 \u0434\u04af\u043d:<\/p>\n\n\n<div class=\"wp-block-code\">\n\t<div class=\"cm-editor\">\n\t\t<div class=\"cm-scroller\">\n\t\t\t\n<pre>\n<code><div class=\"cm-line\">[20, 10, 40, 30, 60, 50]<\/div><\/code><\/pre>\n\t\t<\/div>\n\t<\/div>\n<\/div>\n\n\n<h3 class=\"wp-block-heading\">3.3. \u0410\u0433\u0440\u0435\u0433\u0438\u0440\u0430\u043d\u0435 \u043d\u0430 \u0434\u0430\u043d\u043d\u0438 (Reducing)<\/h3>\n\n\n\n<p class=\"wp-block-paragraph\">\u0430\u0440\u0433\u0430 <code>reduce()<\/code> \u043a\u043e\u043c\u0431\u0438\u043d\u0438\u0440\u0430 \u0435\u043b\u0435\u043c\u0435\u043d\u0442\u0438\u0442\u0435 \u043d\u0430 Stream \u0432 \u0435\u0434\u043d\u0430 \u043a\u0440\u0430\u0439\u043d\u0430 \u0441\u0442\u043e\u0439\u043d\u043e\u0441\u0442.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">\u041f\u0440\u0438\u043c\u0435\u0440: \u0418\u0437\u0447\u0438\u0441\u043b\u044f\u0432\u0430\u043d\u0435 \u043d\u0430 \u0441\u0443\u043c\u0430\u0442\u0430 \u043d\u0430 \u0432\u0441\u0438\u0447\u043a\u0438 \u0447\u0438\u0441\u043b\u0430.<\/p>\n\n\n<div class=\"wp-block-code\">\n\t<div class=\"cm-editor\">\n\t\t<div class=\"cm-scroller\">\n\t\t\t\n<pre>\n<code><div class=\"cm-line\">int sum = numbers.stream()<\/div><div class=\"cm-line\">        .reduce(0, (a, b) -&gt; a + b);<\/div><div class=\"cm-line\"><\/div><div class=\"cm-line\">System.out.println(sum);<\/div><\/code><\/pre>\n\t\t<\/div>\n\t<\/div>\n<\/div>\n\n\n<p class=\"wp-block-paragraph\">\u04ae\u0440 \u0434\u04af\u043d:<\/p>\n\n\n<div class=\"wp-block-code\">\n\t<div class=\"cm-editor\">\n\t\t<div class=\"cm-scroller\">\n\t\t\t\n<pre>\n<code><div class=\"cm-line\">105<\/div><\/code><\/pre>\n\t\t<\/div>\n\t<\/div>\n<\/div>\n\n\n<p class=\"wp-block-paragraph\">\u041c\u043e\u0436\u0435\u043c \u0434\u0430 \u0438\u0437\u043f\u043e\u043b\u0437\u0432\u0430\u043c\u0435 \u0438 Method Reference:<\/p>\n\n\n<div class=\"wp-block-code\">\n\t<div class=\"cm-editor\">\n\t\t<div class=\"cm-scroller\">\n\t\t\t\n<pre>\n<code><div class=\"cm-line\">int sum = numbers.stream()<\/div><div class=\"cm-line\">        .reduce(0, Integer::sum);<\/div><\/code><\/pre>\n\t\t<\/div>\n\t<\/div>\n<\/div>\n\n\n<h3 class=\"wp-block-heading\">3.4. \u0421\u043e\u0440\u0442\u0438\u0440\u0430\u043d\u0435 (Sorting)<\/h3>\n\n\n\n<p class=\"wp-block-paragraph\">\u0430\u0440\u0433\u0430 <code>sorted()<\/code> \u0441\u043e\u0440\u0442\u0438\u0440\u0430 \u0435\u043b\u0435\u043c\u0435\u043d\u0442\u0438\u0442\u0435 \u043f\u043e \u0435\u0441\u0442\u0435\u0441\u0442\u0432\u0435\u043d\u0438\u044f \u0438\u043c \u0440\u0435\u0434 (Natural Order) \u0438\u043b\u0438 \u0447\u0440\u0435\u0437 Comparator.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">\u041f\u0440\u0438\u043c\u0435\u0440: \u0412\u044a\u0437\u0445\u043e\u0434\u044f\u0449\u043e \u0441\u043e\u0440\u0442\u0438\u0440\u0430\u043d\u0435.<\/p>\n\n\n<div class=\"wp-block-code\">\n\t<div class=\"cm-editor\">\n\t\t<div class=\"cm-scroller\">\n\t\t\t\n<pre>\n<code><div class=\"cm-line\">List&lt;Integer&gt; result = numbers.stream()<\/div><div class=\"cm-line\">        .sorted()<\/div><div class=\"cm-line\">        .collect(Collectors.toList());<\/div><div class=\"cm-line\"><\/div><div class=\"cm-line\">System.out.println(result);<\/div><\/code><\/pre>\n\t\t<\/div>\n\t<\/div>\n<\/div>\n\n\n<p class=\"wp-block-paragraph\">\u04ae\u0440 \u0434\u04af\u043d:<\/p>\n\n\n<div class=\"wp-block-code\">\n\t<div class=\"cm-editor\">\n\t\t<div class=\"cm-scroller\">\n\t\t\t\n<pre>\n<code><div class=\"cm-line\">[5, 10, 15, 20, 25, 30]<\/div><\/code><\/pre>\n\t\t<\/div>\n\t<\/div>\n<\/div>\n\n\n<p class=\"wp-block-paragraph\">\u041f\u0440\u0438\u043c\u0435\u0440: \u041d\u0438\u0437\u0445\u043e\u0434\u044f\u0449\u043e \u0441\u043e\u0440\u0442\u0438\u0440\u0430\u043d\u0435.<\/p>\n\n\n<div class=\"wp-block-code\">\n\t<div class=\"cm-editor\">\n\t\t<div class=\"cm-scroller\">\n\t\t\t\n<pre>\n<code><div class=\"cm-line\">List&lt;Integer&gt; result = numbers.stream()<\/div><div class=\"cm-line\">        .sorted(Comparator.reverseOrder())<\/div><div class=\"cm-line\">        .collect(Collectors.toList());<\/div><\/code><\/pre>\n\t\t<\/div>\n\t<\/div>\n<\/div>\n\n\n<h3 class=\"wp-block-heading\">3.5. \u0421\u044a\u0431\u0438\u0440\u0430\u043d\u0435 \u043d\u0430 \u0440\u0435\u0437\u0443\u043b\u0442\u0430\u0442\u0438\u0442\u0435 (Collecting)<\/h3>\n\n\n\n<p class=\"wp-block-paragraph\">\u0430\u0440\u0433\u0430 <code>collect()<\/code> \u0441\u044a\u0431\u0438\u0440\u0430 \u043e\u0431\u0440\u0430\u0431\u043e\u0442\u0435\u043d\u0438\u0442\u0435 \u0435\u043b\u0435\u043c\u0435\u043d\u0442\u0438 \u0432 Collection \u0438\u043b\u0438 \u0434\u0440\u0443\u0433 \u0440\u0435\u0437\u0443\u043b\u0442\u0430\u0442\u0435\u043d \u043a\u043e\u043d\u0442\u0435\u0439\u043d\u0435\u0440.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">\u041f\u0440\u0438\u043c\u0435\u0440: \u0421\u044a\u0437\u0434\u0430\u0432\u0430\u043d\u0435 \u043d\u0430 List \u0441 \u0447\u0435\u0442\u043d\u0438\u0442\u0435 \u0447\u0438\u0441\u043b\u0430.<\/p>\n\n\n<div class=\"wp-block-code\">\n\t<div class=\"cm-editor\">\n\t\t<div class=\"cm-scroller\">\n\t\t\t\n<pre>\n<code><div class=\"cm-line\">List&lt;Integer&gt; evenNumbers = numbers.stream()<\/div><div class=\"cm-line\">        .filter(n -&gt; n % 2 == 0)<\/div><div class=\"cm-line\">        .collect(Collectors.toList());<\/div><div class=\"cm-line\"><\/div><div class=\"cm-line\">System.out.println(evenNumbers);<\/div><\/code><\/pre>\n\t\t<\/div>\n\t<\/div>\n<\/div>\n\n\n<p class=\"wp-block-paragraph\">\u04ae\u0440 \u0434\u04af\u043d:<\/p>\n\n\n<div class=\"wp-block-code\">\n\t<div class=\"cm-editor\">\n\t\t<div class=\"cm-scroller\">\n\t\t\t\n<pre>\n<code><div class=\"cm-line\">[10, 20, 30]<\/div><\/code><\/pre>\n\t\t<\/div>\n\t<\/div>\n<\/div>\n\n\n<p class=\"wp-block-paragraph\">\u041f\u0440\u0438 Java 16 \u0438 \u043f\u043e-\u043d\u043e\u0432\u0438 \u0432\u0435\u0440\u0441\u0438\u0438 \u043c\u043e\u0436\u0435\u043c \u0434\u0430 \u0438\u0437\u043f\u043e\u043b\u0437\u0432\u0430\u043c\u0435 \u0438:<\/p>\n\n\n<div class=\"wp-block-code\">\n\t<div class=\"cm-editor\">\n\t\t<div class=\"cm-scroller\">\n\t\t\t\n<pre>\n<code><div class=\"cm-line\">List&lt;Integer&gt; evenNumbers = numbers.stream()<\/div><div class=\"cm-line\">        .filter(n -&gt; n % 2 == 0)<\/div><div class=\"cm-line\">        .toList();<\/div><\/code><\/pre>\n\t\t<\/div>\n\t<\/div>\n<\/div>\n\n\n<p class=\"wp-block-paragraph\">\u0427\u0443\u0445\u0430\u043b: <code>Stream.toList()<\/code> \u0432\u0440\u044a\u0449\u0430 List, \u043a\u043e\u0439\u0442\u043e \u043d\u0435 \u043f\u043e\u0437\u0432\u043e\u043b\u044f\u0432\u0430 \u0441\u0442\u0440\u0443\u043a\u0442\u0443\u0440\u043d\u0438 \u043f\u0440\u043e\u043c\u0435\u043d\u0438 (Unmodifiable List). \u0417\u0430 \u0438\u0437\u043c\u0435\u043d\u044f\u0435\u043c \u0441\u043f\u0438\u0441\u044a\u043a \u0438\u0437\u043f\u043e\u043b\u0437\u0432\u0430\u043c\u0435 <code>Collectors.toList()<\/code> \u044d\u0441\u0432\u044d\u043b <code>Collectors.toCollection(ArrayList::new)<\/code>.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">3.6. \u041f\u0430\u0440\u0430\u043b\u0435\u043b\u043d\u0430 \u043e\u0431\u0440\u0430\u0431\u043e\u0442\u043a\u0430 (Parallel Streams)<\/h3>\n\n\n\n<p class=\"wp-block-paragraph\">Parallel Streams \u043f\u043e\u0437\u0432\u043e\u043b\u044f\u0432\u0430\u0442 \u043e\u0431\u0440\u0430\u0431\u043e\u0442\u043a\u0430\u0442\u0430 \u043d\u0430 \u0435\u043b\u0435\u043c\u0435\u043d\u0442\u0438 \u0447\u0440\u0435\u0437 \u043c\u043d\u043e\u0436\u0435\u0441\u0442\u0432\u043e \u043d\u0438\u0448\u043a\u0438 (Threads), \u043a\u0430\u0442\u043e \u0438\u0437\u043f\u043e\u043b\u0437\u0432\u0430\u0442 ForkJoin Framework \u0438 \u043e\u0431\u0438\u043a\u043d\u043e\u0432\u0435\u043d\u043e \u043e\u0431\u0449\u0438\u044f <code>ForkJoinPool<\/code>.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">\u0416\u0438\u0448\u044d\u044d:<\/p>\n\n\n<div class=\"wp-block-code\">\n\t<div class=\"cm-editor\">\n\t\t<div class=\"cm-scroller\">\n\t\t\t\n<pre>\n<code><div class=\"cm-line\">List&lt;Integer&gt; numbers =<\/div><div class=\"cm-line\">        IntStream.rangeClosed(1, 1000)<\/div><div class=\"cm-line\">                .boxed()<\/div><div class=\"cm-line\">                .toList();<\/div><div class=\"cm-line\"><\/div><div class=\"cm-line\">int sum = numbers.parallelStream()<\/div><div class=\"cm-line\">        .mapToInt(Integer::intValue)<\/div><div class=\"cm-line\">        .sum();<\/div><div class=\"cm-line\"><\/div><div class=\"cm-line\">System.out.println(sum);<\/div><\/code><\/pre>\n\t\t<\/div>\n\t<\/div>\n<\/div>\n\n\n<p class=\"wp-block-paragraph\">\u04ae\u0440 \u0434\u04af\u043d:<\/p>\n\n\n<div class=\"wp-block-code\">\n\t<div class=\"cm-editor\">\n\t\t<div class=\"cm-scroller\">\n\t\t\t\n<pre>\n<code><div class=\"cm-line\">500500<\/div><\/code><\/pre>\n\t\t<\/div>\n\t<\/div>\n<\/div>\n\n\n<p class=\"wp-block-paragraph\">\u0412\u0430\u0436\u043d\u043e: Parallel Streams \u043d\u0435 \u0433\u0430\u0440\u0430\u043d\u0442\u0438\u0440\u0430\u0442 \u043f\u043e-\u0434\u043e\u0431\u0440\u0430 \u043f\u0440\u043e\u0438\u0437\u0432\u043e\u0434\u0438\u0442\u0435\u043b\u043d\u043e\u0441\u0442. \u0417\u0430 \u043c\u0430\u043b\u043a\u0438 \u043a\u043e\u043b\u0435\u043a\u0446\u0438\u0438 \u0438\u043b\u0438 \u043e\u043f\u0435\u0440\u0430\u0446\u0438\u0438 \u0441 \u043d\u0438\u0441\u043a\u0430 \u0438\u0437\u0447\u0438\u0441\u043b\u0438\u0442\u0435\u043b\u043d\u0430 \u0441\u043b\u043e\u0436\u043d\u043e\u0441\u0442 \u043f\u0430\u0440\u0430\u043b\u0435\u043b\u043d\u0430\u0442\u0430 \u043e\u0431\u0440\u0430\u0431\u043e\u0442\u043a\u0430 \u043c\u043e\u0436\u0435 \u0434\u043e\u0440\u0438 \u0434\u0430 \u0431\u044a\u0434\u0435 \u043f\u043e-\u0431\u0430\u0432\u043d\u0430 \u043f\u043e\u0440\u0430\u0434\u0438 \u0434\u043e\u043f\u044a\u043b\u043d\u0438\u0442\u0435\u043b\u043d\u0438\u0442\u0435 \u0440\u0430\u0437\u0445\u043e\u0434\u0438 \u0437\u0430 \u0443\u043f\u0440\u0430\u0432\u043b\u0435\u043d\u0438\u0435 \u0438 \u0441\u0438\u043d\u0445\u0440\u043e\u043d\u0438\u0437\u0430\u0446\u0438\u044f.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">4. \u0421\u0442\u0440\u0443\u043a\u0442\u0443\u0440\u0430 \u043d\u0430 Stream Pipeline<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">Stream Pipeline \u0441\u0435 \u0441\u044a\u0441\u0442\u043e\u0438 \u043e\u0442 \u0442\u0440\u0438 \u043e\u0441\u043d\u043e\u0432\u043d\u0438 \u0447\u0430\u0441\u0442\u0438:<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">1. Source (\u0418\u0437\u0442\u043e\u0447\u043d\u0438\u043a)<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Collection, Array, Stream.of()<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">2. Intermediate Operations<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">filter() \u2192 map() \u2192 sorted()<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Lazy Evaluation<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">3. Terminal Operation<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">collect() \/ reduce() \/ count()<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Triggers Execution<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">4.1. Source (\u0418\u0437\u0442\u043e\u0447\u043d\u0438\u043a)<\/h3>\n\n\n\n<p class=\"wp-block-paragraph\">\u0422\u043e\u0432\u0430 \u0435 \u0438\u0437\u0442\u043e\u0447\u043d\u0438\u043a\u044a\u0442 \u043d\u0430 \u0434\u0430\u043d\u043d\u0438\u0442\u0435, \u043a\u043e\u0438\u0442\u043e \u0449\u0435 \u0431\u044a\u0434\u0430\u0442 \u043e\u0431\u0440\u0430\u0431\u043e\u0442\u0432\u0430\u043d\u0438.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">\u041f\u0440\u0438\u043c\u0435\u0440\u0438:<\/p>\n\n\n<div class=\"wp-block-code\">\n\t<div class=\"cm-editor\">\n\t\t<div class=\"cm-scroller\">\n\t\t\t\n<pre>\n<code><div class=\"cm-line\">List&lt;String&gt; names =<\/div><div class=\"cm-line\">        Arrays.asList(&quot;Ivan&quot;, &quot;Maria&quot;, &quot;Peter&quot;);<\/div><div class=\"cm-line\"><\/div><div class=\"cm-line\">Stream&lt;String&gt; stream1 = names.stream();<\/div><div class=\"cm-line\"><\/div><div class=\"cm-line\">Stream&lt;Integer&gt; stream2 =<\/div><div class=\"cm-line\">        Stream.of(1, 2, 3, 4, 5);<\/div><div class=\"cm-line\"><\/div><div class=\"cm-line\">IntStream stream3 =<\/div><div class=\"cm-line\">        IntStream.range(1, 10);<\/div><\/code><\/pre>\n\t\t<\/div>\n\t<\/div>\n<\/div>\n\n\n<h3 class=\"wp-block-heading\">4.2. Intermediate Operations<\/h3>\n\n\n\n<p class=\"wp-block-paragraph\">\u0422\u043e\u0432\u0430 \u0441\u0430 \u043c\u0435\u0436\u0434\u0438\u043d\u043d\u0438 \u043e\u043f\u0435\u0440\u0430\u0446\u0438\u0438, \u043a\u043e\u0438\u0442\u043e \u043e\u0431\u0440\u0430\u0431\u043e\u0442\u0432\u0430\u0442 \u0435\u043b\u0435\u043c\u0435\u043d\u0442\u0438\u0442\u0435 \u0438 \u0432\u0440\u044a\u0449\u0430\u0442 \u043d\u043e\u0432 Stream. \u0422\u0435 \u0441\u0430 Lazy, \u0442.\u0435. \u043d\u0435 \u0437\u0430\u043f\u043e\u0447\u0432\u0430\u0442 \u0440\u0435\u0430\u043b\u043d\u0430 \u043e\u0431\u0440\u0430\u0431\u043e\u0442\u043a\u0430 \u043f\u0440\u0435\u0434\u0438 \u0438\u0437\u0432\u0438\u043a\u0432\u0430\u043d\u0435\u0442\u043e \u043d\u0430 Terminal Operation.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">\u041e\u0441\u043d\u043e\u0432\u043d\u0438 Intermediate Operations:<\/p>\n\n\n\n<figure class=\"wp-block-table\"><table class=\"has-fixed-layout\"><tbody><tr><th>\u041c\u0435\u0442\u043e\u0434<\/th><th>\u0417\u043e\u0440\u0438\u043b\u0433\u043e<\/th><\/tr><tr><td><code>filter()<\/code><\/td><td>\u0424\u0438\u043b\u0442\u0440\u0438\u0440\u0430 \u0435\u043b\u0435\u043c\u0435\u043d\u0442\u0438\u0442\u0435 \u0441\u043f\u043e\u0440\u0435\u0434 \u0443\u0441\u043b\u043e\u0432\u0438\u0435 (Predicate).<\/td><\/tr><tr><td><code>map()<\/code><\/td><td>\u0422\u0440\u0430\u043d\u0441\u0444\u043e\u0440\u043c\u0438\u0440\u0430 \u0432\u0441\u0435\u043a\u0438 \u0435\u043b\u0435\u043c\u0435\u043d\u0442.<\/td><\/tr><tr><td><code>flatMap()<\/code><\/td><td>\u041f\u0440\u0435\u043e\u0431\u0440\u0430\u0437\u0443\u0432\u0430 \u0432\u043b\u043e\u0436\u0435\u043d\u0438 Streams \u0432 \u0435\u0434\u0438\u043d \u043e\u0431\u0449 Stream.<\/td><\/tr><tr><td><code>distinct()<\/code><\/td><td>\u041f\u0440\u0435\u043c\u0430\u0445\u0432\u0430 \u0434\u0443\u0431\u043b\u0438\u0440\u0430\u0449\u0438\u0442\u0435 \u0441\u0435 \u0435\u043b\u0435\u043c\u0435\u043d\u0442\u0438 \u0441\u043f\u043e\u0440\u0435\u0434 <code>equals()<\/code>.<\/td><\/tr><tr><td><code>sorted()<\/code><\/td><td>\u0421\u043e\u0440\u0442\u0438\u0440\u0430 \u0435\u043b\u0435\u043c\u0435\u043d\u0442\u0438\u0442\u0435.<\/td><\/tr><tr><td><code>peek()<\/code><\/td><td>\u041f\u043e\u0437\u0432\u043e\u043b\u044f\u0432\u0430 \u043d\u0430\u0431\u043b\u044e\u0434\u0435\u043d\u0438\u0435 \u043d\u0430 \u0435\u043b\u0435\u043c\u0435\u043d\u0442\u0438\u0442\u0435, \u043e\u0431\u0438\u043a\u043d\u043e\u0432\u0435\u043d\u043e \u0437\u0430 Debugging.<\/td><\/tr><tr><td><code>limit()<\/code><\/td><td>\u041e\u0433\u0440\u0430\u043d\u0438\u0447a\u0432\u0430 \u0431\u0440\u043e\u044f \u043d\u0430 \u0435\u043b\u0435\u043c\u0435\u043d\u0442\u0438\u0442\u0435.<\/td><\/tr><tr><td><code>skip()<\/code><\/td><td>\u041f\u0440\u043e\u043f\u0443\u0441\u043a\u0430 \u043e\u043f\u0440\u0435\u0434\u0435\u043b\u0435\u043d \u0431\u0440\u043e\u0439 \u043d\u0430\u0447\u0430\u043b\u043d\u0438 \u0435\u043b\u0435\u043c\u0435\u043d\u0442\u0438.<\/td><\/tr><\/tbody><\/table><\/figure>\n\n\n\n<p class=\"wp-block-paragraph\">\u0416\u0438\u0448\u044d\u044d \u043d\u044c <code>flatMap()<\/code>:<\/p>\n\n\n<div class=\"wp-block-code\">\n\t<div class=\"cm-editor\">\n\t\t<div class=\"cm-scroller\">\n\t\t\t\n<pre>\n<code><div class=\"cm-line\">List&lt;List&lt;String&gt;&gt; names = Arrays.asList(<\/div><div class=\"cm-line\">        Arrays.asList(&quot;Ivan&quot;, &quot;Maria&quot;),<\/div><div class=\"cm-line\">        Arrays.asList(&quot;Peter&quot;, &quot;Anna&quot;)<\/div><div class=\"cm-line\">);<\/div><div class=\"cm-line\"><\/div><div class=\"cm-line\">List&lt;String&gt; result = names.stream()<\/div><div class=\"cm-line\">        .flatMap(List::stream)<\/div><div class=\"cm-line\">        .toList();<\/div><div class=\"cm-line\"><\/div><div class=\"cm-line\">System.out.println(result);<\/div><\/code><\/pre>\n\t\t<\/div>\n\t<\/div>\n<\/div>\n\n\n<p class=\"wp-block-paragraph\">\u04ae\u0440 \u0434\u04af\u043d:<\/p>\n\n\n<div class=\"wp-block-code\">\n\t<div class=\"cm-editor\">\n\t\t<div class=\"cm-scroller\">\n\t\t\t\n<pre>\n<code><div class=\"cm-line\">[Ivan, Maria, Peter, Anna]<\/div><\/code><\/pre>\n\t\t<\/div>\n\t<\/div>\n<\/div>\n\n\n<p class=\"wp-block-paragraph\"><code>flatMap()<\/code> \u0435 \u043e\u0441\u043e\u0431\u0435\u043d\u043e \u043f\u043e\u043b\u0435\u0437\u0435\u043d, \u043a\u043e\u0433\u0430\u0442\u043e \u0442\u0440\u044f\u0431\u0432\u0430 \u0434\u0430 \u043e\u0431\u0440\u0430\u0431\u043e\u0442\u0432\u0430\u043c\u0435 \u0432\u043b\u043e\u0436\u0435\u043d\u0438 Collections.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">4.3. Terminal Operations<\/h3>\n\n\n\n<p class=\"wp-block-paragraph\">Terminal Operations \u0437\u0430\u0432\u044a\u0440\u0448\u0432\u0430\u0442 Stream Pipeline \u0438 \u0437\u0430\u0434\u0435\u0439\u0441\u0442\u0432\u0430\u0442 \u0438\u0437\u043f\u044a\u043b\u043d\u0435\u043d\u0438\u0435\u0442\u043e \u043d\u0430 \u043c\u0435\u0436\u0434\u0438\u043d\u043d\u0438\u0442\u0435 \u043e\u043f\u0435\u0440\u0430\u0446\u0438\u0438.<\/p>\n\n\n\n<figure class=\"wp-block-table\"><table class=\"has-fixed-layout\"><tbody><tr><th>\u041c\u0435\u0442\u043e\u0434<\/th><th>\u0417\u043e\u0440\u0438\u043b\u0433\u043e<\/th><\/tr><tr><td><code>forEach()<\/code><\/td><td>\u0418\u0437\u043f\u044a\u043b\u043d\u044f\u0432\u0430 \u0434\u0435\u0439\u0441\u0442\u0432\u0438\u0435 \u0437\u0430 \u0432\u0441\u0435\u043a\u0438 \u0435\u043b\u0435\u043c\u0435\u043d\u0442.<\/td><\/tr><tr><td><code>reduce()<\/code><\/td><td>\u041a\u043e\u043c\u0431\u0438\u043d\u0438\u0440\u0430 \u0435\u043b\u0435\u043c\u0435\u043d\u0442\u0438\u0442\u0435 \u0432 \u0435\u0434\u043d\u0430 \u0441\u0442\u043e\u0439\u043d\u043e\u0441\u0442.<\/td><\/tr><tr><td><code>collect()<\/code><\/td><td>\u0421\u044a\u0431\u0438\u0440\u0430 \u0440\u0435\u0437\u0443\u043b\u0442\u0430\u0442\u0438\u0442\u0435 \u0432 Collection \u0438\u043b\u0438 \u0434\u0440\u0443\u0433 \u043a\u043e\u043d\u0442\u0435\u0439\u043d\u0435\u0440.<\/td><\/tr><tr><td><code>count()<\/code><\/td><td>\u0412\u0440\u044a\u0449\u0430 \u0431\u0440\u043e\u044f \u043d\u0430 \u0435\u043b\u0435\u043c\u0435\u043d\u0442\u0438\u0442\u0435.<\/td><\/tr><tr><td><code>toArray()<\/code><\/td><td>\u041f\u0440\u0435\u043e\u0431\u0440\u0430\u0437\u0443\u0432\u0430 \u0435\u043b\u0435\u043c\u0435\u043d\u0442\u0438\u0442\u0435 \u0432 Array.<\/td><\/tr><tr><td><code>anyMatch()<\/code><\/td><td>\u041f\u0440\u043e\u0432\u0435\u0440\u044f\u0432\u0430 \u0434\u0430\u043b\u0438 \u043f\u043e\u043d\u0435 \u0435\u0434\u0438\u043d \u0435\u043b\u0435\u043c\u0435\u043d\u0442 \u043e\u0442\u0433\u043e\u0432\u0430\u0440\u044f \u043d\u0430 \u0443\u0441\u043b\u043e\u0432\u0438\u0435.<\/td><\/tr><tr><td><code>allMatch()<\/code><\/td><td>\u041f\u0440\u043e\u0432\u0435\u0440\u044f\u0432\u0430 \u0434\u0430\u043b\u0438 \u0432\u0441\u0438\u0447\u043a\u0438 \u0435\u043b\u0435\u043c\u0435\u043d\u0442\u0438 \u043e\u0442\u0433\u043e\u0432\u0430\u0440\u044f\u0442 \u043d\u0430 \u0443\u0441\u043b\u043e\u0432\u0438\u0435.<\/td><\/tr><tr><td><code>noneMatch()<\/code><\/td><td>\u041f\u0440\u043e\u0432\u0435\u0440\u044f\u0432\u0430 \u0434\u0430\u043b\u0438 \u043d\u0438\u0442\u043e \u0435\u0434\u0438\u043d \u0435\u043b\u0435\u043c\u0435\u043d\u0442 \u043d\u0435 \u043e\u0442\u0433\u043e\u0432\u0430\u0440\u044f \u043d\u0430 \u0443\u0441\u043b\u043e\u0432\u0438\u0435.<\/td><\/tr><tr><td><code>findFirst()<\/code><\/td><td>\u0412\u0440\u044a\u0449\u0430 \u043f\u044a\u0440\u0432\u0438\u044f \u0435\u043b\u0435\u043c\u0435\u043d\u0442 \u0441\u043f\u043e\u0440\u0435\u0434 \u0440\u0435\u0434\u0430 \u043d\u0430 Stream.<\/td><\/tr><tr><td><code>findAny()<\/code><\/td><td>\u0412\u0440\u044a\u0449\u0430 \u043f\u0440\u043e\u0438\u0437\u0432\u043e\u043b\u0435\u043d \u0435\u043b\u0435\u043c\u0435\u043d\u0442 \u043e\u0442 Stream.<\/td><\/tr><tr><td><code>max()<\/code><\/td><td>\u041d\u0430\u043c\u0438\u0440\u0430 \u043c\u0430\u043a\u0441\u0438\u043c\u0430\u043b\u043d\u0438\u044f \u0435\u043b\u0435\u043c\u0435\u043d\u0442.<\/td><\/tr><tr><td><code>min()<\/code><\/td><td>\u041d\u0430\u043c\u0438\u0440\u0430 \u043c\u0438\u043d\u0438\u043c\u0430\u043b\u043d\u0438\u044f \u0435\u043b\u0435\u043c\u0435\u043d\u0442.<\/td><\/tr><\/tbody><\/table><\/figure>\n\n\n\n<p class=\"wp-block-paragraph\">\u041d\u044f\u043a\u043e\u0438 Terminal Operations \u0432\u0440\u044a\u0449\u0430\u0442 <code>Optional<\/code>, \u043d\u0430\u043f\u0440\u0438\u043c\u0435\u0440 <code>findFirst()<\/code>, <code>findAny()<\/code>, <code>max()<\/code> \u0431\u043e\u043b\u043e\u043d <code>min()<\/code>, \u0437\u0430\u0449\u043e\u0442\u043e Stream \u043c\u043e\u0436\u0435 \u0434\u0430 \u0431\u044a\u0434\u0435 \u043f\u0440\u0430\u0437\u0435\u043d.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">\u0416\u0438\u0448\u044d\u044d:<\/p>\n\n\n<div class=\"wp-block-code\">\n\t<div class=\"cm-editor\">\n\t\t<div class=\"cm-scroller\">\n\t\t\t\n<pre>\n<code><div class=\"cm-line\">Optional&lt;Integer&gt; result = numbers.stream()<\/div><div class=\"cm-line\">        .filter(n -&gt; n &gt; 20)<\/div><div class=\"cm-line\">        .findFirst();<\/div><div class=\"cm-line\"><\/div><div class=\"cm-line\">result.ifPresent(System.out::println);<\/div><\/code><\/pre>\n\t\t<\/div>\n\t<\/div>\n<\/div>\n\n\n<h2 class=\"wp-block-heading\">5. Lazy Evaluation (\u041b\u0435\u043d\u0438\u0432\u043e \u0438\u0437\u043f\u044a\u043b\u043d\u0435\u043d\u0438\u0435)<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">\u0415\u0434\u043d\u0430 \u043e\u0442 \u043d\u0430\u0439-\u0432\u0430\u0436\u043d\u0438\u0442\u0435 \u0445\u0430\u0440\u0430\u043a\u0442\u0435\u0440\u0438\u0441\u0442\u0438\u043a\u0438 \u043d\u0430 Stream API \u0435 Lazy Evaluation.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">\u0422\u043e\u0432\u0430 \u043e\u0437\u043d\u0430\u0447\u0430\u0432\u0430, \u0447\u0435 Intermediate Operations \u043d\u0435 \u0441\u0435 \u0438\u0437\u043f\u044a\u043b\u043d\u044f\u0432\u0430\u0442 \u0432\u0435\u0434\u043d\u0430\u0433\u0430 \u0441\u043b\u0435\u0434 \u0434\u0435\u043a\u043b\u0430\u0440\u0438\u0440\u0430\u043d\u0435\u0442\u043e \u0438\u043c. \u041e\u0431\u0440\u0430\u0431\u043e\u0442\u043a\u0430\u0442\u0430 \u0437\u0430\u043f\u043e\u0447\u0432\u0430 \u0435\u0434\u0432\u0430 \u043a\u043e\u0433\u0430\u0442\u043e \u0431\u044a\u0434\u0435 \u0438\u0437\u0432\u0438\u043a\u0430\u043d\u0430 Terminal Operation.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">\u0416\u0438\u0448\u044d\u044d:<\/p>\n\n\n<div class=\"wp-block-code\">\n\t<div class=\"cm-editor\">\n\t\t<div class=\"cm-scroller\">\n\t\t\t\n<pre>\n<code><div class=\"cm-line\">List&lt;String&gt; names =<\/div><div class=\"cm-line\">        Arrays.asList(&quot;Ivan&quot;, &quot;Maria&quot;, &quot;Peter&quot;);<\/div><div class=\"cm-line\"><\/div><div class=\"cm-line\">Stream&lt;String&gt; stream = names.stream()<\/div><div class=\"cm-line\">        .filter(name -&gt; {<\/div><div class=\"cm-line\">            System.out.println(&quot;Filtering: &quot; + name);<\/div><div class=\"cm-line\">            return name.length() &gt; 4;<\/div><div class=\"cm-line\">        });<\/div><div class=\"cm-line\"><\/div><div class=\"cm-line\">System.out.println(&quot;Stream created&quot;);<\/div><div class=\"cm-line\"><\/div><div class=\"cm-line\">long count = stream.count();<\/div><div class=\"cm-line\"><\/div><div class=\"cm-line\">System.out.println(&quot;Count: &quot; + count);<\/div><\/code><\/pre>\n\t\t<\/div>\n\t<\/div>\n<\/div>\n\n\n<p class=\"wp-block-paragraph\">\u04ae\u0440 \u0434\u04af\u043d:<\/p>\n\n\n<div class=\"wp-block-code\">\n\t<div class=\"cm-editor\">\n\t\t<div class=\"cm-scroller\">\n\t\t\t\n<pre>\n<code><div class=\"cm-line\">Stream created<\/div><div class=\"cm-line\">Filtering: Ivan<\/div><div class=\"cm-line\">Filtering: Maria<\/div><div class=\"cm-line\">Filtering: Peter<\/div><div class=\"cm-line\">Count: 2<\/div><\/code><\/pre>\n\t\t<\/div>\n\t<\/div>\n<\/div>\n\n\n<p class=\"wp-block-paragraph\">\u0417\u0430\u0431\u0435\u043b\u0435\u0436\u0438, \u0447\u0435 <code>filter()<\/code> \u043d\u0435 \u0441\u0435 \u0438\u0437\u043f\u044a\u043b\u043d\u044f\u0432\u0430 \u043f\u0440\u0438 \u0441\u044a\u0437\u0434\u0430\u0432\u0430\u043d\u0435\u0442\u043e \u043d\u0430 Stream, \u0430 \u0435\u0434\u0432\u0430 \u043f\u0440\u0438 \u0438\u0437\u0432\u0438\u043a\u0432\u0430\u043d\u0435\u0442\u043e \u043d\u0430 <code>count()<\/code>.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">\u0412\u0430\u0436\u043d\u043e: \u0415\u0434\u0438\u043d Stream \u043d\u0435 \u043c\u043e\u0436\u0435 \u0434\u0430 \u0431\u044a\u0434\u0435 \u0438\u0437\u043f\u043e\u043b\u0437\u0432\u0430\u043d \u043f\u043e\u0432\u0442\u043e\u0440\u043d\u043e \u0441\u043b\u0435\u0434 \u0438\u0437\u0432\u0438\u043a\u0432\u0430\u043d\u0435 \u043d\u0430 Terminal Operation. \u0417\u0430 \u043d\u043e\u0432\u0430 \u043e\u0431\u0440\u0430\u0431\u043e\u0442\u043a\u0430 \u0442\u0440\u044f\u0431\u0432\u0430 \u0434\u0430 \u0441\u044a\u0437\u0434\u0430\u0434\u0435\u043c \u043d\u043e\u0432 Stream \u043e\u0442 \u0438\u0437\u0442\u043e\u0447\u043d\u0438\u043a\u0430.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">6. \u041f\u0440\u0435\u0434\u0438\u043c\u0441\u0442\u0432\u0430 \u043d\u0430 Stream API<\/h2>\n\n\n\n<ol class=\"wp-block-list\">\n<li>Concise and Readable Code: \u041f\u043e\u0437\u0432\u043e\u043b\u044f\u0432\u0430 \u043f\u043e-\u043a\u0440\u0430\u0442\u044a\u043a \u0438 \u0447\u0435\u0442\u0438\u043c \u043a\u043e\u0434 \u0437\u0430 \u043e\u0431\u0440\u0430\u0431\u043e\u0442\u043a\u0430 \u043d\u0430 \u043a\u043e\u043b\u0435\u043a\u0446\u0438\u0438.<\/li>\n\n\n\n<li>Functional Programming: \u041d\u0430\u0441\u044a\u0440\u0447\u0430\u0432\u0430 \u0438\u0437\u043f\u043e\u043b\u0437\u0432\u0430\u043d\u0435\u0442\u043e \u043d\u0430 Lambda Expressions \u0438 Functional Interfaces.<\/li>\n\n\n\n<li>Lazy Evaluation: \u0418\u0437\u0431\u044f\u0433\u0432\u0430 \u043d\u0435\u043d\u0443\u0436\u043d\u0430\u0442\u0430 \u043e\u0431\u0440\u0430\u0431\u043e\u0442\u043a\u0430 \u043d\u0430 \u0434\u0430\u043d\u043d\u0438, \u043a\u043e\u0433\u0430\u0442\u043e \u043d\u0435 \u0435 \u043d\u0435\u043e\u0431\u0445\u043e\u0434\u0438\u043c\u0430.<\/li>\n\n\n\n<li>Parallel Processing: \u041f\u0440\u0435\u0434\u043e\u0441\u0442\u0430\u0432\u044f \u0432\u044a\u0437\u043c\u043e\u0436\u043d\u043e\u0441\u0442 \u0437\u0430 \u043f\u0430\u0440\u0430\u043b\u0435\u043b\u043d\u0430 \u043e\u0431\u0440\u0430\u0431\u043e\u0442\u043a\u0430.<\/li>\n\n\n\n<li>Method Chaining: \u041f\u043e\u0437\u0432\u043e\u043b\u044f\u0432\u0430 \u043a\u043e\u043c\u0431\u0438\u043d\u0438\u0440\u0430\u043d\u0435 \u043d\u0430 \u043c\u043d\u043e\u0436\u0435\u0441\u0442\u0432\u043e \u043e\u043f\u0435\u0440\u0430\u0446\u0438\u0438 \u0432 \u0435\u0434\u0438\u043d Pipeline.<\/li>\n<\/ol>\n\n\n\n<h2 class=\"wp-block-heading\">\u0412\u0430\u0436\u043d\u043e \u0437\u0430 Java Developer Interview<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">1. \u041a\u0430\u043a\u0432\u043e \u043f\u0440\u0435\u0434\u0441\u0442\u0430\u0432\u043b\u044f\u0432\u0430 Stream API?<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">\u041c\u0435\u0445\u0430\u043d\u0438\u0437\u044a\u043c \u0437\u0430 \u0434\u0435\u043a\u043b\u0430\u0440\u0430\u0442\u0438\u0432\u043d\u0430 \u043e\u0431\u0440\u0430\u0431\u043e\u0442\u043a\u0430 \u043d\u0430 \u043f\u043e\u0441\u043b\u0435\u0434\u043e\u0432\u0430\u0442\u0435\u043b\u043d\u043e\u0441\u0442\u0438 \u043e\u0442 \u0434\u0430\u043d\u043d\u0438 \u0447\u0440\u0435\u0437 \u043e\u043f\u0435\u0440\u0430\u0446\u0438\u0438 \u043a\u0430\u0442\u043e <code>filter()<\/code>, <code>map()<\/code>, <code>reduce()<\/code> \u0431\u043e\u043b\u043e\u043d <code>collect()<\/code>.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">2. \u041a\u0430\u043a\u0432\u0430 \u0435 \u0440\u0430\u0437\u043b\u0438\u043a\u0430\u0442\u0430 \u043c\u0435\u0436\u0434\u0443 Intermediate \u0438 Terminal Operations?<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Intermediate Operations \u0432\u0440\u044a\u0449\u0430\u0442 \u043d\u043e\u0432 Stream \u0438 \u0441\u0430 Lazy.<\/li>\n\n\n\n<li>Terminal Operations \u0437\u0430\u0432\u044a\u0440\u0448\u0432\u0430\u0442 Pipeline \u0438 \u0437\u0430\u0434\u0435\u0439\u0441\u0442\u0432\u0430\u0442 \u043e\u0431\u0440\u0430\u0431\u043e\u0442\u043a\u0430\u0442\u0430.<\/li>\n<\/ul>\n\n\n\n<p class=\"wp-block-paragraph\">3. \u041a\u0430\u043a\u0432\u0430 \u0435 \u0440\u0430\u0437\u043b\u0438\u043a\u0430\u0442\u0430 \u043c\u0435\u0436\u0434\u0443 <code>map()<\/code> \u0431\u043e\u043b\u043e\u043d <code>flatMap()<\/code>?<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li><code>map()<\/code> \u0442\u0440\u0430\u043d\u0441\u0444\u043e\u0440\u043c\u0438\u0440\u0430 \u0432\u0441\u0435\u043a\u0438 \u0435\u043b\u0435\u043c\u0435\u043d\u0442 \u0432 \u0434\u0440\u0443\u0433 \u0435\u043b\u0435\u043c\u0435\u043d\u0442.<\/li>\n\n\n\n<li><code>flatMap()<\/code> \u0442\u0440\u0430\u043d\u0441\u0444\u043e\u0440\u043c\u0438\u0440\u0430 \u0432\u0441\u0435\u043a\u0438 \u0435\u043b\u0435\u043c\u0435\u043d\u0442 \u0432 Stream \u0438 \u043e\u0431\u0435\u0434\u0438\u043d\u044f\u0432\u0430 \u043f\u043e\u043b\u0443\u0447\u0435\u043d\u0438\u0442\u0435 Streams \u0432 \u0435\u0434\u0438\u043d \u043e\u0431\u0449 Stream.<\/li>\n<\/ul>\n\n\n\n<p class=\"wp-block-paragraph\">4. \u041a\u0430\u043a\u0432\u043e \u043f\u0440\u0435\u0434\u0441\u0442\u0430\u0432\u043b\u044f\u0432\u0430 Lazy Evaluation?<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">\u041c\u0435\u0436\u0434\u0438\u043d\u043d\u0438\u0442\u0435 \u043e\u043f\u0435\u0440\u0430\u0446\u0438\u0438 \u043d\u0435 \u0441\u0435 \u0438\u0437\u043f\u044a\u043b\u043d\u044f\u0432\u0430\u0442, \u0434\u043e\u043a\u0430\u0442\u043e \u043d\u0435 \u0431\u044a\u0434\u0435 \u0438\u0437\u0432\u0438\u043a\u0430\u043d\u0430 Terminal Operation.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">5. \u041c\u043e\u0436\u0435 \u043b\u0438 \u0435\u0434\u0438\u043d Stream \u0434\u0430 \u0431\u044a\u0434\u0435 \u0438\u0437\u043f\u043e\u043b\u0437\u0432\u0430\u043d \u043f\u043e\u0432\u0442\u043e\u0440\u043d\u043e?<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">\u041d\u0435. \u0421\u043b\u0435\u0434 Terminal Operation Stream \u0441\u0435 \u0441\u0447\u0438\u0442\u0430 \u0437\u0430 \u0438\u0437\u043f\u043e\u043b\u0437\u0432\u0430\u043d \u0438 \u043d\u0435 \u043c\u043e\u0436\u0435 \u0434\u0430 \u0431\u044a\u0434\u0435 \u043e\u0431\u0440\u0430\u0431\u043e\u0442\u0432\u0430\u043d \u043f\u043e\u0432\u0442\u043e\u0440\u043d\u043e.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">6. \u041a\u0430\u043a\u0432\u0430 \u0435 \u0440\u0430\u0437\u043b\u0438\u043a\u0430\u0442\u0430 \u043c\u0435\u0436\u0434\u0443 <code>stream()<\/code> \u0431\u043e\u043b\u043e\u043d <code>parallelStream()<\/code>?<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li><code>stream()<\/code> \u2013 \u043f\u043e\u0441\u043b\u0435\u0434\u043e\u0432\u0430\u0442\u0435\u043b\u043d\u0430 \u043e\u0431\u0440\u0430\u0431\u043e\u0442\u043a\u0430.<\/li>\n\n\n\n<li><code>parallelStream()<\/code> \u2013 \u043f\u0430\u0440\u0430\u043b\u0435\u043b\u043d\u0430 \u043e\u0431\u0440\u0430\u0431\u043e\u0442\u043a\u0430, \u043a\u043e\u044f\u0442\u043e \u043c\u043e\u0436\u0435 \u0434\u0430 \u0438\u0437\u043f\u043e\u043b\u0437\u0432\u0430 \u043c\u043d\u043e\u0436\u0435\u0441\u0442\u0432\u043e Threads.<\/li>\n<\/ul>\n\n\n\n<p class=\"wp-block-paragraph\">7. \u041a\u0430\u043a\u0432\u0430 \u0435 \u0440\u0430\u0437\u043b\u0438\u043a\u0430\u0442\u0430 \u043c\u0435\u0436\u0434\u0443 Collection \u0438 Stream?<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Collection \u0441\u044a\u0445\u0440\u0430\u043d\u044f\u0432\u0430 \u0434\u0430\u043d\u043d\u0438, \u0434\u043e\u043a\u0430\u0442\u043e Stream \u043f\u0440\u0435\u0434\u043e\u0441\u0442\u0430\u0432\u044f \u043c\u0435\u0445\u0430\u043d\u0438\u0437\u044a\u043c \u0437\u0430 \u0442\u044f\u0445\u043d\u0430\u0442\u0430 \u043e\u0431\u0440\u0430\u0431\u043e\u0442\u043a\u0430. Stream \u043d\u0435 \u0435 \u0441\u0442\u0440\u0443\u043a\u0442\u0443\u0440\u0430 \u0437\u0430 \u0441\u044a\u0445\u0440\u0430\u043d\u0435\u043d\u0438\u0435 \u043d\u0430 \u0434\u0430\u043d\u043d\u0438.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">8. \u041a\u0430\u043a\u0432\u0430 \u0435 \u0440\u0430\u0437\u043b\u0438\u043a\u0430\u0442\u0430 \u043c\u0435\u0436\u0434\u0443 <code>findFirst()<\/code> \u0431\u043e\u043b\u043e\u043d <code>findAny()<\/code>?<\/p>\n\n\n\n<p class=\"wp-block-paragraph\"><code>findFirst()<\/code> \u0432\u0440\u044a\u0449\u0430 \u043f\u044a\u0440\u0432\u0438\u044f \u0435\u043b\u0435\u043c\u0435\u043d\u0442 \u0441\u043f\u043e\u0440\u0435\u0434 encounter order, \u043a\u043e\u0433\u0430\u0442\u043e \u0442\u0430\u043a\u044a\u0432 \u0440\u0435\u0434 \u0435 \u0434\u0435\u0444\u0438\u043d\u0438\u0440\u0430\u043d. <code>findAny()<\/code> \u043f\u043e\u0437\u0432\u043e\u043b\u044f\u0432\u0430 \u0432\u0440\u044a\u0449\u0430\u043d\u0435\u0442\u043e \u043d\u0430 \u043f\u0440\u043e\u0438\u0437\u0432\u043e\u043b\u0435\u043d \u0435\u043b\u0435\u043c\u0435\u043d\u0442 \u0438 \u043c\u043e\u0436\u0435 \u0434\u0430 \u0431\u044a\u0434\u0435 \u043f\u043e-\u043f\u043e\u0434\u0445\u043e\u0434\u044f\u0449 \u043f\u0440\u0438 Parallel Streams.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">\u041e\u0441\u043d\u043e\u0432\u0435\u043d \u0438\u0437\u0432\u043e\u0434<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">Stream API \u0435 \u0435\u0434\u043d\u0430 \u043e\u0442 \u0432\u0430\u0436\u043d\u0438\u0442\u0435 \u0444\u0443\u043d\u043a\u0446\u0438\u043e\u043d\u0430\u043b\u043d\u043e\u0441\u0442\u0438, \u0432\u044a\u0432\u0435\u0434\u0435\u043d\u0438 \u0432 Java 8. \u0422\u043e \u043f\u043e\u0437\u0432\u043e\u043b\u044f\u0432\u0430 \u043e\u0431\u0440\u0430\u0431\u043e\u0442\u043a\u0430\u0442\u0430 \u043d\u0430 Collections \u0438 \u0434\u0440\u0443\u0433\u0438 \u0438\u0437\u0442\u043e\u0447\u043d\u0438\u0446\u0438 \u043d\u0430 \u0434\u0430\u043d\u043d\u0438 \u0447\u0440\u0435\u0437 \u0434\u0435\u043a\u043b\u0430\u0440\u0430\u0442\u0438\u0432\u0435\u043d \u0438 \u0444\u0443\u043d\u043a\u0446\u0438\u043e\u043d\u0430\u043b\u0435\u043d \u043f\u043e\u0434\u0445\u043e\u0434.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">\u0417\u0430 Java Developer \u0435 \u043e\u0441\u043e\u0431\u0435\u043d\u043e \u0432\u0430\u0436\u043d\u043e \u0434\u0430 \u043f\u043e\u0437\u043d\u0430\u0432\u0430 <code>filter()<\/code>, <code>map()<\/code>, <code>flatMap()<\/code>, <code>reduce()<\/code>, <code>collect()<\/code>, <code>sorted()<\/code> \u0438 \u0440\u0430\u0437\u043b\u0438\u043a\u0430\u0442\u0430 \u043c\u0435\u0436\u0434\u0443 Intermediate \u0438 Terminal Operations.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">\u0417\u0430\u043f\u043e\u043c\u043d\u0438 \u0437\u0430 \u0438\u043d\u0442\u0435\u0440\u0432\u044e: Intermediate Operations \u0441\u0430 Lazy, \u0430 Terminal Operations \u0437\u0430\u0434\u0435\u0439\u0441\u0442\u0432\u0430\u0442 \u0438\u0437\u043f\u044a\u043b\u043d\u0435\u043d\u0438\u0435\u0442\u043e \u043d\u0430 Stream Pipeline.<\/p>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h1 class=\"wp-block-heading\">\u0412\u0438\u0434\u043e\u0432\u0435 \u0432\u043b\u043e\u0436\u0435\u043d\u0438 \u043a\u043b\u0430\u0441\u043e\u0432\u0435 \u0432 Java (Types of Nested Classes)<\/h1>\n\n\n\n<h2 class=\"wp-block-heading\">1. \u041a\u0430\u043a\u0432\u043e \u043f\u0440\u0435\u0434\u0441\u0442\u0430\u0432\u043b\u044f\u0432\u0430\u0442 Nested Classes?<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">\u0412 Java Nested Class \u0435 \u043a\u043b\u0430\u0441, \u043a\u043e\u0439\u0442\u043e \u0435 \u0434\u0435\u043a\u043b\u0430\u0440\u0438\u0440\u0430\u043d \u0432\u044a\u0442\u0440\u0435 \u0432 \u0434\u0440\u0443\u0433 \u043a\u043b\u0430\u0441 \u0438\u043b\u0438 \u0438\u043d\u0442\u0435\u0440\u0444\u0435\u0439\u0441.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">\u0412\u043b\u043e\u0436\u0435\u043d\u0438\u0442\u0435 \u043a\u043b\u0430\u0441\u043e\u0432\u0435 \u043f\u043e\u0437\u0432\u043e\u043b\u044f\u0432\u0430\u0442 \u043b\u043e\u0433\u0438\u0447\u0435\u0441\u043a\u0438 \u0441\u0432\u044a\u0440\u0437\u0430\u043d\u0438 \u043a\u043b\u0430\u0441\u043e\u0432\u0435 \u0434\u0430 \u0431\u044a\u0434\u0430\u0442 \u0433\u0440\u0443\u043f\u0438\u0440\u0430\u043d\u0438 \u0437\u0430\u0435\u0434\u043d\u043e, \u043f\u043e\u0434\u043e\u0431\u0440\u044f\u0432\u0430\u0442 \u043a\u0430\u043f\u0441\u0443\u043b\u0430\u0446\u0438\u044f\u0442\u0430 (Encapsulation) \u0438 \u0443\u043b\u0435\u0441\u043d\u044f\u0432\u0430\u0442 \u043e\u0440\u0433\u0430\u043d\u0438\u0437\u0430\u0446\u0438\u044f\u0442\u0430 \u043d\u0430 \u043a\u043e\u0434\u0430.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">\u0412 Java \u0438\u043c\u0430 \u0447\u0435\u0442\u0438\u0440\u0438 \u043e\u0441\u043d\u043e\u0432\u043d\u0438 \u0432\u0438\u0434\u0430 Nested Classes:<\/p>\n\n\n\n<ol class=\"wp-block-list\">\n<li>Static Nested Class<\/li>\n\n\n\n<li>Non-Static Inner Class<\/li>\n\n\n\n<li>Local Inner Class<\/li>\n\n\n\n<li>Anonymous Inner Class<\/li>\n<\/ol>\n\n\n\n<p class=\"wp-block-paragraph\">\u041f\u044a\u0440\u0432\u0438\u0442\u0435 \u0434\u0432\u0430 \u0432\u0438\u0434\u0430 \u0441\u0435 \u0434\u0435\u043a\u043b\u0430\u0440\u0438\u0440\u0430\u0442 \u0434\u0438\u0440\u0435\u043a\u0442\u043d\u043e \u0432 \u0434\u0440\u0443\u0433 \u043a\u043b\u0430\u0441, \u0434\u043e\u043a\u0430\u0442\u043e \u043f\u043e\u0441\u043b\u0435\u0434\u043d\u0438\u0442\u0435 \u0434\u0432\u0430 \u0441\u0435 \u0434\u0435\u0444\u0438\u043d\u0438\u0440\u0430\u0442 \u0432 \u0440\u0430\u043c\u043a\u0438\u0442\u0435 \u043d\u0430 \u043c\u0435\u0442\u043e\u0434 \u0438\u043b\u0438 \u0431\u043b\u043e\u043a \u043a\u043e\u0434.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">2. Static Nested Class<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">Static Nested Class \u0435 \u0432\u043b\u043e\u0436\u0435\u043d \u043a\u043b\u0430\u0441, \u0434\u0435\u043a\u043b\u0430\u0440\u0438\u0440\u0430\u043d \u0441 \u043a\u043b\u044e\u0447\u043e\u0432\u0430\u0442\u0430 \u0434\u0443\u043c\u0430 <code>static<\/code>.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">\u0413\u043e\u043b \u043e\u043d\u0446\u043b\u043e\u0433\u0443\u0443\u0434:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>\u041d\u0435 \u0438\u0437\u0438\u0441\u043a\u0432\u0430 \u0441\u044a\u0437\u0434\u0430\u0432\u0430\u043d\u0435\u0442\u043e \u043d\u0430 \u0435\u043a\u0437\u0435\u043c\u043f\u043b\u044f\u0440 \u043e\u0442 Outer Class.<\/li>\n\n\n\n<li>\u041c\u043e\u0436\u0435 \u0434\u0438\u0440\u0435\u043a\u0442\u043d\u043e \u0434\u0430 \u0434\u043e\u0441\u0442\u044a\u043f\u0432\u0430 <code>static<\/code> \u0447\u043b\u0435\u043d\u043e\u0432\u0435 \u043d\u0430 Outer Class.<\/li>\n\n\n\n<li>\u041c\u043e\u0436\u0435 \u0434\u0430 \u0434\u043e\u0441\u0442\u044a\u043f\u0432\u0430 \u0438 <code>private static<\/code> \u0447\u043b\u0435\u043d\u043e\u0432\u0435 \u043d\u0430 Outer Class.<\/li>\n\n\n\n<li>\u041d\u0435 \u043c\u043e\u0436\u0435 \u0434\u0438\u0440\u0435\u043a\u0442\u043d\u043e \u0434\u0430 \u0434\u043e\u0441\u0442\u044a\u043f\u0432\u0430 \u043d\u0435\u0441\u0442\u0430\u0442\u0438\u0447\u043d\u0438\u0442\u0435 \u0447\u043b\u0435\u043d\u043e\u0432\u0435 \u043d\u0430 Outer Class \u0431\u0435\u0437 \u043d\u0435\u0433\u043e\u0432 \u0435\u043a\u0437\u0435\u043c\u043f\u043b\u044f\u0440.<\/li>\n<\/ul>\n\n\n\n<p class=\"wp-block-paragraph\">\u0416\u0438\u0448\u044d\u044d:<\/p>\n\n\n<div class=\"wp-block-code\">\n\t<div class=\"cm-editor\">\n\t\t<div class=\"cm-scroller\">\n\t\t\t\n<pre>\n<code><div class=\"cm-line\">public class OuterClass {<\/div><div class=\"cm-line\"><\/div><div class=\"cm-line\">    private static String message = &quot;Hello&quot;;<\/div><div class=\"cm-line\"><\/div><div class=\"cm-line\">    static class NestedClass {<\/div><div class=\"cm-line\"><\/div><div class=\"cm-line\">        public void display() {<\/div><div class=\"cm-line\">            System.out.println(message);<\/div><div class=\"cm-line\">        }<\/div><div class=\"cm-line\">    }<\/div><div class=\"cm-line\"><\/div><div class=\"cm-line\">    public static void main(String[] args) {<\/div><div class=\"cm-line\"><\/div><div class=\"cm-line\">        OuterClass.NestedClass nested =<\/div><div class=\"cm-line\">                new OuterClass.NestedClass();<\/div><div class=\"cm-line\"><\/div><div class=\"cm-line\">        nested.display();<\/div><div class=\"cm-line\">    }<\/div><div class=\"cm-line\">}<\/div><\/code><\/pre>\n\t\t<\/div>\n\t<\/div>\n<\/div>\n\n\n<p class=\"wp-block-paragraph\">\u04ae\u0440 \u0434\u04af\u043d:<\/p>\n\n\n<div class=\"wp-block-code\">\n\t<div class=\"cm-editor\">\n\t\t<div class=\"cm-scroller\">\n\t\t\t\n<pre>\n<code><div class=\"cm-line\">Hello<\/div><\/code><\/pre>\n\t\t<\/div>\n\t<\/div>\n<\/div>\n\n\n<p class=\"wp-block-paragraph\">\u0417\u0430\u0431\u0435\u043b\u0435\u0436\u0438, \u0447\u0435 \u0441\u044a\u0437\u0434\u0430\u0432\u0430\u043c\u0435 <code>NestedClass<\/code> \u0434\u0438\u0440\u0435\u043a\u0442\u043d\u043e \u0447\u0440\u0435\u0437 \u0438\u043c\u0435\u0442\u043e \u043d\u0430 Outer Class, \u0431\u0435\u0437 \u0434\u0430 \u0441\u044a\u0437\u0434\u0430\u0432\u0430\u043c\u0435 \u043d\u0435\u0433\u043e\u0432 \u0435\u043a\u0437\u0435\u043c\u043f\u043b\u044f\u0440.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">3. Non-Static Inner Class<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">Non-Static Inner Class \u0435 \u0432\u043b\u043e\u0436\u0435\u043d \u043a\u043b\u0430\u0441, \u043a\u043e\u0439\u0442\u043e \u043d\u0435 \u0435 \u0434\u0435\u043a\u043b\u0430\u0440\u0438\u0440\u0430\u043d \u0441\u044a\u0441 <code>static<\/code>.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">\u0413\u043e\u043b \u043e\u043d\u0446\u043b\u043e\u0433\u0443\u0443\u0434:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>\u0418\u0437\u0438\u0441\u043a\u0432\u0430 \u0435\u043a\u0437\u0435\u043c\u043f\u043b\u044f\u0440 \u043d\u0430 Outer Class, \u0437\u0430 \u0434\u0430 \u0431\u044a\u0434\u0435 \u0441\u044a\u0437\u0434\u0430\u0434\u0435\u043d.<\/li>\n\n\n\n<li>\u0418\u043c\u0430 \u0434\u043e\u0441\u0442\u044a\u043f \u0434\u043e \u0432\u0441\u0438\u0447\u043a\u0438 \u0447\u043b\u0435\u043d\u043e\u0432\u0435 \u043d\u0430 Outer Class, \u0432\u043a\u043b\u044e\u0447\u0438\u0442\u0435\u043b\u043d\u043e <code>private<\/code> \u0431\u043e\u043b\u043e\u043d <code>static<\/code>.<\/li>\n\n\n\n<li>\u041c\u043e\u0436\u0435 \u0434\u0438\u0440\u0435\u043a\u0442\u043d\u043e \u0434\u0430 \u0438\u0437\u043f\u043e\u043b\u0437\u0432\u0430 \u043d\u0435\u0441\u0442\u0430\u0442\u0438\u0447\u043d\u0438\u0442\u0435 \u043f\u043e\u043b\u0435\u0442\u0430 \u0438 \u043c\u0435\u0442\u043e\u0434\u0438 \u043d\u0430 Outer Class.<\/li>\n\n\n\n<li>\u0412\u0441\u0435\u043a\u0438 \u0435\u043a\u0437\u0435\u043c\u043f\u043b\u044f\u0440 \u043d\u0430 Inner Class \u0435 \u0441\u0432\u044a\u0440\u0437\u0430\u043d \u0441 \u043a\u043e\u043d\u043a\u0440\u0435\u0442\u0435\u043d \u0435\u043a\u0437\u0435\u043c\u043f\u043b\u044f\u0440 \u043d\u0430 Outer Class.<\/li>\n<\/ul>\n\n\n\n<p class=\"wp-block-paragraph\">\u0416\u0438\u0448\u044d\u044d:<\/p>\n\n\n<div class=\"wp-block-code\">\n\t<div class=\"cm-editor\">\n\t\t<div class=\"cm-scroller\">\n\t\t\t\n<pre>\n<code><div class=\"cm-line\">public class OuterClass {<\/div><div class=\"cm-line\"><\/div><div class=\"cm-line\">    private String message = &quot;Hello from Outer Class&quot;;<\/div><div class=\"cm-line\"><\/div><div class=\"cm-line\">    class InnerClass {<\/div><div class=\"cm-line\"><\/div><div class=\"cm-line\">        public void display() {<\/div><div class=\"cm-line\">            System.out.println(message);<\/div><div class=\"cm-line\">        }<\/div><div class=\"cm-line\">    }<\/div><div class=\"cm-line\"><\/div><div class=\"cm-line\">    public static void main(String[] args) {<\/div><div class=\"cm-line\"><\/div><div class=\"cm-line\">        OuterClass outer = new OuterClass();<\/div><div class=\"cm-line\"><\/div><div class=\"cm-line\">        OuterClass.InnerClass inner =<\/div><div class=\"cm-line\">                outer.new InnerClass();<\/div><div class=\"cm-line\"><\/div><div class=\"cm-line\">        inner.display();<\/div><div class=\"cm-line\">    }<\/div><div class=\"cm-line\">}<\/div><\/code><\/pre>\n\t\t<\/div>\n\t<\/div>\n<\/div>\n\n\n<p class=\"wp-block-paragraph\">\u04ae\u0440 \u0434\u04af\u043d:<\/p>\n\n\n<div class=\"wp-block-code\">\n\t<div class=\"cm-editor\">\n\t\t<div class=\"cm-scroller\">\n\t\t\t\n<pre>\n<code><div class=\"cm-line\">Hello from Outer Class<\/div><\/code><\/pre>\n\t\t<\/div>\n\t<\/div>\n<\/div>\n\n\n<p class=\"wp-block-paragraph\">\u041e\u0431\u044a\u0440\u043d\u0438 \u0432\u043d\u0438\u043c\u0430\u043d\u0438\u0435 \u043d\u0430 \u043d\u0430\u0447\u0438\u043d\u0430 \u043d\u0430 \u0441\u044a\u0437\u0434\u0430\u0432\u0430\u043d\u0435:<\/p>\n\n\n<div class=\"wp-block-code\">\n\t<div class=\"cm-editor\">\n\t\t<div class=\"cm-scroller\">\n\t\t\t\n<pre>\n<code><div class=\"cm-line\">OuterClass outer = new OuterClass();<\/div><div class=\"cm-line\"><\/div><div class=\"cm-line\">OuterClass.InnerClass inner = outer.new InnerClass();<\/div><\/code><\/pre>\n\t\t<\/div>\n\t<\/div>\n<\/div>\n\n\n<p class=\"wp-block-paragraph\">\u041f\u044a\u0440\u0432\u043e \u0441\u044a\u0437\u0434\u0430\u0432\u0430\u043c\u0435 \u0435\u043a\u0437\u0435\u043c\u043f\u043b\u044f\u0440 \u043d\u0430 Outer Class, \u0441\u043b\u0435\u0434 \u043a\u043e\u0435\u0442\u043e \u0447\u0440\u0435\u0437 \u043d\u0435\u0433\u043e \u0441\u044a\u0437\u0434\u0430\u0432\u0430\u043c\u0435 Inner Class.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">4. Local Inner Class<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">Local Inner Class \u0435 \u043a\u043b\u0430\u0441, \u0434\u0435\u043a\u043b\u0430\u0440\u0438\u0440\u0430\u043d \u0432\u044a\u0442\u0440\u0435 \u0432 \u043c\u0435\u0442\u043e\u0434, \u043a\u043e\u043d\u0441\u0442\u0440\u0443\u043a\u0442\u043e\u0440 \u0438\u043b\u0438 \u0434\u0440\u0443\u0433 \u0431\u043b\u043e\u043a \u043a\u043e\u0434.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">\u0413\u043e\u043b \u043e\u043d\u0446\u043b\u043e\u0433\u0443\u0443\u0434:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>\u0414\u043e\u0441\u0442\u044a\u043f\u0435\u043d \u0435 \u0441\u0430\u043c\u043e \u0432 \u0431\u043b\u043e\u043a\u0430, \u0432 \u043a\u043e\u0439\u0442\u043e \u0435 \u0434\u0435\u043a\u043b\u0430\u0440\u0438\u0440\u0430\u043d.<\/li>\n\n\n\n<li>\u041c\u043e\u0436\u0435 \u0434\u0430 \u0434\u043e\u0441\u0442\u044a\u043f\u0432\u0430 \u0447\u043b\u0435\u043d\u043e\u0432\u0435\u0442\u0435 \u043d\u0430 Outer Class.<\/li>\n\n\n\n<li>\u041c\u043e\u0436\u0435 \u0434\u0430 \u0438\u0437\u043f\u043e\u043b\u0437\u0432\u0430 \u043b\u043e\u043a\u0430\u043b\u043d\u0438 \u043f\u0440\u043e\u043c\u0435\u043d\u043b\u0438\u0432\u0438 \u043e\u0442 \u043c\u0435\u0442\u043e\u0434\u0430, \u0430\u043a\u043e \u0442\u0435 \u0441\u0430 <code>final<\/code> \u0438\u043b\u0438 effectively final.<\/li>\n\n\n\n<li>\u041d\u0435 \u043c\u043e\u0436\u0435 \u0434\u0430 \u0431\u044a\u0434\u0435 \u0434\u0435\u043a\u043b\u0430\u0440\u0438\u0440\u0430\u043d \u0441 \u043c\u043e\u0434\u0438\u0444\u0438\u043a\u0430\u0442\u043e\u0440 <code>public<\/code>, <code>protected<\/code>, <code>private<\/code> \u044d\u0441\u0432\u044d\u043b <code>static<\/code> \u0432 \u043e\u0431\u0438\u043a\u043d\u043e\u0432\u0435\u043d \u043c\u0435\u0442\u043e\u0434.<\/li>\n<\/ul>\n\n\n\n<p class=\"wp-block-paragraph\">\u0416\u0438\u0448\u044d\u044d:<\/p>\n\n\n<div class=\"wp-block-code\">\n\t<div class=\"cm-editor\">\n\t\t<div class=\"cm-scroller\">\n\t\t\t\n<pre>\n<code><div class=\"cm-line\">public class OuterClass {<\/div><div class=\"cm-line\"><\/div><div class=\"cm-line\">    public void display() {<\/div><div class=\"cm-line\"><\/div><div class=\"cm-line\">        String message = &quot;Hello from Local Class&quot;;<\/div><div class=\"cm-line\"><\/div><div class=\"cm-line\">        class LocalClass {<\/div><div class=\"cm-line\"><\/div><div class=\"cm-line\">            public void printMessage() {<\/div><div class=\"cm-line\">                System.out.println(message);<\/div><div class=\"cm-line\">            }<\/div><div class=\"cm-line\">        }<\/div><div class=\"cm-line\"><\/div><div class=\"cm-line\">        LocalClass local = new LocalClass();<\/div><div class=\"cm-line\"><\/div><div class=\"cm-line\">        local.printMessage();<\/div><div class=\"cm-line\">    }<\/div><div class=\"cm-line\"><\/div><div class=\"cm-line\">    public static void main(String[] args) {<\/div><div class=\"cm-line\"><\/div><div class=\"cm-line\">        OuterClass outer = new OuterClass();<\/div><div class=\"cm-line\"><\/div><div class=\"cm-line\">        outer.display();<\/div><div class=\"cm-line\">    }<\/div><div class=\"cm-line\">}<\/div><\/code><\/pre>\n\t\t<\/div>\n\t<\/div>\n<\/div>\n\n\n<p class=\"wp-block-paragraph\">\u04ae\u0440 \u0434\u04af\u043d:<\/p>\n\n\n<div class=\"wp-block-code\">\n\t<div class=\"cm-editor\">\n\t\t<div class=\"cm-scroller\">\n\t\t\t\n<pre>\n<code><div class=\"cm-line\">Hello from Local Class<\/div><\/code><\/pre>\n\t\t<\/div>\n\t<\/div>\n<\/div>\n\n\n<p class=\"wp-block-paragraph\">\u0412\u0430\u0436\u043d\u043e: \u041f\u0440\u043e\u043c\u0435\u043d\u043b\u0438\u0432\u0430\u0442\u0430 <code>message<\/code> \u043d\u0435 \u0435 \u0438\u0437\u0440\u0438\u0447\u043d\u043e \u0434\u0435\u043a\u043b\u0430\u0440\u0438\u0440\u0430\u043d\u0430 \u043a\u0430\u0442\u043e <code>final<\/code>, \u043d\u043e \u0435 effectively final, \u0437\u0430\u0449\u043e\u0442\u043e \u0441\u0442\u043e\u0439\u043d\u043e\u0441\u0442\u0442\u0430 \u045d \u043d\u0435 \u0441\u0435 \u043f\u0440\u043e\u043c\u0435\u043d\u044f \u0441\u043b\u0435\u0434 \u0438\u043d\u0438\u0446\u0438\u0430\u043b\u0438\u0437\u0430\u0446\u0438\u044f\u0442\u0430.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">5. Anonymous Inner Class<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">Anonymous Inner Class \u0435 \u0432\u043b\u043e\u0436\u0435\u043d \u043a\u043b\u0430\u0441 \u0431\u0435\u0437 \u0438\u043c\u0435, \u043a\u043e\u0439\u0442\u043e \u0441\u0435 \u0434\u0435\u043a\u043b\u0430\u0440\u0438\u0440\u0430 \u0438 \u0441\u044a\u0437\u0434\u0430\u0432\u0430 \u0435\u0434\u043d\u043e\u0432\u0440\u0435\u043c\u0435\u043d\u043d\u043e.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">\u041e\u0431\u0438\u043a\u043d\u043e\u0432\u0435\u043d\u043e \u0441\u0435 \u0438\u0437\u043f\u043e\u043b\u0437\u0432\u0430 \u0437\u0430 \u0435\u0434\u043d\u043e\u043a\u0440\u0430\u0442\u043d\u0430 \u0438\u043c\u043f\u043b\u0435\u043c\u0435\u043d\u0442\u0430\u0446\u0438\u044f \u043d\u0430 Interface \u0438\u043b\u0438 \u0437\u0430 \u0440\u0430\u0437\u0448\u0438\u0440\u044f\u0432\u0430\u043d\u0435 \u043d\u0430 Class, \u043a\u043e\u0433\u0430\u0442\u043e \u043d\u0435 \u0435 \u043d\u0435\u043e\u0431\u0445\u043e\u0434\u0438\u043c\u043e \u0434\u0430 \u0441\u044a\u0437\u0434\u0430\u0432\u0430\u043c\u0435 \u043e\u0442\u0434\u0435\u043b\u0435\u043d \u0438\u043c\u0435\u043d\u0443\u0432\u0430\u043d \u043a\u043b\u0430\u0441.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">\u0413\u043e\u043b \u043e\u043d\u0446\u043b\u043e\u0433\u0443\u0443\u0434:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>\u041d\u044f\u043c\u0430 \u0441\u043e\u0431\u0441\u0442\u0432\u0435\u043d\u043e \u0438\u043c\u0435.<\/li>\n\n\n\n<li>\u0414\u0435\u043a\u043b\u0430\u0440\u0438\u0440\u0430 \u0441\u0435 \u0438 \u0441\u0435 \u0438\u043d\u0441\u0442\u0430\u043d\u0446\u0438\u0440\u0430 \u0441 \u0435\u0434\u043d\u0430 \u043e\u043f\u0435\u0440\u0430\u0446\u0438\u044f.<\/li>\n\n\n\n<li>\u041c\u043e\u0436\u0435 \u0434\u0430 \u0438\u043c\u043f\u043b\u0435\u043c\u0435\u043d\u0442\u0438\u0440\u0430 Interface \u0438\u043b\u0438 \u0434\u0430 \u043d\u0430\u0441\u043b\u0435\u0434\u044f\u0432\u0430 Class.<\/li>\n\n\n\n<li>\u0427\u0435\u0441\u0442\u043e \u0441\u0435 \u0438\u0437\u043f\u043e\u043b\u0437\u0432\u0430 \u043f\u0440\u0438 Event Handling \u0438 Callback \u043c\u0435\u0445\u0430\u043d\u0438\u0437\u043c\u0438.<\/li>\n<\/ul>\n\n\n\n<h3 class=\"wp-block-heading\">\u041f\u0440\u0438\u043c\u0435\u0440 1: Anonymous Inner Class \u0441 Interface<\/h3>\n\n\n\n<p class=\"wp-block-paragraph\">\u0414\u0430 \u043f\u0440\u0435\u0434\u043f\u043e\u043b\u043e\u0436\u0438\u043c, \u0447\u0435 \u0438\u043c\u0430\u043c\u0435 Interface <code>Greeting<\/code> \u0441 \u043c\u0435\u0442\u043e\u0434 <code>sayHello()<\/code>.<\/p>\n\n\n<div class=\"wp-block-code\">\n\t<div class=\"cm-editor\">\n\t\t<div class=\"cm-scroller\">\n\t\t\t\n<pre>\n<code><div class=\"cm-line\">interface Greeting {<\/div><div class=\"cm-line\"><\/div><div class=\"cm-line\">    void sayHello();<\/div><div class=\"cm-line\">}<\/div><\/code><\/pre>\n\t\t<\/div>\n\t<\/div>\n<\/div>\n\n\n<p class=\"wp-block-paragraph\">\u0418\u0437\u043f\u043e\u043b\u0437\u0432\u0430\u043d\u0435 \u043d\u0430 Anonymous Inner Class:<\/p>\n\n\n<div class=\"wp-block-code\">\n\t<div class=\"cm-editor\">\n\t\t<div class=\"cm-scroller\">\n\t\t\t\n<pre>\n<code><div class=\"cm-line\">public class AnonymousInnerClassExample {<\/div><div class=\"cm-line\"><\/div><div class=\"cm-line\">    public static void main(String[] args) {<\/div><div class=\"cm-line\"><\/div><div class=\"cm-line\">        Greeting greeting = new Greeting() {<\/div><div class=\"cm-line\"><\/div><div class=\"cm-line\">            @Override<\/div><div class=\"cm-line\">            public void sayHello() {<\/div><div class=\"cm-line\">                System.out.println(<\/div><div class=\"cm-line\">                    &quot;Hello from an Anonymous Inner Class!&quot;<\/div><div class=\"cm-line\">                );<\/div><div class=\"cm-line\">            }<\/div><div class=\"cm-line\">        };<\/div><div class=\"cm-line\"><\/div><div class=\"cm-line\">        greeting.sayHello();<\/div><div class=\"cm-line\">    }<\/div><div class=\"cm-line\">}<\/div><\/code><\/pre>\n\t\t<\/div>\n\t<\/div>\n<\/div>\n\n\n<p class=\"wp-block-paragraph\">\u04ae\u0440 \u0434\u04af\u043d:<\/p>\n\n\n<div class=\"wp-block-code\">\n\t<div class=\"cm-editor\">\n\t\t<div class=\"cm-scroller\">\n\t\t\t\n<pre>\n<code><div class=\"cm-line\">Hello from an Anonymous Inner Class!<\/div><\/code><\/pre>\n\t\t<\/div>\n\t<\/div>\n<\/div>\n\n\n<p class=\"wp-block-paragraph\">\u0412 \u0442\u043e\u0437\u0438 \u043f\u0440\u0438\u043c\u0435\u0440 \u0441\u044a\u0437\u0434\u0430\u0432\u0430\u043c\u0435 \u043e\u0431\u0435\u043a\u0442, \u0447\u0438\u0439\u0442\u043e \u043a\u043b\u0430\u0441 \u0438\u043c\u043f\u043b\u0435\u043c\u0435\u043d\u0442\u0438\u0440\u0430 <code>Greeting<\/code>, \u0431\u0435\u0437 \u0434\u0430 \u0434\u0435\u0444\u0438\u043d\u0438\u0440\u0430\u043c\u0435 \u043e\u0442\u0434\u0435\u043b\u0435\u043d \u0438\u043c\u0435\u043d\u0443\u0432\u0430\u043d \u043a\u043b\u0430\u0441.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">\u041f\u0440\u0438\u043c\u0435\u0440 2: Anonymous Inner Class \u0441 Abstract Class<\/h3>\n\n\n\n<p class=\"wp-block-paragraph\">Anonymous Inner Class \u043c\u043e\u0436\u0435 \u0434\u0430 \u043d\u0430\u0441\u043b\u0435\u0434\u044f\u0432\u0430 Abstract Class \u0438 \u0434\u0430 \u0438\u043c\u043f\u043b\u0435\u043c\u0435\u043d\u0442\u0438\u0440\u0430 \u043d\u0435\u0433\u043e\u0432\u0438\u0442\u0435 Abstract Methods.<\/p>\n\n\n<div class=\"wp-block-code\">\n\t<div class=\"cm-editor\">\n\t\t<div class=\"cm-scroller\">\n\t\t\t\n<pre>\n<code><div class=\"cm-line\">abstract class Shape {<\/div><div class=\"cm-line\"><\/div><div class=\"cm-line\">    abstract void draw();<\/div><div class=\"cm-line\">}<\/div><\/code><\/pre>\n\t\t<\/div>\n\t<\/div>\n<\/div>\n\n\n<p class=\"wp-block-paragraph\">\u0418\u0437\u043f\u043e\u043b\u0437\u0432\u0430\u043d\u0435:<\/p>\n\n\n<div class=\"wp-block-code\">\n\t<div class=\"cm-editor\">\n\t\t<div class=\"cm-scroller\">\n\t\t\t\n<pre>\n<code><div class=\"cm-line\">public class AnonymousInnerClassExample {<\/div><div class=\"cm-line\"><\/div><div class=\"cm-line\">    public static void main(String[] args) {<\/div><div class=\"cm-line\"><\/div><div class=\"cm-line\">        Shape shape = new Shape() {<\/div><div class=\"cm-line\"><\/div><div class=\"cm-line\">            @Override<\/div><div class=\"cm-line\">            void draw() {<\/div><div class=\"cm-line\">                System.out.println(&quot;Drawing a shape!&quot;);<\/div><div class=\"cm-line\">            }<\/div><div class=\"cm-line\">        };<\/div><div class=\"cm-line\"><\/div><div class=\"cm-line\">        shape.draw();<\/div><div class=\"cm-line\">    }<\/div><div class=\"cm-line\">}<\/div><\/code><\/pre>\n\t\t<\/div>\n\t<\/div>\n<\/div>\n\n\n<p class=\"wp-block-paragraph\">\u04ae\u0440 \u0434\u04af\u043d:<\/p>\n\n\n<div class=\"wp-block-code\">\n\t<div class=\"cm-editor\">\n\t\t<div class=\"cm-scroller\">\n\t\t\t\n<pre>\n<code><div class=\"cm-line\">Drawing a shape!<\/div><\/code><\/pre>\n\t\t<\/div>\n\t<\/div>\n<\/div>\n\n\n<h3 class=\"wp-block-heading\">\u041f\u0440\u0438\u043c\u0435\u0440 3: Anonymous Inner Class \u043f\u0440\u0438 Event Handling<\/h3>\n\n\n\n<p class=\"wp-block-paragraph\">\u0427\u0435\u0441\u0442\u043e \u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u0435 \u043d\u0430 Anonymous Inner Classes \u0435 \u043e\u0431\u0440\u0430\u0431\u043e\u0442\u043a\u0430\u0442\u0430 \u043d\u0430 \u0441\u044a\u0431\u0438\u0442\u0438\u044f (Event Handling), \u043d\u0430\u043f\u0440\u0438\u043c\u0435\u0440 \u043f\u0440\u0438 Java Swing GUI \u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u044f.<\/p>\n\n\n<div class=\"wp-block-code\">\n\t<div class=\"cm-editor\">\n\t\t<div class=\"cm-scroller\">\n\t\t\t\n<pre>\n<code><div class=\"cm-line\">import javax.swing.*;<\/div><div class=\"cm-line\">import java.awt.event.ActionEvent;<\/div><div class=\"cm-line\">import java.awt.event.ActionListener;<\/div><div class=\"cm-line\"><\/div><div class=\"cm-line\">public class ButtonExample {<\/div><div class=\"cm-line\"><\/div><div class=\"cm-line\">    public static void main(String[] args) {<\/div><div class=\"cm-line\"><\/div><div class=\"cm-line\">        JFrame frame =<\/div><div class=\"cm-line\">                new JFrame(&quot;Anonymous Inner Class Example&quot;);<\/div><div class=\"cm-line\"><\/div><div class=\"cm-line\">        JButton button = new JButton(&quot;Click Me!&quot;);<\/div><div class=\"cm-line\"><\/div><div class=\"cm-line\">        button.addActionListener(<\/div><div class=\"cm-line\">            new ActionListener() {<\/div><div class=\"cm-line\"><\/div><div class=\"cm-line\">                @Override<\/div><div class=\"cm-line\">                public void actionPerformed(ActionEvent e) {<\/div><div class=\"cm-line\"><\/div><div class=\"cm-line\">                    System.out.println(&quot;Button clicked!&quot;);<\/div><div class=\"cm-line\">                }<\/div><div class=\"cm-line\">            }<\/div><div class=\"cm-line\">        );<\/div><div class=\"cm-line\"><\/div><div class=\"cm-line\">        frame.add(button);<\/div><div class=\"cm-line\"><\/div><div class=\"cm-line\">        frame.setSize(200, 200);<\/div><div class=\"cm-line\"><\/div><div class=\"cm-line\">        frame.setDefaultCloseOperation(<\/div><div class=\"cm-line\">                JFrame.EXIT_ON_CLOSE);<\/div><div class=\"cm-line\"><\/div><div class=\"cm-line\">        frame.setVisible(true);<\/div><div class=\"cm-line\">    }<\/div><div class=\"cm-line\">}<\/div><\/code><\/pre>\n\t\t<\/div>\n\t<\/div>\n<\/div>\n\n\n<p class=\"wp-block-paragraph\">\u041a\u0430\u043a \u0440\u0430\u0431\u043e\u0442\u0438 \u043f\u0440\u0438\u043c\u0435\u0440\u044a\u0442?<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>\u0421\u044a\u0437\u0434\u0430\u0432\u0430\u043c\u0435 <code>JButton<\/code>.<\/li>\n\n\n\n<li>\u0427\u0440\u0435\u0437 <code>addActionListener()<\/code> \u0440\u0435\u0433\u0438\u0441\u0442\u0440\u0438\u0440\u0430\u043c\u0435 \u043e\u0431\u0440\u0430\u0431\u043e\u0442\u0447\u0438\u043a \u043d\u0430 \u0441\u044a\u0431\u0438\u0442\u0438\u044f.<\/li>\n\n\n\n<li>Anonymous Inner Class \u0438\u043c\u043f\u043b\u0435\u043c\u0435\u043d\u0442\u0438\u0440\u0430 <code>ActionListener<\/code>.<\/li>\n\n\n\n<li>\u0430\u0440\u0433\u0430 <code>actionPerformed()<\/code> \u0441\u0435 \u0438\u0437\u043f\u044a\u043b\u043d\u044f\u0432\u0430 \u043f\u0440\u0438 \u043d\u0430\u0442\u0438\u0441\u043a\u0430\u043d\u0435 \u043d\u0430 \u0431\u0443\u0442\u043e\u043d\u0430.<\/li>\n<\/ul>\n\n\n\n<p class=\"wp-block-paragraph\">\u0412 \u0442\u043e\u0437\u0438 \u0441\u043b\u0443\u0447\u0430\u0439 \u043d\u0435 \u0435 \u043d\u0435\u043e\u0431\u0445\u043e\u0434\u0438\u043c\u043e \u0434\u0430 \u0441\u044a\u0437\u0434\u0430\u0432\u0430\u043c\u0435 \u043e\u0442\u0434\u0435\u043b\u0435\u043d \u043a\u043b\u0430\u0441 \u0437\u0430 \u043e\u0431\u0440\u0430\u0431\u043e\u0442\u043a\u0430 \u043d\u0430 \u0441\u044a\u0431\u0438\u0442\u0438\u0435\u0442\u043e.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">\u0417\u0430\u0431\u0435\u043b\u0435\u0436\u043a\u0430: \u041f\u043e\u043d\u0435\u0436\u0435 <code>ActionListener<\/code> \u0438\u043c\u0430 \u0441\u0430\u043c\u043e \u0435\u0434\u0438\u043d Abstract Method, \u0432 \u0441\u044a\u0432\u0440\u0435\u043c\u0435\u043d\u043d\u0430\u0442\u0430 Java \u043c\u043e\u0436\u0435\u043c \u0434\u0430 \u0438\u0437\u043f\u043e\u043b\u0437\u0432\u0430\u043c\u0435 \u0438 Lambda Expression:<\/p>\n\n\n<div class=\"wp-block-code\">\n\t<div class=\"cm-editor\">\n\t\t<div class=\"cm-scroller\">\n\t\t\t\n<pre>\n<code><div class=\"cm-line\">button.addActionListener(<\/div><div class=\"cm-line\">    e -&gt; System.out.println(&quot;Button clicked!&quot;)<\/div><div class=\"cm-line\">);<\/div><\/code><\/pre>\n\t\t<\/div>\n\t<\/div>\n<\/div>\n\n\n<p class=\"wp-block-paragraph\">\u0422\u043e\u0432\u0430 \u0435 \u043f\u043e-\u043a\u0440\u0430\u0442\u044a\u043a \u0438 \u0447\u0435\u0441\u0442\u043e \u043f\u0440\u0435\u0434\u043f\u043e\u0447\u0438\u0442\u0430\u043d \u043f\u043e\u0434\u0445\u043e\u0434.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">6. \u0421\u0440\u0430\u0432\u043d\u0435\u043d\u0438\u0435 \u043d\u0430 \u0447\u0435\u0442\u0438\u0440\u0438\u0442\u0435 \u0432\u0438\u0434\u0430 Nested Classes<\/h2>\n\n\n\n<figure class=\"wp-block-table\"><table class=\"has-fixed-layout\"><tbody><tr><th>\u0412\u0438\u0434<\/th><th>\u041a\u044a\u0434\u0435 \u0441\u0435 \u0434\u0435\u043a\u043b\u0430\u0440\u0438\u0440\u0430?<\/th><th>\u041d\u0435\u043e\u0431\u0445\u043e\u0434\u0438\u043c \u043b\u0438 \u0435 Outer Class \u0435\u043a\u0437\u0435\u043c\u043f\u043b\u044f\u0440?<\/th><\/tr><tr><td>Static Nested Class<\/td><td>\u0412\u044a\u0442\u0440\u0435 \u0432 \u043a\u043b\u0430\u0441<\/td><td>\u041d\u0435<\/td><\/tr><tr><td>Non-Static Inner Class<\/td><td>\u0412\u044a\u0442\u0440\u0435 \u0432 \u043a\u043b\u0430\u0441<\/td><td>\u0414\u0430<\/td><\/tr><tr><td>Local Inner Class<\/td><td>\u0412 \u043c\u0435\u0442\u043e\u0434 \u0438\u043b\u0438 \u0431\u043b\u043e\u043a<\/td><td>\u0414\u0430, \u043a\u043e\u0433\u0430\u0442\u043e \u0434\u043e\u0441\u0442\u044a\u043f\u0432\u0430 \u043d\u0435\u0441\u0442\u0430\u0442\u0438\u0447\u043d\u0438 \u0447\u043b\u0435\u043d\u043e\u0432\u0435 \u043d\u0430 Outer Class<\/td><\/tr><tr><td>Anonymous Inner Class<\/td><td>\u0412 \u0438\u0437\u0440\u0430\u0437 \u0438\u043b\u0438 \u0431\u043b\u043e\u043a<\/td><td>\u0417\u0430\u0432\u0438\u0441\u0438 \u043e\u0442 \u043a\u043e\u043d\u0442\u0435\u043a\u0441\u0442\u0430 \u0438 \u0431\u0430\u0437\u043e\u0432\u0438\u044f \u043a\u043b\u0430\u0441<\/td><\/tr><\/tbody><\/table><\/figure>\n\n\n\n<h2 class=\"wp-block-heading\">\u0412\u0430\u0436\u043d\u043e \u0437\u0430 Java Developer Interview<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">1. \u041a\u043e\u043b\u043a\u043e \u0432\u0438\u0434\u0430 Nested Classes \u0438\u043c\u0430 \u0432 Java?<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">\u0427\u0435\u0442\u0438\u0440\u0438: Static Nested Class, Non-Static Inner Class, Local Inner Class \u0438 Anonymous Inner Class.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">2. \u041a\u0430\u043a\u0432\u0430 \u0435 \u0440\u0430\u0437\u043b\u0438\u043a\u0430\u0442\u0430 \u043c\u0435\u0436\u0434\u0443 Static Nested Class \u0438 Inner Class?<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Static Nested Class \u043d\u0435 \u0438\u0437\u0438\u0441\u043a\u0432\u0430 \u0435\u043a\u0437\u0435\u043c\u043f\u043b\u044f\u0440 \u043d\u0430 Outer Class \u0438 \u043d\u044f\u043c\u0430 \u0434\u0438\u0440\u0435\u043a\u0442\u0435\u043d \u0434\u043e\u0441\u0442\u044a\u043f \u0434\u043e \u043d\u0435\u0433\u043e\u0432\u0438\u0442\u0435 \u043d\u0435\u0441\u0442\u0430\u0442\u0438\u0447\u043d\u0438 \u0447\u043b\u0435\u043d\u043e\u0432\u0435. Inner Class \u0435 \u0441\u0432\u044a\u0440\u0437\u0430\u043d \u0441 \u043a\u043e\u043d\u043a\u0440\u0435\u0442\u0435\u043d \u0435\u043a\u0437\u0435\u043c\u043f\u043b\u044f\u0440 \u043d\u0430 Outer Class.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">3. \u041c\u043e\u0436\u0435 \u043b\u0438 Inner Class \u0434\u0430 \u0434\u043e\u0441\u0442\u044a\u043f\u0432\u0430 private \u0447\u043b\u0435\u043d\u043e\u0432\u0435 \u043d\u0430 Outer Class?<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">\u0414\u0430. Java \u043f\u043e\u0437\u0432\u043e\u043b\u044f\u0432\u0430 \u043d\u0430 \u0432\u043b\u043e\u0436\u0435\u043d\u0438\u0442\u0435 \u043a\u043b\u0430\u0441\u043e\u0432\u0435 \u0434\u0430 \u0434\u043e\u0441\u0442\u044a\u043f\u0432\u0430\u0442 \u0432\u0441\u0438\u0447\u043a\u0438 \u0447\u043b\u0435\u043d\u043e\u0432\u0435 \u043d\u0430 Outer Class, \u0432\u043a\u043b\u044e\u0447\u0438\u0442\u0435\u043b\u043d\u043e <code>private<\/code>.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">4. \u041a\u0430\u043a\u0432\u043e \u043f\u0440\u0435\u0434\u0441\u0442\u0430\u0432\u043b\u044f\u0432\u0430 effectively final variable?<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">\u041b\u043e\u043a\u0430\u043b\u043d\u0430 \u043f\u0440\u043e\u043c\u0435\u043d\u043b\u0438\u0432\u0430, \u043a\u043e\u044f\u0442\u043e \u043d\u0435 \u0435 \u0438\u0437\u0440\u0438\u0447\u043d\u043e \u0434\u0435\u043a\u043b\u0430\u0440\u0438\u0440\u0430\u043d\u0430 \u043a\u0430\u0442\u043e <code>final<\/code>, \u043d\u043e \u0441\u043b\u0435\u0434 \u0438\u043d\u0438\u0446\u0438\u0430\u043b\u0438\u0437\u0430\u0446\u0438\u044f\u0442\u0430 \u0441\u0442\u043e\u0439\u043d\u043e\u0441\u0442\u0442\u0430 \u045d \u043d\u0435 \u0441\u0435 \u043f\u0440\u043e\u043c\u0435\u043d\u044f.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">5. \u041a\u0430\u043a\u0432\u0430 \u0435 \u0440\u0430\u0437\u043b\u0438\u043a\u0430\u0442\u0430 \u043c\u0435\u0436\u0434\u0443 Local Inner Class \u0438 Anonymous Inner Class?<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Local Inner Class \u0438\u043c\u0430 \u0438\u043c\u0435 \u0438 \u043c\u043e\u0436\u0435 \u0434\u0430 \u0431\u044a\u0434\u0435 \u0441\u044a\u0437\u0434\u0430\u0432\u0430\u043d \u043c\u043d\u043e\u0433\u043e\u043a\u0440\u0430\u0442\u043d\u043e \u0432 \u0440\u0430\u043c\u043a\u0438\u0442\u0435 \u043d\u0430 \u0441\u0432\u043e\u044f\u0442\u0430 \u043e\u0431\u043b\u0430\u0441\u0442 \u043d\u0430 \u0432\u0438\u0434\u0438\u043c\u043e\u0441\u0442.<\/li>\n\n\n\n<li>Anonymous Inner Class \u043d\u044f\u043c\u0430 \u0438\u043c\u0435 \u0438 \u0441\u0435 \u0434\u0435\u043a\u043b\u0430\u0440\u0438\u0440\u0430 \u0438 \u0438\u043d\u0441\u0442\u0430\u043d\u0446\u0438\u0440\u0430 \u0435\u0434\u043d\u043e\u0432\u0440\u0435\u043c\u0435\u043d\u043d\u043e.<\/li>\n<\/ul>\n\n\n\n<p class=\"wp-block-paragraph\">6. \u041c\u043e\u0436\u0435 \u043b\u0438 Anonymous Inner Class \u0434\u0430 \u0438\u043c\u043f\u043b\u0435\u043c\u0435\u043d\u0442\u0438\u0440\u0430 Interface?<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">\u0414\u0430. \u041c\u043e\u0436\u0435 \u0434\u0430 \u043f\u0440\u0435\u0434\u043e\u0441\u0442\u0430\u0432\u0438 \u0438\u043c\u043f\u043b\u0435\u043c\u0435\u043d\u0442\u0430\u0446\u0438\u044f \u043d\u0430 Interface \u0438\u043b\u0438 \u0434\u0430 \u043d\u0430\u0441\u043b\u0435\u0434\u0438 \u043a\u043e\u043d\u043a\u0440\u0435\u0442\u0435\u043d \u0438\u043b\u0438 \u0430\u0431\u0441\u0442\u0440\u0430\u043a\u0442\u0435\u043d \u043a\u043b\u0430\u0441.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">7. \u041a\u0430\u043a\u0432\u0430 \u0435 \u0440\u0430\u0437\u043b\u0438\u043a\u0430\u0442\u0430 \u043c\u0435\u0436\u0434\u0443 Anonymous Inner Class \u0438 Lambda Expression?<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Lambda Expression \u043c\u043e\u0436\u0435 \u0434\u0430 \u0441\u0435 \u0438\u0437\u043f\u043e\u043b\u0437\u0432\u0430 \u0437\u0430 Functional Interfaces, \u0434\u043e\u043a\u0430\u0442\u043e Anonymous Inner Class \u043c\u043e\u0436\u0435 \u0434\u0430 \u0438\u043c\u043f\u043b\u0435\u043c\u0435\u043d\u0442\u0438\u0440\u0430 Interface \u0441 \u043f\u043e\u0432\u0435\u0447\u0435 \u043e\u0442 \u0435\u0434\u0438\u043d Abstract Method \u0438\u043b\u0438 \u0434\u0430 \u043d\u0430\u0441\u043b\u0435\u0434\u044f\u0432\u0430 Class.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">\u041e\u0441\u043d\u043e\u0432\u0435\u043d \u0438\u0437\u0432\u043e\u0434<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">Nested Classes \u043f\u043e\u0437\u0432\u043e\u043b\u044f\u0432\u0430\u0442 \u043f\u043e-\u0434\u043e\u0431\u0440\u0430 \u043e\u0440\u0433\u0430\u043d\u0438\u0437\u0430\u0446\u0438\u044f \u0438 \u043a\u0430\u043f\u0441\u0443\u043b\u0430\u0446\u0438\u044f \u043d\u0430 \u043a\u043e\u0434\u0430 \u0432 Java. \u0422\u0435 \u0441\u0430 \u043e\u0441\u043e\u0431\u0435\u043d\u043e \u043f\u043e\u043b\u0435\u0437\u043d\u0438, \u043a\u043e\u0433\u0430\u0442\u043e \u0434\u0430\u0434\u0435\u043d \u043a\u043b\u0430\u0441 \u0438\u043c\u0430 \u0441\u043c\u0438\u0441\u044a\u043b \u0441\u0430\u043c\u043e \u043a\u0430\u0442\u043e \u0447\u0430\u0441\u0442 \u043e\u0442 \u0434\u0440\u0443\u0433 \u043a\u043b\u0430\u0441.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">\u0417\u0430 Java Developer \u0435 \u0432\u0430\u0436\u043d\u043e \u0434\u0430 \u0440\u0430\u0437\u0431\u0438\u0440\u0430 \u0440\u0430\u0437\u043b\u0438\u043a\u0438\u0442\u0435 \u043c\u0435\u0436\u0434\u0443 \u0447\u0435\u0442\u0438\u0440\u0438\u0442\u0435 \u0432\u0438\u0434\u0430, \u043d\u0430\u0447\u0438\u043d\u0430 \u043d\u0430 \u0441\u044a\u0437\u0434\u0430\u0432\u0430\u043d\u0435 \u043d\u0430 Inner Class \u0438 \u0434\u043e\u0441\u0442\u044a\u043f\u0430 \u0438\u043c \u0434\u043e \u0447\u043b\u0435\u043d\u043e\u0432\u0435\u0442\u0435 \u043d\u0430 Outer Class.<\/p>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h2 class=\"wp-block-heading\">\u042f\u0440\u0438\u043b\u0446\u043b\u0430\u0433\u044b\u043d \u0445\u0430\u0440\u0438\u0443\u043b\u0442 \u0431\u04af\u0445\u0438\u0439 \u0431\u043e\u0434\u0438\u0442 \u0436\u0438\u0448\u044d\u044d\u043d\u04af\u04af\u0434<\/h2>\n\n\n\n<ul class=\"wp-block-list\">\n<li>\u041f\u043e\u043b\u0438\u043c\u043e\u0440\u0444\u0438\u0437\u043c, \u0441\u0442\u0430\u0442\u0438\u043a \u0430\u0440\u0433\u0443\u0443\u0434, String pool \u0433\u044d\u0445 \u043c\u044d\u0442 \u04af\u043d\u0434\u0441\u0438\u0439\u0433 \u043e\u0439\u043b\u0433\u043e\u0434\u043e\u0433<\/li>\n\n\n\n<li>\u0426\u0443\u0433\u043b\u0443\u0443\u043b\u0433\u0430 (\u0436\u0438\u0448\u044d\u044d \u043d\u044c HashSet, TreeSet) \u0431\u043e\u043b\u043e\u043d \u0442\u044d\u0434\u0433\u044d\u044d\u0440\u0438\u0439\u043d \u0445\u044d\u0440\u044d\u0433\u043b\u044d\u044d\u043d\u0438\u0439 \u0442\u043e\u0445\u0438\u043e\u043b\u0434\u043b\u0443\u0443\u0434\u044b\u0433 \u043c\u044d\u0434\u0434\u044d\u0433.<\/li>\n\n\n\n<li>\u0411\u0443\u0443\u0440\u0446\u0430\u0433\u043d\u044b \u0445\u0430\u043c\u0440\u0430\u0445 \u0445\u04af\u0440\u044d\u044d\u0433 \u0437\u04e9\u0432 \u0442\u043e\u0434\u043e\u0440\u0445\u043e\u0439\u043b\u043e\u0445 (\u0433\u0430\u043d\u0446 \u0431\u0438\u0435, \u043f\u0440\u043e\u0442\u043e\u0442\u0438\u043f)<\/li>\n\n\n\n<li>\u0425\u0430\u0440\u0430\u0430\u0442 \u0448\u0430\u0445\u0430\u043b\u0442 \u0433\u044d\u0436 \u044e\u0443 \u0431\u043e\u043b\u043e\u0445, \u0442\u04af\u04af\u043d\u0438\u0439 \u0437\u043e\u0440\u0438\u043b\u0433\u044b\u0433 \u043e\u0439\u043b\u0433\u043e\u0434\u043e\u0433.<\/li>\n\n\n\n<li>\u0425\u043e\u043b\u0431\u043e\u043b\u0442\u044b\u043d \u0445\u04af\u0441\u043d\u044d\u0433\u0442\u04af\u04af\u0434\u0438\u0439\u0433 \u0430\u0448\u0438\u0433\u043b\u0430\u043d \u043e\u043b\u043e\u043d-\u043e\u043b\u043e\u043d \u0445\u0430\u0440\u0438\u043b\u0446\u0430\u0430\u0433 \u0445\u044d\u0440\u0445\u044d\u043d \u0445\u044d\u0440\u044d\u0433\u0436\u04af\u04af\u043b\u044d\u0445\u0438\u0439\u0433 \u043c\u044d\u0434\u0434\u044d\u0433.<\/li>\n\n\n\n<li>\u0418\u043d\u0434\u0435\u043a\u0441\u04af\u04af\u0434\u0438\u0439\u043d \u0437\u043e\u0440\u0438\u043b\u0433\u044b\u0433 \u043e\u0439\u043b\u0433\u043e\u0434\u043e\u0433 (\u04e9\u043d\u0433\u04e9\u0446\u0445\u04e9\u043d \u0447 \u0433\u044d\u0441\u044d\u043d)<\/li>\n\n\n\n<li>\u041c\u043e\u043d\u043e\u043b\u0438\u0442 \u0431\u043e\u043b\u043e\u043d \u043c\u0438\u043a\u0440\u043e \u04af\u0439\u043b\u0447\u0438\u043b\u0433\u044d\u044d\u043d\u0438\u0439 \u0430\u0440\u0445\u0438\u0442\u0435\u043a\u0442\u0443\u0440\u044b\u0433 \u044f\u043b\u0433\u0430\u0436 \u0447\u0430\u0434\u0434\u0430\u0433<\/li>\n\n\n\n<li>\u04ae\u043d\u0434\u0441\u044d\u043d \u043d\u04e9\u0445\u0446\u043b\u04af\u04af\u0434\u0438\u0439\u0433 \u043e\u0439\u043b\u0433\u043e\u0434\u043e\u0433 (\u04e9\u0440\u0433\u04e9\u0436\u04af\u04af\u043b\u044d\u0445 \u0447\u0430\u0434\u0432\u0430\u0440, \u0442\u043e\u0433\u0442\u0432\u043e\u0440\u0442\u043e\u0439 \u0431\u0430\u0439\u0434\u0430\u043b)<\/li>\n\n\n\n<li>\u041b\u0438\u0441\u043a\u043e\u0432\u044b\u043d \u043e\u0440\u043b\u0443\u0443\u043b\u0430\u043b\u0442\u044b\u043d \u0437\u0430\u0440\u0447\u0438\u043c \u0431\u0430 \u0445\u0430\u0440\u0430\u0430\u0442 \u0431\u0430\u0439\u0434\u043b\u044b\u043d \u0443\u0440\u0432\u0443\u0443 \u0431\u0430\u0439\u0434\u043b\u044b\u0433 \u0437\u04e9\u0432 \u043e\u0439\u043b\u0433\u043e\u0434\u043e\u0433\u0433\u04af\u0439<\/li>\n\n\n\n<li>\u041d\u044d\u044d\u043b\u0442\u0442\u044d\u0439\/\u0445\u0430\u0430\u043b\u0442\u0442\u0430\u0439 \u0437\u0430\u0440\u0447\u043c\u044b\u043d \u0442\u0430\u043b\u0430\u0430\u0440 \u0442\u043e\u0434\u043e\u0440\u0445\u043e\u0439 \u0436\u0438\u0448\u044d\u044d \u04e9\u0433\u04e9\u0445\u04e9\u0434 \u0431\u044d\u0440\u0445.<\/li>\n\n\n\n<li>\u0411\u0443\u0443\u0440\u0446\u0430\u0433\u043d\u044b \u0430\u043c\u044c\u0434\u0440\u0430\u043b\u044b\u043d \u043c\u04e9\u0447\u043b\u04e9\u0433\u0438\u0439\u043d \u043c\u0435\u043d\u0435\u0436\u043c\u0435\u043d\u0442\u0438\u0439\u043d \u0442\u0430\u043b\u0430\u0430\u0440 \u0433\u04af\u043d\u0437\u0433\u0438\u0439 \u043c\u044d\u0434\u043b\u044d\u0433\u0433\u04af\u0439.<\/li>\n\n\n\n<li>\u0422\u044d\u0440 \u0434\u044d\u0432\u0448\u0438\u043b\u0442\u044d\u0442 \u0445\u0430\u0440\u0430\u0430\u0442 \u0442\u0430\u0440\u0438\u043b\u0433\u044b\u0433 \u043e\u0439\u043b\u0433\u043e\u0445\u0433\u04af\u0439 \u0431\u0430\u0439\u043d\u0430.<\/li>\n\n\n\n<li>\u0418\u043d\u0434\u0435\u043a\u0441\u04af\u04af\u0434\u0438\u0439\u043d \u0442\u0430\u043b\u0430\u0430\u0440 \u04e9\u043d\u0433\u04e9\u0446 \u043e\u0439\u043b\u0433\u043e\u043b\u0442\u0442\u043e\u0439 (\u043d\u0438\u0439\u043b\u043c\u044d\u043b \u0438\u043d\u0434\u0435\u043a\u0441, \u0445\u0430\u0439\u043b\u0442\u044b\u0433 \u043e\u043d\u043e\u0432\u0447\u0442\u043e\u0439 \u0431\u043e\u043b\u0433\u043e\u0445).<\/li>\n\n\n\n<li>\u0422\u0443\u0441\u0433\u0430\u0430\u0440\u043b\u0430\u043b\u0442\u044b\u043d \u0442\u04af\u0432\u0448\u0438\u043d, \u04e9\u04e9\u0434\u0440\u04e9\u0433\/\u0433\u0443\u0442\u0440\u0430\u043d\u0433\u0438 \u0442\u04af\u0433\u0436\u044d\u044d\u0433 \u0441\u0430\u0439\u043d \u043c\u044d\u0434\u044d\u0445\u0433\u04af\u0439.<\/li>\n<\/ul>\n\n\n\n<p class=\"wp-block-paragraph\">\u0414\u0430\u0432\u0443\u0443 \u0442\u0430\u043b:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>\u0422\u043e\u043c, \u0442\u04e9\u0432\u04e9\u0433\u0442\u044d\u0439 \u0441\u0438\u0441\u0442\u0435\u043c\u0434 \u0445\u0443\u0443\u0447\u0438\u043d \u043a\u043e\u0434\u0442\u043e\u0439 \u0430\u0436\u0438\u043b\u043b\u0430\u0441\u0430\u043d.<\/li>\n\n\n\n<li>\u0422\u044d\u0440 SOLID-\u0433 \u0441\u0430\u0439\u043d \u043c\u044d\u0434\u0434\u044d\u0433.<\/li>\n\n\n\n<li>\u0423\u0440\u0441\u0433\u0430\u043b\u044b\u043d \u0442\u0430\u043b\u0430\u0430\u0440 \u043c\u044d\u0434\u043b\u044d\u0433\u0442\u044d\u0439.<\/li>\n\n\n\n<li>\u0418\u043d\u0434\u0435\u043a\u0441 \u0431\u0430 ACID-\u0438\u0439\u0433 \u0442\u0430\u0439\u043b\u0431\u0430\u0440\u043b\u0430.<\/li>\n\n\n\n<li>\u0410\u043d\u0433\u043b\u0438 \u0445\u044d\u043b\u043d\u0438\u0439 \u0441\u0430\u0439\u043d \u0442\u04af\u0432\u0448\u0438\u043d<br>\u0421\u0443\u043b \u0442\u0430\u043b:<\/li>\n\n\n\n<li>\u0411\u0430\u0439\u0440\u043b\u0443\u0443\u043b\u0430\u043b\u0442, \u0434\u044d\u0434 \u0431\u04af\u0442\u044d\u0446, \u0430\u0440\u0445\u0438\u0442\u0435\u043a\u0442\u0443\u0440\u044b\u043d \u0434\u0438\u0437\u0430\u0439\u043d\u0434 \u043e\u0440\u043e\u043b\u0446\u043e\u0445 \u0445\u0430\u0440\u0438\u0443\u0446\u043b\u0430\u0433\u0430 \u0445\u04af\u043b\u044d\u044d\u0445\u0433\u04af\u0439.<\/li>\n\n\n\n<li>OOP \u0437\u0430\u0440\u0447\u043c\u0443\u0443\u0434\u044b\u043d \u0442\u0430\u043b\u0430\u0430\u0440 \u0442\u043e\u0434\u043e\u0440\u0445\u043e\u0439 \u043c\u044d\u0434\u043b\u044d\u0433\u0442\u044d\u0439 \u0431\u043e\u043b\u043e\u0432\u0447 \u0442\u044d\u0434\u0433\u044d\u044d\u0440\u0438\u0439\u0433 \u0442\u0430\u0439\u043b\u0431\u0430\u0440\u043b\u0430\u0445\u0430\u0434 \u043d\u043e\u0446\u0442\u043e\u0439 \u0445\u04af\u043d\u0434\u0440\u044d\u043b\u0442\u044d\u0439 \u0431\u0430\u0439\u0441\u0430\u043d \u0431\u04e9\u0433\u04e9\u04e9\u0434 \u0437\u0430\u0440\u0438\u043c \u043e\u0439\u043b\u0433\u043e\u043b\u0442\u044b\u0433 \u0442\u04e9\u04e9\u0440\u04e9\u0433\u0434\u04af\u04af\u043b\u0441\u044d\u043d.<\/li>\n\n\n\n<li>\u0426\u0443\u0433\u043b\u0443\u0443\u043b\u0433\u044b\u043d \u0442\u0430\u043b\u0430\u0430\u0440\u0445\u0438 \u0435\u0440\u04e9\u043d\u0445\u0438\u0439 \u043c\u044d\u0434\u043b\u044d\u0433, \u0433\u044d\u0445\u0434\u044d\u044d \u0446\u043e\u043e\u0440\u0445\u043e\u0439\u0442\u043e\u0439, \u0442\u043e\u0434\u043e\u0440\u0445\u043e\u0439\u0433\u04af\u0439.<\/li>\n\n\n\n<li>\u0417\u044d\u0440\u044d\u0433\u0446\u044d\u044d \u0431\u0430 \u043f\u0430\u0440\u0430\u043b\u043b\u0435\u043b\u0438\u0437\u043c \u0445\u043e\u0451\u0440\u044b\u043d \u044f\u043b\u0433\u0430\u0430\u0433 \u043e\u0439\u043b\u0433\u043e\u0434\u043e\u0433\u0433\u04af\u0439, \u043f\u0430\u0440\u0430\u043b\u043b\u0435\u043b\u0438\u0437\u043c\u044b\u043d \u0442\u0430\u043b\u0430\u0430\u0440 \u043e\u043d\u0446\u0433\u043e\u0439 \u043c\u044d\u0434\u043b\u044d\u0433\u0433\u04af\u0439.<\/li>\n\n\n\n<li>\u042d\u043d\u044d \u043d\u044c \u043c\u0438\u043a\u0440\u043e \u04af\u0439\u043b\u0447\u0438\u043b\u0433\u044d\u044d\u043d\u0438\u0439 \u0430\u0440\u0445\u0438\u0442\u0435\u043a\u0442\u0443\u0440\u044b\u0433 \u043d\u0430\u0440\u0438\u0439\u0432\u0447\u043b\u0430\u043d \u0430\u0432\u0447 \u04af\u0437\u044d\u044d\u0433\u04af\u0439 \u0431\u0430\u0439\u043d\u0430.<\/li>\n\n\n\n<li>\u04e8\u0433\u04e9\u0433\u0434\u043b\u0438\u0439\u043d \u0441\u0430\u043d\u0433\u0438\u0439\u043d \u0437\u0430\u0440\u0438\u043c \u043e\u0439\u043b\u0433\u043e\u043b\u0442\u044b\u043d \u0445\u043e\u0451\u0440\u0434\u043c\u043e\u043b \u0443\u0442\u0433\u0430 (\u0438\u043d\u0434\u0435\u043a\u0441\u04af\u04af\u0434\u0438\u0439\u043d \u0442\u0430\u043b\u0430\u0430\u0440\u0445 \u0445\u044d\u043b\u044d\u043b\u0446\u04af\u04af\u043b\u044d\u0433 \u04e9\u043d\u0433\u04e9\u0446\u0445\u04e9\u043d \u0431\u0430\u0439\u0441\u0430\u043d).<\/li>\n\n\n\n<li>\u0410\u043c\u044c\u0434 \u0442\u04af\u0433\u0436\u044d\u044d\u0433 \u0442\u0430\u0439\u043b\u0431\u0430\u0440\u043b\u0430\u0436 \u0447\u0430\u0434\u0441\u0430\u043d\u0433\u04af\u0439.<\/li>\n\n\n\n<li>\u042d\u0446\u0441\u0438\u0439\u043d \u0431\u043b\u043e\u043a\u0438\u0439\u043d \u0442\u0443\u0445\u0430\u0439 \u043e\u0439\u043b\u0433\u043e\u043b\u0442\u043e\u0434 \u0446\u043e\u043e\u0440\u0445\u043e\u0439 \u0431\u0430\u0439\u043d\u0430.<\/li>\n\n\n\n<li>\u041e\u043d\u0446\u0433\u043e\u0439 \u0442\u043e\u0445\u0438\u043e\u043b\u0434\u043b\u0443\u0443\u0434\u044b\u0433 \u0437\u043e\u0445\u0438\u0446\u0443\u0443\u043b\u0430\u0445 \u043e\u043d\u0446\u043b\u043e\u0433 \u0448\u0438\u043d\u0436 \u0447\u0430\u043d\u0430\u0440\u0443\u0443\u0434\u044b\u043d \u0442\u0430\u043b\u0430\u0430\u0440\u0445\u0438 \u043c\u044d\u0434\u043b\u044d\u0433 \u0445\u044f\u0437\u0433\u0430\u0430\u0440\u043b\u0430\u0433\u0434\u043c\u0430\u043b.<\/li>\n\n\n\n<li>\u0425\u0430\u043d\u0434\u0430\u043b\u0442\u044b\u043d \u0442\u043e\u0445\u0438\u0440\u0443\u0443\u043b\u0430\u0433\u0447\u0442\u0430\u0439 \u0430\u043d\u0434\u0443\u0443\u0440\u0447 \u0431\u0430\u0439\u043d\u0430 (\u0445\u0430\u043c\u0433\u0430\u0430\u043b\u0430\u0433\u0434\u0441\u0430\u043d \u0431\u0430 \u0445\u0443\u0432\u0438\u0439\u043d \u0431\u0430\u0433\u0446)<br>\u041d\u0438\u0439\u0442\u043b\u044d\u0433 \u0431\u043e\u0434\u043e\u043b \u043d\u044c \u0438\u0439\u043c \u0431\u0430\u0439\u043d\u0430<br>\u0422\u0435\u0445\u043d\u0438\u043a\u0438\u0439\u043d \u043c\u044d\u0434\u043b\u044d\u0433\u0438\u0439\u043d \u0445\u043e\u043c\u0441\u0434\u043e\u043b\u044b\u043d \u0443\u043b\u043c\u0430\u0430\u0441 \u0434\u0443\u043d\u0434 Java \u0445\u04e9\u0433\u0436\u04af\u04af\u043b\u044d\u0433\u0447\u0438\u0439\u043d \u0430\u043b\u0431\u0430\u043d \u0442\u0443\u0448\u0430\u0430\u043b\u0434 \u0442\u043e\u0445\u0438\u0440\u043e\u043c\u0436\u0433\u04af\u0439.<\/li>\n\n\n\n<li>\u0421\u0430\u0439\u043d \u0442\u0430\u0439\u043b\u0431\u0430\u0440\u043b\u0430\u0432.<\/li>\n\n\n\n<li>OOP-\u0433 \u0441\u0430\u0439\u043d \u0442\u0430\u0439\u043b\u0431\u0430\u0440\u043b\u0430\u0432.<\/li>\n\n\n\n<li>\u0417\u043e\u0445\u0438\u043e\u043b\u044b\u0433 \u0442\u0430\u0439\u043b\u0431\u0430\u0440\u043b\u0430\u0432 (\u0433\u044d\u0445\u0434\u044d\u044d \u044d\u043d\u044d \u043d\u044c \u044d\u0445\u044d\u043d\u0434\u044d\u044d \u0436\u0430\u0430\u0445\u0430\u043d \u0445\u044d\u0446\u04af\u04af \u0431\u0430\u0439\u0441\u0430\u043d).<\/li>\n\n\n\n<li>\u0426\u0443\u0433\u043b\u0443\u0443\u043b\u0433\u044b\u043d \u0442\u0430\u043b\u0430\u0430\u0440 \u043c\u0430\u0448 \u0441\u0430\u0439\u043d \u043e\u0439\u043b\u0433\u043e\u043b\u0442\u0442\u043e\u0439.<\/li>\n\n\n\n<li>\u0416\u0430\u0433\u0441\u0430\u0430\u043b\u0442 \u0431\u0430 \u0431\u0430\u0433\u0446\u0443\u0443\u0434\u044b\u043d \u044f\u043b\u0433\u0430\u0430\u0433 \u0442\u0430\u0439\u043b\u0431\u0430\u0440\u043b\u0430.<\/li>\n\n\n\n<li>HashSet-\u0438\u0439\u043d \u0442\u0430\u043b\u0430\u0430\u0440 \u044f\u0440\u0438\u043b\u0446.<\/li>\n\n\n\n<li>HashMap-\u0438\u0439\u043d \u0442\u0430\u043b\u0430\u0430\u0440 \u044f\u0440\u0438\u043b\u0446.<\/li>\n\n\n\n<li>ConcurrentHashMap-\u0438\u0439\u043d \u0442\u0430\u043b\u0430\u0430\u0440 \u044f\u0440\u0438\u043b\u0446.<\/li>\n\n\n\n<li>\u04e8\u0433\u04e9\u0433\u0434\u043b\u0438\u0439\u043d \u0431\u04af\u0442\u0446\u0438\u0439\u043d \u0442\u0430\u043b\u0430\u0430\u0440 \u0441\u0430\u0439\u043d \u043e\u0439\u043b\u0433\u043e\u043b\u0442\u0442\u043e\u0439 &#8211; \u0441\u0442\u0435\u043a, \u0434\u0430\u0440\u0430\u0430\u043b\u0430\u043b, \u043c\u043e\u0434.<\/li>\n\n\n\n<li>JVM \u0430\u0440\u0445\u0438\u0442\u0435\u043a\u0442\u0443\u0440\u044b\u043d \u0442\u0430\u043b\u0430\u0430\u0440 \u0441\u0430\u0439\u043d \u043c\u044d\u0434\u043b\u044d\u0433\u0442\u044d\u0439.<\/li>\n\n\n\n<li>\u0417\u044d\u0440\u044d\u0433\u0446\u044d\u044d \u0431\u0430 \u043f\u0430\u0440\u0430\u043b\u043b\u0435\u043b\u0438\u0437\u043c\u044b\u043d \u0442\u0430\u043b\u0430\u0430\u0440 \u0441\u0430\u0439\u043d \u0442\u0430\u0439\u043b\u0431\u0430\u0440\u043b\u0430\u0436, \u043e\u043b\u043e\u043d \u0443\u0440\u0441\u0433\u0430\u043b\u0442\u0430\u0439 \u043f\u0440\u043e\u0433\u0440\u0430\u043c\u0443\u0443\u0434\u044b\u043d \u0441\u0430\u0439\u043d \u043c\u044d\u0434\u043b\u044d\u0433\u0438\u0439\u0433 \u0445\u0430\u0440\u0443\u0443\u043b\u0441\u0430\u043d.<\/li>\n\n\n\n<li>REST-\u0438\u0439\u043d \u0442\u0430\u043b\u0430\u0430\u0440 \u0441\u0430\u0439\u043d \u043e\u0439\u043b\u0433\u043e\u043b\u0442\u0442\u043e\u0439.<\/li>\n\n\n\n<li>db \u0438\u043d\u0434\u0435\u043a\u0441\u0438\u0439\u0433 \u0441\u0430\u0439\u043d \u0442\u0430\u0439\u043b\u0431\u0430\u0440\u043b\u0430\u0432.<\/li>\n\n\n\n<li>\u0422\u04e9\u0440\u04e9\u043b \u0431\u04af\u0440\u0438\u0439\u043d \u0445\u043e\u043b\u0431\u043e\u043b\u0442\u044b\u0433 \u0442\u0430\u0439\u043b\u0431\u0430\u0440\u043b\u0430.<\/li>\n<\/ul>\n\n\n\n<p class=\"wp-block-paragraph\"><\/p>\n","protected":false},"excerpt":{"rendered":"<p>Java \u0ba4\u0bc1\u0b95\u0bcd\u0b95\u0bcd\u0b95\u0bc1\u0b95\u0bcd\u0b95\u0bc1\u0b95\u0bcd\u0b95\u0bc1\u0b95\u0bcd\u0b95\u0bc1\u0b95\u0bcd\u0b95\u0bc1\u0b95\u0bcd\u0b95\u0bcd\u0b95\u0bc1\u0b95\u0bc1 \u0ba4\u0bbf\u0baf\u0bc1\u0b95\u0bcd\u0b95\u0bc1 SOLID \u0437\u0430\u0440\u0447\u0438\u043c \u0b89\u0baf\u0bc1 \u0bb5\u0bc8? \u041d\u0438\u0439\u0433\u043c\u0438\u0439\u043d \u0445\u0430\u0440\u0438\u0443\u0446\u043b\u0430\u0433\u044b\u043d \u0437\u0430\u0440\u0447\u0438\u043c (SRP) \u0433\u044d\u0436 \u044e\u0443 \u0432\u044d? \u0410\u043d\u0433\u0438 \u043d\u0430 \u043a\u043e\u043d\u043a\u0443 \u0431\u0438\u0440 \u0440\u0430\u0431\u043e\u0442\u0430\u043d\u0438\u044f \u0432\u044b\u0445\u043e\u0434 \u0432\u044b\u0445\u043e\u0434\u0438\u0442 \u0432\u044b\u0445\u043e\u0434\u0438\u0442\u0441\u044f \u0432\u044b\u0445\u043e\u0434\u043d\u044b\u0439 \u0440\u0430\u0437\u043e\u043d. \u0410\u0448\u0438\u0433 \u0442\u0443\u0441 \u043d\u0430 \u0441\u0430\u0439\u0442\u0435 \u044d\u043a\u0441\u0442\u0440\u0430\u043d\u0438\u0446\u0430, \u0431\u0430\u0433\u0430 \u043a\u043e\u043d\u0442\u0430\u043a\u0442\u044b, \u043f\u0430\u0447\u0435 \u0441\u0430\u0439\u043d \u043e\u0433\u0440\u0430\u0437\u043e\u0432\u044b\u0439 \u043e\u0440\u043d\u043e. \u0416\u0438\u0448\u044d\u044d: \u041d\u0435\u0435\u043b\u0442\u0442\u044d\u0439 \u043e\u0447\u0435\u043d\u044c \u0445\u04af\u043b\u044d\u044d\u043d \u0430\u0432\u0430\u0445 (OCP) \u043f\u0440\u043e\u0433\u0440\u0430\u043c \u0445\u0430\u043d\u0433\u0430\u043c\u0436\u0438\u0439\u043d \u0431\u04af\u0440\u044d\u043b\u0434\u044d\u0445\u04af\u04af\u043d \u0445\u044d\u0441\u044d\u0433 [&hellip;]<\/p>\n","protected":false},"author":65283547,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"_coblocks_attr":"","_coblocks_dimensions":"","_coblocks_responsive_height":"","_coblocks_accordion_ie_support":"","_jetpack_newsletter_access":"","_jetpack_dont_email_post_to_subs":false,"_jetpack_newsletter_tier_id":0,"_jetpack_memberships_contains_paywalled_content":false,"_wpcom_ai_launchpad_first_post":false,"_jetpack_hide_featured_image":false,"_jetpack_featured_image_duplicate_dismissed":0,"_jetpack_feature_clip_id":0,"_jetpack_memberships_contains_paid_content":false,"footnotes":"","jetpack_publicize_message":"","jetpack_publicize_feature_enabled":true,"jetpack_social_post_already_shared":false,"jetpack_social_options":{"image_generator_settings":{"template":"highway","default_image_id":0,"font":"","enabled":false},"version":2},"jetpack_post_was_ever_published":false},"categories":[1017],"tags":[11788,789678139,2549795,196,789678143],"class_list":["post-2308","post","type-post","status-publish","format-standard","hentry","category-java","tag-11788","tag-java-","tag-java","tag-196"],"jetpack_publicize_connections":[],"jetpack_sharing_enabled":true,"jetpack_shortlink":"https:\/\/wp.me\/p4CoHV-Be","jetpack-related-posts":[{"id":2266,"url":"https:\/\/vkrastev1blog.com\/2025\/11\/19\/%d0%ba%d0%b0%d0%ba-%d0%b4%d0%b0-%d1%87%d0%b5%d1%82%d0%b5%d0%bc-%d0%b1%d0%b8%d0%b1%d0%bb%d0%b8%d1%8f%d1%82%d0%b0-%d0%bf%d1%8a%d0%bb%d0%bd%d0%be%d1%86%d0%b5%d0%bd%d0%bd%d0%be-%d0%b3%d0%be%d1%80%d0%b4\/","url_meta":{"origin":2308,"position":0},"title":"\u041a\u0430\u043a \u0434\u0430 \u0447\u0435\u0442\u0435\u043c \u0411\u0438\u0431\u043b\u0438\u044f\u0442\u0430 \u043f\u044a\u043b\u043d\u043e\u0446\u0435\u043d\u043d\u043e &#8211; \u0413\u043e\u0440\u0434\u044a\u043d \u0424\u0438\u0439","author":"vkrastev2014","date":"19.11.2025","format":false,"excerpt":"\u041a\u0410\u041a \u0414\u0410 \u0427\u0415\u0422\u0415\u041c \u0411\u0418\u0411\u041b\u0418\u042f\u0422\u0410 \u041f\u042a\u041b\u041d\u041e\u0426\u0415\u041d\u041d\u041e \u2013 \u0413\u041e\u0420\u0414\u042a\u041d \u0424\u0418\u0419 \u0412\u044a\u0432\u0435\u0434\u0435\u043d\u0438\u0435 \u2013 \u0411\u0438\u0431\u043b\u0438\u044f\u0442\u0430 \u043d\u0435 \u0435 \u043f\u0440\u043e\u0441\u0442\u043e \u043a\u043d\u0438\u0433\u0430, \u043a\u043e\u044f\u0442\u043e \u0442\u0440\u044f\u0431\u0432\u0430 \u0434\u0430 \u043f\u0440\u043e\u0447\u0435\u0442\u0435\u043c, \u0430 \u0411\u043e\u0436\u0438\u0435 \u0421\u043b\u043e\u0432\u043e, \u043a\u043e\u0435\u0442\u043e \u0442\u0440\u044f\u0431\u0432\u0430 \u0434\u0430 \u0440\u0430\u0437\u0431\u0435\u0440\u0435\u043c !!! \u0422\u0430\u0437\u0438 \u0441\u0442\u0430\u0442\u0438\u044f \u0435 \u0441\u0432\u043e\u0435\u043e\u0431\u0440\u0430\u0437\u043d\u043e \u043f\u0440\u0430\u043a\u0442\u0438\u0447\u0435\u0441\u043a\u043e \u0440\u044a\u043a\u043e\u0432\u043e\u0434\u0441\u0442\u0432\u043e \u0437\u0430 \u0432\u0441\u0435\u043a\u0438 \u0445\u0440\u0438\u0441\u0442\u0438\u044f\u043d\u0438\u043d, \u043a\u043e\u0439\u0442\u043e \u0438\u0441\u043a\u0430 \u043d\u0435 \u043f\u0440\u043e\u0441\u0442\u043e \u0434\u0430 \u0447\u0435\u0442\u0435 \u0411\u0438\u0431\u043b\u0438\u044f\u0442\u0430, \u0430 \u0434\u0430 \u0440\u0430\u0437\u0431\u0438\u0440\u0430 \u043f\u0440\u0430\u0432\u0438\u043b\u043d\u043e \u0411\u043e\u0436\u0438\u0435\u0442\u043e \u0421\u043b\u043e\u0432\u043e, \u0434\u0430\u2026","rel":"","context":"In &quot;\u0411\u0438\u0431\u043b\u0438 \u0431\u043e\u043b\u043e\u043d \u0441\u04af\u043d\u0441 \u0431\u0430 \u0431\u0438\u0435\u0438\u0439\u043d \u0442\u0443\u0445\u0430\u0439 \u04e9\u0433\u04af\u04af\u043b\u0441\u044d\u043d \u043d\u0438\u0439\u0442\u043b\u044d\u043b\u04af\u04af\u0434&quot;","block_context":{"text":"\u0411\u0438\u0431\u043b\u0438 \u0431\u043e\u043b\u043e\u043d \u0441\u04af\u043d\u0441 \u0431\u0430 \u0431\u0438\u0435\u0438\u0439\u043d \u0442\u0443\u0445\u0430\u0439 \u04e9\u0433\u04af\u04af\u043b\u0441\u044d\u043d \u043d\u0438\u0439\u0442\u043b\u044d\u043b\u04af\u04af\u0434","link":"https:\/\/vkrastev1blog.com\/category\/%d1%81%d1%82%d0%b0%d1%82%d0%b8%d0%b8-%d0%bf%d0%be%d1%81%d0%b2%d0%b5%d1%82%d0%b5%d0%bd%d0%b8-%d0%bd%d0%b0-%d0%b1%d0%b8%d0%b1%d0%bb%d0%b8%d1%8f%d1%82%d0%b0-%d0%b8-%d0%b7%d0%b0-%d0%b4%d1%83%d1%85%d0%b0\/"},"img":{"alt_text":"","src":"https:\/\/i0.wp.com\/vkrastev1blog.com\/wp-content\/uploads\/2025\/11\/%D0%9A%D0%B0%D0%BA-%D0%B4%D0%B0-%D1%87%D0%B5%D1%82%D0%B5%D0%BC-%D0%91%D0%B8%D0%B1%D0%BB%D0%B8%D1%8F%D1%82%D0%B0-%D0%BF%D1%8A%D0%BB%D0%BD%D0%BE%D1%86%D0%B5%D0%BD%D0%BD%D0%BE.png?resize=350%2C200&ssl=1","width":350,"height":200,"srcset":"https:\/\/i0.wp.com\/vkrastev1blog.com\/wp-content\/uploads\/2025\/11\/%D0%9A%D0%B0%D0%BA-%D0%B4%D0%B0-%D1%87%D0%B5%D1%82%D0%B5%D0%BC-%D0%91%D0%B8%D0%B1%D0%BB%D0%B8%D1%8F%D1%82%D0%B0-%D0%BF%D1%8A%D0%BB%D0%BD%D0%BE%D1%86%D0%B5%D0%BD%D0%BD%D0%BE.png?resize=350%2C200&ssl=1 1x, https:\/\/i0.wp.com\/vkrastev1blog.com\/wp-content\/uploads\/2025\/11\/%D0%9A%D0%B0%D0%BA-%D0%B4%D0%B0-%D1%87%D0%B5%D1%82%D0%B5%D0%BC-%D0%91%D0%B8%D0%B1%D0%BB%D0%B8%D1%8F%D1%82%D0%B0-%D0%BF%D1%8A%D0%BB%D0%BD%D0%BE%D1%86%D0%B5%D0%BD%D0%BD%D0%BE.png?resize=525%2C300&ssl=1 1.5x, https:\/\/i0.wp.com\/vkrastev1blog.com\/wp-content\/uploads\/2025\/11\/%D0%9A%D0%B0%D0%BA-%D0%B4%D0%B0-%D1%87%D0%B5%D1%82%D0%B5%D0%BC-%D0%91%D0%B8%D0%B1%D0%BB%D0%B8%D1%8F%D1%82%D0%B0-%D0%BF%D1%8A%D0%BB%D0%BD%D0%BE%D1%86%D0%B5%D0%BD%D0%BD%D0%BE.png?resize=700%2C400&ssl=1 2x, https:\/\/i0.wp.com\/vkrastev1blog.com\/wp-content\/uploads\/2025\/11\/%D0%9A%D0%B0%D0%BA-%D0%B4%D0%B0-%D1%87%D0%B5%D1%82%D0%B5%D0%BC-%D0%91%D0%B8%D0%B1%D0%BB%D0%B8%D1%8F%D1%82%D0%B0-%D0%BF%D1%8A%D0%BB%D0%BD%D0%BE%D1%86%D0%B5%D0%BD%D0%BD%D0%BE.png?resize=1050%2C600&ssl=1 3x, https:\/\/i0.wp.com\/vkrastev1blog.com\/wp-content\/uploads\/2025\/11\/%D0%9A%D0%B0%D0%BA-%D0%B4%D0%B0-%D1%87%D0%B5%D1%82%D0%B5%D0%BC-%D0%91%D0%B8%D0%B1%D0%BB%D0%B8%D1%8F%D1%82%D0%B0-%D0%BF%D1%8A%D0%BB%D0%BD%D0%BE%D1%86%D0%B5%D0%BD%D0%BD%D0%BE.png?resize=1400%2C800&ssl=1 4x"},"classes":[]},{"id":1785,"url":"https:\/\/vkrastev1blog.com\/2025\/02\/03\/%d0%bc%d0%be%d1%8f-%d0%bf%d0%be%d0%b3%d0%bb%d0%b5%d0%b4-%d0%b7%d0%b0-%d0%b0%d0%bc%d1%83%d0%b5%d0%b9-%d0%b1%d0%b8%d0%b7%d0%bd%d0%b5%d1%81%d0%b0\/","url_meta":{"origin":2308,"position":1},"title":"Amway \u0431\u0438\u0437\u043d\u0435\u0441\u0438\u0439\u043d \u0442\u0430\u043b\u0430\u0430\u0440\u0445 \u043c\u0438\u043d\u0438\u0439 \u04af\u0437\u044d\u043b \u0431\u043e\u0434\u043e\u043b, \u0431\u043e\u0434\u043e\u043b","author":"vkrastev2014","date":"03.02.2025","format":false,"excerpt":"\u041c\u043e\u044f\u0442 \u043f\u043e\u0433\u043b\u0435\u0434 \u0438 \u043c\u043d\u0435\u043d\u0438\u0435 \u0437\u0430 \u0410\u043c\u0443\u0435\u0439 \u0411\u0438\u0437\u043d\u0435\u0441\u0430 \u0411\u0438\u0437\u043d\u0435\u0441, \u043e\u0441\u043d\u043e\u0432\u0430\u043d \u043d\u0430 \u0441\u0432\u043e\u0431\u043e\u0434\u0430\u0442\u0430, \u043f\u0440\u0435\u0434\u043f\u0440\u0438\u0435\u043c\u0430\u0447\u0435\u0441\u0442\u0432\u043e\u0442\u043e, \u0441\u0435\u043c\u0435\u0439\u0441\u0442\u0432\u043e\u0442\u043e \u0438 \u0432\u0437\u0430\u0438\u043c\u043e\u043e\u0442\u043d\u043e\u0448\u0435\u043d\u0438\u044f\u0442\u0430 \u043c\u0435\u0436\u0434\u0443 \u0445\u043e\u0440\u0430\u0442\u0430 \u201e\u0412\u0438\u0437\u0438\u044f\u0442\u0430 \u043d\u0430 Amway \u0435 \u0434\u0430 \u043f\u043e\u043c\u0430\u0433\u0430 \u043d\u0430 \u0445\u043e\u0440\u0430\u0442\u0430 \u0434\u0430 \u0436\u0438\u0432\u0435\u044f\u0442 \u043f\u043e-\u0434\u043e\u0431\u044a\u0440 \u0436\u0438\u0432\u043e\u0442. \u041d\u0438\u0435 \u043f\u0440\u0430\u0432\u0438\u043c \u0442\u0430\u0437\u0438 \u0432\u0438\u0437\u0438\u044f \u0440\u0435\u0430\u043b\u043d\u0430, \u043a\u0430\u0442\u043e \u043f\u0440\u0435\u0434\u043b\u0430\u0433\u0430\u043c\u0435 \u043d\u0430 \u0445\u043e\u0440\u0430\u0442\u0430 \u0431\u0438\u0437\u043d\u0435\u0441 \u0432\u044a\u0437\u043c\u043e\u0436\u043d\u043e\u0441\u0442, \u043a\u043e\u044f\u0442\u043e \u0438\u043c \u043f\u043e\u0437\u0432\u043e\u043b\u044f\u0432\u0430 \u0434\u0430 \u043f\u043e\u0441\u0442\u0438\u0433\u043d\u0430\u0442 \u0443\u0441\u043f\u0435\u0445 \u0447\u0440\u0435\u0437 \u0441\u043e\u0431\u0441\u0442\u0432\u0435\u043d\u0430\u0442\u0430 \u0441\u0438 \u0443\u043f\u043e\u0440\u0438\u0442\u0430\u2026","rel":"","context":"In &quot;Amway \u0431\u0438\u0437\u043d\u0435\u0441 - Amway \u0431\u0438\u0437\u043d\u0435\u0441&quot;","block_context":{"text":"Amway \u0431\u0438\u0437\u043d\u0435\u0441 - Amway \u0431\u0438\u0437\u043d\u0435\u0441","link":"https:\/\/vkrastev1blog.com\/category\/amway-%d0%b1%d0%b8%d0%b7%d0%bd%d0%b5%d1%81-amway\/"},"img":{"alt_text":"","src":"https:\/\/i0.wp.com\/vkrastev1blog.com\/wp-content\/uploads\/2025\/02\/logo_amway_abo_black_horizontal.jpg?resize=350%2C200&ssl=1","width":350,"height":200,"srcset":"https:\/\/i0.wp.com\/vkrastev1blog.com\/wp-content\/uploads\/2025\/02\/logo_amway_abo_black_horizontal.jpg?resize=350%2C200&ssl=1 1x, https:\/\/i0.wp.com\/vkrastev1blog.com\/wp-content\/uploads\/2025\/02\/logo_amway_abo_black_horizontal.jpg?resize=525%2C300&ssl=1 1.5x, https:\/\/i0.wp.com\/vkrastev1blog.com\/wp-content\/uploads\/2025\/02\/logo_amway_abo_black_horizontal.jpg?resize=700%2C400&ssl=1 2x, https:\/\/i0.wp.com\/vkrastev1blog.com\/wp-content\/uploads\/2025\/02\/logo_amway_abo_black_horizontal.jpg?resize=1050%2C600&ssl=1 3x, https:\/\/i0.wp.com\/vkrastev1blog.com\/wp-content\/uploads\/2025\/02\/logo_amway_abo_black_horizontal.jpg?resize=1400%2C800&ssl=1 4x"},"classes":[]},{"id":2693,"url":"https:\/\/vkrastev1blog.com\/2026\/10\/14\/%d1%82%d1%8a%d0%bc%d0%bd%d0%b0%d1%82%d0%b0-%d0%b5%d0%bd%d0%b5%d1%80%d0%b3%d0%b8%d1%8f-%d0%b2%d1%8a%d0%b2-%d0%b2%d1%81%d0%b5%d0%bb%d0%b5%d0%bd%d0%b0%d1%82%d0%b0-%d0%b8%d0%bb%d0%b8-%d0%bf%d1%80%d0%be\/","url_meta":{"origin":2308,"position":2},"title":"\u041e\u0440\u0447\u043b\u043e\u043d \u0435\u0440\u0442\u04e9\u043d\u0446 \u0434\u044d\u0445 \u0445\u0430\u0440 \u044d\u043d\u0435\u0440\u0433\u0438 \u0431\u0430 \u043c\u0430\u0442\u0435\u0440\u0438 \u0431\u0443\u044e\u0443 \u0418\u0445 \u042d\u0437\u044d\u043d \u0411\u0443\u0440\u0445\u0430\u043d\u044b \u0445\u04af\u0447 \u0447\u0430\u0434\u043b\u044b\u043d \u0438\u043b\u0440\u044d\u043b","author":"vkrastev2014","date":"14.10.2026","format":false,"excerpt":"\u0422\u044a\u043c\u043d\u0430\u0442\u0430 \u0435\u043d\u0435\u0440\u0433\u0438\u044f \u0438 \u043c\u0430\u0442\u0435\u0440\u0438\u044f \u0432\u044a\u0432 \u0412\u0441\u0435\u043b\u0435\u043d\u0430\u0442\u0430 \u0438\u043b\u0438 \u043f\u0440\u043e\u044f\u0432\u043b\u0435\u043d\u0438\u0435 \u043d\u0430 \u0441\u0438\u043b\u0430\u0442\u0430 \u043d\u0430 \u0413\u043e\u0441\u043f\u043e\u0434 \u0411\u043e\u0433? \u041d\u0430\u0443\u0447\u043d\u043e-\u0444\u0438\u043b\u043e\u0441\u043e\u0444\u0441\u043a\u0430 \u0441\u0442\u0430\u0442\u0438\u044f \u0441 \u0445\u0440\u0438\u0441\u0442\u0438\u044f\u043d\u0441\u043a\u0430 \u043f\u0435\u0440\u0441\u043f\u0435\u043a\u0442\u0438\u0432\u0430 \u0420\u0435\u0437\u044e\u043c\u0435 \u0421\u044a\u0432\u0440\u0435\u043c\u0435\u043d\u043d\u0430\u0442\u0430 \u043a\u043e\u0441\u043c\u043e\u043b\u043e\u0433\u0438\u044f \u043f\u043e\u0441\u0442\u0430\u0432\u044f \u0447\u043e\u0432\u0435\u0447\u0435\u0441\u0442\u0432\u043e\u0442\u043e \u043f\u0440\u0435\u0434 \u0435\u0434\u0438\u043d \u043e\u0442 \u043d\u0430\u0439-\u0434\u044a\u043b\u0431\u043e\u043a\u0438\u0442\u0435 \u0432\u044a\u043f\u0440\u043e\u0441\u0438 \u0437\u0430 \u043f\u0440\u0438\u0440\u043e\u0434\u0430\u0442\u0430 \u043d\u0430 \u0412\u0441\u0435\u043b\u0435\u043d\u0430\u0442\u0430: \u043a\u0430\u043a\u0432\u043e \u043f\u0440\u0435\u0434\u0441\u0442\u0430\u0432\u043b\u044f\u0432\u0430 \u0442\u044a\u043c\u043d\u0430\u0442\u0430 \u0435\u043d\u0435\u0440\u0433\u0438\u044f \u0438 \u043c\u0430\u0442\u0435\u0440\u0438\u044f \u0438 \u043a\u0430\u043a\u0432\u0430 \u0435 \u043f\u0440\u0438\u0447\u0438\u043d\u0430\u0442\u0430 \u0437\u0430 \u0443\u0441\u043a\u043e\u0440\u0435\u043d\u043e\u0442\u043e \u0440\u0430\u0437\u0448\u0438\u0440\u044f\u0432\u0430\u043d\u0435 \u043d\u0430 \u043a\u043e\u0441\u043c\u0438\u0447\u0435\u0441\u043a\u043e\u0442\u043e \u043f\u0440\u043e\u0441\u0442\u0440\u0430\u043d\u0441\u0442\u0432\u043e? \u0421\u043f\u043e\u0440\u0435\u0434 \u0441\u044a\u0432\u0440\u0435\u043c\u0435\u043d\u043d\u0438\u0442\u0435\u2026","rel":"","context":"In &quot;\u0411\u0438\u0431\u043b\u0438 \u0431\u043e\u043b\u043e\u043d \u0441\u04af\u043d\u0441 \u0431\u0430 \u0431\u0438\u0435\u0438\u0439\u043d \u0442\u0443\u0445\u0430\u0439 \u04e9\u0433\u04af\u04af\u043b\u0441\u044d\u043d \u043d\u0438\u0439\u0442\u043b\u044d\u043b\u04af\u04af\u0434&quot;","block_context":{"text":"\u0411\u0438\u0431\u043b\u0438 \u0431\u043e\u043b\u043e\u043d \u0441\u04af\u043d\u0441 \u0431\u0430 \u0431\u0438\u0435\u0438\u0439\u043d \u0442\u0443\u0445\u0430\u0439 \u04e9\u0433\u04af\u04af\u043b\u0441\u044d\u043d \u043d\u0438\u0439\u0442\u043b\u044d\u043b\u04af\u04af\u0434","link":"https:\/\/vkrastev1blog.com\/category\/%d1%81%d1%82%d0%b0%d1%82%d0%b8%d0%b8-%d0%bf%d0%be%d1%81%d0%b2%d0%b5%d1%82%d0%b5%d0%bd%d0%b8-%d0%bd%d0%b0-%d0%b1%d0%b8%d0%b1%d0%bb%d0%b8%d1%8f%d1%82%d0%b0-%d0%b8-%d0%b7%d0%b0-%d0%b4%d1%83%d1%85%d0%b0\/"},"img":{"alt_text":"","src":"https:\/\/i0.wp.com\/vkrastev1blog.com\/wp-content\/uploads\/2026\/10\/mjnsliwiuvsco9jrugwtbn46avgfj8tnyxicpukntkiv9qn6pr5dmh2nwbxkwuy-dnce6rvtd3bnrqccjjuaw1ugw7nme6lwxgaz1dif8umy2yon1syu-glivtullo5ugpk-rx6a85lxzwqv2qdq5fo-yzbd2yb399zuwlup1z4.jpg?resize=350%2C200&ssl=1","width":350,"height":200,"srcset":"https:\/\/i0.wp.com\/vkrastev1blog.com\/wp-content\/uploads\/2026\/10\/mjnsliwiuvsco9jrugwtbn46avgfj8tnyxicpukntkiv9qn6pr5dmh2nwbxkwuy-dnce6rvtd3bnrqccjjuaw1ugw7nme6lwxgaz1dif8umy2yon1syu-glivtullo5ugpk-rx6a85lxzwqv2qdq5fo-yzbd2yb399zuwlup1z4.jpg?resize=350%2C200&ssl=1 1x, https:\/\/i0.wp.com\/vkrastev1blog.com\/wp-content\/uploads\/2026\/10\/mjnsliwiuvsco9jrugwtbn46avgfj8tnyxicpukntkiv9qn6pr5dmh2nwbxkwuy-dnce6rvtd3bnrqccjjuaw1ugw7nme6lwxgaz1dif8umy2yon1syu-glivtullo5ugpk-rx6a85lxzwqv2qdq5fo-yzbd2yb399zuwlup1z4.jpg?resize=525%2C300&ssl=1 1.5x, https:\/\/i0.wp.com\/vkrastev1blog.com\/wp-content\/uploads\/2026\/10\/mjnsliwiuvsco9jrugwtbn46avgfj8tnyxicpukntkiv9qn6pr5dmh2nwbxkwuy-dnce6rvtd3bnrqccjjuaw1ugw7nme6lwxgaz1dif8umy2yon1syu-glivtullo5ugpk-rx6a85lxzwqv2qdq5fo-yzbd2yb399zuwlup1z4.jpg?resize=700%2C400&ssl=1 2x, https:\/\/i0.wp.com\/vkrastev1blog.com\/wp-content\/uploads\/2026\/10\/mjnsliwiuvsco9jrugwtbn46avgfj8tnyxicpukntkiv9qn6pr5dmh2nwbxkwuy-dnce6rvtd3bnrqccjjuaw1ugw7nme6lwxgaz1dif8umy2yon1syu-glivtullo5ugpk-rx6a85lxzwqv2qdq5fo-yzbd2yb399zuwlup1z4.jpg?resize=1050%2C600&ssl=1 3x, https:\/\/i0.wp.com\/vkrastev1blog.com\/wp-content\/uploads\/2026\/10\/mjnsliwiuvsco9jrugwtbn46avgfj8tnyxicpukntkiv9qn6pr5dmh2nwbxkwuy-dnce6rvtd3bnrqccjjuaw1ugw7nme6lwxgaz1dif8umy2yon1syu-glivtullo5ugpk-rx6a85lxzwqv2qdq5fo-yzbd2yb399zuwlup1z4.jpg?resize=1400%2C800&ssl=1 4x"},"classes":[]},{"id":2459,"url":"https:\/\/vkrastev1blog.com\/2026\/09\/23\/%d0%b7%d1%8a%d0%b1%d0%bd%d0%b8%d1%82%d0%b5-%d0%b8%d0%bc%d0%bf%d0%bb%d0%b0%d0%bd%d1%82%d0%b8-%d0%b4%d0%be%d0%ba%d1%8a%d0%b4%d0%b5-%d0%b5-%d0%b4%d0%be%d1%81%d1%82%d0%b8%d0%b3%d0%bd%d0%b0%d0%bb\/","url_meta":{"origin":2308,"position":3},"title":"\u0428\u04af\u0434\u043d\u0438\u0439 \u0441\u0443\u0443\u043b\u0433\u0430\u0446 - 2026 \u043e\u043d\u0434 \u0448\u0438\u043d\u0436\u043b\u044d\u0445 \u0443\u0445\u0430\u0430\u043d \u0445\u044d\u0440 \u0437\u044d\u0440\u044d\u0433 \u0445\u04af\u0440\u0441\u044d\u043d \u0431\u044d","author":"vkrastev2014","date":"23.09.2026","format":false,"excerpt":"\u0417\u044a\u0431\u043d\u0438\u0442\u0435 \u0438\u043c\u043f\u043b\u0430\u043d\u0442\u0438 \u2013 \u0434\u043e\u043a\u044a\u0434\u0435 \u0435 \u0434\u043e\u0441\u0442\u0438\u0433\u043d\u0430\u043b\u0430 \u043d\u0430\u0443\u043a\u0430\u0442\u0430 \u043f\u0440\u0435\u0437 2026 \u0433\u043e\u0434\u0438\u043d\u0430 \u041e\u0442 \u043c\u0435\u0445\u0430\u043d\u0438\u0447\u0435\u043d \u0437\u0430\u043c\u0435\u0441\u0442\u0438\u0442\u0435\u043b \u043a\u044a\u043c \u0432\u044a\u0437\u0441\u0442\u0430\u043d\u043e\u0432\u044f\u0432\u0430\u043d\u0435 \u043d\u0430 \u0435\u0441\u0442\u0435\u0441\u0442\u0432\u0435\u043d \u0437\u044a\u0431 \u0417\u0430\u0433\u0443\u0431\u0430\u0442\u0430 \u043d\u0430 \u0437\u044a\u0431 \u0434\u043d\u0435\u0441 \u0432\u0435\u0447\u0435 \u043d\u0435 \u043e\u0437\u043d\u0430\u0447\u0430\u0432\u0430 \u043d\u0435\u043f\u0440\u0435\u043c\u0435\u043d\u043d\u043e \u043f\u043e\u0441\u0442\u0430\u0432\u044f\u043d\u0435 \u043d\u0430 \u043f\u043e\u0434\u0432\u0438\u0436\u043d\u0430 \u043f\u0440\u043e\u0442\u0435\u0437\u0430 \u0438\u043b\u0438 \u0438\u0437\u043f\u0438\u043b\u044f\u0432\u0430\u043d\u0435 \u043d\u0430 \u0441\u044a\u0441\u0435\u0434\u043d\u0438 \u0437\u044a\u0431\u0438. \u0421\u044a\u0432\u0440\u0435\u043c\u0435\u043d\u043d\u0430\u0442\u0430 \u0438\u043c\u043f\u043b\u0430\u043d\u0442\u043e\u043b\u043e\u0433\u0438\u044f \u043f\u043e\u0437\u0432\u043e\u043b\u044f\u0432\u0430 \u043b\u0438\u043f\u0441\u0432\u0430\u0449\u0438\u044f\u0442 \u0437\u044a\u0431 \u0434\u0430 \u0431\u044a\u0434\u0435 \u0437\u0430\u043c\u0435\u043d\u0435\u043d \u0441 \u0438\u0437\u043a\u0443\u0441\u0442\u0432\u0435\u043d \u043a\u043e\u0440\u0435\u043d, \u043a\u043e\u0439\u0442\u043e \u0441\u0435 \u0441\u0432\u044a\u0440\u0437\u0432\u0430 \u0434\u0438\u0440\u0435\u043a\u0442\u043d\u043e\u2026","rel":"","context":"In &quot;\u0425\u0438\u0439\u043c\u044d\u043b \u044d\u0440\u0445\u0442\u044d\u043d\u04af\u04af\u0434 - 2026 \u043e\u043d\u0434 \u0448\u0438\u043d\u0436\u043b\u044d\u0445 \u0443\u0445\u0430\u0430\u043d \u0445\u044d\u0440 \u0445\u043e\u043b \u044f\u0432\u0441\u0430\u043d \u0431\u044d&quot;","block_context":{"text":"\u0425\u0438\u0439\u043c\u044d\u043b \u044d\u0440\u0445\u0442\u044d\u043d\u04af\u04af\u0434 - 2026 \u043e\u043d\u0434 \u0448\u0438\u043d\u0436\u043b\u044d\u0445 \u0443\u0445\u0430\u0430\u043d \u0445\u044d\u0440 \u0445\u043e\u043b \u044f\u0432\u0441\u0430\u043d \u0431\u044d","link":"https:\/\/vkrastev1blog.com\/category\/%d1%85%d0%b8%d0%b9%d0%bc%d1%8d%d0%bb-%d1%8d%d1%80%d1%85%d1%82%d1%8d%d0%bd%d2%af\/"},"img":{"alt_text":"","src":"https:\/\/i0.wp.com\/vkrastev1blog.com\/wp-content\/uploads\/2026\/09\/d0b8d0bcd0bfd0bbd0b0d0bdd182d0b8.jpg?resize=350%2C200&ssl=1","width":350,"height":200,"srcset":"https:\/\/i0.wp.com\/vkrastev1blog.com\/wp-content\/uploads\/2026\/09\/d0b8d0bcd0bfd0bbd0b0d0bdd182d0b8.jpg?resize=350%2C200&ssl=1 1x, https:\/\/i0.wp.com\/vkrastev1blog.com\/wp-content\/uploads\/2026\/09\/d0b8d0bcd0bfd0bbd0b0d0bdd182d0b8.jpg?resize=525%2C300&ssl=1 1.5x, https:\/\/i0.wp.com\/vkrastev1blog.com\/wp-content\/uploads\/2026\/09\/d0b8d0bcd0bfd0bbd0b0d0bdd182d0b8.jpg?resize=700%2C400&ssl=1 2x"},"classes":[]},{"id":1820,"url":"https:\/\/vkrastev1blog.com\/2025\/02\/05\/%d0%b1%d0%be%d0%b1-%d0%b5%d0%bd%d0%b4%d1%80%d1%8e%d1%81-%d0%b7%d0%b0-%d0%b1%d0%b8%d0%b7%d0%bd%d0%b5%d1%81%d0%b0-amway\/","url_meta":{"origin":2308,"position":4},"title":"\u0411\u043e\u0431 \u042d\u043d\u0434\u0440\u044e\u0441\u0438\u0439\u043d \u0442\u04af\u04af\u0445 \u0431\u0430 \u0442\u04af\u04af\u043d\u0438\u0439 Amway \u0431\u0438\u0437\u043d\u0435\u0441\u0438\u0439\u043d \u0442\u0430\u043b\u0430\u0430\u0440\u0445 \u043e\u0439\u043b\u0433\u043e\u043b\u0442","author":"vkrastev2014","date":"05.02.2025","format":false,"excerpt":"\u0418\u0441\u0442\u043e\u0440\u0438\u044f\u0442\u0430 \u043d\u0430 \u0411\u043e\u0431 \u0415\u043d\u0434\u0440\u044e\u0441 \u0438 \u0440\u0430\u0437\u0431\u0438\u0440\u0430\u043d\u0435\u0442\u043e \u043c\u0443 \u0437\u0430 \u0431\u0438\u0437\u043d\u0435\u0441\u0430 Amway \u041d\u0430 \u0441\u043d\u0438\u043c\u043a\u0430\u0442\u0430 \u0411\u043e\u0431 \u0415\u043d\u0434\u0440\u044e\u0441 \u2013 \u043f\u043e\u0432\u0435\u0447\u0435 \u043e\u0442 50 \u0433\u043e\u0434\u0438\u043d\u0438 \u043e\u043f\u0438\u0442 \u0432 Amway, \u0437\u0430\u0435\u0434\u043d\u043e \u0441\u044a\u0441 \u0441\u044a\u043f\u0440\u0443\u0433\u0430\u0442\u0430 \u0441\u0438 \u0422\u0435\u0440\u0438 \u0415\u043d\u0434\u0440\u044e\u0441 \u0418\u0441\u0442\u043e\u0440\u0438\u044f\u0442\u0430 \u043d\u0430 \u0435\u0434\u0438\u043d \u0441\u0435\u043c\u0435\u0435\u043d \u0431\u0438\u0437\u043d\u0435\u0441, \u0438\u0437\u0433\u0440\u0430\u0434\u0435\u043d \u0441 \u043f\u043e\u0441\u0442\u043e\u044f\u043d\u0441\u0442\u0432\u043e, \u0432\u044f\u0440\u0430 \u0438 \u0434\u044a\u043b\u0433\u043e\u0441\u0440\u043e\u0447\u043d\u0430 \u0432\u0438\u0437\u0438\u044f \u041a\u043e\u0433\u0430\u0442\u043e \u0433\u043e\u0432\u043e\u0440\u0438\u043c \u0437\u0430 \u0431\u0438\u0437\u043d\u0435\u0441\u0430 Amway \u0438 \u0437\u0430 \u0445\u043e\u0440\u0430\u0442\u0430, \u043a\u043e\u0438\u0442\u043e \u0441\u0430\u2026","rel":"","context":"In &quot;Amway \u0431\u0438\u0437\u043d\u0435\u0441 - Amway \u0431\u0438\u0437\u043d\u0435\u0441&quot;","block_context":{"text":"Amway \u0431\u0438\u0437\u043d\u0435\u0441 - Amway \u0431\u0438\u0437\u043d\u0435\u0441","link":"https:\/\/vkrastev1blog.com\/category\/amway-%d0%b1%d0%b8%d0%b7%d0%bd%d0%b5%d1%81-amway\/"},"img":{"alt_text":"","src":"https:\/\/i0.wp.com\/vkrastev1blog.com\/wp-content\/uploads\/2026\/10\/velislav-krastev-blog-6ae4bdb1e7dd1.png?resize=350%2C200&ssl=1","width":350,"height":200,"srcset":"https:\/\/i0.wp.com\/vkrastev1blog.com\/wp-content\/uploads\/2026\/10\/velislav-krastev-blog-6ae4bdb1e7dd1.png?resize=350%2C200&ssl=1 1x, https:\/\/i0.wp.com\/vkrastev1blog.com\/wp-content\/uploads\/2026\/10\/velislav-krastev-blog-6ae4bdb1e7dd1.png?resize=525%2C300&ssl=1 1.5x, https:\/\/i0.wp.com\/vkrastev1blog.com\/wp-content\/uploads\/2026\/10\/velislav-krastev-blog-6ae4bdb1e7dd1.png?resize=700%2C400&ssl=1 2x"},"classes":[]},{"id":2470,"url":"https:\/\/vkrastev1blog.com\/2026\/09\/23\/%d0%b8%d0%b7%d0%ba%d1%83%d1%81%d1%82%d0%b2%d0%b5%d0%bd%d0%b0%d1%82%d0%b0-%d0%ba%d1%80%d1%8a%d0%b2-%d0%b4%d0%be%d0%ba%d1%8a%d0%b4%d0%b5-%d0%b5-%d0%b4%d0%be%d1%81%d1%82%d0%b8%d0%b3%d0%bd%d0%b0\/","url_meta":{"origin":2308,"position":5},"title":"\u0425\u0438\u0439\u043c\u044d\u043b \u0446\u0443\u0441 - 2026 \u043e\u043d\u0434 \u0448\u0438\u043d\u0436\u043b\u044d\u0445 \u0443\u0445\u0430\u0430\u043d \u0445\u044d\u0440 \u0437\u044d\u0440\u044d\u0433 \u0445\u04af\u0440\u0441\u044d\u043d \u0431\u044d","author":"vkrastev2014","date":"23.09.2026","format":false,"excerpt":"\u0418\u0437\u043a\u0443\u0441\u0442\u0432\u0435\u043d\u0430\u0442\u0430 \u043a\u0440\u044a\u0432 \u2013 \u0434\u043e\u043a\u044a\u0434\u0435 \u0435 \u0434\u043e\u0441\u0442\u0438\u0433\u043d\u0430\u043b\u0430 \u043d\u0430\u0443\u043a\u0430\u0442\u0430 \u043f\u0440\u0435\u0437 2026 \u0433\u043e\u0434\u0438\u043d\u0430 \u0411\u0438\u043e\u0440\u0435\u0430\u043a\u0442\u043e\u0440 \u0437\u0430 \u043f\u0440\u043e\u0438\u0437\u0432\u043e\u0434\u0441\u0442\u0432\u043e \u043d\u0430 \u043b\u0430\u0431\u043e\u0440\u0430\u0442\u043e\u0440\u043d\u043e \u043e\u0442\u0433\u043b\u0435\u0434\u0430\u043d\u0438 \u0447\u043e\u0432\u0435\u0448\u043a\u0438 \u0435\u0440\u0438\u0442\u0440\u043e\u0446\u0438\u0442\u0438. \u0412 \u043a\u043e\u043d\u0442\u0440\u043e\u043b\u0438\u0440\u0430\u043d\u0430 \u0441\u0440\u0435\u0434\u0430 \u0441\u0442\u0432\u043e\u043b\u043e\u0432\u0438 \u043a\u043b\u0435\u0442\u043a\u0438 \u0441\u0435 \u0440\u0430\u0437\u043c\u043d\u043e\u0436\u0430\u0432\u0430\u0442 \u0438 \u0434\u0438\u0444\u0435\u0440\u0435\u043d\u0446\u0438\u0440\u0430\u0442 \u0434\u043e \u0447\u0435\u0440\u0432\u0435\u043d\u0438 \u043a\u0440\u044a\u0432\u043d\u0438 \u043a\u043b\u0435\u0442\u043a\u0438. \u0422\u0435\u0445\u043d\u043e\u043b\u043e\u0433\u0438\u044f\u0442\u0430 \u0432\u0441\u0435 \u043e\u0449\u0435 \u0435 \u0432 \u043a\u043b\u0438\u043d\u0438\u0447\u043d\u0430 \u0440\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u043a\u0430 \u0438 \u043d\u0435 \u043f\u0440\u0435\u0434\u0441\u0442\u0430\u0432\u043b\u044f\u0432\u0430 \u043f\u0440\u043e\u0438\u0437\u0432\u043e\u0434\u0441\u0442\u0432\u043e \u043d\u0430 \u0446\u044f\u043b\u0430 \u0438\u0437\u043a\u0443\u0441\u0442\u0432\u0435\u043d\u0430 \u043a\u0440\u044a\u0432. \u041c\u043e\u0436\u0435 \u043b\u0438 \u0435\u0434\u0438\u043d \u0434\u0435\u043d\u2026","rel":"","context":"In &quot;\u0425\u0438\u0439\u043c\u044d\u043b \u044d\u0440\u0445\u0442\u044d\u043d\u04af\u04af\u0434 - 2026 \u043e\u043d\u0434 \u0448\u0438\u043d\u0436\u043b\u044d\u0445 \u0443\u0445\u0430\u0430\u043d \u0445\u044d\u0440 \u0445\u043e\u043b \u044f\u0432\u0441\u0430\u043d \u0431\u044d&quot;","block_context":{"text":"\u0425\u0438\u0439\u043c\u044d\u043b \u044d\u0440\u0445\u0442\u044d\u043d\u04af\u04af\u0434 - 2026 \u043e\u043d\u0434 \u0448\u0438\u043d\u0436\u043b\u044d\u0445 \u0443\u0445\u0430\u0430\u043d \u0445\u044d\u0440 \u0445\u043e\u043b \u044f\u0432\u0441\u0430\u043d \u0431\u044d","link":"https:\/\/vkrastev1blog.com\/category\/%d1%85%d0%b8%d0%b9%d0%bc%d1%8d%d0%bb-%d1%8d%d1%80%d1%85%d1%82%d1%8d%d0%bd%d2%af\/"},"img":{"alt_text":"","src":"https:\/\/i0.wp.com\/vkrastev1blog.com\/wp-content\/uploads\/2026\/09\/d0bad180d18ad0b2.jpg?resize=350%2C200&ssl=1","width":350,"height":200,"srcset":"https:\/\/i0.wp.com\/vkrastev1blog.com\/wp-content\/uploads\/2026\/09\/d0bad180d18ad0b2.jpg?resize=350%2C200&ssl=1 1x, https:\/\/i0.wp.com\/vkrastev1blog.com\/wp-content\/uploads\/2026\/09\/d0bad180d18ad0b2.jpg?resize=525%2C300&ssl=1 1.5x, https:\/\/i0.wp.com\/vkrastev1blog.com\/wp-content\/uploads\/2026\/09\/d0bad180d18ad0b2.jpg?resize=700%2C400&ssl=1 2x, https:\/\/i0.wp.com\/vkrastev1blog.com\/wp-content\/uploads\/2026\/09\/d0bad180d18ad0b2.jpg?resize=1050%2C600&ssl=1 3x"},"classes":[]}],"jetpack_likes_enabled":true,"jetpack_featured_media_url":"","_links":{"self":[{"href":"https:\/\/vkrastev1blog.com\/wp-json\/wp\/v2\/posts\/2308","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/vkrastev1blog.com\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/vkrastev1blog.com\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/vkrastev1blog.com\/wp-json\/wp\/v2\/users\/65283547"}],"replies":[{"embeddable":true,"href":"https:\/\/vkrastev1blog.com\/wp-json\/wp\/v2\/comments?post=2308"}],"version-history":[{"count":99,"href":"https:\/\/vkrastev1blog.com\/wp-json\/wp\/v2\/posts\/2308\/revisions"}],"predecessor-version":[{"id":3351,"href":"https:\/\/vkrastev1blog.com\/wp-json\/wp\/v2\/posts\/2308\/revisions\/3351"}],"wp:attachment":[{"href":"https:\/\/vkrastev1blog.com\/wp-json\/wp\/v2\/media?parent=2308"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/vkrastev1blog.com\/wp-json\/wp\/v2\/categories?post=2308"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/vkrastev1blog.com\/wp-json\/wp\/v2\/tags?post=2308"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}