سال ۲۰۱۵ بود که ادیتور اتم عرضه شد. این ادیتور با شعار وایشگری برای قرن ۲۱ به دنیای دیجیتال وارد شد. این ادیتور به صورت محبوب شد. همین محبوبیت باعث شد که شرکتهای مختلف از روی این ادیتور الگو برداری کنن و ادیتور خودشون رو معرفی کنن. از جمله این شرکت ها میشه به ادوبی اشاره کرد که ادیتور Bracket رو معرفی کرد. سپس شرکت مایکروسافت ادیتور Visual Studio Code رو معرفی کرد که به نام VS Code معروف است.
این ادیتورها باهم در رقابت بودن که شرکت مایکروسافت شرکت گیتهاب رو خریداری کرد. گیتهاب شرکت پشت ادیتور Atom بود. بعد از این مایکروسافت این شرکت رو خرید اعلام کرد که اجازه خواهد داد اتم هم در کنار وی اس کد به پیشرفت خودش ادامه بده اما هم می دونستیم که فقط شو تبلغاتی هست. پس حدودا دو سال از خرید گیتهاب مایکروسافت اعلام کرد که اتم رو پشتیبانی نخواهد کرد و این کار رو به خاطر انجام میده که تمرکز توسعه دهندهای شرکت بره به سمت وی اس کد. در سال ۲۰۲۲ به پشتیبانی اتم پایان داده شد.
برای ساخت وی اس کد از فریم ورکی به نام الکترون استفاده شده است. این همون فریم ورکی هست که در ساخت براکت و اتم هم از اونها استفاده شده است. فریم ورک الکترون هم توسط گیتهاب توسعه داده شده است.
با استفاده از این فریم می تونیم از تکنولوژی های وب استفاده کنیم و برنامه های دسکتاپ بسازیم. این فریم ورک دارای دو مزیت اصلی می باشد اولی اینکه این فریم ورک برای برنامه نویسان وب بسیار مناسب است چون از تکنولوژی های وب مثل HTML, CSS, JS برای ایجاد اپ دسکتاپ استفاده میکنه. پس عملا برنامه نویسان وب نیازی به یادگیری تکنولوژی جدیدی برای تولید برنامههای دسکتاپ نخواهند داشت. دومین مزیت این فریم کراس پلتفرم بودن اون هست به این معنی که کافی است برنامه رو با این فریم ورک توسعه بدیم و بدون اینکه تغییری در کد ایجاد کنیم برنامه رو در سیستم عامل های ویندوز، لینوکس و مک اجرا کنیم.
ایراد اصلی این فریم ورک مربوط به ساختار اون هست. این فریم ورک در واقع کدها رو داخل مرورگر اجرا میکنه. پس برنامه ای که با الکترون ساخته شده عملا مرورگری هست که کاستوم شده. چون مرورگرها برنامه های بسیار سنگین هستن که منابع سیستم رو مصرف می کنن به همین خاطر برنامه های که از الکترون استفاده می کنن هم سنگین و پر مصرف از لحاظ منابع سیستم هستن.
در سالهای اخیر مایکروسافت بهینه سازی های زیادی روی وی اس کد انجام داده تا ادیتور سریعتر اجرا بشه و منابع کمتری هم مصرف کنه. اما خوب نمیشه ساختار اصلی اون رو تغییر داد. وقتی الان وی اس کد رو روی کامپیوترم اجرا می کنم ۶۳۰ مگابایت رم مصرف میکنه. باید دقت کنیم که سیستم عامل کاستوم لینوکسی من بعد از اجرا ۳۰۰ مگابایت رم اشغال میکنه. یعنی وی اس کد از یک سیستم عامل کامل هم بیشتر رم اشغال می کنه که این موضوع اصلا قابل دفاع نیست.
ما به عنوان برنامه نویس باید از ابزارهای استفاده کنیم که توسط برنامه نویس های خوب با در نظر گرفتن کارآیی بالا نوشته شدن. همونطور که می دونید یک الگوریتم خوب الگوریتمی هست که زمان اجرای پایین و مصرف حافظه پایینی داشته باشه. یعنی سریع اجرا بشه و منابع کمتر مصرف کنه. کل علوم کامپیوتر بر همین مبنا پایه گذاری شده و در همین راستا هم حرکت میکنه. در حالی که ادیتور وی اس کد به این موضوع مهم توجهی نداره و میگه کامپیوترها به اندازه کافی سریع هستن و نیازی نیست الویت اول ما کارآیی و حافظه باشه.
در همین راستا ادیتور zed اوایل سال ۲۰۲۳ معرفی شد. این ادیتور توسط تیمی که اتم رو طراحی و پیاده سازی کرده بودن در حال گسترش هست. این ادیتور بر خلاف وی اس کد از الکترون استفاده نمیکنه بلکه با زبان Rust توسعه داده شده و به جای اینکه از CPU برای رندر کردن متن استفاده کنه از GPU برای این کار استفاده میکنه. عملا این ادیتور از روشی که در بازی سازی استفاده میشه برای نمایش بخش های مختلف ادیتور استفاده میکنه. همچنین این ادیتور برای بخش های پردازشی از تمام هسته های CPU استفاده میکنه تا کارآیی رو افزایش بده.
در حال حاضر این ادیتور بر روی مک و لینوکس قابل نصب و اجرا می باشد. البته روی کامپیوتر لینوکسی من نتونستم اجرا بگیرم. این ادیتور می تونه گزینه خوبی برای کامپیوترهای باشه که رم کمی دارن و وی اس کد یا هر ادیتور دیگه ای بر روی اون به کندی اجرا میشن. به شخصه بعد از اینکه این ادیتور به بلوغ رسید و پلاگین های مختلفی که برای توسعه لازم داریم رو پشتیبانی کرد حتما با وی اس کد جایگزین می کنم.
آموزشها و کتابهای برنامه نویسی در کانال تلگرامی ostadsgo