TRNG I HC M THÀNH PH H CHÍ MINH
KHOA CÔNG NGH THÔNG TIN
H VÀ TÊN SINH VIÊN: LI TRUNG QUÂN MSSV:0851010204
NGUYN HU TRÍ MSSV:0851010295
TÊN ÁN: MÁY TÍNH KHOA HC
BÁO CÁO ÁN NGÀNH
Ngành: Công ngh thông tin
Hng chuyên ngành: C s d liu
Lp: TH08A1
Ging viên hng dn:
Ths. H QUANG KHI
Thành ph H Chí Minh – nm 2012
1
LI CM N
đ án đt kt qu tt đp, trc ht em xin gi li cm n đn toàn th thy,
cô khoa Tin Hc trng i Hc M TPHCM đã trang b cho em các kin thc c bn
v tin hc giúp em hoàn thành tt đ án môn hc này.
c bit em xin gi li cm n đn thy H Quang Khi ngi đã tn tình giúp
đ, vch k hoch hng dn em hoàn thành mt cách tt nht đ án môn hc trong
thi gian qua.
Vi điu kin thi gian có hn cng nh cng nh kin thc còn hn ch s
không tránh khi nhng thiu sót. Em rt mong đc s ch bo, đóng góp ý kin ca
thy cô cng nh toàn th các bn đ em có th b sung, nâng cao kin thc giúp đ án
đc hoàn chnh hn.
Trong báo cáo này em có s
dng và tham kho mt s ngun:
Video hng dn s dng và lp trình bng Visual Studio 2010 trên din
đàn
www.tinhte.vn
Ebook Programming Windows Phone 7, by Charles Petzold
Msdn for Window Phone
Em xin chân thành cm n.
2
MCLC
LI CM N 1
NI DUNG 3
PHN 1: GII THIU V CÔNG C LP TRÌNH 3
I. H IU HÀNH WINDOW PHONE 7: 3
1. Gii thiu: 3
2. Tính nng ni bt: 4
3. Yêu cu phn cng: 5
4. Phn mm và giao din: 6
II. PHÁT TRIN NG DNG CHO WINDOW PHONE 7: 6
1. Côngnghpháttrin:SilverlightvàXNA.
6
2. Visual Studio 2010 (công c phát trin ng dng) : 7
2.1 Giithiu: 7
2.2 Cài đt môi trng phát trin ng dng: 8
2.3 Các thành phn ca Visual Studio Express for Window Phone 9
PHN 2: ÁN THC HIN 19
MÁY TÍNH KHOA HC 19
I. GII THIU TNG QUAN 19
1. Máy tính khoa hc là gì? 19
2. Lýdochntài 20
3. NidungcôngvicvàsnphmDemo 20
3.1 Tun1:tìmhiu 20
3.2 Tun3:xâydng
projectMáyTínhKhoaHc 23
3.3 Tun5:thêmcácchcnngmrng 24
3.4 Tun7:tínhbiuthc 25
3.5 Tun9:kimtrali,chydemo 25
4. Hng
dnsdng: 25
4.1 Cácphímxlý: 25
4.2 Cácphíms: 26
4.3 Cácphímphéptính: 26
4.4 Cácphímvbnh: 26
4.5 Cácphímkhoahc: 26
5. KTLUN
27
3
NI DUNG
PHN 1: GII THIU V CÔNG C LP TRÌNH
I. H IU HÀNH WINDOW PHONE 7:
1. Gii thiu:
Windows Phone 7 đc gii thiu ln đu vào ngày 24/5/2011 vi tên gi là
Mango.
Windows Phone 7 đc Microsoft thit k da trên tiêu chí giúp lp trình viên d
dàng hn trong vic to nên các ng dng RIA (Rich Internet Application) vi công
ngh nn tng da trên .Net, Silverlight và XN Frame Work. Vi nhng lp trình viên
đã tng làm qua Silverlight thì vic chuyn sang Windows Phone 7 là mt vic rt d
dàng. Không ch có th, Microsoft còn u ái cho các nhà sn xut vi vic to nên mt
môi trng phát trin và thit k cc k đn gin và có th chy đc trên phn cng
ca nhiu hãnh khác nhau nh HTC, Sony, LG….
4
Windows Phone 7 tích hp tt c các nn tng công ngh ca Microsoft nh Build
at Run Time, Service, Application, vi tham vng to ra mt h điu hành Mobile tích
hp môi trng cho phát trin nhng ng dng Enterprise, Microsoft đã tích hp vi
các h thng nh Microsoft Exchange, Windows Live® network, Microsoft
SharePoint® Team Service. ngoài ra lp trình viên còn có th phát trin các ng dng
trên Cloud trên nn Windows Azure™ và có th d dàng đa sn phm chào bán
trên Windows Marketplace.
2. Tính nng ni bt:
- Threads: s cung cp tính n
ng cho phép ngi dùng trao đi qua li gia các tin
nhn, Facebook chat và Windows Live Messenger, tt c trong cùng mt cuc hi
thoi.
- Linked Inbox là tính nng đc thit k đ kt hp ni dung t nhiu tài khon
email vào trong cùng mt hp th.
- Hands-free messaging là tính nng mi ca Windows Phone Mango, cho phép
chuyn đi ging nói thành vn bn và ngc li.
- Groups: tính nng có cha toàn b các nhóm liên lc. Ngi dùng Windows
Phone Mango có th gi tin nh
n, email hoc chat vi toàn b bn bè trong nhóm
ngay t màn hình khi đng.
- Tích hp và tng cng tính nng mng xã hi: Windows Phone Mango tích
hp tt hn vi Twitter, LinkedIn và cho phép ngi dùng cp nht tin tc t
Facebook nhanh chóng hn. Nn tng di đng mi này đc trang b thêm công ngh
nhn din khuôn mt, cho phép ngi dùng d dàng chia s (tag) nhng hình nh có
trên Facebook.
- App Connect: các ng dng s đc tích hp vào Windows Phone Hubs, cho
phép ngi dùng truy c
p ng dng nhanh chóng và d dàng hn.
5
- a nhim: Các ng dng có th chy nn, cho phép ngi dùng nhanh chóng và
d dàng chuyn đi qua li gia các ng dng đang chy. Theo Microsoft, tính nng
đa nhim trên Windows Phone Mango s không làm nh hng đn hiu sut và thi
lng pin.
- Trình duyt Internet Explorer 9: Microsoft s trang b cho Windows Phone
Mango phiên bn di đng ca IE9, vi sc mnh tng đng IE9 phiên bn trên PC,
vi kh nng h tr HTML5 và s dng phn cng đ tng tc đ x lý trang web.
- Tính nng Local Scout cho phép ngi dùng thun li hn trong vic tìm kim
các đa danh và đim đn ti v trí lân cn mà h đang .
- Công c tìm kim Bing trên Windows Phone Mango s đc tích hp thêm tính
nng tìm kim bng hình nh (Bing Vision), tìm kim âm nhc và tìm kim bng
ging nói.
3. Yêu cu phn cng:
iu làm nên s khác bi
t là Microsoft đy mnh vai trò ca mình trong vic quyt
đnh các phn cng đc h tr. Microsoft đã mô t rõ hình nh chic đin thoi h
mong mun: mt tri nghim đng nht gia các “chú d” khác nhau. Tuy nhiên, điu
này không đng ngha vi s thiu đa dng: ta s thy rt nhiu thit b khác nhau, có
và không có bàn phím.
ây là yêu cu cu hình cn thit:
Màn hình WVGA vi mt t l duy nht
5 nút nhn: bt đu (Start), quay lui, tìm kim (Bing), quay phim và ngun.
CPU và GPU cm ng đin dung đa đim (nh là Snapdragon ca
Qualcomm).
Wi-Fi
AGPS
Cm bin gia tc
6
FM radio
Máy nh đ phân gii cao
4. Phn mm và giao din:
Giao din này rt ging Zune HD, thc ra nó đc xây dng t Zune và Windows
Media Center UI đ to thành "Metro". Microsoft tp trung vào kiu ch và các hiu
ng chuyn đng, các màu c bn và không gian ti thiu.
Màn hình khi khóa hin th ngày, gi, lch làm vic, tin nhn, cuc gi nh và
mt tm hình ln, có th kéo đ m khóa. Màn hình chính bao gm các khi (ngi
dùng chnh đc) liên kt đn ng dng, s đa ch, trang web, tp nh
Khái nim "hubs" đc Microsoft gii thiu là "ng dng m ca cho các ng
dng". Khi vào mt hub, ta s có mt giao din cun ngang vi hàng lot d liu, c
trong đin thoi ln t đám mây.
Các ng dng c bn cng có giao din tng t, nhng đn gin hn, tp trung
vào mt chc nng duy nht, nh SMS hoc email. Mt nút tìm kim cm ng cnh s
cho kt qu vi đôi chút khác bit, tùy theo ta đang ng dng nào.
Mt bàn phím o hoàn toàn mi, vi chc nng t sa li.
II. PHÁT TRIN NG DNG CHO WINDOW PHONE 7:
1. Công ngh phát trin: Microsoft phát trin Windows Phone 7 da trên hai
công ngh : Silverlight và XNA.
- Silverlight xut phát t WPF (Window Presentation Foundation), WPF dùng
XAML (Extensible Application Markup Language) đ làm nn tng thi
t k UI và
dùng .Net đ programming. bit thêm thông tin Silverlight ta có th tham kho ti
hoc đ tham kho thêm.
- XNA đc thit k đ da trên các “software”, ”services” , “resources”,
và “communities”mc đích đ tp trung vào vic phát trin Game và Media-Rich-
7
Application. XNA bao gm XNA Game Studio Express, the Microsoft DirectX®
application programming interface và các Game Tool cng nh các công ngh khác
giúp lp trình viên có th tp ra nhng sn phm “hight performance”, đ hiu rõ
hn ta có th tham kho ti
Tóm gn li Microsoft thit k Windows Phone 7 vi ba tiêu chí chính:
+ Design: End Users Come First (chú trng v cách d dùng nht cho ngi dùng).
+ PlaftForm: Fun and Easy to build complelting Apps and Games.
+ Hardware: Optermized and sandardized.
2. Visual Studio 2010 (công c phát trin ng dng) :
2.1 Gii thiu:
Bao gm Windows Phone SDK 7.1, cung cp công c min phí đ
phát trin ng
dng cho Windows Phone s dng .NET, Silverlight và XNA.
Windows Phone SDK 7.1 cung cp các công c cn thit dành cho nhng ngi
dùng Windows Phone s dng Windows Phone 7 hoc thit b 7.5. Bên cnh đó, công
8
c này còn giúp tng hiu sut làm vic. Nó cng bao gm c Microsoft Advertising
SDK for Windows Phone.
Các ng dng Windows Phone: Môi trng phát trin tích hp (IDE) vi Visual
Studio rt d dàng s dng và là công c mnh m dùng đ xây dng ng dng
Windows Phone
2.2 Cài đt môi trng phát trin ng dng:
phát trin ng dng trên Windows Phone 7 trc ht chúng ta cn cài đt các
công c cn thit sau:
+ Visual Studio 2010 Express for Windows Phone
Nu các bn x dng VisualStudio 2010 Ultimate thì không cn cài . Chúng ta
vn có th s dng visualStudio 2008 đ phát trin ng dng cho Windows Phone 7.
Phn mm Yêu cu:
H điu hành h tr:
Windows Vista (x86 và x64) Service Pack 2 - tt c các phiên bn ngoi tr
Starter Edition.
Windows 7 (x86 và x64) - tt c các phiên bn ngoi tr Starter Edition
9
Yêu cu phn cng:
Cài đt yêu cu 4 GB dung lng đa trng trên đa h thng, 3 GB RAM
Windows Phone Emulator đòi hi DirectX 10 card đ ha có kh nng vi mt
trình điu khin WDDM 1,1
Windows Phone SDK 7.1 là tng thích vi phiên bn cui cùng ca Visual
Studio 2010 SP1
2.3 Các thành phn ca Visual Studio Express for Window Phone
+ Express Blend 4 for Windows Phone
ây là công c đ thit k giao din đ ha cho Windows Phone 7, Microsoft có
mt b dùng đ thit k
đ ha đó là Microsoft Expression Studio (bn này tính phí),
còn bng dành cho Windows Phone là min phí.
Công c này rt mnh m và hiu qu trong vic phát trin các ng dng giàu
tính tng tác và đ ha ca client. Hin ti có đn khong 80% trang web đu dùng
Flash thit k các banner. Bt đu t khi Silverlight ca Microsoft ra đi thì mi
10
chuyn đã khác. Microsoft cng tung ra 1 công c thit k các ng dng RIA ging
nh công c Flash Professional. Công c này gi là Expression Blend
+ Silverlight for Windows Phone 7
Silverlight thc hin qua trình duyt ca NET Framework đ xây dng các ng
dng truyn và các ng dng tng tác cho các trang Web trên máy tính đ bàn, cng
nh cho Windows Phone.
Silverlight đc ti u hóa đ hin th ni dung trên các thit b hn ch b nh.
Silverlight cho Windows Phone đc lu tr trên thit b ca khách hàng và không h
tr các ng dng đc lu tr trong trình duyt.
Mc tiêu ca Microsoft là làm cho Silverlight hoàn toàn tng thích trên tt c
các thit b và h điu hành. Tuy nhiên, có mt s s khác bit v phn cng và thit b
c th.
11
+ XNA Game Studio for Windows Phone 7
Cng ging nh CoreOPenGL hay CoreGraphic trong lp trình Iphone, XNA là b
th vin chuyên v đ ha Game 2D và 3D ca Microsoft, thêm vào đó s là công c
thay th cho Direct.
H tr tuyt vi cho c hai đin thoi Windows 7 và Xbox 360.T chi game trên
đin thoi di đng Windows 7 đn Xbox 360, XNA Game Studio 4.0 to ra nhng c
hi mi cho phát trin ca Microsoft.
XNA Game Studio đc thit k đ phát trin các trò chi cho Microsoft
Windows, Xbox 360, và đin thoi Windows. XNA Game Studio m rng vi s h
tr XNA Framework và các công c. XNA Framework là mt mã lp qun lý th
vin có cha các tính nng nhm mc tiêu c th là phát trin trò chi. Ngoài ra,
XNA Game Studio bao gm các công c đ thêm ni dung đ ha và âm thanh trò
chi.
12
XNA Framework đc thit k da trên . NET Framework . Vi XNA Game Studio,
bn có th s dng c XNA Framework và . NET Framework đ phát trin trò chi.
+ Windows Phone Emulator
Windows Phone Emulator là mt ng dng gi lp mt đin thoi Windows 7
hoc thit b đin thoi Windows 7.1. Nó cung cp mt môi trng o mà bn có th
phát trin, g li, và th nghim các ng dng Windows Phone. Nó cng cung cp
mt môi trng đ phát hin sm các ng dng b cô lp. Bng cách s dng gi lp,
bn có th tin hành thông qua các ng dng phát trin chung mà không có mt thit
b vt lý. iu này có th làm gim các chi phí phát trin ng dng cho Windows
Phone.
Windows Phone Emulator đc thit k đ so sánh hiu sut vi mt thit b
thc t, và đ đáp ng các thông s k thut ca thit b ngoi vi cn thit cho phát
trin ng dng. Tuy nhiên, trc khi bn xut bn các ng dng Windows
13
Marketplace đin thoi, bn nên th nghim ng dng ca bn trên mt thit b thc
t.
+ Phone Registration Tool
iu quan trng là đ th nghim các ng dng đin thoi Windows ca bn
trên mt thit b vt lý. Trc khi bn có th trin khai mt ng dng trên đin
thoi Windows, trc tiên bn phi đng ký cho đin thoi ca mình, trong đó yêu cu
mt tài khon hot đng trên AppHub. Mi tài khon cho phép đng ký ba thit b phát
trin ng dng. bit thêm thông tin v vic làm th nào đ to mt tài khon hãy
tìm hiu App Hub Registration Walkthrough. Sau khi bn to mt tài khon và đin
thoi ca bn đã đc đng ký, bn có th cài đt, chy, và sa li các ng dng trên
đin thoi.
14
đng ký đin thoi Windows ca bn, bn s dng công c Windows Phone
Developer Registration. Công c này đc cài đt t đng khi bn cài đt Windows
Phone SDK.
Cu trúc Project:
App.xaml/App.xaml.cs: nh ngha đu vào ca ng dng, khi to các resource
mc ng dng và hin th giao din ng dng
MainPage.xaml/MainPage.xaml.cs: nh ngha trang giao din khi đu ng dng
ApplicationIcon.png: nh icon ng dng trong application list ca phone
Background.png: nh icon ng dng màn hình start.
SplashScreenImage.jpg: nh đu tiên hin th khi launch ng dng
Properties\AppManifest.xml: File manifest dùng đ to ra gói ng dng
Properties\AssemblyInfo.cs: Cha tên và thông tin phiên bn đc nhúng vào trong
file assembly khi compile
Properties\WMAppManifest.xml: File manifest cha các thông tin riêng ca ng
dng Windows Phone Silverlight.
15
File App.xaml vi các XAML markup (Extensible Application Markup
Language):
Gm mt root element
là Application
và phn
Application.Resources
cha các
resources mc ng dng nh color, brushes, style object…
Bên cnh đó nó khi to 1 thuc tính ApplicationLifetimeObject đ to ra đi
tng PhoneApplicationService, đi tng qun lý các thuc tính và trng thái ng
dng khi nó active hoc inactive.
File
App
đnh ngha mt instance ca lp
Application
cha ng dng
Silverlight for
Windows Phone.
File code behind:
16
ng dng Silverlight for Windows Phone cha 1 thuc tính là RootFrame đnh
ngha Page bt đu ng dng. Tt c các ng dng Windows Phone ch có mt thành
phn container mc trên cùng vi kiu d liu là PhoneApplicationFrame. Frame này
cha 1 hoc nhiu PhoneApplicationPage biu th ni dung ca ng dng đng thi
x lý vic navigate gia các page.
Project cng cha 1 page default là MainPage.xaml đnh ngha giao din
chính ca ng dng.
Bn có th
dùng designer ca Visual Studio đ thit k UI ca ng dng ngay trc
tip. Toàn b UI ca ng dng đc xây dng bng cách s dng XAML – mt ngôn
ng khai báo ging kiu XML.
17
Properties
window:
chnh sa mt s thuc tính đc bit ca phone ta có th s dng. Các thuc
tính này s lu tr trong file WMAppManifest.xml, liên quan đn vic deploy ng
dng và giao din ca ng dng trên thit b.
Cách build và deploy mt ng dng: Cng ging nh các ng dng .NET
thông thng, đ build ng dng ta dùng t hp phím Shift+F6 hoc Ctrl+Shift+B.
Sau đó xác đnh mun deploy th trên Windows Phone Emulator hay trên 1 Phone
tht.
18
Chn Windows Phone Emulator và ch cn nhn F5 đ launch ti ng dng trên
Emulator này. Các công vic còn li Visual Studio s t đng thit lp môi trng
cho emulator và deploy image ca ng dng lên emulator.
Mt th thut khi debug ng dng Windows Phone: Tránh đóng emulator khi còn
thc hin coding ng dng, bi khi simulator còn chy nó s mt rt ít thi gian khi
to mt session debug mi.
19
PHN 2: ÁN THC HIN
MÁY TÍNH KHOA HC
I. GII THIU TNG QUAN
1. Máy tính khoa hc là gì?
Mt máy tính đin t là mt máy tính xách tay nh, thit b đin t thng đc s
dng đ thc hin các hot đng c bn ca s hc. Máy tính hin đi có kh nng di
đng nhiu hn so vi hu ht các máy tính, mc dù hu ht các PDA có th so sánh
kích thc vi các máy tính cm tay.
Máy tính đin t trng thái rn đu tiên đc to ra trong nhng nm 1960, xây
dng trên lch s ca các công c nh bàn tính, phát trin khong nm 2000 trc
CN, và các máy tính c khí, phát trin trong th k 17. Nó đc phát trin song song
vi các máy tính tng t ngày nay.
Các thit b b túi tr nên ph bin trong nhng nm 1970, đc bit là sau khi phát
minh ra b
vi x lý đc phát trin bi Intel cho máy tính Busicom.
Máy tính đin t hin đi khác nhau t giá c, kh nng di đng, t kích thc
bng th tín dng đn các mô hình máy tính đ bàn mnh m thit lp trong máy in.
Chúng tr nên ph bin vào gia nhng nm 1970 vi kích thc và chi phí nh. n
cui thp k đó, giá máy tính đã gim mt cách đáng k và đc ph bin trong các
trng hc.
H điu hành máy tính đu tiên là Unix bao gm các chng trình máy nh dc và
hoc, và chc nng máy tính đc tích hp hu nh trong tt c các thit b PDAs.
Máy tính ngoài các mc đích chung, nhiu ngi thit k cho các th trng c th,
ví d: có máy tính khoa hc trong đó bao gm các phép tính lng giác và thng kê.
Mt s máy tính thm chí có kh nng đ làm đi s máy tính. Máy tính v đ th có
th s d
ng đc chc nng đ th .
20
Nm 1986, 41% máy tính đc s dng vi mc đích tính toán thông thng. iu
này gim di 0,05% vào nm 2007.
2. Lý do chn đ tài
Là mt thit b gn gi quen thuc vi mi ngi, đc s dng trong vic tính
toán hng ngày, giúp tit kim thi gian trong vic tính toán và tránh sai sót.
Lp trình bng phn mm Visual Studio For Window Phone vi ngn ng lp trình
C# đã đc hc trên lp.
Phát tri
n mt ng dng Calculator trên Window Phone thêm nhiu chc nng m
rng so vi máy tính tích hp sn trên đin thoi.
3. Ni dung công vic và sn phm Demo
3.1 Tun 1: tìm hiu
Tìm hiu v công c lp trình Visual Studio 2010 Express for
Windows Phone, cu trúc solution trong các ng dng Windows Phone 7
Ngôn ng lp trình C#.
Làm quen vi vic write, test, deloy, debug ng dng Window
Phone trên Microsoft Visual Studio 2010 Express for Windows Phone và Window
Phone Emulator.
Cài đt và chy th : t
o ng dng đu tiên HelloWP7
t tên project là HelloWP7
21
Ca s Version s hin ra, và ta chon version 7.1
Cu trúc c bn ca solution đc sinh ra bi Window Phone Application Project
Template, vi 2 file đc quan tâm nhiu nht là App.xaml,App.xaml.cs và
MainPage.xaml,MainPage.xaml.cs
22
Ý ngha các file trong Solution Explorer
App.xaml/App.xaml.cs: đnh ngha đu vào ca ng dng, khi to các
resource mc ng dng và hin th giao din ng dng.
Mainpage.xaml/Mainpage.xaml.cs: đnh ngha trang giao din ngi dùng
ca ng dng.
Application.png: nh icon ng dng trong application list ca phone
Background.png: nh icon ng dng màn hình start.
SplashScreenImage.jpg: nh đu tiên hin th khi chy ng dng.
Properties/AppManifest.xml: file manifest dùng đ
to ra gói ng dng.
Properties/AssemblyInfo.cs: cha tên và phiên bn đc nhúng vào trong
file assembly khi complie.
Properties/WMAppManifest.xml: file manifest cha các thông tin riêng
ca ng dng Window Phone Silverlight.
References Folder: danh sach libreries mà ng dng cn đ làm vic
ng dng có cha 1 Caption, 1 Textbox đ ngi dùng nhp vào, mt Textblock
hin th ni dung ngi dùng nhp vào khi click vào nút Button
23
Qua phn này chúng ta đã bit đc cách xây dng, trin khai, chy th mt ng
dng trên Window Phone Emulator.
3.2 Tun 3: xây dng project Máy Tính Khoa Hc
Thit k giao din vi các phép tính c bn cng, tr, nhân, chia,
cn bc 2, M+, M-, MC, delete…
Vit code cho các phép tính c bn.
ng dng bao gm các button s đ ngi dùng nhp và các
button cho các phép tính.
24
Qua phn này chúng ta ôn li các kin thc lp trình bng C# đã đc hc trên
lp, áp dng vit code cho đ án Máy Tính Khoa Hc vi các phép tính cng, tr,
nhân, chia, s thp phân…
3.3 Tun 5: thêm các chc nng m rng
Thêm các hàm lng giác, x
2
, x
3
, s pi, s e, tính lng giác theo
rad và theo đ
Thit k màn hình hin th ging máy tính Casio gm 2 phn,
phn hin th phép tinh và phn hin th kt qu.
Vit code cho các hàm lng giác.