JavaRush /Java Blog /Random-TW /我們正在為一個作品集編寫一個真實的專案——“從A到Z的Java專案”
Roman Beekeeper
等級 35

我們正在為一個作品集編寫一個真實的專案——“從A到Z的Java專案”

在 Random-TW 群組發布
大家好,未來的資深軟體工程師!在過去的幾個月裡,我一直在撰寫一篇描述開發重要部分的簡單文章。今天我就來談談我的想法吧!我想幫你找第一份工作。為此需要什麼?為此,您需要獲得經驗。了解這些專案的組成、工程師的工作內容並推動資訊科技世界向前發展。

此系列所有材料:

「Java 專案從頭到尾」:為作品集寫一個真實的專案 - 1怎麼做?我需要寫點東西。因此,作為本系列材料的一部分,我們將逐步編寫我們自己的電報機器人(詳細資訊如下)。同時,我們將了解即使是新手 Java 開發人員也需要的技術堆疊。

目標

編寫一個項目,該項目將結合使用資料庫、建立我們需要的業務邏輯以及設定部署項目和測試它的工作。我們要寫什麼?如果你要寫作,那麼你需要寫一些真正有用的東西,這樣人們會對工作感興趣,並且有人可以利用結果。根據這些數據,將編寫一個可與 JavaRush 網站配合使用的電報機器人。這有用嗎?毫無疑問!由於電報機器人編寫起來並不困難,因此您可以快速獲得有用的工作項目。

開發時間

文章每週發布一次,因此如果有任何不清楚的地方,將有足夠的時間來掌握/重複/寫問題。第一篇文章將是我們將在專案中使用的理論基礎。然後就只是練習了。

MVP(最小可行產品)

「Java 專案從頭到尾」:為作品集寫一個真實的專案 - 2什麼是MVP?像往常一樣,這個術語不是我們的,但您可以在wiki上找到合理的解釋。我們引用: MVP是一個功能最少,但足以滿足第一需求的產品。主要任務是接收回饋,為產品的進一步開發形成假設。 對於我們來說,這個描述非常適合。所有功能的快速描述: 作為 Telegram 用戶,我希望能夠以群組的形式訂閱新文章,並在新文章發佈時收到通知。 我喜歡閱讀成功故事組,它激勵我繼續學習並學習新的事物。我比較懶,不想每次都進去刷新頁面。因此,作為一名程式設計師,我想讓我的生活更輕鬆,並編寫一個程序,可以在 Telegram 上向我發送一條訊息,告知我有一篇新文章已發布。此外:這不是我跟蹤的唯一群體。我來自哈爾科夫,所以我有興趣閱讀那裡發表的文章。作為該產品的開發人員,我會對是否有人使用我的作品非常感興趣,因此我們將為管理員添加功能,以便他們可以查看電報機器人的統計資料。是否有可能做到這一點?當然!如何?這就是我將在一系列文章中展示的內容。

代碼名稱

每個很酷的項目都應該有一個代號。我們的也不例外,所以現在它會是這樣的: JRTB(JavaRush Telegram Bot)。 以下將這樣稱呼。

我們將討論哪些主題?

「Java 專案從頭到尾」:為作品集寫一個真實的專案 - 3

資料庫

您需要立即了解您無法在應用程式中儲存狀態(資料和資訊)。數據需要儲存在資料庫中。由於培訓中沒有關於它的資訊(據我記得:D),我將盡力填補我們需要的知識空白。我將嘗試使資料庫模式盡可能簡單,以免造成混亂。這部分將包括:
  1. 基於 MySQL 的 SQL 工作原理。
  2. MySQL Workbench 是一個使用 MySQL 的工具。
  3. 資料庫版本控制。飛行路線和液體基地。
  4. 建立資料庫模式。
  5. 建立資料庫架構圖。

git

已經有關於這個主題的文章。當然,如果沒有版本控制系統,一切都將無法進行。要開始使用 JRTB,您需要了解 git。你可以自己做,或者你可以閱讀我關於這個主題的文章: 如果您願意,您也可以閱讀有關分支策略的內容,但這裡並不重要,可以跳過。

梅文

這裡我們將討論組裝系統,它的用途,我們如何使用它,需要注意什麼,以及良好禮儀的規則。我們也將在這裡討論版本控制,以及我們具體如何做。

碼頭工人

為了讓我們的生活更簡單、更輕鬆,讓部署過程盡可能簡單,我們將使用 Docker。為此,我們先來談談 Docker 是什麼以及有哪些有用的指令。我想說的是,我在使用者層級使用 Docker,並且可能不知道或無法做某事))因此,如果有人建議如何讓 Docker 工作更好/更輕鬆,我只會很高興。這部分將包括:
  1. Docker 的理論與實務。
  2. 透過docker備份/還原資料。
  3. 設定我們的項目,使其在 Docker 中運作。

bash 腳本

為了自動化工作,有時編寫一兩個腳本很有用。Bash 腳本是所有開發人員都在某種程度上理解的腳本,因為它們本質上是 Linux 中的命令列工作,只是保存在單獨的檔案中。

創建應用程式

所有的驅動器都將在這裡。根據先前的知識,我們將建立一個包含 telegram bot 物件的 Spring Boot 應用程式。我們要在這裡做什麼?
  1. 創建應該存在的功能的完整描述。
  2. 簡單描述什麼是電報機器人。
  3. 建立 Spring Boot 應用程式。
  4. 使用 Lombok 的描述。
  5. 使用 UniRest 的說明。
  6. 命令模式的實作+為管理員命令建立您自己的註解。
  7. 使用 UniRest 建立用於處理 JavaRush 查詢(例如群組清單、群組中的文章清單)的用戶端。
  8. 測試。讓我們編寫所有可能的測試來覆蓋我們的功能。
  9. 在 GitHub 上建立一個檢查程式碼品質和自動建置的系統。
  10. 連接資料庫以及資料庫版本控制。
所有這些步驟都將一步一步完成,以便更好地了解正在發生的事情。

未來的結果

結果,我們將得到一個任何閱讀文章的人都可以實施的真實項目。電報機器人的優點是您可以將此項目連結到任何機器人,以免依賴文章中的機器人。我還要多說一句:這只是JRTB的開始。將來可以討論/新增功能。製作這個機器人,使其對 JavaRush 專案的所有學生都有用。而其他人使用並喜歡你的創作的感覺是非常值得的!作為本系列文章的讀者,您將能夠獲得從事真實專案的真實經驗。傳統上,我建議訂閱我在 Github 上的帳戶,我在其中發布解決方案和專案。JRTB 上的所有工作都將透過 GitHub 完成,因此如果您還沒有註冊,我建議您註冊。感謝大家的閱讀,很快再見:)「Java 專案從頭到尾」:為作品集寫一個真實的專案 - 5
留言
TO VIEW ALL COMMENTS OR TO MAKE A COMMENT,
GO TO FULL VERSION