# 藏書管理程序的結構
我們要開發的是一個主要供個人使用的藏書管理程序,該程序的實際運行版本見[“任氏有無軒”主頁](http://www.rsywx.net/)。
這個應用主要提供了這樣一些功能:
* 書籍列表:顯示藏書的一個列表,提供關鍵字搜索、頁數跳轉、分頁顯示等功能;
* 書籍詳細:顯示某一本書籍的詳細信息,并從豆瓣處抓取信息作為補充顯示,提供添加個人TAG的功能(以便訪客日后搜索);
* 讀書心得:顯示讀書后寫的心得(以博客文章形式呈現,牽涉到博客的整合,見以后的章節);
* 博客:使用的是[WordPress](https://wordpress.org/)作為博客平臺,并對WordPress數據庫進行查詢并獲得信息。
* 維客:使用的是[DokuWiki](https://www.dokuwiki.org/dokuwiki)作為維客平臺,只是整合,不做進一步編程。
* 資源:比如我喜歡的湖人隊的賽程。
* 聯系:列出一些和站點主人的聯系方法,包括Google Map的調用等。
* 首頁:提供站點的接口。
* 后臺:提供一個后臺入口,以比較直觀的方式來管理數據。
在首頁中,對書籍信息需要進行匯總并顯示,有一個Dart的部件將顯示“每日引言”和“今日天氣”信息,列出最近的博客文章等。這是所有頁面中編程量最大的頁面(沒有之一),而且又是站點的入口,因此將首先加以深入研究。我們先給出一張我的站點的首頁截屏,作為效果展示:

- 引言
- 1 LAMP
- 1.1 安裝虛擬機
- 1.2 安裝Vagrant
- 1.3 安裝Ubuntu
- 1.4 安裝Apache 2
- 1.5 安裝PHP
- 1.6 安裝MySQL服務器
- 1.7 最后的微調
- 1.8 設置一個虛擬主機
- 1.9 一個趁手的IDE
- 2 Symfony 3和重要構件
- 2.1 Symfony 3
- 2.2 Doctrine
- 2.3 Twig
- 2.4 Composer
- 3 Symfony重要概念
- 3.1 MVC
- 3.2 Bundle/包
- 3.3 Route/路由
- 3.4 Controller/控制器
- 3.5 Entity/實體
- 3.6 Repository/倉庫
- 3.7 Template/模板
- 3.8 Test/測試
- 4 藏書管理程序的結構
- 5 創建應用
- 5.1 建立版本管理
- 5.2 建立數據庫
- 5.3 應用結構
- 5.4 建立數據庫實體
- 5.5 樣本數據
- 5.6 路由
- 5.7 模板
- 5.8 開始編寫首頁
- 5.9 書籍詳情頁面
- 5.10 書籍列表頁面
- 5.11 書籍搜索
- 6 用戶和后臺
- 7 結語