Chương 2: Nội dung thực tập Đợt thực tập với chủ đề “Lập trình ứng dụng cập nhật và chỉnh sửa ảnh bằng React trên Sharepoint Server” nhằm mục đích giúp sinh viên thực tập được đào tạo to
Trang 1KHOA CÔNG NGHỆ PHẦN MỀM
BÁO CÁO THỰC TẬP
LẬP TRÌNH ỨNG DỤNG CẬP NHẬT VÀ CHỈNH SỬA ẢNH ĐẠI DIỆN BẰNG REACT
TRÊN SHAREPOINT SERVER
Thực tập sinh : Đặng Phương Tân
Trang 2LỜI MỞ ĐẦU
Sự xuất hiện của Intranet trong môi trường làm việc vào giữa những năm 90 cho thấy Intranet hoạt động như một nơi lưu trữ đơn giản cho các file, thông tin và giao tiếp theo kiểu top-down (từ trên xuống)
Giờ đây, Intranet đã phát triển để trở thành trung tâm của một doanh nghiệp, cho phép giao tiếp, chia sẻ kiến thức, cộng tác, v.v Intranet giúp nhân viên nộp chi phí, làm đơn xin nghỉ phép và xem chi tiết kế hoạch lương hưu của mình
Bạn có thể liên hệ với đồng nghiệp ở văn phòng khác, viết blog cập nhật tin tức mới nhất của tổ chức và tạo ra một cộng đồng từ chính những người trong doanh nghiệp của bạn Đối với hầu hết các doanh nghiệp, không còn nghi ngờ gì nữa, Intranet là một khoản đầu tư lớn, nhưng đáng giá
Cùng với sự phát triển của thời đại công nghệ 4.0 và trào lưu startup, càng ngày càng có nhiều doanh nghiệp ra đời dẫn đến nhu cầu về hệ thống intranet tăng cao Bên cạnh những công
ty trẻ tuổi trong nước, những công ty lớn trên thế giới (như ELCA) cũng gia nhập vào thị trường Việt Nam, góp phần rất lớn vào sự phát triển tích cực của kinh tế Việt Nam
Sau bốn năm học tập trên trường, do mong muốn có thêm kinh nghiệm thực tế, cũng như muốn được tham gia làm intranet trong một môi trường chuyên nghiệp Vì vậy, em quyết định chọn ELCA - một môi trường lý tưởng, hiện đại, chuyên nghiệp - là nơi sẽ giúp em thực hiện được dự định này
Trang 3thành cảm ơn anh Khưu Vĩnh Hoàng Phúc, đã training React, hướng dẫn, giúp đỡ cho em tận
tình cả những khó khăn trong công việc, đến những khó khăn việc làm quen với môi trường mới, đã bỏ ra nhiều thời gian, công sức để hướng dẫn em hoàn thành đợt thực tập này
Cũng xin cảm ơn thầy cô trong khoa Công nghệ phần mềm đã nhiệt tình hỗ trợ, tạo điều kiện em làm bài báo cáo này
Đặng Phương Tân TpHCM, ngày……, tháng……, năm……
Trang 4NHẬN XÉT CỦA KHOA
Trang 5
MỤC LỤC
MỤC LỤC 1
Chương 1: Giới thiệu công ty thực tập 2
1 Giới thiệu công ty ELCA 2
2 Giá trị cốt lõi của công ty ELCA 2
Chương 2: Nội dung thực tập 4
1 Tìm hiểu công ty và các kỹ năng cơ bản trong công ty 4
2 Nghiên cứu kỹ thuật 4
3 Thực hiện project 11
4 Lịch làm việc 12
Chương 3: Chi tiết về project 15
1 Giới thiệu về ứng dụng 15
2 Thực hiện 16
3 Kế hoạch 16
TÀI LIỆU THAM KHẢO 17
TỔNG KẾT 18
Trang 6Chương 1: Giới thiệu công ty thực tập
1 Giới thiệu công ty ELCA
Thành lập từ năm 1968, ELCA là một trong những nhà cung cấp giải pháp CNTT độc lập lớn nhất của Thụy Sĩ và là đối tác với các công ty trong danh sách Fortune
500 để cung cấp các giải pháp phần mềm được thiết kế thông minh sử dụng phương pháp Agile và phương pháp tiếp cận nhóm phân tán Đổi mới trong phát triển sản phẩm là thế mạnh cốt lõi của công ty
Tập đoàn thuộc sở hữu tư nhân, có văn phòng tại Basel, Berne, Geneva, Lausanne (HQ), Zurich, Pháp, Đức, Ý, Tây Ban Nha, Anh và Việt Nam
2 Giá trị cốt lõi của công ty ELCA
- Hợp tác: sánh vai làm việc cùng nhau mang lại kết quả tốt nhất và cùng thành công
- Có cơ sở: ELCA đam mê tư duy đổi mới và hoàn thiện kỹ thuật, công ty phát triển các giải pháp vượt trội, đạt được lợi thế cạnh tranh cho ELCA và khách hàng của công ty và do đó gia tăng giá trị
- Độc lập: trách nhiệm của ELCA là cung cấp giá trị cho khách hàng, bất kể sử dụng công nghệ nào và đi theo con đường nào
Trang 7- Cam kết: việc tập trung vào hoạt động kinh doanh của khách hàng, làm việc theo nhóm và tận dụng kiến thức cũng như kinh nghiệm của ELCA, cho phép công ty cung cấp các giải pháp tuyệt vời khiến khách hàng mỉm cười
- Đáng tin cậy
Trang 8Chương 2: Nội dung thực tập
Đợt thực tập với chủ đề “Lập trình ứng dụng cập nhật và chỉnh sửa ảnh bằng React trên Sharepoint Server” 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 React trên Sharepoint Server, đồng thời rèn luyện những kỹ năng 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 trong một môi trường phát triển mạng nội bộ doanh nghiệp chuyên nghiệp
1 Tìm hiểu công ty và các kỹ năng cơ bản trong công ty
Thời gian : 1 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, quá trình thành lập và phát triển (như đã nhắc đến ở trên), quy trình làm việc từ cao xuống thấp, cách thức tổ chức của công ty
Ngoài ra, thực tập sinh còn được giới thiệu về cách thức làm việc trong công ty như thời gian đi làm, các quy định cần phải tuân thủ, cách sử dụng hệ thống mạng nội bộ vào trong công việc…
Kết quả : Hiểu thêm về công ty ELCA, quá trình thành lập và phát triển Có thêm các kỹ
năng về việc sử dụng hệ thống mạng nội bộ trong công việc, làm việc có kế hoạch, có kỷ luật, có trách nhiệm hơn
2 Nghiên cứu kỹ thuật
2.1 Tìm hiểu ngôn ngữ C# cơ bản
Thời gian: 2 ngày
Nội dung: Được training về các khái niệm C# cơ bản
- Biến:
+ Là một giá trị dữ liệu có thể thay đổi được
+ Là tên gọi tham chiếu đến một vùng nhớ nào đó trong bộ nhớ
+ Là thành phần cốt lõi của một ngôn ngữ lập trình
Trang 9- Kiểu dữ liệu:
+ Là tập hợp các nhóm dữ liệu có cùng đặc tính, cách lưu trữ và thao tác xử
lý trên trường dữ liệu đó
+ Là một tín hiệu để trình biên dịch nhận biết kích thước của một biến (ví dụ như int là 4 bytes, sẽ được trình bày ở phần sau) và khả năng của nó (ví dụ biến kiểu int chỉ có thể chứa được các số nguyên)
+ Là thành phần cốt lõi của một ngôn ngữ lập trình
- Toán tử:
Toán tử là một công cụ để thao tác với dữ liệu Một toán tử là một ký hiệu dùng
để đại diện cho một thao tác cụ thể được thực hiện trên dữ liệu
- Lớp:
Lớp trong C# chính là cách thể hiện khái niệm về lớp trong lập trình hướng đối tượng Một lớp trong C# có các thành phần như: thuộc tính, phương thức, phương thức khởi tạo, phương thức hủy bỏ
Thực hiện:
- Tham gia đầy đủ các buổi training của công ty
- Làm các bài thực hành, kiểm tra về kiến thức đã học
Kết quả:
- Nâng cao kiến thức lập trình với ngôn ngữ C#
- Có được những kiến thức quan trọng cho việc lập trình Sharepoint sau này
- Ngoài ra còn được biết thêm một số quy tắc trong việc viết code sao cho đúng chuẩn, dễ đọc, dễ hiểu
2.2 Tìm hiểu ngôn ngữ C# nâng cao
Thời gian: 3 ngày
Nội dung: Được training về các kỹ thuật C# nâng cao, những kiến thức quan trọng
cho việc lập trình Sharepoint
- Lập trình hướng đối tượng:
Trang 10Các kiến thức cơ bản về lập trình hướng đối tượng như khái niệm, các đặc tính như tính kế thừa, tính đóng gói, tính trừu tượng, tính đa hình
- Interface:
Interface là 1 khái niệm thường được thấy trong các ngôn ngữ cấp cao như C#, Java, interface mang đến những ràng buộc về hành động cho các đối tượng, vừa mang lại kiến trúc tốt hơn cho hệ thống, tránh sơ sót và dễ dàng bảo trì
- Exception:
Không gì quan trọng bằng một đoạn mã tốt, một chương trình phải luôn có khả năng xử lí những lỗi có thể xảy ra Exception giúp quản lý và xử lí các lỗi như thế
Thực hiện:
- Tham gia đầy đủ các buổi training của công ty
- Làm các bài thực hành, kiểm tra về kiến thức đã học
Kết quả:
- Nâng cao kỹ năng lập trình với ngôn ngữ C#
- Có được những kiến thức quan trọng cho việc lập trình Sharepoint sau này
- Ngoài ra còn được biết thêm một số quy tắc trong việc viết code sao cho đúng chuẩn, dễ đọc, dễ hiểu
2.3 Các công cụ làm việc
Thời gian: 7 ngày (1 tuần)
Nội dung: Tìm hiểu về các công cụ sẽ được sử dụng trong quá trình làm việc
Trong thời gian này, coach đã hướng dẫn thực tập sinh tìm hiểu về các công cụ sẽ giúp ích cho trong công việc sau này Một số phần mềm trong số đó như Outlook – nhận thông báo từ nội bộ trong công ty, Microsoft Visual Studio – một môi trường phát triển tích hợp (IDE) của Microsoft, Visual Studio Code - một chương trình soạn thảo văn bản rất hữu ích và phổ biến với lập trình viên
Thực hiện : Thực hành sử dụng các phần mềm đã nêu trên
Trang 11Kết quả : Lập trình sử dụng các công cụ miễn phí, giúp dễ dàng kết hợp các công cụ
với nhau
2.4 Thiết kế UI và kiểm thử
Thời gian: 7 ngày (1 tuần)
Nội dung: Được training về các khái niệm và kỹ thuật liên quan đến giao diện
- HTML:
HTML (viết tắt của từ Hypertext Markup Language, hay là "Ngôn ngữ Đánh dấu Siêu văn bản") là một ngôn ngữ đánh dấu được thiết kế ra để tạo nên các trang web trên World Wide Web
- CSS:
Giống như HTML, CSS không thực sự là một ngôn ngữ lập trình Nó không phải
là một ngôn ngữ đánh dấu - đó là một ngôn ngữ định kiểu Nó cho phép bạn áp dụng kiểu có chọn lọc cho các phần tử trong tài liệu HTML
- JavaScript:
JavaScript là ngôn ngữ lập trình phổ biến nhất trên thế giới trong suốt 20 năm qua
Nó cũng là một trong số 3 ngôn ngữ chính của lập trình web: HTML, CSS, JavaScript JavaScript có thể học nhanh và dễ dàng áp dụng cho nhiều mục đích khác nhau, từ việc cải thiện tính năng của website đến việc chạy game và tạo phần mềm nền web
Thực hiện:
- Tham gia đầy đủ các buổi training của công ty
- Làm các bài thực hành, kiểm tra về kiến thức đã học
Kết quả:
- Nâng cao kiến thức và kỹ năng lập trình web, đặc biệt là front-end
- Có được những kiến thức quan trọng cho việc lập trình React sau này
Trang 122.5 Sharepoint 2013 Business User
Thời gian : 7 ngày (1 tuần)
Nội dung : Được training về các khái niệm và kỹ thuật liên quan đến Sharepoint cho
người dùng đầu cuối
- Kiến trúc Sharepoint
Kiến trúc SharePoint thường được xây dựng bằng cách sử dụng hệ thống phân cấp gồm tuyển tập trang (site collections) và trang con (sub-sites), với điều hướng, quyền và thiết kế trang kế thừa
Thực hiện :
- Tham gia đầy đủ các buổi training của công ty
- Làm các bài thực hành, kiểm tra về kiến thức đã học
Kết quả :
- Nâng cao kiến thức và kỹ năng lập trình Sharepoint
- Có được những kiến thức quan trọng cho việc lập trình Sharepoint sau này
2.6 SharePoint 2013 Development
Thời gian: 14 ngày (2 tuần)
Trang 13Nội dung: Được training về các khái niệm và kỹ thuật liên quan đến lập trình
Sharepoint
- SP Powershell
PowerShell là một khung quản lý cấu hình và tự động hóa tác vụ đa nền tảng, bao gồm một trình bao dòng lệnh và ngôn ngữ kịch bản Không giống như hầu hết các shell chấp nhận và trả về văn bản, PowerShell được xây dựng trên NET Common Language Runtime (CLR) và chấp nhận và trả về các đối tượng NET Sự thay đổi
cơ bản này mang đến những công cụ và phương pháp hoàn toàn mới cho tự động hóa
- Event Receivers:
Event Receiver là một tính năng quan trọng của SharePoint Việc sử dụng Event Receiver là để xử lý các sự kiện Nó giống như một phương thức được kích hoạt khi một hành động xảy ra trên một đối tượng SharePoint được chỉ định Hành động kích hoạt có một số hoạt động bao gồm:
+ Thêm + Đang cập nhật + Đang xóa + Đang chuyển + Đang check in + Đang check out
- Webparts:
Khi thêm một trang hiện đại vào một trang web, bạn sẽ thêm và tùy chỉnh các phần web (webparts), là các khối xây dựng trang của bạn Bạn có thể thêm văn bản, hình ảnh, tệp, video, nội dung động và hơn thế nữa
- JSLink:
Làm việc với giao diện người dùng SharePoint luôn là một thách thức đối với các nhà phát triển Tuy nhiên, một tính năng mới trong SharePoint 2013 được gọi là JSLink giúp giảm bớt gánh nặng của việc sử dụng XSLT và cung cấp một cách dễ
Trang 14dàng và nhanh nhạy hơn để hiển thị các trường tùy chỉnh trên máy khách JSLink
là một thuộc tính kiểm soát việc hiển thị các trường, các mục và thậm chí cả các Phần Web thông qua một tệp JavaScript
Thực hiện:
- Tham gia đầy đủ các buổi training của công ty
- Làm các bài thực hành, kiểm tra về kiến thức đã học
Kết quả:
- Nâng cao kiến thức và kỹ năng lập trình Sharepoint
- Có được những kiến thức quan trọng cho việc lập trình Sharepoint sau này
- Thông qua kiến thức về JSLink và webpart, ta có thể nhúng ứng dụng React vào front-end của Sharepoint, từ đó làm tiền đề cho dự án này
2.7 Nintex Workflow
Thời gian: 7 ngày (1 tuần)
Nội dung: Được training về các khái niệm và kỹ thuật liên quan đến dòng công việc
(workflow) trong Sharepoint
Thực hiện:
- Tham gia đầy đủ các buổi training của công ty
- Làm các bài thực hành, kiểm tra về kiến thức đã học
Kết quả:
- Nâng cao kiến thức và kỹ năng lập trình workflow trong Sharepoint
- Có được những kiến thức quan trọng cho việc lập trình Sharepoint sau này
2.8 ReactJS
Thời gian: 7 ngày (1 tuần)
Nội dung: Được training về các khái niệm và kỹ thuật lập trình ReactJS
- Các khái niệm cơ bản và cú pháp:
Trang 15React là một thư viện JavaScript để xây dựng giao diện người dùng Nó cho tốc
độ phản hồi tuyệt vời khi user nhập liệu bằng cách sử dụng phương pháp mới để render trang web
- Tham gia đầy đủ các buổi training của công ty
- Làm các bài thực hành, kiểm tra về kiến thức đã học
Kết quả:
- Nâng cao kiến thức và kỹ năng lập trình React
- Có được những kiến thức quan trọng cho việc lập trình dự án React
3 Thực hiện project
Sau 2 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ề C#, Sharepoint, Front-end, ReactJS Trong tháng thứ ba, trainer đã hướng
Trang 16dẫn thực tập sinh áp dụng những kiến thức đã học để thực hiện một project ReactJS trên Sharepoint
Chi tiết đồ án sẽ được nói ở phần sau
4 Lịch làm việc
dẫn
Mức độ hoàn thành
Nhận xét của người hướng dẫn
1
- 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 trong công ty
- Học cách trao đổi, làm việc qua Outlook
Anh Khưu Vĩnh Hoàng Phúc
2
- Tìm hiểu ngôn ngữ lập trình C# cơ bản
- Tìm hiểu ngôn ngữ lập trình C# nâng cao
- Thực hành C#
- Làm bài test C#
Anh Khưu Vĩnh Hoàng Phúc
3
- Tìm hiểu về các công cụ làm việc
- Thực hành viết một web ASP.NET cơ bản
Anh Khưu Vĩnh Hoàng Phúc
4
- Tìm hiểu về HTML, CSS, JavaScript
- Thực hành viết một web cơ bản kết hợp ba ngôn ngữ
Anh Khưu Vĩnh Hoàng Phúc
Trang 17nói trên
5
- Tìm hiểu về Sharepoint cho người dùng đầu cuối
- Thực hành tạo một site collection quản lý projects
và tin tức
Anh Khưu Vĩnh Hoàng Phúc
6
- Tìm hiểu về cách thức lập trình Sharepoint
- Thực hành tạo một site collection quản lý projects
và tin tức nhưng bằng Powershell và code C#
thông qua Visual Studio
Anh Khưu Vĩnh Hoàng Phúc
7
- Tìm hiểu về Nintex Workflow
- Thực hành tạo một dòng công việc cơ bản trong Sharepoint
Anh Khưu Vĩnh Hoàng Phúc
8
- Tìm hiểu về ReactJS
- Thực hành tạo một ứng dụng xây dựng và đặt hàng bánh burger bằng ReactJS
Anh Khưu Vĩnh Hoàng Phúc
10 Giai đoạn Alpha(tiếp):
- Thiết kế kiến trúc ứng
Anh Khưu Vĩnh Hoàng