Update:Archive/2.0/Developers: Difference between revisions

Line 38: Line 38:


=== Language ===
=== Language ===
We are going to stick with PHP and make the new code base work with PHP 4.3.x.  We considered PHP 5.0 but felt that it did not tie in well with the existing MoFo infrastructure.  We also considered several other alternatives but in the end felt that the existing skill set and the ability to get up to speed quickly with PHP were the keys to success here.
'''PHP 4.3.x'''.  We considered PHP 5.0 but felt that it did not tie in well with the existing MoFo infrastructure.  We also considered several other alternatives but in the end felt that the existing skill set and the ability to get up to speed quickly with PHP were the keys to success here.


=== Templating ===
=== Template Engine ===
We are going to use [http://smarty.php.net Smarty] for our template enginePeople considered writing our own but it was all a question of recreating what Smarty already did.
'''[http://smarty.php.net Smarty]'''It is widespread and easy to implement.


=== Database Abstraction ===
=== Database Abstraction ===
PEAR::DB (http://pear.php.net/package/DB ) is going to be our database abstraction layer. We chose this because it is part of the PEAR suite and it's likeness to Perl's DBI.
'''[http://pear.php.net/package/DB PEAR::DB]'''. A standard part of the PEAR suite with likeness to Perl's DBI.


=== Database Server ===
=== Database Server (RDBMS) ===
We are sticking with the MoFo standard here: MySQL 4.1.
'''[http://dev.mysql.com/doc/mysql/en/index.html MySQL 4.1]'''.


=== Licensing ===
=== Licensing ===
Line 53: Line 53:


=== Coding Standards ===
=== Coding Standards ===
We are going to stick with the standard Mozilla coding standards where they apply and then [[Update:Development:Best Practices|develop our own]] where they do not.
'''[http://pear.php.net/manual/en/standards.php PEAR Coding Standards]'''. This standards guide is fairly standard fare for PHP applications.
 
We will do our best to adhere to the Mozilla coding standards. Since not many Mozilla projects are written in PHP, we have [[Update:Development:Best Practices|developed our own]] where necessary.


== Use-cases and Requirements ==
== Use-cases and Requirements ==
3,035

edits