CHƯƠNG 1: CƠ SỞ LÝ THUYẾT ̀ h C# và hê ̣ quản tri cơ 1.Giới thiê ̣u ngôn ngữ lâ ̣p trin ̣ sở dữ liê ̣u SQL Server 1. Ngôn ngữ lâ ̣p trình C# 1.Khái niê ̣m C# Là một trong những ngôn ngữ lập trình theo hướng đối tượng được phát triển và ra mắt do Anders Hejlsberg phát triển vào năm 2001. Ngôn ngữ này được đầu tư bởi Microsoft và còn được xem như đối thủ “nặng ký” của Java. C# có sự kết hợp chặt chẽ cùng với .NET Framework nhằm hỗ trợ cho việc tạo ra các ứng dụng Windows Forms hoặc WPF được trở nên dễ dàng và nhanh chóng hơn.
Cho tới hiện nay thì C# đang là một trong những ngôn ngữ được đông đảo người dùng ưu tiên sử dụng và dần trở thành ngôn ngữ lập trình phổ biến nhất trên thế giới.Mục tiêu của viê ̣c phát triể n C# Tiêu chuẩn ECMA liệt kê các mục tiêu của việc thiết kế ngôn ngữ C#: Ngôn ngữ được dự định là một ngôn ngữ lập trình đơn giản, hiện đại, hướng đến nhiều mục đích sử dụng, và là một ngôn ngữ lập trình hướng đối tượng. Ngôn ngữ và việc triển khai đáp ứng các nguyên tắc của ngành kỹ thuật phần mềm như kiểm tra chặt chẽ kiểu dữ liệu, kiểm tra giới hạn mảng, phát hiện các trường hợp sử dụng các biến chưa có dữ liệu, và tự động thu gom rác. Tính mạnh mẽ, sự bền bỉ, và năng suất của việc lập trình là rất quan trọng đối với ngôn ngữ này. Ngôn ngữ sẽ được sử dụng để phát triển các thành phần của phần mềm theo hướng thích hợp cho việc triển khai trong các môi trường phân tán.
Khả năng di chuyển (portability) là rất quan trọng, đặc biệt là đối với những lập trình viên đã quen với C và C++. Hỗ trợ quốc tế hóa (i18n). 4 Ngôn ngữ sẽ được thiết kế để phù hợp với việc viết các ứng dụng cho cả hai hệ thống: hosted và nhúng, từ các phần mềm quy mô lớn, đến các phần mềm chỉ có các chức năng đơn giản. Mặc dù các ứng dụng C# có tính kinh tế đối với các yêu cầu về bộ nhớ và chế độ xử lý, ngôn ngữ này không cạnh tranh trực tiếp về hiệu năng và kích thước đối với ngôn ngữ C hoặc assembly.Đặc trưng của ngôn ngữ lập trình C# Tính đơn giản: C# là một trong những loại ngôn ngữ được xây dựng dựa trên nền tảng của C++ và Java.
Nhờ vậy, mà chúng hầu như đều có cấu trúc chương trình khá giống nhau. Mặc dù C# là ngôn ngữ “sinh sau đẻ muộn” nhưng nhờ có nhiều cải tiến mới nên rất phù hợp với mọi đối tượng lập trình viên. Một số cải tiến của nó đó chính là cấu trúc được rút gọn sao cho dễ nhớ và đơn giản hơn. C# là ngôn ngữ dễ sử dụng và có tính hiện đại cao.
Ngôn ngữ lập trình C# được các chuyên gia nhận xét là loại ngôn ngữ thuần hướng các tố tượng. Nó bao gồm các tính như: Trừu tượng, đa hình, kế thừa và đóng gói. So với những loại ngôn ngữ lập trình khác thì C# sử dụng lượng từ khóa ít hơn rất nhiều. Nhờ đặc điểm này mà các lập trình viên đều thuận tiện hơn rất nhiều cho việc xây dựng lên các đối tượng dành riêng cho mình.Ưu điểm của ngôn ngữ lập trình C# C# được đánh giá là ngôn ngữ lập trình có tính linh hoạt và nhiều ưu điểm nổi bật, cụ thể như sau: Quy mô của chương trình: C# thường được sử dụng để viết trên các hệ thống vi điều khiển có kích cỡ 8bit.
Ngoài ra, nó còn được sử dụng trong các hệ thống trên 64bit hoặc hệ thống siêu máy tính. C# là ngôn ngữ có hiệu suất cao, có thể chạy mượt trên mọi hệ thống giới hạn về dung lượng. Bởi vì ngay từ những ngày đầu thì C# đã được thiết kế cho mục đích thay thế cho ASM trong những hệ thống có bộ nhớ hạn chế. 5 C# có khả năng thực hiện các thuật toán giúp hỗ trợ rất nhiều kiểu dữ liệu khác nhau cũng như việc chuyển đổi sẽ trở nên dễ dàng hơn.
Ngôn ngữ lập trình C# còn có khả năng cung cấp thư viện chuẩn với hàm có chức năng và công cụ toán học. C# là ngôn ngữ sở hữu cú pháp rất sát với những suy nghĩ logic, nhờ vậy mà việc viết code sẽ được đơn giản hóa và nhanh chóng hơn. C# là loại ngôn ngữ lập trình rất an toàn và nó không cho phép việc chuyển đổi kiểu dữ liệu để có thể giảm tránh được những vấn đề sai lệch xảy ra. Trong C# sẽ cho kết quả trả về thuộc các hàm đa phần đều là một object.
Các lỗi lập trình phổ biến như: gõ nhầm tên, viết sai cấu trúc… đều sẽ được hệ thống cảnh báo luôn mà không cần phải chờ đến lúc chạy. C# thường được đi cùng với Visual Studio và bộ đôi này được sử dụng rất nhiều cho việc xây dựng Winform, WPF, website bằng MVC. Hiện nay, nó ngày càng trở nên phổ biến trong việc xây dựng nền tảng cho các ứng dụng di động. Hiện nay, việc học C# sẽ trở nên dễ dàng hơn bởi cộng đồng C# đang rất phát triển và rộng mở.
Chính vì vậy, các nhà phát triển cũng như lập trình viên ngôn ngữ C# có thể hỗ trợ, giúp đỡ cùng nhau phát triển kỹ năng và kinh nghiệm về C#.Ứng dụng của ngôn ngữ lập trình C# Phát triển web backend (ASP.NET MVC, ASP.NET core, Web API,Graph API,gPRC, Blazor sevver,Uno platform, Mono) Phát triển web front end (Blazor WebAssembly,Uno platform) Phát triển desktop app (Winform, WPF, UWP,WinUI, Mono, Uno, MAUI,Blazor desktop.) Phát triển game 2D, 3D đa nền tảng (Game engine:Unity, Monogame, Godot, Stride, CryEngine, NeoAxis.) Phát triển thực tế ảo (VR), thực tế tăng cường(AR), thực tế hỗn hợp (MR) (HoloLens,Unity,CryEngine, Oculus quest.) 6 Phát triển ứng dụng đồ họa 2D,3D đa nền tảng (2D: SkiaSharp, ImageSharp.; 3D: OpenTK, SharpDX, SharpVulkan, Vulkan.NET, Veldrid, Silk.) Phát triển mobile app, IOS native, Android native (Xamarin,MAUI,Uno platform) Phát triển đám mây (Azure,AWS,Google Cloud.) Học máy và trí tuệ nhân tạo (ML.Net, TensorFlow, csiSharp.) Data science, bigdata (csiSharp, Apache Spark) Blockchain (NEO, Stratis) Microservices and containers Internet of thing (IoT,5G) Hệ thống nhúng (Raspberry pi, PLC) 1.Quá trình dịch của C# Người ta thường gọi C# là ngôn ngữ biên dịch bởi khi được build thì nó là trình biên dịch, trình này sẽ thực hiện chuyển đạn C# thành một trong những ngôn ngữ trung gian. C# được gọi là Microsoft Intermediate Language (MSIL) và được lưu dưới dạng một file theo thiên hướng thực thi (exe). Nếu như chạy file thực thi thì .NET Framework sẽ được gọi là Just In Time Compiler để thực hiện chuyển MSIL code trở thành ngôn ngữ của máy rồi thực hiện chương trình. Loại ngôn ngữ trung gian này thường giống với các loại ngôn ngữ máy nên bạn có thể dịch nó ra rất nhanh.
Quá trình thực hiện biên dịch của ngôn ngữ C#: Bước 1: Thực hiện Click chuô ̣t phải vào project cho ̣n build. Visual Studio sẽ ̣ Tiếp đó, mã C# sẽ được chuyển đổi để trở thành một thực hiện go ̣i trình biên dich. loại ngôn ngữ trung gian Microsoft Intermediate Language (MSIL). Sau khi chương trình này kết thúc thì việc đóng gói thành file exe sẽ được thực hiện.
Bước 2: Click chuột phải vào project, cho ̣n Open folder in file explorer. Bước 3: Vào thư mu ̣c bin/debug, lúc này chương trình của bạn đã được chuyển thành dạng. và file exe này có chứa mã MSIL. 7 Bước 4: Tiến hành viết nội dung cho chương trình, thông tin như sau: using System; using System.Generic; using System.Linq; using System.Text; namespace DuAn { class Program { static void Main(string[] args) { /* Nội dung bạn cần viết */ Console.ReadKey(); } } } Thực hiện cha ̣y file .exe vào lúc này thì MSLI đã được chuyển hướng trở thành ngôn ngữ máy.
Vì vậy, thông qua Just In Time Compiler thì máy tính sẽ hiểu được các dòng lệnh mà bạn đã viết rồi xuất ra kết quả như màn hình hiển thị. Hê ̣ quản tri ̣cơ sở dữ liê ̣u SQL Server 1.Khái niệm SQL Server (viết tắt của cụm từ Structured Query Language) là một hệ thống quản lý cơ sở dữ liệu quan hệ (Relational Database Management System, viết tắt là RDBMS). SQL Server có khả năng hỗ trợ một số lượng lớn các quy trình xử lý giao dịch, ứng dụng doanh nghiệp và ứng dụng phân tích trong các công ty hoạt động trong lĩnh vực IT. Cũng giống như các hệ thống quản lý cơ sở dữ liệu qua hệ khác, SQL Server được xây dựng trên lớp SQL – là ngôn ngữ lập trình tiêu chuẩn hoá được quản trị viên cơ sở dữ liệu (DBAs) và các chuyên gia IT sử dụng để quản lý cơ sở dữ liệu và truy vấn các dữ liệu nằm bên trong.Các tính năng của sqlserver Tính năng doanh nghiệp chuyên biệt Microsoft hiện nay đã ra mắt thêm các tính năng quản lý dữ liệu đa dạng dành cho doanh nghiệp và các công cụ phân tích SQL Server.
Đi cùng với các dịch vụ Machine Learning được tích hợp lần đầu tiên trong phiên bản SQL Server 2016, các dịch vụ phân tích dữ liệu, công cụ phân tích dữ liệu, các ứng dụng trực quan hoá dữ liệu và các dịch vụ SQL Server Reporting nhằm hỗ trợ và phân phối các báo cáo BI. Tính năng quản lý Về phương diện quản trị, Microsoft SQL Server gồm các dịch vụ tích hợp SQL Server, dịch vụ SQL Server Data Quality và dịch vụ SQL Server Master. Hai 8 bộ công cụ dành riêng cho quản trị viên cơ sở dữ liệu và lập trình viên (SQL Server Data Tools) sử dụng trong việc phát triển hệ thống cơ sở dữ liệu cho SQL Server Management Studio, thực hiện nhiệm vụ triển khai, giám sát và quản lý các cơ sở dữ liệu.Tổng quan về nhận diện khuôn mặt 1. Giới thiệu về nhận diện khuôn mặt Nhận dạng mặt người (Face recognition) là một lĩnh vực nghiên cứu của ngành thị giác máy tính (Computer Vision), và cũng được xem là một lĩnh vực nghiên cứu của ngành Sinh trắc học (Biometrics) tương tự như nhận dạng vân tay – Fingerprint recognition, hay nhận dạng mống mắt – Iris recognition.
Xét về nguyên tắc chung, nhận dạng mặt có sự tương đồng rất lớn với nhận dạng vân tay và nhận dạng mống mắt, tuy nhiên sự khác biệt nằm ở bước trích chọn đặc trưng (feature extraction) của mỗi lĩnh vực.