آپاچی هارمونی
آپاچی هارمونی یکی از محدود پیادهسازی آزاد جاوا است که متن باز است. این نرمافزار که از سوی بنیاد نرمافزار آپاچی ارائه شده، کارش را با انتشار سکوی جاوا، نسخه استاندارد ۵٫۰ آغاز نمود[1] این نرمافزار تحت اجازهنامه آپاچی نسخهٔ دوم، منتشر شد. در اردیبهشت ۱۳۸۵ اعلام شد که هیئت مدیرهٔ آپاچی تصمیم گرفتهاست تا هارمونی را به یک پروژه سطح-بالا تبدیل نماید. هماکنون این پروژه (تا مرداد ۱۳۹۰) ۹۹٪ کیت توسعهٔ نسخهٔ استاندارد جاوا ۵ و ۹۷٪ نسخهٔ استاندارد ششم را بازنویسی نمودهاست.[2] که تحت نسخهٔ دوم آپاچی منتشر خواهدشد.
نویسنده(های) اصلی | بنیاد نرمافزار آپاچی |
---|---|
توسعهدهنده(ها) | بنیاد نرمافزار آپاچی |
انتشار پایدار | ۵٫۰M۱۵
۱۵ سپتامبر ۲۰۱۰ |
مخزن | |
سیستمعامل | لینوکس، ویندوز |
بنسازه رایانش | سی++، جاوا |
گونه | ماشین مجازی جاوا، کتابخانهٔ جاوا |
پروانه | اجازهنامه آپاچی ۲٫۰ |
وبگاه |
تاریخچه
هارمونی برای ایجاد یکپارچگی میان تمام توسعهگرانی که بر روی پیادهسازیهای آزاد جاوای موجود کار میکردند، ایجاد شد. بسیاری از توسعهدهندگان در مراحل مقدماتی انتظار داشتند تا این پروژه تحت گنو یا آپاچی باشد.[3]
ناهماهنگی با کلاس پث گنو
علیرغم بحثهای اولیه، تصمیم بر آن شد تا برنامه از کدهای کلاسپث گنو استفاده ننماید، که ممکن بود هارمونی را دچار اختلال در نوع اجازهنامه نماید. از این رو ارتباط میان پروژههای موجود و آزاد جاوا و هارمونی سدی حایل شد. توسعهدهندگان آپاچی مجبور بودن تا به بازنویسی کلاسهای که نیاز داشتند و از پایه بپردازند. این کار نیازمند کمک مالی بسیار زیادی از سوی شرکتهای نرمافزاری بود. البته حمایتهای شرکتهای چون ایبیام که منجر ره ایجاد بخش عظیمی از کدها شد شبهاتی را دربارهٔ هدف کار ایجاد نمود.[4]
مشکلات دریافت اجازهنامه تیسیکی از سان
در ۲۱ فروردین ۱۳۸۶ بنیاد نرمافزار آپاچی نامهای را برای مدیر عامل شرکت سان میکروسیستمز، جاناتان شواترز ارسال نمود و طی آن اجازهنامهٔ کیت سازگاری فناوری سکوی جاوا، نسخه استاندارد نگارش ۵ را درخواست نمود. یک کیت آزمایشی برای تعیین سازگاری میان مشخصات جاوای استاندارد نگارش ۵ لازم بود. چراکه در مشخصات اعلامی از سوی سان این مورد ذکر شدهبود.[5] سان بر روی وبلاگ شرکت پاسخش را گذاشت؛ اجازه میدهد تا پیادهسازی آزادی از سکوی جاوا تحت اجازهنامهٔ جیپیال صورت پذیرد، به همراه کیت سازگاری آن؛ ولی همچنان اعلام نمود که این کار در اولویت کاری این شرکت قرار ندارد. این کار باعث واکنشهای به شرکت سان شد. آپاچی در سال ۱۸ آذر ۱۳۸۹ از کمیتهٔ اجرایی فرایند جمعیت جاوا کنار کشید و دلیل این کار را اعتراض نسبت به دریافت موافقت اجازهنامهٔ جاوا برای پروژهٔ هارمونی ذکر نمود.[6][7]
استفاده در اندروید
دالویک ماشینی مجازی است که توسط گوگل و برای پروژهٔ اندروید استفاده شدهاست. این ماشین، از زیر مجموعهای از کلاسهای کتابخانهٔ هارمونی آپاچی را استفاده مینماید.[8] اگرچه دالوبک همان کلاسهای کتابخانهٔ جی۲اسایی و جی۲امایی نیست (مثلاً کلاسهای سوینگ و ایذدبیلوتی در جی۲امایی پشتیبانی نمیشود). به جای آن از کتابخانههای خود استفاده مینماید و زیر مجموعهای از هارمونی محسوب میشود[9].
سکوهای و سیستم عاملهای مورد پشتیبانی
پروژه مزبور پیادهسازیِ قابلحملی دارد که در نتیجه توسعهٔ آن را برای بسیاری از سکوها و سیستمعامل راحتتر مینماید. تمرکز اصلی بر روی لینوکس و ویندوز است که مبتنی بر معماری ۳۲ بیتی و۶۴ بیتی است.[10]
ویندوز ۲۰۰۰ | ویندوز، ایکسپی، ویندوز سرور ۲۰۰۳، ویندوز ویستا | لینوکس، سوزه، دبیان، جنتو، فدورا | فریبیاسدی | ایآیاکس | مک اواس اکس | |
---|---|---|---|---|---|---|
معماری ۳۲ (پنتیوم ۳ یا بهتر) | نه | آری | آری | نه | ن/م | ن/م |
معماری ۲۳-۶۴ بیتی (ایامدی ۶۴ یا اینتل ۶۴) | ن/م | آری | آری | ن/م | ن/م | ن/م |
ایتانیوم (۶۴ بیتی و ایپیاف) | ن/م | نه | آری | ن/م | ن/م | ن/م |
پاورپیسی ۳۲بیتی | ن/م | ن/م | نه | ن/م | ن/م | ن/م |
پاورپیسی ۶۴بیتی | ن/م | ن/م | نه | ن/م | نه | ن/م |
ایبیام سری زد | ن/م | ن/م | نه | ن/م | ن/م | ن/م |
منابع
- «سؤال اصلی دز پرسش و پاسخ راهاندازی پروژه». harmony.apache.org. دریافتشده در ۲۵ مرداد ۱۳۹۰.
ما با نسخهٔ استاندارد ۵ شروع کردیم، که اولین نسخهای از جاوا بود که تحت پروانهٔ متن باز قرار گرفته بود و اجازه میداد تا پیادهسازی متن بازداشتهباشد ولی این کار را با جاوای نگارش ۶ و تمام زیر مجموعههایش ادامه دادیم
- «وضعیت اجزای کتابخانهٔ کلاسها». harmony.apache.org. دریافتشده در ۲۵ مرداد ۱۳۸۵.
- مارک ویلارد (۱۹ اردیبهشت ۱۳۸۴). «هارمونی (هماهنگی)!». بایگانیشده از اصلی در ۱۶ مه ۲۰۰۸. دریافتشده در ۲۲ اوت ۲۰۱۱.
«آپاچی طرح کاری برای پیادهسازی کامل جی۲ایایی را ارائه نمود؛ که نامش را هارمونی (هماهنگی) گذاشت. این کار (در این زمان) نه دربارهٔ کد نویسی که دربارهٔ شروع کاری بود. از دیابلود، تام، یاروئن و من برای همکاری دعوت به عمل آمد تا یک معماری مناسب ار ارائه نماییم»
- مارک ویلارد (۲۰۰۶-۰۵-۲۴). «به سمت جاوای آزاد». الدبلیوام.نت.
«همهٔ این کارها، فارغ از این موضوع که اینتل با دادن برخی کدها حمایت نمود، در واقع هیچگونه همکاری مشترکی میان پروژههای نرمافزار آزاد اصلی و هارمونی اولیه وجود نداشت با چیزی که ما امروزه آن را آپاچی هارمونی میشناسیم. همه این کارهای باعث شد تا عدهای فکر کنند که هارمونی شرکتی به صورت کنسرسیوم و تحت لفافهٔ بنیاد آپاچی است نه یک کار گروهی.»
- نامهٔ سرگشاده به سان میکروسیتمز
- «آپاچی در اعتراض به عمکرد اوراکل از گروه جاوا کنار کشید». ارس تکنیا.
- «بنیاد نرمافزار آپاچی (بنا) از کمیتهٔ اجرایی فرایند جمعیت جاوا کنار کشید». بنیاد نرمافزار جاوا.
- «کیت نرمافزاری اندرویدِ گوگل، جاوا نگارش موبایل را به نفع جاوا و آپاچی هارمونی دور زد». infoq.com. ۲۰ آبان ۱۳۸۶. دریافتشده در ۳۱ مرداد ۱۳۹۰.
«به جای استفاده کامل از جاوا نگارش استاندارد یا موبایل، گوگل از این دو اشتقاقی ایجاد نمود. ابتدا زیر مجموعهای از بستههای جاوا را فراهم آورد. (...) مسیر اندروید حرکت در راه سایر پروژهای گوگل بود مه از جاوا استفاده میکردند، با این تفاوت که از کیت توسعهٔ جاوا بهطور کامل پشیبانی نمیکرد.»
- «ایندکش بسته». اتحاد هندست باز. دریافتشده در ۳۱ مرداد ۱۳۹۰.
- سکوها و سیستمعاملهای مورد پشتیبانی آپاچی هارمونی