1 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 TÌM HIỂU FRAMEWORK ASP.NET CORE VÀ XÂY DỰNG ỨNG DỤNG Công ty thực tập : Công ty cổ phần Công nghệ Saha Người phụ trách : Nguyễn Phúc Đạt Thực tập sinh : Nguyễn Mạnh Hiếu - 17520479 TP Hồ Chí Minh, tháng năm 2022 Nguyễn Mạnh Hiếu LỜI MỞ ĐẦU Trong cuộc cách mạng công nghiệp 4.0, công nghệ thông tin nói chung và ngành Công nghệ phần mềm nói riêng luôn là nhân tố đóng vai trò quan trọng quá trình phát triển của xã hội Công nghệ Web, hay công nghệ sản xuất các trang web đã phục vụ hầu hết các nhu cầu của người từ bán hàng, cung cấp kiến thức đến thông tin liên lạc, Hiện đã có đến hơn 1.5 tỷ trang web, nhưng nhu cầu tạo những trang web mới vẫn chưa có dấu hiệu giảm Do đó, một trang web muốn được nhiều người sử dụng phải đáp ứng được yếu tố hình thức và nội dung Làm nào để sản phẩm tạo đạt chất lượng cao ở hai yếu tố trên luôn làm bất kì một đội ngũ phát triển website nào cũng cần phải suy nghĩ đau đầu Để thử thách bản thân ngành công nghiệp web, em đã lựa chọn Asp.net core là định hướng cho việc học cũng như nghề nghiệp tương lai của ASP.NET Core là một phiên bản mới của ASP.NET, được phát hành bởi Microsoft và là một mã nguồn mở trên GitHub ASP.NET Core được sử dụng để phát triển khuôn khổ website có thể thích ứng với nhiều trình duyệt khác như Windows, Mac Linux kể cả trên nền tảng MVC Ban đầu, phiên bản này có tên là ASP.NET nhưng sau đó được đổi tên thành ASP.NET Core ASP.NET Core được thiết kế để tối ưu development framework cho những ứng dụng cái mà được chạy on-promise hay được triển khai trên đám mây ASP.NET Core bao gồm các thành phần theo hướng module với mục đích tới thiểu tài nguyên và tiết kiệm chi phí phát triển Đồng thời, ASP.NET Core cũng là một mã nguồn mở, một xu mà các ngôn ngữ lập trình hiện hướng đến Những lợi ích sử dụng ASP.NET Core: • Xây dựng web UI và web API với ASP.NET Core MVC • Người dùng có thể tạo những ứng dụng web có thể thực hiện testing theo mô hình MVC Nguyễn Mạnh Hiếu • Xây dựng HTTP services hỗ trợ nhiều định dạng và đầy đủ những hỗ trợ cho nội dung của dữ liệu trả về • Razor cung cấp ngôn ngữ tạo Views hiệu quả • Tag Helper cho phép code server side tham gia vào quá trình tạo và render phần tử HTML • Model Binding có thể tự động ánh xạ dữ liệu từ HTTP request tới những tham số của method action • Model validation thực hiện validate client và server một cách tự động Phát triển client-side: ASP.NET Core được thiết kế tích hợp với nhiều client side frameworks một cách liên tục bao gồm AngularJS, Bootstrap và KnockoutJS Những lợi ích khác: • Ngoài ra, ASP.NET Core còn được đánh giá cao mang mình nhiều lợi ích khác như: • Là khung mẫu và gọn gàng hơn kiến trúc nhiều tầng • Là một khung công tác với mã nguồn mở • Dễ dàng tạo ứng dụng ASP.NET đa nền tảng trên Windows, Mac và Linux • Cấu hình là môi trường sẵn sàng cho đám mây • Khả lưu trữ trên: IIS, HTTP.sys, Kestrel, Nginx, Apache và Docker Nguyễn Mạnh Hiếu LỜI CẢM ƠN Trân trọng gửi lời cảm ơn Công ty cổ phần Công nghệ Saha đã tạo điều kiện cho em có cơ hội được thực tập công ty Chỉ một thời gian ngắn, nhưng nhờ sự dẫn nhiệt tình của nhóm trainer,em đã có thêm nhiều kiến thức, kinh nghiệm bổ ích mà tụi em chưa có được trước tới công ty Chân thành cảm ơn các anh chị nhóm trainer đã bỏ nhiều thời gian,công sức để hướng dẫn chúng em hoàn thành đợt thực tập Đặc biệt cảm ơn anh Nguyễn Phúc Đạt, đã training cho chúng em những kiến thức quan trọng giúp đỡ cho em tận tình từ những khó khăn công việc, đến những khó khăn việc làm quen với môi trường mới đã dẫn chúng em về cách làm báo cáo, lên kế hoạch, những kỹ không thể thiếu để có thể làm một sản phẩm thời gian qua Cũng xin cảm ơn thầy cô khoa Công nghệ phần mềm đã nhiệt tình hỗ trợ, tạo điều kiện em làm báo cáo Nguyễn Mạnh Hiếu TP Hồ Chí Minh, tháng 06 năm 2022 Nguyễn Mạnh Hiếu NHẬN XÉT CỦA KHOA Nguyễn Mạnh Hiếu 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 cổ phần Công nghệ Saha Chương 2: Nội dung thực tập 11 Tìm hiểu cơng ty kỹ công ty 11 Nghiên cứu kỹ thuật 11 2.1 Tìm hiểu ASP.NET Core công cụ làm việc 11 2.2 Tìm hiểu Microsoft SQL Server 12 2.3 Tìm hiểu Angular framework 12 Thực project 13 Lịch làm việc 13 Chương 3: Chi tiết project 15 Giới thiệu website : 15 Cơ sở liệu: 15 Giao diện trang web: 16 TÀI LIỆU THAM KHẢO 23 Chương 4: TỔNG KẾT 24 Nguyễn Mạnh Hiếu Chương 1: Giới thiêu công ty thực tập Giới thiệu Công ty cổ phần Công nghệ Saha Công ty cổ phần Công nghệ Saha ( SAHA TECHNOLOGY JSC ) thuộc hệ sinh thái của SAHA là Công ty phần mền chuyển thiết kế , cung cấp các dịch vụ về WEBSITE - APP – POS quản lí và bán hàng đa kênh cho các doanh nghiệp luôn hướng đến giải pháp kinh doanh O2O ( Online to Ofline ) cho các chủ doanh nghiệp Đây đợc xem là mô hình của tương lai mang đến mục tiêu tận dụng các ưu điểm của cả kênh bán hàng truyền thống và trực tuyến Lịch sử doanh nghiệp - Từ đầu 2020 đại dịch Covid 19 xảy và nhận thấy thời cơ của chuyển đổi số Việt Nam, Saha với đội ngũ cựu du học sinh và kỹ sư phần mềm Nhật Bản đã bắt đầu xây dựng và cho mắt nền tảng quản lý và bán hàng đa kênh phù hợp với tất cả các nhà bán hàng Sau một thời gian đưa nền tảng đồng bộ giữa App – Web – Pos với tiêu chí cụ thể DỄ DÀNG – NHANH CHÓNG - TIẾT KIỆM đến tay người bán hàng Với bộ giải pháp bán hàng này giúp đối tác của SAHA dễ dàng tiếp cận tới khách hàng của họ và tăng doanh thu nâng tầm doanh nghiệp - Hiện đã có hơn 500 doanh nghiệp đã và sử dụng các giải pháp của Saha Nguyễn Mạnh Hiếu - Quy mô hoạt động: Với tiêu chí đưa doanh nghiệp tới gần hơn với người khách hàng SAHA đã đưa thị trường công nghệ các sản phẩm thương mại điện tử theo các lĩnh vực sau : - IKI POS: Phần mền quản lí và bán hàng offline dễ dàng sử dụng nhất giúp quản lí bán hàng, doanh thu , lãi lỗ ,tính tiền , in hóa đơn , chấm công và quản lí nhân viên cho khách hàng nhanh chóng - IKI WEB: Thiết kế Website quản lí và bán hàng offline chuẩn SEO, chuyên nghiệp - IKI TECH: Phần mềm quản lí bán hàng tích hợp Online và Offline, giúp người bán hàng các nề tảng đa kênh : Lazada , Shopee, quản lí được nhiều kênh và bán hàng , nhưng những Saha còn có chương trình Affiliate giúp cho doanh nghiệp tiếp cận tới nhiều đối tượng kinh doanh hơn Đặc biệt đối tác của SAHAcó thể được mở thêm APP bán hàng riêng cho khách hàng của họ Nguyễn Mạnh Hiếu - WEBSITE IKI TECH: đây là website bán hàng Online và Offline, giúp người bán hàng trên các nề tảng đa kênh : Lazada , Shopee, quản lí được nhiều kênh bán hàng , nhưng những Saha còn có chương trình Affiliate giúp cho doanh nghiệp tiếp cận tới nhiều đối tượng kinh doanh hơn - IKI STORE: Ngoài ra, SAHA còn mở rộng thiết kế app bán hàng dành riêng cho khách hàng của doanh nghiệp Giúp cho doanh nghiệp tăng mức độ nhận diện thương hiệu với khách hàng của họ Nguyễn Mạnh Hiếu 10 Ngoài các sản phẩm về công nghệ cho các doanh nghiệp bán hàng, Saha – IKI Tech cung cấp cho doanh nghiệp các dịch vụ Digital Marketing chuyên nghiệp, hướng đến giải pháp chuyển đổi số hoàn thiện Nguyễn Mạnh Hiếu 11 Chương 2: Nội dung thực tập Đợt thực tập với chủ đề “TÌM HIỂU FRAMEWORK ASP.NET CORE VÀ XÂY DỰNG ỨNG DỤNG” nhằm mục đích giúp sinh viên thực tập được đào tạo toàn diện về lập trình webiste, đồng thời rèn luyện những kỹ mềm như làm việc nhóm, thuyết trình, giao tiếp Tại công ty, sinh viên có cơ hội được học tập, khám phá và làm việc một môi trường phát triển chuyên 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 về công ty, cách tổ chức của công ty Được nghe người phụ trách giới thiệu về công ty, khối phát triển phần mềm, team, quy trình làm việc từ cao x́ng thấp, cách thức tổ chức của công ty - Được giới thiệu về cách thức làm việc công ty như thời gian làm, các quy định cần phải tuân thủ, cách sử dụng email công việc, điểm danh, check in/checkout… Kết quả: Hiểu thêm về cách tổ chức của một công ty là như nào Có thêm các kĩ làm việc như gửi mail, cách hỏi và đặt vấn đề, giúp cho em tự tin hơn những thời gian làm viêc sau này - Nghiên cứu kỹ thuật 2.1 Tìm hiểu ASP.NET Core công cụ làm việc Nội dung : o ASP.NET Core: Tìm hiểu các thành phần cơ bản, Dotnet CLI, cấu trúc một dự án ASP.NET Core, cách config, … o Entity framework: Tìm hiểu các thành phần cơ bản, dbcontext, entity, migration, code-first, db-first,… o Tìm hiểu các công cụ trên Visual Studio o Nghiên cứu cách sử dụng git o Tìm hiểu cách viết một REST với ASP.NET Core và Entity framework, tạo một git repository Thực : o Đọc nội dụng hướng đẫn của mentor o Tự tìm hiểu các tài liệu liên quan o Thực hành sử dụng các phần mềm đã nêu Kết : Nguyễn Mạnh Hiếu 12 2.2 - Hiểu được kiến thức cơ bản về ASP.NET Core Entity framework - Nắm được cách sử dụng Visual Studio, Git, NuGet ackage manager Tìm hiểu Microsoft SQL Server Nội dung : - Nghiên cứu cái tài liệu về SQL, các cú pháp SQL, … - Tìm hiểu và cài đặt Microsoft SQL server - Kết nối với dự án với database Thực : o Đọc nội dung hướng dẫn của mentor o Tự tìm hiểu các tài liệu liên quan o Thực hành áp dụng vào project Kết : 2.3 o Hiểu được kiến thức cơ bản về Microsoft SQL Server o Nắm được cách cài đặt và sử dụng Microsoft SQL Server, Microsoft SQL Server Management Studio Tìm hiểu Angular framework Nội dung: o Tìm hiểu khái niệm single-page application o Tìm hiểu về các kiến thức cơ bản của Angular, Angular component o Tìm hiểu về Directives, làm việc với các Directives cơ bản như ngFor, ngIf o Tìm hiểu kiến thức về Service Angular( Angular HTTP Client, Observable, ) o Tìm hiểu về Reactive Form(FormsModule,ngForm, ngModel,ngSubmit) o Nắm rõ kiến thức về Router và Router Guard Thực : o Đọc nội dung hướng dẫn của mentor o Tự tìm hiểu các tài liệu liên quan Nguyễn Mạnh Hiếu 13 o Thực hành áp dụng vào project Kết : o Tự tìm hiểu các tài liệu liên quan o Thực hành áp dụng vào project Thực project Sau một tháng được training và thực hành, thực tập sinh đã nắm được những kiến thực cơ bản về ASP.NET Core, Entity Framework, SQL Server, AngularJS Trong tháng thứ hai, thực tập sinh cần áp dụng những kiến thức đã học để tham gia vào project Lịch làm việc Tuần Công việc Tìm hiểu về công ty, cách tổ chức của công ty - Làm quen với các công cụ làm việc công ty - Học cách trao đổi, làm việc qua email - Tìm hiểu về ASP.NET Core công cụ làm việc - - Tìm hiểu về ASP.NET Core - Tìm hiểu Entityframework - Làm quen với công cụ làm việc Người hướng dẫn Mức độ hoàn thành Nhận xét người hướng dẫn Chị Hiên Anh Đạt …… Tìm hiểu cấu trúc project ASP.NET CORE 5.0 MVC - Làm việc với Static Files ASP.NET CORE 5.0 MVC - Làm việc với Controller,View,Custom - Anh Đạt Anh Đạt Nguyễn Mạnh Hiếu 14 Layout,Default Layout.cshtml … - Làm việc với Routing/EndPoints - Truyền dữ liệu từ Controller sang View Làm việc với SQL để tạo bảng biểu (table) cho dự án - Tạo Models Asp.Net Core CRUD với Entity Framework - Cập nhật DbContext thêm mới Models với Entity Framework - Kiểm tra lại kiến thứ 9-12 Xử lý những task được giao Anh Đạt Anh Đạt Anh Đạt Anh Đạt Anh Đạt Nguyễn Mạnh Hiếu 15 Chương 3: Chi tiết project Giới thiệu website : Đây webiste Cổng thông tin đào tạo của Trường Đại học Công nghệ Thông tin là trang thông tin và tiện ích dành cho sinh viên, giảng viên và cán bộ của Trường Ý tưởng được dựa webiste: https://daa.uit.edu.vn/ Cơ sở liệu: - Gồm 10 bảng: giangvien, khoa, lop, dangkyhocphan, lopcn, taikhoan, thongbao, sinhvien,hoc,mon - Xây dựng ràng buộc toàn vẹn trigger, function, procedure Nguyễn Mạnh Hiếu 16 Giao diện trang web: 3.1 Trang thông báo: 3.2Trang đăng nhập: 3.3 Trang chủ: Nguyễn Mạnh Hiếu 17 Nguyễn Mạnh Hiếu 18 3.4 Quản lý đăng ký học phần: 3.5 Quản lý sinh viên: Nguyễn Mạnh Hiếu 19 3.6 Quản lý giáo viên: 3.7 Quản lý học vụ: Nguyễn Mạnh Hiếu 20 3.8 Quản lý môn học: 3.9 Quản lý khoa: Nguyễn Mạnh Hiếu 21 3.10 Quản lý lớp học: 3.11 Quản lý lớp chủ nhiệm: Nguyễn Mạnh Hiếu 22 3.12 Quản lý tài khoản : 3.13 : Quản lý thông báo: Nguyễn Mạnh Hiếu 23 TÀI LIỆU THAM KHẢO - HTML CSS https://www.w3schools.com/html/html_css.asp - Get started with ASP.NET Core MVC https://docs.microsoft.com/vi-vn/aspnet/core/tutorials/first-mvc-app/startmvc?view=aspnetcore-2.1&tabs=visual-studio https://dotnet.microsoft.com/en-us/apps/aspnet Nguyễn Mạnh Hiếu 24 Chương 4: TỔNG KẾT Sau gần tháng thực tập SAHA, em đã học được nhiều kinh nghiệm bổ ích về lập trình web với asp.net core, về thiết kế UI/UX hoàn thành các nhiệm vụ được giao Nhờ đó, em đã hiểu được quy trình phát triển của một dự án, đồng thời hiểu được trải nghiệm làm dự án thực tế, tăng kĩ giao tiếp, xử lí tình h́ng Chân thành cám ơn quý Công ty cổ phần Công nghệ SAHA đã giúp đỡ tận tình cho em thời gian thực tập công ty Đặc biệt là anh Nguyễn Phúc Đạt anh chị công ty đã giúp đỡ và hướng dẫn quá trình làm việc để em có thể hoàn thành nhiệm vụ được giao Nguyễn Mạnh Hiếu ... hoàn thiện Nguyễn Mạnh Hiếu 11 Chương 2: Nội dung thực tập Đợt thực tập với chủ đề “TÌM HIỂU FRAMEWORK ASP.NET CORE VÀ XÂY DỰNG ỨNG DỤNG” nhằm mục đích giúp sinh viên thực tập được... thuật 11 2.1 Tìm hiểu ASP.NET Core cơng cụ làm việc 11 2.2 Tìm hiểu Microsoft SQL Server 12 2.3 Tìm hiểu Angular framework 12 Thực project ... thuật 2.1 Tìm hiểu ASP.NET Core công cụ làm việc Nội dung : o ASP.NET Core: Tìm hiểu các thành phần cơ bản, Dotnet CLI, cấu trúc một dự án ASP.NET Core, cách config, … o Entity framework: