Які інструменти я можу використовувати, щоб допомогти мені в розробці Joomla?


26

Я новачок у розробці Joomla, і я хотів би знати, які інструменти та / або програмне забезпечення можуть допомогти мені у розробці як резервного, так і фронтального сайту Joomla. Це також включає будь-яке майбутнє обслуговування та оновлення в майбутньому.


1
Що ж, ми хочемо зробити цю сторінку вікі, повною корисних інструментів, які більшість із нас використовує для Joomla та загального розвитку / адміністрування. Відповіді ми розділили за категоріями інструментів. Усі користувачі можуть додавати, оновлювати інформацію у відповідях нижче. На це питання можна посилатись і в інших відповідях, особливо для нових користувачів - і я думаю, що це буде ласкаво просимо.
FFrewin



Відповіді:


17

Розвиток

Загальні

  • Composer
    Composer - це інструмент для управління залежностями в PHP. Це дозволяє оголосити бібліотеки, від яких залежить ваш проект, і він буде керувати (встановлювати / оновлювати) їх для вас.

  • Joomlatools Composer Installer
    Цей плагін Composer встановить розширення у вашу установку Joomla.

  • FOF2 (Framework on Framework 2)
    FOF - це швидка структура розробки додатків, включена в Joomla! Це розширює Joomla! Платформа замість того, щоб замінити її, яка має власну роздвоєну та розширену версію класів MVC, зберігаючи чітку подобу існуючих Joomla! і забезпечує можливості HMVC.

  • FOF3 (Framework on Framework 3) FOF3 покращує FOF2 / F0F2 та пропонує нові потужні інструменти для Joomla 3. як новий dataModel, використання просторів імен, використання контейнерів DI, автоматичне завантаження компонентів для класів, будівельник будівельних лісів для швидкого автоматичного створення кадру для ваш компонент та багато іншого . ПОПЕРЕДЖЕННЯ FOF 3.x не є сумісним назад з FOF 2.x та 1.x.

    • FOF3-Basic Приклад привіт світового типу для Akeeba FOF3, написаний як інструкція розробника для створення Joomla! компонент з нуля.
  • Nooku Framework
    Framework для побудови розширень Joomla з меншим кодом.



Генератори розширень

  • generator-joomla-компонент (Компонентний генератор для Yeoman )
    generator-joomla-компонент дозволяє швидко та без особливих зусиль викреслити новий компонент Joomla, використовуючи рекомендовану схему дизайну MVC та стандарти кодування.

    До них належать:

    • Інтернаціоналізація мовних файлів
    • Вкладки для відступів
    • Змінна позначення CamelCase
    • Правильна архітектура MVC
    • Заглушки PHPDocumentor для кожного методу, а також док-блоки на рівні сторінки
    • Використовує 'більше ", тому що саме це використовує офіційна бібліотека Joomla
  • generator-joomla-admin-template (Генератор шаблонів адміністратора для Yeoman )
    generator-joomla-admin-template - це генератор yeoman, який дозволяє автоматично генерувати шаблони адміністратора joomla для вашого бек-енду.

  • Творець компонентів Joomla (вільний доступ обмежений однією таблицею баз даних)
    Створення компонентів Joomla дозволяє за лічені хвилини генерувати повністю функціональний, готовий до встановлення спеціальний компонент Joomla. Щодня економить розробники Joomla сотні годин на розробку.

  • Компонент Builder
    Компонент Builder для Joomla, який є дуже просунутим, по-справжньому здатний будувати надзвичайно складні компоненти за частину часу.

  • Joomla Module Generator від XDSoft
    Joomla Module Generator від XDSoft спрощує процес і економить ваш час на розробку модуля для Joomla. Він створює структуру, створює всі необхідні каталоги та файли, генерує дійсний основний XML-файл. В результаті ви отримуєте готовий до встановлення пакет zip.

  • Генератор плагінів Joomla від ExtStore
    Joomla! Plugin Generator від ExtStore генерує простий порожній плагін з файлами, необхідними для швидкого запуску нового плагіна Joomla. Заповнивши швидку форму з іменем, автором та описом плагіну, ви отримаєте готовий до встановлення пакет zip, включаючи мовні файли (en-GB).



Документи та ресурси


Я розробив безкоштовний генератор модулів, який доступний на моєму веб-сайті. Хтось міг би проти мене додати це до цього?
Лодер

@Лодер Ні, зовсім не.
Рене Корсс

15

Середовища:

  • Wamp (Windows)
    WampServer - це середовище веб-розробки для Windows. Це дозволяє створювати веб-додатки за допомогою Apache2, PHP та бази даних MySQL. Поряд, PhpMyAdmin дозволяє легко керувати своїми базами даних.

  • Mamp (Mac: І спільна, і комерційна версії)
    MAMP встановлює локальне середовище сервера за лічені секунди на вашому комп'ютері Mac OS X. Він поставляється безкоштовно (спільноти) та легко встановлюється. MAMP не буде ставити під загрозу будь-яку існуючу установку Apache, яка вже працює у вашій системі. Ви можете встановити Apache, PHP і MySQL, не запускаючи скрипт, або змінюючи будь-які файли конфігурації!

  • Лампа (Linux)

  • Xampp (доступний для всіх платформ)
    XAMPP - це абсолютно безкоштовний, простий в монтажі дистрибутив Apache, що містить MySQL, PHP та Perl. Пакет з відкритим кодом XAMPP був створений таким чином, щоб бути надзвичайно простим в установці та використанні.

  • Vagrant
    Vagrant - це інструмент для створення повних середовищ розвитку. Завдяки простому у використанні робочому процесу та зосередженню уваги на автоматизації, Vagrant скорочує час налаштування середовища розробки, збільшує паритет розвитку / виробництва та змушує «працювати на моїй машині» виправданням минулого.

    • Joomlatools Vagrant box (Віртуальна машина зі стеком Лампа)
      Цей проект автоматизує налаштування середовища розробки Joomla. Він здатний запускати повнофункціональний стек LAMP з однією командою, щоб ви могли швидко почати працювати над своїми проектами Joomla.

  • Oracle VM VirtualBox
    VirtualBox - це потужний, багатофункціональний продукт віртуалізації як для підприємств, так і для домашнього використання, він є у вільному доступі як програмне забезпечення з відкритим кодом (GNU GPL).

    VirtualBox працює на Windows, Linux, Macintosh та Solaris, і підтримує велику кількість гостьових операційних систем, включаючи, але не обмежуючись ними, Windows (NT 4.0, 2000, XP, Server 2003, Vista, Windows 7, Windows 8), DOS / Windows 3.x, Linux (2.4, 2.6 та 3.x), Solaris та OpenSolaris, OS / 2 та OpenBSD.

  • Підсилювачі (доступні для всіх платформ)
    AMPPS - це простий в установці стек програмного забезпечення Apache, Mysql, PHP, Perl, Python та Softaculous з автоматичним встановленням, який можна використовувати на настільних комп'ютерах та офісних серверах.

Системні вимоги Joomla3


Ніколи не використовував його, але я починаю використовувати його зараз для іншого проекту, і це виглядає багатообіцяюче, коробка для бродяжок
fruppel

@fruppel - Ах приємно. Якщо я правильно пам'ятаю, хтось давно питав про віртуальну машину. Будь ласка, відредагуйте це будь-якими рекомендаціями. FFrewin запропонував це стати вікі-спільнотою для користувачів, нових для Joomla
Lodder

@FFrewin - Можливо, кращі відповіді будуть краще. Можливо, якщо на кожен розділ (Розвиток, редактори тощо) були окремі відповіді, то користувач міг би додати опис та думку для кожного
Lodder

1
@Lodder: Добре домовлено, зрештою ми розділимо відповіді, класифіковані за розділами. Наразі я додам коротку посилання на 2 інструменти БД у відповідь вище.
FFrewin

Це чудовий ресурс і має стати базовою відправною точкою для всіх, хто цікавиться розвитком Joomla (або будь-якого веб-розробника!). Деякі з них для мене є новими, і я збираюся розслідувати! Дуже вдячний :)
jonboy

9

Тестування:

Якщо ви плануєте написати значну кількість PHP чи JavaScript коду, всі стандартні засоби розробки PHP та JavaScript будуть корисні, незалежно від того, що ваш код буде працювати в середовищі Joomla, а не окремо.

З боку PHP:

  • XDebug : розширення PHP для розробників, яке дозволяє виконувати такі дії, як крок через код за рядком, щоб допомогти вам знайти помилки. Безцінний.
  • phpUnit : інструмент для тестування. Напишіть тести phpUnit, щоб переконатися, що ваш код працює
  • PHPMD : PHP "Детектор безладу ". Вказує код низької якості. (Дуже багато відомих проектів могли б отримати користь від використання цього інструменту з самого початку).
  • Стандарти кодування CodeSniffer та Joomla: застосовує практику чистого коду та полегшує читання коду для нових розробників.

З боку JavaScript:

  • Різні функції браузера DevTools. Усі основні браузери зараз мають хороші інструменти для розробників. Firefox також має додатки Firebug як плагін на додаток до вбудованих інструментів розробки, що також варто мати.
  • JSHint : вказує на неякісний код та потенційні помилки.

Є багато інструментів на кшталт цих, але очевидно, це залежить від того, наскільки серйозним буде ваше кодування - якщо ви просто збиваєте кілька десятків рядків коду, то тут не буде великої ваги, що псується з більшою частиною вище. Але з іншого боку, якщо ви плануєте написати плагін Joomla з досить великим розміром та підтримувати його протягом певного часу, то наведені вище інструменти будуть вам безцінні для того, щоб допомогти вам його добре написати.


8

Frontend (шаблон, рамка тощо):

  • UIKit (фреймворк)
    UIKit лише пару років, але він став надзвичайно популярним. Це легкий і модульний фронтальний фреймворк для розробки швидких та потужних веб-інтерфейсів, який використовується для всіх шаблонів Yootheme, починаючи з Warp 7. Більшість Javascript переміщені в окремі компоненти, тобто ви можете завантажувати кожен, коли і де ви хочу.

  • Bootstrap (фреймворк)
    Bootstrap є надзвичайно популярною, якщо не найпопулярнішою рамкою HTML, CSS та JS для розробки чуйних веб-сайтів. Bootstrap робить швидку та простішу розробку передових веб-сайтів. Він створений для людей усіх рівнів кваліфікації, пристроїв будь-яких форм та проектів усіх розмірів, і, перш за все, це відкритий код, тому його розміщують, розробляють та підтримують на GitHub громада. Версія 2.3.2 (вже не підтримується офіційно) також постачається разом з Joomla 3.x і використовується для шаблону Protostar за замовчуванням.

  • Yootheme (постачальник шаблонів)
    Yootheme - один з найпопулярніших постачальників шаблонів Joomla. Вони щомісяця створюють новий шаблон (використовуючи свою передню частину UIKit) щомісяця з унікальним дизайном.

  • Фонд (фреймворк)
    Фонд - це сітка чуйних фреймворків, що спрощують розроблення чудових веб-сайтів, додатків та електронних листів, які чудово реагують на будь-якому пристрої. Фонд є семантичним, читабельним, гнучким і повністю настроюється.
  • Semantic UI (фреймворк)
    Semantic - це рамка розробки, яка допомагає створювати красиві, чуйні макети за допомогою зручного для людини HTML.
  • Pure від Yahoo (набір невеликих, чуйних модулів CSS)
    Pure призначений для відправної точки для кожного веб-сайту чи веб-програми. Pure піклується про всі роботи CSS, які потрібні кожному сайту, не роблячи його вигляд cookie-cutter:

    • Адаптивна сітка, яку можна налаштувати під ваші потреби.
    • Надійна база, побудована на Normalize.css, щоб вирішити проблеми сумісності веб-переглядачів.
    • Послідовно стилізовані кнопки, які працюють з елементами.
    • Стилі для вертикальних і горизонтальних меню, включаючи підтримку меню, що випадає.
    • Корисні вирівнювання форми, які чудово виглядають на всіх розмірах екрана.
    • Різні загальні стилі таблиці.
    • Надзвичайно мінімалістичний вигляд, який легко легко налаштувати.
    • Чуйний за замовчуванням, з невідповідним варіантом.
    • Надзвичайно малий розмір файлу: 4,5 КБ мінімізований + gzip.

Ура для розлуки :). Почну трохи писати інформацію для цих Рамок та Середовищ
Лодер

@Lodder: Так, я хотів опублікувати ці інструменти db з додатковою інформацією, і подумав, що зараз час для розділення відповідей. Я думаю, що я трохи переплутав це за допомогою посилання LAMP в розділі "Середовища". Чи можете ви переглянути та додати своє попереднє посилання?
FFrewin

1
Звичайно, я думаю, що Lamp потрібно встановлювати через Ubuntu і не схоже на звичайне завантажуване програмне забезпечення. Тому я припускаю, що за посиланням потрібно перейти до підручника. Підтверджую це, проте
Лодер

7

Інструменти веб-переглядача:

  • Adobe Edge Inspect CC (безкоштовно)
    Edge Inspect є важливою програмою для веб-розробників та дизайнерів, яким потрібно переглянути їх вміст на кількох мобільних пристроях. Бездротовим чином підключайте до комп’ютера кілька пристроїв iOS та Android, зніміть знімки екрана з будь-якого підключеного пристрою та переглядайте результати в режимі реального часу від змін у HTML, CSS та JavaScript.

  • Firebug (Firefox) (Зверніть увагу, що для іншого браузера є версія Lite, але я рекомендую використовувати вбудовані інспектори)

  • ColorZilla (Firefox та Chrome)


Я рекомендую веб-розробнику як ще одне чудове розширення для firefox (та chrome). Це дуже схоже на firebug, але воно структурується по-різному, тому в використанні обох є деяке значення.
TryHarder

7

Редактори:

  • Блокнот ++ (для надзвичайної швидкості та простоти)
  • Атом
  • Піднесений текст (надзвичайно швидкий та запакований функції)
  • PhpStorm (Повний PHP IDE)
  • Netbeans IDE
    Швидко та легко розробляйте настільні, мобільні та веб-додатки з Java, HTML5, PHP, C / C ++ та багато іншого. NetBeans IDE - БЕЗКОШТОВНА, з відкритим кодом та має всесвітнє співтовариство користувачів та розробників.

  • Eclipse PDT (Інструменти розробки PHP)
    Проект PHP IDE забезпечує рамки інтегрованого середовища розвитку PHP для платформи Eclipse. Eclipse IDE - БЕЗКОШТОВНО та з відкритим кодом. Потрібна установлена ​​java.

  • Код IDE крос-платформний IDE для всіх ваших основних мов, включаючи Python, PHP, Go, Perl, Tcl, Ruby, NodeJS, HTML, CSS, JavaScript та багато іншого



6

Бази даних

Дизайн / розробка / управління:

  • MySQL Workbench - (Windows, Mac, Linux)
    MySQL Workbench - це уніфікований візуальний інструмент для архітекторів, розробників та DBA. MySQL Workbench забезпечує моделювання даних, розробку SQL та комплексні засоби адміністрування для налаштування сервера, адміністрування користувачів, резервного копіювання та багато іншого.
    За допомогою MySQL Workbench можна працювати безпосередньо над базами даних на локальних або віддалених серверах. Він доступний у Windows, Linux та Mac OS X.


  • Sequel Pro - (Mac)
    Sequel Pro - це швидкий, простий у користуванні додаток для управління базами даних Mac для роботи з базами даних MySQL. Він надає вам прямий доступ до ваших баз даних MySQL на локальних та віддалених серверах.


  • phpMyAdmin (інструмент адміністрування MySQL, написаний на PHP - зазвичай його можна знайти на кожному хості)
    phpMyAdmin - це безкоштовний інструмент програмного забезпечення, написаний на PHP, призначений для управління адмініструванням MySQL через Інтернет. phpMyAdmin підтримує широкий спектр операцій на MySQL, MariaDB та Drizzle. Часто використовувані операції (керування базами даних, таблицями, стовпцями, відносинами, індексами, користувачами, дозволами тощо) можна виконувати через користувальницький інтерфейс, хоча ви все ще маєте можливість безпосередньо виконувати будь-який оператор SQL.


  • Адміністратор ( подібно до phpMyAdmin, але більш спрощений і легкий)
    Адміністратор (раніше phpMinAdmin) - повнофункціональний інструмент управління базами даних, написаний на PHP. І навпаки до phpMyAdmin, він складається з одного файлу, готового до розгортання на цільовому сервері. Адміністратор доступний для MySQL, PostgreSQL, SQLite, MS SQL, Oracle, Firebird, SimpleDB, Elasticsearch та MongoDB.


Утиліти резервного копіювання сервера

  • MySQLDumper
    MySQLDumper - це проект з відкритим кодом (GNU-ліцензія), PHP та Perl-інструмент для резервного копіювання баз даних MySQL. Він особливо підходить для веб-просторів для спільного розміщення, де у вас немає доступу до оболонки, і це дуже корисно, коли потрібно резервне копіювання / завантаження / відновлення великих баз даних, де у PHP-скриптів не вистачає часу, через максимальний час виконання.

  • phpMyBackupPro
    phpMyBackup Pro - це дуже простий у використанні, безкоштовний веб-додаток для резервного копіювання MySQL, ліцензований відповідно до GNU GPL. Ви можете створювати заплановані резервні копії, керувати і відновлювати їх, завантажувати або надсилати електронною поштою та багато іншого!

  • AutoMySQLBackup
    AutoMySQLBackup з базовою конфігурацією створюватиме щоденні, тижневі та щомісячні резервні копії однієї або декількох ваших баз даних MySQL з одного або декількох ваших серверів MySQL.


Контроль версій бази даних:


Не впевнені, у яку категорію вони повинні входити, але інструменти Akeeba все чудово - Akeeba Backup та Kickstart для передачі сайтів та надання нетехнологічним людям простого способу зробити власні резервні копії. Мабуть, варто також мати розділ безпеки, і тоді Akeeba Admin Tools.
Річард Б

5

Контроль версій:

Вихідний код:

Контроль версій бази даних:

Постановка сайту Joomla

  • Розширення StageIt
    Staging для Joomla!
    Особливості:
    • Створіть інсценізаційне середовище за лічені секунди
    • Розвивайтесь на сценічному середовищі з нульовим ризиком для вашого веб-сайту
    • Внесіть будь-які зміни, які вам подобаються - оновіть розширення, видаліть вміст тощо
    • StageIt підтримує ВСІ сторонні розширення
    • Синхронізуйте інсценізаційне середовище з веб-сайтом, який перебуває в реальному часі
    • Візуальна кнопка дозволяє миттєво переходити між середовищами
    • Автоматичні резервні копії дозволяють відновити ваш веб-сайт у будь-якій точці синхронізації
    • Налаштуйте роботу з різними серверами - навіть GoDaddy!

3

Системні вимоги до Joomla! 3.x

Також для тих, хто тільки починає і хоче налаштувати своє середовище, або просто потрібно встановити Joomla, це основні системні вимоги для роботи Joomla:

PHP:

  • Рекомендовано : 5.4+
  • Мінімум : 5.3.10+
  • Чарівні котирування GPC вимкнено
  • http://www.php.net

Підтримувані бази даних:

MySQL:

  • Рекомендовано : 5.1+
  • Мінімум : 5.1+
  • Потрібна підтримка InnoDB
  • http://www.mysql.com

SQL Server:

PostgreSQL:


Підтримувані веб-сервери:

Apache:

  • Модулі: mod_mysql, mod_xml та mod_zlib
  • Рекомендовано : 2.x +
  • Мінімум : 2.x +
  • http://www.apache.org

Nginx:

Microsoft IIS:

  • Рекомендовано : 7
  • Мінімум : 7

1
краще підтримати посилання на останні вимоги, оскільки це актуально: downloads.joomla.org/technical-requirements, наприклад, рекомендується PHP 5.6 або 7.0+
Том Кушель,
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.