跳至內容

實用專案:選擇專案

來自華夏公益教科書

單元 4 - ⇑ 計算機實踐專案 ⇑

選擇專案 分析 →


現在是時候開始考慮你要做哪種專案了。這是一個重要的決定,因為它將決定整個課程工作的方向。

我過去標記過的專案包括

  • 基於資料庫的板球運動員管理系統,用於跟蹤比賽和球員得分
  • 日託中心兒童資料庫,處理父母的賬單
  • 計算機教室預約資料庫,允許教師為不同的日期預約教室,並以圖形方式檢視其他教師的時間表
  • 硬體商店的庫存控制資料庫,處理重新訂購和銷售
  • 一個基於網路的數學複習網站,允許建立隨機試卷,然後自動批改
  • 一個 A-Level 數學複習迷宮遊戲
  • 一個法語複習橫向卷軸冒險遊戲
  • 物理學拋射物建模工具
  • 一個貪吃蛇遊戲,要求你吃掉數學問題的正確答案
  • 一個直升機飛行遊戲,要求你回答經濟學問題以獲得額外燃料
  • 一個圍繞俄羅斯方塊克隆的計算機複習程式
  • 一個象棋遊戲,強制執行遊戲的所有規則並識別將軍狀態
  • 基於手機的數學複習遊戲

你可能已經注意到,很多討論都圍繞著資料庫和資料操作展開。解決這個問題的一個簡單方法是構建一個數據處理系統,例如庫存控制系統或複習遊戲,在後端使用資料庫來儲存資料。這是一種強有力的專案型別,可以幫助你獲得高分。但是,你不必非得做這種專案。如果你的程式碼足夠複雜,你就不需要儲存任何資料,你可以跳過關於資料庫的寫作部分。你可能不會被鼓勵製作遊戲,但如果它是一個遊戲,背後有資料庫或複習系統,或者展示了 A-Level 水平數學的巧妙模擬,那麼你需要與你的計算機老師溝通。

什麼是資料處理

[編輯 | 編輯原始碼]
資料處理需要一個數據庫或其他資料儲存

你製作的每個系統都必須涉及資料處理。這意味著獲取資料,對其進行新增、更新、刪除、解釋和顯示。使用資料庫可以很容易做到這一點,但你必須超越 Access 之類的工具提供的新增、編輯、刪除等預設操作。考慮使用複雜的查詢和花哨的方式來展示你的結果。它還可以是一個儲存座位安排或學生記錄的 XML 檔案,編輯/刪除/新增複習遊戲的題目,並記錄不同使用者的得分。無論你做什麼,資料處理都必須是核心。

與 Access 相比,使用某種形式的 SQL(例如 MySQL)或類似的語言(例如 MariaDB)是一個更好的選擇,因為它可以輕鬆地與許多程式語言整合。此外,SQL 還在 COMP3 課程中,因此你無論如何都需要掌握基本的 SQL 知識。

如何選擇一個複雜問題

[編輯 | 編輯原始碼]

為了獲得高分,系統必須複雜,但複雜意味著什麼?你需要做幾件事,還需要做更多事情才能有機會獲得高分。AQA 的評分方案指出,為了在複雜性方面獲得最高等級,你需要至少滿足以下條件之一:

  • 非平凡演算法,例如圖遍歷或遞迴。
  • 使用你選擇的程式語言的複雜特性,例如執行時建立的物件、複雜的資料結構、使用者定義的類
  • 基於時間的模擬
  • 使用網路協議(例如 TCP/IP)
  • 為移動裝置開發
  • 問題在非計算方面的複雜性(例如,使用複雜的數學,如果是你 A-Level 數學中的內容,它就足夠複雜了)
  • 影像處理或模式識別(例如使用正則表示式,注意:正則表示式在 COMP3 課程中,因此你無論如何都會學習它)。

如果你能使用這些條件中的多個,你就能保證獲得這些分數。此外,使用更多條件將為你後面的章節提供更多可寫內容。但是,不要好高騖遠,因為你不想把所有時間都花在編碼上,或者無法完成程式。

如果你使用的是資料庫,可能更難判斷你的專案是否複雜。AQA 有關於此的文件,但簡而言之,你的資料庫需要完全規範化,大量資料會讓你獲得更多分數。如果可以,嘗試實現上述條件之一,你就能獲得分數。

警告!

永遠不要單獨使用 Access 建立東西,你需要展示真正的程式碼。即使 Access 可能是一個更簡單的解決方案,但這也不會讓你在複雜專案中獲得分數。始終與你的老師核實關於複雜性的問題

尋找問題和使用者

[編輯 | 編輯原始碼]

你可能已經腦子裡有一些想法了,但現在你需要找到一個使用者。使用者不一定能找到你,所以如果你是一個本地運動俱樂部、教堂、戲劇社團等的成員,試著想一下資料處理系統如何幫助他們。例如,你可以跟蹤合唱團的成員,他們參加了哪些課程,以及他們是否支付了會費。如果你認識一個經營小企業的使用者,你可以為他們寫一個系統,用來跟蹤員工值班時間、庫存數量以及銷售數量。你的學校/學院是否有可以改進的地方?問問你的老師,也許他們仍然需要手動寫報告,也許他們想要一個適合他們學科的複習工具,也許他們想要一個基於網路的系統來預訂房間,也許他們想要一個可以模擬拋射運動來演示課堂內容的程式。找到你的使用者後,要牢牢抓住他們,他們將是完成這個專案每個部分的關鍵。

如果你在尋找使用者方面遇到困難,可以試著問問學校裡的一些老師。如果你想做模擬,你的數學或物理老師可能會有所幫助。

可行的專案?

[編輯 | 編輯原始碼]

以下這些聽起來足夠複雜嗎?如果不是,你將如何使它們變得複雜?記住,要與你的老師核實關於複雜性的問題。

你將如何解決問題?

[編輯 | 編輯原始碼]

一旦你有了使用者和問題,你將如何解決它?你不是一家擁有數十億英鎊資金的 IT 公司,你可能也只有不到一年的程式設計經驗。你必須現實地看待如何解決這個問題。以下是一些你需要開始思考的問題,寫下你的答案

  • 你已經掌握了哪些程式語言?你需要學習哪些語言和技能?
  • 它將是基於網頁、手機還是桌面應用程式的?
  • 你會使用關係型資料庫或平面檔案資料結構,還是完全不使用?
  • 你知道如何規範化資料表或從文字/XML 檔案中讀取資料嗎?
  • 你有足夠的時間做你想做的事情嗎?
  • 它是否足夠複雜,可以讓你獲得最高分?

下一步

[編輯 | 編輯原始碼]

把所有這些都寫下來,這對你的分析非常有用!

問題 答案
你的想法是什麼?
你的想法是否足夠複雜?
你將如何實現複雜性?
你的終端使用者是誰?
你掌握了哪些程式語言?
你有多少時間?
你需要使用資料庫或其他資料儲存嗎?
基於網頁/手機應用/桌面?
你需要學習什麼?
哪些網站和書籍可以幫助你?

單元 4 - ⇑ 計算機實踐專案 ⇑

選擇專案 分析 →
華夏公益教科書