نگاهی به برنامه‌های کاربردی کوچک (Apps)

هیچ نرم‌افزاری کوچک نیست

قدیم‌ترها که برنامه‌نویسی تازه بحث روز شده و رشته نرم‌افزار دارای زیرشاخه‌های زیادی از جمله برنامه‌نویسی شیء‌گرا شده بود، استادان برنامه‌نویسی دانشگاه، مشاغل این رشته را دارای سطوح مختلفی از درآمدزایی می‌دانستند و نسبت درآمد برنامه‌نویس را متناسب با حجم پروژه ترسیم می‌کردند. به‌عبارت دیگر، اگر شما در یک پروژه برنامه‌نویسی مربوط به هواشناسی (برنامه‌های مربوط به هواشناسی از بزرگ‌ترین و پیچیده‌ترین نرم‌افزارهای موجود است) کار کنید حتما خیلی بیشتر از آن درآمد خواهید داشت تا این‌که بخواهید یک برنامه ساده را مثلا برای تبدیل فرمت موسیقی یا یک سرگرمی بنویسید.
کد خبر: ۳۴۷۱۱۰

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

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

محصولات جدید اپل به‌خصوص آیفون و آیپادتاچ زیرساخت منحصربه‌فردی بودند برای توسعه یک واژه به‌نام APP.

برنامه کاربردی چیست؟

APP‌که‌‌مخفف‌application‌program است، برنامه کاربردی ترجمه شده و البته معادل‌سازی خوبی هم هست.

نکته: واژه application ریشه در کلمه apply دارد که به‌معنای کاربرد، اعمال و درخواست اعمال است Wikipedia.

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

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

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

بسیاری از این نرم‌افزارها کاربرد روزانه دارند و کاربر هر روز با آنها سروکار دارد. دسته دیگر برای مواقع خاصی کاربرد دارند؛ مانند زمان روی دادن حوادث یا بیماری و دسته آخر نیز برای تفریح و سرگرمی هستند. تمام برنامه‌های کاربردی برای انجام کارهای روزانه و ادامه‌دار طراحی نشده‌اند و برنامه‌های کمکی یا برنامه‌های کاربردی سودمند که با واژه utilities شناخته می‌شوند نوع دیگری از نرم‌افزار هستند.

ساختار

یک برنامه کاربردی برای هر کاری می‌تواند استفاده شود اما می‌توان آنها را به دو دسته کلی تقسیم کرد. دسته اول برنامه‌های محلی هستند که محدود به کاربرند و لزوما با دنیای خارج ارتباطی ندارند؛ مانند برنامه ماشین‌حساب. دسته دوم ابزارهای اشتراکی (share were) هستند که با اتصال به یک منبع اطلاعاتی مثل یک سرور خاص یا اینترنت، اطلاعاتی را ارسال و اطلاعاتی را دریافت می‌کنند. دسته اول مانند برنامه‌های معمولی در رایانه عمل می‌کنند و منابع اطلاعاتی و محاسباتی را با خود دارند اما دسته دوم معمولا دارای دو نسخه هستند: یک نسخه کاربرclient و یک نسخه منبعserver که نمونه پرکاربرد آن برنامه‌های پیام‌رسانی مانند Yahoo Messenger یا Gtalk است.

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

هر Application program interface دارای قوانین و استانداردهای زیادی است که می‌توان برای هرکدام کتاب نوشت، اما خلاصه امر آن‌که ظاهر یک برنامه و آنچه می‌بینید را API می‌گویند و البته به آن واسط گرافیکی کاربر یا همان GUI می‌گویند.

هر App چه از جنس برنامه‌های اشتراکی باشد یا صرفا از یک منبع اطلاعاتی غیرمحلی اطلاعاتش را دریافت کند به‌نوع خاصی از اطلاعات نیاز دارد که سیر این دادوستد اطلاعاتی را یک خدمت یا همان سرویس می‌گویند. بسیاری از این نوع برنامه‌ها برنامه‌های خدماتی هستند که منابع اطلاعاتی یا خدماتی برای گسترش و توسعه فعالیت خود را تولید می‌کنند. نمونه بارز این نوع Appها برنامه‌های اعلام وضعیت آب و هوا یا خبررسان‌هایی هستند که نمونه‌هایی از آن‌را روی sidebar یا مجموعه‌هایی مثل google desktop می‌توانید ببینید. این ریزابزارها با استفاده از زیرساخت یک سیستم‌عامل که می‌تواند با هر ساختاری باشد (موبایل، رایانه رومیزی یا لپ‌تاپ با هر نوع سیستم‌عاملی) تهیه می‌شود و در یک محیط مناسب می‌تواند داده دریافت و ارسال کند.

آیاAppها از تمام برنامه‌های دیگر مستقل هستند؟

پاسخ در یک کلام منفی است، اما درباره استقلال برنامه‌های کاربردی کوچک یا همان App باید گفت این برنامه‌ها می‌توانند برای کارآمد شدن یک برنامه جامع یا برنامه کاربردی دیگر طراحی شوند و حتی می‌توانند قسمتی از کار آن برنامه را به عمد مختل کنند. به‌عنوان مثال برنامه جامعی مانند فایرفاکس یا بسیاری از انواع مرورگرهای اینترنتی دارای کارکردهای زیادی هستند اما با برنامه‌های کاربردی کوچک غیرمستقلی که با نام Add-ons یا افزونه شناخته می‌شوند، می‌توان کارکردهای بسیار زیادی به این نرم‌افزار افزود و محیط را بنابه خواسته‌های خود تغییر داد.

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

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

سعید نوری آزاد

http://www.appstore.com

newsQrCode
ارسال نظرات در انتظار بررسی: ۰ انتشار یافته: ۰

نیازمندی ها