أفضل محرر نصوص؟ ذرة مقابل سامية مقابل Visual Studio Code و Vim

مع وجود الكثير من محرري نصوص البرمجة اليوم ، تصبح المهمة التي تبدو بسيطة لاختيار واحد فجأة مرهقة وساحرة.

على الرغم من عدم وجود إجابة واضحة عن السؤال "ما هو أفضل محرر نصوص للمطورين؟" ، في هذا المنشور ، سوف أشاطركم جنبًا إلى جنب مقارنة بين أربعة من أكثرها شعبية: Atom ، Sublime ، مرئي ستوديو كود ، والفيم.

بعد قراءة قائمة من إيجابيات وسلبيات ، آمل أن يكون لديك معلومات كافية لاتخاذ خيار يناسب احتياجاتك.

إخلاء المسئولية: كما هو الحال مع أي مقارنة ، فإن بعض وجهات النظر هذه ذاتية وتستند معظمها إلى تفضيلاتي الشخصية. أنا شخص يكتب على الويب (JS ، CSS ، HTML ، إلخ) باستخدام Sublime for Mac ، لذلك فإن وجهة نظري تميل قليلاً نحو ما اعتدت عليه. لقد قلت ذلك ، لقد حاولت أن أكون موضوعيًا قدر الإمكان.

ذرة

  • عنوان url: https://atom.io/
  • التكلفة: مجاني (رخصة MIT)
  • المطور: جيثب
  • المنصات: OSX و Windows و Linux

يتم وصف الذرة على النحو التالي:

محرر نصوص قابل للتطرق للقرن الحادي والعشرين

يعد Atom قادمًا جديدًا نسبيًا إلى عالم محرري النصوص ولكنه اكتسب قوة دفع هائلة منذ إصداره لأول مرة في عام 2014. لنبدأ بمراجعة معالمه الرئيسية:

حزم

تعد القدرة على إضافة ميزات إضافية إلى التحرير مهمة للغاية ، وهذه منطقة يضيء عليها Atom. يتم تثبيت مدير الحزم افتراضيًا ولتحسين الأمور ، يتم استضافة جميع الحزم على جيثب.

في وقت كتابة هذا التقرير ، كان لديهم حزمة 6،452 حزمة وموضوع متاح! تعتبر الحزم أساسية جدًا لـ Atom ، حيث أن الميزات الأساسية مثل Tree View و View Settings هي ببساطة حزم مثبتة مسبقًا.

التحرير وسير العمل

بشكل عام ، كل شيء في Atom سلس إلى حد ما. أكبر نقطة الألم؟ معرفة أي الحزم الإضافية يجب تثبيتها عند البدء من الصفر.

على سبيل المثال ، أحب minimap لمساعدتي في الانتقال بصريًا إلى أجزاء من الملف. كنت بحاجة أيضًا إلى إعداد بعض الإكمال التلقائي باستخدام الإكمال التلقائي +. أنا شخص يعمل غالبًا على اثنين من الملفات في وقت واحد ، لذا فإن القدرة على إعداد تعديل جزء المقسم أمر ضروري. إنها ميزة يدعمها Atom بشكل جيد.

ميزة أخرى لطيفة من Atom وجدتها مفقودة في Sublime هي دعم السحب / الإفلات / دعم الملف في عرض الشجرة. أنا معتاد على عدم وجوده في موقع Sublime ، حيث أن القدرة على تغيير الأمور أمر حقيقي!

أخيرًا ، تكامل البوابة أمر رائع ... لقد تم تصنيعه بواسطة GitHub بعد كل شيء!

التخصيص

القدرة على تخصيص محرر لتتناسب مع تدفق التنمية والأسلوب الخاص بك أمر ضروري. أنا شخصياً أحتاج دائمًا إلى تمكين أشياء مثل "المسافات البيضاء عند الحفظ" ، "حفظ في ملف التركيز المفقود" ، كلاهما سهل الإعداد وتجاوز في Atom.

يحتوي Atom على صفحة مستندات رائعة حول كيفية تجاوز الأنماط (تمت كتابة Atom في HTML / CSS خالص أعلى Chromium) - http://flight-manual.atom.io/using-atom/sections/basic-customization/

بشكل عام ، أحب طريقة تكوين Atom - القدرة على تخطي الإعدادات على أساس نوع الملف أمر رائع! على سبيل المثال ، المسافة البادئة المختلفة لـ JS vs CSS vs HTML بسيطة جدًا مع Atom.

أداء

إذا كان هناك عظم واحد يمكن اختياره باستخدام Atom ، فسيكون ذلك في بعض الأحيان بطيئًا. في بعض الأحيان ، يكون فتح ملف أو التبديل بين علامات التبويب مؤخرًا ليشعر بالألم (خاصةً عندما تكون في وضع تطوير كامل). عندما جربت Atom عندما تم إصدارها لأول مرة ، كان الأداء مشكلة. من المؤكد أنها أصبحت أفضل منذ ذلك الحين ، لكن الإحباط ما زال قائماً.

حكم

يعد Atom أداة رائعة ، خاصةً لأولئك الذين يرغبون في تخصيص محررهم بسهولة ، وبخلاف ما يقدمه الآخرون. كمطور على شبكة الإنترنت ، فإن حرية تعديل المحرر وإضافته وتوسيعه تعطي شعوراً لا يصدق بالقوة. أنا أيضا أحب مستنداتها. يوفر Atom Flight Manual نقطة انطلاق رائعة للمستخدمين الجدد.

إن الجانب السلبي الأكبر بالنسبة لي هو مشاكل الأداء ، لكن بالنسبة إلى محرر مجاني ، فإن Atom يضيء بشكل مشرق!

رفيع

  • عنوان url: https://www.sublimetext.com/
  • التكلفة: 70 دولار رسوم الترخيص مع نسخة تجريبية مجانية
  • المطور: جون سكينر مهندس جوجل السابق
  • المنصات: OSX و Windows و Linux

تم إصدار Sublime مرة أخرى في عام 2007 ، لذلك كان هناك ما يقرب من عقد من الزمان لتنضج. وفقًا لمسح مطور Stackoverflow لعام 2016 ، فهو ثالث بيئة تطوير شعبية.

V3 Beta هو أحدث إصدار ، بينما كان الإصدار التجريبي لفترة طويلة الآن ، لا تدع ذلك يثير قلقك. المنتج هو في الواقع مستقر للغاية.

حزم

سيخبرك أي مستخدم Sublime الحزمة الأولى التي يقومون بتثبيتها هو البرنامج المساعد Sublime Package Control. أعتقد أننا جميعًا نأمل أن يضيف Sublime 3 هذا افتراضيًا ، لكن الآن ، عليك ببساطة الانتقال إلى صفحة التثبيت على موقع الويب الخاص بهم ونسخ بعض بيثون غير المفهومة و ... المعزوفة! يمكنك الآن تثبيت أي حزمة بسهولة من داخل Sublime.

مثل Atom ، لدى Sublime الكثير من الحزم والمواضيع! بالنسبة لي الأساسيات هي:

  • SideBarEnhancements: بدون ذلك ، إعادة تسمية / نقل / تكرار الملفات غير مدعومة.
  • SublimeLinter: لإضافة linters للغات مختلفة
  • GitGutter - لإظهار حالة git على الجانب الأيسر بجانب أرقام الأسطر.

هناك الكثير للاختيار من بينها أيضًا. بشكل عام ، دعم حزمة Sublime جيد جدًا ، إنه لأمر مخز أن تضطر إلى القفز من خلال هذا الطوق في البداية حتى تتمكن من البدء به.

التحرير وسير العمل

بالنسبة لي ، يعتبر استخدام المشروعات أمرًا مهمًا عند العمل في Sublime - يساعدني ذلك في التركيز على الملفات ذات الصلة بما أحتاج إليه. أن تكون قادرًا على البحث عن ملف وعبر الملفات بسرعة وسهولة. غالبًا ما كان علي إجراء عمليات بحث عبر مئات الملفات للعثور على مقتطف من الشفرة ولم تخذل سرعة Sublime أبدًا.

كما هو الحال مع Atom - تأتي القوة الحقيقية بمجرد تثبيت بعض الإضافات الرئيسية. يستغرق الحصول على تمييز بناء الجملة الصحيح ، وتنسيقات JSON ، والنوافذ ، وما إلى ذلك بعض الوقت ، ولكن بمجرد تثبيتها وإعدادها ، لن تحتاج إلى لمسها مرة أخرى.

أحد الجوانب السلبية التي اكتشفتها هو عدم وجود مكون إضافي مناسب لـ Git يتيح لي القيام بفرق لطيفة وتغييرات المرحلة. أنا فقط أثق في استخدام SourceTree لذلك. أنا متأكد من أن الآخرين سيتمكنون من تصحيحي إذا كان هناك مكون إضافي مناسب يمكنه المساعدة.

التخصيص

مرة أخرى ، سامية يشبه إلى حد كبير الذرة. تتوفر القدرة على التحكم في جوانب مثل "حفظ التركيز المفقود" و "تقليل المساحة البيضاء" والمزيد. ملفات التكوين بسيطة JSON وهناك مجموعة كاملة من الإعدادات المخفية في انتظارك للعب بها.

أداء

هنا يتفوق Sublime على Atom - الافتتاح ، الإغلاق ، البحث ، إلخ ، سلسة وسريعة للغاية. المشكلة الوحيدة التي واجهتها مع الأداء هي الإضافات السيئة الأداء - ولكن حتى ذلك الحين ستتلقى رسالة تحذير عندما يبدو أن المكوّن الإضافي يستغرق وقتًا طويلاً.

حكم

كما ذكرت في البداية ، فأنا من مستخدمي Sublime منذ فترة طويلة ، لذلك من المحتمل أن تكون آرائي هنا منحازة بعض الشيء ، ولكن بشكل عام ، Sublime هو محرر مرن وسريع. هناك سبب في أنها لا تزال تصنع أفضل 3 بيئة تطوير في عام 2016.

مرئي ستوديو كود

  • عنوان url: https://code.visualstudio.com/
  • مجانا
  • المطور: مايكروسوفت
  • المنصات: OSX و Windows و Linux

يعد Visual Studio Code (VSCode) قادمًا جديدًا نسبيًا إلى عالم برامج تحرير النصوص. تم إصداره فقط في العام الماضي (أبريل 2015) ، لكنه بالفعل تم التقاط الكثير من الجر. قامت Microsoft بعمل رائع في إنشاء محرر قوي ومرن عبر الأنظمة الأساسية يثير الكثير من الاهتمام من قبل المطورين.

حزم

كما هو الحال مع المحررين الآخرين ، يحتوي VSCode على نظام إضافات (ملحقات) لطيف. إدارة الإضافات مدمجة ، وهناك بالفعل عدة آلاف متوفرة! كما هو الحال مع Atom ، يتم تثبيت البعض افتراضيًا.

ستحتاج إلى قضاء بعض الوقت في اختيار المكونات الإضافية الأفضل لسير عملك. أحد الأشياء المفضلة لدي (وما الذي يجعلني متحمسًا حول VSCode) هو Debugger for Chrome. يسمح لك بتعيين نقاط التوقف وتصحيح JS من داخل VSCode.

يمكن إجراء نفس الشيء أيضًا مع Node.js - تحديد نقاط التوقف في VSCode والتنقل خلال عملية العقدة في محطة.

التحرير وسير العمل

على الرغم من أن VSCode مبني بطريقة مشابهة لـ Atom ، باستخدام Electron و Node و HTML / CSS ، إلا أنه في الواقع أسرع بكثير دون أي تأخير حقيقي.

قضيت أسبوعًا في استخدام المحرر ، وبصفة عامة ، كنت راضٍ للغاية. كان لديه شعور مألوف جدا لسامية والذرة. ميزة تصحيح الأخطاء المذكورة أعلاه كانت متعة. لقد قمت أيضًا بإعداد بعض إكمال IntelliSense typeahead والذي (على الرغم من أنه مؤلم للتكوين في البداية) بدأ يظهر فوائده في يوم واحد أو نحو ذلك. يمكنني بالفعل أن أزيز من خلال كتابة اسم وظيفة دون الحاجة إلى تذكر الوسائط (أو أنواعها لهذه المسألة).

كمكافأة إضافية ، فإن دمج Git مريح للغاية. ليست قوية مثل ما أحصل عليه باستخدام SourceTree ، ولكن بالنسبة للعمليات المشتركة مثل الإرتكاز والفوارق ، فقد أثبتت أنها مثالية وأسرعت في وقت التطوير.

التخصيص

مثل المحررين السابقين ، تتوفر ميزات التخصيص المتوقعة - كل ما يلزم من التفاف ، وضبط المسافات البادئة ، و theming ، و بتعديل اللغة ، إلخ.

أداء

كما ذكرنا من قبل ، على الرغم من أن VSCode (مثل Atom) مبني على Node.js و Electron و HTML و CSS ، فإنه بالتأكيد يشعر بالسرعة (على عكس Atom). لم أواجه أي تأخر عند فتح / تغيير الملفات. كان البحث سريعًا أيضًا. أعتقد أن أحد الاختلافات بين Atom و VSCode هو أن محرر واجهة المستخدم مبني على Monaco (من Visual Studio Online) ، والذي قد يكون تفسيرًا لفرق الأداء. في أي حال ، فإن الأداء هو بالتأكيد على قدم المساواة مع Sublime.

حكم

بشكل عام ، لقد تأثرت جدًا بـ VSCode ، لدرجة أنني فكرت في الانتقال إليها بشكل دائم. ما زلت لم أتخذ تلك الخطوة للتجول فيها بالكامل ، لكنني أعتقد أنه سيكون مشروع عطلة جميلًا لتهيئته للوفاء بالمعايير المماثلة التي اعتدت عليها في Sublime. بعد ذلك ، أعتقد أنني أستطيع حقًا الالتزام بها لفترة أطول. تكامل Git ومصحح الأخطاء في المحرر هما من الميزات الرائعة التي واجهتها في Sublime لكنني عملت فورًا تقريبًا في VSCode.

همة

  • عنوان url: http://www.vim.org/
  • التكلفة: رخصة حرة متوافقة GPL
  • المطور: برام مولينار
  • المنصات: OSX و Windows و Linux

أشعر أنه يجب على جميع المطورين في مرحلة ما اجتياز "طقوس المرور" واستخدام Vi أو Vim لمشروع. تعد القدرة على تحرير أو عرض ملف على خادم بعيد عبر محطة مهمة مهمة ومثمرة بشكل كبير. لقد رأيت العديد من المطورين يقفزون عبر كل أنواع الأطواق باستخدام SFTP ، أو الضفيرة ، ويعيدون تحميل الملفات.

ومع ذلك ، فإنني أدرك أيضًا أن مجرد ذكر Vim يجلب الرعشات للبعض ، وحتى السخط الصالح للآخرين. لو حذفت ذلك ، كنت أخشى من ضربة قاسية شديدة من مستخدمي السلطة Vim ؛) بكل أمانة لأولئك الذين قضوا الوقت لإتقان ذلك ، فهي بيئة منتجة بشكل لا يصدق!

حزم

في أكثر من 14000 حزمة ، لدى Vim حزمة لكل شيء! مستكشفات الشجرة ، أدوات تمييز بناء الجملة ، السمات ، دمج Git ، إلخ. كل شيء هناك ، في إصدارات متعددة. فيم مرن وقوي بشكل لا يصدق. ولكن كما هو الحال مع جميع المحررين الآخرين المذكورين أعلاه ، فإن معرفة أفضل المكونات الإضافية لتثبيت يتطلب بعض المعرفة والتوصيات من الداخل.

شخصيا ، لقد وجدت أن الخروج من الإضافات الأكثر شعبية على http://vimawesome.com/ كنقطة انطلاق.

التحرير وسير العمل

أولاً ، بالنسبة لأولئك غير المطلعين على Vim ، يعد محرر نصوص سطر الأوامر بشكل أساسي. لذلك ، ليس هناك بعض التطبيقات التي تنقر نقرًا مزدوجًا وتستخدم الماوس للتنقل فيها. إن التحكم في الفتح والإغلاق والتحرير والحفظ هو كل اختصارات لوحة المفاتيح.

عندما كنت في الكلية ، أجبرنا على العمل فقط في جامعة في وحدة كاملة. بمجرد إجبارك على القيام بشيء من هذا القبيل ، تبدأ أوامر لوحة المفاتيح الشائعة في أن تصبح طبيعة ثانية. إذا كنت تريد حقًا أن تصبح مستخدمًا لـ Vim ، فإن الأمر يتطلب التزامًا حقيقيًا ، لكنني أعدك بأنك ستشعر أنك عبقري مطلق بحلول نهاية الأمر!

بكل صدق ، فإن السبب الذي يجعلني أجد العمل في Vim أقل كفاءة هو أنني لا أعرف ما يكفي من اختصارات لوحة المفاتيح. يمكنني تحرير ملفات منفردة ، والبحث ، والاستبدال ، وما إلى ذلك بكل سهولة ، ولكن عند العمل عبر ملفات متعددة ، أبدأ في فقد المسار. بالنسبة لي ، فيم قليلا أكثر من اللازم.

التخصيص

فيم هو تخصيص مثير للدهشة. إذا بحثت Google عن .vimrc ، فستجد الكثير من الأمثلة لملفات تهيئة Vim التي تم تكوينها مسبقًا. باختصار ، كل شيء ممكن إلى حد كبير في فيم.

أداء

إن مانع الأداء الوحيد في Vim هو المستخدم ... وبكلمات أخرى أنت! إنه خام وسريع قدر الإمكان ، لكن الأداء هو السرعة التي يمكنك بها كتابة الأوامر والتحرك! إذا كنت أحد مستخدمي Vim power ، فهو سريع للغاية!

حكم

Vim هو الخام من محرر كما يمكنك الحصول عليها. يمكن أن تكون بيئة تطوير سريعة وفعالة بشكل لا يصدق إذا كان لديك الصبر لتعلم الأوامر. هناك لعبة رائعة على الإنترنت http://vim-adventures.com/ تساعد على تعليم الأوامر الأساسية ، مثل التنقل بين الملفات باستخدام مفاتيح h و j و k و l.

الحكم النهائي

جميع المحررين أعلاه لديهم إيجابيات وسلبيات. أنا شخصياً أقول أنه في حياتك المهنية لمطورك ، يجب أن تمنح كل واحد منهم فرصة واحدة لمدة أسبوع على الأقل لترى بنفسك ما الذي يعمل وما لا يصلح لك. آمل أن يلخص تلخيص هؤلاء المحررين الأربعة الأكثر شعبية للنصوص نقطة بداية جيدة عند التفكير في إجراء تغيير المحرر.

ماذا افتقدنا؟ وما محررك المفضل؟ اسمحوا لنا أن نعرف في التعليقات أدناه.

نشرت هذه المقالة في الأصل على Codementor بواسطة Matt Goldspink.