JavaRush /Java блогу /Random-KY /Жаз. Сабак 1. IoC/DI
Umaralikhon
Деңгээл
Красноярск

Жаз. Сабак 1. IoC/DI

Группада жарыяланган
Жана ошентип... Жазды үйрөнүү үчүн сизге Java core, Intellij IDEA Ultimate жана бир аз чыдамкайлык керек болот. Курс бир нече сабактардан турат. Ар бир сабак ар кандай теманы камтыйт. Мен да жазууларды жазууну сунуштайт элем. Ооба, бул үчүн эч ким сизге семестр үчүн кредит бербейт. Жөн гана жазууларды жазып жатканда мээнин бардык бөлүктөрү маалыматты эстеп калуу үчүн иштейт. Суу жетиштүү. Баштоо. Контролдун инversionсы (IoC) && Көз карандылык инъекциясы (DI) Биринчиден, башкаруунун инversionсы (IoC) жана Көз карандылыктын инъекциясы (DI) катары эң маанилүү эки терминди аныктайлы. IoC класстар менен an objectтердин ортосундагы байланышты азайтуу үчүн колдонулган OOP принциби. Программист керектүү codeду программанын керектүү жерлерине жайгаштырат жана жайгаштырылган code кантип жана качан иштеши керектиги жөнүндө кабатырланbyte. Жөнөкөй сөз менен айтканда, IoC колдонууда code программист тарабынан эмес, алHow тарабынан башкарылат. DI - колдонмо an objectтерин бири-биринен начар көз каранды кылат. Башкача айтканда, программист тарабынан иштелип чыккан тышкы механизм an objectтерди инициализациялоого кам көрөт. DI колдонууда программист "класс деңгээлинде" эмес, "интерфейс деңгээлинде" иштейт. Ошентип, an objectтер ортосундагы көз карандылык минималдуу болот. Келгиле, машыгалы Биринчиден, жөнөкөй maven долбоорун түзөлү. Бул үчүн, "Жаңы долбоорду түзүү" пунктун тандап, менюдан "Maven" тандаңыз: Жазгы курс - IoC/DI - 1 Калган бөлүктөрдө сиз демейки маанилерди калтырып же өз каалооңуз боюнча өзгөртө аласыз (versionдан тышкары): Жазгы курс - IoC/DI - 2 Андан кийин долбоор болжол менен төмөнкү түзүм менен ачылат: Жазгы курс - IoC/DI - 3 Негизги папка программанын негизги бөлүгүн иштетүү үчүн пакеттерди жана codeдорду жана файлдарды сактайт. Пакеттер (биздин учурда org.example) Java codeун сактайт. Ресурстар папкасында конфигурация файлдары же ресурс файлдары камтылат. Дал ушул папкада биз applicationContext.xml файлын түзөбүз, анда төө буурчактарыбызды сүрөттөйбүз (бул тууралуу кийинчерээк). Сыноо папкасында тестирлөө класстары болот. Биз бул темага токтолбойбуз. Эң маанилүү файлдардын бири pom.xml файлы. Бул файл биздин долбоор үчүн Жазгы көз карандылыктарды сүрөттөйт. Дал ушул файл менен биз ишибизди баштайбыз. Биринчиден, бул файлды ачалы. Файл төмөнкүдөй көрүнөт:
<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0"
         xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
         xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
    <modelVersion>4.0.0</modelVersion>

    <groupId>org.example</groupId>
    <artifactId>IoC</artifactId>
    <version>1.0-SNAPSHOT</version>

  <properties>
        <maven.compiler.source>11</maven.compiler.source>
        <maven.compiler.target>11</maven.compiler.target>
    </properties>

</project>
Биз бул файлга керектүү көз карандылыктарды кошобуз. Бул үчүн, mvnrepository.com веб-сайтына өтүңүз , анда maven долбоорун башкаруу үчүн бардык көз карандылыктар камтылган. Издөө бөлүгүндө биз "Жазгы контекстти" теребиз. Натыйжалардын тизмесинен "Жазгы контекстти" тандаңыз (башка нерсе эмес, apacheден "Жазгы контекст"). Андан кийин versionны, эң жакшысы RELEASE versionсын тандаңыз. Андан кийин төмөнкү терезе ачылат: Жазгы курс - IoC/DI - 5 Биз кызыл менен белгиленген бөлүккө кызыгып жатабыз. Келгиле, codeду көчүрүп алып, аны <dependencies> </dependencies> тегинин ичине чаптайлы. Ошол эле аракеттерди “Жазгы буурчак” жана “Жазгы өзөк” көз карандылыктары үчүн жасайбыз. Натыйжада, pom.xml файлы төмөнкүдөй болушу керек:
<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0"
         xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
         xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
    <modelVersion>4.0.0</modelVersion>

    <groupId>org.example</groupId>
    <artifactId>IoC</artifactId>
    <version>1.0-SNAPSHOT</version>

    <dependencies>
        <!-- https://mvnrepository.com/artifact/org.springframework/spring-context -->
        <dependency>
            <groupId>org.springframework</groupId>
            <artifactId>spring-context</artifactId>
            <version>5.2.15.RELEASE</version>
        </dependency>

        <!-- https://mvnrepository.com/artifact/org.springframework/spring-context -->
        <dependency>
            <groupId>org.springframework</groupId>
            <artifactId>spring-context</artifactId>
            <version>5.2.15.RELEASE</version>
        </dependency>

        <!-- https://mvnrepository.com/artifact/org.springframework/spring-beans -->
        <dependency>
            <groupId>org.springframework</groupId>
            <artifactId>spring-beans</artifactId>
            <version>5.2.15.RELEASE</version>
        </dependency>
    </dependencies>

    <properties>
        <maven.compiler.source>11</maven.compiler.source>
        <maven.compiler.target>11</maven.compiler.target>
    </properties>

</project>
Кыскача баары жөнүндө. Жазгы өзөк алHowтын иштеши үчүн бардык негизги операцияларды сактайт. Жазгы контекст - DI/IoC иши үчүн класс an objectтерин түзөт жана сактайт. Ал эми жазгы төө буурчак төө буурчакты түзүү үчүн колдонулат. Мен бир аз кийинчерээк урналар жөнүндө айтып берем. Көз карандылыкты кошкондон кийин, жогорку оң бурчта сөлөкөт пайда болот: Жазгы курс - IoC/DI - 6 Аны чыкылдатыңыз жана Idea бул көз карандылыктардын баарын жүктөп алгыча күтүңүз. Жүктөп алгандан кийин "Тышкы китепканалар" долбоорунун папкасында биз Жазгы көз карандылыктарды камтыган жүктөлүп алынган .jar файлдарын көрө алабыз: Жазгы курс - IoC/DI - 7 Бул биздин курстун биринчи сабагын жыйынтыктайт. Ошентип, биз кыскача билдик:
  • IoC/DI деген эмне
  • Жаз долбоорлорун кантип түзүү керек
  • Аларды кантип орнотуу керек
Толук булак codeун бул шилтемеден тапса болот . Менин GitHub аккаунтум Курстун мазмуну Улантылат...
Комментарийлер
TO VIEW ALL COMMENTS OR TO MAKE A COMMENT,
GO TO FULL VERSION