توسعه عملی
چه برنامه نویس پی اچ پی باشید یا طراح وب و فعال در طراحی سی اس اس, ابزارهایی وجود دارند که می توانند کار شما را آسانتر کنند تا تمرکز شما بیشتر به کیفیت معطوف شود. این سری "توسعه عملی" با محوریت استفاده از پی اچ پی استورم به عنوان محیطی برای توسعه نوشته شده است. این سری در هفت عنوان تهیه شده است
راههای رسیدن به خدا زیاد است
تلاش ندارم تا بگویم که نکاتی که در این مقاله مطرح میشوند بهترین یا تنها راه حلهای موجود هستند. این مقاله تنها بر اساس تجربیاتم (*) نوشته شده اند. این مقاله بر اساس سیستم عامل ویندوز نوشته شده اما میتواند در سایر سیستمها نیز به طرز مشابهای اعمال شود.
عناوین
هر کدام از عناوین بر روی یک جنبه از توسعه نرم افزار تاکید دارد و شامل یک مقاله جداگانه در هر ماه خواهد شد.
آمادهسازی
آمادهسازی محیط کار و ابزارها
یک ساختار (شاخه) تعریف کنید، با "شاخه های پروژه" ای درون آن که اجازه میدهند تا چندین پروژه/سایت ایجاد گردند. یک «شاخه پروژه» یک محل مرکزی است که شامل تمام دادههای مربوط به یک پروژه میشود و این امکان را میدهد تا به راحتی تمامی دادهها آرشیو شوند یا به سیستمی دیگر انتقال یابند.
از پیوندها ( یا نرم پیوندها Softlink) برای شاخهها و فایلها استفاده کنید ( بر روی سیستم ویندوز ** ) تا منابعی که در خارج از شاخه پروژه هستند در درون آن قابل استفاده گرند. یک پیوند به بیان ساده امکان دسترسی از چندین محل مختلف به یک فایل را میدهد.
پروژه
فایلهای خود را مدیریت کنید و انتشار دهید
محیطهای یکپارچه توسعه (IDE ها( مانند Eclipse، Netbeans، PhpStorm و سایرین میتوانند به افزایش بهرهوری کمک کنند. این نرم افزارها در سطوح مختلفی، از زبانهایی مانند PHP ، جاوا اسکریپت و HTML پشتیبانی میکنند و امکانات مختلفی مانند برجسته کردن (highlighting)، ویرایش، بازرسی (inspection)، بازسازی (refactoring)، استانداردهای کد نویسی جوملا! و افزونه ها را فراهم می کنند. در انتها تصمیم با خودتان است، ما در اینجا محیط PhpStorm را انتخاب کردهایم.
شکلدهی
استفاده از CSS و پیش پردازشگرهای CSS
شکل دهی به وب سایت با کمک شیوهنامههای CSS روش ابتدایی طراحی وب سایت است. در حالی که CSS قدرتمند است، زمان زیادی از تولد آن میگذرد. تکنیکهای مختلفی از زبانهای برنامه نویسی مختلف وام گرفته شدهاند تا قابلیتهای CSS را بهبود بخشند. در سالهای گذشته، شاهد رشد "پیش پردازشگر"ها یا pre-precessors بودیم، از جملهSyntactically Awesome Style Sheets یا SASS و نیز Leaner CSS یا LESS. هر کدام از اینها نقاط قوت و ضعف خود را دارند و مدام در حال پیشرفت هستند و در نهایت آنها کد استاندارد CSS را به خروجی میدهند. بهتر است نرمافزار محیط توسعه یا IDE خود را برای استفاده از این تکنیکها به کار ببرید.
عیبیابی Debugging
ببینید در کد چه خبر است
تلاش و پیشرفت «مستندات جوملا!» در سالهای گذشته بی نظیر بوده است. امکان اینکه ببینید به طور زنده چه اتفاقی در کدهای شما (PHP یا جاوااسکریپت) میافتد قابلیتی بسیار کاربردی است و ارزش آن را دارد که زمانی را برای راهاندازی آنها بر روی محیط محلی (PC یا Mac خود) و سرور بگذارید. عیبیابی یا Debugging به شما اجازه می دهد تا امکان توقف اسکریپتی در محلی مشخص از کد را داشته باشید، سپس متغیرها را وارسی و تغییر دهید، و همه اینها بدون اینکه کد را عوض کنید. آن را به مانند Firebug یا Developer Tool اما برای کدنویسی تصور کنید.
کنترل نسخه
تغییرات را مدیریت کنید، به عقب برگردانید و همکاری کنید
یک سیستم کنترل نسخه (VCS یا Version/Revision Control System) برای دههها دوست توسعه دهندگان نرم افزار حرفهای بوده است. در این زمینه میتوانید از CVS، Subversion، GIT استفاده کنید. در حال حاضر احتمالا بیشترین استفاده در دنیای متن باز (و جوملا) سیستم GIT است. نرم افزار محیط یکپارچه توسعه میتواند شما را در کارهای ساده VCS یاری کند.
ساخت Building
آرشیوهای قابل نصب و سایر کارها
هنگامی که افزونه (یا پکیچ) خودتان را توسعه میدهید، در انتها نیاز دارید تا یک آرشیو جهت نصب روی سایت خودتان و یا ارسال به «شاخه افزونههای جوملا! یا JED» ایجاد کنید. از ابزارهای ساخت مانند make، ANT، یا PHING استفاده کنید. PHING نسخه افزونه ساز PHP از سیستم ANT است و به صورت ذاتی از PhpStorm پشتیبانی می کند.
تست
تست واحدها، تست اتوماتیک و تست رابط کاربر(UI)
"همه" درباره آن حرف میزنند اما تنها تعداد کمی آن را انجام می دهند. دلایل محکمی برای استفاده از تستهای اتوماتیک وجود دارد. مفهوم انجام تستهای اتوماتیک ممکن است واضح به نظر بیاید، اما اینکه چطور در عمل و در پروژههای خود قادر به انجام این کار شوید چیز دیگری است، به خصوص وقتی به بحث رابط کاربری مربوط شود.
و در انتها
تصمیم داریم تا تمام عناوین بالا را مستند کرده و در نشریات آینده از جامعه مجلات جوملا عرضه کنیم. اگر هر نظر یا پیشنهادی دارید با ما در میان بگذارید.
* این مقاله ترجمه ای است از مقاله Practical Development نوشته Marco Dings
** می توانید نسخه ویندوز "پیونددهی فایلها" را از این آدرس http://schinagl.priv.at/nt/hardlinkshellext/hardlinkshellext.html دریافت کنید.
ترجمه از حامد الوند، برنامه نویس و توسعه گر جوملا
برای تماس با من می توانید از سایت Rapidlearn اقدام کنید.
Some articles published on the Joomla Community Magazine represent the personal opinion or experience of the Author on the specific topic and might not be aligned to the official position of the Joomla Project
By accepting you will be accessing a service provided by a third-party external to https://magazine.joomla.org/
Comments