I have been using phpmyadmin, since I have been using MySQL. I have always been tweaking and editing it for personalizations and customizations. One thing I think it is badly lacking is <b>MVC (Model - View - Controller) Architecture.</b><div>
<br></div><div>Better than porting it OOP, it is better to convert into an MVC Architecture. The reasons why I support MVC Architecture is :</div><div><ol><li>Scalabality</li><li>Code Reuse</li><li>Integration of various libraries</li>
<li>Same application logic can generate various views, i.e., it can be used to generate UI for mobile or for touch-enabled devices</li></ol>Also, one optional thing to be considered is, while designing the models, it is<b> important to consider the interactions between the various components</b> and plan according. The phpmyadmin code is written in a good fashion, but it can be better.</div>
<div><br></div><div>Also,<b> a good abstraction layer for various other DBMS,</b> and hence can be extended to other RDBMS.</div><div><br></div><div>phpmyadmin, by far, the best database tool I have ever used, I think can evolve into a better and a robust tool for DBMS.</div>
<div><br></div><div><b>Summary : </b></div><div>Rather than concentrating into converting the codebase into OOP, it should rather be organized into and <b>MVC architecture.</b></div><div>There should be a<b> considerable amount of planning before designing the system</b>, considering the interactions amongst various models.</div>
<div><b>A database abstraction layer</b> can be maintained, in order to extend its capabilities to other DBMS.</div>