1. Trang chủ
  2. » Cao đẳng - Đại học

Báo cáo thực tập lập trình BACK END với JAVA

18 92 0

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

THÔNG TIN TÀI LIỆU

Thông tin cơ bản

Định dạng
Số trang 18
Dung lượng 229,69 KB

Nội dung

TRƯỜNG ĐẠI HỌC CÔNG NGHỆ THÔNG TIN KHOA CÔNG NGHỆ PHẦN MỀM BÁO CÁO THỰC TẬP LẬP TRÌNH BACK-END VỚI JAVA Công ty thực tập : Công ty Inspire Lab Technology Người phụ trách : Bùi Thanh Sang Thực tập sinh : Nguyễn Duy Tân TP Hồ Chí Minh, 04 tháng 06 năm 2020 LỜI MỞ ĐẦU Ngày nay, ngành công nghiệp web phận thiếu ngành công nghiệp phần mềm Với tốc độ phát triển vô mạnh mẽ, công nghệ web nhân tố kích thích phát triển công nghệ thông tin giới, phần cứng phần mềm Bản thân người đam mê công nghệ mong muốn áp dụng công nghệ để làm cho sống tốt hơn, em luôn học hỏi, trau dồi thêm kiến thức, kỹ sống vốn công nghệ cần thiết để phục vụ nhu cầu thân Sau thử sức với nhiều lĩnh vực khác ngành công nghệ phần mềm, em định chọn lập trình web với hướng chuyên sâu back-end để làm định hướng cho nghiệp Thời điểm học kỳ hai năm tư đại học, nhận thấy thời điểm thích hợp để thân tìm kiếm hội làm việc, trau dồi kinh nghiệm thực tế môi trường chuyên nghiệp, nên em lên kế hoạch để thực tập Bản thân em sau thời gian chuẩn bị kiến thức ứng tuyển, nhận hội làm việc công ty Inspire Lab Technology Đây cơng ty có mơi trường chun nghiệp, đại, phù hợp cho em trau dồi kiến thức, kinh nghiệm phát triển kĩ thân Người phụ trách: Bùi Thanh Sang Thực tập sinh: Nguyễn Duy Tân LỜI CẢM ƠN Em xin trân trọng gửi lời cảm ơn sâu sắc đến quý Công ty Inspire Lab Technology tạo điều kiện cho em có hội thực tập học hỏi môi trường chuyên nghiệp công ty Chỉ thời gian ngắn, nhờ dẫn nhiệt tình anh mentor, thân em tiếp thu kiến thức quan trọng để phát triển ứng dụng phần mềm thực tế Chân thành cảm ơn anh chị mentor bỏ nhiều thời gian, cơng sức để hướng dẫn chúng em hồn thành đợt thực tập Đặc biệt em xin gửi lời cảm ơn đặc biệt đến anh Bùi Thanh Sang – Leader công ty chân thành chia sẻ cho kiến thức, kinh nghiệm công việc sống, lời khuyên bổ ích để em tiến bộ, phát triển Cuối em xin gửi lòng biết ơn đến thầy cô khoa Công nghệ Phần mềm, trường Đại học Công nghệ Thông tin, Đại học Quốc gia Thành phố Hồ Chí Minh nhiệt tình hỗ trợ, tạo điều kiện để em hoàn thành tốt môn thực tập doanh nghiệp Nguyễn Duy Tân TP Hồ Chí Minh, ngày 04 tháng 06 năm 2020 Người phụ trách: Bùi Thanh Sang Thực tập sinh: Nguyễn Duy Tân NHẬN XÉT CỦA KHOA ……………….……………………………………………… ……………………………………………….……………………………………………… ……………………………………………….……………………………………………… ……………………………………………….……………………………………………… ……………………………………………….……………………………………………… ……………………………………………….……………………………………………… ……………………………………………….……………………………………………… ……………………………………………….……………………………………………… ……………………………………………….……………………………………………… ……………………………………………….……………………………………………… ……………………………………………….……………………………………………… ……………………………………………….……………………………………………… ……………………………………………….……………………………………………… ……………………………………………….……………………………………………… ……………………………………………….……………………………………………… ……………………………………………….……………………………………………… ……………………………………………….……………………………………………… ……………………………………………….……………………………………………… ……………………………………………….……………………………………………… ……………………………………………….……………………………………………… ……………………………………………….……………………………………………… ……………………………………………….……………………………………………… ……………………………………………….……………………………………………… ……………………………………………….……………………………………………… Người phụ trách: Bùi Thanh Sang Thực tập sinh: Nguyễn Duy Tân …………………………………………………………………………………………………… …………………………………………………… MỤC LỤC LỜI MỞ ĐẦU LỜI CẢM ƠN NHẬN XÉT CỦA KHOA MỤC LỤC Chương 1: Giới thiệu công ty thực tập Giới thiệu công ty Inspire Lab Technology Sản phẩm công ty Chương 2: Nội dung thực tập Tìm hiểu cơng ty kĩ công ty Nghiên cứu kỹ thuật 2.1 Các công cụ làm việc 2.2 Tìm hiểu ngơn ngữ Java 2.3 Lập trình Web Service với Spring Framework 2.4 Quy trình phát triển phần mềm Business project Thực project Lịch làm việc Chương 3: Chi tiết project 11 Giới thiệu dự án: 11 1.1 Business Requirement 11 1.2 Các API 11 Thực 17 Kế hoạch 17 TÀI LIỆU THAM KHẢO 19 TỔNG KẾT 20 Người phụ trách: Bùi Thanh Sang Thực tập sinh: Nguyễn Duy Tân Chương 1: Giới thiệu công ty thực tập Giới thiệu công ty Inspire Lab Technology Inspire Lab Technology công ty startup Việt Nam chuyên lĩnh vực phát triển sản phẩm gia công phần mềm Sau năm hoạt động, công ty có 50 thành viên đạt nhiều thành tựu kinh doanh, đứng vững thị trường phần mềm có tính cạnh tranh cao Việt Nam Sản phẩm công ty Inspire Lab Technology cung cấp dịch vụ giải pháp tối ưu phần mềm khách hàng với dịch vụ: phát triển phần mềm theo yêu cầu, bảo trì hệ thống sản phẩm phần mềm, quản lý ứng dụng; kiểm thử bảo đảm chất lượng phần mềm Bên cạnh đó, cơng ty phát triển mạnh mẽ lĩnh vực Product với sản phẩm chuyên blockchain payment Người phụ trách: Bùi Thanh Sang Thực tập sinh: Nguyễn Duy Tân Chương 2: Nội dung thực tập Đợt thực tập với chủ đề “Lập trình back-end với Java” nhằm mục đích giúp sinh viên thực tập đào tạo tồn diện lập trình web sử dụng ngơn ngữ Java Spring Framework, đồng thời rèn luyện kỹ mềm làm việc nhóm, thuyết trình, giao tiếp Tại cơng ty, sinh viên có hội học tập, khám phá làm việc môi trường phát triển phần mềm chun nghiệp Tìm hiểu cơng ty kĩ công ty Thời gian: ngày Nội dung: Giới thiệu công ty, nhân quy định nhân viên - Được phận nhân giới thiệu cơng ty, q trình thành lập phát triển, sản phẩm, thành đạt hướng cơng ty tương lai - Ngồi giới thiệu nhân công ty, nắm quy định nhân viên, hiểu văn hoá tham gia vào hoạt động, phong trào hàng ngày, hàng tuần công ty Kết quả: Hiểu công ty Inspire Lab Technology, đồng nghiệp, văn hố mơi trường làm việc Từ dễ dàng thích nghi với mơi trường để đạt suất cao công việc Nghiên cứu kỹ thuật 2.1 Các công cụ làm việc Thời gian: ngày Nội dung: Tìm hiểu cơng cụ sử dụng q trình làm việc - Cơng cụ trao đổi, giao tiếp: Telegram, Gmail, Google Calendar - Công cụ quản lý dự án: OpenProject - Công cụ quản lý phiên phần mềm: Git, GitLab Người phụ trách: Bùi Thanh Sang Thực tập sinh: Nguyễn Duy Tân - Cơng cụ liên quan lập trình: IntelliJ IDEA Thực hiện: Thực hành sử dụng phần mềm nêu Kết quả: Làm quen, biết công dụng cách sử dụng công cụ phục vụ công việc 2.2 Tìm hiểu ngơn ngữ Java Thời gian: ngày (1 tuần) Nội dung: Tìm hiểu kiến thức nâng cao Java - Lập trình hướng đối tượng - Các kiến thức Java Web Service, data type, bean, annotation, JVM, … - Database, JPA, transaction handling, exception handling - Tìm hiểu Java convention coding best practice Thực hiện: - Tham gia đầy đủ buổi training công ty - Nghiên cứu, ứng dụng lý thuyết để xây dựng sản phẩm đơn giản - Báo cáo hàng ngày với Mentor kiến thức nghiên cứu Kết quả: - Nâng cao kỹ lập trình với ngơn ngữ Java - Có kiến thức quan trọng thiết kế kiến trúc cho project - Ngồi cịn biết thêm số quy tắc việc viết code cho chuẩn, dễ đọc dễ hiểu 2.3 Lập trình Web Service với Spring Framework Thời gian: ngày (2 tuần) Nội dung: Các kiến lập trình back-end với Spring Framework - Microservice với Spring / Spring Boot - Spring data JPA - Spring Security Người phụ trách: Bùi Thanh Sang Thực tập sinh: Nguyễn Duy Tân - Spring Cloud - Spring Batch - Viết unit testing với Junit Thực hiện: - Tham gia đầy đủ buổi training - Làm thực hành, kiểm tra kiến thức học - Thực thuyết trình kết nghiên cứu Kết quả: - Hiểu khái niệm lập trình back-end với Java - Biết cách sử dụng component Spring Framework Spring security, Spring Cloud, Spring Batch 2.4 Nắm cách triển khai ứng dụng với Docker Quy trình phát triển phần mềm Business project Thời gian: ngày (1 tuần) Nội dung: - Quy trình phát triển phần mềm với Scrum - Business project Thực hiện: - Tham gia đầy đủ buổi training - Nghiên cứu tài liệu source code project Kết quả: - Nắm quy trình khái niệm phát triển phần mềm với Scrum - Hiểu business project mức đơn giản - Nắm cách tổ chức, quy tắc viết code source code project Người phụ trách: Bùi Thanh Sang Thực tập sinh: Nguyễn Duy Tân 2.5 Tìm hiểu GRPC Thời gian: ngày (1 tuần) Nội dung: - Tìm hiểu GRPC - Hiện thực phương thức giao tiếp server thông qua GRPC Thực hiện: - Tham gia đầy đủ buổi training - Nghiên cứu tài liệu source code project Kết quả: 2.6 - Sử dụng tốt GRPC dự án - Xây dựng demo nhỏ sử dụng GRPC Tìm hiểu Kafka, ActiveMQ Thời gian: ngày (1 tuần) Nội dung: - Tìm hiểu Kafka, ActiveMQ - Hiện thực phương thức giao tiếp server thông qua Kafka, ActiveMQ Thực hiện: - Tham gia đầy đủ buổi training - Nghiên cứu tài liệu source code project Kết quả: 2.7 - Sử dụng tốt Kafka, ActiveMQ dự án - Xây dựng demo nhỏ sử dụng Kafka, ActiveMQ Tìm hiểu Zookeeper Thời gian: ngày (1 tuần) Nội dung: Người phụ trách: Bùi Thanh Sang Thực tập sinh: Nguyễn Duy Tân - Tìm hiểu Zookeeper - Ứng dụng Zookeeper dự án thực tế Thực hiện: - Tham gia đầy đủ buổi training - Nghiên cứu tài liệu source code project Kết quả: - Sử dụng tốt Zookeeper dự án - Xây dựng demo nhỏ sử dụng Zookeeper Thực project Sau tháng training thực hành, thực tập sinh nắm kiến thức Java, Spring Đồng thời ứng dựng kiến thức để xây dựng project để demo thuyết trình Chi tiết đồ án nói phần sau Lịch làm việc Tuần Cơng việc - Giới thiệu công ty, Người hướng Mức độ hoàn dẫn Bùi Thanh Sang thành 10 / 10 Bùi Thanh Sang 10 / 10 nhân quy định nhân viên - Tìm hiểu công cụ sử dụng trình làm việc - Lên kế hoạch training Tìm hiểu kiến thức Người phụ trách: Bùi Thanh Sang Thực tập sinh: Nguyễn Duy Tân 10 3, nâng cao Java Các kiến thức kinh nghiệm Bùi Thanh Sang 10 / 10 lập trình back-end với Spring Quy trình phát triển phần mềm Bùi Thanh Sang 10 / 10 business project Nghiên cứu kiến thức nâng Minh Nhựt Bùi Thanh Sang 10 / 10 Bùi Thanh Sang 10 / 10 cao technical project 6,7,8 - Spring Cloud Data Flow - Elastic Search - MinIO Bắt đầu tham gia dự án với task đơn giản Chương 3: Chi tiết project Giới thiệu dự án: Tên dự án: Quản lý User Profile 1.1 Business Requirement Áp dụng kiến thức training để xây dựng project quản lý User Profile đáp ứng yêu cầu phần mềm sau: - Quản lý thông tin user - Phân quyền cho user - Authentication với Json Web Token Project triển khai dạng web service với RESTful API 1.2 Các API 1.2.1 Đăng ký user Người phụ trách: Bùi Thanh Sang Thực tập sinh: Nguyễn Duy Tân 11 Đăng ký user với thông tin Hệ thống tiến hành xác thực thơng tin nhập vào, sau tạo user hệ thống Nếu tạo thành công, hệ thống trả token cho user API register user 1.2.2 Đăng nhập Đăng nhập với username password Nếu thành công, hệ thống trả token phục vụ cho việc truy cập vào hệ thống user Người phụ trách: Bùi Thanh Sang Thực tập sinh: Nguyễn Duy Tân 12 API login 1.2.3 Phân quyền cho user Cung cấp quyền cho user truy cập vào tập liệu định Người phụ trách: Bùi Thanh Sang Thực tập sinh: Nguyễn Duy Tân 13 Thực Project thực cá nhân thực tập sinh: - Nguyễn Duy Tân thành viên mentor: - Anh Bùi Thanh Sang Kế hoạch Giai đoạn alpha: - Lên kế hoạch - Tìm hiểu cơng nghệ sử dụng: Spring Boot, Spring Security, Json Web Token, Docker, Jacoco, … Kết quả: Hoàn thành 100% yêu cầu giao Người phụ trách: Bùi Thanh Sang Thực tập sinh: Nguyễn Duy Tân 14 Giai đoạn beta: - Cài đặt API phục vụ cho business requirement - Viết unit testing cho API bên back-end - Xây dựng hệ thống Authentication với Json Web Token - Triển khai ứng dụng với Docker - Chuẩn bị thuyết trình Kết quả: Hồn thành 80% yêu cầu giao Người phụ trách: Bùi Thanh Sang Thực tập sinh: Nguyễn Duy Tân 15 TÀI LIỆU THAM KHẢO https://spring.io/guides/tutorials/rest/ https://www.docker.com/ https://spring.io/projects/spring-security https://spring.io/guides/topicals/spring-security-architecture https://jwt.io/ TỔNG KẾT Người phụ trách: Bùi Thanh Sang Thực tập sinh: Nguyễn Duy Tân 16 Như vậy, vòng khoảng thời gian ngắn khoảng tháng, em trải nghiệm học hỏi nhiều kỹ năng, kiến thức quan trọng ngôn ngữ Java, Spring Framework, quy trình phát triển phần mềm chuyên nghiệp Đây tảng để em tiếp tục học hỏi, phát triển để trở thành kĩ sư phần mềm chuyên nghiệp Em xin chân thành cảm ơn anh Bùi Thanh Sang, công ty Inspire Lab Technology tạo điều kiện giúp đỡ em hoàn thành tập Người phụ trách: Bùi Thanh Sang Thực tập sinh: Nguyễn Duy Tân 17 ... Product với sản phẩm chuyên blockchain payment Người phụ trách: Bùi Thanh Sang Thực tập sinh: Nguyễn Duy Tân Chương 2: Nội dung thực tập Đợt thực tập với chủ đề ? ?Lập trình back- end với Java? ?? nhằm... testing với Junit Thực hiện: - Tham gia đầy đủ buổi training - Làm thực hành, kiểm tra kiến thức học - Thực thuyết trình kết nghiên cứu Kết quả: - Hiểu khái niệm lập trình back- end với Java -... Nội dung: Các kiến lập trình back- end với Spring Framework - Microservice với Spring / Spring Boot - Spring data JPA - Spring Security Người phụ trách: Bùi Thanh Sang Thực tập sinh: Nguyễn Duy

Ngày đăng: 05/09/2021, 20:58

TỪ KHÓA LIÊN QUAN

w