<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<HTML><HEAD>
<META content="text/html; charset=utf-8" http-equiv=Content-Type>
<STYLE>
BLOCKQUOTE {
        MARGIN-TOP: 0px; MARGIN-BOTTOM: 0px; MARGIN-LEFT: 2em
}
OL {
        MARGIN-TOP: 0px; MARGIN-BOTTOM: 0px
}
UL {
        MARGIN-TOP: 0px; MARGIN-BOTTOM: 0px
}
P {
        MARGIN-TOP: 0px; MARGIN-BOTTOM: 0px
}
DIV.FoxDiv20130405173402002381 {
        LINE-HEIGHT: 1.5; MARGIN: 10px; FONT-FAMILY: Segoe UI; COLOR: #000080; FONT-SIZE: 10.5pt
}
DIV.FoxDiv20130405211223169625 {
        LINE-HEIGHT: 1.5; MARGIN: 10px; FONT-FAMILY: Segoe UI; COLOR: #000080; FONT-SIZE: 10.5pt
}
BODY {
        LINE-HEIGHT: 1.5; FONT-FAMILY: Segoe UI; COLOR: #000080; FONT-SIZE: 10.5pt
}
</STYLE>

<META name=GENERATOR content="MSHTML 8.00.7601.18094">
<STYLE>BLOCKQUOTE {
        MARGIN-TOP: 0px
}
OL {
        MARGIN-TOP: 0px
}
UL {
        MARGIN-TOP: 0px
}
</STYLE>

<STYLE>BLOCKQUOTE {
        MARGIN-TOP: 0px
}
OL {
        MARGIN-TOP: 0px
}
UL {
        MARGIN-TOP: 0px
}
</STYLE>
</HEAD>
<BODY style="MARGIN: 10px">
<DIV>thanks Marc,</DIV>
<DIV> </DIV>
<DIV>I updated my pull requests and seperate them to two requests.</DIV>
<DIV>
<H2 
style="BORDER-BOTTOM-STYLE: none; PADDING-BOTTOM: 0px; BORDER-RIGHT-WIDTH: 0px; TEXT-TRANSFORM: none; FONT-VARIANT: normal; FONT-STYLE: normal; TEXT-INDENT: 0px; MARGIN: 0px; PADDING-LEFT: 0px; PADDING-RIGHT: 0px; FONT-FAMILY: Helvetica, arial, freesans, clean, sans-serif; WHITE-SPACE: normal; BORDER-TOP-WIDTH: 0px; LETTER-SPACING: normal; COLOR: rgb(51,51,51); FONT-SIZE: 10pt; BORDER-LEFT-WIDTH: 0px; FONT-WEIGHT: bold; WORD-SPACING: 0px; PADDING-TOP: 0px; -webkit-text-size-adjust: auto; -webkit-text-stroke-width: 0px" 
class=discussion-topic-title>1. function PMA_sqlQueryFormInsert 
refactor:</H2></DIV>
<DIV><A 
href="https://github.com/phpmyadmin/phpmyadmin/pull/230">https://github.com/phpmyadmin/phpmyadmin/pull/230</A></DIV>
<DIV><A 
href="https://github.com/phpmyadmin/phpmyadmin/pull/229">https://github.com/phpmyadmin/phpmyadmin/pull/229</A></DIV>
<DIV> </DIV>
<DIV>one more issue, Function A call Function B, but in function B, there will 
be echo render html.</DIV>
<DIV>currently, I will echo the html out before enter Functon B.</DIV>
<DIV> </DIV>
<DIV>but I have a other method, such as in Function B, just return html content 
out, and add to outter html.</DIV>
<DIV> </DIV>
<DIV>Function A () {</DIV>
<DIV>   $html += B();</DIV>
<DIV>    echo $html;</DIV>
<DIV>}</DIV>
<DIV>
<DIV>Function A () {</DIV>
<DIV>   $html = "<form>..";</DIV>
<DIV>   returm $html;</DIV>
<DIV>}</DIV></DIV>
<DIV> </DIV>
<DIV> </DIV>
<DIV>After the code review, I will start refactoring other issue of server 
view.</DIV>
<DIV> </DIV>
<DIV> </DIV>
<HR style="WIDTH: 210px; HEIGHT: 1px" align=left color=#b5c4df SIZE=1>

<DIV><SPAN>xmujay</SPAN></DIV>
<DIV><SPAN></SPAN> </DIV>
<DIV 
style="BORDER-BOTTOM: medium none; BORDER-LEFT: medium none; PADDING-BOTTOM: 0cm; PADDING-LEFT: 0cm; PADDING-RIGHT: 0cm; BORDER-TOP: #b5c4df 1pt solid; BORDER-RIGHT: medium none; PADDING-TOP: 3pt">
<DIV 
style="PADDING-BOTTOM: 8px; PADDING-LEFT: 8px; PADDING-RIGHT: 8px; BACKGROUND: #efefef; COLOR: #000000; FONT-SIZE: 12px; PADDING-TOP: 8px">
<DIV><B>From:</B> <A 
href="mailto:xmujay@gmail.com">xmujay@gmail.com</A></DIV>
<DIV><B>Date:</B> 2013-04-05 17:41</DIV>
<DIV><B>To:</B> <A href="mailto:marc@infomarc.info">Marc Delisle</A>; <A 
href="mailto:phpmyadmin-devel@lists.sourceforge.net">phpmyadmin-devel</A>; <A 
href="mailto:phpmyadmin-translators@lists.sourceforge.net">phpmyadmin-translators</A></DIV>
<DIV><B>Subject:</B> Re: Re: [Phpmyadmin-devel] gsoc: Refactoring: Server 
view</DIV></DIV></DIV>
<DIV>
<DIV class=FoxDiv20130405211223169625>
<STYLE>BLOCKQUOTE {
        MARGIN-TOP: 0px; MARGIN-BOTTOM: 0px; MARGIN-LEFT: 2em
}
OL {
        MARGIN-TOP: 0px; MARGIN-BOTTOM: 0px
}
UL {
        MARGIN-TOP: 0px; MARGIN-BOTTOM: 0px
}
P {
        MARGIN-TOP: 0px; MARGIN-BOTTOM: 0px
}
DIV.FoxDiv20130405173402002381 {
        LINE-HEIGHT: 1.5; MARGIN: 10px; FONT-FAMILY: Segoe UI; COLOR: #000080; FONT-SIZE: 10.5pt
}
</STYLE>

<META name=GENERATOR content="MSHTML 8.00.7601.18094">
<STYLE>BLOCKQUOTE {
        MARGIN-TOP: 0px
}
OL {
        MARGIN-TOP: 0px
}
UL {
        MARGIN-TOP: 0px
}
</STYLE>

<DIV>
<DIV>> 
Note that we use bottom-posting on this list. 

<DIV>> </DIV>
<DIV>> 
It's true that refactoring means to put long procedural code into</DIV>
<DIV>> functions.</DIV></DIV>
<DIV> </DIV>
<DIV>Hi Marc,</DIV>
<DIV>Thanks for your guide in last mail. In this week I have fininshed two 
things that let me get familiar with phpmyadmin and <SPAN 
style="FONT-WEIGHT: bold">gsoc: Refactoring: Server view 
</SPAN></DIV>
<DIV>1. Finished a lot of some Chinese tranlsations.</DIV>
<DIV>2. send a pull request on my Github about server view code refactor.</DIV>
<DIV>
<DIV><A 
href="https://github.com/phpmyadmin/phpmyadmin/pull/228">https://github.com/phpmyadmin/phpmyadmin/pull/228</A></DIV></DIV>
<DIV> </DIV>
<DIV>about the patch, I make the following changes for the refactoring: server 
view.</DIV>
<OL 
style="BORDER-BOTTOM: 0px; BORDER-LEFT: 0px; PADDING-BOTTOM: 0px; TEXT-TRANSFORM: none; BACKGROUND-COLOR: rgb(251,251,251); TEXT-INDENT: 0px; MARGIN: 0px; PADDING-LEFT: 30px; PADDING-RIGHT: 0px; FONT: 13px/20px Helvetica, arial, freesans, clean, sans-serif; WHITE-SPACE: normal; LETTER-SPACING: normal; COLOR: rgb(51,51,51); BORDER-TOP: 0px; BORDER-RIGHT: 0px; WORD-SPACING: 0px; PADDING-TOP: 0px; -webkit-text-size-adjust: auto; -webkit-text-stroke-width: 0px">
  <LI 
  style="BORDER-BOTTOM: 0px; BORDER-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: 0px; PADDING-LEFT: 0px; PADDING-RIGHT: 0px; BORDER-TOP: 0px; BORDER-RIGHT: 0px; PADDING-TOP: 0px">render 
  the HTML element at once 
  <LI 
  style="BORDER-BOTTOM: 0px; BORDER-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: 0px; PADDING-LEFT: 0px; PADDING-RIGHT: 0px; BORDER-TOP: 0px; BORDER-RIGHT: 0px; PADDING-TOP: 0px">fix 
  HTML and PHP mixture 
  <LI 
  style="BORDER-BOTTOM: 0px; BORDER-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: 0px; PADDING-LEFT: 0px; PADDING-RIGHT: 0px; BORDER-TOP: 0px; BORDER-RIGHT: 0px; PADDING-TOP: 0px">fix 
  code indention 
  <LI 
  style="BORDER-BOTTOM: 0px; BORDER-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: 0px; PADDING-LEFT: 0px; PADDING-RIGHT: 0px; BORDER-TOP: 0px; BORDER-RIGHT: 0px; PADDING-TOP: 0px">enhance 
  the code Readability</LI></OL>
<DIV 
style="BORDER-BOTTOM: 0px; BORDER-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: 0px; PADDING-LEFT: 0px; PADDING-RIGHT: 0px; BORDER-TOP: 0px; BORDER-RIGHT: 0px; PADDING-TOP: 0px"><FONT 
style="BACKGROUND-COLOR: #fbfbfb" color=#333333 
face=Helvetica></FONT> </DIV>
<DIV 
style="BORDER-BOTTOM: 0px; BORDER-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: 0px; PADDING-LEFT: 0px; PADDING-RIGHT: 0px; BORDER-TOP: 0px; BORDER-RIGHT: 0px; PADDING-TOP: 0px"><FONT 
style="BACKGROUND-COLOR: #fbfbfb" color=#333333 
face=Helvetica></FONT> </DIV>
<DIV 
style="BORDER-BOTTOM: 0px; BORDER-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: 0px; PADDING-LEFT: 0px; PADDING-RIGHT: 0px; BORDER-TOP: 0px; BORDER-RIGHT: 0px; PADDING-TOP: 0px"><FONT 
style="BACKGROUND-COLOR: #fbfbfb" color=#333333 face=Helvetica>Can you help me 
have a reivew? thanks</FONT></DIV>
<DIV> </DIV>
<DIV> </DIV>
<DIV>xmujay</DIV>
<DIV> </DIV></DIV>
<DIV>
<DIV class=FoxDiv20130405173402002381>
<DIV 
style="BORDER-BOTTOM: medium none; BORDER-LEFT: medium none; PADDING-BOTTOM: 0cm; PADDING-LEFT: 0cm; PADDING-RIGHT: 0cm; BORDER-TOP: #b5c4df 1pt solid; BORDER-RIGHT: medium none; PADDING-TOP: 3pt">
<DIV 
style="PADDING-BOTTOM: 8px; PADDING-LEFT: 8px; PADDING-RIGHT: 8px; BACKGROUND: #efefef; COLOR: #000000; FONT-SIZE: 12px; PADDING-TOP: 8px">
<DIV><B>From:</B> <A href="mailto:marc@infomarc.info">Marc 
Delisle</A></DIV>
<DIV><B>Date:</B> 2013-04-01 23:56</DIV>
<DIV><B>To:</B> <A 
href="mailto:phpmyadmin-devel@lists.sourceforge.net">phpmyadmin-devel</A></DIV>
<DIV><B>Subject:</B> Re: [Phpmyadmin-devel] gsoc: Refactoring: Server 
view</DIV></DIV></DIV>
<DIV>
<DIV>Le 2013-04-01 11:26, xmujay@gmail.com a écrit :</DIV>
<DIV>> Thanks Marc.</DIV>
<DIV>> </DIV>
<DIV>> I make a simple compare with the db view which are with db_ prefix</DIV>
<DIV>> php file. I found that the render process is full of long code, so at</DIV>
<DIV>> least three things for code improvements: 1.  split them to functions</DIV>
<DIV>> which can be re-used. 2.  split them to simple files which can be</DIV>
<DIV>> included. 3. re-factor the code logic, improve the performance ...</DIV>
<DIV>> </DIV>
<DIV>> Are there more guide from you that which Aspect that the code should</DIV>
<DIV>> be refactor? thanks for your advices!</DIV>
<DIV> </DIV>
<DIV>Hi,</DIV>
<DIV> </DIV>
<DIV>Note that we use bottom-posting on this list.</DIV>
<DIV> </DIV>
<DIV>It's true that refactoring means to put long procedural code into</DIV>
<DIV>functions.</DIV>
<DIV> </DIV>
<DIV>About simple files, we avoid having too many small files (not good for</DIV>
<DIV>performance). Have a look at libraries/TableSearch.class.php.</DIV>
<DIV> </DIV>
<DIV>About improving the performance, IMO this is not related to code</DIV>
<DIV>refactoring. A performance problem could be fixed without refactoring</DIV>
<DIV>the code.</DIV>
<DIV> </DIV>
<DIV>About more guides, did you have a look at the refactoring projects of</DIV>
<DIV>last year? They are listed at [0].</DIV>
<DIV> </DIV>
<DIV>See a refactoring example at [1].</DIV>
<DIV> </DIV>
<DIV> </DIV>
<DIV>[0] http://wiki.phpmyadmin.net/pma/GSoC_2012_Projects</DIV>
<DIV> </DIV>
<DIV>[1]</DIV>
<DIV>https://github.com/phpmyadmin/phpmyadmin/commit/2da7a2eba4c2c850c00645f77b8107d0ec6bec19</DIV>
<DIV> </DIV>
<DIV> </DIV>
<DIV>> </DIV>
<DIV>> xmujay@gmail.com</DIV>
<DIV>> </DIV>
<DIV>> From: Marc Delisle Date: 2013-04-01 19:12 To: phpmyadmin-devel </DIV>
<DIV>> Subject: Re: [Phpmyadmin-devel] gsoc: Refactoring: Server view Le</DIV>
<DIV>> 2013-03-31 05:10, xmujay@gmail.com a écrit :</DIV>
<DIV>>> Hi,</DIV>
<DIV>>> </DIV>
<DIV>>> I am new here. I am quite interested on the topic of Refactoring: </DIV>
<DIV>>> Server view.</DIV>
<DIV>>> </DIV>
<DIV>>> from the code learning: 1. server view display code is listed on</DIV>
<DIV>>> ROOT folder with prefix: server_ .php  (most code is used to echo</DIV>
<DIV>>> page elements) 2.  the user request action is sent out using Ajax</DIV>
<DIV>>> (js folder) 3. the backend logic is on library folder, some is on</DIV>
<DIV>>> ROOT folder.</DIV>
<DIV>>> </DIV>
<DIV>>> I want to know that: 1.  what kind of improvement ? user</DIV>
<DIV>>> experience and UI change or code refactor? 2.  If it is user</DIV>
<DIV>>> experience changes, are there some todo guides? 3.  is there some</DIV>
<DIV>>> user survey and user experience feed back to guide us improve the</DIV>
<DIV>>> Server view ?</DIV>
<DIV>> </DIV>
<DIV>> Hi, refactoring's goal is only to improve code, so no user experience</DIV>
<DIV>> nor UI change should be done.</DIV>
<DIV>> </DIV>
<DIV>> See [0].</DIV>
<DIV>> </DIV>
<DIV>> [0] http://en.wikipedia.org/wiki/Code_refactoring</DIV>
<DIV> </DIV>
<DIV> </DIV>
<DIV>-- </DIV>
<DIV>Marc Delisle</DIV>
<DIV>http://infomarc.info</DIV>
<DIV> </DIV>
<DIV>------------------------------------------------------------------------------</DIV>
<DIV>Own the Future-Intel&reg; Level Up Game Demo Contest 2013</DIV>
<DIV>Rise to greatness in Intel's independent game demo contest.</DIV>
<DIV>Compete for recognition, cash, and the chance to get your game </DIV>
<DIV>on Steam. $5K grand prize plus 10 genre and skill prizes. </DIV>
<DIV>Submit your demo by 6/6/13. http://p.sf.net/sfu/intel_levelupd2d</DIV>
<DIV>_______________________________________________</DIV>
<DIV>Phpmyadmin-devel mailing list</DIV>
<DIV>Phpmyadmin-devel@lists.sourceforge.net</DIV>
<DIV>https://lists.sourceforge.net/lists/listinfo/phpmyadmin-devel</DIV></DIV></DIV></DIV></DIV></DIV></BODY></HTML>