Шта је пролећни оквир? - Пут ка ефикасном развоју



Овај блог о томе шта је Спринг Фрамеворк говори о широко коришћеном Јава Фрамеворк-у - Спринг. Такође говори зашто и како користити Спринг Фрамеворк са примерима.

У данашњем брзом свету, треба нам све да будемо брзи. Не желимо да се предуго бавимо једним послом, нека то буде нешто попут путовања, куповине, учења или рада. Што се тиче кодирања, желимо да се наше апликације развијају у најкраћем временском периоду, али пружајући пуну ефикасност. Можда се журимо, али ипак, не можемо направити компромис са својим квалитетом нити желимо у њега уложити превише напора. Па, шта је решење? Оквири најбоље функционишу у овој ситуацији. Постоје различити оквири доступни на тржишту, међу којима се мало користи попут: Спринг, Хибернате, Струтс итд. Кроз овај блог сазнајмо шта је Спринг Фрамеворк и зашто је толико популаран на тржишту!

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





Јава Фрамеворкс

Зашто бисмо требали ићи на Фрамеворкс?Омогућавасхвати то са нашим пријатељем, Цодди .

Цодди у проблему - Шта је Спринг Фрамеворк - Едурека!



Цодди добија задатак да развије апликацију, али додељено време није довољно да је заврши. Мора сам да напише пуно линија кода (ЛОЦ). То је врло дуготрајно и заморно. Збуњен је шта треба да ради! Одакле треба да крене!

Цодди почиње размишљати о решењу свог проблема. Потребно му је нешто што је брзо и ефикасно, штеди време и труд, попут нечега готовог.



Изненада га погоди идеја да користи Фрамеворкс. Оквири су брзи, ефикасни и лагани. То су велика тела унапред дефинисаних кодова које лако можемо додати сопственом коду да бисмо решили одређени проблем.

Он кодира користећи Фрамеворк. Изненађујуће, код се лако уклапа у оквир.

Цодди сада може брже да кодира и доврши своју пријаву у датом временском оквиру. Штавише, ослобођен је писања на хиљаде редова нефункционалног кода.

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

Дакле, почнимо са Јава Фрамеворкс-ом.

Како су Јава Фрамеворкс настали?

Крајем 1990-их, апликације су широко развијене користећи ЈЕЕ стандарде. Предпоставка Ј2ЕЕ је била мулти-платформа / добављач, ако можете да кодирате у складу са Ј2ЕЕ стандардима, можете да примените своју апликацију на било који Ј2ЕЕ сервер апликација, без обзира на платформу. Покретање кода на било ком серверу апликација пружа вам бројне предности попут управљања трансакцијама, размене порука, слања поште, интерфејса директорија итд. Али како на овом свету ништа није лако, рад са Ј2ЕЕ је такође имао одређених потешкоћа.

  • ВрлоКомплекс : Ентерприсе Јава Беан је развијен за смањење сложености Ј2ЕЕ апликација. Али није успео у свом циљу у примени. Разлог је тај што је током писања компоненте потребно написати скуп КСМЛ датотека, кућни интерфејс, удаљени / локални интерфејс итд.
  • Проблем „потраге“: Кад год је компонента зависила од друге компоненте, морала је сама да тражи компоненте од којих је зависила. Ова „потрага“ за компонентом догађа се само по имену, па је назив зависности тешко кодиран у компоненти.
  • Тешка тежина: КаоПодржане су све функције попут груписања, даљинског управљања итд., морате их конфигурисати, без обзира на то да ли вам требају или не. Ово ће ваше апликације надути.

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

Разумимо то кроз сликовити приказ:

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

Ефикасност:

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

Сигурност:

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

Трошак:

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

Подршка:

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

Упркос свим овим предностима, Јава Фрамеворкс ипак има неке недостаци , као:


Ограничења:

Основно понашање оквира не може се променити, што указује да када користите оквир, од вас се захтева да поштујете његова ограничења и радите онако како се захтева. Стога морате осигурати да одаберете оквир који одговара вашим потребама.

Шифра је јавна:

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

Обичај Карактеристике:

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

Садатознате предности и недостаткеоквира,одаберите свој оквир према својој потреби. На тржишту су доступне разне врсте оквира. Испод дијаграма приказано је неколико њих:

Дакле, на овом блогу ћемо се фокусирати на Спринг Фрамеворк.

Шта је пролећни оквир?

Овде се поставља питање „Шта је пролећни оквир“?

Спринг Фрамеворк је моћан лаган оквир за развој апликација који се користи за Ентерприсе Јава (ЈЕЕ).

Основне карактеристике Спринг Фрамеворк-а могу се користити у развоју било које Јава апликације.Може се описати каокомплетан и модуларан оквир. Спринг Фрамеворк се може користити за све имплементације слојева апликације у реалном времену. Такође се може користити за развој одређеног слоја апликације у реалном времену за разлику од Струтс-а и Хибернате-а, али са Спрингом можемо развити све слојеве.

Овде се радило о томе шта је Спринг Фрамеворк, али како је развијен? Па, иза тога стоји занимљива историја. Погледајмо историју и порекло Спринг Фрамеворк-а.

У октобру 2002. Род Јохнсон , аустралијски рачунарски специјалиста, написао је књигу под називом Екперт Оне-он-Оне Ј2ЕЕ Десигн анд Девелопмент. У овој књизи је предложио једноставније решење засновано на уобичајеним Јава класама (ПОЈО) и убризгавању зависности. Написао је преко 30.000 редова инфраструктурног кода који је обухватио бројне јава интерфејсе за вишеструку употребу и класе за развој апликације. Отприлике у фебруару 2003. године, Род, Јуерген и Ианн започели су сарадњу на пројекту Пролеће. Назив „Пролеће“ добио је јер је значио нови почетак после „Зиме“ традиционалног Ј2ЕЕ.

Следи хронологија приказана о главним издањима у историји пролећа:

Назван је Интерфаце 21, као референца на 21. век и објављен под лиценцом Апацхе 2.0.
Ово је било прво издање прекретнице. Пролећни оквир се брзо развијао од овог издања. Интерфаце21 је подржавао АспецтЈ паралелно са Спринг Фрамеворк-ом.
Додате су нове функције - прошириве КСМЛ конфигурације, подршка за Јава 5 и динамичке језике, ИоЦ тачке проширења и АОП побољшања.
Додате су нове функције - подршка за Јава 6 / ЈЕЕ5, конфигурације напомена, аутоматско откривање компонената у путовима класа и снопови компатибилни са ОСГи.
Додате су нове функције - подршка за реорганизовани систем модула, СпЕЛ, ЈаваЦонфиг, уграђене базе података, подршка за РЕСТ и подршка за Јава ЕЕ 6.
Објављен је Спринг Дата Цоммонс Пројецт. Касније 2012. године, Род Јохнсон је напустио тим Спринга.
Сви пролећни пројекти пребачени су на Пивотал. Додате су нове функције - пуна подршка за Јава 8, вебсокети, веће зависности библиотека независних произвођача, гроови ДСЛ за дефиниције пасуља.
Био је компатибилан са Јава 6, 7 и 8, са фокусом на основна побољшања и модерне веб могућности.
Биће то последња генерацијау оквиру општих системских захтева Спринг 4. 4.3.8 је тренутна верзија.

поставити Јава цласспатх у линук

Зашто Спринг Фрамеворк?

Испод је дата табела која показује поређење између Спринг-а и разних других оквира.

Испод је графикон заснован на анкети,од маја 2016. Као што видите из графикона да је Спринг Фрамеворк веома популаран у свом домену и да и даље држи своју позицију нана од 2014.

Разлози за Спринг Фрамепопуларност дела

Генерално постоје три главна разлога за популарност Спринг Фрамеворк-а.

  1. Једноставност
  2. Тестабилност
  3. Лабава веза

Размотримо ове теме детаљно.

Једноставност: Спринг Фрамеворк је једноставан јер је неинвазиван јер користи ПОЈО и ПОЈИ моделе.

  • ПОЈО (обични стари Јава објекти): А.Зове се Јава класа која није повезана са било којом технологијом или било којим оквиром ' ПОЈО ' .
  • ПОЈИ (обични стари Јава интерфејси): зове се Јава интерфејс који није повезан са било којом технологијом или било којим оквиром ' ПОЈИ ' .

Тестабилност : За писање С.бамбусапликација, сервер није обавезан. Али за носаче и ЕЈБ апликације потребан вам је сервер ако желите да тестирате апликацију. Можда ће требати пуно промена у извору и да бисте их видели сваки пут када морате поново покренути сервер. Ово постаје заморно и дуготрајно. У случајуСпринг Фрамеворк, има свој контејнер за покретање апликацијекатиони.

Лабава веза : Спринг Фрамеворк је слабо повезан јер има концепте попут Депенденци Ињецтион, АОП итд. Ове функције помажу у смањењу зависности и повећању модуларности унутар кода. Хајде да ово схватимо на примеру.

Овде имам Бике интерфејс који има метод старт (). Даље га примењују три класе, и то: Иамаха, Хонда и Бајај.

јавни интерфејс Бицикл {јавни воид старт ()}

Овде Ридер класе креира објекат било које класе који имплементира Бике интерфејс.

цласс Ридер {Бике б публиц воид сетБике (Бике б) {тхис.б = б} воид риде () {б.старт ()}}

Сада Спринг Фрамеворк контејнер може убризгати објекат било које класе који имплементира Бике интерфејс, у складу са захтевом. Овако функционише лабава спојница.

Спринг Фрамеворк Арцхитецтуре

Као што видите из горњег дијаграма, Спринг има слојевиту архитектуру која се састоји од различитих модула који имају своју функционалност. Ови модули су генерализовани у следеће слојеве:

  • Цоре Цонтаинер
  • Приступ подацима / интеграција
  • Веб
  • АОП (Аспект-Ориентед Программинг)
  • Инструментација
  • Тест.

Можда се питате која је предност Спринг Фрамеворк-а од слојевите архитектуре? Сазнајмо кроз следеће тачке:

  • Спринг Фрамеворк ефикасно организује ваше предмете средњег нивоа.
  • Без обзира на рунтиме окружење, услуге управљања конфигурацијом Спринг Фрамеворк-а могу се користити у било ком архитектонском слоју.
  • Спринг Фрамеворк обрађује конфигурацију на доследан начин током целе апликације. Ово елиминише потребу за коришћењем различитих формата датотека са прилагођеним својством.
  • Спринг Фрамеворк је дизајниран на такав начин да ће апликације изграђене с њим зависити од што мање његових АПИ-ја.
  • Због употребе интерфејса,Спринг Фрамеворк омогућава добру праксу програмирања.

Да бисмо у потпуности разумели шта је Спринг Фрамеворк, погледајмо једну једноставну Спринг Фрамеворк апликацију. Следите пет једноставних корака:

Корак И: Стварање класе Беан

пакет орг.едурека.фирстСпринг јавна класа СтудентБеан {Име низа публиц Стринг гетНаме () {ретурн име} јавна празнина сетНаме (име низа) {тхис.наме = наме} јавна празнина дисплаиИнфо () {Систем.оут.принтлн ('Здраво: '+ име)}}

Корак ИИ: Креирајте КСМЛ датотеку

 

Корак ИИИ: Створите главну класу

пакет орг.едурека.фирстСпринг импорт орг.спрингфрамеворк.цонтект.АпплицатионЦонтект импорт орг.спрингфрамеворк.цонтект.суппорт.ЦлассПатхКсмлАпплицатионЦонтект јавна класа СтудентДемо {публиц статиц воид маин (Стринг [] аргс) {АпплицатионЦонтект СтудентЦон =фПППППЦПЦЛПППЦГ ) СтудентБеан фацтори = (СтудентБеан) аппЦон.гетБеан ('студентбеан') фацтори.дисплаиИнфо ()}}

Корак ИВ: Учитајте јар датотеке

Учитајте следеће јар датотеке.

  • цоммонс-логгинг-1.2.јар
  • јавак.сервлет-апи-3.1.0.јар
  • јстл-1.2.јар
  • спринг-аоп-4.2.2.РЕЛЕАСЕ.јар
  • пролећни пасуљ-4.2.2.Опусти.јар
  • спринг-цонтект-4.2.2.РЕЛЕАСЕ.јар
  • спринг-цоре-4.2.2.РЕЛЕАСЕ.јар
  • спринг-екпрессион-4.2.2.РЕЛЕАСЕ.јар
  • спринг-веб-4.2.2.РЕЛЕАСЕ.јар
  • спринг-вебмвц-4.2.2.РЕЛЕАСЕ.јар

БЕЛЕШКА: У случају да су вам потребне јар датотеке, коментаришите испод.

Корак В: Покрените програм

Покрените програм на серверу да бисте тестирали апликацију.

Надам се да сам успео да објасним шта је Спринг Фрамеворк, како тачно ради и за шта се користи. Такође се позивате на видео запис о „Шта је пролећни оквир“, где инструктор описује теме о којима се расправља на овом блогу, заједно са практичним демонстрацијама.

Шта је Спринг Фрамеворк у Јави | Спринг Фрамеворк Туториал | Едурека

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

Ако желите да научите Спринг и желите да га користите током развијања Јава апликација, погледајте Едурека, поуздана компанија за учење на мрежи са мрежом од више од 250.000 задовољних ученика раширених широм света.

Имате питање за нас? Молимо вас да то споменете у одељку за коментаре и јавићемо вам се.