Nhập môn lập trình (5) - C#, .NET và Visual Studio

Bài trước: Nhập môn lập trình (4) - Kỹ năng, Kiểu ngôn ngữ, Mẫu hình lập trình

-----

[Video]

Bắt đầu từ đây, bạn sẽ tập trung vào một số mục tiêu sau:

– Sử dụng thuần thục một IDE

– Kĩ thuật lập trình

– Lập trình hướng đối tượng

– Học tiếng Anh chuyên ngành (từ vựng, đọc hiểu)

– Kĩ năng tự học, tự đọc tài liệu

Danh sách thuật ngữ:

https://docs.google.com/spreadsheets/d/1koyx85jh12QUat8FQxkVh8AI4Gr-E6NZkfXN84Fc1oE/edit?usp=sharing

Từ điển Việt-Anh:

http://tratu.soha.vn/

Từ điển Anh-Anh:

https://www.ldoceonline.com/

Google translate (để dịch một đoạn):

https://translate.google.com/?sl=en&tl=vi&op=translate

Ebook: link

1.1       Ngôn ngữ lập trình C#

[ebook – Preface - page xxi]

C# (hay C sharp – đọc là xi-sáp) là một ngôn ngữ lập trình hướng đối tượng đa năng, mạnh mẽ do Microsoft tạo ra.

Bạn có thể sử dụng C# để lập trình web back-end, web front-end, ứng dụng desktop, game, thực tế ảo, ứng dụng di động, điện toán đám mây, trí tuệ nhân tạo, khoa học dữ liệu, chuỗi khối, Internet vạn vật, hệ thống nhúng. Xem hình minh họa,


C# kết hợp chặt chẽ với nền tảng .NET (.NET platform)

Một vài thông tin thêm về C#:

– Là ngôn ngữ mã nguồn mở

– Đa nền tảng, có thể biên dịch trên nhiều họ Hệ điều hành (Windows, Linux, Unix)

– Hiệu suất cao, thực thi nhanh

– Có thể lập trình bằng IDE, code editor

– Cú pháp lập trình thân thiện, gần gũi với các ngôn ngữ truyền thống (C++, Java)

– Cộng đồng phát triển mạnh mẽ, đông đảo

– Được Microsoft bảo trợ

– Được cải tiến liên tục

– Tài liệu tham khảo đa dạng

Các phiên bản của C#:

C#1.0 - 2002

C#2.0 - 2005

C#3.0 - 2007

C#4.0 – 2010

C#5.0 - 2013

C#6.0 - 2015

C#7.0 - 2017

C#8.0 – 2019

C#9.0 - 2020

 

 

 

1.2       Nền tảng .NET

Thuật ngữ “nền tảng” (platform) thường được sử dụng để chỉ một hệ thống gồm nhiều thành phần, liên kết và hoạt động đồng bộ với nhau, dùng làm bệ đỡ, hỗ trợ cho các thành phần khác thực thi trên nó. Ví dụ người ta hay gọi hệ điều hành là các nền tảng, như Windows, Unix, Linux; nền tảng lập trình .NET.

Nền tảng .NET (.NET platform) là một hệ thống do công ty Microsoft tạo ra, gồm nhiều thành phần giúp phát triển và thực thi các ứng dụng. Xem hình minh họa,

Các ứng dụng bạn có thể phát triển trên nền tảng .NET rất đa dạng, ví dụ ứng dụng desktop, web, cloud, mobile, gaming, IoT, AI.

Nền tảng .NET gồm một số thành phần:

– Infrastructure

– .NET 5

– .NET standard

Áp dụng trong thực tế:

– Một máy tính muốn chạy ứng dụng viết trên nền tảng .NET thì máy đó phải được cài đặt nền tảng .NET

– Khi sử dụng IDE Visual Studio để lập trình trên .NET thì phải liên kết Visual Studio với nền tảng .NET

Nền tảng .NET phiên bản trước .NET 5 gồm các thành phần sau. Xem hình minh họa.


Các thành phần gồm:

– Common Infrastructure

– .NET Standard Library

– Các framework (.NET Framework, .NET Core, Mono).

Trong đó,

– .NET Framework: chỉ hoạt động trên Windows, cung cấp các nền tảng để tạo ứng dụng như: WPF, Winforms, ASP.NET

– .NET Core: hoạt động theo hướng đa nền tảng, gồm Universal Windows Platform và ASP.NET Core

– Mono là phiên bản cộng đồng, nhằm đem .NET đến các nền tảng ngoài Windows. Mono gồm: Unity Game và Xamarin.

Áp dụng trong thực tế:

– Nếu làm ứng dụng chạy trên Windows (Desktop Application) thì sử dụng .NET Framework

– Nếu làm game dựa trên Unity hoặc ứng dụng di động dựa trên Xamarin thì sử dụng Mono

– Nếu làm web, ứng dụng web thì sử dụng .NET Framework hoặc .NET Core đều được

1.3       .NET Framework

Kiến trúc của nền tảng .NET thường xuyên được cải tiến, thay đổi, tuy vậy các thành phần cốt lõi vẫn được duy trì, vừa đảm bảo tính tương thích, vừa có tính kế thừa. Điều này cũng dễ hiểu, vì những cải tiến hay thay đổi chỉ là những chỉnh sửa nhỏ dựa trên các nền tảng có sẵn, sẽ rất rủi ro khi đột ngột xóa bỏ mọi cái cũ để thay bằng một cái mới hoàn toàn.

Tiếp theo, bạn sẽ tìm hiểu cụ thể một thành phần của nền tảng .NET đó là bộ khung .NET Framework.

Bộ khung (framework) là một bộ công cụ, thường bao gồm các thư viện, chương trình dịch, API và mẫu thiết kế; được xây dựng sẵn, giúp việc lập trình ứng dụng được tối ưu về thời gian, bảo mật, và hiệu quả.

Ví dụ, hình sau là các thành phần của .NET Framework:

Theo wiki:

– .NET Framework là một nền tảng lập trình và cũng là một nền tảng thực thi ứng dụng chủ yếu trên hệ điều hành Microsoft Windows, được Microsoft tạo ra. Các chương trình viết trên nền .NET Framework sẽ không chạy trực tiếp trên môi trường phần cứng, mà nó sẽ chạy thông qua một cái máy ảo có tên là CLR (Common Language Runtime). CLR cũng chịu trách nhiệm liên quan đến an toàn phần mềm (security), quản lý bộ nhớ (memory management) và xử lý lỗi (exception handling).

– .NET Framework gồm các thư viện lập trình. Các thư viện này hỗ trợ việc lập trình giao diện, làm việc với cơ sở dữ liệu, ứng dụng web, giải thuật, cấu trúc dữ liệu, giao tiếp mạng. Các thư viện lập trình này cùng với CLR là hai thành phần chính của .NET Framework.

– .NET Framework giúp việc lập trình đơn giản hơn nhờ vào các thành phần được thiết kế sẵn. Người lập trình chỉ cần sử dụng các thành phần được thiết kế sẵn để tạo ra ứng dụng.

– Visual Studio là IDE do Microsoft tạo ra, giúp người lập trình phát triển phần mềm dựa trên .NET Framework.

– .NET Framework đã trải qua nhiều phiên bản, mỗi phiên bản sẽ có những thành phần được thêm vào, được cải tiến hoặc bị loại bỏ. Để ý điều này để đảm bảo tính tương thích và sử dụng các bản .NET Framework cho phù hợp.

1.4       Visual Studio

Sau khi đọc các phần trước, bạn đã lựa chọn được ngôn ngữ lập trình là C#, đã biết cách tải về máy tính của bạn gói .NET Framework (một thành phần của nền tảng .NET). Gói .NET Framework cung cấp các thư viện để bạn lập trình tiện lợi hơn, cung cấp trình dịch mã, trình sửa lỗi, máy ảo thực thi chương trình. Vậy bạn chỉ còn thiếu công cụ để viết mã nguồn.

Để viết mã nguồn, bạn có thể sử dụng text editor, code editor hoặc IDE.

Visual Studio là một IDE do Microsoft tạo ra năm 1997. Bạn có thể sử dụng Visual Studio để tạo ra chương trình máy tính, ứng dụng web, ứng dụng di động, games, IoT.

Một vài thông tin thêm về Visual Studio:

– Cho phép tích hợp bộ quản lý mã nguồn (Subversion hoặc Git)

– Bạn có thể sử dụng Visual Studio để lập trình với 36 ngôn ngữ lập trình khác nhau. Nhiều ngôn ngôn ngữ đã được tích hợp sẵn như C, C++, C#, F#, Visual Basic .NET, JavaScript, TypeScript, XML, XSLT, HTML, CSS.

– Có phiên bản Community miễn phí dành cho cộng đồng, học tập

Visual Studio có rất nhiều phiên bản, mỗi phiên bản sẽ hỗ trợ một số framework nhất định. Bảng sau sẽ cung cấp thêm một số thông tin về các phiên bản Visual Studio và các framework tương ứng.

Visual Studio

Phiên bản

Framework

Năm ra đời

Visual Studio 2022

 

– .NET Framework 3.5, 4.6.0 - 4.8

– .NET Core 2.1, 3.1, 5.0, 6.0

– .NET

2022

Visual Studio 2019

16.0

– .NET Framework versions 4.8, 4.7.2, 4.7.1, 4.7, 4.6.2, 4.6.1, 4.6, 4.5.2, 4.5.1, 4.5,  4.0

– .NET Core 3.1, 3.0, 2.2, 2.1, and 1.1.

– .NET Native

– .Mono

2020

Visual Studio 2017

15.0

3.5 – 4.7

2017

Visual Studio 2015

14.0

2.0 – 4.6

2015

Visual Studio 2013

12.0

2.0 – 4.5.2

2013

Visual Studio 2012

11.0

2.0 – 4.5.2

2012

Visual Studio 2010

10.0

2.0 – 4.0

2010

Visual Studio 2008

9.0

2.0, 3.0, 3.5

2007

Visual Studio 2005

8.0

2.0, 3.0

2005

Visual Studio .NET 2003

7.1

1.1

2003

Visual Studio .NET (2002)

7.0

1.0

2002

Visual Studio 6.0

6.0

N/A

1998

Visual Studio 97

5.0

N/A

1997

1.5       Xem và đọc thêm

Sử dụng các từ khóa để tìm kiếm và đọc thêm: ngôn ngữ lập trình C#, C sharp language, các nền tảng .NET, .NET 5 microsoft, Visual Studio.

– Ngôn ngữ lập trình C#: https://vi.wikipedia.org/wiki/C_Sharp_(ng%C3%B4n_ng%E1%BB%AF_l%E1%BA%ADp_tr%C3%ACnh)

– C sharp: https://en.wikipedia.org/wiki/C_Sharp_(programming_language)

– Các nền tảng .NET: https://tuhocict.com/cong-nghe-microsoft-1-net-framework-net-core/

– .NET framework: https://dotnet.microsoft.com/en-us/download/dotnet

1.6       Bài tập và thực hành

Bài tập 1. Vào trang Microsoft, tải các framework sau về máy tính của bạn.

– .NET 6.0 > .NET Desktop Runtime 6.0.7 (kích thước khoảng 55MB)

– .NET Framework 4.8 (bản Build apps – Dev pack) (kích thước khoảng 140 MB)

Sự khác nhau giữa bản Build apps hoặc SDK so với bản Runtime là gì?

Bài tập 2. Tải và cài đặt Visual Studio bản Community cho máy tính của bạn.

Gợi ý:

Bài tập 1: Vào trang Microsoft, tải các framework sau về máy tính của bạn.

– .NET 6.0 > .NET Desktop Runtime 6.0.7 (kích thước khoảng 55MB):

https://dotnet.microsoft.com/en-us/download

– .NET Framework 4.8 (bản Build apps – Dev pack) (kích thước khoảng 140 MB): https://dotnet.microsoft.com/en-us/download/dotnet-framework/net48

Sự khác nhau giữa bản Build apps hoặc SDK so với bản Runtime là gì? Runtime là máy ảo để chạy các ứng dụng viết trên nền tảng .NET; Build apps hoặc SDK = Runtime + các công cụ, thư viện để tạo ra ứng dụng.

Bài tập 2. Tải và cài đặt Visual Studio bản Community cho máy tính của bạn.

– Vào trang tìm kiếm (Google), gõ từ khóa Visual Studio

– Vào trang chủ của Visual Studio (https://visualstudio.microsoft.com/), đọc các thông tin giới thiệu

– Chọn mục Free Visual Studio, chọn bản phù hợp với bạn. Để tiện cho việc học với Ebook kèm theo, ở đây sẽ chọn bản Community 2015.

-----//5

Cập nhật: 29/7/2022

Bài tiếp theo: Nhập môn lập trình (6) - 

Nhập môn lập trình (4) - Kỹ năng, Kiểu ngôn ngữ, Mẫu hình lập trình

Bài trước: Nhập môn lập trình (3) - Ngôn ngữ và phần mềm lập trình

-----

[Video]

1.1       Các kĩ năng cần có khi sử dụng một phần mềm lập trình

Đối với mỗi phần mềm lập trình, để chọn được phần mềm phù hợp, sử dụng hiệu quả, bạn cần phải có các thông tin và kĩ năng cơ bản sau:

– Tính tương thích của phần mềm với các họ hệ điều hành (Windows, macOS, Linux)

– Phần mềm hỗ trợ làm việc với các ngôn ngữ lập trình nào

– Phần mềm miễn phí hay có phí

– Cách tải và cài đặt

– Sử dụng thuần thục các chức năng trên giao diện người dùng

– Cài đặt và chọn tông màu giao diện (theme) theo ý thích

– Thuần thục các thao tác với thư mục và tập tin

– Định dạng mã nguồn tự động

– Sử dụng gợi ý trong lúc viết mã (IntelliSense)

– Dịch và chạy mã nguồn

– Tìm, cài đặt và gỡ bỏ các chức năng mở rộng (extensions)

– Học các kỹ năng soạn thảo mã nguồn nhanh (ví dụ gõ tắt, tạo văn bản ngẫu nhiên, sử dụng đa con trỏ)

1.2       Các kiểu ngôn ngữ và mẫu hình lập trình

Các kiểu ngôn ngữ lập trình

Như các bạn đã biết, hiện nay đang có rất nhiều ngôn ngữ lập trình (hàng ngàn ngôn ngữ). Tùy theo mục đích sử dụng, môi trường phát triển và yêu cầu của công nghệ, người ta đã tạo ra các kiểu ngôn ngữ lập trình khác nhau. Dựa vào đặc tính hoạt động, phương pháp lập trình mà nó hỗ trợ, người ta chia các ngôn ngữ lập trình thành một số kiểu chính sau:

– Ngôn ngữ lập trình hướng đối tượng (object-oriented programming language). Ví dụ: Java, C++, C#, Python, PHP, Ruby, Perl, Object Pascal, Objective-C, Dart, Swift, Scala, Common Lisp, và Smalltalk

– Ngôn ngữ lập trình logic (logic programming language). Ví dụ: Prolog, Datalog

– Ngôn ngữ lập trình thủ tục (procedural programming language). Ví dụ: FORTRAN, ALGOL, BASIC, COBOL, Pascal, C, Ada.

– Ngôn ngữ lập trình hàm hay lập trình chức năng (functional programming language). Ví dụ: Scheme, Erlang, Objective Caml, Haskell; các ngôn ngữ lập trình chuyên biệt: R, F#, SQL, JavaScript, bảng tính Excel cũng có thể xem là thuộc kiểu ngôn ngữ này.

– Ngôn ngữ lập trình kịch bản (scripting programming language). Ví dụ: Bash, PowerShell, Perl, Python, PHP, JavaScript.

Tuy nhiên, hiện nay các ngôn ngữ không ngừng được cải tiến, bổ sung thêm nhiều đặc tính, giúp lập trình được nhiều loại ứng dụng, chạy được trên nhiều nền tảng, lập trình tiện lợi và tối ưu hơn. Do vậy, một ngôn ngữ có thể thuộc vào nhiều loại ngôn ngữ cùng lúc. Ví dụ, JavaScript, PHP thuộc kiểu ngôn ngữ kịch bản, tuy nhiên, nó vẫn có những đặc điểm của kiểu ngôn ngữ hướng đối tượng, lập trình hàm, và thủ tục. Để tạo ra một chương trình, bạn sẽ sử dụng duy nhất một ngôn ngữ lập trình, hoặc có thể phải sử dụng nhiều ngôn ngữ lập trình. Ví dụ: để viết một chương trình đơn giản, bạn có thể chỉ cần sử dụng C#, tuy nhiên, nếu bạn viết một ứng dụng web thì bạn phải sử dụng nhiều ngôn ngữ khác nhau (HTML, CSS, JavaScript, SQL, PHP).

Mẫu hình lập trình

Tùy theo mục đích lập trình, loại ứng dụng muốn tạo ra và ngôn ngữ lập trình đang sử dụng, bạn có thể lựa chọn một, hoặc kết hợp nhiều mẫu hình (mô hình, paradigm) lập trình phổ biến sau:

– Lập trình hướng đối tượng (object-oriented programming)

– Lập trình thủ tục (procedural programming)

– Lập trình tổng quát, lập trình khái quát (generic programming)

– Lập trình hàm (functional programming)

– Và nhiều mẫu hình lập trình khác

Một ngôn ngữ có thể hỗ trợ một hoặc nhiều mẫu hình lập trình, do đó bạn có thể viết một chương trình chỉ sử dụng một mẫu hình cụ thể hoặc kết hợp nhiều mẫu hình lập trình. Ví dụ bạn chỉ sử dụng lập trình thủ tục; hoặc chỉ sử dụng lập trình hướng đối tượng; hoặc có thể sử dụng cùng lúc cả hai mẫu hình này.

1.3       Xem và đọc thêm

– Dùng các từ khóa sau để tìm kiếm trên mạng và đọc thêm: lập trình, mã máy, hợp ngữ, ngôn ngữ lập trình cấp cao, chương trình dịch

– T.Đ.Thư, N.T.Phương, Đ.B.Tiến, T.M.Triết, Nhập môn lập trình, NXB Khoa học kĩ thuật, 2011, tr14 – 28

– List of programming languages: https://en.wikipedia.org/wiki/List_of_programming_languages

– Stackoverflow (Programming, scripting, and markup languages): https://survey.stackoverflow.co/2022/#most-popular-technologies-language-prof

– List of scripting language: https://kinsta.com/blog/scripting-languages/

– List of markup language: https://computerscience.fandom.com/wiki/List_Of_Markup_Languages

– Các mẫu hình (mô hình) lập trình (programming paradigm): https://vi.wikipedia.org/wiki/M%E1%BA%ABu_h%C3%ACnh_l%E1%BA%ADp_tr%C3%ACnh

1.4       Bài tập và thực hành

Bài tập 1. Đọc thông tin trong khảo sát (survey) mới nhất của Stackoverflow và liệt kê tất cả các ngôn ngữ phổ biến hiện nay.

Bài tập 2. Viết một chương trình bằng JavaScript (đây là ngôn ngữ chạy theo kiểu thông dịch), xuất ra một thông báo bất kì.

Bài tập 3. Liệt kê tên của 5 ngôn ngữ lập trình, 5 ngôn ngữ kịch bản, và 5 ngôn ngữ đánh dấu.

Bài tập 4. Xem qua các clip trên youtube về cách sử dụng một code editor, IDE, môi trường lập trình trực tuyến. Ví dụ : VS code: https://www.youtube.com/watch?v=VqCgcpAypFQ&t=911s

Bài tập 5. Tải và cài đặt VS code

Bài tập 6. Tải và cài đặt Visual Studio

Bài tập 7. Sử dụng môn trường lập trình online, viết một đoạn mã bằng ngôn ngữ JavaScript, xuất một câu chào ra màn hình.

Gợi ý:

Bài tập 1. Vào trang Google > gõ từ khóa survey stackoverflow > tìm tới surver của năm mới nhất > tìm tới mục Technology > tìm tới mục Most popular technologies > tìm tới mục Programming, Scripting and Markup Language.

Bài tập 2. Xem hướng dẫn trong phần lý thuyết về Trình thông dịch.

Bài tập 3. Tìm kiếm trên Internet.

Bài tập 4. Tìm kiếm trên Youtube.

Bài tập 5. Tải và cài đặt VS code: vào trang google > tìm kiếm từ khóa VS code > vào trang web của VS code để tải về. Ví dụ: https://code.visualstudio.com/

Bài tập 6. Tải và cài đặt Visual Studio: vào trang google > tìm kiếm từ khóa visual studio > vào trang web của visual studio > chọn bản miễn phí (chọn tab Free Visual Studio) > chọn bản phù hợp với máy tính bạn đang sử dụng để tải về > ví dụ bản Visual Studio Community (https://visualstudio.microsoft.com/free-developer-offers/).

Bài tập 7. Sử dụng môn trường lập trình online, viết một đoạn mã bằng ngôn ngữ JavaScript, xuất một câu chào ra màn hình: mở một trang web cho phép lập trình online bất kì, ví dụ codepen (https://codepen.io/) > đăng nhập vào tài khoản của bạn (nếu bạn chưa có thì tạo mới một tài khoản) > nhập mã nguồn JavaScript (console.log('Hi cu Teo');) > mở cửa số console của code pen để xem kết quả. 

1.5       Câu hỏi ôn tập

Câu 1. Về mặt lý thuyết có thể viết đoạn mã điều khiển máy tính bằng?

A. Mã máy

B. Hợp ngữ

C. Ngôn ngữ lập trình cấp cao

D. Tất cả các cách trên

Câu 2. In computer science, an _______ is a computer program that directly executes instructions written in a programming or scripting language, without requiring them previously to have been compiled into a machine language program.

A. compiler

B. interpreter

C. assembler

D. coder

Câu 3. Bạn có thể lập trình bằng các công cụ nào?

A. text editor, code editor, IDE, web browser

B. microsoft word, code editor, IDE, web browser

C. text editor, code editor, CMD, web browser

D. text editor, code editor, IDE, HTML

Câu 4. Các kiểu ngôn ngữ lập trình (cấp cao) phổ biến gồm:

A. Java, Logic, Thủ tục, Hàm, Kịch bản

B. Hướng đối tượng, Hợp ngữ, Thủ tục, Hàm, Kịch bản

C. Hướng đối tượng, Logic, Thủ tục, Hàm, Kịch bản

D. Logic, Hướng đối tượng, C, Hàm, Kịch bản

Câu 5. Các mẫu hình (mô hình, paradigm) lập trình phổ biến gồm:

A. Tổng quát, Desktop, Thủ tục, Hàm

B. Hướng đối tượng, Thủ tục, Tổng quát, Hàm

C. Thủ tục, Hướng đối tượng, Tổng quát, Web

D. Tổng quát, Di động, Thủ tục, Hàm

Đáp án: 1 (D), 2(B), 3 (A), 4(C), 5(B)

-----//4

[Video]

--------

Cập nhật: 22/7/2022

Bài tiếp theo: Nhập môn lập trình (5) - C#, .NET và Visual Studio

Web back-end (4) - Ứng dụng web bán hàng

Bài trước: Web back-end (3) - Web server
-----
4. Ứng dụng web bán hàng

Để việc học thú vị hơn, chúng ta sẽ cùng học tiếp các nội dung của môn Phát triển ứng dụng web dựa trên việc thực hiện một dự án (Project-Based Learning - PBL).

Như đã đề cập, vòng đời của một dự án gồm các bước: 

- Lập dự án

- Xác định yêu cầu

- Phân tích

- Thiết kế

- Lập trình

- Triển khai

- Bảo trì và cập nhật

Chúng ta sẽ xem như đã có người khác làm các bước Lập dự án, Xác định yêu cầu, Phân tích, Thiết kế.

Chúng ta sẽ chỉ tập trung vào việc lập trình, trong quá trình lập trình, chúng ta sẽ dừng lại và tìm hiểu về các khái niệm liên quan.

4.1 Thông tin về dự án

Tên dự án

Phát triển ứng dụng web bán quần áo.

Các bạn có thể đặt tên dự án ngắn gọn để phù hợp với việc kinh doanh thực tế ngoài thị trường, ví dụ TeoShop.

Môi trường và công cụ

Để làm một ứng dụng web chúng ta cần ngôn ngữ lập trình phía client (client-side) và ngôn ngữ lập trình phía server (server-side).

Ngôn ngữ lập trình phía client gồm:

- HTML để tạo giao diện

- CSS để định dạng hiển thị, trang trí giao diện

- JavaScript để lập trình xử lý các hiệu ứng; giao tiếp, trao đổi dữ liệu giữa client và server

Ngôn ngữ lập trình phía server:

- Ngôn ngữ: JavaScript

- Framework: Express

Web server:

- Nodejs

Hệ quản trị cơ sở dữ liệu:

- PostgreSQL

Công cụ làm việc với PostgreSQL:

- DBeaver

Quản lý mã nguồn:

- Git, Github

4.2 Tải và cài đặt VS Code

Để viết mã nguồn, chúng ta có một số công cụ:

- Text editor: ví dụ Notepad

- Code editor: ví dụ VS Code, Sublime Text

- IDE: ví dụ Eclipse, Visual Studio, IntelliJ

- Các trang web: ví dụ https://codepen.io/

- Chatbot: ví dụ Gemini

Mỗi công cụ phù hợp cho từng tình huống sử dụng, trong phần này chúng ta sẽ sử dụng một Code Editor, có tên là VS Code.

VS Code là công cụ để: tạo, tổ chức thư mục, tập tin và viết mã nguồn cho dự án web.

Vào trang https://code.visualstudio.com/ để tải VS Code về máy.

Thực hiện cài đặt như một chương trình thông thường.

4.3 Tải và cài đặt Git

Git là một hệ thống quản lý phiên bản phân tán (distributed version control system) được sử dụng rộng rãi trong phát triển phần mềm. Nó cho phép các nhóm lập trình viên theo dõi và quản lý các thay đổi trong mã nguồn của một dự án một cách hiệu quả.

Một số tính năng của Git

- Theo dõi lịch sử thay đổi: Git lưu lại từng thay đổi nhỏ nhất của mã nguồn, giúp bạn dễ dàng quay lại các phiên bản trước đó nếu cần

- Cộng tác hiệu quả: Git cho phép nhiều người cùng làm việc trên một dự án cùng lúc, đồng thời hợp nhất các thay đổi một cách dễ dàng

- Phân nhánh và hợp nhất: Git hỗ trợ tạo nhiều nhánh (branch) làm việc độc lập, giúp bạn thử nghiệm các tính năng mới mà không ảnh hưởng đến phần còn lại của dự án

- Bảo mật: Git lưu trữ các thay đổi dưới dạng các bản ghi (commit) không thể thay đổi, đảm bảo tính toàn vẹn của mã nguồn

- Phân tán: mỗi bản sao của một kho lưu trữ Git đều là một kho lưu trữ đầy đủ, cho phép bạn làm việc không cần kết nối mạng và đồng bộ hóa sau đó (khi có kết nối mạng)

Tải và cài đặt Git

Do Git là một phần mềm, để sử dụng, bạn cần tải nó về máy, và thực hiện cài đặt như một phần mềm thông thường.

Vào trang https://git-scm.com/, chọn phiên bản phù hợp với hệ điều hành bạn đang dùng, để tải Git về máy.

Sau khi tải về máy, thực hiện cài đặt.

Để kiểm tra xem Git đã cài đặt thành công hay chưa? Hoặc để kiểm tra xem trên máy tính có phần mềm Git hay không:

- Bấm Phím cửa sổ + R để mở cửa sổ Run

- Gõ cmd > nhấn phím Enter để mở cửa sổ dòng lệnh (command line)

- Nhập lệnh git --version hoặc git -v


- Nếu xuất hiện thông tin về phiên bản của Git, có nghĩa là trên máy tính của bạn đã có phần mềm Git và bạn có thể sử dụng.

4.4 Tạo thư mục dự án và nhúng Git

Sử dụng File Explorer, tạo thư mục cho dự án. Ví dụ, trong ổ đĩa E:\, tạo thư mục dự án có tên là TeoShop.

Nhúng Git vào thư mục TeoShop

Nếu bạn muốn sử dụng Git để quản lý các phiên bản của dự án TeoShop thì bạn phải nhúng Git vào trong thư mục TeoShop.

Trước khi nhúng Git, bạn dùng File Explorer mở thư mục TeoShop ra để quan sát, bạn sẽ thấy TeoShop đang là thư mục rỗng.

Bạn có thể sử dụng Git bằng giao diện đồ họa, hoặc các chức năng của Git đã được tích hợp vào các phần mềm lập trình (ví dụ Visual Studio, Eclipse, VS code). Tuy nhiên, cách học Git hiệu quả nhất vẫn là sử dụng giao diện dòng lệnh. Giao diện dòng lệnh chứa đầy đủ nhất các lệnh của Git, khi đã hiểu được bản chất các lệnh rồi thì chuyển sang sử dụng các giao diện khác rất đơn giản.

- Trong cửa sổ dòng lệnh, di chuyển vào thư mục TeoShop. 

[Một vài lệnh hữu ích: gõ tên ổ đĩa, kèm dấu hai chấm (:) để chuyển ổ đĩa. Ví dụ, muốn chuyển qua ổ đĩa D sẽ nhập lệnh D: > nhấn phím Enter. Để di chuyển tới thư mục nào thì gõ lệnh cd tenthumuc. Để di chuyển lên thư mục cha: gõ hai dấu chấm (..). Để xem nội dung của một thư mục: dùng lệnh dir. Lệnh cd là viết tắt của change directory, lệnh dir là viết tắt của directory.]

- Gõ lệnh git init

Chữ init viết tắt của initialize, nghĩa là khởi tạo.

- Nếu nhúng Git thành công, sẽ thấy thông báo “Initialized empty Git repository in E:/TeoShop/.git/’. Ý là: đã khởi tạo một kho chứa rỗng của Git trong thư mục E:/TeoShop/.git/”.

- Mở thư mục dự án ra để quan sát sự thay đổi. Bạn sẽ thấy xuất hiện thêm thư mục ẩn có tên là .git. Đây chính là kho chứa (kho lưu trữ) mà phần mềm Git thêm tạo ra trong thư mục dự án TeoShop. Git sẽ sử dụng thư mục này cho các tác vụ của nó. Bạn không nên thay đổi nội dung trong thư mục .git.

Kho chứa là nơi chứa toàn bộ lịch sử các thay đổi của dự án, từ những dòng mã đầu tiên cho đến các phiên bản mới nhất. Hãy tưởng tượng kho chứa như một "nhà kho" lưu trữ tất cả các "bản ghi" về sự phát triển của dự án.

[Nếu máy bạn không nhìn thấy thư mục ẩn: trong cửa sổ của File Explorer, chọn menu View > đánh dấu chọn vào mục Hidden items.]


Vậy là bạn đã nhúng được Git vào trong thư mục của dự án. Chúng ta sẽ sử dụng Git để quản lý mã nguồn bằng các lệnh cụ thể ở trong các phần tiếp theo.

4.5 Bài tập

Bài tập 4.1 Thực hành các cài đặt trong bài học.

4.2 Lệnh nào được sử dụng để nhúng Git vào thư mục dự án?

A. git init

B. git --init

C. git initialize

D. git embed

4.3 Lệnh nào sử dụng để kiểm tra trên máy tính đã có phần mềm Git hay chưa?

A. git ver

B. git version

C. git --version hoặc git -v

D. git --ver

4.4 Trong Git, kho lưu trữ (repo, repository) là gì?

A. Là thư mục dự án

B. Là thư mục dự án đã được nhúng Git

C. Là thư mục cài đặt phần mềm Git

D. Là thư mục .git (trong thư mục dự án)

4.5 Bạn có thể sử dụng các công cụ sau để viết mã. Phát biểu nào không đúng?

A. Text editor

B. MS Word

C. IDE, Code Editor

D. Chatbot (Gemini), Trang web (https://codepen.io/) 

-----

Gợi ý làm bài tập

4.2(A), 4.3(C), 4.4(D), 4.5(B)

Học thêm:

[1] Git thực hành (1) - Hệ thống quản lý phiên bản

[2] Git thực hành (2) - Tổng quan về Git

----

Cập nhật: 17/2/2025

-----

Bài sau: Web back-end (5) - Nodejs và NPM