|
|
1 năm trước cách đây | |
|---|---|---|
| static | 1 năm trước cách đây | |
| .env | 1 năm trước cách đây | |
| .gitignore | 1 năm trước cách đây | |
| README-tw.md | 1 năm trước cách đây | |
| README.md | 1 năm trước cách đây | |
| package-lock.json | 1 năm trước cách đây | |
| package.json | 1 năm trước cách đây | |
| server.js | 1 năm trước cách đây |
在這項作業中,你將製作一個僅限前端的單頁應用程式,使用單元 2 中學到的技能。特別地,你將創建一個用於製作「心情板」的應用程式。據說 Pinterest 有提供這類功能。
你將使用前端技術撰寫解決方案:HTML、CSS 和前端 JS。我提供了一些前端的啟動檔案。你可以隨意使用這些檔案,包括修改它們或重新開始。所有的代碼應該放在 static 目錄中。
我還提供了一個骨架伺服器,因為某些功能除非通過 file: 傳遞前端,否則無法工作。沒有理由更改這個設定,請在未咨詢我之前不要更改,那會很奇怪。
這項作業佔你最終成績的 25%。
這項作業的截止日期為 3 月 24 日,星期日,晚上 11:59。
和以前一樣,使用 GitHub Classroom 提交。如果你更改了 GitHub 用戶名,請像之前一樣告訴我。
我幾乎花了和作業其餘部分一樣多的時間在 CSS 上。不要像我一樣傻(不要浪費太多時間),但要警惕你可能需要花一些時間來處理 CSS。
所有之前作業的注意事項同樣適用於此次作業。這項作業是個人工作。你可以使用非人類的工具,如教科書、Stack Overflow、AI,除非它們是秘密偽裝的 AI,實際上是由人回答的問題,等等。你不可以請求他人幫助(除了我)、查看其他學生的代碼、幫助其他學生、向其他學生展示你的代碼。
建立一個名為 SOURCES.md 的檔案仍然是一個好主意,儘管不是嚴格要求的。
這是一款用於製作「心情板」的軟體。心情板是圖像(和通常其他元素,但我們將只涉及圖像)的排列,就像拼貼一樣。所以我們需要讓用戶添加圖像,並排列它們,調整它們的大小。
為了給這個計劃帶來一些秩序,我們實際上將我們的 UI 組織成卡片的形式。我們的卡片將有兩種模式:*展示模式*和*編輯模式*。在展示模式下,卡片只會顯示圖像,沒有更多,也沒有更少。在編輯模式下,卡片應該仍然佔用相同的空間,但圖像應該縮小,以便有空間放置按鈕和其他 UI 元素來修改卡片(從而修改圖像的顯示方式)。
另一點注意:在這個應用程式的更完整版本中,你需要能夠處理不同寬高比的圖片(包括裁剪和縮放輸入圖片)。在這個應用程式中,我們將假設所有圖片都有 16:9 的寬高比。你可以選擇忽略這個假設,但那樣的話,責任就落在你身上,需要做額外的工作來讓它看起來不錯。
在這個級別,網頁應用必須處於可以展示的狀態,足以給客戶留下深刻印象。
STATEMENT_TO_GRADER.md 的檔案。http:// 或 https:// 開頭,你應該默默地幫助用戶,猜測他們想要添加 http://。CSS
代碼質量
防止跨站腳本攻擊(XSS)
總之,你必須能夠:
這需要你:
localStorage
代碼質量
鍵盤快捷鍵
null/undefined(如果沒有卡片的話)。可選:在頭部添加一個“幫助”按鈕,解釋所有的鍵盤快捷鍵。
拖放
撤銷/重做
這項作業要求你使用你在單元 2 中學到的技能來創建一個只有前端的單頁應用程序。這個應用程序允許用戶創建和編輯心情板,這是一種類似於拼貼的圖像排列。你將需要實現添加圖像、排列圖像、調整圖像大小以及刪除圖像的功能。
整個過程中,請注意代碼質量,並確保你的解決方案不僅功能完整,而且代碼組織有序、易於理解。另外,考慮到網絡安全,請確保你的應用程序能夠抵禦常見的安全威脅,如跨站腳本攻擊(XSS)。
隨著你開發這個應用,你可能會遇到許多挑戰,包括但不限於如何有效地管理 DOM 元素、如何存儲和恢復應用狀態以及如何實現用戶界面的互動性。這些挑戰都是珍貴的學習機會,讓你能夠深化對前端開發的理解。
最後,請記住,這是一項個人作業,意味著你應該獨立完成。然而,你可以使用非人類的資源,如教科書、Stack Overflow 和 AI 工具,來幫助你解決問題。如果你有任何疑問或需要進一步的指導,請隨時尋求老師的幫助。祝你在這次作業中取得成功!