You are on page 1of 6

TM HIU V NGN NG LP TRNH SWIFT

H tn: L Vn Phong
MSSV: 11020424

I. Gii thiu v ngn ng lp trnh Swift

Swift l mt ngn ng lp trnh hon ton mi, hin i v an ton. Swift c Apple pht
trin trong sut 4 nm va qua v mi c gii thiu ti WWDC 2014.
Swift c cha rt nhiu nhng c tnh c cc lp trnh vin yu thch nhiu ngn ng khc
nhau nh: Objective-C, Rust, Haskell, Python, C#, CLU v nhiu ngn ng khc!
Swift s gip qu trnh pht trin ng dng cho ngi dng tr nn d dng hn, nhanh hn, n
nh hn, p ng c nhu cu ca cc coder hn.
C php ca Swift n gin v chnh xc hn nhiu v iu ny gp phn lm gim i phn
no nhng ro cn khi mt lp trnh vin mun bt u pht trin cc ng dng cho iOS v Mac
OS!
II. c im ni bt
1. Hin i hn
Swift l kt qu ca nghin cu mi nht v ngn ng lp trnh, kt hp vi kinh nghim qua
nhiu thp k xy dng cc nn tng ca Apple. Cc thng s c t tn a v pha trc
t Objective-C c th hin trong mt c php trong sch m lm cho cc API trong Swift
thm ch cn d dng hn c v duy tr.
Dng phng on lm cho code sch hn v t b li, trong khi loi b cc m-un tiu v
cung cp khng gian tn. B nh c qun l t ng, v thm ch bn khng cn phi g
du chm phy.

Swift c nhiu tnh nng khc lm cho m ca bn biu cm hn:
ng thng nht vi con tr chc nng
B d liu v nhiu gi tr tr v
Generics
Lp li nhanh chng v ngn gn trong mt dy hoc b su tp
Cu trc h tr phng php, m rng, giao thc.
M hnh lp trnh chc nng, v d nh: bn v b lc
2. Thit k an ton hn
Nhanh chng loi b ton b lp ca m khng an ton. Bin lun khi to trc khi s dng,
mng s nguyn v c kim tra v b nh c qun l t ng. C php c iu chnh
lm cho n d dng xc nh { nh ca bn - v d, n gin t kha ba k t nh
ngha bin (var) hoc khng i (cho php).

Cc m hnh an ton ti Swift c iu chnh cho Cocoa mnh m v Cocoa API Touch. Hiu
r v x l{ ng trng hp i tng l bng khng l c s cho cc khun kh, v Swift
code lm cho iu ny rt d dng. Thm mt nhn vt duy nht c th thay th nhng g
tng l ton b mt dng m trong Objective-C. iu ny tt c lm vic vi nhau thc
hin xy dng cc ng dng iOS v Mac d dng hn v an ton hn bao gi ht.
3. Nhanh v mnh hn
Nhanh chng v mnh m T { tng sm nht ca n, Swift c xy dng c nhanh
chng. S dng trnh bin dch LLVM cc kz hiu sut cao, Swift code c chuyn thnh m
gc ti u, iu chnh tn dng ti a ca phn cng my Mac, iPhone, iPad v hin i.
C php v tiu chun th vin cng c iu chnh thc hin mt cch r rng nht
vit m ca bn cng hot ng tt nht. Swift l mt k tha ca C v Objective-C. N
bao gm nguyn thy mc thp nh Dng, kim sot dng chy, v cc nh khai thc.
N cng cung cp cc tnh nng hng i tng nh cc lp, cc giao thc, v Generics,
Cocoa v Cocoa Touch pht trin hiu sut v sc mnh m h yu cu
4. Tng tc vi Playgrounds
Playgrounds lm cho vit m Swift cc kz n gin v vui v. G mt dng m v kt qu
xut hin ngay lp tc. Nu m ca bn chy theo thi gian, v d thng qua mt vng, bn
c th xem nhng tin b trong cc tr l thi gian. Dng thi gian hin th cc bin trong
mt th, thu ht mi bc khi son mt ci nhn, v c th ng mt cnh SpriteKit ng.
Khi bn hon thin m ca bn Playgrounds, ch n gin l di chuyn m vo d n
ca bn.

Mt s s dng Playgrounds bao gm:
Thit k mt thut ton mi, xem kt qu ca n mi bc ca qu trnh
To th nghim mi, xc minh h lm vic trc khi xc tin thnh b kim tra
ca bn
Th nghim vi cc API mi trau di k nng Swift vit m ca bn

5. Read-Eval-Print-Loop (REPL)
G li giao din iu khin trong Xcode bao gm mt phin bn tng tc ca cc ngn ng
Swift ngay trong chng trnh. S dng c php Swift nh gi v tng tc vi cc ng
dng ca bn chy, hoc vit m mi xem cch n hot ng trong mt mi trng kch
bn nh th no. C sn t bn trong giao din iu khin Xcode, hoc trong Terminal.



III. u, nhc im ca Swift
1. u im
- Kh nng pht trin ng dng di ng v kim tra thnh qu ca mnh theo thi gian thc s gip
cho qu trnh code ca cc lp trnh vin tr nn nhanh v d dng hn rt nhiu. Ngoi ra, vic
khng phi chy chng trnh compiler v cc chng trnh test qu thng xuyn cng s tit
kim c sc mnh phn cng cho nh pht trin. Thay v tp trung kim tra, th nghim cc tnh
nng nh l, lp trnh vin Swift c th dnh nhiu thi gian thc hin cc bi test mc tch
hp cao hn mt cch k cng hn.



- Li ch th 2 ca Swift l cc dng code rt ngn v d c. Trong bi trnh by ca Apple, 3 dng
code Objective C c th gi gn vo 1 dng code Swift. iu ny s y nhanh qu trnh pht trin
ng dng v tng hiu qu cho qu trnh bo tr/v li trong tng lai.

- Swift hot ng tng t mt phin bn Objective C n gin, vi cc lp i tng c n
gin ha, v cc dng m c sp xp hp l. Vi Swift, Cc nh pht trin s c mi trng
runtime tng t Objective C, do vy n rt quen thuc v d qun l.
- Ngoi s n gin v phng thc sp xp hp l{ hn cho vic sng to ng dng, X Code runtime
c thc hin trong thi gian thc cho Swift. Vit mt dng m v nhn c kt qu trong thi
gian thc, v hnh nh cng c th c xem t bn trong IDE. X Code cng s dng cc kch
bn(script) thc hin trong cc ng dng, v vy theo Apple ni th lp trnh vin c th qun l tt
hn mt ng dng trnh s c trn b nh.

- Swift c th lm vic lin mch vi Objective C, v vy cc ng dng hin ti c th c cp nht
bng Swift. Cc nh pht trin cng c th s dng cc cng c hu ch ca Objective C ngay chnh
trn Swift (c th sng chung vi m C v Objetive-C trong cng mt ng dng).
- Swift to ra cc ng dng c sc p phn cng thp hn Objective-C, chng ta s c tn hng
tri nghim game n tng hn trn cc thit b iOS.
2. Nhc im
- im yu ln nht ca Swift c l s l tui i qu tr ca ngn ng lp trnh ny. C th hn,
s dng Swift, cc nh pht trin s phi hc li mt ngn ng lp trnh hon ton mi. V cng
ng cng cha c nhiu, Cc nh pht trin ng dng iOS s mt mt khong thi gian ng k
lm ch ngn ng mi ca Apple.

- Do vn cn ang trong giai on pht trin nn cn non tr cn c thi gian cng ng kim
nghim v nh gi u/nhc v tnh hiu qu so vi Objective C c tui i trn 30 nm.

You might also like