স্ট্রટ્સ এবং স্প্রিং এমভিসি মধ্যে পার্থক্য

Anonim

স্প্রিং এমভিসি স্ট্র্রટ્સ বনাম

স্ট্রট ফ্রেমওয়ার্ক জাভা ইএ ওয়েব অ্যাপ্লিকেশন তৈরির জন্য প্রাথমিক ওয়েব অ্যাপ্লিকেশন কাঠামোর মধ্যে একটি। স্প্রিং একটি ওপেন সোর্স অ্যাপ্লিকেশন ফ্রেমওয়ার্ক। স্প্রিং ফ্রেমওয়ার্কের প্রবর্তনের পরে কিছু সময়, ডেভেলপাররা স্ট্রটস এ অনুভূত কিছু সীমাবদ্ধতা মোকাবেলার জন্য প্রত্যাশা করে, স্প্রিং কাঠামোর সাথে একটি MVC ফ্রেমওয়ার্ক যুক্ত করেছে। কিন্তু কয়েক বছর পরে, Struts2 (বা Struts সংস্করণ 2) এসেছে, এবং এটি সম্পূর্ণ ভিন্ন এবং অত্যন্ত উন্নত ওয়েব অ্যাপ্লিকেশন কাঠামো ছিল। এখন, স্ট্রટ્સ এবং স্প্রিং এমভিসি উভয়ই বিশ্বের জাভা ইএ অ্যাপ্লিকেশনগুলির জন্য খুব জোরালোভাবে ব্যবহৃত হচ্ছে।

স্ট্রટ્સ কি?

স্ট্রাতস (এ্যাপাচি স্ট্রাস নামেও পরিচিত) জাভাতে লিখিত একটি ক্রস প্ল্যাটফর্ম ওপেন সোর্স ফ্রেমওয়ার্ক, যা জাভা ইই ওয়েব অ্যাপ্লিকেশান তৈরির উদ্দেশ্যে তৈরি। Struts MVC (মডেল-ভিউ-কন্ট্রোলার) আর্কিটেকচারের ব্যবহারকে উৎসাহ দেয় এটি জাভা সার্লেটে API- এর একটি এক্সটেনশন। ক্রেইগ ম্যাকক্লানহান স্ট্রટ્સের মূল নির্মাতা। প্রাথমিকভাবে এটি Jakaratha Struts নামে পরিচিত ছিল, এবং আপাচি সফটওয়্যার ফাউন্ডেশন এর জাকার্তা প্রোজেক্টের অধীনে রক্ষণাবেক্ষণ করা হয়েছিল। তার বর্তমান স্থিতিশীল সংস্করণ সংস্করণ 2. 2. 3, যা মে, 2011 সালে মুক্তি পায়। এটি আপগ্রেড লাইসেন্সের অধীনে মুক্তি পায় 2. 0. Struts ফ্রেমওয়ার্ক একটি অনুরোধ ভিত্তিক কাঠামো বলা হয়, এবং এটি তিনটি প্রধান উপাদান গঠিত হয়: একটি অনুরোধ হ্যান্ডলার, একটি প্রতিক্রিয়া হ্যান্ডলার, এবং একটি ট্যাগ লাইব্রেরি। স্ট্যান্ডার্ড ইউআরআই (ইউনিফর্ম রিসোর্স আইডেন্টিফাইজার) একটি অনুরোধ হ্যান্ডলার ম্যাপ করা হয়। রিসপন্স হ্যান্ডলার নিয়ন্ত্রণ হস্তান্তর করার জন্য দায়ী। ফর্মগুলির সাথে ইন্টারেক্টিভ অ্যাপ্লিকেশন তৈরি করতে, ট্যাগ লাইব্রেরির দেওয়া বৈশিষ্ট্যগুলি ব্যবহার করা যেতে পারে। আরএসএপি, এএএএএক্স, ইত্যাদির মত আরএসএসএস অ্যাপ্লিকেশনগুলি এবং বিভিন্ন প্রযুক্তি সমর্থন করে।

--২ ->

স্প্রিং এমভিসি কি?

স্প্রিং একটি ওপেন সোর্স অ্যাপ্লিকেশন ফ্রেমওয়ার্ক। এটা রড জনসন দ্বারা উন্নত করা হয়েছিল, এবং প্রথম সংস্করণ 2004 সালে মুক্তি পায়। স্প্রিং 3. 0. 5 স্প্রিং কাঠামোর বর্তমান সংস্করণ। এ্যাপাচি 2 লাইসেন্সের অধীনে এটি লাইসেন্স। 0 লাইসেন্স কোন জাভা অ্যাপ্লিকেশন স্প্রিং কাঠামোর মূল বৈশিষ্ট্য ব্যবহার করতে পারেন। বসন্ত কাঠামোর মধ্যে কয়েকটি মডিউল আছে, এবং MVC তাদের মধ্যে একটি। স্প্রিং MVC ফ্রেমওয়ার্ক তাদের মূল পরিকল্পনা একটি অংশ ছিল না। বস্তুত, স্প্রিং ডেভেলপাররা তাদের নিজস্ব MVC কাঠামোর সাথে এসেছিলেন কারণ তারা স্ট্রટ્સ (সংস্করণ 1) এবং অন্যান্য অনুরূপ কাঠামোর দুর্বলতাগুলি দেখিয়েছেন তা সমাধানের জন্য। বিশেষ করে, তারা বলে যে তারা উপস্থাপনা স্তর, অনুরোধ ব্যবস্থাপনা স্তর এবং মডেলের মধ্যে বিচ্ছেদের অভাব মোকাবেলা করতে চায়। বসন্ত MVC এছাড়াও একটি অনুরোধ ভিত্তিক ওয়েব অ্যাপ্লিকেশন কাঠামো হয়।

স্ট্রટ્સ এবং স্প্রিং MVC এর মধ্যে পার্থক্য কি?

যদিও স্প্রিং এমভিসি এবং স্ট্রট দুটি জনপ্রিয় ওয়েব অ্যাপ্লিকেশন ফ্রেমওয়ার্ক যা জাভা ইই ওয়েব অ্যাপ্লিকেশনগুলির জন্য ব্যবহৃত হয়, তবে তাদের পার্থক্য আছে।প্রকৃতপক্ষে, স্ট্রুতের (সংস্করণ 1) কয়েকটি সীমাবদ্ধতার সমাধান করার জন্য স্প্রিং এমভিসি তৈরি করা হয়েছিল। কিন্তু Struts2 সংস্করণ 1 (তারা একই কোড বেস ভাগ না) তুলনায় একটি অত্যন্ত উন্নত কাঠামো হয়, এবং সেইজন্য, স্প্রিং MVC এবং Structs2 অত্যন্ত তুলনীয় হয়।

স্প্রিং এমভিসি এর প্রধান সুবিধাগুলির মধ্যে রয়েছে যে JSP / JSTL, টাইলস, ফ্রিমaker, এক্সেল, পিডিএফ এবং JSON এর মতো অনেক ভিউ অপশনগুলির সাথে সিমল ইন্টিগ্রেশন থাকতে পারে। কিন্তু, Struts অসদৃশ, স্প্রিং MVC অন্তর্নির্মিত AJAX সমর্থন উপলব্ধ করা হয় (তৃতীয় পক্ষের AJAX লাইব্রেরি ব্যবহার করতে হবে)।

পরিশেষে, তাদের উভয়ই অত্যন্ত পরিপক্ব কাঠামোতে বিবেচিত, এবং উভয়ের মধ্যকার নির্বাচন ব্যক্তিগত অগ্রাধিকারে আসে। এটা এখানে উল্লেখ করা গুরুত্বপূর্ণ যে যদি স্ট্রટ્સগুলির প্রতি কোন নেতিবাচক অনুভূতি থাকে তবে তারা কেবলমাত্র স্ট্রટ્સ সংস্করণ 1 (যা এখন অপ্রচলিত বলে মনে করা হয়) পাওয়া যায় এমন দুর্বলতার কারণে।