Tải bản đầy đủ (.docx) (60 trang)

Khoá luận tốt nghiệp Lập trình ứng dụng họp trực tuyến trên mobile (flutter)

Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (1.25 MB, 60 trang )

BỘ GIÁO DỤC VÀ ĐÀO TẠO
TRƯỜNG ĐẠI HỌC YERSIN ĐÀ LẠT
KHOA CƠNG NGHỆ THƠNG TIN

KHỐ LUẬN TỐT NGHIỆP

XÂY DỰNG ỨNG DỤNG HỌP TRỰC TUYẾN TRÊN
THIẾT BỊ DI ĐỘNG

GVHD:

ThS. Lê Xuân Thạch

SVTH:

Lê Văn Sơn

Mã số SV:

11901040

Khoá học: 2019 - 2022

Đà Lạt, tháng 7 năm 2022
NHIỆM VỤ ĐỀ TÀI


1. Nội dung
- Tìm hiểu hệ điều hành Android, iOS.
- Tìm hiểu mơi trường lập trình Visual Studio Code.
- Tìm hiểu ngơn ngữ lập trình Dart.


- Tìm hiểu framework Flutter.
- Xây dựng ứng dụng họp trực tuyến chạy trên thiết bị di động vật lý.
2. Các yêu cầu cần giải quyết
- Sử dụng công cụ Visual Studio Code để viết chương trình chạy trên thiết bị di
-

động.
Xây dựng được ứng dụng, đóng gói chương trình thành file *.apk cho phép cài
đặt và chạy trên các thiết bị sử dụng hệ điều hành android và file *.ipa cho phép
cài đặt và chạy trên các thiết bị sử dụng hệ điều hành iOS.


CỘNG HOÀ XÃ HỘI CHỦ NGHĨA VIỆT NAM
Độc lập – Tự do – Hạnh phúc
PHIẾU NHẬN XÉT CỦA GIẢNG VIÊN HƯỚNG DẪN
Họ và tên giảng viên: Lê Xuân Thạch
Đơn vị công tác: Trường Đại học Yersin Đà Lạt
Họ và tên sinh viên: Lê Văn Sơn

Ngành: Công nghệ thông tin

1. Tinh thần thái độ của sinh viên trong quá trình làm khoá luận tốt nghiệp.
…………………………………………………………………………………………........
…………………………………………………………………………………………........
…………………………………………………………………………………………........
…………………………………………………………………………………………........
…………………………………………………………………………………………........
2. Đánh giá chất lượng của đồ án/khoá luận (so với nội dung yêu cầu đã đề ra trong
nhiệm vụ trên các mặt lý luận, thực tiễn, tính tốn số liệu…).
…………………………………………………………………………………………........

…………………………………………………………………………………………........
…………………………………………………………………………………………........
…………………………………………………………………………………………........
…………………………………………………………………………………………........
3. Ý kiến của giảng viên hướng dẫn.
Đạt

Không đạt

Điểm: ……………………………………
Đà Lạt, ngày…. tháng…. năm 2022
Giảng viên hướng dẫn
(ký và ghi rõ họ tên)


CỘNG HOÀ XÃ HỘI CHỦ NGHĨA VIỆT NAM
Độc lập – Tự do – Hạnh phúc
PHIẾU NHẬN XÉT CỦA GIẢNG VIÊN CHẤM PHẢN BIỆN
Họ và tên giảng viên: ………………………………………………………………………
Đơn vị công tác: ……………………………………………………………………………
Họ và tên sinh viên: ……………………………… Ngành: ……………………………….
Đề tài tốt nghiệp: ……………………………………………………………………….......
…………………………………………………………………………………………........
1. Phần nhận xét của giảng viên chấm phản biện
…………………………………………………………………………………………........
…………………………………………………………………………………………........
…………………………………………………………………………………………........
…………………………………………………………………………………………........
…………………………………………………………………………………………........
2. Những mặt còn hạn chế

…………………………………………………………………………………………........
…………………………………………………………………………………………........
…………………………………………………………………………………………........
…………………………………………………………………………………………........
…………………………………………………………………………………………........
3. Ý kiến của giảng viên chấm phản biện
Được bảo vệ

Không được bảo vệ

Điểm: ……………………………………
Đà Lạt, ngày…. tháng…. năm 2022
Giảng viên chấm phản biện
(ký và ghi rõ họ tên)


MỤC LỤC

DANH SÁCH HÌNH ẢNH MINH HOẠ


LỜI CẢM ƠN
Lời đầu tiên em xin gửi đến thầy Lê Xuân Thạch, người đã tận tình hướng dẫn, giúp
đỡ em hồn thành khố luận này lời cảm ơn sâu sắc nhất.
Vì kiến thức cịn hạn chế, nên sai sót là điều khơng thể tránh khỏi trong q trình
hồn thành khoá luận, em xin trân trọng tiếp thu những ý kiến đóng cũng như phản hồi
của thầy để có thể làm tốt hơn sau này.
Một lần nữa em xin chân thành cảm ơn thầy Lê Xuân Thạch đã truyền đạt những
kiến thức cần thiết để em có thể hồn thành khoá luận, đồng thời em cũng xin cảm ơn tất
cả các giảng viên trước đây đã tận tình giúp đỡ, truyền đạt, hỗ trợ em trong suốt thời gian

học tập ở trường Đại học Yersin vừa qua.
Em xin chân thành cảm ơn!
Đà Lạt, ngày 10 tháng 7 năm 2022


LỜI MỞ ĐẦU
Năm 2020 đến 2022 là khoảng thời gian đen tối đối với nhân loại khi đại dịch
Covid-19 ảnh hưởng đến tất cả các ngành công nghiệp và lấy đi rất nhiều việc làm của
mọi người trên toàn thế giới. Trong tình hình ln sẵn sàng đối phó với dịch bệnh, cùng
với sự phát triển của kinh tế xã hội, nước ta đã có những biện pháp đúng đắn để ngăn
chặn sự lây lan của dịch bệnh. Trong trường hợp này, ngành giáo dục Việt Nam, học sinh
phải học trực tuyến, sử dụng mạng xã hội và các công cụ internet để tự học ở nhà. Nhưng
đối với ứng dụng trả phí, việc tìm kiếm một cơng cụ hỗ trợ giáo dục trực tuyến không hề
đơn giản về mặt tài chính, phù hợp cho việc học tập và hội họp tại nước nhà. Đó là lý do
em quyết định chọn đề tài “Xây dựng ứng dụng họp trực tuyến trên di động” để tạo ra một
ứng dụng hỗ trợ học tập, giảng dạy và hội nghị trực tuyến.


CHƯƠNG 1: TÌM HIỂU HỆ ĐIỀU HÀNH ANDROID VÀ HỆ ĐIỀU HÀNH IOS
1.1. Hệ điều hành Android
1.1.1. Giới thiệu về hệ điều hành Android
Android là một hệ điều hành dựa trên nền tảng Linux được thiết kế dành cho các
thiết bị di động có màn hình cảm ứng như điện thoại thơng minh và máy tính bảng. Ban
đầu, Android được phát triển bởi Android Inc. với sự hỗ trợ tài chính từ Google và sau
này được chính Google mua lại vào năm 2005.
Android ra mắt vào năm 2007 cùng với tuyên bố thành lập Liên minh thiết bị cầm
tay mở: một hiệp hội gồm các công ty phần cứng, phần mềm, và viễn thông với mục tiêu
đẩy mạnh các tiêu chuẩn mở cho các thiết bị di động.Chiếc điện thoại đầu tiên chạy
Android được bán vào năm 2008.
Android có mã nguồn mở và Google phát hành mã nguồn theo Giấy phép

Apache.Chính mã nguồn mở cùng với một giấy phép khơng có nhiều ràng buộc đã cho
phép các nhà phát triển thiết bị, mạng di động và các lập trình viên nhiệt huyết được điều
chỉnh và phân phối Android một cách tự do. Ngồi ra, Android cịn có một cộng đồng lập
trình viên đơng đảo chun viết các ứng dụng để mở rộng chức năng của thiết bị, bằng
một loại ngôn ngữ lập trình Java có sửa đổi. Tháng 10 năm 2012, có khoảng 700.000 ứng
dụng trên Android, và số lượt tải ứng dụng từ Google Play, cửa hàng ứng dụng chính của
Android, ước tính khoảng 25 tỷ lượt.
Những yếu tố này đã giúp Android trở thành nền tảng điện thoại thông minh phổ
biến nhất thế giới, vượt qua Symbian OS vào quý 4 năm 2010, và được các công ty công
nghệ lựa chọn khi họ cần một hệ điều hành khơng nặng nề, có khả năng tinh chỉnh, và giá
rẻ chạy trên các thiết bị cơng nghệ cao thay vì tạo dựng từ đầu. Kết quả là mặc dù được
thiết kế để chạy trên điện thoại và máy tính bảng, Android đã xuất hiện trên TV, máy chơi
game và các thiết bị điện tử khác. Bản chất mở của Android cũng khích lệ một đội ngũ
đơng đảo lập trình viên và những người đam mê sử dụng mã nguồn mở để tạo ra những
dự án do cộng đồng quản lý. Những dự án này bổ sung các tính năng cao cấp cho những
người dùng thích tìm tịi hoặc đưa Android vào các thiết bị ban đầu chạy hệ điều hành
khác.

8


Android chiếm 87,7% thị phần điện thoại thông minh trên toàn thế giới vào thời
điểm quý 2 năm 2017, với tổng cộng 2 tỷ thiết bị đã được kích hoạt và 1,3 triệu lượt kích
hoạt mỗi ngày. Sự thành cơng của hệ điều hành cũng khiến nó trở thành mục tiêu trong
các vụ kiện liên quan đến bằng phát minh, góp mặt trong cái gọi là "cuộc chiến điện thoại
thơng minh" giữa các công ty công nghệ.
1.1.2. Lịch sử phát triển
Android, Inc. được thành lập tại Palo Alto, California vào tháng 10 năm 2003 bởi
Andy Rubin (đồng sáng lập công ty Danger), Rich Miner (đồng sáng lập Tổng công ty
Viễn thơng Wildfire), Nick Sears (từng là Phó giám đốc T-Mobile), và Chris White

(trưởng thiết kế và giao diện tại WebTV) để phát triển, theo lời của Rubin, "các thiết bị di
động thơng minh hơn có thể biết được vị trí và sở thích của người dùng". Dù những người
thành lập và nhân viên đều là những người có tiếng tăm, Android, Inc. hoạt động một
cách âm thầm, chỉ tiết lộ rằng họ đang làm phần mềm dành cho điện thoại di động. Trong
năm đó, Rubin hết kinh phí. Steve Perlman, một người bạn thân của Rubin, mang cho ông
10.000 USD tiền mặt nhưng từ chối tham gia vào công ty.
Google mua lại Android, Inc. vào ngày 17 tháng 8 năm 2005, biến nó thành một bộ
phận trực thuộc Google. Những nhân viên của chủ chốt của Android, Inc., gồm Rubin,
Miner và White, vẫn tiếp tục ở lại công ty làm việc sau thương vụ này. Vào thời điểm đó
khơng có nhiều thông tin về công ty, nhưng nhiều người đồn đốn rằng Google dự tính
tham gia thị trường điện thoại di động sau bước đi này. Tại Google, nhóm do Rubin đứng
đầu đã phát triển một nền tảng thiết bị di động phát triển trên nền nhân Linux. Google
quảng bá nền tảng này cho các nhà sản xuất điện thoại và các nhà mạng với lời hứa sẽ
cung cấp một hệ thống uyển chuyển và có khả năng nâng cấp. Google đã liên hệ với hàng
loạt hãng phần cứng cũng như đối tác phần mềm, bắn tin cho các nhà mạng rằng họ sẵn
sàng hợp tác với các cấp độ khác nhau.
Ngày càng nhiều suy đoán rằng Google sẽ tham gia thị trường điện thoại di động kể
từ tháng 12 năm 2006. Tin tức của BBC và Nhật báo phố Wall chú thích rằng Google
muốn đưa cơng nghệ tìm kiếm và các ứng dụng của họ vào điện thoại di động và họ đang
nỗ lực làm việc để thực hiện điều này. Các phương tiện truyền thông truyền thống lẫn
9


online cũng viết về tin đồn rằng Google đang phát triển một thiết bị cầm tay mang thương
hiệu Google. Một vài tờ báo cịn nói rằng trong khi Google vẫn đang thực hiện những bản
mô tả kỹ thuật chi tiết, họ đã trình diễn sản phẩm mẫu cho các nhà sản xuất điện thoại di
động và nhà mạng. Tháng 9 năm 2007, InformationWeek đăng tải một nghiên cứu của
Evalueserve cho biết Google đã nộp một số đơn xin cấp bằng sáng chế trong lĩnh vực điện
thoại di động.
Ngày 5 tháng 11 năm 2007, Liên minh thiết bị cầm tay mở (Open Handset Alliance),

một hiệp hội bao gồm nhiều công ty trong đó có Texas Instruments, Tập đồn Broadcom,
Google, HTC, Intel, LG, Tập đoàn Marvell Technology, Motorola, Nvidia, Qualcomm,
Samsung Electronics, Sprint Nextel và T-Mobile được thành lập với mục đích phát triển
các tiêu chuẩn mở cho thiết bị di động. Cùng ngày, Android cũng được ra mắt với vai trò
là sản phẩm đầu tiên của Liên minh, một nền tảng thiết bị di động được xây dựng trên
nhân Linux phiên bản 2.6.Chiếc điện thoại chạy Android đầu tiên được bán ra là HTC
Dream, phát hành ngày 22 tháng 10 năm 2008. Biểu trưng của hệ điều hành Android mới
là một con robot màu xanh lá cây do hãng thiết kế Irina Blok tại California vẽ.
Từ năm 2008, Android đã trải qua nhiều lần cập nhật để dần dần cải tiến hệ điều
hành, bổ sung các tính năng mới và sửa các lỗi trong những lần phát hành trước. Mỗi bản
nâng cấp được đặt tên lần lượt theo thứ tự bảng chữ cái, theo tên của một món ăn tráng
miệng; ví dụ như phiên bản 1.5 Cupcake (bánh bơng lan nhỏ có kem) tiếp nối bằng phiên
bản 1.6. Phiên bản mới nhất hiện nay là Android 12, ra mắt vào tháng 10 năm 2021. Vào
năm 2010, Google ra mắt loạt thiết bị Nexus—một dịng sản phẩm bao gồm điện thoại
thơng minh và máy tính bảng chạy hệ điều hành Android, do các đối tác phần cứng sản
xuất. HTC đã hợp tác với Google trong chiếc điện thoại thông minh Nexus đầu tiên,
Nexus One. Kể từ đó nhiều thiết bị mới hơn đã gia nhập vào dòng sản phẩm này, như điện
thoại Nexus 4 và máy tính bảng Nexus 10, lần lượt do LG và Samsung sản xuất. Google
xem điện thoại và máy tính bảng Nexus là những thiết bị Android chủ lực của mình, với
những tính năng phần cứng và phần mềm mới nhất của Android.

10


1.2. Hệ điều hành iOS
1.2.1. Giới thiệu về hệ điều hành iOS
iOS (trước đây là iPhoneOS) là hệ điều hành trên các thiết bị di động của Apple.
Đây là hệ điều hành chạy trên các sản phẩm iPhone, cũng như một số sản phẩm iPad
không được hỗ trợ IPadOS, và iPod Touch và là hệ điều hành phổ biến thứ 2 trên toàn
cầu, sau Android của Google.

Ban đầu hệ điều hành này chỉ được phát triển để chạy trên iPhone (gọi là iPhone
OS), nhưng sau đó được mở rộng để chạy trên các thiết bị khác của Apple như iPod Touch
(tháng 9 năm 2007) và máy tính bảng iPad (tháng 1 năm 2010 đến tháng 9 năm 2019).
Tính đến tháng 1 năm 2017, App Store trên iOS chứa khoảng 2.2 triệu ứng dụng, 1 triệu
trong số đó là ứng dụng chỉ dành cho iPad và được tải về tổng cộng khoảng 130 tỷ lần.
Trong quý 4 năm 2010, có khoảng 26% điện thoại thông minh chạy hệ điều hành iOS, xếp
sau về thị phần so với Android của Google và Symbian của Nokia.
Giao diện người dùng của iOS thân thiện với thao tác cảm ứng đa điểm bằng tay,
cũng như hỗ trợ bút stylus Apple Pencil (chỉ dành cho iPad). iOS chỉ cho phép thay đổi
nhạc chng và hình nền, khơng hỗ trợ thay đổi giao diện. Có nhiều hãng sản xuất
Android đã tùy biến giao diện Android trên thiết bị của mình giống với giao diện iOS, có
thể kể đến Color OS hay MIUI. Hệ điều hành IOS là hệ điều hành chuyên biệt vượt trội,
mọi thông số trên hệ điều hành IOS đều khác biệt hoàn toàn so với các hệ điều hành khác.
Phiên bản mới nhất là iOS 16 được thử nghiệm vào tháng 6 năm 2022 và phát hành
vào cuối năm 2022, hỗ trợ cập nhật cho các thiết bị từ iPhone 8 trở lên.
1.2.2. Lịch sử phát triển
iOS được tiết lộ tại Hội nghị và Triển lãm Macworld diễn ra vào 9 tháng 1 năm 2007
và được phát hành vào tháng 9 năm đó cùng với thế hệ iPhone đầu tiên. Khi đó, hệ điều
hành này chưa có một cái tên riêng nên chỉ đơn giản là "iPhone OS". Ban đầu, ứng dụng
bên thứ ba không được hỗ trợ. Steve Jobs đã tuyên bố các nhà phát triển có thể xây dựng
các ứng dụng của mình chạy trên iPhone mà Apple "sẽ cư xử như những ứng dụng mặc
định trên iPhone". Vào ngày 17 tháng 10 năm 2007, Apple thông báo đang phát triển bộ
11


công cụ phát triển phần mềm cho iPhone và sẽ đưa nó đến "tay của các nhà phát triển vào
tháng 2". Ngày 6 tháng 3 năm 2008, Apple đã phát hành bản dùng thử đầu tiên, cùng với
một cái tên đầu tiên cho iOS, đó là "iPhone OS".
Tháng 6 năm 2010, Apple đổi tên iPhone OS thành iOS. Tuy nhiên "iOS" đã được
Cisco dùng để đặt tên cho hệ điều hành của mình trước đó. Để tránh các tranh chấp bản

quyền trong tương lai, Apple đã xin giấy phép sử dụng thương hiệu iOS từ Cisco, điều
này giống với cách Apple đã mua thương hiệu "iPhone" để sử dụng cho điện thoại thơng
minh của mình.
Gần đây, bài báo cáo của Tổ chức Ân xá Quốc tế về phần mềm gián điệp Pegasus đã
gây chấn động dư luận. Danna Ingleton - Phó giám đốc cơng nghệ Tổ chức Ân xá cho
biết: "Apple tự hào về tính năng bảo mật và quyền riêng tư của mình, nhưng NSO Group
đã phá vỡ tất cả. Phân tích pháp y phát hiện bằng chứng khơng thể chối cãi rằng phần
mềm gián điệp của NSO đã lây nhiễm thành công các mẫu iPhone 11 và iPhone 12 thơng
qua tấn cơng zero-click (khơng nhấp chuột). Hàng nghìn iPhone có khả năng bị xâm
phạm. Đây là nỗi lo tồn cầu, ai cũng có nguy cơ gặp rủi ro, ngay cả những "gã khổng lồ"
công nghệ như Apple cũng khơng đủ trang bị để đối phó với giám sát quy mô lớn".
Tán thành lập luận từ tổ chức này, Citizen Lab - phòng nghiên cứu về bảo mật
internet của Đại học Toronto (Mỹ) cùng lúc đó cũng cơng bố báo cáo của riêng họ. Theo
đó, họ phát hiện iPhone 12 Pro Max và iPhone SE2 chạy hệ điều hành iOS từ 14.0 trở lên
vẫn không thể miễn nhiễm trước Pegasus.
Bill Marcza - nhà nghiên cứu cấp cao tại Citizen Lab cảnh báo: "Apple gặp phải vấn
đề đáng báo động với bảo mật trên iMessage. Hệ thống BlastDoor (được giới thiệu trên
iOS 14 để ngăn cản tấn công zero-click) không giải quyết được vấn đề".
Theo Washington Post, tháng trước, một tin nhắn lạ âm thầm được gửi đến chiếc
iPhone 11 của Claude Mangin - vợ của một nhà hoạt động chính trị bị bỏ tù ở Morocco.
Tin nhắn này đến từ tài khoản Gmail "linakeller2203", khơng âm thanh, khơng hình ảnh,
lặng lẽ vượt qua hệ thống bảo mật Apple và xâm nhập vào thiết bị của nạn nhân.

12


Claude Mangin tin rằng thiết bị của Apple sẽ bảo vệ cô khỏi việc bị theo dõi. Thế
nhưng, cả hai chiếc iPhone 11 lẫn iPhone 6s mà cô dùng đều bị nhiễm mã độc Pegasus.
Cũng như Claude Mangin, Hatice Cengiz - hơn thê của một phóng viên tờ
Washington Post gần đây mới phát hiện iPhone mình từng bị tấn cơng nhiều lần vào đầu

tháng 10.2018. Thời điểm đó, chồng chưa cưới của cô bị sát hại. Cô cũng từng đinh ninh
iPhone là thiết bị khơng ai có thể hack được, cho đến khi có kết quả pháp y từ Tổ chức Ân
xá Quốc tế.
Các nhà nghiên cứu ghi nhận iPhone bị nhiễm Pegasus hàng chục lần trong những
năm gần đây. Điều này có thể gây tổn hại đến danh tiếng của Apple, nhất là khi so với đối
thủ Google.
Tổ chức Ân xá Quốc tế kiểm tra 67 smartphone, trong đó có 34 chiếc iPhone là đối
tượng của Pegasus. 23 chiếc đã bị tấn cơng, cịn 11 chiếc có dấu hiệu bị Pegasus xâm
nhập nhưng chưa thành cơng.
Trong khi đó, chỉ có 3 trong số 15 chiếc điện thoại Android có dấu hiệu bị tấn công.
Sau khi biết tin, Apple lập tức lên án những cuộc tấn công sử dụng phần mềm
Pegasus. Ivan Krstić - kỹ sư trưởng về bảo mật của Apple cho biết: "Các cuộc tấn công
như thế này rất tinh vi, tốn hàng triệu USD, thường có thời gian ngắn hạn và nhắm vào
các cá nhân cụ thể. Điều đó có nghĩa là chúng khơng phải mối đe dọa đối với phần lớn
khách hàng của Apple, nhưng chúng tôi sẽ làm việc không mệt mỏi để bảo vệ người dùng,
bổ sung các biện pháp bảo vệ mới cho thiết bị và dữ liệu".

13


CHƯƠNG 2: TÌM HIỂU MƠI TRƯỜNG LẬP TRÌNH VISUAL STUDIO CODE
2.1. Giới thiệu về Visual Studio Code
Visual Studio Code là một trình soạn thảo mã nguồn được phát triển bởi Microsoft
dành cho Windows, Linux và macOS. Nó hỗ trợ chức năng debug, đi kèm với Git, có
chức năng nổi bật cú pháp (syntax highlighting), tự hồn thành mã thơng minh, snippets,
và cải tiến mã nguồn. Nó cũng cho phép tùy chỉnh, do đó, người dùng có thể thay đổi
theme, phím tắt, và các tùy chọn khác. Nó miễn phí và là phần mềm mã nguồn mở theo
giấy phép MIT, mặc dù bản phát hành của Microsoft là theo giấy phép phần mềm miễn
phí.
Visual Studio Code được dựa trên Electron, một nền tảng được sử dụng để triển khai

các ứng dụng Node.js máy tính cá nhân chạy trên động cơ bố trí Blink. Mặc dù nó sử
dụng nền tảng Electron nhưng phần mềm này không phải là một bản khác của Atom, nó
thực ra được dựa trên trình biên tập của Visual Studio Online (tên mã là "Monaco").
Trong cuộc khảo sát vào năm 2018 trên Stack Overflow, Visual Studio Code được
xếp hạng là trình biên tập mã phổ biến nhất, với 34.9% của 75398 người trả lời tuyên bố
sử dụng nó.
2.2. Lịch sử phát triển
Visual Studio Code được công bố, ra mắt phiên bản thử nghiệm vào ngày 29 tháng 4
năm 2015 bởi Microsoft tại hội nghị Build 2015.
Vào ngày 18 tháng 11 năm 2015, Visual Studio Code được phát hành dưới giấy phép
MIT và mã nguồn của nó được đưa lên GitHub. Chức năng Extesion (tiện ích mở rộng)
cũng được công bố.
Vào ngày 14 tháng 4 năm 2016 Visual Studio Code hồn tất thử nghiệm và được
phát hành chính thức.
2.3. Tính năng
Visual Studio Code có thể được mở rộng qua plugin. Điều này giúp bổ sung thêm
chức năng cho trình biên tập và hỗ trợ thêm ngơn ngữ. Một tính năng đáng chú ý là khả
14


năng tạo phần mở rộng để phân tích mã, như là các linter và cơng cụ phân tích, sử dụng
Language Server Protocol.
2.4. Cài đặt Visual Studio Code
2.4.1. Tải tập tin cài đặt
Tải về tập tin cài đặt phù hợp với hệ điều hành đang sử dụng tại địa chỉ:
/>
Hình 2.1:Download Visual Studio Code

2.4.2. Cách cài đặt
2.4.2.1. Cài đặt trên hệ điều hành Windows

Bước 1: Mở tập tin cài đặt, nhấp I accept the agreement và nhấp nút Next

15


Hình 2.2: Cài đặt Visual Studio Code trên Windows (Bước 1)

Bước 2: Chọn nơi cài đặt Visual Studio Code và nhấp nút Next

16


Hình 2.3: Cài đặt Visual Studio Code trên Windows (Bước2)

Bước 3: Chọn Start menu folder. Ở bước này, có thể tích chọn tạo thư mục hoặc
khơng cho ứng dụng và nhấp nút Next

17


Hình 2.4: Cài đặt Visual Studio Code trên Windows (Bước 3)

Bước 4: Chọn Additional Tasks (Chức năng bổ sung). Ở bước này, có thể tích chọn
thêm các chức năng hoặc không và nhấp nút Next.

18


Hình 2.5: Cài đặt Visual Studio Code trên Windows (Bước 4)


Bước 5: Ở bước này, xem lại các tuỳ chỉnh cài đặt của ứng dụng. Có thể nhấp nút
Back để thực hiện tuỳ chỉnh lại cài đặt của ứng dụng hoặc nhấp nút Install để tiến hành
quá trình cài đặt.

19


Hình 2.6: Cài đặt Visual Studio Code trên Windows (Bước5)

Bước 6: Ở bước này, có thể tích để mở ứng dụng hoặc không trước khi nhấp Finish
và nhấp Finish để kết thúc quá trình cài đặt ứng dụng.

20


Hình 2.7: Cài đặt Visual Studio Code trên Windows (Bước 6)

2.4.2.2. Cài đặt trên hệ điều hành MacOS
Bước 1: Sau khi tải về tập nén có định dạng *.zip, nhấp đôi vào tập tin *.zip từ thư
mục tải xuống để giải nén. Sau khi giải nén thu được tập tin có định dạng *.app

21


Hình 2.8: Cài đặt Visual Studio Code trên MacOS (Bước 1)

Bước 2: Di chuyển tập tin Visual Studio Code.app vào thư mục Applications để
hồn tất q trình cài đặt ứng dụng. Ứng dụng sẽ xuất hiện tại màn hình Lauchpad ngay
sau đó.


Hình 2.9: Cài đặt Visual Studio Code trên MacOS (bước 2)

22


CHƯƠNG 3: TÌM HIỂU NGƠN NGỮ LẬP TRÌNH DART
3.1. Giới thiệu về ngơn ngữ lập trình Dart
Dart là một ngơn ngữ lập trình web do Google phát triển. Nó được chính thức cơng
bố tại Hội thảo GOTO Lưu trữ 2012-12-21 tại Wayback Machine ngày 10-12 tháng 10
năm 2011 tại Aarhus. Mục đích của Dart khơng phải để thay thế JavaScript như là ngơn
ngữ kịch bản chính bên trong trình duyệt web, mà là cung cấp sự lựa chọn hiện đại hơn.
Mục đích của Dart là để giải quyết các vấn đề của JavaScript (mà, theo như một tài
liệu bị rò rỉ, không thể được giải quyết bằng cách cải tiến ngôn ngữ) trong khi cung cấp
hiệu năng tốt hơn, khả năng "có thể dễ dàng trở thành cơng cụ trong các dự án lớn" và an
ninh tốt hơn. Các kỹ sư Google hiện đang phát triển một IDE trên nền tảng điện tốn đám
mây gọi là Brightly, mà có lẽ là ứng dụng Dart đầu tiên. Google sẽ cung cấp một trình
biên dịch Dart thành mã ECMAScript 3 on the fly, dành cho các trình duyệt khơng tương
thích Dart. Cũng có thể chuyển mã typed Closure thành Dart. Google cũng sẽ tích hợp
một máy ảo vào Chrome và khuyến khích các đối thủ cạnh tranh làm điều này với trình
duyệt của họ. Máy ảo Dart và Dart Cross Compiler có thể ra mắt vào cuối năm 2011.
3.2. Một số đặc điểm của ngơn ngữ lập trình Dart
3.2.1. Biến và kiểu dữ liệu
Dart sử dụng từ khoá var để khai báo biến.
var name = 'Dart';
Từ khoá final và const được sử dụng để khai báo hằng số (constants).
void main() {
final a = 12;
const pi = 3.14;
print(a);
print(pi);

}
Dart hỗ trợ các kiểu dữ liệu dưới đây, chúng ta không cần thiết phải khai báo kiểu dữ
liệu cho biến.
23


-

Numbers − Được sử dụng cho số – Integer và Double.
Strings − Được sử dụng cho chuỗi kí tự. Giá trị của String được đặt trong dâu

-

nháy đơn hoặc nháy kép.
Booleans − Được sử dụng cho giá trị Boolean đúng và sai
Lists và Maps − Được sử dụng cho nhóm đối tượng.
Khơng giống như các ngơn ngữ lập trình khác, Dart khơng hỗ trợ mảng (array).

3.2.2. Điều khiển và vịng lặp
Một khối điều khiển (decision making block) đánh giá một điều kiện trước khi
hướng dẫn thực thi. Dart hỗ trợ các khối lệnh If, If..else và switch.
Vòng lặp được sử dụng để lặp lại một khối lệnh cho đến khi một điều kiện cụ thể
được đáp ứng. Dart hỗ trợ các vịng lặp for..in, while và do.. while.
Ví dụ đoạn code hiển thị các số từ 1 đến 10:
void main() {
for(var i = 1; i <= 10; i++) {
if(i % 2 == 0) {
print(i);
}
}

}
3.2.3. Hàm (Functions)
Hàm là một nhóm các câu lệnh nhằm thực hiện một tác vụ nhất định. Ví dụ về hàm
trong Dart dưới đây làm nhiệm vụ cộng hai tham số truyền vào, và in ra kết quả trên màn
hình:
void main() {
add(3, 4);
}
void add(int a, int b) {
24


int c;
c = a + b;
print(c);
}
3.2.4. Lập trình hướng đối tượng
Dart là một ngơn ngữ lập trình hướng đối tượng (object-oriented language). Nó hỗ
trợ một số tính năng của lập trình hướng đối tượng như class, interface,...
Mỗi một class (lớp) định nghĩa cho một loại đối tượng. Một class bao gồm những
nội dung sau đây:
- Các thuộc tính (Fields)
- Các hàm Getter và setter
- Hàm khởi tạo (Constructor)
- Phương thức (Function)
Dưới đây là một minh hoạ các thành phần của một class:
class Employee {
String name;
//getter method
String get emp_name {

return name;
}
//setter method
void set emp_name(String name) {
this.name = name;
}
//function definition
void result() {
print(name);
}
25


×