2010-06-27 152 views
12

我正處於中型PHP網頁應用程序(而不是靜態網站)的設計階段。由於我是一位具有茄子創意的程序員,我想與自由職業者簽約以設計應用程序的外觀和風格。我應該向設計師索要什麼交付物? HTML文件? PHP文件?我如何將設計師的外觀和感覺應用到我的應用程序?PHP網頁設計師的成果

回答

11

詢問:

  • HTML文件
  • CSS文件
  • 無表的設計 - 這是很容易更新CSS文件比它更新表。請注意,此建議僅限於避免使用表格來組織頁面佈局。爲了以表格的方式組織數據,表格絕對是最好的選擇。
  • 圖像文件(所有的JPG文件/ GIF的或任何情況而定)
  • 削減(< ----這是重要)的PSD文件,所以你可以輕鬆地編輯圖像內容和替換圖像。其他類似的格式如GIMP也可以接受。

一旦它的時間來deisgn集成到應用程序,你想分開你的邏輯和數據庫訪問設計。這使得後續維護更加容易,而且在開發應用程序時也可以更輕鬆地進行更改。

  - 雖然您應該使用哪些的具體內容超出了本答案的範圍,但請注意,有許多框架和範例(MVC框架,內容管理系統等)有助於分離邏輯。

將邏輯從設計中分離出來的一種簡單方法是簡單地在PHP文件中設置變量,然後在設計中包含適當的文件(它也應該是php或phtml文件,如下所示)。另外,你應該在頁面的任何部分重複出現在許多頁面中,並將它們作爲一個單獨的php文件包含在其他頁面中。例如...

糟糕的方式(不這樣做!):

//File: itemsPage.php: 

<html> 
    <head> 
     <title>Our items</title> 
    </head> 
    <body> 
     <?php 
      echo "<ol>"; 
      $itemsResult = mysql_query("SELECT * FROM items ORDER BY id LIMIT 10"); 
      while ($item=mysql_fetch_array($itemsResult)){ 
       echo "<li>".$item['name']." - ".$item['description']."</li>"; 
      } 
      echo "</ol>"; 
     ?> 
     <br><br> 
     Affiliates: Microsoft | Bob's Home Furnishing Store | <a href="http://www.example.com/affiliates.php">become an affiliate</a> 
    </body> 
</html> 

更好的方式:

//File: itemsPage.php 
<?php 
    $title='Our Items'; 
    include('header.php'); 
    include('items.php'); 
    include('footer.php'); 
?> 

...

//File: header.php 
<html> 
    <head> 
     <title><?php echo $title?></title> 
    </head> 
    <body> 

...

//File: items.php 
<?php 
    $itemsResult = mysql_query("SELECT * FROM items ORDER BY id LIMIT 10"); 
    $items=array(); 
    while ($item=mysql_fetch_array($itemsResult)) 
     $items[]=$item; 

    include('items.phtml'); 
?> 

...

//File: items.phtml 
<ol> 
    <?php foreach ($items as $item){?> 
     <li><?php echo $item['name']?> - <?php echo $item['description']?></li> 
    <? } ?> 
</ol> 

...

//File: footer.php 
     <br><br> 
     Affiliates: Microsoft | Bob's Home Furnishing Store | <a href="http://www.example.com/affiliates.php">become an affiliate</a> 
    </body> 
</html> 

最好的辦法: 截至上面所暗示的,去了解這一點的最好辦法是使用一個框架( Zend等),其目的是爲了讓您的工作儘可能組織和簡單。

+2

表格和CSS不是互斥的! – Rimian 2010-06-27 04:20:08

+0

@Rimian:的確如此。無表設計意味着只使用表格來組織表格中的數據,並通過其他方式(通過css)創建頁面佈局。事實上,另一方面也是應該避免的 - 如果你有數據應該組織在一個表中,使用一張表。我已經看到一些設計如此熱衷於避免使用「純CSS」用於一切的表格,這使得數據呈現的臃腫html成爲可能。我已經編輯了我的答案來澄清這一點。 – Cam 2010-06-27 04:26:51

+0

啊......你剛剛爲我重新定義了「無表」這個詞。優秀!我看到很多設計在無表的情況下也會過度。然後聲稱它可以節省帶寬。瘋了,我告訴你! – Rimian 2010-06-27 04:46:10

4

您應該爲他們提供HTML輸出並讓他們使用它。他們可能會要求您將輸出/申請ID或班級重組爲某些事物。

「可交付成果」將是任何圖像文件/ css文件。

你將不得不估計你將允許他們進入網站的距離。如果可能的話,爲他們提供視圖PHP文件(假設是一個MVC系統)來處理/修改。

只是旁註:我知道正好你的感受。茄子的創意對我來說太仁慈了。

10

通常,我會從我的設計師或PSD獲取HTML文件並自行切割它們。 HTML文件應該包含你需要將它們放入PHP中的所有基本元素,包括單獨的可包含的頭文件等等。當然,你也需要CSS和圖像。

我覺得最好讓設計師專注於他們最擅長的設計,而不僅僅是儘量減少我的工作。

+1

一個PSD交付是最便宜的解決方案,但可能需要相當多的時間收到你的切片和轉成HTML/CSS。 – 2010-06-27 13:30:19

2

HTML,CSS和 - 可能 - 圖像文件。 (就我個人而言,我也希望PSD - Photoshop文件 - 他們用來創建設計。這樣,您可以看到設計師的願景與實際可能在HTML中呈現的內容)。

利用這些資產取決於您的應用程序。例如,如果您使用MVC框架,則可以使用這些資產來創建視圖。

3

這取決於你將與哪種設計師合作。

我的設計師爲佈局製作PSD併爲圖形元素提供jpg/gif/png圖像。我寫了所有的CSS和HTML,這是我喜歡的方式,因爲JavaScript必須與CSS緊密交互。我更願意選擇我自己的CSS ID,進行所有佈局測試等等。她是一名插畫師和藝術家,並沒有關於PHP,JS,CSS等的第一線索。這對我們來說很好。

如果您有一位處理CSS和HTML的設計人員,您將從使用模板系統(如Smartyh20)中獲益。這樣,設計人員就可以完成這項工作,而不會干擾您的數據庫和業務邏輯(模型/控制器)。

設計人員必須瞭解應用程序的流程和邏輯,才能針對所有不同的屏幕和狀態進行設計。

2

首先,您應該找到一位真正瞭解您的項目並能夠提供適合的設計的設計師。您的問題的答案完全取決於設計師的專業知識。

一些設計師具有優秀的HTML,CSS,有時還有PHP技能。如果是這樣,你的交付物應該就是這樣。如果是這種情況,他們應該爲您提供完整的,可用的HTML,CSS。如果他們的PHP技能很好,你甚至可以要求他們將常見元素分解爲包含內容。你的里程會有所不同。作爲應用程序開發人員,您可以選擇如何做到這一點,而讓設計人員這樣做可能會造成更多的傷害。

如果你找到一個沒有技術印章的設計師,我會推薦詳細的PSDs。這些圖層應該有明確的標記,並區分文本與圖像之間的區別。在這一點上,你有另一種選擇。作爲開發人員,您可以自己構建HTML模板。如果你不想花時間做這些,你可以使用像http://www.psd2html.com/這樣的服務。我喜歡使用它們,因爲它們處理所有跨瀏覽器的不兼容問題,如果您提供了足夠的指導,它甚至會將內容分解爲包含內容。唯一需要注意的是要確保PSD的標籤很好。

無論哪種方式,最重要的是確保你的設計可以讓你在做什麼,並且找出可交付的最佳解決方案,應根據自己的技能。

0

如果您的應用程序分開顯示邏輯,你應該清楚現在上到設計師的工作適用於你的。

我的設計師爲我提供PSD文件。但這就是我喜歡的方式。與你的設計師聊聊天,你會找到共同點。

0

對你會需要,HTML,CSS和圖像設計師。

其他設計師可能只提供了頁面的圖像,並讓你砍它自己。

1

此外,還要在設計完成後誰「擁有」設計的一些安排。如果你不這樣做,設計屬於設計師,並且在法律上你不能在未經他同意的情況下對其進行修改。所以讓設計師將設計的權利轉讓給你。

我想你可以把它當作可交付成果。

+0

好想法,謝謝! – BenV 2010-07-09 14:18:12