Π Π°Π±ΠΎΡ‚Π° со статикой (пСрсоны, Π΄ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚Ρ‹, ΠΊΠΎΠ΄Ρ‹, ΠΊΠΎΠ½Ρ‚Π°ΠΊΡ‚Ρ‹ ΠΈ Ρ‚. Π΄.)

Π‘Ρ‚Π°Ρ‚ΠΈΠΊΠΎΠΉΒ ΡΡ‡ΠΈΡ‚Π°ΡŽΡ‚ΡΡΒ Ρ‚Π°ΠΊΠΈΠ΅ Π²ΠΈΠ΄Ρ‹ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ΠΎΠ², ΠΊΠ°ΠΊ, Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, пСрсона,Β Π΄ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚,Β ΠΊΠΎΠ΄,Β ΠΊΠΎΠ½Ρ‚Π°ΠΊΡ‚Β ΠΈ Ρ‚Π°ΠΊ Π΄Π°Π»Π΅Π΅.Β 

ΠšΡ€ΠΎΠΌΠ΅ Ρ‚ΠΎΠ³ΠΎ, Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Ρ‹ связаны Π΄Ρ€ΡƒΠ³ с Π΄Ρ€ΡƒΠ³ΠΎΠΌ ΠΏΡ€ΠΈ ΠΏΠΎΠΌΠΎΡ‰ΠΈ ΠΎΡ‚Π½ΠΎΡˆΠ΅Π½ΠΈΡ "ΠΌΠ½ΠΎΠ³ΠΈΠ΅-ΠΊΠΎ-ΠΌΠ½ΠΎΠ³ΠΈΠΌ", Π² этом случаС ΠΏΡ€ΠΈ ΠΏΠΎΠΌΠΎΡ‰ΠΈ API ΠΌΠΎΠΆΠ½ΠΎ Ρ€Π°Π±ΠΎΡ‚Π°Ρ‚ΡŒ Π½Π΅ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ с самими ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π°ΠΌΠΈ, Π½ΠΎ ΠΈ с ΠΈΡ… связями (Ρ‚Π°ΠΊ Π½Π°Π·Ρ‹Π²Π°Π΅ΠΌΡ‹Π΅Β Relations).

Для Ρ€Π°Π±ΠΎΡ‚Ρ‹ со статикой сущСствуСт 2 Ρ‚ΠΈΠΏΠ° API:

  • ΠŸΡ€ΠΎΡΡ‚ΠΎΠΉ CRUD;

  • Orchestrated API.

  1. ΠŸΡ€ΠΎΡΡ‚ΠΎΠΉ CRUD позволяСт Π²Ρ‹ΠΏΠΎΠ»Π½ΡΡ‚ΡŒ простыС ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΈ с ΠΏΡ€ΠΈΠΌΠΈΡ‚ΠΈΠ²Π½Ρ‹ΠΌΠΈ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π°ΠΌΠΈ Π±Π°Π·Ρ‹ Π΄Π°Π½Π½Ρ‹Ρ… (Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, "ΠšΠΎΠ½Ρ‚Π°ΠΊΡ‚", "Π”ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚", "Код").

    На ΠΊΠ°ΠΆΠ΄Ρ‹ΠΉ Ρ‚ΠΈΠΏ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ΠΎΠ² Π² ΠΎΠ±Ρ‰Π΅ΠΌ случаС распространяСтся Ρ‚Ρ€ΠΈ Ρ‚ΠΈΠΏΠ° ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΉ:

    1. ΠΏΠΎΠ»ΡƒΡ‡ΠΈΡ‚ΡŒ список ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ΠΎΠ² Π² Ρ€Π°ΠΌΠΊΠ°Ρ… области видимости;

    2. ΡΠΎΡ…Ρ€Π°Π½ΠΈΡ‚ΡŒ/ΡƒΠ΄Π°Π»ΠΈΡ‚ΡŒ ΠΈΠ»ΠΈ ΠΎΡ‚Ρ€Π΅Π΄Π°ΠΊΡ‚ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚;

    3. опСрация Π²Ρ‹Π³Ρ€ΡƒΠ·ΠΊΠΈ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π° ΠΏΠΎ ΠΏΠ΅Ρ€Π²ΠΈΡ‡Π½ΠΎΠΌΡƒ ΠΊΠ»ΡŽΡ‡Ρƒ (Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, для ΠΊΠΎΠ½Ρ‚Π°ΠΊΡ‚ΠΎΠ²: ΠΏΠΎΠ»ΡƒΡ‡ΠΈΡ‚ΡŒ список ΠΊΠΎΠ½Ρ‚Π°ΠΊΡ‚ΠΎΠ² ΠΏΠΎ ΠΈΠ΄Π΅Π½Ρ‚ΠΈΡ„ΠΈΠΊΠ°Ρ‚ΠΎΡ€Ρƒ пСрсоны (List), ΠΏΠΎΠ»ΡƒΡ‡ΠΈΡ‚ΡŒ ΠΊΠΎΠ½ΠΊΡ€Π΅Ρ‚Π½Ρ‹ΠΉ ΠΊΠΎΠ½Ρ‚Π°ΠΊΡ‚ ΠΏΠΎ Π΅Π³ΠΎ ΠΈΠ΄Π΅Π½Ρ‚ΠΈΡ„ΠΈΠΊΠ°Ρ‚ΠΎΡ€Ρƒ (Get), ΠΈΠ·ΠΌΠ΅Π½ΠΈΡ‚ΡŒ ΠΈΠ»ΠΈ ΡΠΎΠ·Π΄Π°Ρ‚ΡŒ Π½ΠΎΠ²Ρ‹ΠΉ ΠΊΠΎΠ½Ρ‚Π°ΠΊΡ‚ (Save)).

    ΠŸΡ€ΠΈ этом Π²Π½ΡƒΡ‚Ρ€ΠΈ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π° Π½Π΅Ρ‚ Π½ΠΈΠΊΠ°ΠΊΠΈΡ… связСй с Π΄Ρ€ΡƒΠ³ΠΈΠΌΠΈ сущностями - Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, Π² "ΠŸΠ΅Ρ€ΡΠΎΠ½Π΅" Π½Π΅Ρ‚ Π΄ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚ΠΎΠ² ΠΈ ссылок Π½Π° ΠΊΠΎΠ΄Ρ‹.

    Π”Π°Π½Π½Ρ‹ΠΉ API слСдуСт ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ Π² Ρ‚ΠΎΠΌ случаС, Ссли трСбуСтся ΠΏΡ€ΠΎΠ²ΠΎΠ΄ΠΈΡ‚ΡŒ Π½ΠΈΠ·ΠΊΠΎΡƒΡ€ΠΎΠ²Π½Π΅Π²Ρ‹Π΅ ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΈ с ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π°ΠΌΠΈ, Ρ‚Π°ΠΊ ΠΊΠ°ΠΊ API позволяСт ΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ, Π² Ρ‚ΠΎΠΌ числС, ΠΈ слоТныС связи, ΠΊΠ°ΠΊ, Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, Π·Π°Π²ΠΈΡΠΈΠΌΠΎΡΡ‚ΡŒ ΠΊΠΎΠ΄ΠΎΠ² ΠΎΡ‚ Ρ‚ΠΈΠΏΠΎΠ² услуг ΠΈΠ»ΠΈ Π΄Ρ€ΡƒΠ³ΠΈΡ… ΠΊΠΎΠ΄ΠΎΠ².

    Β 

    ΠŸΡ€ΠΈ использовании Π΄Π°Π½Π½ΠΎΠ³ΠΎ ΠΌΠ΅Ρ…Π°Π½ΠΈΠ·ΠΌΠ° всС бизнСс-ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Ρ‹ прСдставлСны Π² Π²ΠΈΠ΄Π΅ плоских структур с полями ΠΏΡ€ΠΈΠΌΠΈΡ‚ΠΈΠ²Π½Ρ‹Ρ… Ρ‚ΠΈΠΏΠΎΠ² (строка, число, Π΄Π°Ρ‚Π° ΠΈ Ρ‚. Π΄.).

    Β 

  2. Orchestrated APIΒ - ΡƒΠ΄ΠΎΠ±Π½ΠΎΠ΅ API с инкапсулированной бизнСс-Π»ΠΎΠ³ΠΈΠΊΠΎΠΉ, ΠΏΡ€Π΅Π΄Π½Π°Π·Π½Π°Ρ‡Π΅Π½Π½ΠΎΠ΅ для выполнСния высокоуровнСвых ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΉ. Π’Π°ΠΊΠΆΠ΅ ряд ΠΌΠ΅Ρ‚ΠΎΠ΄ΠΎΠ² этого API позволяСт Ρ€Π°Π±ΠΎΡ‚Π°Ρ‚ΡŒ с ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π°ΠΌΠΈ старой ΠΈ Π½ΠΎΠ²ΠΎΠΉ вСрсии ΠΎΠ΄Π½ΠΎΠ²Ρ€Π΅ΠΌΠ΅Π½Π½ΠΎ.
    ΠŸΡ€ΠΈ использовании Π΄Π°Π½Π½ΠΎΠ³ΠΎ ΠΌΠ΅Ρ…Π°Π½ΠΈΠ·ΠΌΠ° всС бизнСс-ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Ρ‹ прСдставлСны Π² Π²ΠΈΠ΄Π΅ иСрархичСских структур со всСми зависимостями.

Вопрос ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΠΈ запросов - ΠΊΠ»ΡŽΡ‡Π΅Π²ΠΎΠΉ ΠΏΡ€ΠΈ Π²Ρ‹Π±ΠΎΡ€Π΅ Ρ‚ΠΈΠΏΠ° API для вашСго прилоТСния.

НапримСр, Π²Β Orchestrated API, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΏΠΎΠΌΠ΅Π½ΡΡ‚ΡŒ ΠΎΠ΄ΠΈΠ½ ΠΊΠΎΠ½Ρ‚Π°ΠΊΡ‚, Π½Π°Π΄ΠΎ Π²Ρ‹Π³Ρ€ΡƒΠ·ΠΈΡ‚ΡŒ всю пСрсону, ΠΏΠΎΠΌΠ΅Π½ΡΡ‚ΡŒ ΠΊΠΎΠ½Ρ‚Π°ΠΊΡ‚ ΠΈ всС Π·Π°Π³Ρ€ΡƒΠ·ΠΈΡ‚ΡŒ Π·Π°Π½ΠΎΠ²ΠΎ ΠΎΠ±Ρ€Π°Ρ‚Π½ΠΎ Π² систСму, Ρ‡Ρ‚ΠΎ ΠΏΡ€ΠΈΠ²Π΅Π΄Π΅Ρ‚ ΠΊ Π²Ρ‹ΠΏΠΎΠ»Π½Π΅Π½ΠΈΡŽ Ρ†Π΅Π»ΠΎΠΉ сСрии запросов ΠΊ Π‘Π”, Π° Π²Β CRUD, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΏΠΎΠΌΠ΅Π½ΡΡ‚ΡŒ ΠΊΠΎΠ½Ρ‚Π°ΠΊΡ‚, Π½ΡƒΠΆΠ½ΠΎ просто ΠΏΠ΅Ρ€Π΅Π΄Π°Ρ‚ΡŒ всю Π΅Π³ΠΎ ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΡŽ. Π’Π°ΠΊΠΆΠ΅Β CRUD позволяСт ΠΏΡ€ΠΎΠ²ΠΎΠ΄ΠΈΡ‚ΡŒ Π°Ρ‚ΠΎΠΌΠ°Ρ€Π½Ρ‹Π΅ ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΈ - Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, ΠΏΠΎΠ»ΡƒΡ‡ΠΈΡ‚ΡŒ всС ΠΊΠΎΠ½Ρ‚Π°ΠΊΡ‚Ρ‹, привязанныС ΠΊ пСрсонС с ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½Π½Ρ‹ΠΌΒ id_Person.

____