سیب زبان باز می‌کند

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

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



چند وقتی است که متخصصان و مدیران اپل از شکل گیری این زبان حمایت می کنند و در همه جا اعلام کرده اند که با توسعه این زبان برنامه نویسی انقلابی در انتظار برنامه نویسان حرفه ای خواهد بود. در کنفرانس امسال WWDC به جز امکانات جذاب و منحصر به فردی که برای آی اواس 8 ارائه شد، زبان برنامه نویسی تازه اپل هم توانست نگاه همه را به سوی خود جذب کند. در یک معرفی ساده و ابتدایی گفته شده است که این زبان برنامه نویسی با این هدف طراحی شده است که نوشتن و ساخت اپلیکیشن ها را آسان تر کند و به برنامه نویسان قدرت تولید اپلیکیشن هایی با کاربرد بیشتر را ضمن راحتی و سرعتی بالاتر بدهد. در سال های گذشته، شرکت اپل سعی کرد که با استفاده از مستندات و ابزارهایی که در اختیار توسعه دهندگان نرم افزارها قرار می داد، به نوعی برنامه نویسی را برای آن ها آسان تر کند اما به هر حال نمی توان انکار کرد که زبان Objective C و محیط XCode، پیچیدگی های زیادی داشتند که برای علاقه مندان این زمینه محدودیت هایی را ایجاد می کرد. اما با دموی اولیه از زبان برنامه نویسی سویفت، نگاه ها تا حدود زیادی نسبت به شرایطی که در گذشته وجود داشت، تغییر پیدا کرد و در حال حاضر بیشتر متخصصان بر این باور هستند که زبان برنامه نویسی Swift جهان برنامه نویسی رایانه را بازسازی خواهد کرد. این ادعا در شرایطی صورت گرفته است که مدیران و متخصصان اپل هم سرمایه گذاری ویژه ای روی به محبوبیت رسیدن این زبان باز کرده اند.

همه چیز از آن جا شروع شد
زمانی که یک اختراع جدید چه در زمینه نرم افزار و چه در زمینه سخت افزار شکل می گیرد، یکی از جذاب ترین بخش هایی که در رابطه با آن وجود دارد همین است که بدانیم، چه شده است که سازنده تصمیم به ایجاد یک محصول جدید و نو گرفته است. به هر حال در مورد این زبان برنامه نویسی جدید باید گفت که کریس لاتنر، بیش از یک سال از عمر خود را به صورتی کاملا پنهانی به این ماجرا اختصاص داد که یک زبان برنامه نویسی جدید را در زمینه طراحی، ساخت و اجرای نرم افزارهای رایانه ای ابداع کند. او از تابستان سال 2010 به صورت تمام وقت کار خود را روی این پروژه به صورت شبانه روزی آغاز کرد و درست در همان زمان ها بود که راز او نزد هیئت رئیسه اپل برملا شد. طرح و ایده او به قدری مدیران شرکت اپل را تحت تاثیر خود قرار داد که تعدادی از متخصصان اپل برای همکاری در این طرح اعلام آمادگی کردند و پس از مدت زمانی در حدود 18 ماه، این طرح به اولویت اصلی شرکت اپل تبدیل شد و کادری وسیع و باتجربه در اختیار لاتنر قرار گرفت تا بتواند اختراع خود را زودتر به سرانجام برساند. این زبان جدید که در میان متخصصان اپل سروصدای زیادی به پا کرده بود سویفت نام گذاشته شد و قرار شد که شرکت اپل نسخه آزمایشی آن را با برچسب سریع تر و موثرتر برای استفاده در برنامه های کاربردی آی پد و آیفون و همچنین برای سری سیستم عامل های Mac با سرعت بسیاری زیادی به بیرون عرضه کند. همین طور هم شد و در همان تاریخ 2 ژوئن 2010 این زبان عرضه شد و چهار سال بعد به حقیقت پیوستن رویای لاتنر باعث شگفت زدگی همگان شد. آقای ویکرام ادو که استاد راهنمای لاتنر در دانشگاه ایلینویس بود در به روز کردن نرم افزار پایه ای سویفت، با او همکاری بسیار مفیدی داشت و با این حال او هم مانند دیگران از این همه تلاش شبانه روزی و بی وقفه لاتنر برای به وجود آوردن این زبان، بسیار شگفت زده شد.



فرق سویفت با دیگر زبان ها چه بود؟
به صورت طبیعی شرایط به این صورت است که در زمانی که یک زبان برنامه نویسی جدید به وجود می‌آید، برنامه نویسان در مقابل آن جبهه گرفته و تا حد زیادی مقاومت می کنند، همین ماجرا باعث می شود که برای اضافه شدن به تعداد مخاطبان آن زبان سال ها زمان لازم باشد. این روند برای زبان سویفت که شرکت معتبری نظیر اپل پشتیبان محکمش بود، بسیار سریع تر از حد عادی طی شد. البته باید گفت با این که گوگل هم شرایط تقریبا مشابهی داشت، نتوانست از این فرصتی که در اختیارش بود به خوبی استفاده کند. شرکت گوگل در سال 2009 زبان جدیدی با نام Go را معرفی کرد و با وجود این که طراحی این زبان توسط افراد معروفی نظیر کن تامسون و راب پایک صورت گرفته بود ولی نتوانست محبوبیت زیادی به دست آورد و گوگل هم به این دو نفر اعتماد نکرده و دائما در حال پیدا کردن کد نویسان بزرگ جهان بود. اما شرایط سویفت کاملا متفاوت بود و مدیران اپل زمانی که تصمیم گرفتند آن را به صورت رسمی به بازار عرضه کنند در طی مدت زمان بسیار کوتاهی توانستند مهر تایید گروه عمده ای از برنامه نویسان را گرفته و این زبان را با سرعت بی سابقه ای حتی نسبت به زبان های جاوا و سی شارپ در سال های اخیر گسترش دهند. زبان برنامه نویسی سویفت برای میانگین دانش برنامه نویسان طراحی شده است و هدف اصلی اش این است که هر کسی که در سطح نسبی دانش قرار دارد بتواند به آسانی ساده ترین اپلیکیشن‌های تلفن های هوشمند را طراحی کند. تا قبل از این حجم بسیاری از برنامه نویسانی که برای آیفون و آی پد اپلیکیشن تولید می کردند، از زبان آبجکتیو سی برای این کار استفاده می کردند اما سویفت از جهات زیادی بهبود قابل توجهی نسبت به این زبان داشته است و به این ترتیب تمامی برنامه نویسان علاقه مند به برنامه های کاربردی مبتنی بر سیستم عامل اپل قادر خواهند شد که کاربر محیط برنامه نویسی باشند که کار کردن با آن نسبت به زبان ها و محیط های قبلی به سادگی آب خوردن خواهد بود. یکی از کارشناسان صاحب نظر در این زمینه آقای پاول جانسون است او به مدت 15 سال با زبان برنامه نویسی تیوب ایندکس که یک زبان کاملا مستقل برای کد گذاری است سرو کله زده است و تا به حال به پیشبرد زبان های برنامه نویسی موفق دنیا کمک زیادی کرده است. او در رابطه با زبان Google Go معتقد است که این زبان دقیقا بر عکس زبان سویفت شرایطی دارد که هیچ اشتیاق یا انگیزه ای را برای استفاده در من یا دیگر کاربران به نسبت حرفه ای برنمی انگیزد. همین عامل به یک فاکتور بسیار مهم برای به موفقیت رسیدن سویفت تبدیل شده است و مردم بیشتر اشتیاق پیدا کرده اند که از این زبان جدید برنامه نویسی که کار کردن با آن هم بسیار ساده تر است استفاده کنند و به طور حتم از این پس هم تمامی برنامه نویسان در مواجهه با استفاده از زبان آبجکتیو سی و زبان سویفت، سویفت را انتخاب خواهند کرد. آقای آندره الکساندرسکو که دبیر زبان های برنامه نویسی فیس بوک است هم اعتقاد دارد که در حال حاضر سویفت یک جایگاه بی همتا دارد و در این رابطه گفته است که در چنین شرایطی که اپل در این زمینه در حال پشت سر گذاشتن موانع بسیار کوچکش است ما همه کاری که مجبوریم انجام دهیم این است که هیچ کاری نکنیم و کنار بایستیم تا ببینیم آخر این ماجرا به کجا ختم می شود.



همه چیز برای شما آماده است

شخصی مانند کریس لاتنر کسی بود که از مدت ها قبل بر تمامی ابزارهای توسعه دهنده اپل نظارتی مستقیم داشت و این ابزارهای توسعه دهنده حاصل همکاری مهندسان شرکت و برنامه نویسان خارج از محیط شرکت اپل بودند. او پس از این که از دانشگاه ایلینوس فارغ التحصیل شد، توانست که نوعی از ابزارهای توسعه دهنده زبان های برنامه نویسی به نام LLVM را خلق کند و این ابزار در حال حاضر هم پایه Xcode و ابزارهای ابتدایی شرکت اپل در راستای ساخت بسیاری از نرم افزارهایش هستند. در مورد ارتباط افراد خارجی با این ابزار هم باید گفت که تا به حال بیش از 14 میلیون بار از طریق کاربران اینترنتی دانلود شده است. بعد از این که کریس لاتنر در سال 2005 به مجموعه اپل اضافه شد و به عنوان کارمند رسمی این شرکت شروع به کار کرد، از همان ابزار قدیمی خودش LLVM برای بهبود بخش هایی که از زبان آبجکتیو سی برای تولید اپلیکیشن های سخت افزاری به کار گرفته می شد، استفاده کرد. بعد از این که 5 سال بعد یعنی سال 2010 لاتنر تصمیم گرفت که روی ارائه زبان سویفت کار کند، از همان پایه کار قدیمی خود برای شروع کار استفاده کرد و تمام تجربیاتش را به یکباره در اختیار گرفت تا بهترین خروجی ممکن را ارائه کند. در طول مدت کارش هم توسط شرکت اپل ممنوع شده بود که با هر نوع رسانه ای اعم از مجازی و حقیقی در این رابطه صحبت کرده یا مصاحبه ای را انجام دهد به همین خاطر مجبور بود که به صورت مخفیانه کار خود را پیش ببرد. در طول این مدت فقط هر از چند گاهی توضیحات مختصری را روی صفحه وب سایت خود قرار می داد که کسی زیاد آن را جدی نمی گرفت و سر از آن هم در نمی آورد. به این ترتیب زبان برنامه نویسی سویفت در کمترین حاشیه ممکن کار خود را شروع کرد و کاملا بدون سرو صدا پایه های اصلی اش شکل گرفت. البته این ماجرا برای شرکت پر حاشیه ای مانند اپل بسیار خوب بود زیرا اگر تولید این زبان در بوق و کرنا اعلام می شد مسلما از همان ابتدا همه روال انجام کار و پیشرفت آن را زیر ذره بین قرار می دادند و اخباری که از گوشه و کنار منتشر می شد، تنها باعث کند شدن پیشرفت کار می‌شد. اکنون سویفت به محصول قدرتمندی تبدیل شده است که متخصصان در رابطه با آن می گویند Swift فقط یک زبان نیست و در واقع تمام آن چیزی است که تولید کنندگان برای ساخت یک نرم افزار به آن احتیاج دارند. این زبان برنامه نویسی نه تنها شامل محیط توسعه مستقل یا همان IDE است، بلکه به عنوان یک اینترفیس برای نوشتن کد نرم افزار هم استفاده می شود و در کنار آن ابزارهای بسیار متنوع دیگری را هم در اختیار کاربرانش قرار می دهد. سویفت در شرایطی به داد برنامه نویسان رسید که همه آن ها از کدهای غیر استاندارد دلسرد شده بودند. درست است که سویفت از زبان های موجود در بازار مانند سی شارپ یا پایتون جذاب‌تر نبوده است اما از نظر کارایی از یک زبان قدیمی مانند سی به شدت کاراتر بود و همین ماجرا باعث شد که به یک زبان آشنا برای کد نویسان معاصر تبدیل شده و بستری را در اختیار آن ها قرار دهد که دارای انعطاف پذیری بسیار بالایی است. به این ترتیب برنامه نویسان قادر خواهند شد که در زمان کم و کوتاه، محصولات بیشتری را به بازار ارائه کنند و از نظر متخصصان این بهترین مزیت سویفت است.



سویفت زمین بازی دارد
گذشته از تمامی مزایایی که در رابطه با این زبان گفته می شود، یک قابلیت بسیار کلیدی در رابطه با آن وجود دارد که به هیچ وجه نمی توان به سادگی از کنار آن گذشت. وجه تمایز اصلی Swift با دیگر زبان هایی که مشابه به آن هستند در قابلیتی است که زمین بازی یا همان playgrounds نام دارد. این قابلیت به برنامه نویسان در محیط کاربری اجازه می دهد تا نتیجه و حاصل کدنویسی خود را به صورت لحظه ای یا همزمان مشاهده کنند. دقیقا مانند یک زبان برنامه نویسی اسکریپت، به این ترتیب انگار شما در یک زمین بازی قرار گرفته اید که نتیجه هر حرکت خود را در لحظه می توانید مشاهده کنید. این ویژگی توجه بسیاری از توسعه دهندگان را به خود جلب کرده است و در واقع هم باید گفت که بسیار لذت بخش خواهد بود اگر شما بتوانید نتیجه کدهای خود را دقیقا در زمانی که آن ها را می نویسید ببینید و به این ترتیب دیگر لازم نخواهد بود که برنامه را دائما کامپایل کنید تا بفهمید کاری که انجام داده اید درست کار می کند یا نه. در واقع Playground بیانگر سرعت سویفت در کامپایل و تبدیل کد به یک اپلیکیشن اجرایی روی تلفن یا تبلت شماست. سویفت با این استراتژی که فاصله میان کدنویسی و اجرای برنامه را از میان بردارد، به یک محیط برنامه نویسی کاربر پسندتر تبدیل شده است. البته باید گفت که شرکت اپل تنها سازمانی نبوده است که تا به حال روی این قابلیت کار کرده است و شرکت های معتبر و بزرگ دیگری نظیر فیس بوک یا گوگل هم سعی کرده اند تا در این راه به موفقیت برسند و شرکت موزیلا هم به همین منوال در مرورگرهای خود از زبان Rust که مشابه این ویژگی را دارد استفاده کرده است اما با توجه به این که بیشتر زبان های برنامه نویسی این شرکت ها قبل از سویفت وارد بازار شده اند و اکثریت آن ها هم اوپن سورس هستند، نتوانسته اند آن چنان که باید به موفقیت دست پیدا کنند. سویفت با توجه به تاریخچه محافظه کارانه شرکت اپل و سیاست کنترلی که این شرکت روی سخت افزارها و نرم افزارهای تولیدی خود دارد حداقل در حال حاضر صحبتی از اوپن سورس شدنش نیست و همین موضوع هم باعث شده است که این سئوال در ذهن کاربران به وجود آید که آیا همکاری با اپل باعث ایجاد محدودیت در روند رو به رشد زبان ها خواهد بود یا نه. متخصصان اپل در حال حاضر اعتقاد دارند که زبان ها باید در همه تولیدات غیر اپلی بتوانند استفاده شوند و به گفته او نگرانی های قابل توجهی در رابطه با محدود کردن پیشرفت یک زبان توسط اپل وجود دارد.



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

منبع: BYTE
اخبار پیشنهادی
تبادل نظر
آدرس ایمیل خود را با فرمت مناسب وارد نمایید.
آخرین اخبار