intTypePromotion=1
zunia.vn Tuyển sinh 2024 dành cho Gen-Z zunia.vn zunia.vn
ADSENSE

GIÁO TRÌNH .NET FRAMEWORK 3.5

Chia sẻ: Kolor Vn | Ngày: | Loại File: DOC | Số trang:62

459
lượt xem
158
download
 
  Download Vui lòng tải xuống để xem tài liệu đầy đủ

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...

Chủ đề:
Lưu

Nội dung Text: GIÁO TRÌNH .NET FRAMEWORK 3.5

  1. Trường Đại Học Bách Khoa Hà Nội .Net framework 3.5 TÀI LIỆU HƯỚNG DẪN GIẢNG DẠY DÀNH CHO GIẢNG VIÊN .Net Framework 3.5 Page 1
  2. Trường Đại Học Bách Khoa Hà Nội .Net framework 3.5    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: 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. 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. .Net Framework 3.5 Page 2
  3. Trường Đại Học Bách Khoa Hà Nội .Net framework 3.5    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. .Net Framework 3.5 Page 3
  4. Trường Đại Học Bách Khoa Hà Nội .Net framework 3.5    Đề 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 Page 4
  5. Trường Đại Học Bách Khoa Hà Nội .Net framework 3.5 .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 .Net Framework 3.5 Page 5
  6. Trường Đại Học Bách Khoa Hà Nội .Net framework 3.5 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 .Net Framework 3.5 Page 6
  7. Trường Đại Học Bách Khoa Hà Nội .Net framework 3.5 C HƯƠ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 .Net Framework 3.5 Page 7
  8. Trường Đại Học Bách Khoa Hà Nội .Net framework 3.5 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. .Net Framework 3.5 Page 8
  9. Trường Đại Học Bách Khoa Hà Nội .Net framework 3.5 C HƯƠ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à). .Net Framework 3.5 Page 9
  10. Trường Đại Học Bách Khoa Hà Nội .Net framework 3.5 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. .Net Framework 3.5 Page 10
  11. Trường Đại Học Bách Khoa Hà Nội .Net framework 3.5 C HƯƠ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 .Net Framework 3.5 Page 11
  12. Trường Đại Học Bách Khoa Hà Nội .Net framework 3.5 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à: .Net Framework 3.5 Page 12
  13. Trường Đại Học Bách Khoa Hà Nội .Net framework 3.5 C HƯƠ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 .Net Framework 3.5 Page 13
  14. Trường Đại Học Bách Khoa Hà Nội .Net framework 3.5  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 .Net Framework 3.5 Page 14
  15. Trường Đại Học Bách Khoa Hà Nội .Net framework 3.5 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á
  16. Trường Đại Học Bách Khoa Hà Nội .Net framework 3.5 - Đọ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 .Net Framework 3.5 Page 16
  17. Trường Đại Học Bách Khoa Hà Nội .Net framework 3.5 - 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 .Net Framework 3.5 Page 17
  18. Trường Đại Học Bách Khoa Hà Nội .Net framework 3.5  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  Elements  Descendants  ElementsAfterSelf,  NodesAfterSelf  ElementsBeforeSelf  NodesBeforeSelf  Standard query operators: Gi ới thi ệu cho sinh viên m ột s ố toán t ử truy v ấn c ơ bản để thực hiện việc truy vấn. Một số toán tử quan trọng cần đề c ập đ ến bao gồm:  Projecting with Select  Filtering with Where  Ordering and grouping  Querying LINQ to XML objects with XPath: Gi ới thi ệu v ới sinh viên cách s ử dụng XPath để truy vấn các đối tượng XML. XPath là m ột khái ni ệm mà có th ể rất nhiều sinh viên chưa được tiếp xúc. Giáo viên nên gi ới thi ệu qua khái ni ệm XPath là gì, dùng để làm gì và có lợi ích gì. Từ đó giáo viên l ấy ví d ụ h ướng dẫn cách sử dụng XPath để truy vấn các đối t ượng XML cho sinh viên. XPath là một vấn đề khá hay, giáo viên có thể sử dụng nh ư bài t ập v ề nhà đ ể sinh viên tìm hiểu, nghiên cứu. Extending LINQ Sau khi tìm hiểu hết các nội dung cơ bản của LINQ, phần này s ẽ đ ưa ra m ột s ố v ấn đề mở rộng. Giáo viên có thể đặt ra một số vấn đề: - Suggested use cases for LINQ’s extensibility Một số trường hợp sử dụng mở rộng của LINQ. Ở đây có thể kể một số trường hợp:  Querying a custom data source  Querying web services  Allowing the developers who use your product to take advantage of LINQ .Net Framework 3.5 Page 18
  19. Trường Đại Học Bách Khoa Hà Nội .Net framework 3.5 Giáo viên có thể phân tích tính khả thi và g ợi ý ý t ưởng th ực hi ện cho sinh viên đ ể sinh viên có thể tự tìm tòi, nghiên cứu. Có th ể l ấy m ột ví d ụ c ụ th ể đ ể trình bày cho sinh viên: Example - Querying a web service: LINQ to Amazon. - Creating custom query operators A look to future Đây là phần trình bày một số hướng phát triển trong t ương lai c ủa LINQ nh ằm trình bày cho sinh viên tiềm năng phát triển của LINQ đ ồng th ời có th ể giúp g ợi ý h ướng nghiên cứu tiếp theo cho những sinh viên có ni ềm đam mê. Một số vấn đề có thể trình bày trong phần này gồm có: - LINQ to XSD, the typed LINQ to XML - PLINQ: LINQ meets parallel computing - LINQ to Entities, a LINQ interface for the ADO.NET Entity Framework Thực hành: Lab 4. Bài tập về nhà: Exercise 4. .Net Framework 3.5 Page 19
  20. Trường Đại Học Bách Khoa Hà Nội .Net framework 3.5 C HƯƠNG 5 Windows Presentation Foundation Chương này trình bày một công nghệ mới đã xuất hiện từ .Net framework 3.0 nhưng vẫn chiếm một vị trí quan trọng trong .Net framework 3.5. Windows Presentation Foundation (WPF) đưa ra một hướng tiếp cận thiết kế, xây dựng giao diện tương tác người dùng mới sử dụng XAML. Đây là một công nghệ rất mạnh, có khả năng tương tác tốt với media, animation và đồ hoạ 2D/3D. Chương này sẽ lần l ượt gi ới thi ệu cho sinh viên tổng quan về WPF, XAML, giới thi ệu cách lập trình v ới WPF, các control, layout, đồ họa, animation, 2D/3D... 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. WPF Introduction (part 1 trong giáo trình) XAML (part 2 trong giáo trình) WPF Introduction: Đây là phần đầu tiên, mang tính chất giới thiệu sơ qua v ới sinh viên v ề WPF. Trong phần này mục tiêu đặt ra cho giáo viên là ph ải giúp sinh viên n ắm đ ược WPF là cái gì? Dùng WPF để làm gì? Tại sao nên sử dụng WPF ch ứ không ph ải là m ột công nghệ khác? Đặc trưng của ứng dụng WPF khác với các ứng d ụng tr ước đó là gì? Các nội dung chính cần truyền tải đến sinh viên: - Presentation Layer Architecture: From Yesterday to Tomorrow Phần này trình bày về lịch sử kiến trúc tầng trình diễn của các ứng d ụng t ừ tr ước đ ến nay và các xu hướng tiếp theo. Điểm mấu ch ốt giáo viên c ần trình bày v ới sinh viên là: Với kiến trúc Client – Server phổ biến hiện nay, WPF là m ột gi ải pháp m ới, h ấp dẫn, nên được xem xét trong việc xây dựng giao di ện t ương tác ng ười dùng trên Client. - Windows Presentation Foundation (WPF)  WPF Features and Machinery  WPF – Architecture  Tools of the Trade .Net Framework 3.5 Page 20
ADSENSE

CÓ THỂ BẠN MUỐN DOWNLOAD

 

Đồng bộ tài khoản
2=>2