ĐỒ ÁN TÌM HIỂU NGÔN NGỮ C# VIẾT MỘT ỨNG DỤNG MINH HOẠ

20 6 0
ĐỒ ÁN TÌM HIỂU NGÔN NGỮ C# VIẾT MỘT ỨNG DỤNG MINH HOẠ

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

Thông tin tài liệu

TRƯỜNG ĐẠI HỌC KHOA HỌC TỰ NHIÊN KHOA CÔNG NGHỆ THÔNG TIN BỘ MÔN CÔNG NGHỆ PHẦN MỀM TÌM HIỂU NGÔN NGỮ C# VIẾT MỘT ỨNG DỤNG MINH HOẠ

TR NG Đ I H C KHOA H C T NHIÊN KHOA CÔNG NGH THÔNG TIN B MÔN CÔNG NGH PH N M M PH M VĔN VI T - TR NG L P Vƾ TÌM HI U NGƠN NG VI T M T C# VÀ NG D NG MINH H A Đ ÁN T T NGI P GIÁO VIÊN H NG D N NGUY N T N TR N MINH KHANG TP HCM 2002 TR NG Đ I H C KHOA H C T NHIÊN KHOA CÔNG NGH THÔNG TIN B MÔN CÔNG NGH PH N M M PH M VĔN VI T - TR TÌM HI U NGƠN NG NG L P Vƾ C# VÀ VI T M T GIÁO VIÊN H NG D NG MINH H A NG D N NGUY N T N TR N MINH KHANG TP HCM 2002 Lời cám ơn Đ có th hoàn t t đ c đ án này, tr c tiên ph i k đ n công s c c a th y Nguy n T n Tr n Minh Khang Chúng em kính l i c m n đ n th y t n tình h ng d n giúp đỡ th i gian th c hi n đ án Chúng em xin t lòng bi t n sâu s c đ i v i gia đình đ ng viên, t o u ki n đ th c hi n t t đ án Xin cám n cha, mẹ, anh, ch , em! Chúng em xin chân thành c m n đ n th y cô khoa Công ngh thông tin tr ng Đ i h c Khoa h c T nhiên Thành ph H Chí Minh truy n đ t nh ng ki n th c, kinh nghi m q báu cho chúng em q trình h c t p t i tr ng Chúng em xin chân thành c m n đ n b n bè giúp đỡ tài li u, trao đổi h c thu t m i có th th c hi n đ án Xin g i l i c m n đ n b n H Ng c Huy, Tr n Th Anh, Bùi Thanh Tu n Thành ph H Chí Minh, ngày 03 tháng nĕm 2002 Sinh viên Ph m Vĕn Vi t Tr ng L p Vƿ Mục lục L i cám n .3 M c l c Tóm t t Ph n Tìm hi u ngôn ng C# .1 Ch ng C# Net Framework 1.1 N n t ng c a NET 1.2 NET Framework .3 1.3 Biên d ch ngôn ng trung gian (MSIL) .4 1.4 Ngôn ng C# Ch ng Kh i đ u 2.1 L p, đ i t ng ki u .6 2.2 Phát tri n “Hello World” Ch ng Nh ng c s c a ngôn ng C# 12 3.1 Các ki u 12 3.2 Bi n 14 3.3 Bi u th c 16 3.4 Kho ng tr ng 16 3.5 Câu l nh 16 3.6 Toán t .19 3.7 T o vùng tên 21 3.8 Chỉ th ti n x lý 22 Ch ng L p đ i t ng .24 4.1 Đ nh nghƿa l p 24 4.2 T o đ i t ng 25 4.3 S d ng thành viên tƿnh .27 4.4 H y đ i t ng 29 4.5 Truy n tham s 30 4.6 N p ch ng ph ng th c hàm d ng .32 4.7 Đóng gói d li u v i property 33 Ch ng Thừa k Đa hình 35 5.1 Đặc bi t hoá tổng quát hoá 35 5.2 S k thừa .35 5.3 Đa hình .37 5.4 L p trừu t ng 38 5.5 L p g c c a t t c l p: Object 39 5.6 Ki u Boxing Unboxing .40 5.7 L p l ng 42 Ch ng N p ch ng toán t .44 6.1 Cách dùng từ khoá operator .44 6.2 Cách hổ tr ngôn ng Net khác 44 6.3 S h u ích c a toán t .44 6.4 Các toán t logic hai 45 6.5 Toán t so sánh 45 6.6 Toán t chuy n đổi ki u (ép ki u) 45 Ch ng C u trúc 48 7.1 Đ nh nghƿa c u trúc 48 7.2 Cách t o c u trúc 49 Ch ng Giao di n 50 8.1 Cài đặt m t giao di n .50 8.2 Truy xu t ph ng th c c a giao di n 52 8.3 N p ch ng ph n cài đặt giao di n 54 8.4 Th c hi n giao di n m t cách t ng minh 55 Ch ng Array, Indexer, and Collection 58 9.1 M ng (Array) 58 9.2 Câu l nh foreach 59 9.3 Indexers 62 9.4 Các giao di n túi ch a 65 9.5 Array Lists 65 9.6 Hàng đ i 65 9.7 Stacks .66 9.8 Dictionary .66 Ch ng 10 Chu i .67 10.1 T o chu i m i 67 10.2 Ph ng th c ToString() 67 10.3 Thao tác chu i 68 10.4 Thao tác chu i đ ng .70 Ch ng 11 Qu n lý l i .72 11.1 Ném b t bi t l 73 11.2 Đ i t ng Exception 80 11.3 Các bi t l t t o 82 11.4 Ném bi t l l n n a 83 Ch ng 12 Delegate Event 87 12.1 Delegate ( y thác, y quy n) 87 12.2 Event (S ki n) 101 Ch ng 13 L p trình v i C# 109 13.1 ng d ng Windows v i Windows Form 109 Ch ng 14 Truy c p d li u v i ADO.NET 144 14.1 C s d li u ngôn ng truy v n SQL 144 14.2 M t s lo i k t n i hi n s d ng 144 14.3 Ki n trúc ADO.NET 145 14.4 Mơ hình đ i t ng ADO.NET .146 14.5 Trình cung c p d li u (.NET Data Providers) 148 14.6 Kh i s v i ADO.NET 148 14.7 S d ng trình cung c p d li u đ c qu n lý 151 14.8 Làm vi c v i u n k t bu c d li u .152 14.9 Thay đổi b n ghi c a c s d li u 161 Ch ng 15 ng d ng Web v i Web Forms 173 1.1 Tìm hi u v Web Forms 173 15.1 Các s ki n c a Web Forms 174 15.2 Hi n th chu i lên trang 175 15.3 Đi u n xác nh n h p 178 15.4 M t s ví d m u minh h a 179 Ch ng 16 Các d ch v Web 192 Ch ng 17 Assemblies Versioning 196 17.1 T p tin PE 196 17.2 Metadata .196 17.3 Ranh gi i an ninh 196 17.4 S hi u phiên b n (Versioning) 196 17.5 Manifest 196 17.6 Đa Module Assembly 197 17.7 Assembly n i b (private assembly) 198 17.8 Assembly chia sẻ (shared assembly) 198 Ch ng 18 Attributes Reflection 200 18.1 Attributes 200 18.2 Attribute mặc đ nh (intrinsic attributes) .200 18.3 Attribute l p trình viên t o 201 18.4 Reflection .203 Ch ng 19 Marshaling Remoting .204 19.1 Mi n ng D ng (Application Domains) .204 19.2 Context 206 19.3 Remoting 208 Ch ng 20 Thread S Đ ng B 215 20.1 Thread 215 20.2 Đ ng b hóa (Synchronization) 216 20.3 Race condition DeadLock .221 Ch ng 21 Lu ng d li u 223 21.1 T p tin th m c .223 21.2 Đ c ghi d li u 230 21.3 B t đ ng b nh p xu t 235 21.4 Serialization 238 21.5 Isolate Storage 244 Ch ng 22 L p trình NET COM .246 22.1 P/Invoke .246 22.2 Con tr 248 Ph n Xây d ng m t ng d ng minh h a 250 Ch ng 23 Website d y h c ngôn ng C# 251 23.1 Hi n tr ng yêu c u 251 23.2 Phân tích h ng đ i t ng 258 23.3 Thi t k h ng đ i t ng 262 Tóm tắt Đ tài t p trung tìm hi u tồn b khái ni m liên quan đ n ngơn ng C# B i C# đ c Microsoft phát tri n nh m t thành ph n c a khung ng d ng NET Framework h ng Internet nên đ tài bao g m hai ph n sau: Phần 1: Tìm hiểu ngơn ngữ C# Vi c tìm hi u bao g m c ki n th c n n t ng v công ngh NET Framework, chu n b cho khái ni m liên quan gi a C# NET Framework Sau tìm hi u v b cú pháp c a ngôn ng này, bao g m tồn b t p l nh, từ khóa, khái ni m v l p trình h ng đ i t ng theo C#, h tr l p trình h ng component Sau cách l p trình C# v i ng d ng Window cho máy đ bàn C# v i công ngh hi n đ i nh ASP.NET ADO.NET, XML cho l p trình Web Phần 2: Xây dựng ng dụng Ph n báo cáo v ng d ng minh h a cho vi c tìm hi u Tên ng d ng Xây d ng m t Website d y h c C# Đây ng d ng Web cài đặt ngơn ng C# ASP.NET Trong ASP.NET đ c dùng đ xây d ng giao di n t ng tác v i ng i dùng; C# ngơn ng l p trình bên d i ng d ng có thao tác c s d li u (Microsoft SQL Server) thơng quan mơ hình ADO.NET Phần Tìm hiểu ngơn ngữ C# C# Net Framework Gvhd: Nguy n T n Tr n Minh Khang Chương C# Net Framework M c tiêu c a C# cung c p m t ngôn ng l p trình đ n gi n, an tồn, hi n đ i, h ng đ i t ng, đặt tr ng tâm vào Internet, có kh nĕng th c thi cao cho môi tr ng NET C# m t ngơn ng m i, nh ng tích h p nh ng tinh hoa c a ba th p kỷ phát tri n c a ngôn ng l p trình Ta có th d dàng th y C# có nh ng đặc tr ng quen thu c c a Java, C++, Visual Basic, … Đ tài đặt tr ng tâm gi i thi u ngôn ng C# cách dùng nh m t cơng c l p trình n n t ng NET V i ngơn ng C++, h c ta không c n quan tâm đ n môi tr ng th c thi V i ngôn ng C#, ta h c đ t o m t ng d ng NET, n u l ý có th b lỡ quan m c a ngơn ng Do đó, đ tài xét C# t p trung ng c nh c th n n t ng NET c a Microsoft ng d ng máy tính đ bàn ng d ng Internet Ch ng trình bày chung v hai ph n ngôn ng C# n n t ng NET, bao g m c khung ng d ng NET (.NET Framework) 1.1 Nền tảng c a NET Khi Microsoft công b C# vào tháng nĕm 2000, vi c khánh thành m t ph n s r t nhi u s ki n mà n n t ng Net đ c công công b N n t ng Net bô khung phát tri n ng d ng m i, cung c p m t giao di n l p trình ng d ng (Application Programming Interface - API) m i m cho d ch v h u hành Windows, c th Windows 2000, mang l i nhi u kỹ thu t khác b t c a Microsoft su t từ nh ng nĕm 90 Trong s có d ch v COM+, cơng ngh ASP, XML thi t k h ng đ i t ng, h tr giao th c d ch v web m i nh SOAP, WSDL UDDL v i tr ng tâm Internet, t t c đ c tích h p ki n trúc DNA N n t ng NET bao g m b n nhóm sau: M t t p ngôn ng , bao g m C# Visual Basic Net; m t t p công c phát tri n bao g m Visual Studio Net; m t t p đ y đ th vi n ph c v cho vi c xây d ng ng d ng web, d ch v web ng d ng Windows; có CLR - Common Language Runtime: (ngơn ng th c thi dùng chung) đ th c thi đ i t ng đ c xây d ng bô khung M t t p Server Xí nghi p Net nh SQL Server 2000 Exchange 2000, BizTalk 2000, … chúng cung c p ch c nĕng cho vi c l u tr d li u quan h , th n t , th ng m i n t B2B, … C# Net Framework Gvhd: Nguy n T n Tr n Minh Khang Các d ch v web th ng m i mi n phí, vừa đ c cơng b g n đ y nh d án Hailstorm; nhà phát tri n có th dùng d ch v đ xây d ng ng d ng đòi h i tri th c v đ nh danh ng i dùng… .NET cho thi t b không ph i PC nh n tho i (cell phone), thi t b game 1.2 NET Framework Net h tr tích h p ngơn ng , t c ta có th k thừa l p, b t bi t l , đa hình thơng qua nhi u ngơn ng NET Framework th c hi n đ c vi c nh vào đặc t Common Type System - CTS (h th ng ki u chung) mà t t c thành ph n Net đ u tuân theo Ví d , m i th Net đ u đ i t ng, thừa k từ l p g c System.Object Ngồi Net cịn bao g m Common Language Specification - CLS (đặc t ngơn ng chung) Nó cung c p qui t c c b n mà ngơn ng mu n tích h p ph i th a mãn CLS yêu c u t i thi u c a ngôn ng h tr Net Trình biên d ch tuân theo CLS s t o đ i t ng có th t ng h p v i đ i t ng khác B th vi n l p c a khung ng d ng (Framework Class Library - FCL) có th đ c dùng b i b t kỳ ngôn ng tuân theo CLS .NET Framework nằm t ng c a h u hành (b t kỳ h u hành không Windows) .NET Framework bao bao g m: • B n ngơn ng th c: C#, VB.Net, C++, Jscript.NET • Common Language Runtime - CLR, n n t ng h ng đ i t ng cho phát tri n ng d ng Windows web mà ngơn ng có th chia sẻ s d ng • B th vi n Framework Class Library - FCL Hình 1-1 Kiến trúc khung ng dụng Net C# Net Framework Gvhd: Nguy n T n Tr n Minh Khang Thành ph n quan tr ng nh t c a NET Framework CLR, cung c p môi tr ng cho ng d ng th c thi, CLR m t máy o, t ng t máy o Java CLR kích ho t đ i t ng, th c hi n ki m tra b o m t, c p phát b nh , th c thi thu d n chúng Trong Hình 1-1 t ng c a CLR bao g m: • Các l p c s • Các l p d li u XML • Các l p cho d ch v web, web form, Windows form Các l p đ c g i chung FCL, Framework Class Library, cung c p API h ng đ i t ng cho t t c ch c nĕng c a NET Framework (h n 5000 l p) Các l p c s t ng t v i l p Java Các l p h tr thao tác nh p xu t, thao tác chuổi, vĕn b n, qu n lý b o m t, truy n thông m ng, qu n lý ti u trình ch c nĕng tổng h p khác … Trên m c l p d li u XML L p d li u h tr vi c thao tác d li u c s d li u Các l p bao g m l p SQL (Structure Query Language: ngôn ng truy v n có c u trúc) cho phép ta thao tác d li u thông qua m t giao ti p SQL chu n Ngồi cịn m t t p l p g i ADO.Net cho phép thao tác d li u L p XML h tr thao tác d li u XML, tìm ki m di n d ch XML Trên l p d li u XML l p h tr xây d ng ng d ng Windows (Windows forms), ng d ng Web (Web forms) d ch v Web (Web services) 1.3 Biên dịch ngôn ngữ trung gian (MSIL) V i NET ch ng trình khơng biên d ch thành t p tin th c thi, mà biên d ch thành ngôn ng trung gian (MSIL - Microsoft Intermediate Language, vi t t t IL), sau chúng đ c CLR th c thi Các t p tin IL biên d ch từ C# đ ng nh t v i t p tin IL biên d ch từ ngôn ng Net khác Khi biên d ch d án, mã ngu n C# đ c chuy n thành t p tin IL l u đƿa Khi ch y ch ng trình IL đ c biên d ch (hay thông d ch) m t l n n a trình Just In Time - JIT, k t qu mã máy b x lý s th c thi Trình biên d ch JIT ch y có yêu c u Khi m t ph ng th c đ c g i, JIT phân tích IL sinh mã máy t i u cho lo i máy JIT có th nh n bi t mã ngu n đ c biên d ch ch a, đ có th ch y ng d ng hay ph i biên d ch l i CLS có nghƿa ngơn ng Net sinh mã IL Các đ i t ng đ c t o theo m t ngôn ng s đ c truy c p thừa k b i đ i t ng c a ngơn ng khác Vì v y ta có th t o đ c m t l p c s VB.Net thừa k từ C# C# Net Framework Gvhd: Nguy n T n Tr n Minh Khang 1.4 Ngôn ngữ C# C# m t ngôn ng r t đ n gi n, v i kho ng 80 từ khoá h n m i ki u d li u d ng sẵn, nh ng C# có tính di n đ t cao C# h tr l p trình có c u trúc, h ng đ i t ng, h ng thành ph n (component oriented) Tr ng tâm c a ngôn ng h ng đ i t ng l p L p đ nh nghƿa ki u d li u m i, cho phép m r ng ngôn ng theo h ng c n gi i quy t C# có nh ng từ khố dành cho vi c khai báo l p, ph ng th c, thu c tính (property) m i C# h tr đ y đ khái ni m tr c t l p trình h ng đ i t ng: đóng gói, thừa k , đa hình Đ nh nghƿa l p C# khơng địi h i tách r i t p tin tiêu đ v i t p tin cài đặt nh C++ H n th , C# h tr ki u s u li u m i, cho phép s u li u tr c ti p t p tin mã ngu n Đ n biên d ch s t o t p tin s u li u theo đ nh d ng XML C# h tr khái ni m giao di n, interfaces (t ng t Java) M t l p có th k thừa nh t m t l p cha nh ng có th cài đặt nhi u giao di n C# có ki u cấu trúc, struct (khơng gi ng C++) C u trúc ki u h ng nhẹ b gi i h n.C u trúc không th thừa k l p hay đ c k thừa nh ng có th cài đặt giao di n C# cung c p nh ng đặc tr ng l p trình h ng thành ph n nh property, s ki n d n h ng khai báo (đ c g i attribute) L p trình h ng component đ c h tr b i CLR thông qua siêu d li u (metadata) Siêu d li u mô t l p bao g m ph ng th c thu c tính, thơng tin b o m t … Assembly m t t p h p t p tin mà theo cách nhìn c a l p trình viên th vi n liên k t đ ng (DLL) hay t p tin th c thi (EXE) Trong NET m t assembly m t đon v c a vi c tái s d ng, xác đ nh phiên b n, b o m t, phân ph i CLR cung c p m t s l p đ thao tác v i assembly C# cho truy c p tr c ti p b nh dùng tr ki u C++, nh ng vùng mã đ c xem nh khơng an tồn CLR s khơng th c thi vi c thu d n rác t đ ng đ i t ng đ c tham chi u b i tr cho đ n l p trình viên t gi i phóng Kh i đ u Gvhd: Nguy n T n Tr n Minh Khang Chương Khởi đầu Ch ng ta s t o, biên d ch ch y ch ng trình “Hello World” ngơn ng C# Phân tích ng n g n ch ng trình đ gi i thi u đặc tr ng y u ngơn ng C# Ví dụ 2-1 Chương trình Hello World class HelloWorld { static void Main( ) { // sử dụng đối tượng console hệ thống System.Console.WriteLine("Hello World"); } } Sau biên d ch ch y HelloWorld, k t qu dòng ch “Hello World” hi n th hình 2.1 Lớp, đối tượng kiểu B n ch t c a l p trình h ng đ i t ng t o ki u m i M t kiểu bi u di n m t v t Gi ng v i ngơn ng l p trình h ng đ i t ng khác, m t ki u C# đ nh nghƿa từ khoá class (và đ c g i l p) th hi n c a l p đ c g i đối tượng Xem Ví d 2-1 ta th y cách khai báo m t l p HelloWorld Ta th y cách khai báo n i dung c a m t l p hoàn tồn gi ng v i ngơn ng Java C++, có khác cu i khai báo l p không c n d u “;” 2.1.1 Phương th c Các hành vi c a m t l p đ c g i ph ng th c thành viên (g i t t ph ng th c) c a l p M t phương thức m t hàm (ph ng th c thành viên g i hàm thành viên) Các ph ng th c đ nh nghƿa nh ng mà m t l p có th làm Cách khai báo, n i dung cách s d ng ph ng th c gi ng hoàn toàn v i Java C++ Trong ví d có m t ph ng th c đặc bi t ph ng th c Main() (nh hàm main() C++) ph ng th c b t đ u c a m t ng d ng C#, có th tr v ki u void hay int M i m t ch ng trình (assembly) có th có nhi u ph ng th c Main nh ng ph i đ nh ph ng th c Main() s b t đ u ch ng trình Kh i đ u Gvhd: Nguy n T n Tr n Minh Khang 2.1.2 Các ghi C# có ba ki u ghi có hai ki u r t quen thu c c a C++ dùng: "//" "/* … */" Ngoài m t ki u ghi n a s trình bày ch ng k Ví dụ 2-2 Hai hình th c ghi C# class HelloWorld { static void Main( ) // Đây ghi dòng { /* Bắt đầu ghi nhiều dòng Vẫn ghi Kết thúc ghi */ System.Console.WriteLine("Hello World"); } } 2.1.3 ng dụng dạng console “Hello World” m t ng d ng console Các ng d ng d ng th ng khơng có giao di n ng i dùng đ h a Các nh p xu t đ u thông qua console chu n (d ng dòng l nh nh DOS) Trong ví d trên, ph ng th c Main() vi t hình dịng “Hello World” Do hình qu n lý m t đ i t ng Console, đ i t ng có ph ng th c WriteLine() cho phép đặt m t dịng ch lên hình Đ g i ph ng th c ta dùng toán t “.”, nh sau: Console.WriteLine(…) 2.1.4 Namespaces - Vùng tên Console m t r t nhi u (c ngàn) l p b th vi n NET M i l p đ u có tên nh v y có hàng ngàn tên mà l p trình viên ph i nh ph i tra c u m i s d ng V n đ ph i gi m b t l ng tên ph i nh Ngoài v n đ ph i nh nhi u tên ra, m t nh n xét sau: m t s l p có m i liên h v mặt ng nghƿa, ví d nh l p Stack, Queue, Hashtable … l p cài đặt c u trúc d li u túi ch a Nh v y có th nhóm nh ng l p thành m t nhóm thay ph i nh tên l p l p trình viên c n nh tên nhóm, sau có th th c hi n vi c tra c u tên l p nhóm nhanh chóng h n Nhóm m t vùng tên C# M t vùng tên có th có nhi u l p vùng tên khác N u vùng tên A nằm vùng tên B, ta nói vùng tên A vùng tên c a vùng tên B Khi l p vùng tên A đ c ghi nh sau: B.A.Tên_lớp_trong_vùng_tên_A System vùng tên ch a nhi u l p h u ích cho vi c giao ti p v i h th ng l p công d ng chung nh l p Console, Math, Exception….Trong ví d HelloWorld trên, đ i t ng Console đ c dùng nh sau: System.Console.WriteLine("Hello World"); Kh i đ u Gvhd: Nguy n T n Tr n Minh Khang 2.1.5 Tốn tử chấm “.” Nh Ví d 2-1 toán t ch m đ c dùng đ truy su t d li u ph ng th c m t l p (nh Console.WriteLine()), đ ng th i dùng đ đ nh tên lóp m t vùng tên (nh System.Console) Toán t d u ch m đ c dùng đ truy xu t vùng tên c a m t vùng tên Vùng_tên.Vùng_tên_con.Vùng_tên_con_con 2.1.6 Từ khố using N u ch ng trình s d ng nhi u l n ph ng th c Console.WriteLine, từ System s ph i vi t nhi u l n Đi u có th n l p trình viên nhàm chán Ta s khai báo ch ng trình có s d ng vùng tên System, sau ta dùng l p vùng tên System mà khơng c n ph i có từ System tr c Ví dụ 2-3 Từ khóa using // Khai báo chương trình có sử dụng vùng tên System using System; class HelloWorld { static void Main( ) { // Console thuộc vùng tên System Console.WriteLine("Hello World"); } } 2.1.7 Phân biệt hoa thường Ngôn ng C# phân bi t ch hoa th ng gi ng nh Java hay C++ (khơng nh VB) Ví d nh WriteLine khác v i writeLine c hai khác v i WRITELINE Tên bi n, hàm, … đ u phân bi t ch hoa ch th ng 2.1.8 Từ khố static Trong Ví d 2-1 ph ng th c Main() đ c khai báo ki u tr v void dùng từ khoá static Từ khoá static cho bi t ta có th g i ph ng th c Main() mà không c n t o m t đ i t ng ki u HelloWorld 2.2 Phát triển “Hello World” Có hai cách đ vi t, biên d ch ch y ch ng trình HelloWorld dùng mơi tr ng phát tri n tích h p (IDE) Visual Studio Net hay vi t trình so n th o vĕn b n biên d ch dòng l nh IDE Vs.Net d dùng h n Do đó, đ tài trình bày theo h ng làm vi c IDE Visual Studio Net Kh i đ u Gvhd: Nguy n T n Tr n Minh Khang 2.2.1 Soạn thảo “Hello World” Đ t o ch ng trình “Hello World” IDE, ta ch n Visual Studio Net từ th c đ n Ti p theo hình c a IDE ch n File > New > Project từ th c đ n, theo xu t hi n m t c a sổ nh sau: Hình 2-1 Tạo ng dụng console VS.Net Đ t o ch ng trình “Hello World” ta ch n Visual C# Project > Console Application, n HelloWorld ô Name, ch n đ ng d n nh n OK M t c a sổ so n th o xu t hi n Kh i đ u Gvhd: Nguy n T n Tr n Minh Khang Hình 2-2 Cửa sổ soạn thảo nội dung mã nguồn Vs.Net t t o m t s mã, ta c n chỉnh s a cho phù h p v i ch ng trình c a 2.2.2 Biên dịch chạy “Hello World” Sau đ y đ mã ngu n ta ti n hành biên d ch ch ng trình: nh n “Ctrl–Shift– B” hay ch n Build > Build Solution Ki m tra xem ch ng trình có l i khơng c a sổ Output cu i hình Khi biên d ch ch ng trình s l u l i thành t p tin cs Ch y ch ng trình “Ctrl–F5” hay ch n Debug > Start Without Debugging 2.2.3 Trình gở rối c a Visual Studio Net Trình gỡ r i c a VS.Net r t m nh h u ích Ba kỹ nĕng y u đ s d ng c a trình g r i là: • Cách đặt m ng t (breakpoint) ch y cho đ n m ng t • Làm th ch y b c ch y v t qua m t ph ng th c • Làm đ quan sát hi u chỉnh giá tr c a bi n, d li u thành viên, … Cách đ n gi n nh t đ đặt m ng t b m chu t trái vào phía l trái, t i s hi n lên m t ch m đ 10 Kh i đ u Gvhd: Nguy n T n Tr n Minh Khang Hình 2-3 Minh họa điểm ngắt Cách dùng trình g r i hồn tồn gi ng v i trình g r i VS 6.0 Nó cho phép ta dừng l i m t v trí b t kỳ, cho ta ki m tra giá tr t c th i cách di chuy n chu t đ n v tr bi n Ngoài ra, g r i ta có th xem giá tr bi n thông qua c a sổ Watch Local Đ ch y ch đ g r i ta ch n Debug Start hay nh n F5, mu n ch y b c ta b m F11 ch y v t qua m t ph ng th c ta b m F10 11 Nh ng c s c a ngôn ng C# Gvhd: Nguy n T n Tr n Minh Khang Chương Những sở c a ngôn ngữ C# Trong ch ng s trình bày v h th ng ki u C#; phân bi t ki u d ng sẵn (int, long, bool, …) v i ki u ng i dùng đ nh nghƿa Ngoài ra, ch ng s trình bày cách t o dùng bi n, hằng; gi i thi u ki u li t kê, chu i, ki u đ nh danh, bi u th c, câu l nh Ph n hai c a ch ng trình bày v c u trúc u ki n toán t logic, quan h , toán h c, … 3.1 Các kiểu C# bu c ph i khai báo ki u c a đ i t ng đ c t o Khi ki u đ c khai báo rõ ràng, trình biên d ch s giúp ngĕn ngừa l i cách ki m tra d li u đ c gán cho đ i t ng có h p l khơng, đ ng th i c p phát kích th c b nh cho đ i t ng C# phân thành hai lo i: loai d li u d ng sẵn lo i ng i dùng đ nh nghƿa C# chia t p d li u thành hai ki u: giá trị tham chiếu Bi n ki u giá tr đ c l u vùng nh stack, bi n ki u tham chi u đ c l u vùng nh heap C# h tr ki u tr c a C++, nh ng đ c s d ng Thông th ng tr đ c s d ng làm vi c tr c ti p v i Win API hay đ i t ng COM 3.1.1 Loại liệu định sẳn C# có nhi u ki u d li u đ nh sẳn, m i ki u ánh x đ n m t ki u đ c hổ tr b i CLS (Commom Language Specification), ánh x đ đ m b o đ i t ng đ c t o C# khơng khác đ i t ng đ c t o ngôn ng NET khác M i ki u có m t kích th c c đ nh đ c li t kê b ng sau Bảng 3-1 Các kiểu dựng sẵn Ki u Kích th c (byte) Mơ t - giá tr Ki u Net byte Byte Không d u (0 255) char Char Mã ký th Unicode bool Boolean true hay false sbyte Sbyte Có d u (-128 127) short Int16 Có d u (-32768 32767) ushort Uint16 Không d u (0 65535) int Int32 Có d u (-2147483647 2147483647) 12 ... v cho vi c xây d ng ng d ng web, d ch v web ng d ng Windows; c? ??n c? ? CLR - Common Language Runtime: (ng? ?n ng th c thi d? ?ng chung) đ th c thi đ i t ng đ c xây d ng bô khung M t t p Server Xí nghi... Start hay nh n F5, mu n ch y b c ta b m F11 ch y v t qua m t ph ng th c ta b m F10 11 Nh ng c s c a ng? ?n ng C# Gvhd: Nguy n T n Tr n Minh Khang Chư? ?ng Nh? ?ng sở c a ng? ?n ng? ?? C# Trong ch ng s trình... Nguy n T n Tr n Minh Khang Chư? ?ng Khởi đầu Ch ng ta s t o, biên d ch ch y ch ng trình “Hello World” ng? ?n ng C# Phân tích ng n g n ch ng trình đ gi i thi u đ? ?c tr ng y u ng? ?n ng C# Ví dụ 2-1 Chương

Ngày đăng: 13/12/2022, 19:53

Tài liệu cùng người dùng

  • Đang cập nhật ...

Tài liệu liên quan