كيف يمكنني تعلم الكتابة منظم برامج Perl?[مغلقة]

StackOverflow https://stackoverflow.com/questions/410359

  •  03-07-2019
  •  | 
  •  

سؤال

لقد بدأت تعلم بيرل ولكن معظم بلدي سابق خبرة في البرمجة في لغات التي تؤكد على وجوه المنحى البرمجة مثل C# و Java.كل بيرل أمثلة لقد وجدت تميل إلى أن تكون طويلة وظيفة واحدة برامج أجد نفسي في كتابة الكود بنفس الطريقة.هل هناك أي موارد أو دروس الكتابة للصيانة تنظيما جيدا البرامج ؟

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

المحلول

أولا، بغض النظر عن أي نوع من بيرل برمجة تفعلونه، ستجد على الأرجح بيرل :: الناقد للا تقدر بثمن. أداة سطر الأوامر هي حتى الآن الأكثر ملاءمة للحصول على ردود الفعل على التعليمات البرمجية الخاصة بك، لكنك هناك أيضا اجهة ويب حيث يمكنك تحميل كود بيرل بك والحصول على لحظة، وردود الفعل الآلية. لاحظ أن بيرل :: الناقد لن يعلمك حسن <م> هيكل ، ولكنها سوف تساعد على تحسين بك النمط بشكل عام، وتوجيه كنت بعيدا عن بعض الأخطاء الشائعة.

لتذهب مع بيرل :: الناقد، أنصح الحصول على نسخة من بيرل أفضل الممارسات (PBP). أنه يحتوي على الكثير من المعلومات التفصيلية التي استند بيرل :: الناقد. حتى لو كنت لا توافق على مبادئ توجيهية معينة في الكتاب، فإنه يجعلك <م> التفكير حول كيفية الرمز، وهذا أمر بالغ، قيمة للغاية. لم يكن لديك لقذيفة من أصل المال لكتاب، ولكن مجاملة بعضهما البعض بشكل جيد للغاية، وهناك مناقشات مطولة ستجد في PBP أنك لن تحصل عليه من بيرل :: الناقد.

إذا كنت قد عملت بالفعل مع لغات أخرى OO وتصميم OO، وستجد على الأرجح موس أن يكون انتقال مريحة. موس غير مستقر للغاية، مدعومة بشكل جيد للغاية، ولديه مجتمع ضخم وفعال (خاصة عبر IRC). موس يلغي تقريبا كل النصائح OO بيرل الموجودة هناك، بما في ذلك بلدي. كائن تصميم المنحى هو شائع لسبب ما. فمن المنطقي لكثير من المشاريع، وليس هناك سبب <م> لا لاستخدامه في بيرل.

وشخصيا، وجدت تحسن كبير في بلدي هيكل البرنامج الخاص عندما انتقلت إلى نموذج التنمية المدفوعة باعتبارات الاختبار. وبموجب هذا النموذج، وكسر مشكلة أسفل إلى وحدات صغيرة، واختبارها بسهولة أمر ضروري. تبدأ اختبار :: دروس إذا كنت جديدا على اختبار في بيرل ثم ابحث في بعض الموارد الأخرى اختبار أو <وأ href = "http://books.perl.org/book/236 "يختلط =" noreferrer "> الكتب إذا كنت ترغب في معرفة المزيد. استخدام أداة مثل جمعة :: تغطية أو <وأ href = "HTTP: // search.cpan.org/perldoc؟Devel::NYTProf "يختلط =" noreferrer "> جمعة :: NYTProf لمعرفة ما حالات الاختبار الخاصة بك هي ضرب وما سنا. وبعد التعليمات البرمجية التي من الصعب لاختبار وغالبا ما يكون علامة على هيكل الفقراء.

وبعد كل هذا، وأفضل معلم حتى الآن هو أن تتورط مع مشروع بيرل القائمة مع المساهمين ذوي الخبرة. انظر كيف تفعل أشياء، وعند تقديم مساهمات، والتفكير في نصائحهم. إذا كنت ترغب في تطبيق حقيقي مع قيمة باردة الهائلة التي يبدو أنه قد امتص خير وألمع من المجتمع بيرل، ثم أوصى التورط مع <لأ href = "http://padre.perlide.org/" يختلط = "noreferrer"> بادري، وبيرل محرر .

إذا (لأي سبب كان) لا يمكنك الحصول على المشاركة مع مشروع آخر، ثم النظر في نشر نماذج التعليمات البرمجية للمجتمعات مثل تجاوز المكدس، أو <وأ href = "http://perlmonks.org/" يختلط = "noreferrer "> PerlMonks . والأفضل من ذلك، إذا كنت يمكن أن تجعل التعليمات البرمجية المصدر المفتوح، ثم القيام بذلك، والحصول على ردود فعل. يتم تعلمها جميع لغات البرمجة بشكل أفضل مع الآخرين الذين هم على دراية بها بالفعل، وبيرل ليست استثناء هنا.

قد تفعله ماجيك جيد مع بيرل،

بول

نصائح أخرى

إذا كنت تعلم OO بيرل قد نقل كذلك إلى الشيء الكبير المقبل والبدء في تعلم موس .

وموس هو نظام كائن ما بعد الحداثة لبيرل 5 التي تأخذ الملل من الكتابة وجوه المنحى بيرل. انها تقترض جميع ميزات أفضل من بيرل 6، CLOS (و<لأ href = "HTTP: / /en.wikipedia.org/wiki/Lisp_٪28programming_language٪29 "يختلط =" نوفولو noreferrer "> اللثغة )، <وأ href =" http://en.wikipedia.org/wiki/Smalltalk "يختلط = "نوفولو noreferrer"> من Smalltalk ، جافا، BETA و <لأ href = " http://en.wikipedia.org/wiki/Objective_Caml "يختلط =" نوفولو noreferrer "> لغة كامل الموضوعية ، روبي وأكثر من ذلك، في حين لا تزال تحتفظ فيا لجذوره بيرل 5.

وموس هو إنتاج 100٪ على استعداد وفي الاستخدام الكثيف في عدد من النظم وتزداد كل يوم.

إذا كنت تعرف كيفية كتابة البرامج منظم بشكل جيد وكنت تريد أن تكتب بشكل جيد منظم بيرل، ولكن العائق الوحيد لذلك هو وفرة القديمة، crufty، والأمثلة السباغيتي رمز المنتشرة في جميع أنحاء الشبكة ورفض للموت ...

وتجاهل الأمثلة. أو على الأقل تجاهل بنيتها الفقراء ويلتفت إلا إلى بت النحوية الصغيرة التي كنت بحاجة لمعرفة من.

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

إذا كنت تشعر أنك بالفعل تعلم أساسيات وترغب في تحسين هيكل البرنامج ، ثم أقترح هذه الكتب ربما من الأفضل أن تقرأ في هذا النظام:

  • المتوسطة Perl -- وربما هذا هو المكان المناسب للبدء لما كنت طالبا ؛ يغطي تطوير واستخدام Perl modules (أساسي من بنية جيدة) ، مراجع ، هياكل البيانات المعقدة, OO, وأكثر من ذلك

  • بيرل المسعف:تحويل التعليمات البرمجية القديمة -- يوضح منظم جيدا بيرل من خلال عرض كيفية إصلاح سوء التنظيم Perl

  • فعالية البرمجة Perl:الكتابة أفضل برامج Perl -- كلاسيكي ، ولكن لا تزال مفيدة ، كامل Perl التعابير التي سوف تساعدك على كتابة المزيد بيرل العش بيرل;ليس كثيرا على OO, ولكن يغطي أكثر جوهرية الترميز الهياكل لجعل رمز أكثر إيجازا و بعد أكثر تعبيرا.أعتقد أن هذا الكتاب الذي جعلني من بيرل محو الأمية بيرل الطلاقة

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

وبعيدا عن المصادر المذكورة أعلاه وإنني أوصي بشدة الكتاب "العالي للطلب بيرل" مارك جيسون دومينوس. إذا كنت لا تستطيع تحمله شرائه، وإلا فإن المؤلف قد وضعت الكتاب على موقعه على الانترنت مجانا كما هو الحال في البيرة الحرة، <وأ href = "http://hop.perl.plover.com/#free" يختلط = "نوفولو noreferrer "> العالي مجاني طلب بيرل . للحصول على إصدار PDF: تحميل URL المباشر (1.9 MB)

وتحرير:

ونسيت أن أذكر أنماط بيرل التصميم. و PerlDesignPatterns الموقع هو موردا جيدا جدا أو إشارة لتعلم أنماط التصميم بيرل.

وشخصيا، أنا لم أكتب جيد بيرل OO حتى بدأت تعلم جافا. أنصحك قضاء على كمية صغيرة من الوقت OO التعلم بلغة OO الحقيقية وتطبيق ما تتعلمه على بيرل.

لمكان أن إرشادهم، PerlMonks عبارة GREAT.

وكتابة بيرل الطريقة التي سيكتب C، على الرغم من أنك يجب الاستفادة من بعض الأشياء تبدأ الكتل وحدات. يجب أن يكون تنسيق بحيث يبدو أكثر أو أقل مثل الطراز القديم K & R C التعليمات البرمجية.

وأما عن الهيكل، تخطي الاشياء OO وأسلوب أنها ADTS بدلا من ذلك:

http://en.wikipedia.org/wiki/Abstract_data_type

وأساسا القيام بذلك باستخدام هياكل البيانات حيث كنت قد استخدمت الكائنات في OO (وفصل من خوارزميات إلى وظائف خاصة بهم).

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

إذا كنت تدير ذلك، رمز يمكن أن تكون قابلة للقراءة وسهلة الفهم.

وبول.

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