mail يوللانغان ۋاقتى 2008-10-24 16:04:57

Spring تېخنىكىسى ھەققىدە ئۇمومى چۈشەنچە (1 ) am

سەن Java نىمۇ، Dot Net نىمۇ ئىشلىتىپ بېقىپسەن، ئېيتىپ باقە، ئىككىسىدىن زادى قايسىسى ئەۋزەل؟

- مىنىڭچە بولغاندا ھەر ئىككىلىسىنىڭ ئەۋزەللىكى بار. Dot Net نىڭ ئىجادىيەت ئۈنۈمى يوقۇرى. لېكىن Java ساھەسىدە ئەركىن يۇمشاق دېتال ھەركىتى ئاساسى ئېقىمنى ئىگەللىگەچكە نۇرغۇن ئىلغار لايىھىلەش ئىدىيىلېرىنىڭ مەيدانغا كېلىشىگە تۈرتكە بولغان ...

          يۇقارقىسى مېنىڭ شىنجاڭدىكى بىر ئالى مەكتەپ كومپىيوتېر فاكولتېتىنىڭ مۇدىرى بىلەن بولغان سۆھبىتىمنىڭ ئۈزۈندىسى. مەزكور ماقالىدە كۆپچىلىككە تونۇشتۇرۇلماقچى بولغان Spring قۇرۇلمىسى دەل مەن يۇقىرىدا تىلغا ئالغان Java ساھەسىدىكى ئەڭ داڭلىق ئەركىن يۇمشاق دېتاللارنىڭ تىپىك ۋەكىلى بولۇپ ھېساپلىنىدۇ. مەيلى بىز ئەمىلى خىزمەت جەريانىدا قانداق تېخنىكىدىن پايدىلانمايلى Spring قۇرۇلمىسىدا ئىپادىلەنگەن ئىلغار لايىھىلەش ئىدىيىلېرى بىزنىڭ ۋاقىت چىقىرىپ تەتقېق قىلىشىمىزغا تولىمۇ ئەرزىيدۇ دەپ قارايمەن.

سۆزنى Java نىڭ تارىخىدىن باشلايمىز

          20-ئەسىرنىڭ 90-يىللېرىدىن باشلاپ غەرىپتىكى تەرەققى تاپقان ئەللەرنىڭ ئېلىكتىرون سانائىتى يېڭى بىر گۈللىنىش دەۋرىگە قەدەم قويدى. بولۇپمۇ ئائىلە ئېلىكتىرون ساھەسىدە نۇرغۇن تېخنىكىلىق بۆسۈشلەر بارلىققا كىلىپ، «ئەقلى ئېقتىدارلىق ئائىلە ئېلىكتىرون سايمانلېرى» ئېلىكتىرون سانائىتىدىكى مودا ئۇقۇمغا ئايلاندى. بۇ خىل «ئېقتىدارلىق ئائىلە ئېلىكتىرون سايمانلېرى» ئەمىليەتتە ئاددى ھېساپلاش ئېقتىدارىغا ئىگە ئۈزەكلەر ئورنىتىلغان ئېلىكتىر ئەسۋاپلېرى بولۇپ بۇ خىل ئۆزەكلەردە ئىجىرا بولىدىغان كومپىيوتېر پىروگىراممىلېرى ئاساسىدا باشقا ئادەتتىكى ئائىلە ئېلىكتېر سايمانلېرىدىن پەرىقلىنىدىغان «ئالاھىدە» ئېقتىدارلار ئەمەلگە ئاشۇرۇلاتتى.

          ئەينى ۋاقىتتا بۇ خىل ئۈزەك (Chip)لەردە ئىجىرا بولىدىغان كومپىيوتېر پىروگىراممىلېرى ئاساسى جەھەتتىن Corba ۋە ++C تىللېرىدىن پايدىلىنىپ ئىشلىنەتتى (بۇلۇپمۇ Corba تىلى شۇ چاغلاردا مۇشۇ خىل ئېھتىياجنى قاندۇرۇشقا ئىشلىتىلىدىغان ئاساسلىق پىروگىرامما تىلى بولۇپ قالغان ئېدى). بۇ ماقالىدە كۆپچىلىككە تونۇشتۇرۇلماقچى بولغان بىرىنچى شەخىس، James Gosling ئەپەندىم شۇ ۋاقىتلاردا ++C تىلىدىن پايدىلىنىپ دەل مۇشۇنداق ئائىلە ئېلىكتىر سايمانلېرىغا ئىشلىتىلىدىغان ئۈزەكلەر ئۈچۈن پىروگىرامما تۈزەيتتى.

Java ئاتىسى James Gosling

          بىر قىسىم كىشىلەر «ئېقتىدارلىق پىروگىراممېرلارنىڭ كۆپۈنچىسىنىڭ مۇنداق ئۈچ خىل ئالاھىدىلىكى بار: يەنى ھورۇن، مەغرور لېكىن ئانالېز قىلىشقا ماھىر» دىيىشىدۇ. رەسىمدىكى بۇ Gosling ئەپەندىم دەل مۇشۇ خىل پىروگىراممېرلارنىڭ تىپىك ۋەكىلى ئىدى. ئۇ ++C دا پىروگىرامما تۈزۈش جەريانىدا بۇ خىل پىروگىرامما تىلىنىڭ نۇرغۇن يىتەرسىزلىكلېرىنىڭ  بارلىقىنى بايقايدۇ، ۋە ئۆزىنىڭ كۈتكەن يېرىدىن چىقالايدىغان، ++C دىنمۇ ئېقتىدارلىق، ئەمما ئىشلىتىشكە قولاي يېڭى بىر خىل پىروگىرامما تىلىنى ۋۇجۇتقا چىقىرىش ئۈستىدە ئىزدىنىشكە باشلايدۇ. نەتىجىدە 1994- يىلىغا كەلگەندە ئۇ ئۆز ئارزۇسىنى ئەمەلگە ئاشۇرۇپ يېڭى بىر خىل پىروگىرامما تىلىنى مەيدانغا كەلتۈرىدۇ ۋە ئۆزى ئىجاد قىلغان بۇ پىروگىرامما تىلىغا --++++C دەپ نام قويىدۇ. مەنىسى «++C دىن بىر قىسىم كېرەكسىز نەرسىلەرنى چىقىرۋىتىش، يەنە بىر قىسىم كېرەكلىك نەرسىلەرنى قوشۇشتىن بارلىققا كەلگەن تىل» دىن ئىبارەت ئىكەن. كېيىن Gosling بۇ خىل «نوچى» نامنىڭ بۇ يېڭى پىروگىرامما تىلىنىڭ تەرەققىياتىغا پايدىسىزلىقىنى نەزەردە تۇتۇپ، ئۇنىڭ نامىنى Oak قا ئۆزگەرتىدۇ. بۇ تىل دەل بۈگۈنكى دۇنيا يۇمشاق دېتال ساھەسىدىكى ئەڭ ئاساسى «پېرسۇناژ» لارنىڭ بىرى Java تىلىنىڭ ئەڭ دەسلەپكى نۇسخىسى ئېدى.

          1995- يىلى James Gosling ئىجاد قىلغان Oak تىلى رەسمى ھالدا ئامېرىكا Sun شېركىتىنىڭ بايرىقى ئاستىغا ئۆتۈپ، Java دىگەن نام بىلەن پۈتۈن دۇنيا پىروگىراممېرلېرى ئالدىدا نامايەن بولىدۇ. شۇ يىلى Sun شېركىتى JDK-Java Developers Kit يەنى Java يۇمشاق دېتال ئىجادىيەت مۇھىتىنىڭ 1.0 نەشىرىنى ئېلان قىلىدۇ. Java تىلى ئۆزىنىڭ تەرەققىيات مۇساپىسىدىكى تۇنجى قەدىمىنى مۇۋەپپىقىيەتلىك بېسىپ، خەلىقئارا سەھنىدە كۈچلۈك قۇدىرىتىنى نامايەن قىلىشقا باشلايدۇ.

          Java تىلى دۇنياغا كەلگەندىن كېيىن نۇرغۇن پىروگىراممېرلارنىڭ قىزىقىشىنى قوزغايدۇ. Sun شېركىتى بۇ تىلنى داۋاملىق تەرەققى قىلدۇرۇپ مۇكەممەل ئېقتىدارغا ئىگە قىلىش ئۈچۈن 1996- يىلى 12- ئايدا JavaBeans ئۆلچىمىنىڭ 1.0 نەشىرىنى ئېلان قىلىدۇ. بۇ ئۆلچەمدە Sun شېركىتى Java  ئوبىكىتلېرىنى قايتا ئىشلىتىلىشچانلىققا ئىگە قىلىش، مۇرەككەپ قوللانمىلار بىلەن بولغان ماسلىشىشچانلىقىنى تېخىمۇ قۇلايلاشتۇرۇش مەقسىتىدە ئەڭ ئادەتتىكى Java تىپلېرى(يەنى Java Beans  )  ئۈچۈن بىر قوشۇلما مودىلىنى بارلىققا كەلتۈرىدۇ. بۇ يەردە تىلغا ئېلىنغان «مۇرەككەپ قوللانما» بىز ھازىر دائىم تىلغا ئالىدىغان «كارخانا دەرىجىلىك قوللانمىلار» نى كۆرسىتىدۇ. ئەمىليەتتە كارخانا دەرىجىلىك قوللانما دىگىنىمىز قانداقتۇ «كارخانىلار ئۈچۈن ئىشلىتىلىدىغان قوللانما» بولماستىن، بەلكى تۈۋەندىكىدەك ئۈچ خىل ئالاھىدىلىكنى ئۆزىدە مۇجەسسەملەشتۈرگەن يۇمشاق دېتال قوللانمىلېرىدىن ئىبارەت، بۇ ئۈچ خىل ئالاھىدىلىك: ساندان ئىششى (Transaction) مۇلازىمتى ئېھتىياجى (ئادەتتە ساندان قوللانمىلېرىدا ساندان مەشغۇلاتى قىلغاندا ناۋادا بىر فونكىسسىيىدە بىر قانچە قېتىم ساندان ئۈستىدىن ئۆزگەرتىش ئېلىپ بېرىلسا، مۇشۇ بىر فونكىسسىيىدىكى (ياكى بىرقانچە فونكىسسيىدىكى) ساندان مەشغۇلاتلېرىنىڭ ھەممىسىنىڭ ئوخشاش بىر خىل نەتىجىگە ئىگە بولىشى تەلەپ قېلىنىدۇ، يەنى ياكى ھەممىسى تەڭ مۇۋەپپىقىيەتلىك بولىشى ياكى ھەممىسى تەڭ مەغلۇپ بولىشى كېرەك. بىرقىسىم ساندان مەشغۇلاتلېرى (ئۆزگەرتىشلەر) مۇۋاپپىقىيەتلىك بولۇپ يەنە بىر قىسىملېرى مەلوم سەۋەپلەردىن مەغلۇپ بولسا، بۇ فونكىسسيىنىڭ ئىجىرا نەتىجىسى كەسپى لوگىكا جەھەتتىكى «بىردەكلىك»نى ساقلىيالمايدۇ، يەنى بىر قايتا بۆلگىلى بولمايدىغان «ئاتوملۇق» مەشغۇلات بولماي قالىدۇ. مۇشۇ خىل مەقسەتكە يېتىش ئۈچۈن ئادەتتە سانداندا ئىش مۇلازىمىتى ئىشلىتىلىدۇ) بىخەتەرلىك ۋە تارقاقلاشتۇرۇلغان ھېساپلاشتىن ئىبارەت.  دىمەك Sun شېركىتىنىڭ JavaBeans ئۆلچىمىنى مەيدانغا كەلتۈرۈشتىكى ئاساسى مەقسىدى Java تىلىنى كارخانا دەرىجىلىك قوللانمىلارنىڭ ئېھتىياجىنى قاندۇرالايدىغان مۇكەممەللىككە ئىگە قىلىشتىن ئىبارەت ئىدى.

          لېكىن، Java نىڭ ئۇموملىشىشى Sun شېركىتىنىڭ كۈتكەن يېرىدىن چىقمايدۇ. تاكى 1998- يىلىغا كەلگىچە پۈتۈن دۇنيادىكى Java قوللانچىلېرىنىڭ تەڭدىن تولىسى ئۇنى كارخانا دەرىجىلىك قوللانمىلار ئۈچۈن ئىشلەتمەي بەلكى ئائىلە ئېلىكتېر سايمانلېرى ئۈچۈن ئىشلىتىلىدىغان «كۆچمە ھېساپلاش»قا، Java Applet تىپ پايدىلىنىپ ئىشلىنىدىغان، جاھاننامە ( توركۆرگۈچ ) تە ئىشلەيدىغان كىچىك قوللانمىلار ئۈچۈن ئىشلىتىدۇ.

          Sun شېركىتى بۇ خىل ۋەزىيەتنى ئۆزگەرتىش ئۈچۈن داۋاملىق تىرىشچانلىق كۆرسىتىپ 1998- يىلى 3- ئايغا كەلگەندە EJB-Enterprise Java Bean ئۆلچىمىنىڭ 1.0 نەشىرىنى ئېلان قىلىدۇ. ئەينى ۋاقىتتا مەخسۇس كارخانا دەرىجىلىك قوللانما ئۈچۈن تەييارلانغان EJB نىڭ تۈۋەندىكىدەك ئالاھىدىلىكلېرى بار ئىدى:

بايان خاراكتېرلىق ساندان ئىششى باشقۇرۇش: ساندان ئىششى مۇلازىمىتىنى ئىشلىتىش ئۈچۈن مەخسۇسAPI لاردىن پايدىلىنىپ پىروگىرامما يېزىشقا توغرا كىلىدۇ. بايان خاراكتېرلىق ساندان ئىششى مۇلازىمىتىدىن پايدىلانغاندا پىروگىرامما كودى يازىمەن دەپ ئولتۇرۇشنىڭ ھاجىتى يوق، پەقەت مۇشۇ خىل مۇلازىمەت كېرەك بولغان پىروگىرامما فونكىسسىيىلېرى ئۈچۈن مۇناسىۋەتلىك XML سەپلىمە ھۈججەتلېرىدە كۆرسەتمە بېرىپ قويساقلا بولىدۇ. بۇنداق بولغاندا كەسپى ئېقتىدارنى ئەمەلگە ئاشۇرۇدىغان پىروگىرامما كودلېرى بىلەن بايىقىدەك مۇلازىمەت ۋە بايلىقلارنى باشقۇرىدىغان (كەسپى لوگىكا بىلەن مۇناسىۋىتى بولمىغان) پىروگىرامما كودلېرىنىڭ ئارلىشىپ كېتىپ، پىروگىراممىنى مۇرەككەپلەشتۈرۋېتىشىنىڭ ئالدىنى ئالغىلى بولىدۇ. ئۆزگەرتىشكە توغرا كەلسىمۇ پەقەت XML سەپلىمە ھۈججەتلېرىنى ئۆزگەرتسەكلا كۆزلىگەن مەقسەتكە يېتەلەيمىز.
يىراق مۇساپىلىق قوزغۇتۇش: بۇ ئاساسلىقى مۇستەققىل ھېساپلاش ئېقتىدارىغا ئىگە ئىككى ئىجىرا بىرلىكى (مەسىلەن ئىككى كومپىيوتېر) ئۈستىدىكى قوللانمىلارنىڭ ئۆز-ئارا قوزغاش، قوزغۇتۇش مۇناسىۋىتىنى كۆرسىتىدۇ.
توپلاشتۇرۇش: بۇ ئۇقۇم ئاساسەن مۇلازىمېتېرلاردىكى ئارا دېتاللار(Middleware، مەسىلەن WebLogic, JBoss, Microsoft BizTalk Server دىگەندەك) غا قارىتا ئېيتىلغان. ناۋادا بىر كومپىيوتېرغا سەپلەنگەن ئارا دېتال مۇناسىۋەتلىك يۇمشاق دېتال قوللانمىسىنىڭ ئىشلەش ئۈنۈم جەھەتتىكى ئېھتىياجىنى قاندۇرالمىسا، ئارا دېتالنى ئىككى ياكى ئۇنىڭدىن ئارتۇق كومپىيوتېرغا تەڭ قاچىلاپ، بۇ كومپىيوتېرلار ئارسىدا يۇمشاق دېتال قەۋىتىدىكى لوگىكىلىق «بىرلىك» نى ھاسىل قىلىپ، قوللانمىلار ئۈچۈن بىر پۈتۈن گەۋدە سۈپىتىدە مۇلازىمەت قىلىشنى كۆرسىتىدۇ. بۇنداق قىلىشتىكى ئاساسى مەقسەت بىر قانچە كومپىيوتېر ئارقىلىق تېخىمۇ كۈچلۈك بولغان ھېساپلاش شارائىتى ھازىرلاپ، ئىشلەش ئۈنۈمى جەھەتتىكى بىرلىك بېسىمنى ئازايتىش (يەنى يۈك تەقسىملەش) تىن ئىبارەت.
تارماق جەريان(Thread) باشقۇرۇش: كومپىيوتېردا ئىجىرا بولىدىغان ھەرقانداق پىروگىرامما بىر ياكى بىرقانچە جەريان (Process) ھالەتتە ئىجىرا بولىدۇ. ناۋادا پىروگىرامما تارماق جەريان تېخنىكىسىنى قوللىسا، ئوخشاش بىر جەرياننى بىرقانچە تارماق جەريانغا بۆلۈپ تەڭ ئىجىرا قىلىش مۇمكىن. بۇنداق بولغاندا كومپىيوتېرنىڭ ھېساپلاش ئېقتىدارىدىن تولۇق پايدىلىنىپ، ئىجىرا ئۈنۈمىنى يوقىرى كۆتەرگىلى، بىر ۋاقىتتا بىرقانچە ۋەزىپىنى تەڭ ئىشلەش مەقسىتىگە يەتكىلى بولىدۇ.
EJB ئوبىكتى كۆلچىكى: ھەر-بىر EJB ئادەتتە بىر ياكى بىرقانچە Java تىپى ۋە بۇلار ئوتتۇرسىدىكى مۇناسىۋەت باشقا كۆرسەتمىلەرنى بايان قىلىدىغان XML سەپلىمە ھۈججەتلېرىدىن تەركىپ تاپىدۇ. ئۇنىڭ ئوبىكتىنىڭ ھاسىل قىلىش، ھاسىلات ئوبىكىتلارنى باشقۇرۇش، كېرەكسىز EJB ئوبىكىتلېرىنى يىغۋىلىش ۋە يوقۇتۇش دىگەندەك خىزمەتلەرنى ئادەتتە ئارا دېتاللاردا بولىدىغان EJB قاچىسى ئۆز ئۈستىگە ئالىدۇ. بىراق EJB تەمىنلەيدىغان ئېقتىدار ۋە مۇلازىمەتلەر بىرقەدەر كۆپ ھەم مۇرەككەپ بولغاچقا ھەر قىتىم بىر EJB نىڭ ئوبىكتىنى ھاسىل قىلىش ئۈچۈن بىرقەدەر كۆپ كۈچ كېتىدۇ. شۇڭا ئەمىلى قوللانما جەريانىدا EJB ئوبىكىتلېرىنى كۆپلەپ ھاسىل قىلىشتىن كېلىپ چىققان ئۈنۈم خوراشنى ئازايتىش ئۈچۈن ئادەتتە ئارا دېتال قوزغالغاندا بارلىق EJB لارنىڭ ئوبىكىتلېرىنى ھاسىل قىلىپ EJB ئوبىكتى كۆلچىكىدە ساقلىۋالىدۇ. قوللانما EJB نىڭ ئوبىكتىغا كېرەك بولغاندا يېڭى ئوبىكىت ھاسىل قىلماي EJB قاچىسى تەمىنلىگەن كۆلچەكتىكى تەييار ئوبىكىتلارنى ئىشلىتىدۇ. ئىشلىتىپ بولغاندىن كېيىنكى ئوبىكىتلار JVM-Java Virtual Machine تەرىپىدىن يېغۋىلىنماي بەلكى يەنە EJB كۆلچىكىگە قايتۇرۇلىدۇ. يەنە EJB ئوبىكتىغا ئېھتىياج چۈشكەندە كۆلچەككە قايتۇرلغان ئوبىكىتلار يەنە داۋاملىق ئىشلىتىلىدۇ. بۇنداق بولغاندا ئوبىكتىنىڭ قايتا ئىشلىتىلىشىنى ئەمەلگە ئاشۇرۇپلا قالماي يەنە ئۈنۈم جەھەتتىنمۇ ئۇتقىلى بولىدۇ.
بايلىق كۆلچىكى: بۇنىڭدىمۇ EJB كۆلچىكىگە ئوخشاش قوللانما ئىشلىتىدىغان قىممەتلىك بايلىقلار (مەسىلەن ساندان ئۇلانمىسى دىگەندەك) نى «كۆلچەك» تېخنىكىسىدىن پايدىلىنىپ قايتا ئىشلىتىلىشچانلىققا ئىگە قىلىپ يوقۇرى ئۆنۈم يارىتىلىدۇ.
بىخەتەرلىك: EJB نى قوزغۇتۇشقا مۇناسىۋەتلىك سالاھىيەت باشقۇرۇش دىگەندەك.
كەسپى ئوبىكىتلارنى باشقۇرۇش: بۇنىڭدىمۇ قوللانما ئىجىرا بولۇش جەريانىدا ھاسىل قىلغان ھەرخىل كەسپى ئوبىكىتلارنى باشقۇرۇش كۆزدە تۇتۇلغان.
          EJB تېخنىكىسىنىڭ يۇقارقىدەك ئالاھىدىلىكلېرى ئەينى ۋاقىتتىكى كارخانا دەرىجىلىك قوللانمىلارنىڭ مۇتلەق كۆپ قىسىم ئېھتىياجىنى قاندۇرالىغاچقا بۇ ساھەدە قىزغىن قارشى ئېلىشقا ئېرىشىدۇ ۋە ناھايىتى تېزلا «مودا» تېخنىكىغا ئايلىنىدۇ. شۇندىن ئېتىبارەن Java تېخنىكىسى ھەقىقى تۈردە مۇلازىمېتېر يۇمشاق دېتال تېخنىكىلېرىنىڭ بىرى بۇلۇش سالاھىتىگە ئىگە بولىدۇ.

          EJB كارخانا دەرىجىلىك قوللانمىلاردا كەڭ كۆلەمدە قوللىنىلغاندىن كېيىن بىر قىسىم كىشىلەر بۇ خىل تېخنىكىنىڭمۇ بىر قىسىم كەمچىلىكلېرىنىڭ بارلىقىنى بايقايدۇ:

ئەينى ۋاقىتتا EJB دا تارقاقلاشتۇرۇلغان ھېساپلاش ئېقتىدارىنى ئەمەلگە ئاشۇرۇش ئۈچۈن RMI -يەنى Java تەمىنلىگەن يىراقتىن قوزغۇتۇش تېخنىكىسى كۆپلەپ ئىشلىتىلگەندى. بۇلۇپمۇ EJB نىڭ يىراقتىن قوزغۇتۇش ئېغىزى(EJB نىڭ ئادەتتە ئىككى ئېغىزى بولىدۇ: يەرلىك ئېغىزى ئۆزى بىلەن ئوخشاش بىر مەۋھۇم كومپىيوتېر (يەنى JVM) غا ئورۇنلاشتۇرۇلغان EJB ئىشلەتكۈچىلېرى ئۈچۈن خىزمەت قىلىدۇ. يىراقتىن قوزغۇتۇش ئېغىزى بولسا ئوخشىمىغان كومپىيوتېر ياكى ئوخشىمىغان JVM دىكى EJB ئىشلەتكۈچىلېرى ئۈچۈن خىزمەت قىلىدۇ) RMI ئاساسىدا بارلىققا كەلگەن بولغاچقا RMI غا بولغان باغلىنىشى بىرقەدەر كۈچلۈك ئېدى. بۇ خىل باغلىنىش مۇقەررەر ھالدا ئىشلەش ئۈنۈمى جەھەتتىكى خوراشنى كەلتۈرۈپ چىقىراتتى. ناۋادا قوللانما تارقاقلاشتۇرۇلغان قوللانما بولمىسا EJB نىڭ يىراقتىن قوزغۇتۇش ئېغىزى بىلەن ئوخشاش بىر مەۋھۇم كومپىيوتېردىكى EJB نى قوزغۇتۇپ پىروگىرامما ئۈنۈمنى تۈۋەنلىتىشنىڭ ھېچقانداق زۆرۆريىتى يوق ئىدى.
EJB نىڭ ئەڭ چوڭ ئەۋزەللىكى تارقاقلاشتۇرلغان قوللانما ئۈچۈن بەكمۇ قولاي ھەم مۇۋاپىق كىلەتتى. مەسىلەن كەسپى لوگىكىغا مۇناسىۋەتلىك پىروگىراممىلارنى بىر كومپىيوتېرغا، باشقا ئىش ئېقىمى (Workflow) دىگەندەك ياردەمچى مۇلازىمەتلەر بىلەن تەمىنلەيدىغان بۆلەكلەرنى باشقا كومپىيوتېرغا ئورۇنلاشتۇرۇپ يۈك تەقسىملەشنى ئەمەلگە ئاشۇرۇش دىگەندەك. بىراق زادى قانچىلىك قوللانمىلاردا مۇشۇنداق تارقاقلاشتۇرۇش ئېھتىياجى توغۇلىدۇ، بۇنىڭغا بىرنەرسە دېيىش تەس ئىدى.
بىر EJB نىڭ بىرقانچە خىل پىروگىرامما ھۈججەت ۋە مۇرەككەپ XML سەپلىمىلېرىدىن تۈزۈلىدىغانلىقىنى بايا تىلغا ئېلىپ ئۆتتۇق. ئۇنىڭ بۇ خىل مۇرەككەپلىكى مەزكور تېخنىكىنىڭ قوللانچىلېرى ئۈچۈن زىيادە يۈك پەيدا قىلىپ، تېخنىكىنىڭ ئۇموملىشى ئۈچۈن توسالغۇ بولۇپ كەلدى. ئۇنىڭ ئۈستىگە EJB ئىجادىيىتىدە ئۇنى سىناش ئۈچۈن جەزمەن EJB قاچىسى مۇلازىمىتى تەمىنلىگەن ئارا دېتاللاردا سىناش ئوبىكتى بولغان EJB پىروگىراممىسىنى ئېلان قىلىپ ئاندىن سىناشقا توغرا كىلەتتى. بۇ EJB نىڭ ئىجادىيەت ئۈنۈمىنىمۇ تۈۋەنلىتىۋىتەتتى.
          يۇقارقىدەك كەمچىلىكلەر نۇرغۇن قوللانچىلارنى ئەپسۇسلاندۇرغان بولسىمۇ، بىراق Java نىڭ، بولۇپمۇ EJB نىڭ كارخانا دەرىجىلىك قوللانمىلاردىكى (2001-يىلى Dot Net تېخنىكىسى مەيدانغا كىلىشتىن بۇرۇنقى) مۇتلەق ھۆكۈمرانلىق ئورنىنىڭ تىكلىنىشىگە چوڭ تەسىر كۆرسىتەلمىدى. لېكىن شۇنداق بولسىمۇ نۇرغۇن ئىجادچان پىروگىراممېرلار كارخانا دەرىجىلىك قوللانمىلارغا ئوخشاش ماس كىلىدىغان، EJB دەك مۇرەككەپ بولمىغان «يېنىك تىپتىكى» قوللانما سۇپىلارنى مەيدانغا كەلتۈرۈش ئۈستىدە ئىزدىنىشكە باشلىدى.

Spring نىڭ دۇنياغا كېلىشى

       J2EE ساھەسىنىڭ تەجىربىلىك پىروگىراممېرلېرىنىڭ كۆپۈنچىسى تۈۋەندىكى ئىككى كىتاپنىڭ داڭقىنى ئاڭلىغان. بۇ كىتاپلارنىڭ بىرى «J2EE Design and Development»، يەنە بىرى بولسا «J2EE Development without EJB». بۇ ئىككى پارچە كىتاپنىڭ ھەر ئىككىلىسىدە ئاپتور J2EE ئىجادىيىتىدىكى ئەمىليەتچىللىك ئىدىيىسىنى كەڭ تەشۋىق قىلىپ، EJB تېخنىكىسىنى ئىشلەتمەيمۇ «يېنىك تىپتىكى» قوللانما سۇپلېرى ئارقىلىق كارخانا دەرىجىلىك قوللانمىلارنىڭ ئېھتىياجىدىن چىققىلى بولىدىغانلىقىنى ئىسپاتلىدى. كىتاپتا سۆزلەنگەن ئىلغار ئىدىيە، بولۇپمۇ بىرىنچى پارچە كىتاپتا ئەمىلى مىسال سۈپىتىدە ئوتتۇرغا قويۇلغان ئىجادىيەت سۇپىسى 2002 - يىلى 10 - ئايدا كىتاپ نەشىردىن چىقىشى بىلەنلا كەڭ جامائەتچىلىكنىڭ قىزغىن ئالقىشىغا سازاۋەر بولدى. بۇ ئىككىلا كىتاپنىڭ ئاپتورى ماقالىدە كۆپچىلىككە تونۇشتۇرۇلماقچى بولغان ئىككىنچى شەخىس Rod Johnson ئىدى.

Rod Johnson

       Rod Johnson نىڭ «J2EE Design and Development» ناملىق كىتابى نەشىر قىلىنىپ بىر يىلدىن كېيىن، يەنى 2003 - يىلى يىل ئاخىرىدا ئوخشاشلا Rod Johnson نىڭ قەلىمى ئاستىدا مەيدانغا كەلگەن يېڭى بىر Java قۇرۇلمىسى Java ساھەسىنىڭ دېققىتىنى ئۆزىگە تارتتى، ئۇ دەل مەزكور ماقالىدىكى «باش پېرسوناژ»  Spring دىن ئىبارەت. بۇ قۇرۇلما Johnson ئەپەندىم ئۆزىنىڭ «J2EE Design and Development» ناملىق كىتابىدا ئوتتۇرغا قويغان J2EE لايىھىسىدىكى «ئەمىليەتچىللىك ئىدىيىسى» نىڭ كونكېرت ئىپادىسى ئىدى.

       2004 - يىلى 3 - ئايدا Spring قۇرۇلمىسىنىڭ 1.0 نەشىرى ئېلان قىلىندى. شۇندىن ئېتىبارەن Spring كارخانا دەرىجىلىك قوللانمىلاردا كەڭ كۆلەمدە قوللىنىلىشقا باشلىدى. Spring قۇرۇلمىسىنىڭ Dot Net نۇسخىسىمۇ Spring.NET نامىدىكى ئەركىن يۇمشاق دېتال تۈرى سۈپىتىدە ئېلان قىلىنىپ، ئۆزىنىڭ تەسىر دائىرىسىنى Dot Net ساھەسىگە كېڭەيتتى. 2006 - يىلى 10 - ئايدا Spring نىڭ 2.0 نۇسخىسى ئېلان قىلىندى. شۇنداق قىلىپ Spring قۇرۇلمىسى ئەركىن يۇمشاق دېتال ھەركىتىنىڭ Java ساھەسىدىكى يارقىن نامايەندىسى بولۇپ قالدى.

www.uyghurdev.net  تور بېتىدىن ئېلىندى ،ئەسلى ئاپتۇرى :Designer

Baqka يوللانغان ۋاقتى 2008-10-25 10:33:51

java dot net نىڭ ئورنىنى ئالامدۇ؟

Armix يوللانغان ۋاقتى 2008-10-27 18:09:41

Java   Dot NET نىڭ ئورنىنى ئالامدۇ ؟

بۇنى بىر نەرسە دېمەك تەس ، ئەگەر Sun شىركىتى ۋەيران بولسا ئۇ ھالدا Dot Net نىڭ بارابارا Java ئورنىنى ئېلىشى تۇرغان گەپ ، ئەگەر مىكروسوفىت ۋەيران بولسا ئۇ ھالدا ئەكىسچە....

phoenix يوللانغان ۋاقتى 2008-12-7 17:07:41

SUNنىڭ تەرەققىي قىلىشىنى ئۈمىد قىلىمەن.

بەت: [1]
: Spring تېخنىكىسى ھەققىدە ئۇمومى چۈشەنچە (1)