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

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

منو
جستجو
اطلاعیه های مهم سایت اطلاعیه های مهم سایت
💐 میلاد زینت پدر حضرت زینب سلام الله علیها مبارک باد 💐
 
 
  1. سافت گذر جهت آپدیت بخش نرم افزار نیاز به همکار حرفه ای دارد. ارسال درخواست به بخش ارتباط با ما / سردبیری
  2. جهت رفع مشکل باز شدن سایت به دلیل بلاک توسط  نود 32 این ویدیو یا این ویدیو(ورژن 9 به بالا) یا راهنمای تصویری را مشاهده کنید
  3. اکانت های بروزرسانی نود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 تعداد مشاهده: 2390
اخبار مرتبط با این خبر
نظر های کاربران
سرور آپدیت نود 32
پیشنهاد سافت گذر
نقشهٔ ایران آفلاین 7.31 برای اندروید 4.0.3+

نقشهٔ ایران آفلاین 7.31 برای اندروید 4.0.3+

نقشهٔ آفلاین تمامی شهرهای کوچک و بزرگ ایران بدون نیاز به اینترنت

Cut The Rope 3.37.0 for Android +4.1

Cut The Rope 3.37.0 for Android +4.1

طناب را ببر

Ultra Off-Road Simulator 2019: Alaska

Ultra Off-Road Simulator 2019: Alaska

ماشین سواری برای کامپیوتر

!Udemy - Matlab in 30 Minutes

!Udemy - Matlab in 30 Minutes

آموزش متلب

Ultimate Stopwatch & Timer 6.0.5 for Android +2.1

Ultimate Stopwatch & Timer 6.0.5 for Android +2.1

تایمر و تایمر معکوس

شرح احوال کامل در مورد زندگانی و زمامداری و معرفی خدمات علمی و اجتماعی امیر کبیر

شرح احوال کامل در مورد زندگانی و زمامداری و معرفی خدمات علمی و اجتماعی امیر کبیر

زندگی درخشان امیر کبیر

طرح توجیهی چیست؟

طرح توجیهی چیست؟

ایده های موفق کسب و کار

Hook

Hook

قلاب

Pluralsight (TrainSignal) - Windows 8 Managing and Maintaining (70-688) Part 1 / 2 / 3 / 4

Pluralsight (TrainSignal) - Windows 8 Managing and Maintaining (70-688) Part 1 / 2 / 3 / 4

مجموعه‌ی 4 دوره آموزش تصویری مدیریت و نگهداری همه‌جانبه‌ی ویندوز 8 – آزمون 70-688

Yooka-Laylee and the Impossible Lair

Yooka-Laylee and the Impossible Lair

اکشن

RDS - The Official Drift Videogame

RDS - The Official Drift Videogame

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

12 Monkeys

12 Monkeys

۱۲ میمون

Sony Catalyst Browse / Prepare Suite 2024.1.1

Sony Catalyst Browse / Prepare Suite 2024.1.1

مدیریت ویدئوهای سونی

Xenon Racer + Update 2 REPACK

Xenon Racer + Update 2 REPACK

بازی ماشین برای کامپیوتر

زندگی بزرگترین مردان جهان

زندگی بزرگترین مردان جهان

سقوط مپراتوری های دنیا

Nuclear Coffee Recover Keys 12.0.6.309 (x64) Enterprise

Nuclear Coffee Recover Keys 12.0.6.309 (x64) Enterprise

ریکاوری و نمایش شماره سریال فعالسازی نرم‌افزارها

سلام پاریس من

سلام پاریس من

آموزش زبان فرانسوی

Adobe Premiere Pro CC 7.0.0 / 2014 v8.0.0 Build 169

Adobe Premiere Pro CC 7.0.0 / 2014 v8.0.0 Build 169

نسخه CC حرفه ای ترین نرم افزار ویرایش فیلم

Get Out

Get Out

ترسناک برو بیرون

Plex for Android Full 10.26.0.2578 for Android +5.0

Plex for Android Full 10.26.0.2578 for Android +5.0

پلکس

Advanced Task Killer Pro 2.1.3B213 for Android +1.6

Advanced Task Killer Pro 2.1.3B213 for Android +1.6

بستن برنامه های در حال اجرا

SWAT 2 v1.0.7 for Android +2.3

SWAT 2 v1.0.7 for Android +2.3

بازی مبارزه با تروریست ها

ProCapture 2.0.6 for Android

ProCapture 2.0.6 for Android

عکسبرداری با موبایل

Wifi Analyzer 3.10.5 for Android +2.3

Wifi Analyzer 3.10.5 for Android +2.3

آنالیز قدرت وای فای

Outcast - A New Beginning

Outcast - A New Beginning

رانده شده

Facetune 1.1.4 for Android +4.1

Facetune 1.1.4 for Android +4.1

روتوش حرفه ای تصاویر

Cheat Engine 7.4

Cheat Engine 7.4

نرم افزار هک و تغییر مقادیر درون بازی

Sky Kingdoms

Sky Kingdoms

انفجار توپ های هم رنگ در حال عبور

Dark Future: Blood Red States + Updates

Dark Future: Blood Red States + Updates

ماشین جنگی

قدرت های بزرگ

قدرت های بزرگ

Foreign policy

Raji: An Ancient Epic v1.4.0

Raji: An Ancient Epic v1.4.0

راجی

Wave Alarm 3.1 for Android +2.3

Wave Alarm 3.1 for Android +2.3

ساعت دیجیتال و زنگ هشدار

سخنرانی استاد رفیعی بایدها و نبایدها در قران کریم

سخنرانی استاد رفیعی بایدها و نبایدها در قران کریم

سلسله سخنرانی های استاد رفیعی

The Occupation + Updates

The Occupation + Updates

معمایی

GO SMS Pro Premium 8.03 / Pro 7.88 for Android +1.6

GO SMS Pro Premium 8.03 / Pro 7.88 for Android +1.6

مدیریت اس ام اس

BASCOM-AVR 2.0.7.8 / 8051 v2.0.14.0

BASCOM-AVR 2.0.7.8 / 8051 v2.0.14.0

یکی از نرم افزارهای قدرتمند کامپایلر برای میکرو کنترل ها

Asoftis IP Changer 1.7

Asoftis IP Changer 1.7

آی پی چنجر

حرکات ساده ورزشی

حرکات ساده ورزشی

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

Soft Organizer Pro 10.10

Soft Organizer Pro 10.10

حذف نرم افزارهای نصب شده در ویندوز

Simple Sticky Notes 6.7.5

Simple Sticky Notes 6.7.5

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

خبرنامه

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