Шта је средњи софтвер?

Кључне Такеаваис

  • Миддлеваре обезбеђује структуриране протоколе за повезивање апликација, поједностављујући развој и омогућавајући ефикасно повезивање.
  • Средњи софтвер омогућава бржи прелаз измена и пружа лако доступне алате на радном месту.
  • Средњи софтвер је облик модуларности који користи свим облицима програмирања, од високог до ниског нивоа.

Можда сте чули да људи користе термин „средњи софтвер“ у различитим контекстима и питали се о чему они причају. Откријте широк и богат скуп технологија и процеса на које се они могу односити.

Средњи софтвер значи много ствари

Миддлеваре је флексибилан термин који људи користе за различите ствари. У најширем могућем смислу, о томе можете размишљати као о „програмима који се покрећу између других програма“. Другим речима, сваки софтвер који зависи од засебног кода да обезбеди свој улаз и обради свој излаз.

Неки средњи софтвер постоји као потпуно развијена апликација која трансформише податке из једног стања у друго, са добро дефинисаним протоколима и форматима података за коришћење другог кода. Али средњи софтвер такође може бити гранулиран као једна функција, повезујући се са низом других функција које оквир покреће.

Као и велики број софтвера, средњи софтвер користи предности концепта модуларности: разбијање сложеног процеса на мање делове којима се лакше управља.

Како функционише средњи софтвер?

Средњи софтвер је обично јак колико и његови протоколи и јавно дефинисано понашање. Строги протоколи за комуникацију омогућавају програмерима да пишу софтвер који се придржава стандарда да би исправно функционисао.

  Како добити бесплатан налог за ВВЕ мрежу

Сервер веб апликација делује као међуверски софтвер за повезивање корисничког фронт-енд искуства на веб локацији са логиком и моделом података које пружају позадинска апликација и база података. Пошто није чврсто повезан са системима који комуницирају са њим, можете — барем у теорији — заменити сервер апликација за компатибилан без потребе да поново пишете код апликације или реструктурирате своју базу података.

Компоненте средњег софтвера често користе технологије као што су ЈСОН, РЕСТ, КСМЛ и СОАП. Све су то зреле, популарне и засноване на тексту, што знатно олакшава замену или преуређивање компоненти. Њихов формат заснован на тексту и широк спектар скупова алата такође омогућавају лакше и поузданије отклањање грешака.

Различити типови међувера

Пошто је појам тако широк, постоји много различитих примера и употребе међувера. Неки од најчешћих укључују:

  • Посредници порука, који додају структуру међупроцесној комуникацији.
  • Сервер веб апликација и веб оквири.
  • Мотори за игре, који обезбеђују подразумевано понашање које можете да користите, проширите или замените.
  • Платформе за стриминг догађаја као што је Апацхе Кафка.

Коришћење средњег софтвера у развоју софтвера

Једна од најопипљивијих употреба међувера је путем веб оквира. Већина оквира обезбеђује основно окружење које можете прилагодити и проширити према сопственим захтевима. Модел често укључује прослеђивање ХТТП захтева кроз низ уграђених и прилагођених функција, у дефинисаном редоследу, и враћање ХТТП одговора на крају.

Оквир Екпресс.јс користи овај модел за подршку прилагођавању. Узмите овај пример међуверске функције написане у ЈаваСцрипт-у:

 app.use('/user/:id', (req, res, next) => {
  console.log('Request Type:', req.method)
  next()
})

Функција је крајње једноставна:

  Како пренети податке о активностима из апликације Хеалтх на нови иПхоне
  • Обрађује одређене УРЛ-ове који почињу са „/усер/“, након чега следи ид.
  • Он бележи тип метода захтева који може бити ГЕТ, ПОСТ итд.
  • Затим позива обезбеђену функцију да настави са обрадом ланца функција средњег софтвера.
  • Тај последњи позив на следећи је витални корак у процесу међуверског софтвера и показује колико приступ може бити свестран. Све док се свака функција средњег софтвера понаша независно, можете их заменити и избацити и лако променити редослед понашања целог ланца.

    ПХП оквир, Ларавел, има скоро идентично подешавање међувера. Обратите пажњу на то како именски простор експлицитно дефинише ову класу као „Миддлеваре“.

     namespace App\Http\Middleware;

    use Closure;
    use Illuminate\Http\Request;
    use Symfony\Component\HttpFoundation\Response;

    class EnsureTokenIsValid
    {
        
         * Handle an incoming request.
         */
        public function handle(Request $request, Closure $next): Response
        {
            if ($request->input('token') !== 'my-secret-token') {
                return redirect('home');
            }

            return $next($request);
        }
    }

    Опет, улога ове посебне класе је веома специфична: све што она ради је да проверава захтев да види да ли садржи токен. У овом случају, функција међувера може да прекине ланац, одбијајући да позове следећу функцију и уместо тога шаље преусмеравање. Функција за преусмеравање ће вратити одговарајући објекат Одговора, који функција међуверског софтвера треба да врати као део свог потписаног уговора.

    Овај последњи пример показује како Дјанго, веб оквир заснован на Питхон-у, рукује средњим софтвером. Дјанго користи термин „додатак“ да опише своју архитектуру међувера, која је слична другим релевантним терминима које можете чути као „хоок“ или „цаллбацк“. У суштини, то је једноставно још један случај подешавања средњег софтвера који пружа флексибилност током структурираног процеса.

     def simple_middleware(get_response):
        

        def middleware(request):
            
            

            response = get_response(request)

            
            

            return response

        return middleware

    Затим можете да контролишете који средњи софтвер се покреће и којим редоследом помоћу једноставног низа:

     MIDDLEWARE = [
        "django.middleware.security.SecurityMiddleware",
        "django.contrib.sessions.middleware.SessionMiddleware",
        "django.middleware.common.CommonMiddleware",
        "django.middleware.csrf.CsrfViewMiddleware",
        "django.contrib.auth.middleware.AuthenticationMiddleware",
        "django.contrib.messages.middleware.MessageMiddleware",
        "django.middleware.clickjacking.XFrameOptionsMiddleware",
    ]

    Дјанго обезбеђује подразумевано понашање попут класе ЦоммонМиддлеваре од које ће већина апликација имати користи; забрањује приступ одређеним „лошим“ корисничким агентима и управља нормализацијом УРЛ-а. Сасвим је уобичајено да се средњи софтвер који је критичан за мисију, фокусиран на безбедност, покреће рано у процесу, али ова флексибилност вам омогућава да прилагодите редослед у зависности од потреба ваше апликације.

      Тхе Динамиц Дуо фор Веб Дев

    Зашто је средњи софтвер користан?

    Миддлеваре олакшава повезивање апликација које нису дизајниране за повезивање. Пружа функционалност за њихову интеграцију, заједно са робусним, структурираним протоколима помоћу којих могу да комуницирају.

    Као резултат тога, средњи софтвер има неке важне предности, укључујући:

    • Поједностављен развој апликација и скраћено време изласка на тржиште.
    • Ефикасно повезивање.
    • Бржи прелаз промена.
    • Лако доступни алати на радном месту.

    Коначно, средњи софтвер је облик модуларности, концепт који је користан када се примењује на све облике програмирања, од највишег до најнижег нивоа.