تفاوت IDE با Code Editor در برنامه نویسی
این پست برای ویدیو آموزشی مهندس نیک زاد که در igtv اینستاگرام قرار گرفته است تهیه شده است.
برای مشاهده ویدیو بصورت رایگان اینجا کلیک کنید.
تفاوت اصلی ide ها و code editor ها در برنامه نویسی چیست ؟
ide یا آی دی ای ها محیط های برنامه نویسی هستند که درون خود یک ادیتور مناسب برای انواع زبان های برنامه نویسی را ارائه میکنند تا برنامه نویس بتواند با زبان برنامه نویسی مورد نیاز خود کدنویسی انجام دهد.
درون ide ها تمام چیزهای مورد نیاز از شروع برنامه نویسی تا اجرا و دیدن نتیجه ی نهایی تعبیه شده است و این موارد تفاوت اصلی بین ide با code editor هست.
در code editor ها صرفا شما میتوانید کدهای نوشته شده را مشاهده کنید و آنرا ویرایش و کدنویسی کنید.
ابزارهای موجود در ide بسیار بیشتر از code editor هاست و code editor ها برنامه هایی هستند که درون خود کامپایلر و دیباگر و بقیه چیزها را ندارند.
بیایید در ادامه ی این مقاله به بررسی دقیقتر این ها بپردازیم.
ide در برنامه نویسی چیست ؟
ide مخفف Integrated Development Environment به معنی محیط یکپارچه ی توسعه است. دلیل نام گذاری این است که این محیط یکپارچه است و تمام چیزهایی که برای کدنویسی نیاز است درون همین برنامه موجود میباشد تا اینکه برنامه نویس بتواند به نتیجه ی نهایی دلخواه برسد.
برای مثال محیط های زیر از جمله ide های معروف هستند:
- visual studio
- netbeans
- pycharm
- inellij idea
- eclipse
- rubymine
- xcode
- android studio
معمولا ide ها برای یک یا دو زبان قابل استفاده هستند و مختص توسعه ی یک پلتفرم مخصوص میباشند. مثلا محیط اندروید استودیو مخصوص توسعه ی اپ های اندرویدی با زبان جاوا بود که بعدا زبان کاتلین هم بهش اضافه شد.
یا محیط ویژوال استودیو برای کدنویسی به زبان های مایکروسافت مثل سی شارپ و vb و دات نت هست.
تمامی عملیات از شروع کدنویسی تا کامپایل یا تفسیر و ساختن نتیجه ی نهایی معمولا درون همین محیط ها انجام مییگرد و درون خود کامپایلر و ... دارند.
همچنین این محیط ها مجهز به سیستم نمایش لاگ و دیباگر هستند که باعث میشوند برنامه نویس به راحتی روند اجرای کدهای خود را کنترل و در نهایت در صورت وجود خطا آنها را پیدا کرده و رفع کند.
به همین دلیل حجم ide ها معمولا زیاد هست و چیزی در حدود یک گیگابایت یا حتی چند گیگابایت حجم فایل خام این برنامه ها هست.
code editor در برنامه نویسی چیست ؟
code editor ها برخلاف ide ها درون خود موارد اضافی مثل کامپایلر و دیباگر و ... را ندارند. کدادیتور ها معمولا کم حجم هستند برای مثال vs code حجمی در حدود 50 مگابایت است.
کدادیتور ها مورد استفاده ی طیف گسترده ای از زبان های برنامه نویسی هستند و این بخاطر عدم وجود کامپایلر خاص در درون این برنامه هاست.
مثلا کدادیتور atom طیف گسترده ای از زبان های برنامه نویسی را پوشش میدهد و به راحتی میتوانید درون این کدادیتور برنامه نویسی کنید.
برنامه نویس ، کدهای خود را میتواند درون code editor ها بنویسند و بقیه عملیات را بیرون از آن محیط دنبال کنند مثلا اگر نیاز به کامپایلر خاص یا دیباگر خاصی است آنرا بصورت جداگانه نصب کرده و کدهای خود را کامپایل کنند و نتیجه را در جای دیگری ببینند.
هر چند کدادیتور ها پلاگین های زیادی دارند که با نصب کردن آنها بسیاری از ویژگی های ide را میتوانید به آنها اضافه کنید ولی بصورت پیشفرض درون آنها وجود ندارند.
در لیست زیر چند نمونه از code editor های محبوب را آورده ایم:
- VS-Code
- ATOM
- Sublime
- Notepad++
- VIM
تفاوت های کلی code editor ها با ide ها در برنامه نویسی
تفاوت های زیادی بین کدادیتور ها و ide ها وجود دارد ولی اگر بخواهید دید کلی داشته باشید چند مورد از بزرگترین تفاوت های آنها را در زیر لیست کرده ایم :
- درون ide ها معمولا کامپایلر و دیباگر و ... وجود دارد در حالیکه code editor فقط محیطی برای ادیت کردن کدهاست و چیز دیگری ندارد.
- حجم ide ها بسیار بزرگ است در حالیکه code editor ها معمولا سبک و کم حجم هستند.
- درون code editor ها میتوانید طیف گسترده ای از زبان های برنامه نویسی را کار کنید اما ide ها مختص یک یا چند زبان برای پلتفرم خاصی هستند نه همه چیز.
برای برنامه نویسی code editor انتخاب کنیم یا ide
انتخاب ide یا code editor کاملا بستگی به پروژه ی شما دارد مثلا پروژه های دات نت بهتر است درون visual studio انجام بگیرد چون در غیر این صورت ممکن نیست پس استفاده از ide در این حال توصیه میشود.
بصورت کلی وقتی از زبان هایی استفاده میکنید که مختص یک تکنولوژی خاص یا مختص یک محیط خاص نیستند و بصورت عمومی همه جا استفاده میشوند بهتر است از code editor ها استفاده کنید.
معمولا برنامه نویسان حرفه ای از code editor ها حتی text editor ها برای برنامه نویسی استفاده میکنند چون جدا بودن کامپایلر و دیباگر از محیط توسعه باعث حرفه ای تر شدن کار و افزایش بازدهی میشود و همچنین برنامه نویس نکات زیادی را که در ide بصورت آماده و خودکار انجام میگرفت را یاد میگیرد.
برای نوشتن اپلیکیشن های اندرویدی با زبان جاوا شما هم میتوانید از android studio استفاده کنید تا بتوانید درون این محیط هم کدنویسی کنید هم لاگ کارهایی که کردید را ببینید هم اپلکیشین خود را بیلد کنید و هم عمل دیباگ انجام دهید و هم نتیجه ی نهایی را ببینید.
اما شما میتوانید از android studio که یک ide هست استفاده نکنید. بجای آن کدهای خود را درون یک code editor با زبان جاوا یا کاتلین بنویسید. سپس گردل را بصورت جدا نصب و تنظیم کنید. بصورت جدا از کدهای خود build بگیرید بصورت جدا یک ماشین مجازی اندروید نصب کنید. بصورت دستی اپ را به ماشین مجازی منتقل کنید نصب کنید و نتیجه را ببینید. تازه در این حالت خبری از سیستم لاگ کت نیست و اگر نیاز داشته باشید باید به تنهایی انرا پیدا کنید و نصب کنید که در صورت کلی نصب و راه اندازی و تنظیم کردن همه ی این موارد جز درد سر و هدر دادن زمان چیز دیگری ندارد. پس همیشه استفاده از ide یا همیشه استفاده از code editor درست نیست و باید به شرایط نگاه کنید.