Bộ giáo trình này được biên soạn dựa trên những tài liệu mới nhất về .NET framework 3.5 nhằm cung cấp cho sinh viên công nghệ thông tin những kiến thức cơ bản nhất về .NET framework. Nội dung bao gồm kiến trúc .NET framework, sự phát triển của .NET framework qua các phiên bản, kiến trúc phiên bản 3.5, các nội dung cơ bản trong phiên bản 3.5. Đặc biệt, giáo trình đi sâu vào Language Integrated Query (LINQ), Windows Presentation Foundation (WPF) là các công nghệ mới rất tiêu biểu của Microsoft .NET nhằm cung cấp cho sinh viên những kĩ năng cơ bản nhất để phát triển các ứng dụng trên nền .NET framework 3.5.
Những mục tiêu chính mà giáo trình cố gắng đạt được:
1. Cung cấp cho sinh viên một cái nhìn tổng quan về kiến trúc .NET framework, nắm được sự phát triển qua từng phiên bản của .NET framework, so sánh các phiên bản.
2. Giúp sinh viên nắm được một số nội dung cơ bản trong .NET framework 3.5, sự khác biệt của nó so với các phiên bản trước.
3. Hướng dẫn cho sinh viên các kỹ thuật lập trình cơ bản với 2 công nghệ quan trọng là LINQ và WPF.
Vì được bố cục trong 45 tiết dạy nên giáo trình không thể đi sâu vào chi tiết từng nội dung trong .NET framework mà chỉ dừng ở mức giới thiệu các khái niệm cơ bản nhất. Đối với phiên bản 3.5, giáo trình xoáy sâu vào 2 nội dung cơ bản là LINQ và WPF là các công nghệ thường gặp nhất đối với người lập trình trên .NET framework 3.5.
53 trang |
Chia sẻ: luyenbuizn | Lượt xem: 1674 | Lượt tải: 1
Bạn đang xem trước 20 trang nội dung tài liệu Giáo trình Microsoft Net framework 3.5, để xem tài liệu hoàn chỉnh bạn click vào nút DOWNLOAD ở trên
TÀI LIỆU HƯỚNG DẪN GIẢNG DẠY
DÀNH CHO GIẢNG VIÊN
Thông tin và mục tiêu khóa học
Bộ giáo trình này được biên soạn dựa trên những tài liệu mới nhất về .NET framework 3.5 nhằm cung cấp cho sinh viên công nghệ thông tin những kiến thức cơ bản nhất về .NET framework. Nội dung bao gồm kiến trúc .NET framework, sự phát triển của .NET framework qua các phiên bản, kiến trúc phiên bản 3.5, các nội dung cơ bản trong phiên bản 3.5... Đặc biệt, giáo trình đi sâu vào Language Integrated Query (LINQ), Windows Presentation Foundation (WPF) là các công nghệ mới rất tiêu biểu của Microsoft .NET nhằm cung cấp cho sinh viên những kĩ năng cơ bản nhất để phát triển các ứng dụng trên nền .NET framework 3.5.
Những mục tiêu chính mà giáo trình cố gắng đạt được:
Cung cấp cho sinh viên một cái nhìn tổng quan về kiến trúc .NET framework, nắm được sự phát triển qua từng phiên bản của .NET framework, so sánh các phiên bản.
Giúp sinh viên nắm được một số nội dung cơ bản trong .NET framework 3.5, sự khác biệt của nó so với các phiên bản trước.
Hướng dẫn cho sinh viên các kỹ thuật lập trình cơ bản với 2 công nghệ quan trọng là LINQ và WPF.
Vì được bố cục trong 45 tiết dạy nên giáo trình không thể đi sâu vào chi tiết từng nội dung trong .NET framework mà chỉ dừng ở mức giới thiệu các khái niệm cơ bản nhất. Đối với phiên bản 3.5, giáo trình xoáy sâu vào 2 nội dung cơ bản là LINQ và WPF là các công nghệ thường gặp nhất đối với người lập trình trên .NET framework 3.5.
Bộ giáo trình được biên soạn và tổng hợp bao gồm: slide bài giảng, bài exercise, bài thực hành lab và các Video tự học. Ở đây, toàn bộ giáo trình đều được trình bày bằng tiếng Anh, nhằm mục đích nâng cao khả năng tiếp thu và phát triển các kỹ năng học và nghiên cứu bằng tiếng Anh – các kỹ năng vô cùng quan trọng đối với người học công nghệ thông tin.
Giáo trình có thể dùng tham khảo cho các ngành Công nghệ thông tin, điện tử, viễn thông.
Phương pháp giảng dạy
Khóa học này yêu cầu sinh viên phải được thực hành nhiều bằng các ví dụ, project thực tế để có khả năng làm thật thay vì chỉ nghe lý thuyết suông. Giáo viên nên tổ chức các buổi học lý thuyết và buổi học làm lab đan xen nhau, lý thuyết mà sinh viên mới học có thể được thể hiện ngay bằng các bài thực hành. Điều này giúp cho sinh viên nhớ và hiểu kỹ hơn những gì giáo viên truyền đạt, và cũng tăng sự hứng thú trong việc học.
Một ví dụ về việc tổ chức các buổi học đã được áp dụng:
Tổ chức tuần 3 tiết học lý thuyết và 1 buổi thực hành:
Lý thuyết
Số lượng tiết: 3 ( có thể thay đổi)
Thời gian giảng slide: từ 2 đến 2.5 tiết tùy vào chương và điều kiện.
Thời gian còn lại cho sinh viên nghe các Training Video và tiến hành thảo luận.
Thực hành
- Sinh viên thực hành các bài lab của giáo trình.
- Giáo viên tìm một ví dụ, tốt nhất là một project thực tế để làm thông qua các bài lab, hướng dẫn từng bước để sinh viên hiểu được quá trình làm thực tế.
Kết thúc khóa học, giáo viên nên yêu cầu sinh viên thực hiện những project tổng thể bằng việc đưa ra danh sách các mẫu project để sinh viên lựa chọn, hoặc sinh viên tự đăng ký. Việc yêu cầu này có thể được thực hiện vào giữa học kỳ hoặc vào cuối kỳ.
Để rèn luyện kỹ năng làm việc nhóm cho sinh viên, giáo viên có thể yêu cầu lớp phân chia thành các nhóm sinh viên để làm các project. Tùy vào độ lớn của project mà quy định số lượng thành viên của một nhóm, số lượng có thể giao động từ 2 đến 4 sinh viên. Khi bắt đầu thực hiện và trong quá trình thực hiện project, giáo viên cần có mặt để tham gia cùng sinh viên, hướng dẫn để sinh viên đi đúng hướng và hiểu vấn đề một cách chính xác.
Đề cương môn học
Giáo trình được biên soạn để giảng dạy trong 15 tuần, với thời lượng 3 tiếng một tuần cho phần lý thuyết và một buổi thực hành Lab. Trong thời gian học lý thuyết, việc đan xen cho sinh viên nghe các bài Trainning Video có thể tốn khá nhiều thời gian. Do đó giáo viên nên cân đối việc chia thời gian và chọn lọc các bài Video để cho sinh viên nghe và thảo luận trên lớp, còn những phần khác có thể giao cho sinh viên về nhà tự nghe rồi trả lời câu hỏi của giáo viên để buổi sau lên lớp trao đổi.
Đề cương:
.NET Overview
Thời gian: 1 buổi
Bài giảng : Chapter 1- .NET Overview
Nội dung :
1.1 Introduction
1.2 Overview of the .Net flatform
1.3 Overview of the .Net Framework
Summary
Bài tập : Exercise 1
Common Language Runtime
Thời gian: 1 buổi
Bài giảng : Chapter 2: Common Language runtime
Nội dung :
2.1 Introduction
2.2 CLR Executables
2.3 CLR in .Net framework 3.5
Summary
Bài tập : Exercise 2
Bài Lab : Lab 2
.NET framework 3.5
Thời gian: 1 buổi
Bài giảng : Chapter 3: .NET framework 3.5
Nội dung :
3.1 Previous Versions
3.2 .Net framework 3.5
Summary
Microsoft Language Integrated Query
Thời gian: 4 buổi
Bài giảng : Chapter 4: Microsoft Language Integrated Query
Nội dung :
4.1 Introduction LINQ
4.2 C# and VB.NET language enhancements
4.3 LINQ building blocks
4.4 Querying objects in memory
4.5 Querying relational data
4.6 Manipulating XML
4.7 Extending LINQ
4.8 A look to futureSummary
Bài tập : Exercise 4
Bài Lab : Lab 4
Video training
Windows Presentation Foundation
Thời gian: 4 buổi
Bài giảng: Chapter 5: Windows Presentation Foundation
Nội dung :
5.1 WPF Introduction
5.2 XAML
5.3 Programming WPF Applications
5.4 Building Your First WPF Application
5.5 Exploring the Layout Controls
5.6 Working with XAML Controls
5.7 Working with Graphics, Media and Animations
5.8 New in WPF 3.5
5.9 Future Directions of WPFSummary
Bài tập : Exercise 5
Bài Lab : Lab 5
Video training
Windows Communication Foundation
Thời gian: 2 buổi
Bài giảng: Chapter 6: Windows Communication Foundation
Nội dung :
6.1 Introduction
6.2 Programming Model
6.3 New in .NET framework 3.5
6.4 WCF Web Programming Model
Summary
Bài tập : Exercise 6
Bài Lab : Lab 6
Video training
ASP.NET AJAX
Thời gian: 2 buổi
Bài giảng: Chapter 7: ASP.NET AJAX
Nội dung :
7.1 Introducing ASP.NET AJAX
7.2 Microsoft AJAX Library
7.3 Working with Web Services
7.4 ASP.NET AJAX Control Toolkit
7.5 Building Web Application Summary
Summary
Bài tập : Exercise 7
Bài Lab : Lab 7
Video training
CHƯƠNG 1
.NET overview
Chương này cung cấp cho sinh viên một cái nhìn tổng quan về kiến trúc .NET flatform và .Net framework. Sau đó sẽ mô tả từng thành phần quan trọng trong kiến trúc .Net framework nhằm giúp cho sinh viên có thể hình dung trong đầu các bộ phận cấu thành .Net framework để có thể dễ dàng hơn trong lập trình với công nghệ Microsoft .Net.
Kế hoạch giảng
Các nội dung cần truyền tải cho sinh viên:
Introduction
Introduction
Product groups
Overview of the .Net flatform
.NET flatform architecture
.NET flatform main components
Overview of the .NET framework
.NET framework design goals
Architecture
Components
Common language runtime
Framework base classes
Web Services, Web Forms, Windows Forms
Language
Đây là chương mở đầu, giới thiệu một cách tổng quát về .Net framework. Với giáo trình .Net framework 3.5, không thể tập trung vào chi tiết từng thành phần cấu trúc của .Net framework mà chỉ có thể cung cấp cho sinh viên những khái niệm cơ bản nhất để có thể dễ dàng hình dung khi học các nội dung cơ bản trong phiên bản .Net framework 3.5.
Với mục đích gieo vào đầu sinh viên những hình dung cơ bản nhất về .Net framework, giáo viên nên dẫn dắt sinh viên bắt đầu từ việc giới thiệu sự thành công của công ty Microsoft với công nghệ .Net để gợi trí tò mò, kích thích sinh viên tìm hiểu công nghệ .Net. Giáo viên giới thiệu tổng quan về .Net flatform với các nhóm sản phẩm chủ yếu, vai trò và chức năng của từng nhóm sản phẩm. Giáo viên nên demo trực tiếp việc lập trình với .Net flatform cho sinh viên thấy hứng thú hơn và các sinh viên chưa một lần tiếp xúc với công nghệ .Net dễ dàng có được những ý niệm về lập trình .net.
Sau khi giới thiệu .Net flatform giáo viên tập trung vào .Net framework là nội dung quan trọng nhất.
Đối với phần Common language runtime (CLR) cần nhấn mạnh đây là thành phần quan trọng nhất trong .Net framework. Để sinh viên có thể dễ dàng hình dung hơn, có thể trình bày về sự so sánh CLR với các thành phần tương ứng với nó trong các ngôn ngữ khác, ví dụ như Java Virtual Machine (JVM) trong Java...
Đối với các thành phần khác, giáo viên nên chỉ rõ cho sinh viên xem trong Visual Studio nhằm giúp cho sinh viên dễ hiểu và hứng thú hơn.
Phần Framework base classes, nên chỉ ra cho sinh viên thấy một số namespace cơ bản như System, System.Collections, System.IO... Có thể chỉ cho sinh viên thấy nội dung các namespace này trong Visual Studio.
Phần Data and XML, có thể có nhiều sinh viên chưa được làm quen với các khái niệm về XML, giáo viên có thể hướng dẫn qua khái niệm XML, các thành phần, các xử lý trong XML từ đó hướng dẫn sinh viên các namespace xử lý XML. Tương tự đối với phần Data. Giáo viên giải thích cho sinh viên khái niệm ADO.Net, có thể lấy ví dụ cụ thể để minh họa cho sinh viên.
Đối với phần Web Services, Web Forms và Window Forms, giáo viên giải thích cho sinh viên các khái niệm Web Services, Web Forms, Window Forms, phân tích một số đặc điểm lập trình của từng loại và hướng dẫn sinh viên sử dụng các hỗ trợ của .Net framework. Giáo viên hướng dẫn sinh viên thấy rõ Framework base classes và Web Services, Web Forms, Windows Forms trong một số ví dụ đơn giản lập trình với Web Services, Web Forms và Window Forms.
Đối với các sinh viên tham gia khóa học, có thể có những sinh viên đã nắm được các khái niệm cơ bản về .Net framework nhưng cũng có thể có những sinh viên chưa hề có ý niệm gì về .Net framework (có thể là những sinh viên chỉ quen lập trình với Java hay thậm chí là Pascal, C, C++...). Giáo viên có thể thực hiện bài giảng bằng cách đặt câu hỏi cho những sinh viên đã biết trả lời, làm cho những sinh viên này hứng thú hơn. Việc nghe những câu trả lời từ những bạn đã sử dụng .Net có thể khiến các sinh viên còn lại dễ dàng tiếp thu bài giảng hơn.
Thực hành:
Bài tập về nhà:
Exercise 1.
CHƯƠNG 2
Common language runtime
Chương này trình bày thành phần trọng tâm, được ví như trái tim của .Net framework là Common language runtime (CLR). Sinh viên sẽ có được một hình dung cụ thể về cách tổ chức, thực thi code trong .Net. Không chỉ đơn thuần biết đến những dòng code trên những ngôn ngữ như C#, VB, VC++ nữa mà sinh viên sẽ nhìn thấy những gì diễn ra sau khi bấm nút run để dịch và chạy thử chương trình.
Kế hoạch giảng
Trong chương trước sinh viên đã được tìm hiểu một cách tổng quan nhất về .Net framework. Đến chương này, sinh viên sẽ được tìm hiểu thành phần quan trọng nhất, được ví như trái tim của .Net framework là Common language runtime (CLR).
Nội dung chính cần truyền tải đến sinh viên:
Khái niệm CLR, vai trò và chức năng của nó. Nhấn mạnh tầm quan trọng của CLR trong .Net framework.
Sự thực thi của CLR:
Các đoạn mã viết bằng C#, VC++ hay VB sẽ được các trình biên dịch dịch ra dạng có thể thực thi được trong windows là exe hay dll tuân theo định dạng PE.
Trình bày cấu trúc định dạng file PE nhấn mạnh 2 thành phần là metadata và IL (code).
Các khái niệm cơ bản về metadata và IL.
Sau khi tìm hiểu về metadata và IL, đưa ra cho sinh viên những khái niệm cơ bản về Common Type System và Common Language Specification.
Sơ đồ quá trình thực thi của CLR
Mô tả các thành phần chính trong sơ đồ thực thi:
Class Loader
JIT Compiler
CLR trong phiên bản .Net framework 3.5
Đây là phần tương đối khó hiểu nên khi giảng bài, giáo viên nên kết hợp với demo ví dụ trên Visual Studio. Có thể lấy ví dụ trực tiếp trên một ngôn ngữ và yêu cầu sinh viên tự tìm hiểu trên các ngôn ngữ khác (Có thể làm bài tập về nhà).
Giáo viên nên giảng rõ cho sinh viên về phần common type system vì đây cũng là một phần tương đối quan trọng đối với sinh viên khi lập trình. Các nội dung cần nhắc đến trong phần Common Type System:
Value types
Reference types
Boxing and unboxing
Classes, properties, indexers
Interfaces
Delegates
Thực hành:
Lab 2.
Giáo viên hướng dẫn sinh viên sử dụng Visual Studio, Microsoft Window SDK để làm bài tập thực hành tìm hiểu quá trình thực thi trong .Net framework.
Bài tập về nhà:
Exercise 2.
CHƯƠNG 3
.Net framework 3.5
Chương này trình bày các đặc điểm cơ bản của các phiên bản .Net framework trước đây (từ 1.0 đến 3.0), sau đó đưa ra sự so sánh các phiên bản này với nhau và với phiên bản 3.5. Cuối chương sẽ mô tả tổng quát các thành phần trong phiên bản .Net framework 3.5.
Kế hoạch giảng
Bài giảng sẽ lần lượt đi qua các phiên bản của .Net framework từ 1.0 cho đến 3.5. Giáo viên nên tách bài giảng thành 2 phần. Phần đầu là các phiên bản trước của .Net framework (từ 1.0 đến 3.0) và phần sau là phiên bản 3.5.
Các phiên bản trước của .Net framework:
Giáo viên mô tả ngắn gọn từng phiên bản. Chú ý so sánh các cải tiến của phiên bản sau so với phiên bản trước.
Đối với phiên bản 3.0: Nhấn mạnh đến các nội dung:
- Windows Presentation Foundation (WPF)
- Windows Communication Foundation (WCF)
- Windows Workflow Foundation (WF)
- Windows CardSpace
Đối với các nội dung này, giáo viên cần chỉ ra những ưu điểm của công nghệ mới so với các công nghệ hiện có. Cần tạo ra được sự thu hút ban đầu đối với sinh viên.
Phiên bản 3.5:
Giáo viên cho sinh viên xem hình vẽ mô tả các bước cải tiến của phiên bản 3.5 so với các phiên bản trước. Có thể đặt câu hỏi cho sinh viên xem đâu là các điểm nổi bật nhất.
Đặc biệt chú trọng vào các nội dung:
- LINQ
- ASP.NET AJAX
Trong nội dung LINQ nên mô tả lại một số thao tác thông thường khi làm việc với CSDL, XML... rồi nói đến những ưu điểm của LINQ để sinh viên có thể thấy rõ những thuận tiện khi sử dụng công nghệ mới này.
Đối với phần ASP.NET AJAX có thể có những sinh viên chưa được làm quen với web hoặc có những sinh viên đã làm việc với môi trường web nhưng lại chưa được tiếp xúc với công nghệ AJAX, giáo viên nên giới thiệu sơ qua về môi trường web cũng như công nghệ AJAX, những điểm hay của công nghệ này. Sau đó giới thiệu ASP.NET AJAX mà .Net framework 3.5 hỗ trợ. Đặc biệt nhấn mạnh đến những điểm hay của công nghệ này để sinh viên có thể nắm được là tại sao nên sử dụng ASP.NET AJAX mà không phải là một công nghệ khác.
Đối với các điểm mới khác có thể ra thành bài tập về nhà để sinh viên tự học hỏi, tìm tòi.
Thực hành:
Bài tập về nhà:
CHƯƠNG 4
Language INtegrated Query
Chương này trình bày một công nghệ mới trong .Net framework 3.5 Language INtegrated Query (LINQ). LINQ cho phép tạo ra các phép toán truy vấn giống như các câu lệnh SQL trong các lớp của các ngôn ngữ .NET như VB hay C#. LINQ hỗ trợ truy vấn trong các in-memory collections như arrays, list, XML, DataSet và cơ sở dữ liệu quan hệ. Tuy nhiên LINQ có thể mở rộng truy vấn từ rất nhiều nguồn dữ liệu khác nhau. Chương này sẽ giới thiệu cho sinh viên một cái nhìn tổng quát về LINQ, tại sao nên sử dụng LINQ, hướng dẫn sinh viên sử dụng LINQ truy vấn với Object, Database và XML. Sau khi hướng dẫn lý thuyết cơ bản sẽ đặt ra cho sinh viên một số vấn đề nâng cao để giúp sinh viên hiểu sâu hơn về nội dung đã học.
Kế hoạch giảng
Đây là chương chính trong giáo trình với nội dung khá dài, giáo viên nên tách thành 4 phần. Mỗi phần sẽ giảng trong thời gian 3 tiết.
Phần 1. Giới thiệu LINQ (part 1 đến part 3 trong giáo trình)
Các nội dung chính cần truyền tải đến sinh viên:
Giới thiệu về LINQ
LINQ là gì?
Tổng quan về LINQ: Nhấn mạnh đến 2 khía cạnh bao gồm:
LINQ như một tập công cụ (toolset) để truy vấn đến các nguồn cơ sở dữ liệu. LINQ cung cấp LINQ to Object, LINQ to SQL và LINQ to XML.
LINQ như sự mở rộng ngôn ngữ: Cần nhấn mạnh, LINQ không phải là một ngôn ngữ mới mà được hiểu như là sự mở rộng của các ngôn ngữ đã có. Nó được tích hợp vào trong các ngôn ngữ như C# hay VB.
Các ưu điểm của LINQ: Cần nhấn mạnh việc nó xóa tan khoảng cách giữa Object, cơ sở dữ liệu quan hệ hay XML
Tại sao chúng ta nên sử dụng LINQ?
Các mở rộng trên các ngôn ngữ C# và VB: Trong phần này giáo viên nên luôn đưa ra sự so sánh giữa hai ngôn ngữ C# và VB để sinh viên có thể nhìn thấy rõ việc mở rộng với LINQ trên hai ngôn ngữ thông dụng này có gì giống và khác nhau. Giáo viên cần làm thế nào cho sinh viên nắm được cần biết những gì khi học LINQ với một ngôn ngữ nào đó. Khi ấy sinh viên có thể dễ dàng học với bất kể ngôn ngữ nào. Ở đây các nội dung chính cần nắm được khi học cách sử dụng LINQ với một ngôn ngữ là:
Implicitly typed local variables
Object initializers
Lambda expressions
Extension methods
Anonymous types
LINQ building blocks: Các nội dung chính cần truyền tải cho sinh viên trong phần này bao gồm:
Standard query operator
Query expression
Expression tree
LINQ DLLs and namespaces
Trong phần này giáo viên cần hướng dẫn cho sinh viên các phép toán truy vấn thông dụng, ý nghĩa của nó. Nếu sinh viên đã học qua SQL thì phần này có thể lướt nhanh hơn, trong trường hợp sinh viên chưa nắm rõ SQL thì giáo viên cần hướng dẫn kỹ để sinh viên có thể làm việc được với các phép toán này. Với nguyên liệu là các phép toán truy vấn, giáo viên hướng dẫn sinh viên cách thức xây dựng một expression.
Trong phần LINQ dlls và các namespaces, giáo viên hướng dẫn cho sinh viên khi muốn tạo một ứng dụng có sử dụng LINQ trong Visual Studio thì cần ánh xạ đến các dll hay namespace nào.
Trong phần giới thiệu này, để sinh viên hình thành ý niệm về LINQ, giáo viên nên demo cho sinh viên một số ví dụ nhỏ về sử dụng LINQ (có thể demo trên 3 ví dụ mở đầu về LINQ to object, LINQ to SQL và LINQ to XML) trên Visual Studio hoặc bằng video.
Phần 2. LINQ to Object (part 4 trong giáo trình)
Bắt đầu từ phần 2, nội dung giảng sẽ mang tính thực hành nhiều hơn. Những sinh viên đã sử dụng qua các ngôn ngữ .Net để phát triển ứng dụng có thể nắm bắt nội dung bài giảng dễ hơn các sinh viên khác. Trong quá trình giảng bài giáo viên có thể đưa ra vấn đề, hỏi những sinh viên đã biết .Net các giải pháp đã được thực thi trước đó, chỉ ra các hạn chế của nó để từ đó đưa ra giải pháp mới với LINQ. Ví dụ, có thể đặt câu hỏi: với các công nghệ trước đây, có thể truy vấn đến các object được không? Nếu có thì làm thế nào?
Các nội dung chính cần truyền tải đến sinh viên:
Có thể dùng LINQ để truy vấn những gì? Cần nhấn mạnh cho sinh viên là ta không thể dùng LINQ để truy vấn được mọi thứ. ( Điều kiện để một object có thể được truy vấn bởi LINQ là: Nó thuộc kiểu collections và implements IEnumerable interface.)
Một số collection có thể được truy vấn nhờ LINQ:
Array
Generic lists
Generic dictionaries
String
Sử dụng LINQ với ASP.NET và Windows Forms: Nhấn mạnh đến phần data bindings cho các ứng dụng Web và các ứng dụng windows. Có thể có những sinh viên chưa quen với việc tạo ứng dụng web và windows với .NET, giáo viên có thể nhắc lại việc tạo các ứng dụng web và windows để sinh viên có thể hiểu thêm được phần này. Đồng thời giáo viên nên demo cho sinh viên trên Visual Studio hoặc bằng video.
Một số phép toán dùng cho truy vấn:
Where
Select, select many
Distinct
aggregate operators
Sorting
Nested queries
Grouping
Join
Một số mở rộng:
Sử dụng LINQ với nongeneric collections
Grouping by multiple criteria
Dynamic queries
Với thời lượng của tiết học có hạn nên giáo viên có thể chỉ cần đặt ra vấn đề, gợi ý hướng giải quyết và cho sinh viên tự tìm hiểu. Nếu còn thời gian nên cho sinh viên thảo luận.
Đây là phần mang tính thực hành nhiều nên xen kẽ bài giảng giáo viên nên cho sinh viên xem nhiều demo để tăng tính trực quan.
Phần 3. LINQ to SQL (part 5 trong giáo trình)
Các nội dung chính cần truyền tải đến sinh viên:
Tại sao nên sử dụng LINQ to SQL thay vì ADO.net: Giáo viên cần nhấn mạnh các lợi thế của LINQ so với ADO.net ( như là giảm bớt xử lý cho hệ thống, không cần phải viết lại plumbing code...) để sinh viên thấy được tại sao nên sử dụng LINQ to SQL. Giáo viên nên lấy một ví dụ cụ thể, phân tích cách dùng ADO.net để thấy yếu điểm của nó để sinh viên cảm thấy hứng thú đối với công nghệ mới sắp học. Có thể có một số sinh viên đã nắm được ADO.net, giáo viên của thể hỏi ý kiến của họ để tăng tính tương tác cho bài giảng.
Jump into LINQ to SQL: Đây là phần hướng dẫn cách sử dụng LINQ to SQL qua một ví dụ cụ thể. Giáo viên hướng dẫn sinh viên từ lần lượt qua các vấn đề:
Đặt vấn đề: Giáo viên nêu bài toán – Cần liệt kê danh sách các quyển sách (Book) có giá <$30 và group chúng bằng tiêu đề (subject).
Tạo Cơ sở dữ liệu: Ở đây chỉ có một bảng duy nhất là Book
Tạo lập ánh xạ cơ sở dữ liệu – object (Setting up the object mapping)
Tạo lập DataContext (chú ý đến phần chuỗi kết nối, có thể có một số sinh viên chưa làm quen với cơ sở dữ liệu, giáo viên có thể hướng dẫn kĩ hơn).
Đọc dữ liệu từ Cơ sở dữ liệu với LINQ to SQL
Phần này giáo viên có thể demo cho sinh viên qua Visual Studio hay video để sinh viên thấy rõ hơn.
Refining our queries: Hướng dẫn sinh viên biến đổi các câu truy vấn bằng cách sử dụng thêm một số tiến trình xử lý bên phía server. Các nội dung có thể giới thiệu gồm có:
Filtering
Sorting and grouping
Aggregation
Joining
When is my data loaded and why does it matter?
Lazy loading
Loading details immediately
Đây là phần đặt vấn đề sâu hơn với LINQ to SQL để sinh viên suy nghĩ và tìm tòi. Do thời gian trên lớp có hạn, giáo viên có thể đặt ra vấn đề cho sinh viên suy nghĩ và thảo luận vào buổi sau. Vì đây là phần đòi hỏi sinh viên phải được thực hành thực tế rồi mới có thể nắm được rõ ràng nên giáo viên nên sử dụng làm câu hỏi về nhà.
Updating data:
Updating values and committing them to the database
Adding and removing items from a table
Tương tự như phần đọc dữ liệu từ cơ sở dữ liệu, phần này cũng hướng dẫn một thao tác xử lý với Cơ sở dữ liệu nên giáo viên có thể tiến hành demo bằng visual studio hay video để tăng tính hiệu quả của bài giảng.
Mapping objects to relational data:
Phần này hướng dẫn sinh viên một số cách để ánh xạ object và dữ liệu quan hệ. Giáo viên có thể đưa ra cho sinh viên một số lựa chọn:
Attributes declared inline with your classes
External XML files
The command-line SqlMetal tool
The graphical LINQ to SQL Designer tool
Các lựa chọn này cũng có thể đưa ra làm bài tập về nhà cho sinh viên tìm hiểu. Nếu còn nhiều thời gian, giáo viên nên hướng dẫn sinh viên một cách cụ thể ít nhất một lựa chọn.
Advanced database capabilities:
Phần này sẽ hướng dẫn sinh viên một số kĩ năng nâng cao với LINQ to SQL và Cơ sở dữ liệu.
Các nội dung cần truyền đạt bao gồm:
SQL pass-through: Returning objects from SQL queries
Dynamic SQL pass-through
Dynamic SQL pass-through with parameters
Working with stored procedures
Using a stored procedure to return results
Returning a scalar value
Một số nội dung mở rộng khác:
Kết thúc bài giảng, giáo viên nên gợi ý cho sinh viên một số hướng mở rộng, cách sử dụng nâng cao với LINQ to SQL để sinh viên có thể tự tìm tòi nghiên cứu, tăng thêm sự hứng thú đối với việc học và với các công nghệ mới.
Một số hướng có thể gợi ý như:
Handling concurrency exceptions
Resolving conflicts using transactions
Working with User-defined functions
...
Phần 4.
LINQ to XML (part 6 trong giáo trình)
Extending LINQ (part 7 trong giáo trình)
A look to future (part 8 trong giáo trình)
Các nội dung chính cần truyền tải đến sinh viên:
LINQ to XML
Why do we need another XML programming API?
Trong phần này, giáo viên giới thiệu về XML, các API lập trình hiện có với XML.
Một số sinh viên có thể chưa được tiếp xúc nhiều với XML. Giáo viên nên giải thích cặn kẽ cách tổ chức của một file định dạng XML. Định dạng XML có thể đem lại những lợi ích gì? Tại sao XML lại được sử dụng rộng rãi? Tất cả những giải thích này sẽ giúp sinh viên hiểu rõ hơn tầm quan trọng của LINQ to XML.
Có thể lựa chọn một ví dụ cụ thể để giúp sinh viên hiểu tại sao nên sử dụng LINQ to XML. Ví dụ, có thể lựa chọn so sánh cách xử lý XML với DOM và LINQ to XML.
LINQ to XML class hierarchy
Giới thiệu với sinh viên các lớp chính được định nghĩa trong LINQ to XML API. Giáo viên có thể nhấn mạnh vào một số lớp chính:
Xobject
Xnode
Xcontainer
Xelement
Xattribute
Working with XML using LINQ
Sau khi hướng dẫn sinh viên tìm hiểu một số lớp trong LINQ to XML API, giáo viên hướng dẫn sinh viên sử dụng XML to LINQ trong một số các thao tác cơ bản:
Loading XML
Parsing XML
Creating XML
Creating XML documents
Adding content to XML
Updating XML content
Working with attributes
Saving XML
Đây là một số thao tác cơ bản thường gặp khi xây dựng các ứng dụng xử lý với XML. Để bài giảng thêm sinh động, giáo viên có thể lồng ghép các thao tác này trong một ví dụ cụ thể, có thể demo bằng visual studio hoặc video.
Query XML with LINQ to XML
Như đã nhắc đến ở trên, LINQ dùng để truy vấn các nguồn dữ liệu và LINQ to XML chính là để thực hiện mục đích truy vấn đến các dữ liệu ở định dạng XML. Trong phần này, cần truyền đạt đến sinh viên 2 nội dung chính là:
LINQ to XML axis methods: Giới thiệu cho sinh viên một số phương thức cung cấp cho chúng ta khả năng tìm kiếm elements, attributes, và nodes mà chúng ta muốn làm việc trong XML. Các phương thức cơ bản gồm có:
Element
Attribute
E
Các file đính kèm theo tài liệu này:
- teaching_guide_5462.doc