2010-01-20 92 views
19

我知道PHP中的OOP(但不熟練)。現在我想建立一些東西,因爲這是學期假期(3周)的開始。你對我有好的建議嗎? (注:我是統計學家,我知道C,C++,Minitab,MATLAB,SPSS,SAS,R和數據庫設計) 它不需要與統計數據有關。PHP程序員的好習慣/項目

回答

18

我會建立一些你關心的事情 - 在你感興趣的任務或問題領域中的某些東西,否則當事情變得艱難時,你會說,「爲什麼打擾」或「這裏有東西存在。

如果你到統計,一個好的項目可能會編寫一些PHP/HTML/JS來查詢數據集,並運行一些分析(平均模式,按日期,其他條件篩選)。我也建議用jQuery做一些動態的AJAX風格的交互。這樣你就可以很好地理解PHP是如何工作的,以及如何使用它來呈現HTML中有趣的內容。

最重要的是,你可以解決您或您的同事了,而不是沒有價值寫扔掉代碼的實際問題。

+0

+1一些很好的建議! – 2010-01-20 15:10:33

+3

雖然我會補充一些關於學習良好的抽象和OOP原則的長期發展/增長。 – 2010-01-20 15:13:37

+0

就我個人而言,我不覺得簡單地編碼你關心的東西必然會導致一個值得注意的代碼庫。我相信你應該從一些需要結構的東西開始,比如一個MVC框架,它可以作爲你未來項目的基石。 – 2010-01-20 16:46:23

12

構建ORM,MVC框架或CMS總是很有趣:-)

+3

小型CMS是一個偉大的入門項目。易於在基礎級別上實施,快速失控。 – 2010-01-20 15:02:56

+1

@Joel,我開始了一個無法控制的CMS ...我最終將C/Flex中的Flex/Yacc組合綁定到PHP進行模板化! – 2010-01-20 15:03:43

+1

同樣在這裏......範圍蔓延總是很有趣哈哈。 – prodigitalson 2010-01-20 15:05:07

2

構建一個簡單的博客。對於學習和/或練習某種語言的人來說,這是一項常見的任務。

+0

我們需要每個單一的母親地球有多少個博客引擎? – naivists 2010-01-20 15:15:50

+4

@naivists - 只有一個,我的。它岩石。 – 2010-01-20 15:18:59

+0

@naivists是真實的,但這是一個簡單的練習項目,所以無論它是非原創的還是有用的都沒關係。 – GSto 2010-01-24 19:47:15

6

做每個人都做的事! 建立自己的博客/博客引擎

加油!承認這一點,我們都有一個半地方完成!

你可以使用MVC也許有些ORM和好措施某些XML/XSLT實現它!獲取抽象和定義你關注的分離!

你甚至可以得到一個有點瘋狂,並建立一個無形的博客,存儲與RESTful接口,使人們可以建立自己的前端,只是使用你作爲一個語義店層。

+2

http://stackoverflow.com/questions/471940/why-does-every-man-and-his-dog-want-to-code-a-blogging-engine – nickf 2010-01-20 15:09:37

+0

@nickf - ;)我讀過。傳播愛。 – 2010-01-20 15:12:21

+1

我喜歡這個作爲初學者項目,因爲它可以像你想要的那樣簡單或複雜。它可能只是保存和顯示的帖子,但您可以添加其他小部件,作者,評論,標籤,類別,模板/主題,搜索等。您可以從一個簡單的項目中學到很多東西。 – GSto 2010-01-24 16:43:26

1

你可以建立一個CMS(內容管理系統),這將是有用的,從博客有點不同。

4

我在框架和CMS之間寫了一些東西。這對我來說是非常好的經驗,而且我學到了很多東西 - 如何編寫方便的數據庫庫,MVC,主題處理,管理控制面板,UI等。我建議與您類似的東西。

+0

+1,因爲在今天的PHP中很少/沒有「admin-page-generators」。 – chelmertz 2010-01-20 15:53:38

12

建造東西將使用。

如果你認爲你想在博客的事情,做一個博客引擎。如果你想要一個網站,建立一個CMS。如果您正在進行攝影,請建立一個包含圖片上傳等的投資組合網站。如果您有一堆您想要目錄的舊乙烯基/ CD /魔術卡/ DVD,請爲此製作一個工具。如果您有很多其他項目正在進行,請構建待辦事項列表/問題跟蹤系統。你明白了。

你會從吃自己的狗食中學到很多東西,它會促使你改善你的項目。

+5

此外,你知道客戶的所有要求(你!) – chelmertz 2010-01-20 15:49:33

2

我錯了,probobly,但我不舒服的寫OOP腳本,這只是幾個毫秒。我最好在幾分鐘\天內運行的項目中使用它。

所以,我會嘗試寫一個UNIX deamon。

(我讀了很多有趣的sfuff的有關喬治Shlossneigl建設UNIX的守護程序上的PHP(或類似)「PHP專業編程」。)

+0

「高級PHP編程」喬治Schlossnagle - 這就是我的意思 – 2010-01-20 16:32:20

4

既然你已經知道了統計,爲什麼不搶單的統計數據集供網絡上的任何人使用和分析。它可能會保留你的興趣,允許你創建一些有用的東西,並分析真實的數據。 NYC數據集可在這裏: http://www.nyc.gov/html/datamine/html/home/home.shtml

2

可能不是最好的答案,但我喜歡這個小練習作爲一個快速熱身

創建一個文件夾的空白文件的隨機數 (例如9個)各自具有 完全隨機名稱,做一個foreach 循環和重命名每個文件 遞增,然後在同一時間, 寫入到每個文件的負 增量值

orig file-name a b c d e f g h i 
file-name  1 2 3 4 5 6 7 8 9 
file-content 9 8 7 6 5 4 3 2 1 
4

我認爲一個社交網絡類型的網站是好的,如果你只想學習很多東西,因爲社交網絡類型的網站可以觸及PHP的每一個方面,當你爲它構建這樣的事情...

  • 用戶認證系統
  • 博客
  • 論壇
  • 型材
  • 管理系統
  • 緩存
  • 公報制度
  • REST API
  • 有剛SOOO得多,這就是爲什麼我喜歡對他們的工作,你做的一切點點