Tải bản đầy đủ (.docx) (82 trang)

QUẢN Lý d6cntt epu dai

Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (1005.04 KB, 82 trang )

MỤC LỤC
LỜI MỞ ĐẦU


DANH MỤC CÁC BẢNG


DANH MỤC CÁC HÌNH


DANH MỤC CÁC SƠ ĐỒ


KÍ HIỆU CÁC CỤM TỪ VIẾT TẮT

Từ khóa
NCSA

Tiếng Anh

Tiếng Việt

Microsoft Certified Systems

Chứng chỉ xác nhận khả năng

Administrator
MVC

Model – View – Controller


RDB

Redis DataBase file

AOF

Append Only File

Quản trị mạng
Mô hình phân bố
Thực hiện tạo và sao lưu

Lưu lại tất cả các thao tác write
mà server nhận được

Ghi chú: Cụm từ viết tắt là các chữ cái và các ký hiệu thay chữ được viết liền
nhau, để thay cho một cụm từ có nghĩa thường được lặp nhiều lần trong văn bản hoặc
được mọi người mặc nhiên chấp nhận.


LỜI MỞ ĐẦU
We are Social đưa ra báo cáo về Internet và di động năm 2014 thì Việt Nam đã
có những bước tiến đáng kể trong việc mang Internet và nội dung số tới người dùng,
đặc biệt là thông qua những kết nối di động.
Bên cạnh đó, số liệu thống kê cũng chỉ ra rằng Việt Nam là một trong những
quốc gia có thời gian sử dụng trung bình các trang mạng xã hội lâu nhất so với trong
khu vực cũng như trên thế giới. Thêm một thông tin đáng chú ý nữa là chúng ta có
lượng truy cập từ trẻ em lớn từ trên mạng internet
Theo báo cáo trên, mức dân số Việt Nam hiện nay là hơn 92 triệu người, trong
đó, số dân thành thị chiếm khoảng 27 triệu người (31%) và số dân cư nông thôn là 56

triệu người (70%). Cùng với sự phát triển của xã hội, sự thâm nhập của Internet vào
đời sống của người dân cũng ngày một tăng cao. Theo điều tra, hiện nay, số lượng
người sử dụng Internet đã chiếm đến 39% trên tổng dân số. Các trang mạng xã hội như
Facebook cũng đã thu hút được 22% (20 triệu người), số lượng thuê bao di động đang
hoạt động cũng có một số lượng đáng kể đạt mức 134 triệu thuê bao.
Việt Nam là 1 quốc gia đang phát triển nhanh về số lượng người sử dụng internet
và các thiết bị số, đặc biệt là mạng xã hội và thiết bị di động. Xu hướng làm marketing
mới là marketing online, digital marketing, social marketing…. Trang website không
chỉ tạo ra xây dựng thương hiệu mà nó còn kiếm nguồn thu nhập thụ động từ lượt xem
chứa các quang cảo ở trên video youtube .
Thời gian người dùng sử dụng internet trong một ngày càng lớn thì người dùng
càng có khả năng tiếp nhận nhiều nguồn thông tin sử dụng internet với nhiều nhu cầu
và mục đích khác nhau. Tần suất người dùng nhận biết thông tin tăng cao vì online
thường xuyên với lượng thời gian cao. Điều này cũng giúp cho ngạch tiếp thị số hiệu
quả hơn.
Vì vậy phát triển những trang web dạy học, đưa thông tin tới người dùng một
cách nhanh chóng và hiệu quả nhất. Internet giúp cho trẻ em tiếp thu những kiến thức
tiếng anh nhanh chóng.


CHƯƠNG 1:

TỔNG QUAN VỀ ĐỀ TÀI

1.1 Đặt vấn đề
Việc dạy tiếng anh cho trẻ em hiện nay đang được sự quan tâm của rất nhiều giáo
viên, Đặc biệt là các phụ huynh có con nhỏ. Nhưng học việc học như thế nào để có
hiệu quả, Dạy như thế nào để các con không bị quá tải việc học?

Để trẻ có thể thích thú với việc học tiếng anh từ khi còn nhỏ, việc các môn học

khác và việc học tiếng Anh không bị chồng chéo để trẻ có thể học tốt các môn học
khác và cả tiếng Anh làm nền móng cho việc phát triển ngôn ngữ tiếng anh sau này.
Không phải tất cả các phụ huynh đều biết cách xắp xếp cho trẻ học. Tôi xin đưa ra một
số vấn đề như sau:
Với sự hội nhập của nước ta vào nền kinh tế giới trong thời kỳ mở cửa, nhu cầu
học tiếng Anh không còn là một sở thích của một số người có năng khiếu nữa. Việc
học và thông thạo tiếng Anh như một ngôn ngữ giao tiếp quốc tế thông dụng đã được
xác định là thiết yếu cho mọi lứa tuổi. Vì lẽ đó, tiếng Anh đã được Bộ Giáo dục và
Đào tạo quyết định đưa vào chương trình học chính khóa từ lớp 3. Quyết định này đã
thể hiện rõ chiến lược trong giáo dục Việt Nam khi chọn tiếng Anh là trọng tâm
hàng đầu để tiến vào tương lai. Tuy nhiên, để giúp người học đạt được hiệu quả như
mong muốn, cần phải có phương pháp giảng dạy phù hợp với từng lứa tuổi, trình độ và
mục tiêu yêu cầu. Bài báo này tập trung vào đối tượng người học là trẻ em và việc
giảng dạy ngữ pháp tiếng Anh cho bé. Dựa vào yếu tố tâm lý lứa tuổi và các đặc trưng
riêng biệt của trẻ em, bài báo đề nghị áp dụng một số hoạt động vui chơi vào việc
giảng dạy ngữ pháp và có phương pháp dạy tiếng Anh hiệu quả cho trẻ em như là một
trong những phương pháp giảng dạy hiệu quả phù hợp với lứa tuổi của người học.
Ở lứa tuổi từ 5 đến 10 tuổi, trẻ em còn những mặc cảm, vì thế các em rất cần sự
che chở của người thân, thầy cô giáo. Các em rất cần sự yêu thương, chiều chuộng từ
bố mẹ, ông bà. Vì lẽ đó, thầy cô giáo là những người cha, người mẹ ở trường, cần phải
biết khéo léo hướng dẫn các em từ từ phát triển nhân cách một cách độc lập. Vì vậy, sự
nhẹ nhàng, mềm mỏng của giáo viên khi dạy cho trẻ trong lứa tuổi này là điều cần
thiết. Đặc biệt ở lứa tuổi này các em nghĩ rằng mình có thể cưỡng lại tất cả những gì
các em cho rằng người lớn áp đặt lên sự tự do của mình. Vì vậy các em thường tìm
cách đi ngược lại những áp đặt của người lớn mà không hề quan tâm rằng điều đó có
lợi hay hại cho chính bản thân mình hoặc cho người khác. Nắm bắt được đặc điểm này

7



của trẻ, giáo viên nên tránh tạo cho trẻ sự hiểu nhầm về quyền lực và sự áp đặt lên các
hoạt động của trẻ. Các hoạt động học tập mà giáo viên đưa ra là nhằm thỏa mãn nhu
cầu tìm hiểu của trẻ nhiều hơn là đáp ứng mục tiêu giảng dạy của giáo viên. Khi trẻ
cảm nhận sự thoải mái từ phía thầy cô giáo, trẻ sẽ tham gia các hoạt động tích cực và
hiệu quả. Các em bắt đầu ý thức được rằng mình có thể cưỡng lại những gì mà người
lớn muốn áp đặt lên tự do của mình. Sau một đôi lần thành công, các em sẽ tìm cách
tận dụng khả năng này, sao cho có lợi nhất cho bản thân, không cần quan tâm rằng
điều đó có lợi hay có hại cho mình và cho người khác. Ngoài ra, ở lứa tuổi này, các em
sẽ bắt đầu đặt những câu hỏi tại sao. Do vậy, giáo viên cần nên kiên nhẫn lắng nghe
các em và trả lời các câu hỏi đó; đồng thời hướng các em tới những khái niệm bớt vị
kỷ hơn. Giáo viên cũng đừng nên trình bày vấn đề sâu xa quá phức tạp, vượt khỏi sự
hiểu biết của các em. Đối với lứa tuổi này, những cơ hội được tham gia vào các hoạt
động lành mạnh, bổ ích sẽ góp phần không nhỏ vào việc hình thành nhân cách, lòng
nhân ái trong mỗi bản thân các em. Các em có khả năng bắt chước rất nhanh, vì thế
giáo viên nên xem đây là cơ hội để cung cấp cho các em vốn sống và kinh nghiệm
sống thông qua việc thiết kế các hoạt động giảng dạy của mình Một đặc điểm nổi trội
nữa của trẻ em trong lứa tuổi này là thời gian tập trung học không dài, chính vì vậy,
giáo viên nên thiết kế các hoạt động giảng dạy ngắn vừa phải để phù hợp với tâm lý trẻ
em. Ngoài ra, các hoạt động luyện tập cần phải sinh động, vui, tạo cho các em cơ hội
vận động và sử dụng tất cả các khả năng khác của mình như âm nhạc, vẽ tranh, võ
thuật, kể chuyện...
- Chúng ta có thể cho trẻ học tiếng anh qua các bài hát, Các phim hoạt hình tiếng
anh để trẻ có thể làm quen với những ngôn ngữ giao tiếp của trẻ nhỏ. Những phim
hoạt hình mà bạn chọn để trẻ xem thì nên chọn những bộ phim do nước ngoài sản
xuất. Những bộ phim do đó thường được phát âm rất chuẩn nên bạn không cần phải no
lắng việc con bạn phát âm không chuẩn. Việc này rất quan trọng bởi vì trong thời điểm
con bạn còn nhỏ. Việc học tiếng anh cũng giống như trẻ đang tập nói và tập làm quen
với thế giới bên ngoài.
1.2 Mục đích và ý nghĩa của đề tài
Xây dựng một website “Xây dựng trang thông tin dạy tiếng anh cho trẻ em bằng

youtube” chuyên cung cấp video chất lượng trên youtube có chọn lọc uy tín. Đồng thời
website quảng bá các channel nổi tiếng về dạy cho trẻ em…
Tiếng anh không thể thiếu trong nay và mai sau , nó là ngôn ngữ phổ biến giúp
giao tiếp và làm việc.

8


Nắm bắt nhu cầu này, website đem lại kiến thức cho trẻ kiến thức căn bản với
video hình nhân vật ngộ ngĩnh , âm thành bài hát yêu thích bằng tiếng anh
Trang web là nơi các em nhỏ hứng thú đến xem, bổ trợ kiến thức . giúp phụ
huynh học sinh có thể tin tưởng và liên hệ và giáp đáp yêu cầu .Trang wed sẽ thu thập
video hay trên truyền hình , phát lại để các em bỏ lỡ có thể xem lại
Khái quát về hệ thống
Website được chia làm hai phần:
-

Giao diện người dùng: giao diện người dùng cung cấp những chức năng cơ
bản như: hiển thị bài viết, hiển thị video...
• Giao diện trang chủ: hiển thị nội dung, các video mới đăng, slide, quảng cáo..
• Giao diện đăng bài: Giúp thành viên của hệ thống đăng xem và cảm nhận
video , các thông tin của bài đăng như nội dung, hình ảnh,
• Giao diện đăng nhập/ đăng ký: Muốn sử dụng các chức năng của website như
đăng bài, ghim bài, vote… thì người dùng phải đăng nhập vào hệ thống. Nếu
chưa là thành viên bạn có thể đăng ký làm thành viên.
- Giao diện admin: giao diện admin thực hiện quản lý các thông tin của website.
• Quản lý video : các video về vấn đề dậy trẻ học tiếng anh, như truyện kể bài
hát
• Quản lý danh muc : thêm các danh mục mới cho menu và thêm video
Quản lý người dùng: quản lý thông tin thành viên của website và thông tin của

người quản trị cũng như loại người dùng: admin, user…
1.3 Phạm vi đề tài
Cung cấp trang thông tin bổ ích cho người dung và tạo nguồn thu nhập thụ động
cho người tạo website thông qua các lượt xem video chứa các quảng cáo .

9


CHƯƠNG 2:

CƠ SỞ LÝ THUYẾT

1.4 Tổng quan về webserver
1.1.1 Khái niệm webserver
Máy chủ Web (Web Server) là máy tính mà trên đó cài đặt phần mềm phục vụ
web, đôi khi người ta cũng gọi chính phần mềm đó là web server. Tất cả các web
server đều hiểu và chạy được các file *.htm và *.html. Tuy nhiên mỗi web server lại
phục vụ một số kiểu file chuyên biệt chẳng hạn như llS của Microsoft dành cho *.asp,
*.aspx…; Apache dành cho *.php…; Sun Java system web server của SUN dành cho
*.jsp…
Ở phần lõi của máy chủ web là một dịch vụ web phục vụ nội dung tĩnh cho một
trình duyệt bằng cách tải một tập tin từ đĩa và chuyển nó lên mạng, tới một người sử
dụng trình duyệt web. Sự trao đổi hoàn toàn này được thực hiện gián tiếp thông qua
một trình duyệt và một máy chủ kết nối tới một thiết bị khác sử dụng HTTP. Bất kỳ
máy tính nào cũng có thể vào trong một dịch vụ web bằng cách cài đặt phần mềm dịch
vụ và kết nối internet. Trên mạng có rất nhiều các phần mềm ứng dụng dịch vụ web,
bao gồm các phầm mềm cung cấp tên miền từ NCSA và Apache, và các phần mềm
thương mại của Microsoft, Netscape và của nhiều hãng khác.

10



1.1.2 Tổng quan về webserver
Máy Web Server là máy chủ có dung lượng lớn, tốc độ cao, được dùng để lưu trữ
thông tin như một ngân hàng dữ liệu, chứa những website đã được thiết kế cùng với
những thông tin liên quan khác. (các mã Script, các chương trình, và các file
Multimedia)
Web Server có khả năng gửi đến máy khách những trang Web thông qua môi
trường Internet (hoặc Intranet) qua giao thức HTTP – giao thức được thiết kế để gửi
các file đến trình duyệt Web (Web Browser), và các giao thức khác.
Tất cả các Web Server đều có một địa chỉ IP (IP Address) hoặc cũng có thể có
một Domain Name. Giả sử khi bạn đánh vào thanh Address trên trình duyệt của bạn
một dòng sau đó gõ phím Enter bạn sẽ gửi một yêu cầu đến một
Server có Domain Name là www.abc.com. Server này sẽ tìm trang Web có tên là
index.htm rồi gửi nó đến trình duyệt của bạn.
Bất kỳ một máy tính nào cũng có thể trở thành một Web Server bởi việc cài đặt
lên nó một chương trình phần mềm Server Software và sau đó kết nối vào Internet.
Khi máy tính của bạn kết nối đến một Web Server và gửi đến yêu cầu truy cập
các thông tin từ một trang Web nào đó, Web Server Software sẽ nhận yêu cầu và gửi
lại cho bạn những thông tin mà bạn mong muốn.
Giống như những phần mềm khác mà bạn đã từng cài đặt trên máy tính của
mình, Web Server Software cũng chỉ là một ứng dụng phần mềm. Nó được cài đặt, và
chạy trên máy tính dùng làm Web Server, nhờ có chương trình này mà người sử dụng
có thể truy cập đến các thông tin của trang Web từ một máy tính khác ở trên mạng
(Internet, Intranet).
Web Server Software còn có thể được tích hợp với CSDL (Database), hay điều
khiển việc kết nối vào CSDL để có thể truy cập và kết xuất thông tin từ CSDL lên các
trang Web và truyền tải chúng đến người dùng.
Server phải hoạt động liên tục 24/24 giờ, 7 ngày một tuần và 365 ngày một năm,
để phục vụ cho việc cung cấp thông tin trực tuyến. Vị trí đặt server đóng vai trò quan

trọng trong chất lượng và tốc độ lưu chuyển thông tin từ server và máy tính truy cập.

11


1.2 Tổng quan về nginx
1.2.1 Khái niệm
Nginx là một máy chủ proxy ngược mã nguồn mở (open source reverse proxy
server) sử dụng phổ biến giao thức HTTP, HTTPS, SMTP, POP3 và IMAP , cũng như
dùng làm cân bằng tải (load balancer), HTTP cache và máy chủ web (web server). Dự
án Nginx tập trung vào việc phục vụ số lượng kết nối đồng thời lớn (high
concurrency), hiệu suất cao và sử dụng bộ nhớ thấp. Nginx được biết đến bởi sự ổn
định cao, nhiều tính năng, cấu hình đơn giản và tiết kiệm tài nguyên.
Nginx ban đầu được phát triển bởi Igor Sysoev vào năm 2002 và công bố lần đầu
vào năm 2004. Vào tháng 7 năm 2011, công ty Nginx Inc được thành lập và có trụ sở
tại San Francisco, California, USA. Công ty cung cấp sự hỗ trợ thương mại (có tính
phí) vào tháng 2 năm 2012. Vào tháng 10 năm 2013, Nginx nhận được 10 triệu USD
đầu tư từ New Enterprise Associates
Không giống như các chương trình máy chủ khác, Nginx không dựa vào luồng
(threads) để xử lý các truy vấn (request). Thay vào đó, Nginx sử dụng kiến trúc hướng
sự kiện (event-driven) không đồng bộ (asynchronous) và có khả năng mở rộng. Ngay
cả khi bạn không cần phải xử lý hàng ngàn truy vấn đồng thời, thì bạn vẫn nên sử
dụng Nginx do hiệu suất cao và yêu cầu bộ nhớ thấp của Nginx so với Apache. Nginx
có thể được sử dụng trên VPS cấu hình thấp nhất (như gói vps thấp nhất của
digitalocean và vultr) cho đến một hệ thống rộng lớn như cloud server với nhiều
clusters.
Hiện nay (tháng 6/2014), Nginx chiếm 14.6% thị phần (tương đương 142 triệu
trang web) chương trình máy chủ web trên toàn thế giới (theo số liệu của netcraft) và
vẫn đang có mức tăng trưởng cao. Nginx hiện đang được sử dụng bởi các dịch vụ web
có lượng truy vấn cực cao như là Netflix, Hulu, Pinterest, CloudFlare, Airbnb,

WordPress.com, GitHub, SoundCloud, Zynga, Eventbrite, Zappos, Media Temple,
Heroku, RightScale, Engine Yard, MaxCDN, Yandex, Mail.Ru, VKontakte, Rambler.
Những tính năng của máy chủ HTTP Nginx :
• Có khả năng xử lý hơn 10.000 kết nối cùng lúc với bộ nhớ thấp.
• Phục vụ tập tin tĩnh (static files) và lập chỉ mục tập tin.
• Tăng tốc proxy ngược bằng bộ nhớ đệm (cache); cân bằng tải đơn giản và
khả năng chịu lỗi.

12


• Hỗ trợ tăng tốc với bộ nhớ đệm của FastCGI, uwsgi, SCGI, và các máy
chủ memcached.
• Kiến trúc modular; tăng tốc độ nạp trang bằng nén gzip tự động.
• Hỗ trợ mã hoá SSL và TLS.
• Cấu hình linh hoạt; lưu lại nhật ký truy vấn.
• Chuyển hướng lỗi 3XX-5XX.
• Rewrite URL (URL rewriting) dùng regular expressions.
• Hạn chế tỷ lệ đáp ứng truy vấn.
• Giới hạn số kết nối đồng thời hoặc truy vấn từ 1 địa chỉ.
• Khả năng nhúng mã PERL.
• Hỗ trợ và tương thích với IPv6.
• Hỗ trợ WebSockets.
• Hỗ trợ truyền tải file FLV và MP4.
Những tính năng máy chủ mail proxy của Nginx
• Các phương pháp xác thực :
o Pop3: user/pass, apop, auth login/plain/cram-md5.
o Imap: login, auth login/plain/cram-md5.
o Smtp: auth login/plain/cram-md5.
• Hỗ trợ SSL, STARTTLS và STLS

1.3 Tổng quan về yii framework
1.3.1 Giới thiệu
Yii là PHP framework hỗ trợ tốt cho việc phát triển Web 2.0. Yii giúp nhà phát
triển xây dựng những ứng dụng phức tạp với thời gian nhanh nhất. Yii được phát âm là
Yee hoặc [ji:], Yii là viết tắt của “Yes It Is!”. Ý nghĩa của nó là “Is it fast? ... Is it
secure? ... Is it professional? ... Is it right for my next project? ... Yes, it is!”
Yii hoàn toàn miễn phí, là ứng dụng Web mã nguồn mở được phát triển bằng
ngôn ngữ PHP5. Yii giúp cho việc phát triển ứng dụng Web tuân theo một khuôn khổ
nhằm đảm bảo tính hiệu quả, tính mở rộng, và tính bảo trì của sản phẩm.
Tối ưu hiệu suất, Yii là sự lựa chọn hoàn hảo cho các dự án có quy mô. Yii cho
phép nhà phát triển kiểm soát toàn bộ cấu hình. Yii cung cấp các công cụ giúp kiểm tra
và sửa lỗi ứng dụng dễ dàng.
Lịch sử
Yii được sáng lập bởi Qiang Xue, người trước đây đã phát triển và bảo trì Prado
framework. Dự án Yii được bắt đầu từ ngày 01/01/2008 và sau gần một năm phát
triển, ngày 03/12/2008 Yii 1.0 được chính thức phát hành.

13


Ý tưởng
Yii kết hợp nhiều ý tưởng từ các framework và các ứng dựng Web nổi tiếng
khác. Dưới đây là một số ý tưởng Yii đã tham khảo:
• Prado: là nguồn gốc chủ yếu cho ý tưởng phát triển Yii, bao gồm:
component và mô hình lập trình hướng sự kiện, các lớp database, mô hình
kiến trúc ứng dụng, i18n và l10n, và nhiều tính năng khác
• Ruby on Rails: Yii kế thừa quy ước về cấu hình
• jQuery: được tích hợp trong Yii framework
• Symfony: Yii kế thừa ý tưởng về filter và kiến trúc plug-in
• Joomla: Yii kế thừa cách thiết kế module và message translation

Cấu trúc thư mục của Yii
Cấu trúc thư mục Yii
testdrive/
index.php
file đầu vào của ứng dụng
index-test.php
file đầu vào của test chức năng
assets/
gồm các tài nguyên công khai
css/
các file css
images/
các file hình ảnh
themes/
các themes
protected/
thư mục làm việc chính của người lập tình
yiic
yiic command line script cho Unix/Linux
yiic.bat
yiic command line script cho Windows
yiic.php
yiic command line PHP script
commands/
để tùy chỉnh cho 'yiic' commands
shell/
để tùy chỉnh cho 'yiic shell' commands
components/
các components của người phát triển
Controller.php class cha cho tất cả controller

UserIdentity.php class 'UserIdentity' cho authentication
config/
chứa file config
console.php
config cho console
main.php
config cho ứng dụng
test.php
config cho test
controllers/
chứa file controller
SiteController.php lớp controller mặc định
data/
chứa database mẫu

14


schema.mysql.sql MySQL database
schema.sqlite.sql SQLite database
testdrive.db
SQLite database
extensions/
phần mở rộng của third-party
messages/
nội dung đa ngữ
models/
chứa file model
LoginForm.php
form model cho action 'login'

ContactForm.php form model cho action 'contact'
runtime/
file tạm
tests/
test scripts
views/
file view và layout
layouts/
file layout
main.php
layout cơ bản dùng cho tất cả các trang
column1.php layout cho trang 1 cột
column2.php layout cho trang 2 cột
site/
file view cho controller 'site'
pages/
page "static"
about.php view cho page "about"
contact.php view cho action 'contact'
error.php
view cho action 'error'
index.php
view cho action 'index'
login.php
view cho action 'login'

15


Mô hình MVC


Controller

Model

View
Mô hình MVC

MVC là một mô hình kiến trúc phần mềm được sử dụng phổ biến trong phát triển
ứng dụng Web. Mục đích chính của MVC là:
• Tách riêng các thành phần logic với giao diện người dùng
• Giúp cho việc thay đổi các thành phần dễ dàng mà không làm ảnh hưởng
đến các thành phần khác
• Dễ dàng phát triển và bảo trì ứng dụng
Model
Là thể hiện của một cấu trúc dữ liệu cơ bản. Model được sử dụng để lưu trữ dữ
liệu và các quy tắc business liên quan.
Model đại diện cho một đối tượng dữ liệu duy nhất. Nó có thể là một “row” trong
database table hoặc là một form input của người dùng. Mỗi trường (field) của object là
một thuộc tính (attribute) của model.
View

16


View chủ yếu là các yếu tố giao diện người dùng. Chịu trách nhiệm trình bày các
thể hiện của model ở dạng mà người dùng mong muốn. Nó có thể chứa các câu lệnh
(PHP, ASP, …) nhưng chỉ với mục đích trình bày.
Controller
Công việc chủ yếu của controller là điều khiển, xử lý các request của người dùng.

Liên kết model với view. Kiểm soát các response.
Mô hình phát triển MVC tốt

Một mô hình MVC tốt thì cần phải thực hiện đúng các nguyên tắc sau:
Model
Nên
• Chứa các thuộc tính đại diện cho các dữ liệu cụ thể
• Chứa các business logic nhằm đảm bảo các dữ liệu đáp ứng được yêu cầu
thiết kế
• Có thể chứa các mã thao tác với database
Tránh
• Sử dụng $_GET, $_POST hoặc các biến trực tiếp gắn liến với request của
người dùng
• Nhúng các mã HTML hoặc các mã trình diễn khác (echo, …)
View
Nên
• Chứa các mã trình diễn, như HTML, PHP, ASP,… đơn giản để thể hiện,
định dạng dữ liệu
• Có thể truy cập các thuộc tính (property) và phương thức (method) của
controller và model nhưng chỉ với mục đích trình bày
Tránh
• Chứa các mã truy vấn dữ liệu
• Truy cập trực tiếp đến $_GET, $_POST, hoặc các biến tương tự khác đại
diện cho request của người dùng
Controller
Nên
17


• Có thể truy cập $_GET, $_POST và các biến tương tự khác đại diện cho

request của người dùng
• Có thể tạo ra các thực thể (instance) của model
Tránh
• Chứa các câu lệnh truy vấn SQL
• Chứa bất kỳ mã HTML hoặc các ngôn ngữ trình diễn khác

18


1.3.2 So sánh giữa CakePHP và Yii

19


App components
Index.php

Application

20


Cakephp và Yii Framework

CakePHP được đánh giá là framework có mô hình MVC chuẩn nhất, cơ bản nhất.
Các thành phần của CakePHP hoàn toàn tương ứng với mô hình MVC.
Yii cũng sử dụng mô hình MVC trong thiết kế. Ngoài các thành phần cơ bản, Yii
bổ sung thêm một số thành phần (Application, App Components, Widget).

1.3.3 Mô hình làm việc của Yii


21


8
9
6

7

5

4
1

22


Yii basic workflow
Về cơ bản, cách làm việc của Yii được thực hiện qua các bước sau:
• Yêu cầu (request) của người dùng được trình duyệt gửi cho Web server.
Web server chuyển tiếp request cho index.php xử lý. Index.php có chức
năng tạo một thực thể Application và thực thi nó
• Application tạo ra các App Component (App Component là các thành
phần của ứng dụng, vd: UrlManager, HttpRequest)
• App Component gửi các thành phần của mình cho Application quản lý
• Application xác định các controller và action từ request và gửi chúng cho
UrlManager quản lý. Tiếp đến Application tiến hành thực thi controller
• Controller có thể tạo ra các model để xử lý dữ liệu
• Model gửi dữ liệu cho Controller

• Controller gửi các biến, các thể hiện của model cho View
• View tạo ra các Widget
• View thực hiện trình bày trang web
Đôi khi chúng ta cần thay đổi workflow để tùy biến trang web. Yii cho phép
chúng ta làm được điều này qua workflow sau:

23


Index.php
App components

Applicat

24


Yii advanced workflow
1.3.4 Các thành phần của Yii
Các thành phần chính của Yii bao gồm:







Application
Controller
Component

Model
View
Widget

Application
Nhiệm vụ chính của Application là để giải quyết các request của người dùng. Gửi
chúng cho controller thích hợp để tiếp tục xử lý. Application là trung tâm quản lý toàn
bộ cấu hình của ứng dụng.
Các công việc chủ yếu của Application là:
• Chuẩn bị khởi tạo Application (Pre-initializes the application)
• Thiết lập autoloader và điều khiển error (Set up class autoloader and error
handling)
• Đăng ký các App Component côt lõi (Register core application
components)
• Nạp cấu hình ứng dụng (Load application configuration)
• Khởi tạo Application (Initialize the application)
• Raise onBeginRequest event
• Xử lý request của người dùng (Process the user request)
• Giải quyết request của người dùng (Resolve the user request)
• Tạo và thực thi Controller (Create & Run controller)
• Raise onEndRequest event
Để cấu hình Application ta sử dụng file (hoặc array) để khởi tạo giá trị của các
thuộc tính. File cấu hình được chứa trong thư mục protected/config/main.php của ứng
dụng. Cấu trúc như sau:

25


Tài liệu bạn tìm kiếm đã sẵn sàng tải về

Tải bản đầy đủ ngay
×