BAO GỒM SOURCE CODE TRƯỜNG ĐẠI HỌC SÀI GÒN KHOA CÔNG NGHỆ THÔNG TIN CÁC CÔNG NGHỆ LẬP TRÌNH HIỆN ĐẠI Chương trình trình diễn hình ảnh Giảng viên hướng dẫn Trần Đình Nghĩa Sinh viên thực hiện , Universal Windows Platform C,
TRƯỜNG ĐẠI HỌC SÀI GỊN KHOA CƠNG NGHỆ THƠNG TIN - - CÁC CƠNG NGHỆ LẬP TRÌNH HIỆN ĐẠI Chương trình trình diễn hình ảnh Giảng viên hướng dẫn: Trần Đình Nghĩa Sinh viên thực hiện: 3114410035 - Nguyễn Vũ Hào 3114410048 - Phạm Lê Hoàng 3114410052 - Lê Thạch Nhật Huy 3114410056 - Phan Văn Huy MỤC LỤC I Tìm hiểu mơn Các cơng nghệ lập trình đại Khái niệm LinQ LINQ (Language Integrated Query) ngơn ngữ tích hợp truy vấn đổi visual studio 2008 Net Framework 3.5 cầu nối khoảng cách giới đối tượng giới liệu Theo truyền thống câu lệnh truy vấn liệu thể cách dễ dàng giống chuỗi ký tự đơn giản mà không cần đến kiểm tra thời điểm diễn biên dịch hỗ trợ trình hỗ trợ trực quan Hơn cần phải tìm hiểu ngơn ngữ truy vấn khác cho loại liệu nguồn khác như: Cơ sở liệu SQL, tài liệu XML( Extensible Markup Language), dịch vụ LINQ hỗ trợ truy vấn lớp xây dụng ngôn ngữ C# Visual Basic Sử dụng câu lệnh truy vấn dựa tập hợp đối tượng cách sử dụng ngơn ngữ, từ khóa tốn tử quen thuộc Trong Visual Studio viết câu lệnh truy vấn LINQ Visual Basic C# với sở liệu SQL Server, tài liệu XML, ADO.NET databasets bát kỳ đối tượng hỗ trợ IEnumerable có đặc điểm giống giao diện Ienumerable LINQ hỗ trợ cho thực thể ADO.NET framework LINQ nhà cung cấp viết bên thứ ba cho nhiuef dịch vụ triển khai liệu hóa Có thể sử dụng truy vấn LINQ dự án dự án có Một yêu cầu nhât dự án phải xây dựng NET framework 3.5 - LinQ có nhiều loại: LinQ to SQL, LinQ to Entities, LinQ to Object Trong Project sử dụng LinQ to SQL - Các Namespace hỗ trợ LINQ: System.LinQ: Hỗ trợ sử dụng Objects; System.Data.LinQ: Hỗ trợ sử dụng sở liệu quan hệ; System.Data.Objects: Hỗ trợ sử dụng Entities; System.XML.LinQ: Hỗ trợ sử dụng XML; LinQ to SQL LinQ to SQL cung cấp sở hạ tầng cho việc quản lý liệu quan hệ đối tượng Nó thành phần version 3.5 NET Framework LinQ to SQL phiên thực hố O/RM (object relational mapping) có bên NET Framework Nó cho phép người dùng mơ hình hố sở liệu dùng lớp NET Sau đó, truy vấn chúng cách dùng LinQ – tất nhiên cho phép thao tác: Insert, Update, Delete, View, Store Procedure, Transaction LinQ to SQL hỗ trợ cho SQL Server, người dùng người bắt đầu nghiên cứu LinQ to SQL lựa chọn tuyệt vời Hình 1: Mơ hình LinQ to SQL Truy vấn sử dụng LinQ to SQL a) Cấu trúc câu truy vấn LinQ to SQL Một câu lênh truy vấn LinQ to sql ln gồm có đối tượng: Nguồn liệu, tạo câu truy vấn, thực câu truy vấn: Hình 2: Cấu trúc hoạt động LinQ to SQL Nguồn liệu danh sách item Câu lệnh truy vấn bao gồm có from xác định liệu lấy từ bảng nào, where thỏa mãn điều kiện lấy ra, select lựa chọn trường đối tượng , chọn đối tượng Thực câu truy vấn lên thêm, sửa , xóa.Thêm , sửa , xóa nhiều đối tượng b) Cơ chế làm việc với sở liệu LinQ to SQL LinQ thông qua ứng dụng hỗ trợ biên dịch lin để dịch thành câu lệnh tương ứng Sql để thực thao tác với sở liệu Các câu lệnh thao tác với sở liệu gọi đến câu lệnh chưa thực Nó thực hiên gọi đến phương thức Submitchange() Các câu lệnh thao tác phải thông qua ứng dụng hỗ trợ biên dịch câu lệnh LinQ thành câu lệnh sql tương ứng để thao tác với sở liệu c) Các từ khóa để tạo câu truy vấn from itemName in srcEX join itemName in srcEx on keyEx equal keyEX (into ItemName) where predExpr group SelExpr by keyEX into itemName query-body orderby(keyEX(ascending descending)?)* select selExpr Trong đó: • From chọn đối tượng từ nguồn • Join thực tham gia liên kết với bảng để lấy trường liệu mong muốn • Where để ghi điều kiện đối tượng nguồn phải thỏa mãn điều kiện lấy • Group thực gom nhóm đối tượng lấy theo trường Ví dụ có danh sách sinh viên bạn muốn sinh viên thuộc lớp đứng gần Để làm điều LinQ dùng group • Orderby thực xếp đối tượng lấy theo trường theo thứ tự giảm dần hay tăng dần d) Các đối tượng hay sử dụng LinQ to SQL - Các hàm Sum/ Min/ Max/ Average hàm tính tổng, lấy giá trị nhỏ nhất, lấy giá trị lớn nhất, lấy giả trị trung bình - Hàm take, skip hàm lấy ghi hiển thị danh sách ghi lấy từ ghi thử - Hàm First, FirstOrDefault hàm dùng để lấy phần tử danh sách phần tử: + First: Khi dùng mà phần tử lấy mà rỗng xảy lỗi + FirstOrDefault : Có thể cho phép đối tượng lấy null nhớ thực kiểm tra khác null thực hiên câu lênh bên if - Tương tự FirstOrDefault Last, LastOrDefault lấy phần tử cuối e) Cấu trúc truy vấn sử dụng LinQ to SQL C# Hiển thị liệu lên GridView List list = new List(); var query = (from n in db.Saches select n); list = query.ToList(); DataGridView1.DataSource = list; Tìm kiếm liệu từ CSDL var query1 = (from sach in db.Saches where sach.MaSach == cbb_masach.Text select sach); list = query1.ToList(); DataGridView1.DataSource = list; Thêm ghi vào CSDL Sach saches = new Sach(); saches.CMT = txt_cmt.Text; saches s.MaSach = txt_masach.Text; saches s.TenSach = txt_tensach.Text; saches s.TacGia = txt_tgia.Text; saches s.NXB = txt_nxb.Text; db.Saches.InsertOnSubmit(saches); db.SubmitChanges(); Sửa ghi CSDL Sach saches = db.Saches.FirstOrDefault(s => s.CMT == txt_cmt.Text); saches s.MaSach = txt_masach.Text; saches s.TenSach = txt_tensach.Text; saches s.TacGia = txt_tgia.Text; saches s.NXB = txt_nxb.Text; db.SubmitChanges(); Xóa ghi CSDL Sach dssach = (from Sach in db.Saches where Sach.CMT == txt_cmt.Text select Sach).SingleOrDefault(); if (dssach != null) { db.Saches.DeleteOnSubmit(dssach); db.SubmitChanges(); MessageBox.Show("Xóa thành cơng", "Xóa đơn vị sách"); } Tìm kiếm liệu từ nhiều bảng var query = (from dg in db.DocGias join ms in db.MuonSaches on dg.MaSach equals ms.MaSach where dg.CMT == txt_input.Text select ms); sachBindingSource.DataSource = query.ToList(); Điện toán đám mây (Cloud computing) Về khái niệm, điện tốn đám mây hiểu nơi tập hợp chung tài ngun hệ thống máy tính tùy chỉnh dịch vụ cấp cao cung cấp nhanh chóng với tài nguyên quản lý tối thiểu, thơng thường qua Internet Điện tốn đám mây dựa vào việc chia sẻ tài nguyên để đạt gắn kết tiết kiệm quy mô, tương tự tiện ích cơng cộng Trước có điện toán đám mây, hầu hết ta phải sử dụng CD, Floppy disk USB để lưu trữ liệu dự phòng thường chúng tốn bất tiện lại Hình 3: Mơ hình thuật tốn đám mây Lợi ích: + Hình thành dịch vụ lưu trữ thơng tin OneDrive, Google Drive, Dropbox,… có chức lưu trữ thông tin trực tuyến, giảm bớt rủi ro mang mang lại thông tin quan trọng tay thuê phần mềm lưu trữ bên thứ ba + Đảm bảo hệ thống bảo mật liệu ln an tồn người đăng ký tài khoản dịch vụ miễn phí (Chỉ định tài khoản Free) Bất lợi: + Mọi thứ liên quan đến Cloud cần kết nối Internet + Mạng chậm dẫn đến thiệt hại thời gian vận chuyển thông tin + Quyền riêng tư bị ảnh hưởng thông tin chưa đảm bảo bí mật tuyệt đối, đặc biệt đánh tài khoản + Nỗi lo downtime: KHÔNG nhà cung cấp dịch vụ đám mây đảm bảo máy chủ họ chạy 100% liên tục Ứng dụng Universal Windows Platform (UWP) Universal Windows Platform (UWP), cấu trúc ứng dụng thống tảng tạo Microsoft giới thiệu lần đầu Windows 10 Mục đích tảng phần mềm giúp phát triển ứng dụng kiểu Metro chạy Windows 10 Windows 10 Mobile mà không cần phải viết lại ứng dụng cho tảng Nó hỗ trợ cho việc phát triển ứng dụng Windows C++, C#, VB.NET, XAML API thực C++, hỗ trợ C++, VB.NET, C#, JavaScript Được thiết kế phần mở rộng tảng Windows Runtime giới thiệu lần đầu Windows Server 2012 Windows 8, UWP cho phép nhà phát triển tạo ứng dụng chạy nhiều loại thiết bị UWP phần Windows 10 Windows 10 Mobile Các ứng dụng UWP không chạy phiên Windows cũ Các ứng dụng sử dụng tảng phát triển Visual Studio 2015 Các ứng dụng kiểu Metro cũ dành cho Windows 8.1, Windows Phone 8.1 cho hai (universal 8.1) cần điều chỉnh để chuyển sang UWP Ứng dựng UWP bao gồm giao diện file xaml , file xaml.cs để xử lý chức cho giao diện Giới thiệu số cơng cụ UWP: • AppBar • CommandBar Click="AppBarButton_Click"/> • Flyout Source="Assets/SplashScreen.png" /> • Toggle switch Header="ToggleSwitch" OnContent="On" OffContent="Off" Microsoft cung cấp mẫu thiết kế dành cho Adobe Illustrator Microsoft PowerPoint gồm tất bạn cần để bắt đầu thiết kế ứng dụng UWP Những mẫu thiết kế bao gồm control giao diện cho dịng thiết bị Cơng nghệ xử lý hình ảnh Lumia Imaging SDK, phiên 3.0, cung cấp công nghệ mà Microsoft sử dụng ứng dụng hình ảnh riêng cho nhà phát triển bên thứ ba Các tính cung cấp khả giải mã mã hóa hình ảnh, áp dụng hiệu ứng, pha trộn, cắt, xoay thay đổi kích thước Nó cho phép nhà phát triển dễ dàng truy cập vào thuật toán hình ảnh đẳng cấp giới việc sử dụng GPU dễ dàng (sử dụng Direct2D) Nó cho phép nhà phát triển mở rộng chức cho kịch tùy chỉnh Lumia Imaging SDK cơng cụ xử lý khung hình video phong phú dành cho nhà phát triển để cung cấp trải nghiệm hình ảnh tuyệt vời ứng dụng họ Nó cung cấp 60 hiệu ứng tạo sẵn, nhiều số áp dụng mà khơng cần giải mã tồn hình ảnh Điều có nghĩa bạn áp dụng hiệu ứng cho hình ảnh có độ phân giải cao mà khơng phải lo lắng ngân sách nhớ Bạn thêm hiệu ứng cho dự án bạn vài dòng C # Thư viện gọi từ mã C ++ Các hiệu ứng kết nối để tạo hiệu ứng xác mà bạn tìm kiếm Một số hiệu ứng: II Lược đồ (Diagram) Use case Diagram View Slide show Rotate Draw Zoom User Flip Filter Crop Detect face Open/Save Class Diagram Ứng dụng bao gồm lớp giao diện chính: MainPage, DrawPage, DesignPage, CropRotatePage, lớp hỗ trợ xử lý hình ảnh DrawPage MainPage DesignPage Vẽ hình ảnh lưu Open, Zoom, Slide, Detect face Lọc màu hình ảnh lưu ảnh CropRotatePage Crop, rotate, flip hình ảnh III Giao diện Main Screen Chọn menu click Open để mở mơt hình ảnh Click nút SlideShow AppBar Slide show Edit Screen Crop Screen Draw Screen IV LINK Tải demo https://rg.link/SoZhh7V Nếu không tải được, vui lòng liên hệ : phamlehoang.dct1143@gmail.com V Tài liệu tham khảo Đồ án kỹ sư II – Nguyễn Văn Thụy, Đồn Mạnh Giỏi Giáo trình nhập mơn CSDL – Phạm Hùng Phú – 2012 Phân tích thiết kế hệ thống thông tin quản lý – Phạm Hùng Phú – 2012 Phân tích thiết kế hệ thống thơng tin – Nguyễn Văn Ba – 2002 Cấu trúc liệu giải thuật – Đỗ Xuân Lôi – 2009 Giáo trình LinQ to SQL tiếng Việt – Đào Hải Nam (Bản dịch) - 2013 Khóa học trực tuyến Duy Thành – CSE.Wordpress 2014 Giáo trình mơn Các cơng nghệ lập trình đại – Trần Đình Nghĩa - 2018 Giáo trình tổng quan LinQ – Đại học Đồng Nai – 2008 https://vi.wikipedia.org/wiki/Universal_Windows_Platform Thư viện , https://msdn.microsoft.com/enus/library/windows/apps/mt185406.aspx?f=255&MSPPError=-2147217396 ... Giáo trình LinQ to SQL tiếng Việt – Đào Hải Nam (Bản dịch) - 2013 Khóa học trực tuyến Duy Thành – CSE.Wordpress 2014 Giáo trình mơn Các cơng nghệ lập trình đại – Trần Đình Nghĩa - 2018 Giáo trình. .. LỤC I Tìm hiểu mơn Các cơng nghệ lập trình đại Khái niệm LinQ LINQ (Language Integrated Query) ngơn ngữ tích hợp truy vấn đổi visual studio 2008 Net Framework 3.5 cầu nối khoảng cách giới đối tượng... cho dịng thiết bị Cơng nghệ xử lý hình ảnh Lumia Imaging SDK, phiên 3.0, cung cấp công nghệ mà Microsoft sử dụng ứng dụng hình ảnh riêng cho nhà phát triển bên thứ ba Các tính cung cấp khả giải