Upgrade to Pro — share decks privately, control downloads, hide ads and more …

Setting up your Joomla extension development en...

Robert Deutz
December 07, 2012

Setting up your Joomla extension development environment

If you create Joomla! extensions you have to do some not complicated but time consuming tasks. It is easy to make a mistake and you have to start over again. I'll show how I have setup my environment and how this is integrated in the development process and package creating process. You can learn how a tool like phing can make you life easier.

Robert Deutz

December 07, 2012
Tweet

More Decks by Robert Deutz

Other Decks in Programming

Transcript

  1. 1

  2. Centralised Version Control Systems • very popular at the end

    of the last century • complicated when working in not centralised teams • merging and working on different things at the same moment is complicated • still room for using it but NOT in an Open Source Project like Joomla!
  3. Distributed • Best thing since sliced bread • good for

    not centralised teams • Supports merging and branching in an easy way • It allows a group of people to work on different ideas and in parallel on a single codebase
  4. GIT

  5. 2

  6. We do • use brackets • use tabs • format

    code always in the same way • use meaningful function, variable, methods and class names • use phpDoc Blocks • not copy code (DRY: don‘t repeat yourself)
  7. We write helpful comments As I wrote this code only

    god and I know what it is doing, now only god knows WRONG Registers a handler to a particular event group. RIGHT
  8. 3

  9. IDEs • Eclipse (Zend Studio, phpEclipse, .....) • PHP Storm

    (free license for Joomla! developers) • NetBeans IDE
  10. Cooler Editor: Sublime Text • Packages for almost everything we

    need • extremely fast • Edit features from heaven • .... but not an IDE • comes closer and closer
  11. How to chose a IDE • Don‘t give up! •

    It need‘s time, so think first about your requirements • Think about your development process, what you have to do to make sure that you can support your process properly
  12. 4

  13. 53

  14. 187

  15. but

  16. robert-deutzs-macbook-pro:babioon-download deutz$ phpcs --standard=Joomla *|grep 'FOUND' FOUND 15 ERROR(S) AFFECTING

    8 LINE(S) FOUND 9 ERROR(S) AFFECTING 6 LINE(S) FOUND 13 ERROR(S) AND 1 WARNING(S) AFFECTING 7 LINE(S) FOUND 101 ERROR(S) AND 7 WARNING(S) AFFECTING 60 LINE(S) FOUND 15 ERROR(S) AFFECTING 9 LINE(S) FOUND 17 ERROR(S) AFFECTING 10 LINE(S) FOUND 22 ERROR(S) AFFECTING 12 LINE(S) FOUND 133 ERROR(S) AND 3 WARNING(S) AFFECTING 37 LINE(S) FOUND 123 ERROR(S) AND 7 WARNING(S) AFFECTING 72 LINE(S) FOUND 19 ERROR(S) AFFECTING 13 LINE(S) FOUND 80 ERROR(S) AFFECTING 43 LINE(S) FOUND 38 ERROR(S) AND 1 WARNING(S) AFFECTING 18 LINE(S) FOUND 33 ERROR(S) AFFECTING 20 LINE(S) FOUND 23 ERROR(S) AFFECTING 13 LINE(S) FOUND 48 ERROR(S) AND 2 WARNING(S) AFFECTING 25 LINE(S) FOUND 13 ERROR(S) AND 2 WARNING(S) AFFECTING 10 LINE(S) FOUND 28 ERROR(S) AFFECTING 21 LINE(S) FOUND 17 ERROR(S) AND 5 WARNING(S) AFFECTING 13 LINE(S) FOUND 21 ERROR(S) AFFECTING 15 LINE(S) FOUND 33 ERROR(S) AND 1 WARNING(S) AFFECTING 22 LINE(S) FOUND 15 ERROR(S) AND 1 WARNING(S) AFFECTING 10 LINE(S) FOUND 33 ERROR(S) AFFECTING 17 LINE(S) FOUND 17 ERROR(S) AND 6 WARNING(S) AFFECTING 14 LINE(S) FOUND 44 ERROR(S) AND 1 WARNING(S) AFFECTING 21 LINE(S) FOUND 20 ERROR(S) AND 1 WARNING(S) AFFECTING 16 LINE(S) FOUND 224 ERROR(S) AND 1 WARNING(S) AFFECTING 107 LINE(S)
  17. 5

  18. map