سؤال

لدي مجلد مع كل مشاريعي، بلغات مختلفة. ثم تلقيت المكتبات التي قد أقوم بها في النهاية في التعليمات البرمجية (معظمها على ملفات جرة). أنا متأكد من وجود ممارسة مقبولة، أليس كذلك؟ ماذا يفعل المهنيون؟

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

المحلول

بالنسبة لي، إنها قائمة الدلائل التالية تحت جذر المشروع:

  1. SRC لملفات .java، باستخدام الحزمة التسلسل الهرمي
  2. ليب للجرار الحزب الثالث، ما لم أحصل عليها من مستودع (على سبيل المثال، توزيعة الربيع)
  3. اختبار لملفات اختبار Junit أو TESTNG
  4. الموارد أو التكوين ل .properties، .xml، إلخ.
  5. WEB إذا كان تطبيق ويب يحتوي على Web-INF وجميع الحاضرين
  6. مستندات إذا كان لدي أي وثائق

أحب الهيكل الذي تطور الناس الربيع.

يمكنني استخدام Intellij، لذلك أريد أي هيكل يجب أن ألعبه بشكل جيد معه.

لدي دليل / عمل يحافظ على نسخ العمل التخريبية الخاصة بي.

نصائح أخرى

هذا يعتمد حقا على الأدوات التي تستخدمها، وكيف تريد تنظيمها.

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

أعتقد أنك سوف تحتاج إلى معرفة ما يعمل الأفضل بالنسبة لك.

لدي مجلد يسمى العمل. تحت هذا المجلد، لدي مشاريع.

يحتوي المشروع على جميع البرامج المتقدمة، دليل واحد لكل واحد، مع اسم تقليدي. كل الدليل عبارة عن مجموعة كاملة من البازار، وهي علامات تتوثيق وجذع وفروع (تراث أسلوب SVN القديم الخاص بي، ربما سأتغير قريبا).

أنا أيضا تطوير جمل محددة للمشاريع. يتم تنزيل كل وقت تشغيل وتثبيته عبر MICEFILE تقوم بتنزيلات وتجميع كل شيء هناك حاجة إلى كل شيء (LIBS، مترجم مترجم، ومبرج في أسوأ حالة سيناريو يتطلب بعض Lib إصدارا محددا منه).

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

بالنسبة للنشر والاستخدام، لدي برنامج نصي ثعبان يذهب إلى كل مشروع SUBDIR وتنزيل التبعيات، ويؤدي إلى كل شيء، والحزم من ذلك كملف Nutz (نوع من ملف JAR للأداة المساعدة لمدير حزمة Chestnut، أيضا منتجا من الألغام).

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

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

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

لدي كل شيء في مستودعات تحكم الإصدار (NB: مجموعة مطمئنة للغاية من الملفات التي يجب أن يكون لها، واختبار النسخ الاحتياطية من). على آلات Dev الخاصة بي، لدي مجلد مشاريع لفحص العمل الحالي / الحديث، ومجلد مشاريع / أرشيف للخروجات القديمة التي لا أعمل حاليا. عندما أحتاج إلى مكتبات الطرف الثالث لمشروع، يذهبون إلى مجلد ثالث آخر داخل كل مشروع. يتم تتبع هذه أسواد GIT، والتي تعطيني الإصدارات البرمجية الدقيقة المعروفة للعمل مع هذا المشروع، ولكن أيضا من السهل التحديث في مشاريع مختلفة، اختراق إذا كانت بعض المكتبة لا تفعل ما أحتاجه تماما، إلخ. الفكرة مع ذلك هو أن كل مشروع يجب أن يكون مرفقا بذاته ومحميه بين الآلات بقدر ما معقول للموثوقية إلخ.

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