JavaRush /Blog Java /Random-VI /Chúng tôi đang viết một dự án thực tế cho một danh mục đầ...
Roman Beekeeper
Mức độ

Chúng tôi đang viết một dự án thực tế cho một danh mục đầu tư - "Dự án Java từ A đến Z"

Xuất bản trong nhóm
Xin chào mọi người, các Kỹ sư phần mềm cao cấp trong tương lai ! Trong vài tháng qua, tôi đã viết những bài báo đơn giản mô tả những phần quan trọng của quá trình phát triển. Hôm nay tôi sẽ kể cho bạn nghe về ý tưởng của tôi! Tôi muốn giúp bạn có được công việc đầu tiên. Điều gì là cần thiết cho việc này? Để làm được điều này bạn cần tích lũy kinh nghiệm. Hiểu chính những dự án này bao gồm những gì, trên đó các kỹ sư làm việc và đưa thế giới công nghệ thông tin tiến lên phía trước.

Tất cả các tài liệu trong bộ:

“Dự án Java từ A đến Z”: viết một dự án thực tế cho portfolio - 1Làm thế nào để làm nó? Tôi cần phải viết một cái gì đó. Do đó, là một phần của loạt tài liệu này, chúng tôi sẽ từng bước viết bot điện tín của riêng mình (chi tiết bên dưới). Đồng thời, chúng ta sẽ hiểu được nền tảng công nghệ mà ngay cả một nhà phát triển Java mới vào nghề cũng cần có.

Mục tiêu

Viết một dự án sẽ kết hợp làm việc với cơ sở dữ liệu, tạo logic nghiệp vụ mà chúng ta cần và thiết lập công việc để triển khai dự án và thử nghiệm nó. Chúng ta sẽ viết gì? Nếu bạn định viết, thì bạn cần phải viết một cái gì đó thực sự hữu ích để tạo hứng thú cho công việc và ai đó có thể tận dụng kết quả. Dựa trên dữ liệu này, một bot telegram sẽ được viết để hoạt động với trang web JavaRush. Điều này sẽ hữu ích? Không nghi ngờ gì! Do thực tế là các bot telegram không quá khó viết nên bạn có thể nhanh chóng có được một dự án hoạt động hữu ích.

Thời gian phát triển

Các bài viết sẽ được xuất bản mỗi tuần một lần nên sẽ có đủ thời gian để master/repeat/viết câu hỏi nếu có gì chưa rõ. Các bài viết đầu tiên sẽ là nền tảng lý thuyết mà chúng ta sẽ sử dụng trong dự án. Và sau đó nó chỉ là thực hành.

MVP (sản phẩm khả thi tối thiểu)

“Dự án Java từ A đến Z”: viết một dự án thực tế cho portfolio - 2MVP là gì? Thuật ngữ này, như thường lệ, không phải của chúng tôi, nhưng bạn có thể tìm thấy lời giải thích hợp lý trên wiki . Chúng tôi báo giá: MVP là sản phẩm có chức năng tối thiểu nhưng đủ để đáp ứng những nhu cầu đầu tiên. Nhiệm vụ chính là nhận phản hồi để hình thành các giả thuyết cho sự phát triển hơn nữa của sản phẩm. Đối với chúng tôi, mô tả này hoàn toàn phù hợp. Mô tả nhanh về tất cả chức năng: Là người dùng Telegram, tôi muốn có thể đăng ký các bài viết mới trong nhóm và nhận thông báo khi bài viết mới được xuất bản. Tôi thích đọc nhóm Câu chuyện thành công , nó thúc đẩy tôi tiếp tục học hỏi và học hỏi những điều mới mẻ. Tôi lười biếng và không muốn vào và làm mới trang mỗi lần . Vì vậy, tôi, với tư cách là một lập trình viên, muốn làm cho cuộc sống của mình dễ dàng hơn và viết một chương trình gửi cho tôi một tin nhắn trên Telegram rằng một bài báo mới đã được xuất bản. Hơn nữa: đây không phải là nhóm duy nhất mà tôi theo dõi. Tôi đến từ Kharkov nên tôi thích đọc các bài báo được xuất bản ở đó. Với tư cách là nhà phát triển sản phẩm này, tôi sẽ rất quan tâm đến việc liệu có ai đó đang sử dụng tác phẩm của tôi hay không, vì vậy chúng tôi sẽ thêm chức năng cho quản trị viên để họ có thể xem số liệu thống kê của bot telegram. có khả năng làm cái này không? Chắc chắn! Làm sao? Đây là những gì tôi sẽ trình bày trong một loạt bài viết.

Tên mã

Mọi dự án thú vị đều phải có tên mã. Của chúng tôi sẽ không phải là một ngoại lệ, vì vậy hiện tại nó sẽ như thế này: JRTB (JavaRush Telegram Bot). Sau này sẽ gọi như vậy.

Chúng ta sẽ thảo luận qua các vấn đề gì?

“Dự án Java từ A đến Z”: viết một dự án thực tế cho portfolio - 3

Cơ sở dữ liệu

Bạn cần hiểu ngay rằng bạn không thể lưu trữ trạng thái (dữ liệu và thông tin) trong ứng dụng. Dữ liệu cần được lưu trữ trong cơ sở dữ liệu. Vì không có thông tin nào về nó trong khóa đào tạo (theo như tôi nhớ :D), tôi sẽ cố gắng lấp đầy những lỗ hổng kiến ​​​​thức mà chúng ta sẽ cần. Tôi sẽ cố gắng làm cho lược đồ cơ sở dữ liệu đơn giản nhất có thể để không có sự nhầm lẫn. Phần này sẽ bao gồm:
  1. Lý thuyết làm việc với SQL dựa trên MySQL.
  2. Một công cụ để làm việc với MySQL là MySQL Workbench.
  3. Phiên bản cơ sở dữ liệu. Đường bay và nền lỏng.
  4. Tạo một lược đồ cơ sở dữ liệu.
  5. Tạo một bản vẽ lược đồ cơ sở dữ liệu.

Git

Đã có bài viết về chủ đề này. Tất nhiên, sẽ không có gì hoạt động nếu không có hệ thống kiểm soát phiên bản. Để bắt đầu làm việc trên JRTB, bạn cần hiểu git. Bạn có thể tự mình làm hoặc bạn có thể đọc các bài viết của tôi về chủ đề này: Nếu muốn, bạn cũng có thể đọc về các chiến lược phân nhánh, nhưng ở đây nó không quan trọng và có thể bỏ qua.

Maven

Ở đây chúng ta sẽ nói về hệ thống lắp ráp, nó dùng để làm gì, chúng ta sẽ sử dụng nó như thế nào, những điều cần chú ý và các quy tắc ứng xử tốt. Chúng tôi cũng sẽ nói về việc tạo phiên bản ở đây và cách chúng tôi sẽ thực hiện điều đó một cách chính xác.

Docker

Để làm cho cuộc sống của chúng ta đơn giản và dễ dàng hơn cũng như làm cho quá trình triển khai trở nên đơn giản nhất có thể, chúng ta sẽ sử dụng Docker. Để làm điều này, hãy cùng tìm hiểu Docker là gì và có những lệnh hữu ích nào. Tôi muốn nói ngay rằng tôi sử dụng Docker ở cấp độ người dùng và có thể không biết hoặc không thể làm điều gì đó)) Vì vậy, nếu ai đó gợi ý cách làm việc với Docker tốt hơn/dễ dàng hơn, tôi sẽ rất vui vì điều đó. Phần này sẽ bao gồm:
  1. Lý thuyết và thực hành của Docker.
  2. Sao lưu/khôi phục dữ liệu qua docker.
  3. Thiết lập dự án của chúng tôi để nó chạy trong Docker.

Tập lệnh Bash

Để tự động hóa công việc, đôi khi việc viết một hoặc hai tập lệnh sẽ rất hữu ích. Tập lệnh Bash là tập lệnh mà tất cả các nhà phát triển đều hiểu ở mức độ này hay mức độ khác, vì về cơ bản chúng là công việc dòng lệnh trong Linux, chỉ được lưu trong một tệp riêng biệt.

Tạo một ứng dụng

Tất cả ổ đĩa sẽ ở đây. Dựa trên kiến ​​thức trước đó, chúng ta sẽ xây dựng một ứng dụng Spring Boot chứa đối tượng bot telegram. Chúng ta sẽ làm gì ở đây?
  1. Tạo mô tả đầy đủ về chức năng cần có.
  2. Mô tả ngắn gọn về bot telegram là gì.
  3. Tạo một ứng dụng Spring Boot.
  4. Mô tả làm việc với Lombok.
  5. Mô tả làm việc với UniRest.
  6. Việc triển khai Mẫu lệnh + làm việc với việc tạo chú thích của riêng bạn cho các lệnh của quản trị viên.
  7. Tạo một ứng dụng khách để làm việc với các truy vấn JavaRush (chẳng hạn như danh sách các nhóm, danh sách các bài viết trong một nhóm) bằng UniRest.
  8. Đang thử nghiệm. Hãy viết tất cả các bài kiểm tra có thể để bao quát chức năng của chúng tôi.
  9. Thiết lập hệ thống kiểm tra chất lượng code và tự động build trên GitHub.
  10. Kết nối cơ sở dữ liệu cùng với phiên bản cơ sở dữ liệu.
Tất cả các bước này sẽ được thực hiện từng bước một để hiểu rõ hơn những gì đang diễn ra.

Kết quả tương lai

Kết quả là chúng ta sẽ có được một dự án thực tế mà ai đọc bài viết cũng có thể thực hiện được. Cái hay của bot telegram là bạn có thể liên kết dự án này với bất kỳ bot nào để không bị phụ thuộc vào bot sẽ có trong bài viết. Tôi sẽ nói thêm: đây mới chỉ là khởi đầu của JRTB. Chức năng mới có thể được thảo luận/bổ sung trong tương lai. Tạo bot này để nó hữu ích cho tất cả sinh viên của dự án JavaRush. Và cảm giác người khác sử dụng và thích tác phẩm của bạn thật đáng giá! Và bạn, với tư cách là độc giả của loạt bài viết này, sẽ có thể có được kinh nghiệm thực tế khi làm việc trong một dự án thực tế. Theo truyền thống, tôi khuyên bạn nên đăng ký tài khoản của mình trên Github , nơi tôi đăng các giải pháp và dự án. Tất cả công việc trên JRTB sẽ được thực hiện thông qua GitHub, vì vậy tôi khuyên bạn nên đăng ký nếu bạn chưa đăng ký. Cảm ơn mọi người đã đọc, hẹn gặp lại :)“Dự án Java từ A đến Z”: viết một dự án thực tế cho portfolio - 5
Bình luận
TO VIEW ALL COMMENTS OR TO MAKE A COMMENT,
GO TO FULL VERSION