Acceleo
এসেলিও হল ইক্লিপস ফাউন্ডেশনের একটি ওপেন-সোর্স কোড জেনারেটর যা মানুষকে অ্যাপ্লিকেশন তৈরির জন্য একটি মডেল-চালিত পদ্ধতি ব্যবহার করার অনুমতি দেয়। এটি মডেল-টু-টেক্সট রূপান্তর সম্পাদনের জন্য অবজেক্ট ম্যানেজমেন্ট গ্রুপ (ওএমজি) থেকে "এমওএফএম2টি" মানের একটি বাস্তবায়ন। ইতিহাস এবং উন্নয়ন প্রাথমিক সংস্করণ অ্যাসেলিও প্রকল্পটি 2006 সালে Acceleo.org ওয়েবসাইটের সাথে জন্মগ্রহণ করে। এসেলিও 1.0 জি. এন. ইউ পাবলিক লাইসেন্সের (জি. পি. এল) অধীনে লাইসেন্সপ্রাপ্ত ছিল এবং এটি ই. এম. এফ এবং ইউ. এম. এল 1.2-এর উপর ভিত্তি করে ইক্লিপস 3.0,3.1 এবং বেশ কয়েকটি মডেলারের সাথে সামঞ্জস্যপূর্ণ ছিল। কয়েক সপ্তাহ পরে, এসেলিও 1.1 এক্লিপস 3.2 এবং ইউএমএল 1.3-এর সাথে সামঞ্জস্য নিয়ে আসে। এক্লিপস ফাউন্ডেশনের প্রকল্পগুলিতে ব্যবহৃত এক্লিপস পাবলিক লাইসেন্স (ই. পি. এল) গ্রহণের জন্য এক্লিপস 1.2 প্রকাশের সাথে সাথে এক্লিপস ফাউন্ডেশন তার লাইসেন্স পরিবর্তন করে। অ্যাসেলিও 2 ওয়েবসাইট planet.acceleo.org চালু হওয়ার পরে 5ই জুন, 2007-এ উপলব্ধ ছিল, যার মধ্যে অ্যাসেলিও সম্প্রদায়ের সদস্যদের দ্বারা তৈরি নিবন্ধ এবং অ্যাসেলিও মডিউল রিপোজিটরি রয়েছে যার মধ্যে অ্যাসেলিও 2-এর উপর ভিত্তি করে কোড জেনারেটর রয়েছে। ইক্লিপ্স ফাউন্ডেশনে প্রবেশ 2009 সালে, এসেলিও 3-এ যাওয়ার সময়, প্রকল্পটি ইক্লিপ্স ফাউন্ডেশনে গৃহীত হয়েছে। এই রূপান্তরের সময়, কোড জেনারেটর সংজ্ঞায়িত করার জন্য এসেলিও দ্বারা ব্যবহৃত ভাষাটি মডেল থেকে পাঠ্য রূপান্তরের জন্য ওএমজি থেকে নতুন মান, এমওএফএম2টি ব্যবহার করার জন্য পরিবর্তন করা হয়েছে। ইক্লিপস 3.6 হেলিওস-এর মুক্তির সাথে সাথে, এসেলিওকে ইক্লিপস ফাউন্ডেশনের একটি সরকারী প্রকল্প হিসাবে একযোগে মুক্তি ট্রেনে অন্তর্ভুক্ত করা হয়েছে। এসেলিও একটি ইক্লিপস প্লাগইন এবং এটি ইক্লিপস আইডিই-তে সংহত করা হয়েছে। এসেলিও ই. এম. এফ-এর মতো বেশ কয়েকটি মূল এক্লিপস প্রযুক্তির উপরে নির্মিত এবং এসেলিও 3-এর মুক্তির পর থেকে, ও. সি. এল-এর এক্লিপস বাস্তবায়ন। মডেলগুলিতে নেভিগেট করতে এবং একটি মডেলের উপাদানগুলির উপর সীমাবদ্ধতা সংজ্ঞায়িত করতে ও. সি. এল হল ও. এম. জি-র একটি আদর্শ ভাষা। ট্রেডমার্ক যদিও এসেলিও সোর্স কোডটি ওপেন সোর্স, এসেলিও ট্রেডমার্ক এবং এর লোগো, এসেলিওতে সমন্বিত, ওপেন সোর্স নয়। এগুলি অ্যাক্সেলিওর স্রষ্টা ওবিও কোম্পানির ট্রেডমার্ক ছিল এবং যখন অ্যাক্সেলিও একটি সরকারী প্রকল্প হিসাবে গৃহীত হয়েছিল তখন এগুলি এক্লিপস ফাউন্ডেশনে স্থানান্তরিত হয়েছিল। সোর্স কোড এসেলিও একটি ইক্লিপস প্রকল্প যা বেশিরভাগ জাভাতে তৈরি করা হয়েছে এবং ইক্লিপস পাবলিক লাইসেন্সের (ই. পি. এল) অধীনে উপলব্ধ। এসভিএন-এ ওডব্লিউ2 কনসোর্টিয়ামের ওয়েবসাইটে অ্যাসেলিও 1. x এবং 2. x-এর সোর্স কোড পাওয়া যায়। 2009 সালে এক্লিপ্স ফাউন্ডেশনে প্রবেশের সাথে সাথে, এস. ভি. এন থেকে এক্লিপ্স ফাউন্ডেশনের সার্ভারের একটি সি. ভি. এস ভিত্তিক সংগ্রহস্থলে এস. ভি. এল. ই. ও 3-এর সোর্স কোড স্থানান্তর করা হয়। 2011 সালে ইক্লিপ্স 3.7 ইন্ডিগো প্রকাশের পর, ইক্লিপ্স ফাউন্ডেশনের বেশ কয়েকটি সরকারী প্রকল্প দ্বারা শুরু হওয়া অভিবাসনের পরে এসেলিও প্রকল্পটি গিট-এ স্থানান্তরিত হয়েছে এবং জুলাই 2011 সাল থেকে, এসেলিও সোর্স কোড গিটহাব-এ উপলব্ধ। প্রথম স্থিতিশীল রিলিজ প্রকাশ করেছেঃ 1লা এপ্রিল 2006 থেকে উপলব্ধ অ্যাসেলিও 1.0 সাপোর্টেড প্ল্যাটফর্ম অ্যাক্সেলিও জাভাতে লেখা এবং ইক্লিপস আইডিই-তে প্লাগইন হিসাবে স্থাপন করা হয়েছে। অ্যাক্সেলিও জাভা 5 + ভিত্তিক পরিবেশে নিম্নলিখিত প্ল্যাটফর্মগুলিতে সমর্থিত হয়ঃ লিনাক্স ম্যাকোস উইন্ডোজ এক্সপি, উইন্ডোজ ভিস্তা, উইন্ডোজ 7 অ্যাক্সেলিও 3 দিয়ে শুরু হওয়া ভাষা, একটি অ্যাক্সেলিও কোড জেনারেটর সংজ্ঞায়িত করতে ব্যবহৃত ভাষা হল এমওএফএম2টি মানের একটি বাস্তবায়ন। এই কোড প্রজন্মের ভাষা একটি টেমপ্লেট ভিত্তিক পদ্ধতি ব্যবহার করে। এই পদ্ধতির সাথে, একটি টেমপ্লেট একটি পাঠ্য যা নিবেদিত অংশ ধারণ করে যেখানে ইনপুট মডেল দ্বারা প্রদত্ত উপাদানগুলি থেকে পাঠ্য গণনা করা হবে। সেই উৎসর্গীকৃত অংশগুলি বেশিরভাগ সময়ই সেই মডেলগুলি থেকে তথ্য নির্বাচন এবং উত্তোলনের জন্য ব্যবহৃত ইনপুট মডেলগুলির সত্তার উপর নির্দিষ্ট সময় অভিব্যক্তি। এসেলিওর মধ্যে, এই অভিব্যক্তিগুলি ওসিএল ভাষার এক্লিপস বাস্তবায়নের উপর ভিত্তি করে। বৈশিষ্ট্যগুলি এসিইলিও ই. এম. এফ ভিত্তিক মডেলগুলি থেকে কোড তৈরির জন্য সরঞ্জাম সরবরাহ করে। এই সরঞ্জামগুলির জন্য ধন্যবাদ, উদাহরণস্বরূপ, অ্যাসেলিও ক্রমবর্ধমান প্রজন্মের অনুমতি দেয়। ক্রমবর্ধমান প্রজন্ম মানুষকে কোডের একটি অংশ তৈরি করার এবং তারপরে উত্পন্ন কোডটি সংশোধন করার এবং অবশেষে পূর্ববর্তী পরিবর্তনগুলি না হারিয়ে কোডটি আবার পুনরুজ্জীবিত করার ক্ষমতা দেয়। এসেলিও এছাড়াও অনুমতি দেয়ঃ ইউএমএল 1, ইউএমএল 2 এর মতো ই. এম. এফ-এর সাথে সামঞ্জস্যপূর্ণ যে কোনও ধরণের মেটামডেল থেকে কোড জেনারেশন এবং এমনকি যে কোনও পাঠ্য ভাষার (সি, জাভা, পাইথন ইত্যাদি) ব্যবহারকারী সংজ্ঞায়িত টেমপ্লেট জেনারেশনের সাথে প্রজন্মের কাস্টম মেটামডেল (ডিএসএল) কাস্টমাইজেশন। সম্পাদক এসেলিওতে সিনট্যাক্স হাইলাইটিং, সমাপ্তি, রিয়েল টাইম ত্রুটি সনাক্তকরণ এবং রিফ্যাক্টরিং সহ একটি কোড জেনারেশন মডিউল সম্পাদক রয়েছে। ডিবাগার দ্য এসেলিও ডিবাগার একটি প্রজন্মের অগ্রগতির উপর নজর রাখার সম্ভাবনা দেয়। এটি ব্যবহারকারীকে একটি ব্রেক পয়েন্ট দিয়ে একটি প্রজন্মকে বিরতি দিতে, ভেরিয়েবলগুলির অবস্থা পরীক্ষা করতে এবং সমস্যাগুলি সনাক্ত করতে একটি প্রজন্মের মধ্যে ধাপে ধাপে চলতে দেয়। প্রোফাইলার ব্যবহারকারীকে প্রজন্মের সময় কার্যকর করা সমস্ত নির্দেশাবলী, সেই নির্দেশাবলী কার্যকর করার সময় এবং সেই নির্দেশাবলীর প্রতিটি দ্বারা নেওয়া সময় নির্ধারণ করার অনুমতি দেয়। প্রোফাইলারের সাথে একটি প্রজন্ম চালু হওয়ার পরে প্রোফাইলিং ডেটা একটি ই. এম. এফ মডেলে পাওয়া যায়। এটি ব্যবহারকারীকে তৈরি করা কোড জেনারেটরে বাধা খুঁজে বের করার ক্ষমতা দেয়। ট্রেসেবিলিটি অ্যাসেলিও ইঞ্জিন একটি ফাইল তৈরির সাথে জড়িত সমস্ত উপাদানের ট্রেসেবিলিটি তথ্য গণনা করতে পারে। এই পদ্ধতিটি, উদাহরণস্বরূপ, ইনপুট মডেলগুলির উপাদানগুলি নির্ধারণ করার অনুমতি দেয় যা একটি নির্দিষ্ট পাঠ্য তৈরি করতে ব্যবহৃত হয়েছে এবং কোড জেনারেটরের যে অংশটি জড়িত রয়েছে। এককভাবে ব্যবহার পার্সার এবং জেনারেশন ইঞ্জিন, এসেলিওর গুরুত্বপূর্ণ উপাদানগুলি, ইক্লিপসে স্থাপন না করেই "স্বতন্ত্রভাবে" ব্যবহার করা যেতে পারে। অ্যাসেলিও একটি জাভা শ্রেণী তৈরি করে প্রজন্মকে প্রোগ্রামগতভাবে চালু করার জন্য এইভাবে যে কোনও জাভা অ্যাপ্লিকেশনে একটি অ্যাসেলিও জেনারেটরের সংহতকরণের অনুমতি দেয়। এই জাভা লঞ্চারটিকে অ্যান্ট বা মাভেন থেকেও ডাকা যেতে পারে। সামঞ্জস্যতা অ্যাসেলিওর সর্বশেষ প্রকাশটি এর সাথে সামঞ্জস্যপূর্ণঃ স্ট্যান্ড অলোন জাভা 6 রানটাইম এক্লিপস 3.7 ইন্ডিগো এক্লিপস 3.8 জুনো এক্লিপস 4.3 কেপলার এক্লিপস 4.4 চন্দ্রগ্রহণ 4.5 মঙ্গল এক্লিপস 4.6 নিয়ন এসেলিও মডেলিং ফ্রেমওয়ার্ক ই. এম. এফ-এর উপর ভিত্তি করে তৈরি। সুতরাং এটি যে কোনও সরঞ্জামের সাথে সামঞ্জস্যপূর্ণ যা ই. এম. এফ সামঞ্জস্যপূর্ণ মডেল তৈরি করতে পারে। উদাহরণস্বরূপ, এসেলিও ইউএমএল বা এমনকি একটি কাস্টম ডিএসএল-এর মতো যে কোনও ধরনের মেটামডেল থেকে সংজ্ঞায়িত যে কোনও ই. এম. এফ সামঞ্জস্যপূর্ণ মডেল ব্যবহার করতে পারে। এই মেটামডেল থেকে, ব্যবহারকারী একটি কোড জেনারেটর সংজ্ঞায়িত করতে পারেন যা মেটামডেল ব্যবহার করে একটি মডেল থেকে যে কোনও ধরনের পাঠ্য ভাষা তৈরি করবে। এখানে আমরা নিম্নলিখিত উপাদানগুলি ব্যবহার করছিঃ ই. সি. ক্লাস, ই. এট্রিবিউট এবং ই. এম. এফ থেকে ই. অপারেশন। সহজ মডিউল এবং এই ইনপুট মডেলের জন্য ধন্যবাদ, এসেলিও পূর্ববর্তী কোড তৈরি করতে পারে। এই উদাহরণে সংজ্ঞায়িত মডিউলটি জাভা তৈরির জন্য প্যারামিটারাইজ করা হয়েছে তবে এমওএফএম2টি মানটি উত্পন্ন কোড থেকে স্বাধীন। যখন জেনারেটর তৈরি করা হয়, তখন ব্যবহারকারী অন্য একটি মডেল ব্যবহার করে অনুরূপ চেহারার একটি কোড তৈরি করতে পারে তবে একটি ভিন্ন বিষয়বস্তু সহ। অ্যাক্সেলিও জাভা এবং পাইথন তৈরি করতে বেশ কয়েকটি কোড প্রজন্মের উদাহরণ সংহত করে। অ্যাওয়ার্ডস কমিউনিটি অ্যান্ড কমিউনিকেশন দ্য এসেলিও কমিউনিটি ইক্লিপস ফাউন্ডেশনের ওয়েবসাইটের এসেলিও অংশের চারপাশে একত্রিত হয়। এসেলিও ডকুমেন্টেশন অনলাইনে ইক্লিপস হেল্প সেন্টার এবং এসেলিও প্রকল্পের উইকিতে পাওয়া যায়। সম্মেলন এসেলিওর বিকাশকারীরা এমডিএ বা ইক্লিপস সম্মেলনে বাস্তবায়িত উপস্থাপনার জন্য সম্প্রদায়ের সাথে যোগাযোগ করছেন। তথ্যসূত্র বাইরের লিঙ্ক অফিসিয়াল ওয়েবসাইট (এসেলিও 3 + এর জন্য) ইক্লিপস (সফ্টওয়্যার) ইউ. এম. এল সরঞ্জাম বিনামূল্যে ইউ. এম. এল সরঞ্জাম 2006 সফ্টওয়্যার