سؤال

أنا على ما يرام في تعلم سكالا الآن وأستمتع بها كثيرًا ؛ آمل أن أبدأ المشاريع المستقبلية فيه ، بدلاً من جافا. ما أستمتع به أقل هو دعم IDE ضعيف (نسبيًا). لقد وجدت كل من Idea و Eclipse مع المكون الإضافي Scala (بما في ذلك البناء الليلي) ليكون غير موثوق به أو يصعب استخدامه - أريد شيئًا يمكنني الاعتماد عليه دائمًا. على سبيل المثال ، لم أتمكن من الحصول على تثبيت جديد لـ Eclipse+Plugin لتشغيل اختباراتي على الإطلاق ، أو حتى فتح نافذة محرر!

أنا أفكر في التنقل بين Eclipse/Idea اعتمادًا على ما يناسب المهمة في متناول اليد والأهم من ذلك ، والأهم من ذلك أن يعتمد على IDE لبناء الاختبارات وتشغيلها (Scalatest). هذا غير تميز بالنسبة لي منذ أن كبرت على جافا في Eclipse ؛ كان ترك Eclipse SVN لاستخدام GIT في البداية مشكلة كبيرة. بالنظر إلى أنه ليس لدي وقت فقط لتعلم أداة واحدة ، هل يجب أن تكون النملة ، maven ، buildr ، sbt ، ....؟ كيف يعمل الآخرون؟

هل كانت مفيدة؟

المحلول

لقد استخدمت كل من Maven و SBT مع Scala ووجدت كلاهما سهل الاستخدام.

ومع ذلك ، تشعر SBT بأقرب بكثير من Scala حيث يتم كتابة ملفات البناء الخاصة بها في Scala نفسها (على عكس XML في Maven) و SBT تتميز ببناء ، لديها تجميع واختبار مستمر ، إلخ.

لذلك أنصحك باستخدام SBT لمشروع Scala بسيط.

ولكن في حال كنت ترغب في إنشاء مشاريع Java قياسية مثل War و EJB وما إلى ذلك ، أشعر أن Maven لديه دعم أفضل لهم.

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

نصائح أخرى

سأستخدم SBT مع الفكرة. على الرغم من أنني لم أجربها ، إلا أنني أعلم أن هناك بعض الدعم لدمج SBT والفكرة.

على أي حال ، يعد SBT أساسًا رائعًا لجميع احتياجات بناء واختبار Scala.

تحرير: uuuups. آسف. في الواقع أنا أخطأ في قراءة سؤالك وعلقت فقط على IDES. عندما يتعلق الأمر ببناء المشروع الذي أستخدمه ؛) لأنه مدمج جيدًا في VIM

على الرغم من أنني لا أرغب في القيام بأي مشروع Java بدون IDE ، إلا أنني أقوم حاليًا بمشروع كبير إلى حد ما في همة. أعلم أن هذا "نهج عصر حجري" كبير ولكنه يعمل بشكل جيد.

من ناحية ، سئمت من عربات التي تجرها الدواب/بطيئة/تفتقر إلى دعم Scala لجميع IDEs. جربت Scala و Netbeans و Idea ووجدت العمل معهم (في Scala) مؤلمة إلى حد ما.

من ناحية أخرى ، لدى Scala بعض الخصائص التي تساعد عند العمل مع محرر بسيط: يمكنك الحصول على المزيد من الفئات في ملف واحد ، لذلك عادةً ما أقوم بتحديد حزمة كاملة في ملف واحد لا تنمو مرة أخرى ، نظرًا لأن فئة Scala عادةً ما تكون جدًا (أو حتى للغاية) صغيرة. لذلك عادةً ما يكون لدي ملفان أو ثلاثة ملفات مفتوحة في وقت واحد ، وبالتالي لا أحتاج إلى إدارة حزمة/ملفات.

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

شيء واحد لا يعمل هو الانتهاء التلقائي. ولكن مرة أخرى ، هذا يجعلني أكتب كائنات مقترنة بشكل أكثر فضفاضة ؛)

يدعم BuildR Scala و Java كلغات من الدرجة الأولى ، مع دعم Scalacheck و ScalAspecs ، وبالطبع لديه أيضًا ما يكفي من الإضافات لجعله منافسًا جيدًا لـ Maven.

مجرد إضافة سنتين. أعتقد أنك يجب أن تجرب NetBeans أيضًا. من المفترض أن تكون الأكثر ملاءمة بين اللاعبين الثلاثة الرئيسيين (Eclipse و Idea و NetBeans).

لقد استمتعت كثيرًا مع NetBeans 6.8 و Scala-2.8.0.r22602-B20100720020114

من العدل أن نقول إنني لن أقوم ببرمجة Scala الآن إذا لم يكن ذلك لمكوّن الإضافات NetBeans. لقد قضيت وقتًا لا بأس به من الوقت في محاولة جعلها تعمل بسلاسة مع الآخرين ، ولكن دون نجاح كبير.

يمكنني استخدام NetBeans لتطوير ونملة للبناء المستقل. معلومات عن تكوين ANT لـ Scala هنا:http://scriptlandia.blogspot.com/2007/04/how-to-compile-and-run-scala-program.html

مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top