37
 TRƯỜNG ĐẠI HC CÔNG NGHI P HÀ NI KHOA: CÔNG NGH THÔNG TIN PHÁT TRIN PHN MM THEO CU PHN  Đề t à i : Xây dự ng Game Lines 98 theo hướ ng cu phn. Giáo viên hướ ng dn: thy Trnh Bá Quý NHÓM 5   LỚ P KTPM1-K5 Vũ Văn Tuân Lê Tám Mùi Nguyn Thúy Hng Hà Ni, 12- 2013

BTL Nhom5 KTPM1 K5 PhatTrienPhanMemTheoCauPhan BaoCao

  • Upload
    tuan

  • View
    128

  • Download
    1

Embed Size (px)

Citation preview

TRNG I HC CNG NGHIP H NIKHOA: CNG NGH THNG TIN

PHT TRIN PHN MM THEO CU PHN ti:Xy dng Game Lines 98 theo hng cu phn.

Gio vin hng dn: thy Trnh B QuNHM 5 LP KTPM1-K5V Vn TunL Tm MiNguyn Thy Hng

H Ni, 12- 2013

MC LCLI CM N1TM TT BTL4DANH SCH CC BNG HNH T VIT TT5PHN I M U61. Tn ti62. L do chn ti63. Mc ch, mc tiu64. Ni dung s lm( ch r cc mc tiu)65. Phng php thc hin6PHN II NI DUNG8CHNG I. C S L THUYT81. 1. Cu phn l g?81. 2. Cng ngh phn mm hng cu phn91. 3. Tng quan v .NET Framework111. 4. Lp th vin trong . NET Framework12CHNG II. XY DNG GAME LINES 98 HNG CU PHN142. 1. Gii thiu game Lines 98142. 2. M hnh Usecase162. 3. S lp242. 4. M hnh trng thi25CHNG III. THC NGHIM - NG DNG263. 1. Xy dng chng trnh bng Command Line.263. 2. Giao din Game Lines 9832PHN III KT LUN353. 1. L thuyt353. 2. ng dng353. 3. Hng pht trin35

LI CM N

Hin nay, cng ngh thng tin c xem la mt trong nhng nganh cng ngh mui nhon c nha nc ta u tin phat trin c bit la linh vc cng ngh phn mm. Cng ngh phn mm pht trin qua nhiu giai on v tng giai on lun c nhng cng ngh mi xut hin, gip pht trin phn mm thun li v bn vng, mt xu th mi xut hin la phat trin phn mm theo cu phn ang c kha a chung hin nay vi co nhiu u im nh co kha nng s dung lai va thi gian phat trin ngn. Tuy nhin, nganh cng ngh phn mm nc ta con kha non tre so vi th gii. Nn trong giai oan hin nay, cac cng ty phn mm thng gp nhiu kho khn lin quan n quy trinh phat trin phn mm. Hin nay a s cac m hinh quan ly vn dang truyn thng. Do o vic thay i theo hng phat trin phn mm theo cu phn la mt iu cn thit. T nhu cu noi trn, chung em a tin hanh thc hin tai Xy dng game Lines 98 hng cu phn. Nhm muc ich phat trin ng dng game gii tr theo t tng hng thanh phn hoa. y l ti tng i mi, trong qu trnh thc hin v hon thnh n ny chng em gp rt nhiu kh khn, vng mc, nhng vi s gip tn tnh v rt nhiu kin thc ca mn Phat trin phn mm theo cu phn m thy gio Trinh Ba Quy ging dy, chng em hon thnh ti ny. Chng em xin chn thnh cm n thy Trnh B Qu gip chng em hon thnh c n, qua y chng em mong c s gp ca thy gio v cc bn gp n c th hon thin tt hn.Chng em xin chn thnh cm n thy!

Nhm sinh vin thc hin: V Vn TunL Tm MiNguyn Thy Hng

TM TT BTLNi dung chnh ca bo co gm 3 chng:Chng 1. C s ly thuyt Nu loi ng dng trong BTL, ngn ng s dng, c im ca kiu ng dng trong ngn ng lp trnh. Kin thc tng qut v cu phn, cch xy dng kiu ng dng theo cu phn.Chng 2. Phn phn tich thit k Game Lines 98 Chc nng chnh ca chng trnh, phn b cc chc nng theo cc modul (cu phn), phn r chc nng da theo cc cu phn . Phn tch thit k da vo UML.Chng 3: Thc nghim va kt qua Nu ngn gn cch xy dng chng trnh t m ngun (s dng command line v cng c). Cn ch r nhng cu phn xy dng ra. Trnh by ngn gn kt qu t c (nh chp chng trnh v gii thch).

DANH SCH CC BNG HNH T VIT TT

Cc k t vit tt trong bo coK hiu vit ttT c vit tt

XMLeXtensible Markup Language

SOAPSimple Object Access Protocol

HTTPHypertext Transfer Protocol

COMCommon Language Model

DLLDynamic Link Library

CLRCommon Language Runtime

CBSECng ngh phn mm c cu phn

COPComponent Oriented Programing

EJBJava Bean

DCOMDistributed Component Object Model

CORBACommon Object Request Broker Architecture

PHN I M U

1. Tn ti Xy dng Game Lines 98 theo hng cu phn.2. L do chn tiGame Line 98 l mt game thuc dng kinh in, thng hay gn lin n vi gii vn phng. Game Lines 98 ph hp vi mi la tui. Cch chi game ny cng kh n gin: TrongGame Line 98bn thc hin di chut sp xp cc qu bng mt cch hp l c 5 qu cng mu lin nhau. Khi cc qu bng con mi xut hin bn c th di chuyn cc qu bng to khc ln. Vic hy cc qu bng con vi mu khng ng s gip bn thun tin hn trong vic ghp chung 5 bng cng mu.Trn thc t, Game Lines 98 c rt nhiu, nhng chc nng, giao din cn n gin. Game xy dng theo hng cu phn th hon ton cha c. Chnh v vy, nhm quyt nh xy dng li Game Lines 98 trn ngn ng C# hng theo cu phn. iu ny lm cho game d dng thay i giao din ph hp vi nhu cu, s thch ca nhiu ngi dng. Thut ton game cng c th c thay i khi ngi dng mun chi c th la chn mc chi ph hp.

3. Mc ch, mc tiuXy dng c ng dng game Lines 98 theo hng cu phn cho php thay i c giao din v thut ton.4. Ni dung s lm( ch r cc mc tiu) Hiu c c s l thuyt v cu phn cng nh kin thc v .NET Framework Nm r c cch xy dng mt chng trnh theo hng cu phn Phn tch thit k Game Lines 98 Xy dng cc thnh phn cho game Lines 98. Thay i c cc thnh phn xy dng. Chng trnh chy c vi thut ton v giao din xy dng.

5. Phng php thc hin Cc phng php:+ Phng php trc quan+ Phng php thu thp, nghin cu ti liu+ Phng php phng vn trc tip+ Phng php m t+ Phng php lp k hoch+ Phng php phn tch h thng+ Phng php thit k Ngn ng lp trnh: C# Phn mm s dng: Visual Studio 2012, Word,

PHN II NI DUNGCHNG I. C S L THUYT1. 1. Cu phn l g?Cng ngh phn mm c nhng tin b ln trong 30 nm qua vi nhiu cng ngh tin tin pht minh v p dng bao gm lp trnh cu trc, cng ngh CASE, v cng ngh hng i tng. Tuy nhin, phong cch thit yu ca pht trin phn mm duy tr nh nhau: lp trnh vin vit dng m lnh cho n khi n kt thc. Nh mt phong cch tin cng nghip sn xut l yu t quan trng i vi s cnh tranh gia nng sut phn cng v nng xut phn mm. Cuc cch mng trong pht trin phn mm, ging nh cuc cch mng cng nghip cho cc ngnh k thut c in, phi c gii thiu: Vic pht trin phn mm mt cch th cng c thay th bng cc phng php k thut. Kiu lp trnh theo dng lnh c thay th bng vic pht trin theo cu phn. Lp trnh theo c php nn c thay th bng lp rp cc thnh phn da trn cc giao din v ng ngha ca chng.R rng, mt s thay i mang tnh cch mng nh vy s khng xy ra cho n khi chng ta c th khm ph c h thng, phng php tip cn chnh thc pht trin phn mm theo cu phn.Thnh phn phn mm c nh ngha bng nhiu cch khc nhau qua ci nhn v cc im ging nhau v khc nhau. [Brown 1998] trnh by bn nh ngha v mt thnh phn phn mm, tng kt Hi tho quc t u tin trn CBSE trong thng 4 nm 1998: Mt thnh phn l khng tm thng, mt phn gn nh c lp v thay th mt h thng p ng mt chc nng r rng trong bi cnh ca mt kin trc c xc nh r. Mt thnh phn ph hp v cung cp vic thc hin vt l ca mt b giao din. ( Philippe Krutchen , Rational Software ). Mt thnh phn phn mm lc chy l mt gi phn mm t ng rng buc ca mt hoc nhiu chng trnh c qun l nh mt n v v truy cp thng qua giao din ti liu c th c truy cp ti thi gian chy (Gartner Group) Mt thnh phn phn mm l mt n v kt hp vi cc giao din c quy c v ch ph thuc vo ng cnh r rng. Mt thnh phn phn mm c th c trin khai mt cch c lp v ph thuc vo thnh phn ca bn th ba. ( Clemens Szyperski ). Mt thnh phn cng vic i din cho phn mm thc hin mt khi nim cng vic hoc quy trnh cng vic t tr. N bao gm nhng th phn mm cn thit th hin, thc hin v trin khai cc khi nim nh mt yu t ti s dng ca mt h thng cng vic ln hn. (Wojtek Kozaczynski , SSA).Tho lun v nh ngha thnh phn cng c th c tm thy trong nhiu hi ngh v n phm gn y [ Koza nm 1999; Parrish nm 1999; Wang 2000; Yacoub nm 1999; Fischer 2002; Fukazawa 2002] .Trong bo co ny, chng em s s dng cc nh ngha sau y cho mt thnh phn mm:Mt thnh phn phn mm l mt phn ca m my khp kn, t trin khai vi chc nng r rng v c th c lp rp vi cc thnh phn khc thng qua giao din ca n.T nh ngha ny, mt thnh phn l mt chng trnh hoc mt b cc chng trnh c th c bin dch v lm cho thc thi c. N l khp kn, do , n cung cp chc nng r rng. N t trin khai n c th c ci t v thc hin trong mi trng ca ngi dng cui . N c th c kt hp vi cc thnh phn khc n c th c ti s dng nh mt n v trong cc bi cnh khc nhau . Lp rp l thng qua giao din ca mt thnh phn, c ngha l vic thc hin ni b ca mt thnh phn thng c n t ngi dng.Cng ngh thnh phn tun theo nh ngha trn bao gm JavaBeans v cc doanh nghip Java Beans ( EJB ) t Sun Microsystems , COM (Component Object), DCOM (Distributed Component Object Model) , v . NET components t Tp on Microsoft, v CORBA (Common Object Request Broker Architecture) cc thnh phn t Object Management Group.1. 2. Cng ngh phn mm hng cu phnCOP v CBSE: cng ngh phn mm da trn thnh phn.CBSE l mt thut ng tng qut hn, tham gia COP nh ch l mt phn ca n:CBSE = COA + COD + COP + COM,Ni COA, COD, v COM i din cho phn tch thnh phn theo nh hng, thit k thnh phn theo nh hng, qun l v thnh phn theo nh hng tng ng. CBSE ha hn s thc y pht trin phn mm v gim chi ph bng cch lp rp cc h thng t cc thnh phn phn mm trc khi ch to. Thit k, pht trin v duy tr cc thnh phn ti s dng, tuy nhin, mt qu trnh rt phc tp, t yu cu cao khng ch dnh cho cc thnh phn chc nng v tnh linh hot m cn cho s pht trin t chc ca. CBSE bao gm nhiu phn mm chuyn ngnh k thut v k thut khc nhau, m vn cha c xc nh y , gii thch, v khai thc mt trong hai quan im l thuyt hay thc t ca xem.Trong cng ngh phn mm truyn thng, qu trnh pht trin phn mm bao gm mt chui cc hot ng hoc cc giai on, c th l phn tch, thit k, lp trnh, th nghim v hon thin. Trong CBSE, cc giai on pht trin chnh tr thnh phn tch, thit k, cung cp v lp rp. iu cho thy rng, so vi cc chng trnh truyn thng th vic th nghim v hon thin c thay th trong CBSE bi cc bc cung cp thnh phn v lp rp chng li vi nhau.T gc nhn hng cu phn, c hai loi hot ng chnh trong CBSE:pht trin ti s dng (DF) v pht trin vi ti s dng (DW). Trong DF, s pht trin c th c t chc theo phng php tip cn cng ngh phn mm truyn thng, vi vic tp trung vo cc tiu chun thnh phn. V d, mi thnh phn cung cp hai loi giao din: (1) giao din cung cp, trong nh ngha cc dch v cng cng thnh phn ny s cung cp v (2) giao din yu cu, trong xc nh cc dch v c yu cu trong thnh phn ny thc thi mt cch chnh xc nht. Cn trong DW, th vic tm kim thnh phn phn mm v phc hi cc thnh phn c sn li tr thnh hot ng quan trng trong vic ng dng xy dng ..Nhn t kha cnh x l k thut th cc thnh phn c th c phn thnh nm cc loi khc nhau. Cu phn k thut: Loi ny i din cho cc c im k thut ca mt n v phn mm m t cc hnh vi ca mt tp cc i tng thnh phn v nh ngha mt n v thc hin. Hnh vi c nh ngha l mt tp hp cc giao din. Mt cu phn k thut c th hiu nh mt cu phn thc hin. Cu phn giao din: Cc hnh thc giao din trnh by mt nh ngha ca mt tp hp cc hnh vi c th c cung cp bi mt i tng thnh phn. Cu phn thc hin: Cu phn thc hin l mt hin thc ca c t thnh phn, l c lp trin khai. iu ny c ngha n c th c ci t v thay th c lp cho cc thnh phn khc. N khng c ngha l n c lp vi cc thnh phn khc - n c th c nhiu ph thuc v khng nht thit c ngha l n l mt i tng vt l, chng hn nh mt tp tin duy nht. Cu phn ci t: Cc hnh thc ci t (hoc trin khai) l mt bn sao ca cu phn thc hin. Mt cu phn thc hin c trin khai v ng k vi mi trng hot ng thc. iu ny cho php cc mi trng hot ng chy xc nh cc cu phn ci t s dng khi to mt i tng c th ca thnh phn hoc khi chy mt trong nhng hot ng ca n. Cu phn i tng: Mt i tng thnh phn l mt th hin ca mt thnh phn c ci t. y l mt khi nim trong thi gian chy. Tng t nh hng i tng, mt i tng thnh phn trong COP l mt i tng vi d liu ring ca mnh v mt nh danh, thc hin mt hnh vi c th. Mt thnh phn c ci t c th c nhiu thnh phn i tng (trong yu cu xc nh r rng) hoc mt thnh phn i tng (c th l tim n).

1. 3. Tng quan v .NET Framework.NET framework L mt trong nhng cng ngh mi nht c gii thiu bi Tp on Microsoft.Phin bn Beta u tin ca n c pht hnh vo nm 2000. .NET framework l mt nn tng xy dng nhanh chng v d dng hn , trin khai v bo m chy. Thnh phn phn mm .NET c tch hp trong cc ng dng cng nh pht trin nhanh XML Web Dch v v cc ng dng. N cung cp mt nng sut cao, da trn thnh phn, a ngn ng mi trng cho vic tch hp cc ng dng hin c vi Internet p ng nhng thch thc ca cc ng dng mi cho vic trin khai v hot ng ca cc ng dng Internet quy m..NET framework bao gm mt my o quan tri thnh phn theo nh hng mi lp trnh nn tng cho pht trin phn mm. Ct li ca khun kh .NET bao gm XML v Simple Object Access Protocol ( SOAP ) cung cp dch v Web qua Internet (bi Andy Ju An Wang va Kai Qian ISBN 0-471-64446-3 ban quyn 2005 John Wiley & Sons, Inc. 194).Mc ch ca .NET framework l to iu kin cho s pht trin ca my man hinh ca s, v web da trn cc dch v ng dng trn nn tng Windows v lm cho h c sn v khng ch trn nn tng Windows m cn trn cc nn tng khc thng qua cc giao thc ph bin nh SOAP v HTTP.u tin .NET n gin ho cu thnh c bit l cho Component Object Model (COM), phn phi cng ngh COM (DCOM). Mc d cc thnh phn COM c th ti s dng nh thnh phn phn mm plug- and-play trong phn mm thnh phn v ng dng cng trnh xy dng, qu trnh pht trin l qu phc tp v COM khng h tr phin ban hin tai (thc hin side-by-side), m c th gy ra xung t phin bn (vn DLL).Cng ngh .NET h tr trin khai lp rp thnh phn cho php nhiu phin bn ca cc thnh phn cng tn cng tn ti m khng c xung t. Cng ngh .NET n gin ho vic to ra v trin khai cc thnh phn b sung m bo ng tin cy v kh nng m rng cc dch v c cung cp bi cc thnh phn.Th hai, .NET to iu kin cho s pht trin ca cc thnh phn c phn phi bi Remoting. Cng ngh knh .NET framework h tr kh nng tng tc gia COM v thnh phn NET. XML Web Service l mt loi thnh phn. Mt thnh phn .NET c th lm vic vi bt k thnh phn COM hin ti . Ni cch khc,.NET c th cung cp dch v cho cc thnh phn COM, v cc thnh phn COM cng c th c s dng bi bt k thnh phn .NET . N l d dng hn nhiu pht trin cc thnh phn trong .NET hn trong COM. Web dch v l mt s thay th ca cng ngh MS DCOM cho cc ng dng Internet c h tr bi cc giao thc XML, SOAP, v HTTP .NET gii phng m ha pht trin t chng trnh doanh nghip nh qun l giao dch thng qua doanh nghip dch v .NET Dch v Web vt qua thiu s h tr cho DCOM tng la v lm cho dch v sn trn nn tng thng qua giao thc XML v SOAP..NET framework c sn trong .NET Framework SDK v Visual Studio..NET IDE SDK, c hai u c th c ti v t trang web MS .NET.Khun kh SDK l nn tng ca Visual Studio .NET v l mt phn ca Visual Studio .NET khi Visual Studio c ci t. Khun kh .NET bao gm hai phn chnh: Common Language Runtime (CLR) v mt b trong khun kh thng nht cc th vin lp c bn bao gm cc hnh thc web ASP.NET xy dng cc ng dng web, Windows Forms xy dng cc ng dng my tnh bn v ADO.NET truy cp d liu SDK ny bao gm tt c cc nhu cu ca bn vit, xy dng, th nghim v trin khai.ng dng .NET h tr tt c cc ngn ng .NET nh VB .NET , NET VC, C # , v nhng ci khc Visual .NET SDK v Studio. C th truy cp cc dch v ca tt c cc lp trong khun kh .NET nn tng.1. 4. Lp th vin trong . NET FrameworkLp th vin trong .NET Framework l mt tp hp cc lp c bn s dng li m cng bi khng gian tn t chc. Lp th vin thu thp tt c cc lp bao gm c lp c s Windows (WFC) vo mt b thng nht ca cc lp m l mt thit lp n cc lp hc. Khng gian tn l ging nh mt gi phn mm trong cng ngh Java v lp th vin cng ging nh cu trc Java API. Tn min khng gian bao gm nhiu lp v khng gian tn phu. N c trin khai nh mt th vin lp thnh phn chnh n v c t chc trong mt h thng phn cp da trn thnh phn Hnh 1.3 lit k mt tp hp mt phn ca cc thnh phn trong .NET h thng phn cp th vin lp. Tt c cc lp trong th vin c th c s dng bi cc lp khc trong ngn ng khc nhau.Khng gian tn gc trong cc lp th vin l h thng tn min khng gian, trong c nhiu cc lp hc c bn nh i tng, iu khin, v c th cha khng gian tn phu nh IO, Net, D liu, Remoting, vv .V d, XML l mt khng gian tn phu ca h thng tn min khng gian l trin khai nh System.XML.dll, ADO.NET c sn trong System.Data.dll tng ng System.Data khng gian tn v cc lp giao din ngi dng da trn mu c sn trong h thng. Windows.Forms.dll tng ng vi khng gian tem.Windows.Forms. Cc nh pht trin c th to ra khng gian tn ty chnh v t chc cc lp c lin quan trong mt ty chnh khng gian tn. Mt khng gian tn c th c trin khai nh mt tp hp cc thnh phn nh phn.Cc lp hc c cng tn c th c t trong khng gian tn khc nhau v h l tham chiu bi tin t khng gian tn khc nhau. s dng cc lp hc trong mt khng gian tn, mt ch th s dng trong C # hoc nhp khu trong VB phi c bao gm phn u ca m. Cc h thng c xy dng trong th vin lp c bn c trin khai trong tp tin mscorlib.dll.

CHNG II. XY DNG GAME LINES 98 HNG CU PHN

2. 1. Gii thiu game Lines 98 2. 1. 1. Lch s pht trinLines c xp vo mt trong nhng game kinh in, l game quen thuc m khng dn vn phng no khng bit. Tr chi n gin nhng cng i hi ngi chi phi c u c tnh ton. c pht trin bi Microsoft cho h iu hnh Window 98 NT, Lines tr thnh con st trong thi gian . Ngy nay khi nn cng ngh pht trin mnh, Lines khng cn v th nh c nhng n vn l mt game m ngi dng n tng nht.

Hnh 2. 1. Giao din Game Lines 98

2. 1. 2. Cch chi, lut chi Mc tiu l ghi cng nhiu im cng tt bng cch sp xp cc qu bng cng mu thnh mt ng thng hng ngang, dc hoc hng cho.S dng chut di chuyn cc qu bng. u tin chn qu bng di chuyn, sau mt hnh vung ch trng rng. Nu vung ch b chim ng bi bng khc, bng s khng th di chuyn. Lu rng bn c th khng lun lun t bng m bn mun. Sau khi bn di chuyn mt qu bng, ba qu bng nh xut hin thm vo v tr bt k. Bn c th di chuyn nhng qu bng to ln n hoc i n xut hin ri di chuyn hp l to nc n v ghi im cho bn. Bn cn phi to ra nhng ng ngang, dc, hoc cho. S lng ti thiu ca qu bng l nm.Lu : nu bng b bng khc chn ng th khng th i c, nhng c bng mu nh l s hin th bng sau khi ta sp 1 bng.2. 1. 3. Cch tnh imKhi xp 5 qu cnh nhau s ghi c 5 im, 6 qu th s ghi c 7 im, s bng cng mu cnh nhau xp thnh hng cng nhiu th mc im thng s cng ln

2. 2. M hnh Usecase 2. 2. 1. S Use-case

Hnh 2. 2. S Use case game Lines 982. 2. 2. Danh sch cc ActorTn Actor ngha / Ghi ch

Ngi chiNgi iu khin ton b tr chi

2. 2. 3. Danh sch cc Use-caseSTTTn Use-case ngha / Ghi ch

1FileUse case gip ngi chi qun l game nh: Save, Load, Sound, Exit

2GameUse case h thng gip qun l ch chi nh: New, End Game

3HelpUse case gip ngi xem thng tin v game nh: Rules of the game, About.

4Hight ScoreUse case h thng gip qun l im ca ngi chi.

5SaveUse case gip ngi chi c th lu li mn chi hin ti.

6LoadUse case gip ngi chi ti li ln chi gn nht.

7SoundUse case gip ngi chi ci t m thanh game.

8ExitUse case gip ngi chi thot tr chi.

9NewUse case gip ngi chi to mn chi mi.

10End GameUse case gip ngi chi kt thc tr chi.

11Rules of the gameUse case hin th lut chi.

12AboutUse case hin th thng tin v tc gi game.

2. 2. 4. c t Use-caseUse-case File

Hnh 2. 3. S Use case File

Tm tt: Use case gip ngi chi qun l game nh: Save, Load, Sound, Exit game. Cc dng s kin chnh: Ngi chi khi ng chng trnh chn File. H thng s hin th cc la chn cho ngi chi: Save, Load, Sound, Exit. Ngi chi la chn t danh sch. Nu ngi chi chn Save. Dng s kin A1 c thc hin. Nu ngi chi chn Load. Dng s kin A2 c thc hin. Nu ngi chi chn Sound. Dng s kin A3 c thc hin. Nu ngi chi chn Exit. Dng s kin A4 c thc hin. Cc dng s kin r nhnh: Lung s kin A1: H thng s thc hin lu li trng thi hin ti ca ngi chi bao gm im s, thi gian, s bng,... Lung s kin A2: H thng s bt ln ca s cho ngi dng chn file lu Lung s kin A3: H thng s bt/tt m thanh trong game. Lung s kin A4: Thot khi chng trnh. Tin iu kin: Yu cu ngi chi khi ng chng trnh. Hu iu kin: Hin th cc la chn cho ngi chi.

Use-case Game

Hnh 2. 4. S Use case Game

Tm tt: Use case h thng gip qun l ch chi nh: New, End Game Cc dng s kin chnh Ngi chi khi ng chng trnh v chn chi Game. H thng hin th giao din ca tr chi cho ngi chi. Trong qu trnh chi, ngi dng c th chn 2 chc nng l kt thc tr chi End game hoc chi li new game. Ngi chi la chn 1 trong 2 chc nng Nu ngi chi chn New game. Dng s kin A1 c thc hin. Nu ngi chi chn End game. Dng s kin A2 c thc hin. Cc dng s kin r nhnh: Lung s kin A1: H thng s thc hin load li tr chi tr v trng thi ban u. Lung s kin A2: H thng s dng tr chi. Tin iu kin: yu cu ngi chi khi ng chng trnh Hu iu kin: hin th giao din tr chi v 2 chc nng chi li v kt thc tr chi.

Use-case Help

Hnh 2. 5. S Use case Help

Tm tt: Use case gip ngi chi hiu lut chi v thng tin bn quyn game Cc dng s kin chnh: Ngi chi khi ng chng trnh chn Help H thng s hin th cc la chn cho ngi chi: Rules of the game, About Ngi chi la chn t danh sch. + Nu ngi chi chn Rules of the Game dng s kin A1 c thc hin+ Nu ngi chi chn About dng s kin A2 c thc hin Cc dng s kin r nhnh: Lung s kin A1: H thng s bt ln ca s hng dn lut chi Game Line 98 cho ngi chi bit. Lung s kin A2: H thng s bt ca s thng tin bn quyn game. Tin iu kin: Yu cu ngi chi khi ng chng trnh. Hu iu kin: Hin th cc la chn cho ngi chi.

Use-case Hight Score

Hnh 2. 6. S Use case High Score

Tm tt: Use case h thng hin th top ngi chi c im s cao. Cc dng s kin chnh: Ngi chi khi ng chng trnh chn High Score. H thng hin th thng tin v danh sch ngi chi c im s cao. Cc dng s kin r nhnh: Khng c Tin iu kin: La chn menu High Score Hu iu kin: Hin th danh sch ngi chi c im s cao.

Use-case Save Tm tt: Use case gip ngi chi lu li trng thi hin ti ca game. Cc dng s kin chnh: Ngi chi chn menu File H thng hin th cc menu con cho ngi chi la chn. Ngi chi chn Save. H thng s lu li trng thi bn chi. Cc dng s kin r nhnh: Khng c. Tin iu kin: Yu cu ngi chi nhn vo nt File. Hu iu kin: Mn chi hin ti s c lu li.

Use-case Load Tm tt: Use case gip ngi chi ti li trng thi lu ca game. Cc dng s kin chnh: Ngi chi chn menu File H thng hin th cc menu con cho ngi chi la chn. Ngi chi chn Load. H thng s load li trng thi bn chi. Cc dng s kin r nhnh: Khng c. Tin iu kin: Yu cu ngi chi nhn vo nt File. Hu iu kin: Mn chi c c load li.

Use-case Sound Tm tt: Use case gip ngi chi ci t m thanh cho tr chi Cc dng s kin chnh Ngi chi khi ng chng trnh chn File. H thng s hin th cc la chn cho ngi chi: Save, Load, Sound, Exit. Ngi chi la chn t danh sch l Sound. Chng trnh hin th ln chc nng Tt/bt m thanh. Chng trnh c m ra c mc nh l c m thanh. Ngi chi chn tt m thanh th dng s kin A1 c thc hin. Nu ngi chi ang chi ch khng c m thanh m chn bt m thanh th dng s kin A2 c thc hin. Cc dng s kin r nhnh: Lung s kin A1: m thanh ca tr chi c tt i. Lung s kin A2: m thanh ca tr chi c bt ln. Tin iu kin: Yu cu ngi chi khi ng chng trnh, chn Sound. Hu iu kin: Ngi chi thay i c m thanh ca tr chi.

Use-case Exit Tm tt: Use case gip ngi chi thot tr chi Cc dng s kin chnh Ngi chi khi ng chng trnh chn File. H thng s hin th cc la chn cho ngi chi: Save, Load, Sound, Exit. Ngi chi la chn t danh sch l Exit. Chng trnh c tt v ngi chi thot khi chng trnh. Cc dng s kin r nhnh: Khng c. Tin iu kin: Yu cu ngi chi khi ng chng trnh Hu iu kin: Ngi chi c thot khi chng trnh.

Use-case New Tm tt: Use case gip ngi chi to mn chi mi. Cc dng s kin chnh Ngi chi khi ng chng trnh chn chi Game. H thng s hin th cc la chn cho ngi chi: New v End Game Ngi chi la chn t danh sch l New. Chng trnh c khi ng li nh trng thi lu trc . Cc dng s kin r nhnh: Khng c. Tin iu kin: Yu cu ngi chi khi ng chng trnh Hu iu kin: Ngi chi c to c mn chi mi

Use-case End game Tm tt: Use case gip ngi chi kt thc tr chi Cc dng s kin chnh Ngi chi khi ng chng trnh chn chi Game. H thng s hin th cc la chn cho ngi chi: New v End Game Ngi chi la chn t danh sch l End Game. Chng trnh c tt, ngi chi thot khi tr chi Cc dng s kin r nhnh: Khng c. Tin iu kin: Yu cu ngi chi khi ng chng trnh Hu iu kin: Ngi chi thot c ra khi tr chi

Use-case Rules of the game Tm tt: Use case gip ngi chi hiu c lut chi game. Cc dng s kin chnh: Ngi chi chn menu Help H thng hin th cc menu con cho ngi chi la chn. Ngi chi chn Rules of the game. H thng s bt ca s hng dn lut chi. Cc dng s kin r nhnh: Khng c. Tin iu kin: Yu cu ngi chi nhn vo nt Help. Hu iu kin: Ca s hng dn lut chi bt ra.

Use-case About Tm tt: Use case gip ngi chi bit c thng tin bn quyn ca game ca game. Cc dng s kin chnh: Ngi chi chn menu Help. H thng hin th cc menu con cho ngi chi la chn. Ngi chi chn About. H thng s ca s thng tin bn quyn game ln. Cc dng s kin r nhnh: Khng c. Tin iu kin: Yu cu ngi chi nhn vo nt Help. Hu iu kin: Ca s thng tin bn quyn game hin ra.

2. 3. S lp

Hnh 2. 7. S lp

Cc lp i tng v quan hTn lp/quan hLoi ngha/ghi ch

MainForm SkinConstants1 1..nGame c mt hoc nhiu giao din.

MainForm Algorithm1 - 1..nGame cha mt hoc nhiu quy nh lut chi.

MainForm LineMediaPlayer1 1..nGame cha mt hoc nhiu m thanh.

MainForm HighScore1 - 1Game cha mt danh sch im cao.

MainForm - SaveAndLoad1 1Game cha mt file lu game.

MainForm AppearenceThreadMainForm DestructionThreadMainForm JumpThreadMainForm TimeThreadMainForm MoveThread1 1Game c xy dng t mt cch hin th thi gian, di chuyn bng, ph hy bng v Animation ca bng.

SaveAndLoad GameShapeK tha

PlayList PlayerK tha

2. 4. M hnh trng thi Lp Ball:- S trng thi:

Hnh 2. 8. S hot ng ca Bi

- Danh sch trng thi v s kin:STTTrng Thi NghaX LGhi Ch

1Kim tra tn ti.Kim tra trng hay khng.

2Kim tra thng hngKim tra cc vin bi cng mu c sp xp thng hng.Ph hy nu ng.

CHNG III. THC NGHIM - NG DNG

3. 1. Xy dng chng trnh bng Command Line.3. 1. 1. Phn tch cc cu phn cho Game Lines 98T nhng phn tch chc nng thc hin Chng II, c th chia Game Line thnh cc cu phn nh sau: Cu phn giao din: Cho php thay i giao din ca chng trnh, to cm gic mi l, trnh nhm chn cho ngi chi. ng thi, thay i giao din ph hp hn khi chi trong iu kin nhiu nh sng( ban ngy chn giao din mu sng) hoc t nh sng( ban m chn giao din ti trnh la mt).

Cu phn m thanh game: Cho php thay i cc m thanh pht ra khi cc bng b ph hy, bng di chuyn,...to s cun ht, thch th cho ngi chi. Cu phn lut chi: Cho php mc d, trung bnh hay kh. Ph hp hn vi nhiu i tng, nhiu la tui. Ngi chi c th la chn s lng bng cng mu xp thnh mt hng c th ghi im l 4, 5 hay 6 bng.Cc cu phn ny c built ra thnh th vin file .dll c th c d dng thay th.3. 1. 2. Cu hnh bin mi trng s dng Command LineTrong phn ny, chng ti s hng dn cc bn cu hnh cho my mnh c th chy c Command Line trong Command Prompt ca Windows. Bc 1: Nhn chut phi vo biu tng This PC chn Properties Bc 2: Trong ca s hin ra chn Advanced System Setting Bc 3: Trong hp thoi System Propeties chn Tab Advanced Bc 4: Chn Evironment Variables Bc 5: Trong hp thoi mi hin ra, trong phn User Variable forNu c Path th chn Edit, trong phn Variable Values thm gi tr sau vo cui cng: ;C:\Windows\Microsoft.NET\Framework\v4.0.30319Nu khng th chn New Bc 6: t tn Variable Name: Path, Varilabe Values: C:\Windows\Microsoft.NET\Framework\v4.0.30319 Bc 7: Nhn OK ng tt c cc hp thoi3. 1. 3. Xy dng Game Lines 98 bng Command LineChng ta s to mt folder tn l Lines98_COM cha ni dung ca game. Trong folder ny gm c 4 folder con l: Lines98 cha m ngun ca chng trnh chnh v 3 folder con l cc cu phn cho Game ln lt l: MediaPlayer: Cu phn cho php thay i m thanh trong Game. Rules: Cu phn cho php thay i lut chi trong Game. Themes: Cu phn cho php thay i giao din Game. Hnh 3. 1. Folder cha chng trnhHng dn to cu phn LineMediaPlayer.dllBc 1: Khi ng Developer Command Prompt for VS2013 bng cch:Vo Start, g Visual Studio Tool v chn Developer Command Prompt for VS2013 hoc vo theo ng dn sau:C:\Program Files (x86)\Microsoft Visual Studio 12.0\Common7\Tools\Bc 2: M folder MediaPlayer, to file m ngun LineMediaPlayer.cs vi ni dung sau: using System;using System.Collections.Generic;using System.Text;using System.Media;

namespace MediaPlayer{public class LinesMediaPlayer{ public static SoundPlayer moveSound = new SoundPlayer("Resources/move.wav"); public static SoundPlayer destroySound = new SoundPlayer("Resources/destroy.wav"); public static SoundPlayer cantmoveSound = new SoundPlayer("Resources/cantmove.wav");}}Bc 3: Trong Command PromptChuyn v th mc cha file MediaPlayer.cs bng cch g lnh:Cd C:\Users\Tun\Desktop\Lines98_COM\MediaPlayerBc 4: G lnh sau to file MediaPlayer.dllcsc /t:library /out: MediaPlayer.dll MediaPlayer.csNu thnh cng, bn s nhn thy dng thng bo sau: Hnh 3. 2. To file .dll

ng thi trong th mc MediaPlayer s xut hin file MediaPlayer.dllBc 5: Lm tng t cho cc Cu phn Rules v Themes cn li.

Hng dn to Game Lines 98 bng Command LineBc 1. Copy cc file .dll to ra trn vo th mc Lines98Bc 2. Chun b cc file cn thit cho Game Lines 98 nh cc file .class, file .resx to nn form chng trnh, file App.xml cu hnh, cc ti nguyn cho chng trnh nh hnh nh, icon,... Hnh 3. 3. Cc file ca Game Lines 98

Bc 3: Chy dng lnh sau chuyn file .resx sang dng .resourceresgen AboutMe.resx Lines98.AboutMe.resourcesresgen HighScoresForm.resx Lines98.HighScoresForm.resourcesresgen HowToPlay.resx Lines98.HowToPlay.resourcesresgen MainForm.resx Lines98.MainForm.resourcesresgen WhatsYourName.resx Lines98.WhatsYourName.resources

Bc 4: To file chng trnh chnh .exe bng cch chy dng lnh sau:

csc /t:winexe /r:Themes.dll;MediaPlayer.dll;Rules.dll /resource:Lines98.AboutMe.resources /resource:Lines98.HighScoresForm.resources /resource:Lines98.HowToPlay.resources /resource:Lines98.MainForm.resources /resource:Lines98.WhatsYourName.resources /appconfig:app.config /win32icon:Line-98-2.ico /recurse:*.cs Chng ta c th lnh trn gp cc file resource bng lnh /resource, cc resource c cch nhau bi du ;. Cc file .dll c gi bng lnh /r: , cc file dll ny cng c ngn cch bng du ; S dng /appconfig gi ti file app.config S dng /win32icon to icon chy cho chng trnh. S dng /recurse:*.cs bin dch tt cc file .cs trong cc folder.Nu bn thc hin ng, mt file Program.exe s c to ra trong th mc Lines98.

Hnh 3. 4. Game Line 2008 c to ra

3. 2. Giao din Game Lines 983. 2. 1. Mn hnh chnh Game Lines 98

Hnh 3. 5. Mn hnh chnh Game Line 2008

3. 2. 2. Mn hnh Hng dn

Hnh 3. 6. Mn hnh Hng dn

3. 2. 3. Mn hnh Thng tin Tc gi

Hnh 3. 7. Mn hnh Hng dn

3. 2. 4. Mn hnh High Score

Hnh 3. 8. Mn hnh Hng dn

PHN III KT LUN3. 1. L thuyt Nghin cu thnh cng pht trin phn mm theo cu phn Nghin cu tng quan v cc lp trong th vin .NET Framework Tm hiu v lch s pht trin game Line, cch chi, cch tnh im,...3. 2. ng dng thc hin nhng yu cu: Xy dng hon chnh Game Lines 98. Xy dng giao din v cc chc nng ph hp. Cho php thay i Giao din, Lut chi.Hon thnh game ng dng cu phn giao din v cu phn lut chi.3. 3. Hng pht trinTrong tng lai nhm s tip tc pht trin, nng cao game hn: Chy trn a nn tng: PC, Android, Windows Phone,... Cho php nhiu ty bin v giao din, lut chi. Xy dng giao din mi l, c o, thu ht ngi chi.

TI LIU THAM KHO

1. Ebook: Component-oriented-programming - ANDY JU AN WANG KAI QIAN2. Ebook: Deitel. Web Services, A Technical Introduction, Prentice Hall, 2003.3. Ebook: Chappel, David. Understanding .NET, Addison-Wesley, 2002.4. Website xy dng m ngun bng dng lnh: http://msdn.microsoft.com/en-us/library/ms379563(v=vs.80).aspx5. Website chia s m ngun Game Lines 98: http://katatunix.wordpress.com/2008/08/22/lines-2008-c-version/6. Webiste: http://www.codeproject.com