![Đề Tài Website Tuyển Dụng Cho Ngành Giáo Dục.pdf](https://123docz.net/image/doc_normal.png)
Đang tải... (xem toàn văn)
Thông tin tài liệu
TRƯỜNG ĐẠI HỌC BÁCH KHOA HÀ NỘI
ĐỒ ÁN MÔN HỌCPROJECT III
Phạm Đức Trungtrung.pd190082@sis.hust.edu.vnTrường Công nghệ thông tin và Truyền thông
Chuyên ngành Kỹ thuật máy tính
Đề tài: Website tuyển dụng cho ngành giáo dụcGiảng viên hướng dẫn TS Nguyễn Thị Thanh Nga
Hà Nội, 23 tháng 2 năm 2023
Trang 31 Đặt vấn đề - giới thiệu đề tài
● Nhu cầu tìm gia sư, tìm khóa học ngày càng tăng cao đòi hỏi cómột nền tảng trung gian giúp kết nối giữa gia sư và các nhà tuyểndụng Trang web “TopEd" ra đời với sứ mệnh trên
● TopEd cung cấp các công cụ tiện ích giúp các đơn vị tuyển dụngcó thể quản lý các lớp của mình một cách hiệu quả: tích hợpfacebook messager, facebook post Đồng thời cũng cung cấpnhững cung cấp những công cụ giúp cho gia sư có thể nhanhchóng tìm được lớp học phù hợp với mong muốn, trình độ củamình.
2 Thiết kế hệ thốnga Thiết kế tổng quan
i userIJobStatus{
id: string;title: string;}
jobStatus: IJobStatus[];}
IUser{_id?:string;avatar?:string| null;name?:string| null;birthdate?:Date;
Trang 4email?:string| null;phoneNumber?:string[];address?:string[];companyName?:string;contact?:string[];workspace?:IWorkspace;labels?:ILabel[];}
ii jobIJob{
b Biểu đồ hoạt độngi Đăng nhập
Trang 5ii Tạo lớp
Trang 6iii Cập nhật trạng thái lớp
Trang 7iv Tìm lớp
Trang 8v Gia sư ứng uyển
Trang 9vi Tạo trạng thái mới
Trang 10vii Di chuyển lớp học giữa các trạng thái
Trang 11c Công nghệ sử dụngi Backend
Trang 121 NestJs:NestJS là một NodeJS framework dùng đểphát triển server-side applications hiệu quả và có thểmở rộng NestJS là sự kết hợp bởi OOP(ObjectOriented Programming), FP(FunctionalProgramming), FRP(Functional Reactive
Programming) NestJS sử dụng TypeScript để pháttriển nhưng nó cũng hỗ trợ cả Javascript Vì vậy bạnkhông cần phải lo lắng việc mình không thể làm tốtNestJS vì không biết TypeScript Nest được lấy cảmhứng từ kiến trúc Agular nên với các bạn đã làm việcvới Agular thì chắc hẳn sẽ không còn xa lạ gì và cóthể dễ dàng tiếp cận Tin vui với các lập trình viênyêu thích Express hay Fastify là Nest cho phép tíchhợp sử dụng Express và Fastify như một
middleware Nó được đóng gói trong 2 package củanpm làplatform-expressvàplatform-fastifyQuantrọng hơn, nó buộc các nhà phát triển sử dụng mộtkiến trúc cụ thể bằng cách giới thiệu các module,provider và controller, đảm bảo ứng dụng highlyscalable, testable và dễ dàng maintaince Nest rấtkhắt khe và chặt chẽ trong việc xây dựng cấu trúcproject Vì vậy hãy tuân thủ theo nó
2 Docker:
● Docker là nền tảng phần mềm cho phép bạndựng, kiểm thử và triển khai ứng dụng mộtcách nhanh chóng Docker đóng gói phầnmềm vào các đơn vị tiêu chuẩn hóa được gọilàcontainercó mọi thứ mà phần mềm cần đểchạy, trong đó có thư viện, công cụ hệ thống,mã và thời gian chạy Bằng cách sử dụngDocker, bạn có thể nhanh chóng triển khai vàthay đổi quy mô ứng dụng vào bất kỳ môitrường nào và biết chắc rằng mã của bạn sẽchạy được.
● Docker hoạt động bằng cách cung cấpphương thức tiêu chuẩn để chạy mã của bạn.Docker là hệ điều hành dành cho container.Cũng tương tự như cáchmáy ảoảo hóa (loạibỏ nhu cầu quản lý trực tiếp) phần cứng máychủ, các container sẽ ảo hóa hệ điều hành của
Trang 13máy chủ Docker được cài đặt trên từng máychủ và cung cấp các lệnh đơn giản mà bạn cóthể sử dụng để dựng, khởi động hoặc dừngcontainer.
ii Frontend1 NextJs:
● NextJslà một framework dựa trên React chophép bạn tối ưu hoá hiệu năng, hỗ trợ SEO vàtrải nghiệm người dùng thông qua
pre-rendering: Server Side Rendering (SSR)và Static Site Generation (SSG) Ở phần nàymình sẽ chia sẻ với các bạn những kiến thứccơ bản về Next.js và khi nào chúng ta nêndùng nó trong dự án.
● Tại sao dùng NextJs: Ưu điểm chính củaNext.js là hỗ trợ SSR tích hợp để tăng hiệusuất và SEO Server Side Rendering (SSR)hoạt động bằng cách thay đổi luồng yêu cầu(altering the request flow) của ứng dụng Reactđể tất cả các thành phần ngoại trừ máy kháchgửi thông tin của họ đến máy chủ.
● Với tất cả thông tin trên máy chủ, nó có thểhiển thị trước (pre-render) HTML của trang.Máy khách có thể gửi một yêu cầu đến máychủ và nhận toàn bộ trang HTML thay vì yêucầu từng thành phần riêng lẻ với client-siderendering.
2 SEO:
● SEO là từ viết tắt của Search EngineOptimization (tối ưu hóa công cụ tìm kiếm), làmột quy trình nâng cao thứ hạng của websitetrên các công cụ tìm kiếm giúp người dùng cóthể tìm thấy trang web dễ dàng hơn trên bảngkết quả tìm kiếm.
3 Firebase:
● Firebase là platform do Google cung cấp,nhằm hỗ trợ việc tạo ra các web application,mobile application với chất lượng cao.● Với việc sử dụng Firebase, developer có thể
tập trung vào việc phát triển application mà
Trang 14không cần lo về việc sản phẩm của mình sẽhoạt động và được quản lý thể nào ở phíaBackend.
● Firebase Authentication:Firebase
Authentication là chức năng dùng để xác thựcngười dùng bằng Password, số điện thoạihoặc tài khoản Google, Facebook hay Twitter,v.v Việc xác thực người dùng là một chứcnăng quan trọng trong phát triển ứng dụng.Tuy nhiên, việc đối ứng với nhiều phươngpháp xác thực khác nhau sẽ tốn nhiều thờigian và công sức Firebase Authentication giúpthực hiện việc chia sẻ ID giữa các ứng dụng,giúp người dùng dễ dàng tiếp cận sản phẩmhơn Vì thế, nó là một chức năng rất quý.● Firebase Realtime Database: là một cơ sở dữ
liệu NoSQL được lưu trữ đám mây cho phépbạn lưu trữ và đồng bộ dữ liệu Dữ liệu đượclưu trữ dưới dạng JSON và được đồng bộ hóatheo thời gian thực cho mọi máy kết nối.3 Xây dựng triển khai
a Backendi Chức năng
sách cácuser
thông tinuser
thông tin job
Trang 157 delete /user/:id/job/:id xóa job
sách các job
b Frontendi Chức năng
Hiển thị danh sách các lớp học cần tuyển gia sư, tạolớp, …
c Mã nguồn, các màn chính
Trang chủ (1)
Trang 16Dành cho gia sư(1)
Dành cho gia sư(2)
Tìm gia sư (1)
Tìm gia sư (2)
Trang 17Tìm gia sư (3)
Tìm gia sư (4)
Tìm gia sư (5)
Đăng nhập(1)
Trang 18b Tăng tốc độ: Cần tối ưu hóa các câu lệnh để ứng dụng chạynhanh hơn nhằm nâng cao trải nghiệm người dùng.c Tính năng mới:
● Nhắn tin:
Trang 19● Kết nối với facebook post để có thể đăng bài tuyển dụnglên facebook một cách nhanh chóng
Ngày đăng: 29/05/2024, 18:11
Xem thêm:
Tài liệu cùng người dùng
Tài liệu liên quan