سافت گذر دانشنامه نرم افزار - دانلود رایگان نرم افزار

همه دسته بندی ها

منو
جستجو
اطلاعیه های مهم سایت اطلاعیه های مهم سایت
💐 میلاد زینت پدر حضرت زینب سلام الله علیها مبارک باد 💐
 
 
  1. جهت رفع مشکل باز شدن سایت به دلیل بلاک توسط  نود 32 این ویدیو یا این ویدیو(ورژن 9 به بالا) یا راهنمای تصویری را مشاهده کنید
  2. اکانت های بروزرسانی نود32 با قیمت های مناسب به صورت یک ، سه ، شش و دوازده ماهه از اینجا قابل خرید می باشد.

نرم افزار های پرکاربرد

ثبت نام | ورود

اخبار آموزشی

با SWIFT، زبان برنامه نویسی تازه اپل بیشتر آشنا شوید

به گزارش سافت گذر به نقل اززومیت؛ یکی از بزرگترین اتفاق‌های چندساله‌ی کنفرانس توسعه‌دهندگان اپل در سال 2014 را می‌توان معرفی زبان برنامه نویسی تازه SWIFT دانست.  زبانی که در کنار امکانات تازه  سیستم‌عامل iOS، دست برنامه‌نویسان و توسعه‌دهندگان بزرگ و کوچک را در خلق اپلیکیشن‌هایی متفاوت و کاربردی‌تر باز می‌گذارد. با ما برای آشنایی بیشتر با این زبان برنامه نویسی و امکاناتی که برای توسعه‌دهندگان همراه می‌آورد، همراه شوید. 

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

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

قبل از آنکه بیشتر با زبان برنامه نویسی SWIFT آشنا شویم، بهتر است تا نگاهی به انواع زبان‌های برنامه‌نویسی داشته باشیم. 

انواع زبان‌های  برنامه نویسی:

زبان‌های برنامه نویسی چه برای کامپیوترها باشند چه برای اپلیکیشن‌های تلفن‌های هوشمند، دو نوع اصلی دارند: زبان‌های سطح پایین، زبا‌ن‌های سطح بالا!

swift-c

زبان‌های برنامه‌نویسی سطح پایین: 

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

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

زبان‌های برنامه نویسی سطح‌بالا 

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

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

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

progLanguages

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

حالا در کنار این زبان‌های برنامه نویسی، زیر مجموعه‌ای به نام «Scripting» وجود دارد که وظیفه‌اش را هر چند توضیح آن چندان ساده نیست، ولی  در ادامه با صرف نظر از توضیحات پیچیده برایتان شرح می‌دهیم. 

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

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

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

زبان برنامه نویسی SWIFT: 

آیا SWIFT مجموعه‌ای کامل از مهمترین و بهترین نیازهای یک زبان برنامه‌نویسی است  و جنبه‌های مثبتی را که در بالا بدان اشاره کردیم را در بر می‌گیرد؟ پاسخ این سؤال هنوز قطعی نیست؛ ولی  به زودی با نقدهای برنامه‌نویس‌هایی که با آن کار می‌کنند، به پاسخ آن خواهیم رسید. 

paintcode swift

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

اما در این بین، SWIFT قول می‌دهد که تمام خوبی‌های لازم را داشته باشد و در آن خبری از نقطه بد نباشد! این وعده اپل به برنامه‌نویس‌هاست وشواهد اثبات آن را می‌توان در نتایج بنچمارک‌هایی که نشان از سرعت بیشتر این زبان برنامه‌نویسی نسبت به C Objective و Phyton داشت، جستجو کرد. 

ولی وجه تمایز اصلی SWIFT در قابلیتی با نام playgrounds نهفته است. قابلتی که برنامه نویس‌ها در محیط کاربری Xcode اجازه می‌دهد تا تیجه و حاصل کدهایشان را به صورت ریل‌تایم یا همزمان مشاهده کنند، درست مانند یک زبان برنامه نویسی اسکریپت!

swift-screenshot

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

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

سرعت‌بخشیدن به فرآیند برنامه‌نویسی:‌

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

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

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

جنبه‌های منفی: 

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

img 0258

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

نتیجه‌گیری: 

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

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

در حال حاضر، هنوز برای قضاوت در مورد اثر این تغییر، اندکی زودهنگام است و باید منتظر نظر برنامه‌نویسان و توسعه‌دهندگان در آزمایش آن باشیم.

نظرتان را ثبت کنید کد خبر: 21038 گروه خبری: اخبار آموزشی منبع خبر: zoomit.ir تاریخ خبر: 1393/03/22 تعداد مشاهده: 2411
اخبار مرتبط با این خبر
نظر های کاربران
سرور آپدیت نود 32
پیشنهاد سافت گذر
Chocolatier Decadence by Design

Chocolatier Decadence by Design

ساختن بهترین شکلات های جهان

MadOut Ice Storm

MadOut Ice Storm

کولاک ماشین‌های جنگی

Benvista PhotoZoom Pro 8.2.0

Benvista PhotoZoom Pro 8.2.0

بزرگ کردن عکس بدون افت کیفیت

PDFgear 2.1.12

PDFgear 2.1.12

مدیریت فایل‌های پی‌دی‌اف

Pluralsight - Exchange Server 2016 First Look

Pluralsight - Exchange Server 2016 First Look

آموزش اکسچنج سرور 2016

همراه بانک مسکن نسخه 1.34 برای اندروید

همراه بانک مسکن نسخه 1.34 برای اندروید

موبایل بانک مسکن

Windows XP x64 Professional SP2 Corporate October 2012 SATA / February 2014

Windows XP x64 Professional SP2 Corporate October 2012 SATA / February 2014

ویندوز xp ایکس پی

مناظره شیعه و سنی

مناظره شیعه و سنی

مناظره علمای بغداد

تعمیر لوازم خانگی

تعمیر لوازم خانگی

تعمیر وسایل خانگی در منزل

گلچین مولودی ولادت امام جواد (ع)

گلچین مولودی ولادت امام جواد (ع)

مولودی ولادت امام محمد تقی

Hibernator Pro 2.54.17 for Android +6.0

Hibernator Pro 2.54.17 for Android +6.0

خواب زمستانی

انتظار فرج امام زمان (عج) از حجت الاسلام والمسلمین سیدمحمدمهدی میرباقری - 2 جلسه

انتظار فرج امام زمان (عج) از حجت الاسلام والمسلمین سیدمحمدمهدی میرباقری - 2 جلسه

حاج آقا سیدمحمدمهدی میرباقری با موضوع انتظار فرج امام زمان (عج)

Webroot SecureAnywhere Mobile Premier 3.7.1.7660 for Android +2.3

Webroot SecureAnywhere Mobile Premier 3.7.1.7660 for Android +2.3

آنتی ویروس اندروید شرکت Webroot

رژیم های دروغی

رژیم های دروغی

باورهای نادرست درمورد رژیم غذایی

ChatGPT v1.1.0 Desktop Application

ChatGPT v1.1.0 Desktop Application

اپلیکیشن چت‌جی‌پی‌تی برای ویندوز

گلچین بهترین مداحی حاج محمد رضا طاهری

گلچین بهترین مداحی حاج محمد رضا طاهری

مداحی حاج محمد رضا طاهری

Where is My Water? 2 v2.1.8.3  for Android +4.0

Where is My Water? 2 v2.1.8.3 for Android +4.0

بازی حمام تمساح

My Talking Angela 6.9.0.5278 for Android +4.0.3

My Talking Angela 6.9.0.5278 for Android +4.0.3

آنجلای سخنگو

Real Widget 1.0.8 for Android +4.0

Real Widget 1.0.8 for Android +4.0

ویجت با شمایل ویندوز فون 7

آموزش جامع LINQ

آموزش جامع LINQ

آموزش Linq

Lynda - Creating a One-Page Scrollable Website with Muse

Lynda - Creating a One-Page Scrollable Website with Muse

فیلم آموزش ایجاد وب‌سایت تک‌صفحه‌ی اسکرول‌دار با نرم‌افزار ادوبی موس

AIDA64 Premium 2.09 for Android +4.4

AIDA64 Premium 2.09 for Android +4.4

نمایش اطلاعات سخت افزار

3 جلسه ویژگی ها و فضایل اصحاب و یاران اباعبدالله الحسین از حجت الاسلام والمسلمین رفیعی

3 جلسه ویژگی ها و فضایل اصحاب و یاران اباعبدالله الحسین از حجت الاسلام والمسلمین رفیعی

حاج آقا رفیعی با موضوع ویژگی ها و فضایل اصحاب و یاران اباعبدالله الحسین

White Mirror

White Mirror

آینه‌ی سفید

آموزش زبان ماشین و برنامه نویسی سیستم

آموزش زبان ماشین و برنامه نویسی سیستم

آشنایی کامل با برنامه نویسی اسمبلی

Marvel’s Spider-Man Miles Morales v2.209.0.0

Marvel’s Spider-Man Miles Morales v2.209.0.0

مرد عنکبوتی مایلز مورالز

Linux openSUSE Tumbleweed 84.87 / Leap 15.5 / 42.3

Linux openSUSE Tumbleweed 84.87 / Leap 15.5 / 42.3

لینوکس اوپن‌سوزه

Win Video Converter 2024 9.9.9.11

Win Video Converter 2024 9.9.9.11

تبدیل فرمت فیلم ها

سخنرانی حجت الاسلام انصاریان  با موضوع امیرالمومنین (ع) الگویی کامل برای جهان امروز

سخنرانی حجت الاسلام انصاریان با موضوع امیرالمومنین (ع) الگویی کامل برای جهان امروز

حاج آقا انصاریان با موضوع امیرالمومنین (ع)

سخنرانی حجت الاسلام پناهیان درمورد جایگاه سبک زندگی

سخنرانی حجت الاسلام پناهیان درمورد جایگاه سبک زندگی

سخنرانی حجت الاسلام پناهیان با موضوع سبک زندگی در ماه رمضان

ZArchiver Pro 1.0.10 for Android +4.0

ZArchiver Pro 1.0.10 for Android +4.0

برنامه قدرتمند مدیریت فایل‌های فشرده

Enemy

Enemy

دشمن

Buzz Aldrin's Space Program Manager

Buzz Aldrin's Space Program Manager

بـاز آلدرین - شبیه‌ساز مدیریت سفر به فضا

IZArc 4.6

IZArc 4.6

فشرده سازی فایل ها

آموزش تصویری حل مکعب روبیک

آموزش تصویری حل مکعب روبیک

حل مکعب روبیک

Diluvion v1.17.93 GOG

Diluvion v1.17.93 GOG

زیردریایی جنگی

Algorius Net Viewer 2024.6.4

Algorius Net Viewer 2024.6.4

مدیریت شبکه

برنامه جهان آرا سری جدید | ایران، سوریه، فلسطین تصویری که ندیده‌اید، حرف هایی که نشنیده‌اید

برنامه جهان آرا سری جدید | ایران، سوریه، فلسطین تصویری که ندیده‌اید، حرف هایی که نشنیده‌اید

برنامه جهان آرا شبکه افق

VERO ALPHACAM 2020.1 / 2019 R1 SU2 / 2017 R1 SP2 / 2016 R2 SP3 / Desinger 2020.0.1926

VERO ALPHACAM 2020.1 / 2019 R1 SU2 / 2017 R1 SP2 / 2016 R2 SP3 / Desinger 2020.0.1926

شبیه ساز برش و ماشین کاری

This War of Mine Stories Fathers Promise

This War of Mine Stories Fathers Promise

تلاش برای بقا

خبرنامه

با عضویت در خبرنامه، زودتر از همه باخبر باش!