کپی‌رایت و حق امتیاز
حق امتیاز آندروید به صورت اپن سورس بر اساس حق امتیاز آپاچی یا Apache License ارائه می‌گردد. بر این اساس شرکت‌های عضو اتحادیه می‌توانند با دسترسی به کدهای اصلی آندروید آن را مطابق دلخواه خود تغییر دهند و کد تغییر یافته را بدون عودت دادن برای خود حفظ کنند.






ویرایش‌های آندروید با طعم شیرینی‌جات و دسرها!
گوگل ویرایش‌های گوناگون آندروید را علاوه بر شماره ویرایش با نام یک شیرینی یا دسر معرفی می‌کند. این نام البته از ترتیب حروف الفبا برای حرف اول آن نام نیز پیروی می‌کند به گونه‌ای که ویرایش‌های منتشر شده آندروید تا به امروز به این نام‌ها بوده‌اند:


Cupcake که نوعی کیک کوچک شبیه به کیک یزدی ایرانی است ولی با اندازه‌ای کمی بزرگ‌تر برای ویرایش ۵/۱ آندروید، Donut که در ایران هم به همان نام شهرت دارد و نوعی پیراشکی محسوب می‌شود، برای ویرایش ۶/۱، Éclair که نوعی شیرینی خامه‌ای است شبیه به لطیفه ولی با اندازه بزرگ‌تر برای ویرایش‌های ۲ و ۱/۲، Froyo (مخفف Frozen yogurt ) نوعی دسر است که با ماست یخ زده تهیه می‌شود برای ویرایش ۲/۲٫ نام ویرایش بعدی آندروید هم Gingerbread یا نان زنجفیلی گذاشته شده است. همان گونه که مشاهده می‌شود ترتیب نام‌های شرینی‌ها و دسرها بر اساس حروف الفبا است. حالا که طعم این ویرایش‌ها را چشیدیم شاید بهتر باشد سری هم به ویژگی‌های فنی آنها بزنیم.

آندروید نسخه ۵/۱ یا Cupcake
نسخه ۵/۱ آندروید نخستین نسخه‌ای بود که به طور رسمی منتشر شد. این نسخه آندروید مبتنی بر کرنل لینوکس ۲٫۶٫۲۷ بود. از جمله قابلیت‌هایی که در این ویرایش گنجانده شده بود، باید به موارد زیر اشاره کرد:
• امکان ضبط فیلم از طریق دوربین فیلمبرداری آن
• فرستادن فیلم به سایت Youtube و عکس به سایت Picasa به صورت مستقیم از روی گوشی
• صفحه کلید مجازی با قابلیت پیش‌بینی کلمات وارد شده
• پشتیبانی از پخش استریوی موسیقی از طریق بلوتوث (A2DP) و کنترل پخش موسیقی یا ویدیو از طریق بلوتوث (AVRCP). • قابلیت اتصال اتوماتیک به دستگاه‌های بلوتوث
• امکان شخصی‌سازی صفحه اصلی با استفاده از ویجت‌ها و یا پرونده‌های شخصی
• جابجایی انیمیشنی تصاویر به هنگام عوض شدن صفحات






آندروید نسخه ۶/۱ یا Donut
در ۱۵ سپتامبر ۲۰۰۹ آندروید نسخه ۶/۱ یا دونات منتشر شد. این نسخه آندروید مبتنی بر کرنل لینوکس نسخه ۲٫۶٫۲۹ بود و قابلیت‌های زیر را به آندروید افزود:
• بهبود در سرویس آندروید مارکت
• رابط کاربری یکپارچه برای دوربین عکسبرداری، دوربین فیلمبرداری و گالری تصاویر
• امکان انتخاب چند عکس برای پاک کردن در منوی گالری
• به‌روزرسانی ویژگی جست‌وجوی صوتی
• به‌روزرسانی ویژگی جست‌وجو با قابلیت جست‌وجو در موارد نشانه‌گذاری شده (Bookmarks)، تاریخچه (History)، اسامی (Contacts) و وب از صفحه اصلی (Home Screen)
• پشتیبانی از تکنولوژی‌های به‌روز شده CDMA/EVDO، ۸۰۲٫۱x، VPN و موتور Text to speech
• پشتیبانی از رزولوشن WVGA برای صفحه نمایش
• افزوده شدن قابلیت‌های حرکتی در سیستم عامل و ابزار برنامه‌نویسی برای برنامه‌نویسان






نسخ ۲ و ۱/۲ یا Éclair
هر دو نسخه ۲ و ۱/۲ آندروید مانند نسخه ۶/۱ مبتنی بر کرنل لینوکس ۲٫۶٫۲۹ طراحی شده‌اند. آندروید ویرایش ۲ در ۲۶ اکتبر ۲۰۰۹ معرفی شد. در سوم دسامبر ۲۰۰۹ SDK نسخه ۲٫۰٫۱ معرفی شد و SDK ویرایش ۱/۲ در ۱۲ ژانویه ۲۰۱۰ منتشر گردید. اهم امکانات اضافه شده در این نسخ به شرح زیر هستند:

• سرعت سخت‌افزاریِ بهبود یافته
• ویژگی چند لمسی Multi Touch
• پشتیبانی از رزولوشن‌های بیشتر برای صفحه نمایش
• رابط کاربری به‌روزرسانی شده
• مرورگر اینترنتی با قابلیت پشتیبانی از HTML5
• دفترچه تلفن به‌روزرسانی شده
• گوگل مپ نسخه ۳٫۱٫۲

• پشتیبانی از Microsoft Exchange
• افزوده شدن امکان فلاش داخلی برای دوربین
• افزوده شدن زوم دیجیتال دوربین
• به‌روزرسانی صفحه کلید مجازی
• پشتیبانی از بلوتوث نسخه ۱/۲
• اضافه شدن قابلیت کاغذ دیواری‌های متحرک
• اضافه شدن امکان ارسال فایل با استفاده از بلوتوث

نسخه ۲/۲ یا Froyo
آندروید نسخه ۲/۲ در ۲۰ مه ۲۰۱۰ معرفی شد. این ویرایش آندروید مبتنی بر کرنل لینوکس نسخه ۲٫۶٫۳۲ است و قابلیت‌های زیر به آن اضافه شده است:
• افزایش سرعت سیستم عامل، حافظه و عملکرد سیستم بین ۲ تا ۵ برابر نسخه ۲
• افزایش سرعت اجرای برنامه‌های کاربردی با استفاده از تکنیک‌های JIT
• اضافه شدن موتور جاوا اسکریپت V8 کروم به مرورگر اینترنتی
• افزایش پشتیبانی از Microsoft Exchange با قابلیت‌هایی چون سیاست حریم شخصی به‌روز شده، همسان‌سازی تقویم و …)
• آندروید مارکت به‌روز شده با قابلیت به‌روزرسانی خودکار برنامه‌های کاربردی
• شماره‌گیری صوتی و انتقال دفترچه تلفن از طریق بلوتوث
• امکان نصب برنامه‌های کاربردی بر روی حافظه‌های جانبی
• پشتیبانی از فلش نسخه ۱/۱۰ • بهبود عملکرد دوربین در حالت‌های عکس و فیلمبرداری






در انتظار نان زنجفیلی
هر چند نام ویرایش بعدی آندروید منتشر شده است ( Gingerbread یا نان زنجفیلی) ولی هنوز خبر موثقی از شماره ویرایش بعدی و امکانات آن منتشر نشده است. باید تا زمستان صبر کرد و دستپخت گوگل را بار دیگر و این بار در پخت نان زنجفیلی امتحان کرد.






میزان محبوبیت نسخه‌های مختلف آندروید
آخرین آمار منتشره از سوی گوگل در خصوص میزان محبوبیت نسخ مختلف آندروید نشان می دهد که طعم شیرینی خامه‌ای برای کاربران دلچسبتر بوده است. عمده‌ترین دلیل این امر هم ارائه نسخه بروزرسانی به ویرایش ۱/۲ از سوی موتورولا برای پرطرفدارترین گوشی آندروید یعنی دروید بوده است.

بر اساس آمار مننتشر شده، در هفته منتهی به شانزدهم ژوئن ۲۰۱۰، نیمی از گوشی‌های آندروید موجود در بازار به سیستم عامل نسخه ۱/۲ یا همان Éclair مجهز بوده‌اند و پس از آن نسخه ۶/۱ با ۲۵ درصد محبوب‌ترین نسخه بوده است که با فاصله کمی به نسبت نسخه ۵/۱ در جایگاه دوم قرار گرفته است. سایر نسخ آندروید هم در مقایسه با این سه نسخه سهمی بسیار ناچیز دارند بگونه‌ای که مجموع سهم بازار سایر نسخ آندروید تنها ۵/۰ درصد سهم بازار را تشکیل می‌دهد.

سرعت انتشار ویرایش‌های آندروید فرصت‌ها و تهدید‌ها
آندروید با سرعت اعجاب‌آوری در حال پیشرفت است. در کمتر از ۱ سال و از سپتامبر ۲۰۰۹ چهار ویرایش اصلی این سیستم عامل یعنی ویرایش‌های ۶/۱، ۲، ۱/۲ و ۲/۲ منتشر شده است. این امر باعث شده تا تنها برخی از شرکت‌ها که به طور متمرکز و با تمام توان بر روی این سیستم عامل کار می‌کنند، مانند موتورولا و HTC، بتوانند همگام با ارائه ویرایش‌های جدید آندروید گوشی‌های خود را به‌روز کنند ولی سایر شرکت‌ها رفته رفته در حال عقب افتادن از این قافله هستند. به عنوان مثال باید به شرکت سونی اریکسون اشاره کرد.

این شرکت نخستین گوشی آندرویدی خود را با نام XPERIA X10 که مبتنی بر آندروید نسخه ۶/۱ است، به بازار معرفی کرد. سونی اریکسون رابط کاربری ویژه خود و امکانات ابتکاری فراوانی به X10 افزوده است. اوایل بهار سال جاری سونی اریکسون با خوشحالی اعلام کرد که قصد دارد تا پایان سال جاری میلادی گوشی‌های X10 خود را با نسخه ۱/۲ آندروید به‌روزرسانی کند. کمتر از دو هفته بعد نسخه ۲/۲ آندروید منتشر شد و شرکت‌های موتورولا و گوگل در همان زمان اعلام کردند که گوشی‌های دروید و نگزوس وان خود را تا یک ماه بعد به آندروید ۲/۲ مجهز خواهند ساخت.

اتفاقی که شاید ۶ ماه بعد برای X10 سونی اریکسون بیفتد! چنین وضعیتی برای شرکت‌های بزرگی چون سامسونگ و ال‌جی نیز وجود دارد. این شرکت‌ها هم هنوز نتوانسته‌اند سرعت واکنش خود را با سرعت سرسام‌آور پیشرفت آندروید هماهنگ سازند. در صورتی که این شرکت‌ها نتوانند به چنین هماهنگی دست یابند، شکاف بین تولیدکنندگان پیشروی آندروید یعنی موتورولا و HTC با بقیه بسیار بیشتر خواهد شد.

در هر حال به نظر می‌رسد گوگل باید فکری به حال فاصله ایجاد شده بین رقبا بکند وگرنه بروز این ناهماهنگی بازار را نیز دچار آشفتگی خواهد کرد. همان گونه که در سطور پیشین نیز ذکر شد در حالی که گوگل خود را برای ارائه نان زنجفیلی یعنی نسخه بعد از ۲/۲ آندروید آماده می‌کند، هنوز نیمی از دستگاه‌های آندروید فعال، از نسخه‌های پایین‌تر از ۱/۲ استفاده می‌کنند و این بدان معنا است که گوگل بسیار سریع‌تر از یارانش در اتحادیه Open Handset Alliance حرکت کرده است و آنها نتوانسته‌اند خود را با آن همراه سازند.






سهم بازار آندروید
سهم بازار آندروید در مقایسه با سایر سیستم‌های عامل تلفن‌های هوشمند، رشد اعجاب‌آور آندروید را نشان می‌دهد. آندروید برای نخستین بار در سه ماهه اول سال ۲۰۱۰ توانست گوشی‌های بیشتری از مهم‌ترین رقیب خود یعنی اپل به فروش برساند. برخی کارشناسان بر این باور هستند که اگر گوگل موفق شود اپل را از پیش روی خود بردارد RIM سیمبین را نیز پشت سر خواهد گذاشت. گروهی از کارشناسان، استراتژی آندروید در مقابله با اپل را با استراتژی مایکروسافت در اوایل دهه ۱۹۷۰ مقایسه می‌کنند.
جایی که مایکروسافت توانست با فروش حق امتیاز استفاده از سیستم عامل خود به سایر شرکت‌ها به سلطه مکینتاش خاتمه دهد و حالا گوگل به همین استراتژی و به کمک بزرگ‌ترین تولید کنندگان تلفن همراه مانند سامسونگ، ال‌جی، سونی اریکسون، موتورولا و اچ تی سی، قصد دارد روند رشد آیفون اپل را متوقف سازد و به نظر می‌رسد تا حد زیادی هم موفق بوده است. بر اساس آمار ارائه شده توسط شرکت Admob در آوریل ۲۰۱۰ تعداد کل گوشی‌های آیفون موجود در بازار ایالات متحده آمریکا ۷/۱۰ میلیون دستگاه بوده است. این در حالی است که تعداد گوشی‌های مبتنی بر آندروید ۷/۸ میلیون دستگاه بوده است.

ذکر این نکته ضروری است که نخستین گوشی آیفون در ۲۹ ژوئن ۲۰۰۷ به بازار عرضه شد در حالی که نخستین گوشی مبتنی بر آندروید بیش از یک سال بعد و در اکتبر ۲۰۰۸ روانه بازار شد. اما به غیر از اپل بقیه رقبا نیز از دست آندروید جان به در نبرده‌اند. آندروید در سه ماهه نخست سال ۲۰۱۰ توانست سهم بازار خود را از ۶/۱ درصد در مدت زمان مشابه در سال گذشته به ۶/۹ درصد برساند و با پشت سر گذاشتن ویندوز موبایل و لینوکس در رده چهارم پرطرفدارترین سیستم عامل تلفن‌های همراه هوشمند قرار گیرد.

با اقبال بیشتر سایر تولید کنندگان به گوشی‌های آندروید به نظر می‌رسد روند رشد این سیستم عامل نه تنها کند نگردد بلکه شتاب بیشتری نیز پیدا کند. تاکنون بالغ بر ۶۱ مدل دستگاه مبتنی بر آندروید با ۲۱ برند مختلف تولید شده است. بنابر آخرین گزارش‌ها در حال حاضر هر روز یکصدهزار گوشی مبتنی بر آندروید به فروش می‌رسد. با نرخ کنونی گوگل ۳۶ میلیون گوشی در سال به فروش خواهد رساند. این رقم زمانی معنا پیدا می‌کند که بدانیم شرکت اچ تی سی، چهارمین تولید کننده تلفن‌های همراه هوشمند در جهان سالانه ۱۷ میلیون گوشی تلفن همراه به فروش می‌رساند. اچ تی سی پیش از این ۷۰ درصد گوشی‌های مبتنی بر آندروید را تولید می‌کرد.

رقمی که اکنون به زحمت به ۵۰ درصد می‌رسد. با نرخ کنونی و در صورت ثابت ماندن نرخ فروش آیفون، آندروید خواهد توانست اپل را نیز پشت سر گذاشته و خود را به عنوان تهدیدی جدی برای RIM مطرح کند. شرکت‌های بزرگ تولید تلفن همراه اعلام کرده‌اند قصد دارند تولید گوشی‌های مبتنی بر آندروید خود را شتاب بخشند. فعال‌ترین تولیدکننده گوشی‌های مبتنی بر آندروید یعنی موتورولا اعلام کرده تا پایان سال جاری میلادی ۲۰ مدل گوشی مبتنی بر آندروید به بازار عرضه خواهد کرد. شرکت ال‌جی هم اعلام کرده است قصد دارد همین تعداد گوشی را تا پایان سال جاری با سیستم عامل آندروید به بازار عرضه نماید.

سامسونگ دومین تولیدکننده تلفن‌های همراه در جهان هم اعلام کرد نیمی از گوشی‌های تلفن همراه هوشمند این شرکت در سال ۲۰۱۰ مبتنی بر آندروید خواهند بود. بقیه تولیدکنندگان هم هر روز علاقه بیشتری به تولید گوشی‌های تلفن همراه مبتنی بر آندروید از خود نشان می‌دهند. با این اوصاف انتظار می‌رود آندروید بتواند جهشی شگرف در سهم بازار را رقم زند.






دستگاه‌های شاخص مبتنی بر آندروید
در بین شرکت‌های تولید کننده تلفن‌های همراه هوشمند مبتنی بر آندروید دو شرکت موتورولا و HTC تحرک بسیار گسترده‌تری به نسبت سایر رقبا دارند. موتورولا که زمانی دومین تولیدکننده تلفن همراه جهان بود، پس از زیان‌دهی در دوره‌های مالی متوالی و کاهش چشمگیر سهم بازار در موقعیتی بحرانی قرار گرفته بود، با تغییر ناگهانی استراتژی خود و کنار نهادن سایر سیستم‌های عامل تلفن همراه از قبیل ویندوز موبایل، سیمبین و لینوکس موبایل، تمامی تلاش خود را بر طراحی گوشی‌های مبتنی بر آندروید معطوف ساخت.
این شرکت توانست با استراتژی جدید خود چندین مدل گوشی هوشمند مبتنی بر آندروید به فروش برساند و با این کار پس از مدت‌ها سودآوری را تجربه کند. موتورولا رابط کاربری ویژه آندروید مختص به خود را با نام MOTOBLUR طراحی کرده و بر روی گوشی‌های خود قرار داده است. به نظر می‌رسد با توجه به توانمندی‌های این شرکت که خالق تلفن همراه به شمار می‌رود، بتوان از هم اکنون موتورولا را طلایه‌دار آندروید دانست. در خصوص HTC هم باید گفت هر چند این شرکت به موازات تولید گوشی‌های مبتنی بر آندروید به تولید گوشی‌های با سیستم عامل ویندوز موبایل هم می‌پردازد ولی رفته رفته، توان خود را بیشتر بر تولید گوشی‌های مبتنی بر آندروید هدایت می‌کند.

HTC علاوه بر تولید گوشی با برند خود به تولید گوشی‌های با برند سایر شرکت‌ها هم می‌پردازد و گوشی نگزوس وان شرکت گوگل یکی از همین نمونه‌ها است. گوگل تولید نخستین گوشی با نام تجاری خود را پس از اینکه شرکت سونی اریکسون از تولید آن با برند گوگل سر باز زد به HTC سپرد. بنابر آخرین آمار ارائه شده از سوی AdMob بر اساس اطلاعات ترافیک دیتای ماه مارس ۲۰۱۰، چیزی در حدود یک سوم تلفن‌های همراه فعال مبتنی بر آندروید، مدل دروید شرکت موتورولا هستند. پس از دروید گئشی‌های مدل Hero با ۱۹ درصد، Dream یا همان T-Mobile G1 با ۱۱ درصد و Magic هم با ۱۱ درصد در رده‌های بعدی قرار دارند.






آندروید مارکت
آندروید مارکت سرویس فروش نرم‌افزار‌های کاربردی برای گوشی‌های آندروید است. یک برنامه کاربردی ویژه آندروید مارکت به صورت از پیش بارگذاری شده بر روی گوشی‌های آندروید نصب گردیده و به کاربران امکان می‌دهد نرم‌افزار‌های مورد نیاز خود را خریداری و دانلود کنند. البته تمامی نرم‌افزار‌های موجود در آندروید مارکت فروشی نیستند بلکه بیش از نیمی از نرم‌افزارهای موجود در آندروید مارکت به صورت رایگان عرضه می‌شوند و از این نظر آندروید بیشترین درصد نرم‌افزارهای رایگان را در بین تمامی سیستم‌های عامل تلفن‌های همراه هوشمند در اختیار کاربران قرار می‌دهد.

هر برنامه‌نویس با ثبت نام، امکان فروش برنامه‌های خود در آندروید مارکت را دارد. ۷۰ درصد از مبلغ فروش برنامه‌های کاربردی به برنامه‌نویس تعلق می‌گیرد و ۳۰ درصد مابقی بین اپراتورها توزیع می‌شود. بر اساس سیاست‌های گوگل در حال حاضر تمامی برنامه نویسان عضو پروژه آندروید از سراسر جهان می‌توانند برنامه‌های کاربردی رایگان خود را از طریق آندروید مارکت در ۴۶ کشور عرضه کنند. برای اینکار کافی است برنامه نویسان فرمی مختصر را تکمیل کرده و البته ۲۵ دلار حق عضویت هم به گوگل بپردازند.

ولی تنها برنامه‌نویسان ساکن در نه کشور اتریش، فرانسه، آلمان، ایتالیا، ژاپن، هلند، اسپانیا، انگلستان و ایالات متحده آمریکا می‌توانند برنامه‌های خود را برای فروش در ۱۳ کشور استرالیا، اتریش، کانادا، فرانسه، آلمان، ایتالیا، ژاپن، هلند، نیوزلند، اسپانیا، سوییس، انگلستان و ایالات متحده آمریکا در معرض بازدید خریداران قرار دهند و سایر کشورها امکان مشاهده و خرید برنامه‌های غیر رایگان را ندارند.

نکته جالب توجه در این زمینه عدم حضور حتی یک کشور از منطقه خاورمیانه و شمال آفریقا (به غیر از اسرائیل) در لیست چهل و شش کشوری است که امکان دسترسی به آندروید مارکت را دارند! این در حالی است که گوشی‌های مجهز به آندروید از سوی اغلب شرکت‌های بزرگ از جمله موتورولا، HTC، سونی اریکسون و ال جی در این منطقه مدت‌ها است که به بازار عرضه شده‌اند.

تعداد برنامه‌های کاربردی موجود در آندروید مارکت تاکنون نزدیک به ۵۰۰۰۰ بوده است این در حالی است که برنامه‌های کاربردی موجود در iTune برای گوشی آیفون به ۱۷۵۰۰۰ برنامه بالغ می‌شود و از این منظر به نظر می‌رسد که آندروید راهی دراز برای سبقت گرفتن از آیفون در پیش دارد. ولی در هر حال باید این نکته را هم در نظر داشت که هرچند تعداد برنامه‌های کاربردی نشانگر اقبال برنامه‌نویسان به پلت فرم موردنظر است، ولی تعداد بسیار زیاد برنامه‌ها برای کاربران همیشه هم خوب نیست.

چرا که آنان را مجبور می‌سازد تا جستجویی سخت و طاقت فرسا را برای دستیابی به برنامه مورد علاقه خود تجربه کنند. گوگل کوشیده است دسترسی به برنامه‌های کاربردی آندروید را به شدت محدود ساخته و تمامی دسترسی کاربران را از طریق نرم‌افزار آندروید مارکت نصب شده بر روی گوشی کاربران کانالیزه نماید. گوگل تا بدانجا پیش رفته است که حتی دسترسی به اطلاعات و امکان جست‌وجوی برنامه‌های کاربردی آندروید از وب سایت رسمی آندروید مارکت از طریق کامپیوترهای شخصی، امکانپذیر نیست.

از طرف دیگر عدم امکان نصب نرم‌افزارهای دانلود شده بر روی کارت حافظه محدودیت دیگری است که کاربران برای دانلود برنامه‌ها از هر جای دیگری به غیر از آندروید مارکت با آن مواجه هستند. اما هنوز هم راه‌هایی برای دور زدن گوگل برای دستیابی به برنامه‌های کاربردی وجود دارد. بسیاری از برنامه‌نویسان از جمله شرکت‌های تولید برنامه‌های کاربردی نسخه قابل نصب برنامه‌های خود را علاوه بر آندروید مارکت از طریق وب سایت‌های خود نیز در اختیار کاربران قرار می‌دهند.

علاوه بر این برخی وب‌سایت‌ها اقدام به جمع‌آوری و در اختیار قراردادن برنامه‌های کاربردی پرطرفدار آندروید نموده‌اند. نمونه‌ای از این سایت‌ها Androlib و Androidzoom هستند. همچنین با نصب یک نرم‌افزار بر روی گوشی خود امکان خواهید یافت برنامه‌های دانلود شده بر روی کارت حافظه خود را بر روی گوشی نصب نمایید.

اگرچه با استفاده از راه‌هایی که گفته شد امکان نصب برخی نرم‌افزارها بر روی گوشی خود را خواهید داشت، ولی باید اذعان کرد که اغلب برنامه‌های آندروید به ویژه برنامه‌های اصلی آن که توسط خود گوگل طراحی شده‌اند، مانند نقشه‌های گوگل یا برنامه گاگلز (Goggles) تنها از طریق آندروید مارکت قابل دسترسی هستند. پس اگر می خواهید به برنامه های کاربردی اصلی آندروید دسترسی داشته باشید، باید از آندروید مارکت نصب شده بر روی گوشی خود استفاده کنید.






آندروید و گوگل تی وی
خوب اگر فکر کرده‌اید که کار شما با آندروید تمام شده است سخت در اشتباه هستید. اگر کار شما هم با آندروید تمام شده باشد، کار آندروید با شما تمام نشده است. بله این آدم آهنی سبز رنگ پس از رسوخ در تلفن‌های همراه شما قصد دارد وارد تلویزیون‌های شما هم بشود. به چشمان خود شک نکنید. درست خوانده‌اید آندروید به زودی در تلویزیون‌های شما نیز خواهد بود. در همایش Google I/O در ماه مه ۲۰۱۰ شرکت‌های گوگل، سونی، اینتل، لاجیتک، بست بای، ادوبی و دیش نتورک از عرضه تلویزیون‌های مبتنی بر آندروید خبر دادند.
تلویزیون‌هایی که به طور بی‌سیم به اینترنت متصل می‌شوند و علاوه بر اینکه امکان اتصال به شبکه‌های آنلاین پخش فیلم را دارند، از برنامه‌های کاربردی که برای نصب بر روی این تلویزیون‌ها تهیه می‌شوند نیز بهره خواهند برد.






آینده آندروید
مسلماً تب آندروید به این زودی فروکش نخواهد کرد. هجوم بی‌سابقه شرکت‌ها برای تولید محصولات مبتنی بر آندروید رفته رفته طیف گسترده‌تری از محصولات شامل تلفن همراه، تلویزیون، نت‌بوک و تبلت را در بر می‌گیرد. به نظر می‌رسد همه چیز به کام آندروید است و به سختی می‌توان تصور کرد سیطره این پدیده به سادگی قابل شکستن باشد. آدم آهنی بازیگوش سبز رنگ ما در مدت زمان کوتاهی که از تولدش می‌گذرد، نشان داده هر روز به دنبال غافلگیر کردن ما و سرک کشیدن به یکی دیگر از وسایل الکترونیکی ماست تا آن را نیز جولانگاه شیطتنت‌های دوست داشتنی خود نماید.

پس از معرفی نسل اول گوشی‌های اندروید، این سیستم‌عامل راه زیادی پیموده تا ویژگی‌ها و کارایی‌های امروزه را در اختیار شما قرار دهد. نسل اول اندروید فاقد ویژگی‌هایی بود که در گوشی‌های هوشمند دیگر عرضه می‌شد و تا حدودی ناتمام به نظر می‌رسید. از آن دوران زمان زیادی گذشته و این محصول گوگل به جایی رسیده است که به رقیبی سرسخت برای آیفون، که زمانی بین گوشی‌های هوشمند رتبه اول را داشت، تبدیل شده است…



در حال حاضر اندروید، نسخه ۲‌/‌۲ را که Froyo نامگذاری کرده است، در اختیار ما قرار می‌دهد که دستگاه‌هایی را که از آن استفاده می‌کنند، سریع‌تر و قدرتمندتر از همیشه می‌سازد. به علاوه نسخه جدیدتری نیز بتازگی معرفی شده است که آن را Gingerbread2/3/3 نامگذاری کرده‌اند. این نسخه اندروید ۲۴ فوریه به بازار عرضه شده و در واقع بزودی جای Froyo را می‌گیرد. همچنین برای تبلت‌ها نیز نسخهHoneycomb3/0/1 به بازار عرضه شده است. در اینجا روند تدریجی تکامل اندروید را به صورت خلاصه مورد بررسی قرار می‌دهیم.

پس از معرفی نسل اول گوشی‌های اندروید، این سیستم‌عامل راه زیادی پیموده تا ویژگی‌ها و کارایی‌های امروزه را در اختیار شما قرار دهد. نسل اول اندروید فاقد ویژگی‌هایی بود که در گوشی‌های هوشمند دیگر عرضه می‌شد و تا حدودی ناتمام به نظر می‌رسید. از آن دوران زمان زیادی گذشته و این محصول گوگل به جایی رسیده است که به رقیبی سرسخت برای آیفون، که زمانی بین گوشی‌های هوشمند رتبه اول را داشت، تبدیل شده است.

در حال حاضر اندروید، نسخه ۲‌/‌۲ را که Froyo نامگذاری کرده است، در اختیار ما قرار می‌دهد که دستگاه‌هایی را که از آن استفاده می‌کنند، سریع‌تر و قدرتمندتر از همیشه می‌سازد. به علاوه نسخه جدیدتری نیز بتازگی معرفی شده است که آن را Gingerbread2/3/3 نامگذاری کرده‌اند. این نسخه اندروید ۲۴ فوریه به بازار عرضه شده و در واقع بزودی جای Froyo را می‌گیرد. همچنین برای تبلت‌ها نیز نسخهHoneycomb3/0/1 به بازار عرضه شده است. در اینجا روند تدریجی تکامل اندروید را به صورت خلاصه مورد بررسی قرار می‌دهیم.






اندروید Cupcake1/5

با معرفی نسخه ۵‌/‌۱، اسم Cupcake بین طرفداران اندروید پیچید و اولین آپدیت این سیستم‌عامل عرضه شد. این آپدیت نمای بهتری به اندروید داد ولی بعضی از بزرگ‌ترین ویژگی‌های آن معرفی صفحه کلید لمسی و ویجت‌ها بود. کپی و پِیست در مرورگر اینترنت، ضبط ویدئو، و آپلود ویدئو در Youtube چیزهای مهمی‌به حساب می‌آمدند. صفحه کلید و ویجت‌ها برخلاف ویژگی‌های دیگر ـ که از آنها به طور روزمره استفاده نمی‌شد ـ بسیار مهم و ضروری به شمار می‌آمدند.

ویجت‌ها در سیستم‌عامل‌های دیگر مانند TouchWiz سامسونگ نیز وجود داشت اما هیچ‌یک از آنها مانند اندروید جذاب نبود. همان طور که پیش‌بینی می‌شد، تولید و ارائه ویجت‌های پرطرفدار کمی‌ زمانبر بود، هم از نظر هماهنگی آنها با برنامه‌ها و هم به لحاظ قابل دسترسی بودن آنها. اما بتدریج جای خود را بین مردم باز کردند و در واقع ویجت‌ها یکی از مهم ترین نکاتی است که اندروید را از بقیه سیستم‌عامل‌ها متمایز می‌کند.

ویجت‌ها اطلاعات خوبی را در اختیار کاربر قرار می‌دهند که با یک نگاه قابل دیدن است و علاوه بر آن شما دیگر نیازی به باز کردن برنامه ندارید. بعضی اوقات کاربر به همه ویژگی‌های یک برنامه نیازی ندارد و تمایل دارد اطلاعات مختصری را مورد استفاده قرار دهد. برای مثال ویجت آب و هوا به شما بالاترین و پایین‌ترین دمای روز را نشان می‌دهد و اگر به اطلاعات بیشتری نیاز دارید، انگشت خود را به ویجت آب و هوا بزنید تا برنامه آب و هوا باز شود.






اندروید Donut1/6

نسخه۶‌/‌۱ اندروید،Donut نامگذاری شد. دونات آپدیت کوچکی بود، ولی چند تغییر قابل توجه داشت. جعبه جستجو، دوربین و برنامه گالری بازسازی شد و Android Market ظاهری جدید به خود گرفت. نوار جستجو، که در نسخه‌های قبل فقط برای جستجو در وب بود، حالا به کاربران اجازه می‌داد در گوشی خود نیز جستجو کنند. برای مثال، Bookmark‌ها، دفترچه تلفن، برنامه‌ها و… از طریق نوار جستجو حتی از صفحه اول قابل دسترسی بودند.

تغییرات Android Market از همه بیشتر به چشم آمد. در نسخه‌های قبل ظاهر این برنامه مشکی و خاکستری بود در حالی که در این آپدیت، رنگ سفید و سبز نمای جدیدی به این برنامه داد. کارکردن با این برنامه کمی ‌ساده‌تر و لذتبخش‌تر شد و برنامه‌ها به سه بخش مجانی، پولی و تازه تقسیم شدند. شما می‌توانید عکس‌هایی از هر برنامه دلخواه در این مارکت ببینید که این ویژگی واقعا مورد نیاز کاربران بود.

برنامه دوربین جدید با این که ظاهر چندان زیبایی نداشت، اما با این حال از نسخه قبلی آن بهتر بود. کاربران بسادگی می‌توانستند وضعیت دوربین را از عکاسی به ضبط ویدئو تغییر دهند بدون آن که برنامه را ببندند و تنظیمات نیز در قسمت چپ صفحه زیر منوی کشویی قرار داشتند. با توجه به گزارش‌های سایت Android Developer مدت زمان باز شدن برنامه دوربین ۳۹ درصد و زمان بین ۲ عکس ۲۸ درصد کمتر شد.

تنها بد شانسی دونات این بود که دستگاه‌های زیادی از آن استفاده نکردند و خیلی از گوشی‌ها مانند HTC Hero مستقیماً از ۵‌/‌۱ به نسخه ۱‌/‌۲ جهش کردند. دونات آپگرید خوب و کوچکی بود که هنوز هم از سوی طرفداران آن استفاده می‌شود، اما برای دونات همین جا آخر خط بود.






اندروید Éclair 2/0
اندروید ۰‌/‌۲ که Eclair نامگذاری شد، گام بزرگی در تکامل این سیستم‌عامل به حساب می‌آید. این نسخه با گوشی Droid موتورولا خود را معرفی کرد و تولدی دوباره برای اندروید به وجود آورد و باعث جلب توجه همگان شد.

Eclair باعث تقویت روحیه اجتماعی اندروید شد. برنامه‌ها می‌توانستند خود را با Facebook و Twitter هماهنگ کنند (Sync) و به شما اجازه می‌دادند همه دوستان خود را از هر سایت و شبکه اجتماعی یکجا در اختیار داشته باشید. همچنین می‌توانستید عکس دوستانتان را از این سایت‌ها برای دفترچه تلفن‌تان استفاده ‌کنید و اگر آنها در این سایت‌ها عضو بودند، شما دیگر کسی را بدون عکس نمی‌دیدید. هدیه دیگر Eclair، منوی سریع کانتکت بود که با فشار دادن عکس هر کانتکت، منویی برای شما باز می‌شد و تمام راه‌های تماس با فرد مورد نظر را در اختیارتان قرار می‌داد. همچنین این نسخه از اندروید به نمای رابط کاربر، تحولی چشمگیر داد که در آن زمان برای رقابت با رقیبانی مانند iOS اپل، بیش از پیش به آن نیاز داشت. در قسمت دوربین نیز پیشرفت زیادی صورت گرفت، به گونه‌ای که به کاربر امکاناتی مانند زوم دیجیتال، انتخاب منظره، افکت‌های رنگی، فوکوس ماکرو و… را داد. اگر این امکانات در این نسخه اندروید ارائه نمی‌شد باید تا عرضه شدن Froyo صبر می‌کردیم، اما Eclair در این زمینه تحول قابل قبولی ایجاد کرد.

صفحه کلید مجازی اندروید نیز بخوبی با مالتی تاچ کنار آمد و امکانات دیگری مانند یک دیکشنری بهتر به آن اضافه شد. با این حال این صفحه کلیدی نبود که کاربر با آن احساس راحتی کند و هنوز ناتمام به نظر می‌رسید.

مرورگر اندروید هم دچار تغییراتی شد که ظاهر آن را جلوه‌ای جدید داد. علاوه بر ۲ دکمه مثبت و منفی برای زوم، کاربر با ۲ بار لمس صفحه هم می‌تواند زوم کند. بوک‌مارک‌ها هم از قابلیت نمایش تصاویر کوچک برخوردار شدند و علاوه بر این مرورگر از HTML5 نیز پشتیبانی می‌کرد.

یکی از برجسته ترین آپدیت‌های Eclair، سیستم هدایتی Google Maps بود که از طریق GPS شما را همه جا از طریق ارتباط ماهواره به طور مجانی راهنمایی می‌کرد. در روز رو نمایی از این سرویس، سهام شرکت Garmin به میزان ۱۶ درصد و سهام شرکت TomTom نیز ۲۱ درصد کاهش یافت.






اندروید ۱‌/‌۲:

با معرفی نکزوس وان، اندروید دومین مرحله تحول اکلیر را وارد بازار کرد. در این نسخه، صفحه اصلی یا Homescreen به زیبایی هرچه تمام‌تر تغییر کرده است. نسخه ۱‌/‌۲، همان اکلیر است با کمی‌زرق و برق بیشتر. تصاویر پس‌زمینه انیمیشنی در این سیستم‌عامل معرفی شدند که در هیچ سیستم‌عاملی به این زیبایی دیده نشده بودند، ولی بجز این ظاهر بی‌نظیر، متاسفانه فایده دیگری نداشتند.

اندروید ۱/۲، ۵ صفحه اصلی در اختیار شما قرار می‌دهد در حالی که در نسخه‌های قبل شما حداکثر قادر به ایجاد ۳ صفحه بودید. اندروید ۱/۲ شیوه جدیدی برای پیدا کردن مکان صفحات دارد. علاوه بر صفحه‌های بیشتر، نقطه‌های کوچکی در ۲ طرف دکمه منو قرار دارد که به شما می‌گوید در کدام صفحه قرار دارید و اگر انگشت خود را روی آن نگه دارید تصویر کوچکی از هر صفحه در پایین صفحه نمایش به شما نشان می‌دهد.

نکزوس وان همچنین اولین دستگاهی بود که قابلیت جستجوی صوتی را که در نسخه‌های قبل دیده می‌شد توسعه داد. با این قابلیت، گوشی شما صوت را به نوشته تبدیل می‌کند و هر جا که به نوشتن احتیاج داشته باشید کار می‌کند. یک دکمه میکروفن روی صفحه کلید اضافه شده است که به شما اجازه می‌دهد به جای نوشتن، حرف بزنید که پست الکترونیک، اس ام اس، جستجو و هر جای دیگر که بخواهید به کمکتان می‌آید.

افکت‌های سه‌بعدی هم از دیگر نکات قابل توجه اندروید ۱/۲است. برای دیدن برنامه‌ها کافی است دکمه منوی پایین صفحه را فشار دهید ؛ برنامه‌ها از چهار گوشه صفحه وارد می‌شوند و با جستجو بین آنها افکت سه‌بعدی آبشار خودنمایی می‌کند. گالری عکس‌ها هم از افکت‌های سه‌بعدی جذابی برخوردار شده است. با کمک Coolris، گوگل گالری جدید خود را توسعه داد که یکی از بهترین گالری‌های موجود در سیستم‌عامل‌ها به حساب می‌آید. در این میان جای خالی چنین افکت‌هایی در برنامه پخش موسیقی بیش از پیش حس می‌شد.






اندروید ۱/۲: آپدیت ۱ ( مالتی تاچ)

اکلیر هنوز اینجاست! هنوز یک ماه از تولید نکزوس وان نگذشته بود که گوگل آپدیت اکلیر را به این گوشی معرفی کرد. این آپدیت احتمالا کوچک‌ترین آپدیت گوگل به شمار می‌آمد، اما با خود یکی از مهم‌ترین ویژگی‌ها را به همراه داشت.

ویژگی مالتی تاچ با این آپدیت ارائه شد و از این به بعد گوشی‌های اندروید می‌توانستند در برنامه‌هایی مثل نقشه، گالری، مرورگر اینترنت و… از آن استفاده کنند. این ویژگی از روز اول به کاربران آیفون اجازه می‌داد از بیش از یک انگشت روی صفحه نمایش استفاده کنند، که یکی از نقاط قوت و برتری آن نسبت به اندروید به حساب می‌آمد و اکنون اندروید نیز در این زمینه صاحب سبک شده بود. مالتی تاچ در اندروید بخوبی عمل می‌کند و باعث جلب توجه بسیاری از کاربران آیفون شده است.

این آپدیت همچنین Google Goggles را به برنامه‌های نصب شده اضافه کرد و Google Maps نیز به نسخه ۴‌/‌۳ آپدیت شد که ویژگی‌های جدیدی همراه داشت.

در آخر، این آپدیت سعی داشت مشکل تقریباً قدیمی‌اتصال۳G را حل کند. بعضی از کاربران پیشرفت‌هایی را در این زمینه گزارش دادند، اما بسیاری از آنها فرق چندانی را مشاهده نکردند. گوگل و T-Mobile از آن به بعد راه حلی برای این مشکل پیدا نکرده‌اند.






اندروید ۲/۲: Froyo

اندروید ۲/۲ Froyo رقابت بین سیستم‌عامل‌های موبایل را تا حد زیادی بالا برد. با ارائه این آپدیت، اندروید تقریبا بی‌رقیب به حضور خود ادامه می‌دهد. با این که iOS اپل ظاهر بسیار جذابی به خود گرفته است و از ویژگی‌های جدیدی برخوردار است، فرویو در بیشتر زمینه‌ها از آن بهتر عمل می‌کند. حرف زدن راجع به این سیستم‌عامل در این قسمت کافی به نظر نمی‌رسد و ما فقط به بررسی اجمالی آن می‌پردازیم.

فرویو سرعتی باور نکردنی را به وسیله کامپایلر JIT و Java V8 عرضه می‌کند. با کامپایلر JIT برنامه‌ها سریع‌تر اجرا می‌شوند و سیستم‌عامل نیز به همین صورت سریع‌تر عمل می‌کند. موتور Java V8، که در مرورگر اینترنتی گوگل (کروم) استفاده شده است، استفاده از صفحات وب را در همه برنامه‌ها به سریع‌ترین حد ممکن می‌رساند.

فرویو از امکانات ارتباطی، تمام استفاده ممکن را می‌کند، برای مثال شما می‌توانید گوشی خود را به یک سرویس‌دهنده اینترنتی تبدیل کنید و دستگاه‌های دیگر می‌توانند یا اتصال وایرلس به آن از اینترنت استفاده کنند. یکی از ویژگی‌هایی که همه منتظر ظهور آن بودند، پشتیبانی از Adobe Flash است که در این نسخه اندروید در قسمت Android Market یافت می‌شود و عملکرد خوبی دارد. ادوبی و گوگل با این کار ثابت کردند که تکنولوژی رسانه‌ای قدرتمند در گوشی‌های تلفن همراه قابل راه اندازی است و بخوبی جوابگوی نیاز کاربران است.

در فرویو شما می‌توانید برنامه‌های دلخواه خود را به کارت microSD گوشی خود منتقل کنید. صفحه اصلی کمی‌تغییر ظاهری پیدا کرده است و ویجت‌های جدید به آن اضافه شده و گالری عکس نیز کمی ‌بهبود یافته است. در جای جای این سیستم‌عامل ویژگی جدید دیگری نیز وجود دارد که شما را از انتخاب آن راضی می‌کند.






اندروید ۳‌/‌۲: Gingerbread

جینجر برد، قدم بعدی گوگل به سمت تسلط بر دنیای گوشی‌های تلفن همراه، با معرفی نکزوس اس سامسونگ ظاهر شد. سامسونگ با سخت افزار قدرتمند خود به زیبایی قدرت این سیستم‌عامل را نشان داد. گوگل وعده‌های زیادی را در این نسخه اندروید محقق کرد که شامل بهبود عملکرد بازی‌ها، رابط کاربر و کیبورد جدید، عمر باتری بیشتر و عملکرد بهتر و… می‌شد. رابط کاربر ظاهری تیره به خود گرفته و با رنگ‌های روشن سبز و نارنجی تزیین شده است. این رنگ پس‌زمینه تیره باعث می‌شود عمر باتری افزایش یابد، چراکه صفحه‌های نمایشی که پایه آن OLED است برای پردازش پیکسل‌های سیاه برق مصرف نمی‌کنند. جینجر برد برای دستگاه‌های با کیفیتی مثل نکزوس اس طراحی شده است و در صفحه‌های نمایش با کنتراست بالا بیشترین بازده را دارد. به صفحه کلید جدید دکمه مخصوص کاراکترها اضافه شده و فاصله بین کلید‌ها کمتر شده است که تایپ کردن با آن را آسان‌تر و سریع‌تر می‌کند.

در نسخه‌های قبلی بعضی از برنامه‌هایی که در پس‌زمینه سیستم‌عامل باز بودند عمر باتری را کم می‌کردند، اما جینجر برد برنامه‌هایی را که در پس‌زمینه اجرا می‌شوند و نیازی به آنها نیست می‌بندد. بنابراین از پردازشگر کمتر استفاده می‌شود و وقتی که از گوشی تلفن همراه استفاده نمی‌کنید، باتری بسیار کمی‌مصرف می‌کند. با حضور موفق تبلت‌ها، گوگل سیستم‌عامل جدید خود را برای آنها نیز طراحی کرد که با اسم Android Honeycomb3/0عرضه شد. این آپدیت آن گونه که انتظار می‌رفت تغییرات زیادی ارائه نکرد. پیش بینی می‌شود گوگل در آپدیت بعدی خود تغییرات بیشتری را مخصوصا در زمینه پردازش گرافیکی لحاظ کند. در حال حاضر بیشتر کاربران اندروید ـ که حدودا ۶۰ درصد کاربران هستند ـ از سیستم‌عامل ۲/۲ فرویو استفاده می‌کنند و بقیه به ترتیب از ۱/ ۲اکلیر با ۲۹ درصد، ۶/۱ دونات با ۸/۴ درصد، ۵/۱ کاپکیک با ۳ در صد و جینجر برد با ۲ درصد، استفاده می‌کنند.
1:04 pm
معناشناسی اجرا

وقتی که داده مشخص شد، ماشین باید هدایت شود تا عملیات‌ها را روی داده انجام دهد. معناشناسی اجرا ی یک زبان تعیین می‌کند که چگونه و چه زمانی ساختارهای گوناگون یک زبان باید رفتار برنامه را ایجاد کنند.

برای مثال، معناشناسی ممکن است استراتژی را که بویسله آن عبارات ارزیابی می‌شوند را تعریف کند و یا حالتی را که ساختارهای کنترلی تحت شرایطی دستورها را اجرا می‌کنند.






کتابخانه هسته
اغلب زبان‌های برنامه نویسی یک کتابخانه هسته مرتبط دارند(گاهی اوقات "کتابخانه استاندارد" نامیده می‌شوند، مخصوصا وقتی که به عنوان قسمتی از یک زبان استاندارد ارائه شده باشد)، که به طور قراردادی توسط تمام پیاده سازی‌های زبان در دسترس قرار گرفته باشند. کتابخانه هسته معمولاً تعریف الگوریتم‌ها، داده ساختارها و مکانیزم‌های ورودی و خروجی پرکاربرد را در خود دارد. کاربران یک زبان، غالباً با کتابخانه هسته به عنوان قسمتی از آن رفتار می‌کنند، اگرچه طراحان ممکن است با آن به صورت یک مفهوم مجزا رفتار کرده باشند. بسیاری از خصوصیات زبان هسته‌ای را مشخص می‌کنند که باید در تمام پیاده سازی‌ها موجود باشند، و در زبان‌های استاندارد شده این کتابخانه هسته ممکن است نیاز باشد. بنابراین خط بین زبان و کتابخانه هسته آن از زبانی به زبان دیگر متفاوت است. درواقع، برخی زبان‌ها به گونه‌ای تعریف شده‌اند که برخی از ساختارهای دستوری بدون اشاره به کتابخانه هسته قابل استفاده نیستند. برای مثالف در جاوا، یک رشته به عنوان نمونه‌ای از کلاس “java.lang.String” تعریف شده است؛ مشابها، در سمال تاک(smalltalk) یک تابع بی نام(یک "بلاک") نمونه‌ای از کلاس BlockContext کتابخانه می‌سازد. بطور معکوس، Scheme دارای چندین زیرمجموعه مرتبط برای ایجاد سایر ماکروهای زبان می‌باشد، و در نتیجه طراحان زبان حتی این زحمت را نیز تحمل نمی‌کنند که بگویند کدام قسمت زبان به عنوان ساختارهای زبان باید پیاده سازی شوند، و کدام یک به عنوان بخشی ازکتابخانه.


عمل
طراحان زبان و کاربران باید مصنوعاتی ایجاد کنند تا برنامه نویسی را در عمل ممکن سازند و کنترل کنند. مهمترین این مصنوعات خصوصیات و پیاده سازی‌های زبان هستند.



خصوصیات

یک زبان برنامه نویسی باید تعریفی فراهم کند که کاربران و پیاده کننده‌های زبان می‌توانند از آن استفاده کنند تا مشخص کنند که رفتار یک برنامه درست است. با داشتن کد منبع: خصوصیات یک زبان برنامه نویسی چندین قالب می‌تواند بگیرد، مانند مثال‌های زیر:

تعریف صریح دستور، معناشناسی ایستا، ومعناشناسی اجرای زبان. درحالیکه دستور معمولاً با یک معناشناسی قراردادی مشخص می‌شود، تعاریف معناشناسی ممکن است در زبان طبیعی نوشته شده باشند (مثل زبان C)، یا معناشناسی قراردادی(مثل StandardML ,Scheme)
توضیح رفتار یک مترجم برای زبان(مثل C,fortran). دستور و معناشناسی یک زبان باید از این توضیح استنتاج شوند، که ممکن است به زبان طبیعی یا قراردادی نوشته شود.
پیاده سازی منبع یا مدل. گاهی اوقات در زبان‌های مشخص شده(مثل: prolog,ANSI REXX).دستور و معناشناسی صریحاً در رفتار پیاده سازی مدل موجودند.


پیاده سازی

پیاده سازی یک زبان برنامه نویسی امکان اجرای آن برنامه را روی پیکربندی مشخصی از سخت‌افزار و نرم‌افزار را فراهم می‌کند. بطور وسیع، دو راه رسیدن به پیاده سازی زبان برنامه نویسی وجود دارد. کامپایل کردن و تفسیر کردن. بطور کلی با هر بک از ابن دو روش می‌توان یک زبان را پیاده سازی کرد.

خروجی یک کامپایلر ممکن است با سخت‌افزار و یا برنامه‌ای به نام مفسر اجرا شود. در برخی پیاده سازی‌ها که از مفسر استفاده می‌شود، مرز مشخصی بین کامپایل و تفسیر وجود ندارد. برای مثال، برخی پیاده سازی‌های زبان برنامه نویسی بیسیک کامپایل می‌کنند و سپس کد را خط به خط اجرا می‌کنند.

برنامه‌هایی که مستقیماً روی سخت‌افزار اجرا می‌شوند چندین برابر سریعتر از برنامه‌هایی که با کمک نرم‌افزار اجرا می‌شوند، انجام می‌شوند.

یک تکنیک برای بهبود عملکرد برنامه‌های تفسیر شده کامپایل در لحظه آن است. در این روش ماشین مجازی، دقیقاً قبل از اجرا، بلوک‌های کدهای بایتی که قرار است استفاده شوند را برای اجرای مستقیم روی سخت‌افزار ترجمه می‌کند.



تاریخچه
پیشرفت‌های اولیه

اولین زبان برنامه نویسی به قبل از رایانه‌های مدرن باز می‌گردد. قرن ۱۹ دستگاه‌های نساجی و متون نوازنده پیانو قابل برنامه نویسی داشت که امروزه به عنوان مثال‌هایی از زبان‌های برنامه نویسی با حوزه مشخص شناخته می‌شوند. با شروع قرن بیستم، پانچ کارت‌ها داده را کد گذاری کردند و پردازش مکانیکی را هدایت کردند. در دهه ۱۹۳۰ و ۱۹۴۰، صورت گرایی حساب لاندای آلونزو چرچ و ماشین تورینگ آلن تورینگ مفاهیم ریاضی بیان الگوریتم‌ها را فراهم کردند؛ حساب لاندا همچنان در طراحی زبان موثر است.

در دهه ۴۰، اولین رایانه‌های دیجیتال که توسط برق تغذیه می‌شدند ایجاد شدند. اولین زبان برنامه نویسی سطح بالا طراحی شده برای کامپیوتر پلانکالکول بود، که بین سال‌های ۱۹۴۵ و ۱۹۴۳ توسط کنراد زوس برای ز۳ آلمان طراحی شد.

کامپیوترهای اوایل ۱۹۵۰، بطور خاص ÜNIVAC ۱ و IBM ۷۰۱ از برنامه‌های زبان ماشین استفاده می‌کردند. برنامه نویسی زبان ماشین نسل اول توسط نسل دومی که زبان اسمبلی نامیده می‌شوند جایگزین شد. در سال‌های بعد دهه ۵۰، زبان برنامه نویسی اسمبلی، که برای استفاده از دستورات ماکرو تکامل یافته بود، توسط سه زبان برنامه نویسی سطح بالا دیگر: FORTRAN,LISP , COBOL مورد استفاده قرار گرفت. نسخه‌های به روز شده این برنامه‌ها همچنان مورد استفاده قرار می‌گیرند، و هر کدام قویا توسعه زبان‌های بعد را تحت تاثیر قرار دادند. در پایان دهه ۵۰ زبان algol ۶۰ معرفی شد، و بسیاری از زبان‌های برنامه نویسی بعد، با ملاحظه بسیار، از نسل algol هستند. قالب و استفاده از زبان‌های برنامه نویسی به شدت متاثر از محدودیت‌های رابط بودند.



پالایش

دوره دهه ۶۰ تا اواخر دهه ۷۰ گسترش مثال‌های عمده زبان پرکاربرد امروز را به همراه داشت. با این حال بسیاری از جنبه‌های آن بهینه سازی ایده‌های اولیه نسل سوم زبان برنامه نویسی بود:

APL برنامه نویسی آرایه‌ای را معرفی کرد و برنامه نویسی کاربردی را تحت تاثیر قرار داد.
PL/i(NPL) دراوایل دهه ۶۰ طراحی شده بود تا ایده‌های خوب فورترن و کوبول را بهم پیوند دهد.
در دهه ۶۰، Simula اولین زبانی بود که برنامه نویسی شئ گرا را پشتیبانی می‌کرد، در اواسط دهه۷۰. Smalltalk به دنبال آن به

عنوان اولین زبان کاملاً شئ گرا معرفی شد.

C بین سال‌های ۱۹۶۹ تا ۱۹۷۳ به عنوان زبان برنامه نویسی سیستمی طراحی شد و همچنان محبوب است.
Prolog، طراحی شده در ۱۹۷۲، اولین زبان برنامه نویسی منطقی بود.
در ۱۹۷۸ ML سیستم نوع چند ریخت روی لیسپ ایجاد کرد، و در زبان‌های برنامه نویسی کاربردی ایستا نوع گذاری شده پیشگام شد.

هر یک از این زبان‌ها یک خانواده بزرگ از وارثین از خود به جای گذاشت، و مدرنترین زبان‌ها از تبار حداقل یکی از زبان‌های فوق به شمار می‌آیند.

دهه‌های ۶۰ و ۷۰ مناقشات بسیاری روی برنامه نویسی ساخت یافته به خود دیدند، و اینکه آیا زبان‌های برنامه نویسی باید طوری طراحی شوند که آنها را پشتیبانی کنند.

"ادسگر دیکسترا" در نامه‌ای معروف در ۱۹۶۸ که در ارتباطات ACM منتشر شد، استدلال کرد که دستورgoto باید از تمام زبان‌های سطح بالا حذف شود.

در دهه‌های ۶۰ و ۷۰ توسعهٔ تکنیک‌هایی صورت گرفت که اثر یک برنامه را کاهش می‌داد و در عین حال بهره وری برنامه نویس و کاربر را بهبود بخشید. دسته کارت برای ۴GL اولیه بسیار کوچکتر از برنامهٔ هم سطح بود که با ۳GL deck نوشته شده بود.




یکپارچگی و رشد

دهه ۸۰ سال‌های یکپارچگی نسبی بود. C++ برنامه نویسی شئ گرا و برنامه نویسی سیستمی را ترکیب کرده بود. ایالات متحده ایدا(زبان برنامه نویسی سیستمی که بیشتر برای استفاده توسط پیمان کاران دفاعی بود) را استاندارد سازی کرد. در ژاپن و جاهای دیگر، هزینه‌های گزافی صرف تحقیق در مورد زبان نسل پنجم می‌شد که دارای ساختارهای برنامه نویسی منطقی بود. انجمن زبان کاربردی به سمت استانداردسازی ML و Lisp حرکت کرد. به جای ایجاد مثال‌های جدید، تمام این تلاش‌ها ایده‌هایی که در دهه‌های قبل حلق شده بودند را بهتر کرد.

یک گرایش مهم در طراحی زبان در دهه ۸۰ تمرکز بیشتر روی برنامه نویسی برای سیستم‌های بزرگ از طریق مدول‌ها، و یا واحدهای کدهای سازمانی بزرگ مقیاس بود. مدول-۲، ایدا. و ML همگی سیستم‌های مدولی برجسته‌ای را در دهه ۸۰ توسعه دادند. با وجود اینکه زبان‌های دیگر، مثل PL/i، پشتیبانی بسیار خوبی برای برنامه نویسی مدولی داشتند. سیستم‌های مدولی غالباً با ساختارهای برنامه نویسی عام همراه شده‌اند.

رشد سریع اینترنت در میانه دهه ۹۰ فرصت‌های ایجاد زبان‌های جدید را فراهم کرد. Perl، در اصل یک ابزار نوشتن یونیکس بود که اولین بار در سال ۱۹۸۷ منتشر شد، در وب‌گاه‌های دینامیک متداول شد. جاوا برای برنامه نویسی جنب سروری مورد استفاده قرار گرفت. این توسعه‌ها اساساً نو نبودند، بلکه بیشتر بهینه سازی شده زبان و مثال‌های موجود بودند، و بیشتر بر اساس خانواده زبان برنامه نویسی C بودند. پیشرفت زبان برنامه نویسی همچنان ادامه پیدا می‌کند، هم در تحقیقات و هم در صنعت. جهت‌های فعلی شامل امنیت و وارسی قابلیت اعتماد است، گونه‌های جدید مدولی(mixin، نماینده‌ها، جنبه‌ها) و تجمع پایگاه داده.

۴GLها نمونه‌ای از زبان‌هایی هستند که محدوده استفاده آنها مشخص است، مثل SQL. که به جای اینکه داده‌های اسکالر را برگردانند، مجموعه‌هایی را تغییر داده و بر می‌گردانند که برای اکثر زبان‌ها متعارفند. Perl برای مثال، با "مدرک اینجا" خود می‌تواند چندین برنامه ۴GL را نگه دارد، مانند چند برنامه جاوا سکریبت، در قسمتی از کد پرل خود و برای پشتیبانی از چندین زبان برنامه نویسی با تناسب متغیر در "مدرک اینجا" استفاده کند.




سنجش استفاده از زبان

مشکل است که مشخص کنیم کدام زبان برنامه نویسی بیشتر مورد استفاده‌است، و اینکه کاربرد چه معنی می‌دهد با توجه به زمینه تغییر می‌کند. یک زبان ممکن است زمان بیشتری از برنامه نویس بگیرد، زبان دیگر ممکن است خطوط بیشتری داشته باشد، و دیگری ممکن است زمان بیشتری از پردازنده را مصرف کند. برخی زبان‌ها برای کاربردهای خاص بسیار محبوبند. برای مثال: کوبول همچنان در مراکزداده متحد، غالباً روی کامپیوترهای بزرگ توانا است؛ fortran در مهندسی برنامه‌های کاربردی، C در برنامه‌های تعبیه شده و سیستم‌های عامل؛ و بقیه برنامه‌ها معمولاً برای نوشتن انواع دیگر برنامه‌ها کاربرد دارند. روش‌های مختلفی برای سنجش محبوبیت زبان‌ها، هر یک متناسب یا یک ویژگی محوری متفاوت پیشنهاد شده‌است:

شمارش تعداد تبلیغات شغلی که از آن زبان نام می‌برند.
تعداد کتاب‌های آموزشی و شرح دهندهٔ آن زبان که فروش رفته‌است.
تخمین تعداد خطوطی که در آن زبان نوشته شده اند- که ممکن است زبان‌هایی را که در جستجوها کمتر پیدا می‌شوند دست کم گرفته شوند.
شمارش ارجاع‌های زبان(برای مثال، به اسم زبان) در موتورهای جستجوهای اینترنت.

طبقه بندی‌ها هیچ برنامه غالبی برای دسته بندی زبان‌های برنامه نویسی وجود ندارد. یک زبان مشخص معمولاً یک زبان اجدادی ندارد. زبان‌ها معمولاً با ترکیب المان‌های چند زبان پیشینه بوجود می‌آیند که هربار ایده‌های جدید درگردشند. ایده‌هایی که در یک زبان ایجاد می‌شوند در یک خانواده از زبان‌های مرتبط پخش می‌شوند، و سپس از بین خلاهای بین خانواده‌ها منتقل شده و در خانواده‌های دیگر ظاهر می‌شوند.

این حقیقت که این دسته بندی ممکن است در راستای محورهای مختلف انجام شوند، این وظیفه را پیچیده تر می‌کند؛ برای مثال، جاوا هم یک زبان شیءگرا(چون به برنامه نویسی شیءگرا تشویق می‌کند) و زبان همزمان(چون ساختارهای داخلی برای اجرای چندین جریان موازی دارد) است. پایتون یک زبان اسکریپتی شیءگراست.

در نگاه کلی، زبان‌های برنامه نویسی به مثال‌های برنامه نویسی و یک دسته بندی بر اساس محدوده استفاده تقسیم می‌شوند. مثال‌ها شامل برنامه نویسی رویه‌ای، برنامه نویسی شیءگرا، برنامه نویسی کاربردی، وبرنامه نویسی منطقی؛ برخی زبان‌ها ترکیب چند مثالند. یک زبان اسمبلی مثالی از یک مدل مستقیم متضمن معماری ماشین نیست. با توجه به هدف، زبان‌های برنامه نویسی ممکن است همه منظوره باشند، زبان‌های برنامه نویسی سیستمی، زبان‌های اسکریپتی، زبان‌های محدوده مشخص، زبان‌های همزمان/ گسترده(و یا ترکیب اینها). برخی زبان‌های همه منظوره تا حد زیادی برای اهداف آموزشی طراحی شده‌اند.

یک زبان برنامه نویسی ممکن است با فاکتورهای غیر مرتبط به مثال‌های برنامه نویسی دسته بندی شود. برای مثال، غالب زبان‌های برنامه نویسی کلمات کلیدی زبان انگلیسی را استفاده می‌کنند، در حالیکه تعداد کمی این کار را نمی‌کنند. سایر زبان‌ها ممکن است براساس داخلی بودن یا نبودن دسته بندی شوند.
ساعت : 1:04 pm | نویسنده : admin | مای اف | مطلب قبلی
مای اف | next page | next page