Використання стандартів кодування з WordPress
Я багато пишу про стандарти кодування в WordPress і про важливість, яку, на мою думку, вони мають для окремих людей, команд і роботи з основною програмою, якою є сам WordPress.
За останній рік чи близько того я відійшов від роботи переважно зі стандартами кодування WordPress і почав використовувати для кодування стандартні рекомендації PHP .
Зауважте, що я не сказав, що відмовився від стандартів кодування WordPress, і не ставив рекомендації PSR вище за них, але у мене є причини, чому я використовую кожен із них. І для всіх, хто працює з проектами на основі WordPress, я вважаю, що важливо розуміти, коли доцільно використовувати кожен із них.
І це мета цієї публікації.
Стандарти кодування з WordPress
Перш ніж обговорювати кожен із варіантів стандартів кодування, я хочу чітко пояснити, що ніщо з того, що я кажу, не слід сприймати як жорстке правило. У кращому випадку, можливо, емпіричне правило. У гіршому випадку повністю ігнорують, чи не так? 🙃
Серйозно, однак, незважаючи на звичайні спроби й аргументи щодо аргументації переваги одного стандарту над іншим, я дотримуюся думки, що є час і місце, коли кожен із них слід використовувати.
На момент написання цієї статті я працюю над двома проектами і одним із використанням стандартів кодування WordPress; інші використовують PSR.
Ось у чому річ:
Рішення залежить не від того, який набір стандартів кодування найкращий. Люди люблять сперечатися з цього приводу, і це для них добре. Я не. Натомість я намагаюся бути якомога прагматичнішим.
І для цього я намагаюся використовувати набір запитань для прийняття рішень щодо того, які стандарти кодування використовувати
Фільтр для прийняття рішень
Перш ніж я навіть перейду до розмови про два типи стандартів, важливо визнати, що існує процес мислення – фільтр, через який – ви можете пропустити всі свої ідеї, щоб прийняти найбільш обґрунтоване рішення щодо вашого проекту.
Я зробив усе можливе, щоб визначити порядок, у якому я розглядаю, який набір стандартів використовувати, і я ділюся ними тут. Без особливого порядку.
- WordPress. Ви пишете щось, що має бути сумісним із якомога більшою кількістю інсталяцій WordPress (не зважаючи на версії PHP)?
- WordPress Ви працюєте над підтримкою проекту, який був написаний для старішої версії PHP або того, що було написано з використанням стандартів кодування WordPress?
- WordPress. Ви успадкували проект або підтримуєте проект, у якого немає бюджету для рефакторингу кодової бази?
- WordPress або PSR. Ви працюєте з командою, яка використовує це як свій основний набір стандартів кодування?
- PSR. Чи можете ви переконати свого клієнта використовувати PHP7+?
- PSR. Чи маєте ви повний контроль над середовищем, у якому розгортається проект?
- PSR. Чи є у вас проект, який раніше був написаний на старішій версії PHP і має бюджет на новіший сервер і рефакторинг?
- PSR. Ви хочете писати в кодовій базі, яка допоможе перенести ваші навички PHP у більш сучасну епоху, а також принести WordPress разом із цим?
І, нарешті, ще одне запитання, яке я хотів би задати:
Які стандарти кодування використовуються у вашій системі, наскільки легко налаштувати IDE? Дайте час, щоб налаштувати його, і відповіді на запитання вище скерують, який набір стандартів ви використовуєте.
Зрештою, мета полягає в тому, щоб максимально легко визначити, який стандарт використовувати.
Останній пост?
Перш ніж закінчити цю серію, я хочу надати список додаткових ресурсів, які, на мою думку, будуть корисними для тих, хто певною мірою працює з WordPress.
Можливо, ви досвідчений розробник, можливо, ви тільки набуваєте стандартів, а можливо, ви десь посередині.
Незважаючи на це, для кожного з нас є щось цікаве, і якщо я зможу поділитися якомога більше інформації, щоб допомогти вам стати кращим незалежним розробником WordPress, тоді я досягну частини мети, яку поставив у цій конкретній серії. .
Наразі подумайте про наведені вище стандарти кодування та подивіться, чи не допоможе це в управлінні деякими з ваших існуючих проектів.
Примітка про об’єктно-орієнтоване програмування
Зауважте також, що на початку цього тижня я почав – або продовжив, залежно від того, як довго ви читали цей матеріал – об’єктно-орієнтоване програмування в WordPress. Отже, якщо ви також зацікавлені в цьому, ви можете почати з цієї публікації (оскільки вона також посилається на деякі інші).