Archive for Tháng Sáu 2008

Web 2.0: Hiện Tượng và Bản Chất

Tháng Sáu 29, 2008

Hôm nay, web 2.0 không còn là một khái niệm khó hiểu do một nhóm những người “cấp tiến” nắm giữ những bí quyết nữa. Nó đã trở thành câu chuyện hàng ngày trên các mặt báo và cả trong… quán café. Cách đây vài hôm tôi có nghe được câu chuyện của hai người trong bữa ăn trưa thế này:
A: …thế còn web 2.0 là thế nào nhỉ, nghe nói hay lắm phải không?
B: Ah, web 2.0 là do bây giờ đường truyền mạnh nên đưa mọi thứ lên web…
Qua câu chuyện có thể thấy người ta bắt đầu không thỏa mãn với cái web hiện tại. Không có gì ngạc nhiên cả vì ngày nay hầu như không người sử dụng web nào không “đụng” tới một ứng dụng Web 2.0 và một khi đã dùng rồi thì họ sẽ tự hỏi sao các trang web còn lại không làm được như vậy. Ở phía các doanh nghiệp, một trong số các khách hàng lớn nhất của công ty tôi cũng đang có một “big plan” chuyển toàn bộ ứng dụng nghiệp vụ của họ lên chuẩn web 2.0…
Tôi cũng không nghĩ anh B giải thích sai về Web 2.0 nhưng dường như mỗi người đều cố diễn giải về web 2.0 theo cách nghĩ riêng của mình. Ngay cả khi bạn đọc kỹ từng câu, từng chữ bài viết của Tim O’Reilly (và cả các bài khác trên blog này thì tôi cũng dám đoan chắc là bạn khó có thể hiểu web 2.0 thực sự là gì. Nó là mạng xã hội, là trí tuệ tập thể, là blog, là AJAX, mashup, tag hay là một giao diện bóng bảy?
Sai lầm lớn nhất của giới báo chí và những người cổ vũ cho web 2.0 là dùng hiện tượng giải thích cho nguyên nhân. Tất cả những cái như mạng xã hội, blog… chỉ là kết quả của một quá trình thay đổi về tư duy đã diễn ra trong những năm gần đây. Web 2.0 là có thực nhưng nó không phải là cái mà bạn có thể định nghĩa thông qua một vài ví dụ hay vài mỹ từ. Web 2.0 cũng không hẳn là cái mà bạn chỉ biết được khi bạn thấy nó. Thật không may, những ngôn từ hoa mỹ, những khẩu hiệu giật gân thường phủ bóng lên những điều quan trọng nhất. Sàng lọc lại, đây là những cái mà chúng ta nên hiểu về bản chất của Web 2.0:
Web 2.0 là tự do về dữ liệu: Có rất nhiều bạn nói rằng họ không hiểu rõ về web API, RSS, mashup, tag… Nói chung đó là những công cụ giúp bạn lấy dữ liệu từ những nguồn khác nhau trên web mà không cần phải vào trang web đó. Dùng API của Flickr bạn có thể xem các hình ảnh trên trang web này mà không cần phải vào Flickr. Dữ liệu ở trên web luôn có rất nhiều và trước kia người ta không thể lấy về dùng một cách tự động và tiện lợi. Web 2.0 đã thỏa mãn giấc mơ đó.
Web 2.0 là băng thông rộng: Web 2.0 tận dụng việc phổ biến của đường truyền băng thông rộng như ADSL, cáp quang… Bạn thử tưởng tượng việc xem một đoạn video trên YouTube với kết nối dial-up sẽ thế nào? Nếu không có băng thông rộng thì hầu hết các ứng dụng Web 2.0 sẽ chỉ có ý nghĩa trong một trường thí nghiệm.
Web 2.0 là sự liên kết: Web 2.0 là sự liên kết giữa người với người (MySpace), giữa các từ khóa, khái niệm với nhau (Wikipedia), giữa các website (Mashup)… Bản chất, Web 2.0 thay đổi cách liên kết từ quan hệ một-nhiều (one-to-many, tức là từ một website tới những người truy cập) sang quan hệ nhiều-nhiều (many-to-many) bằng các mối liên kết mới.
Web 2.0 đặt con người lên trên công nghệ: Tuần báo Time đã bầu “person of the year” năm 2006 là YOU. Tại sao? Bạn, con người, chính là trung tâm của web 2.0, và theo báo Time, cuộc cách mạng Web 2.0 là tâm điểm của năm 2006! Đây cũng chính là đặc điểm dễ thấy nhất của Web 2.0, nó hiểu người dùng cần gì trên Web và thỏa mãn họ.
Web 2.0 cho phép người dùng “sử dụng” dữ liệu chứ không chỉ “lấy” dữ liệu: Công đầu của công nghệ AJAX không phải là làm cho các ứng dụng web dùng giống như các ứng dụng desktop mà giúp người dùng dễ dàng thay đổi, thêm, bớt dữ liệu tùy ý trên web thay vì chỉ có thể “đọc” chúng như những bản tin.
Web 2.0 làm cho người ta không còn nghĩ Web chỉ là một dạng báo điện tử hay một kiểu TV khác: Hmm, đã có lúc người ta coi Web là một dạng truyền thông như báo chí hay TV vì tính một chiều của nó. Nhưng web 2.0 cho thấy giờ đây có những cái bạn chỉ có thể làm thông qua Web chứ không thể qua báo chí hay TV. Tính tương tác mà Web 2.0 đem lại làm cho Web vượt qua khái niệm một trang báo điện tử: nó sẽ trở thành một phương tiện giao tiếp hơn là một công cụ tuyên truyền.
Cuối cùng, nếu bạn đã hiểu bản chất web 2.0 là gì thì điều quan trọng nhất khi làm một trang web 2.0 là hãy tưởng tượng ra cái gì bạn không thể làm được nếu không có WEB.

—————————–

Trước khi nói về Web2.0, thì chúng ta nên tìm hiểu về khái niệm của WEB2.0 một chút.
Và thực chất là tới giờ chưa ai có thể định nghĩa được WEB2.0 là gì cả? Tại sao? mình cũng chẳng biết, chỉ có một số suy nghĩ về vấn đề này. Chỉ vì có nhiều công nghệ và kỹ thuật hướng tới user nhiều hơn và từ đó hình thành nên 1 ý tưởng về khái niệm mới của WEB.
Và ở đây, mình xin nói sơ qua một chút về WEB2.0 trước khi đi sâu vào AJAX, một nhân tố hình thành nên thuật ngữ WEB2.0. Cái này các bạn có thể search trên google ra cả mớ, nên mình chỉ tóm tắt ngắn gọn.
Một website được gọi là theo “khái niệm” WEB2.0 khi nó có một số kỹ thuật sau:
– Rich Internet Applications, RIAs, cái này là ưu tiên của web2.0, không có gì khó hiểu cả. Thực ra là website khi nhận được yêu cầu của user sẽ không load lại trang.Một số framework của nó AJAX, Dojo, Flex(render to Flash), Openlaszlo(render to Flash).
– CSS(Cascading Style Sheets): cái này chuyên về kỹ thuật mất rồi.
– Semantically valid HTML markup and the use of Microformats: Cái này hơi dài dòng nhưng tóm lại là “human first, machine second”, có một số thứ sẽ là tiêu chuẩn(html,các frameworks, một số chuẩn data) để từ đó tiếp tục xây dựng lên những cái cao hơn.
– RSS,Atom: bạn nào đã xài qua RSS thì biết.
– URLs rõ ràng và đủ ý nghĩa.
– Có thể phân loại và tìm kiếm thông tin trên Internet dễ dàng(categorize and retrieve web content).
– Dùng các phần mềm wikia để chia sẻ thông tin, các user có quyền create và edit các article của các user khác…
– Dùng các phần mềm open source(Linux, Apache, MySQL,…) để phát triển và share.
– Tiêu chuẩn hóa một số định dạng XML cho để trao đổi thông tin được dễ dàng (Soap,…)
– Blog.
– Dùng các third-party tin cậy và giao tiếp qua API của nó.
– Dùng XML web service để chia sẻ và lấy thông tin giữa các website.
Nói chung ý tưởng của WEB2.0 thậm chí có thể lên 3.0 có thể gói gọn trong ý tưởng:
“Bạn nghĩ thế nào khi máy tính chỉ cần 1 cái Browser và bạn có thể làm việc và tìm kiếm thông tin trên nó?”. Office online, cái gì cũng online tất, chỉ có lưu trữ ở dưới ổ cứng thôi. Hệ điều hành cũng online ráo: nói cái này nhiều bạn sẽ nói mơ tưởng, nhưng thực chất nhờ nhờ browse chúng ta có thể kết nối đến một nguồn hệ điều hành nào đó và load đủ để chúng ta có thể làm việc và tìm kiếm thông tin.
Một vài suy nghĩ về WEB2.0, bài tiếp theo theo mình sẽ nói về AJAtại sao lại là Asynchronous JavaScript and XML).

Links

Tháng Sáu 29, 2008

http://vnfx.com/vb/forumdisplay.php?s=88fb536a977811890f0faed96fd6279b&f=22

Nhập môn Flex hay RIAs là gì?

Tháng Sáu 29, 2008

Để cổ vũ cho phong trao Flex của người Việt, mình xin có đôi điều về Flex. Hầu hết những thông tin dưới đây là dựa theo cuốn “Adobe Flex 2 : Training from the source”. Nếu có gì sai, mọi người hiệu đính giúp nhé  .
Sự ra đời của RIAs :
o

Từ những ngày khởi thủy của những ứng dụng trên máy tính đều được thực hiện trên các mainframe. Các máy trạm chỉ làm nhiệm vụ hiển thị thông tin được xử lý từ các mainframe. Sau đó, tốc độ phát triển phần cứng cho các máy trạm (từ đây ta sẽ gọi chung là clients , mặc dù không đúng lắm ) nhanh như vũ bão. Từ tốc độ xử lý, hệ thống lưu trữ, bộ nhớ đến các thành phần khác dành cho clients đều phát triển rất nhanh.Như vậy, nếu chỉ dành toàn bộ việc tính tóan cho mainframe, và các clients chỉ để hiển thị thông tin sẽ vô cùng lãng phí tài nguyên.

o

Sau đó đến giai đoạn phát triển của các ứng dụng dạng client/server. Lại có vấn đề về hệ thống phân tán. Sẽ mất nhiều công sức cho việc cài đặt, bảo dưỡng các ứng dụng trên clients. Rồi việc đảm bảo các ứng dụng trên clients phải tương thích với các platforms khác nhau.

o

Vào những năm 90, internet ra đời. Việc sử dụng các web browsers cho các thin clients được áp dụng rất mạnh mẽ và hiệu quả. Nhưng (lại nhưng) kiểu lập trình page-to-page, khiến các nhà phát triển ứng dụng rất khó khăn, mệt mỏi và có rất nhiều hạn chế. Rồi các giao diện người dùng đơn điệu, không hiệu quả. Để cố gắng khắc phục những nhược điểm này, RIA (Rich Internet Application – vì đây là 1 thuật ngữ nổi tiếng, nên mình sẽ ko dịch ra nữa,, mà mình cũng chưa biết dịch là gì  ) đã ra đời. Vậy RIA là gì?

RIA :
o

Có khả năng tương tác với DOM (Document Object Model), xây dựng những ứng dụng chạy trên nhiều loại browsers và platforms.

o

Có khả năng sử dụng được các đối tượng trên server như web services hay những công nghệ tương tự khác, làm cho các ứng dụng trên clients có thể kết nối với server minh bạch hơn, dễ dung hơn.

o

Có khả năng làm việc “offline”. Dữ liệu được đưa về clients, xử lý tại clients, sau đó trả lạ cho server, tránh việc quá tải đường truyền cũng như hệ thống xử lý của server.

Các khuynh hướng xây dựng 1 ứng dụng RIAs hiên nay :
o

Hiện nay có 4 trường phái xây dựng RIAs : đầu tiên là Ajax (Asynchronous Javascript and XML) : sử các công cụ như Dojo, OpenRico, Backbase và Yahoo ToolKit. Tiếp theo là RIAs trên nền Flash Player với các công cụ như Flex, Laszlo ( đây là công cụ Open source). Thứ 3 là Windows Presentation Foundation (WPF) sử dụng .NET framework 3. Cuối cùng là Java, với các công cụ như : AWT, Swing, và Eclipse RCP. Trong đó, dường như WPF và Java nhắm vào ứng dụng desktop hơn là RIAs, mặc dù chúng đều có thể phát triển cho RIAs.

o

Ajax : là 1 thuật ngữ. Nó được các nhà phát triển kết hợp từ nhiều công cụ (HTML,DHTML, Javascript), công nghệ, để chuyển dữ liệu từ server tới client mà không phải reload lại page. Thực ra, trước đây IFrames đã làm được những công việc này. Gần đây, Java script sử dụng XMLHttpRequest để thay thế applets, Iframe.

o

Flash : Là nền tảng để triển khai RIAs. Trước đây, flash được phát triển nhằm mục đích phục vụ xây dựng animations. Sau nhiều thập kỷ thành công, tới nay có tới 97% (theo Adobe Flex 3 : Training from the Source) các web browsers có cài đặt flash. Adobe nhận ra rằng, với flash có thể làm nhiều hơn việc chỉ phát triển animations. Vì thế Flex đã ra đời.

o

Laszlo : là phần mềm open source với nền tảng phát triển là Javascript và XML và chạy trên nền flash. Các ứng dụng cũng được biên dịch thành các files SWF. Vì là công cụ open source nên Laszlo cũng gắn bó chặt chẽ với LAMP (Linux, Apache, MySQL và PHP).

o

Flex : (vì Flex là cái chúng ta đang quan tâm nên mình tách riêng ra 1 mục) được xây dựng với nền tảng là Eclipse. Flex 1 là phần mềm open source. Tuy nhiên, vào giữa năm 2006, Adobe đã thương mại hóa Flex 2, với những tính năng và ưu điểm vượt trội bản Flex 1. Gần đây, Adobe đã chính thức phát hành Flex 3 có những phần đáng chú ý như : Adobe AIR, cải thiện đáng kể hiệu năng của những files SWF. Có khả năng tích hợp các middle layers ngay trong ứng dụng như : PHP, ColdFusion, WebService, Flex Data Server (hay còn gọi là FDS). Từ phiên bản Flex 2 trở đi, các ứng dụng sử dụng ActionScript 3 và chạy trên nền Flash Player 9. Flex cho miễn phí Flex SDK, cũng như AIR SDK, chỉ thương mại Flex Builder (với giá bản full của Flex Builder 3 Pro là 699$). Thêm nữa, Flex là sự kết hợp không thể tách rời của ngôn MXML và ActionScript.

o

Windows Presentation Foundation (WPF) : là 1 tập hợp các công cụ để xây dựng các ứng dụng RIAs trên nền Windows.

WPF : nền tảng để xây dựng và chạy RIAs.
 XAML : ngôn ngữ xây dựng nên RIAs.
 C# : IDE để viết ra RIAs
 Microsoft Expression : cũng là 1 công cụ để viết RIAs.

RIA Technologies

Tháng Sáu 29, 2008

Ngày nay, các nhà phát triển có khá nhiều lựa chọn khi xây dựng các RIAs (Rich Internet Applications). Trong số những lựa chọn phổ biến nhất có các lựa chọn dựa trên HTML, như Ajax (Asynchronous Javascript and XML), cũng như các tùy chọn dựa trên plug-in như Adobe Flash, Adobe Flex, và Laszlo đều chạy trên nền Flash Player. Một lựa chọn mới từ phía Microsoft xem ra vẫn còn là viễn cảnh, đó là XAML và Windows Presentation Foundation.
Các ứng dụng RIAs hiện nay dựa trên bốn môi trường thời gian chạy (run time) khác nhau. Gồm có Ajax, được hỗ trợ bởi Dojo, OpenRico, Backbase và Yahoo ToolKit; Flash Player được Flex và Laszlo sử dụng; Windows Presentation Foundation (WPF); và Java, được AWT, Swing và Eclipse RCP sử dụng. Xem ra cả hai giải pháp Java và WPF đều đang hướng đến các ứng dụng để bàn hơn là các RIAs, mặc dù cả hai đều có thể được sử dụng cho các RIAs.
Asynchronous Javascript and XML (Ajax)
Một trong số những lựa chọn dễ hiểu nhất là Ajax. Ajax dựa trên các công cụ đã quen thuộc với các nhà phát triển: HTML, DHTML và JavaScript. Ý tưởng đằng sau Ajax là sử dụng JavaScript để cập nhật trang mà không cần phải tải lại. Một chương trình JavaScript chạy trên trình duyệt có thể chèn dữ liệu mới vào trang web hoặc thay đổi cấu trúc bằng cách điều tác HTML DOM mà không cần phải tải lại một trang mới. Các cập nhật có thể bao gồm dữ liệu mới được ngầm tải về từ server (sử dụng XML hoặc các các định dạng khác) hoặc có thể là sự phản ứng lại với tương tác người dùng, như một cú click hoặc hover chuột.
Các dạng đầu tiên của Ajax sử dụng các Java applets cho việc truyền thông từ xa. Khi các công nghệ trình duyệt phát triển, các phương tiện khác, như việc sử dụng các IFrames, đã thay thế các applets. Trong những năm gần đây, XMLHttpRequest đã được đưa vào JavaScript để hỗ trợ truyền dữ liệu mà không cần tải trang mới, applet, hay IFrame.
Ngoài lợi ích ở việc sử dụng các yếu tố đã quen thuộc với các nhà phát triển ứng dụng mạng, Ajax cũng không yêu cầu thêm các plug-in để chạy nó. Ajax hoạt động hoàn toàn dựa trên khả năng sử dụng JavaScript và DHTML của trình duyệt. Tuy nhiên, sự lệ thuộc vào JavaScript của Ajax lại đưa điến một trong những hạn chế mới của nó: Ajax không thể hoạt động nếu người dùng vô hiệu hóa JavaScript trên trình duyệt.
Một vấn đề khác của Ajax là sự hỗ trợ DHTML và JavaScript khác nhau theo từng trình duyệt và từng nền tảng. Đối với các ứng dụng mà nhà phát triển có thể lựa chọn người sử dụng cho nó (như các ứng dụng intranet), Ajax có thể được viết để hỗ trợ một trình duyệt trên một nền tảng cụ thể (nhiều hoạt động thương mại ngày nay có các trình duyệt và hệ điều hành tiêu chuẩn). Tuy nhiên, khi cần  mở rộng cho nhiều người dùng (như các ứng dụng extranet và Internet), các ứng dụng Ajax cần phải được kiểm tra (và thường cần phải được điều chỉnh) để đảm bảo rằng chúng chạy như nhau trên tất cả các trình duyệt và hệ điều hành.
Cần chú ý rằng bản thân Ajax không thực sự là một môi trường lập trình. Thực sự nó là một tập hợp của các thư viện JavaScript. Một số các thư viện có chứa các thành phần có thể sử dụng lại được thiết kế để đơn giản hóa các tác vụ thường gặp. Vì Ajax thiếu một nhà phân phối công nghệ tập trung hóa, nên việc tích hợp các thư viện này vào ứng dụng phụ thuộc vào các hãng thứ ba, và tất nhiên kèm theo đó là những nguy cơ của nó.
Flash
Một trong những môi trường thời gian chạy mang tính cạnh tranh trong không gian RIA là nền tảng Flash của Adobe (Flash Platform). Flash Platform hiện đang là đối thủ xứng tầm với Ajax trong việc phát triển các RIAs. Lúc đầu chỉ được viết để làm plug-in chạy các hoạt cảnh, Flash Player đã tiến hóa trong nhiều năm, với mỗi phiên bản được thêm những tính năng mới trong khi vẫn duy trì được thiết kế rất nhỏ gọn. Chỉ trong mười năm qua, Flash Player đã đạt đến độ gần như có mặt ở khắp nơi, với một số phiên bản được cài đặt trên hơn 97% các trình duyệt web trên Internet. Từ năm 2002, Macromedia (giờ đây là một phần của Adobe) đã bắt đầu tập trung phát triển Flash để nó không còn là một công cụ hoạt hình đơn thuần nữa. Và với phiên bản Flash 6, Macromedia đã bắt đầu cung cấp nhiều khả năng hơn cho xây dựng các ứng dụng. Macromedia nhận thức được rằng với sự kết hợp giữa tính phổ biến của player và sức mạnh sẵn có từ ngôn ngữ kịch bản của nó (ActionScript), các nhà phát triển có thể xây dựng các ứng dụng hoàn toàn dựa trên trình duyệt mà vẫn vượt qua được các hạn chế của HTML.
Xây dựng các ứng dụng hướng Flash Player, các nhà phát triển có thể tránh được các không tương thích về trình duyệt và nền tảng. Một trong những tính năng hấp dẫn của Flash Player đó là nội dung và các ứng dụng đã được phát triển cho một phiên bản cụ thể của Flash Player sẽ (thường) chạy được trên mọi nền tảng/trình duyệt hỗ trợ phiên bản player đó. Với một số ít ngoại lệ, đến nay điều này vẫn đúng.
Xét về mặt lịch sử, hạn chế lớn nhất trong việc xây dụng các ứng dụng cho Flash Player đó là môi trường authoring, rõ ràng nó đã được xây dựng như một công cụ hoạt hình cho người dùng sáng tạo nội dung tương tác. Nhiều nhà phát triển muốn xây dựng các RIAs cho Flash Player đã gặp phải trở ngại do không quen sử dụng các công cụ này. Điều này, cùng với việc thiếu vắng tài liệu dạy sử dụng Flash như một nền tảng ứng dụng vào năm 2002, đã làm nhiều nhà phát triển không thành công khi xây dựng các ứng dụng Flash.
Mặc dù Flash Player vẫn còn là một nền tảng tuyệt vời để xây dụng các RIAs, nhưng sự xuất hiện các giải pháp như Laszlo và Flex đã đơn giản hóa rất nhiều quá trình phát triển và giảm số lượng các RIAs được phát triển trực tiếp trong Flash Studio.
Laszlo
Nhận thấy nhu cầu về các công cụ thân thiện hơn cho các nhà phát triển xây dựng các RIAs, Laszlo Systems đã phát triển một ngôn ngữ và trình biên dịch cho phép các nhà phát triển làm việc với các ngôn ngữ quen thuộc mà tứ đó trình biên dịch của họ có thể tạo ra các ứng dụng chạy trên Flash Player.
Giống như Ajax, các ứng dụng Laszlo được xây dựng với JavaScript và XML, nhưng chúng chạy trên Flash Player, vì vậy tạo ra được các trải nghiệm người dùng phong phú của một hệ khách để bàn (desktop client) kết hợp với việc triển khai các tiện lợi của các ứng dụng web truyền thống. Flash Player cũng cung cấp khả năng chạy hầu như trên mọi trình duyệt web và hệ điều hành. Không giống như các ứng dụng Ajax, Laszlo sử dụng một trình biên dịch để biên dịch XML và JavaScript vào một file SWF. Điều này cho phép các nhà phát triển tự do thay đổi các mức độ hỗ trợ JavaScript cho nhiều nền tảng khác nhau.
Một điểm tương tự khác giữa Laszlo và Ajax đó là truy cập dữ liệu thường được thực hiện bằng cách tải XML từ phía server.  Với sự xuất hiện gần đây của OpenLaszlo servlet, các ứng dụng Laszlo giờ đây có thể sử dụng các dịch vụ web dựa trên Simple Object Access Protocol (SOAP). Cuối năm 2004, nền tảng này đã trở thành nguồn mở và do đó miễn phí cho việc phát triển và triển khai.
Đến thời điểm này, hạn chế lớn nhất của Laszlo đó là một trong những thế mạnh ban đầu của nó lại dựa trên JavaScript. JavaScript định kiểu lỏng lẻo (loosely typed); hiện thời, nó không hỗ trợ nhiều khái niệm hướng đối tượng nền tảng (chẳng hạn như các lớp thật [true classes]), mà cộng đồng phát triển hiện đang sử dụng. Hạn chế thứ hai là nó không cho phép các nhà phát triển tương tác trực tiếp với các APIs của Flash Player, thay vì thế bạn phải sử dụng các APIs được thể hiện qua các thẻ (tags) và JavaScript API tương ứng.
Là một công cụ mã nguồn mở, Laszlo phù hợp cho những nhà phát triển trên các sản phẩm mã nguồn mở “LAMP” (Linux, Apache, MySQL, and PHP).
Server của Laszlo thế hệ kế tiếp được dự đoán là có khả năng sử dụng cùng ngôn ngữ XML và JavaScript để tạo ra cả các ứng dụng Flash hoặc Ajax. Nếu điều này trở thành sự thật, tập công cụ Laszlo chắc hẳn sẽ rất có giá trị.
Flex
Cũng với nhiều lý do tương đồng với việc phát triển Laszlo, Macromedia đã thực hiện dự án của riêng họ để tạo ra một lộ trình thân thiện hơn cho các nhà phát triển xây dựng các ứng dụng cho Flash Player. Vào năm 2004, Macromedia đã cho ra mắt Flex 1.0 (sau đó là Flex 1.5 và Flex 2.0 vào các năm 2005 và 2006). Về mặt kiến trúc, các ứng dụng Flex tương tự với các ứng dụng Ajax, ở chỗ cả hai đều có khả năng cập nhật động giao diện người dùng, cũng như khả năng gửi và tải dữ liệu chạy nền (send and load data in the background).
Dòng sản phẩm Flex 2 cung cấp các dịch vụ và các công cụ phát triển thế hệ kế tiếp cho phép các nhà phát triển ở khắp mọi nơi có thể xây dựng và triển khai các RIAs trên nền tảng Flash.
Dòng sản phẩm Flex 2 gồm các thành phần sau:

  • ActionScript 3.0 Một ngôn ngữ lập trình hướng đối tượng mạnh mẽ cung cấp sức mạnh cho các khả năng của nền tảng Flash. ActionScript 3.0 được thiết kế để tạo ra một ngôn ngữ phù hợp lý tưởng để xây dựng nhanh chóng các RIAs. Mặc dù các phiên bản ActionScript trước đã cung cấp sức mạnh và tính linh động cần thiết để tạo ra các trải nghiệm người dùng hấp dẫn, nhưng ActionScript 3.0 đã phát triển ngôn ngữ nhiều hơn nữa, tăng cường hiệu năng và tính dễ phát triển để hỗ trợ các ứng dụng phức tạp nhất với các tập dữ liệu lớn và hướng đối tượng đầy đủ, cũng như khả năng sử dụng lại mã.
  • Flash Player 9 (FP9) Được xây dựng trên nền Flash Player 8, thế hệ Flash Player kế tiếp tập trung vào việc tăng cường hiệu năng thực thi mã script. Để đạt được điều này, Flash Player 9 bao gồm một ActionScript Virtual Machine (AVM) mới được tối ưu hóa cao độ và được gọi là AVM2. AVM2 đã được xây dựng lại hoàn toàn để làm việc với ActionScript 3.0. Máy ảo mới này nhanh hơn đáng kể, và hỗ trợ báo cáo lỗi thời gian chạy cũng như khả năng debug được tăng cường rất nhiều. Flash Player 9 cũng bao gồm cả AVM1 chạy ActionScript 1.0 và 2.0 để tương thích với mã hiện có. Không giống như các ứng dụng được xây dựng với JavaScript, Flash Player có khả năng sử dụng tiến trình biên dịch Just In Time (JIT) để chạy nhanh hơn và tiêu tốn ít bộ nhớ hơn.
  • Flex Framework 2 Sử dụng nền tảng được cung cấp bởi FP9 và ActionScript 3.0, framework đã thêm vào một thư viện lớp phong phú cho phép các nhà phát triển dễ dàng sử dụng những kinh nghiệm tốt nhất để xây dựng thành công các RIAs. Flex sử dụng ngôn ngữ dựa trên XML, được gọi là MXML, cho phép các nhà phát triển quản lý theo cách khai báo các yếu tố của ứng dụng. Các nhà phát triển có thể truy cập vào Flex framework thông qua Flex Builder hoặc bộ Flex SDK miễn phí, bao gồm một trình biên dịch và gỡ lỗi command-line, cho phép các nhà phát triển có thể sử dụng bất cứ trình biên tập mã yêu thích của họ mà vẫn truy cập trực tiếp được với trình biên dịch hoặc gỡ lỗi.
  • Flex Builder 2 Một công cụ cung cấp cho các nhà phát triển một môi trường chuyên dụng để xây dựng các RIAs. Được xây dựng dựa trên Eclipse project mã nguồn mở, tiêu chuẩn công nghiệp, Flex Builder 2 cung cấp một môi trường viết mã và gỡ lỗi xuất sắc, một công cụ thiết kế phong phú và hữu ích, và khuyến khích những kinh nghiệm viết mã và phát triển ứng dụng tốt nhất. Một lợi ích khác của nền tảng Eclipse là nó cung cấp các khả năng mở rộng phong phú, vì vậy có thể dễ dàng viết các tùy biến để mở rộng IDE nhằm đáp ứng các nhu cầu hoặc sở thích cá nhân.
  • Flex Data Services 2 (FDS2) Các phiên bản trước của Flex bao gồm các dịch vụ thời gian chạy để hỗ trợ truy cập dữ liệu và tích hợp với các cơ sở hạ tầng server hiện có. Flex Data Services 2 đưa ý tưởng này lên một tầm cao mới bằng cách thêm vào tập các công cụ hiện có các dịch vụ dựa trên thông điệp (message-based services) để đồng bộ hóa dữ liệu qua tất cả các tầng của một ứng dụng. Điều này tăng cường đáng kể hiệu suất làm việc của các nhà phát triển cũng như các khả năng của ứng dụng RIA. Ngoài ra, FDS2 cũng để lộ một cơ sở hạ tầng thông điệp (messaging infrastructure) hùng mạnh, cho phép truyền dữ liệu thời gian thực (real-time data streaming), khả năng thực thi true server-side push, cũng như publish-subscribe messaging. Một tập các tính năng khác của FDS2 liên quan đến khả năng xây dựng và triển khai nhanh chóng các ứng dụng kết nối không thường trực (occasionally connected applications), để người dùng vẫn có dữ liệu làm việc mặc dù không kết nối Internet. Các dịch vụ này giúp đồng bộ hóa dữ liệu khi người dùng kết nối trở lại với Internet.

Windows Presentation Foundation/XAML/Expression
Microsoft công bố họ sẽ cho ra mắt một tập các công cụ cho phép các nhà phát triển xây dựng các RIAs trên nền tảng Windows. Hệ thống mới này gồm có:

  • Windows Presentation Foundation (WPF) (trước đây có tên mã là Avalon). WPF tương tự như Flash Player và Flex frameworks.
  • Extensible Application Markup Language (XAML). Ngôn ngữ dựa trên XML để bạn xây dựng các ứng dụng WPF. XAML tương tự như ngôn ngữ MXML của Flex.
  • C# Ngôn ngữ lập trình được sử dụng để xây dựng các ứng dụng cho WPF, tương tự như ActionScript 3.0 cho các ứng dụng Flex.
  • Microsoft Expression. Một công cụ thiết kế chuyên nghiệp được thiết kế để làm việc với XAML và cho phép các nhà thiết kế tạo ra giao diện người dùng và cách ứng xử trực quan cho các ứng dụng WPF, tương tự như Flash Studio để thiết kế các ứng dụng Flex.
  • Visual Studio. Microsoft công bố các kế hoạch xây dựng phiên bản kế tiếp của Visual Studio làm việc với XAML, WinFX, C# và VB.Net.

Sử dụng các công cụ này, Microsoft đang khuyến khích một dòng làm việc (workflow) trong đó các nhà thiết kế tạo ra các giao diện người dùng hấp dẫn, và sau đó các nhà phát triển có thể thực thi logic hoạt động và truy cập dữ liệu sử dụng Visual Studio. Hiện nay các thành phần của hệ thống trên đều đã ra mắt, ngoại trừ phiên bản kế tiếp của Visual Studio.
(Lược dịch từ Adobe Flex 2: Training from the Source)

Breaking away from the Page-based Architecture

Tháng Sáu 29, 2008

Breaking away from the Page-based Architecture
Đối với các nhà phát triển web có kinh nghiệm, một trong những thách thức lớn nhất trong việc xây dựng các RIAs đó là tách khỏi kiến trúc dựa trên trang (page-based architechture). Các ứng dụng web truyền thống dựa trên khái niệm trang web (web page). Không cần biết những công nghệ nào (nếu có) được sử dụng ở phía server, quá trình hoạt động đi qua những bước như sau:
1.  Người dùng mở một trình duyệt và yêu cầu tải một trang web từ phía server.
2.  Web server nhận yêu cầu.
3.  (optional) Web server gửi yêu cầu cho một server ứng dụng để tổng hợp trang động, hoặc
4.  (optional) Web server nhận trang web tĩnh từ hệ thống file.
5.  Web server gửi trang (tĩnh hoặc động) trở lại trình duyệt.
6.  Trình duyệt vẽ trang vào nơi trước đây nội dung đã được hiển thị.
Thậm chí trong những tình huống mà phần lớn nội dung của trang trước giống với của trang mới, toàn bộ nội dung của trang mới vẫn cần phải được gửi cho trình duyệt để render. Đây là một trong những hạn chế của các ứng dụng web truyền thống: mọi tương tác người dùng đều cần phải tải một trang mới về trình duyệt. Một trong những mục đích then chốt của các RIAs đó là giảm lượng dữ liệu dư thừa cần phải được tải cho mỗi yêu cầu người dùng. Thay vì tải toàn bộ trang, tại sao lại không tải chỉ những dữ liệu đã thay đổi và cập nhật lại trang mà người dùng đang xem? Đây là cách mà các ứng dụng để bàn hoặc các ứng dụng client/server vẫn hoạt động.
Mặc dù mục đích này xem chừng đơn giản và đã được chấp nhận bởi các nhà phát triển RIA đầu tiên, nhưng các nhà phát triển web lại thường mang ý tưởng page-based để áp dụng cho các ứng dụng RIA và cố gắng tìm cách giải quyết những thách thức đến từ thế giới của page-based, chẳng hạn như làm thế nào để “duy trì trạng thái”. Ví dụ, sau khi người dùng đăng nhập, làm thế nào để biết họ là ai và họ được phép làm những gì khi điều hướng qua các phần khác nhau của ứng dụng?
Duy trì trạng thái từng là một thách thức cho các ứng dụng dựa trên web (web-based applications). HTTP đã được thiết kế như một giao thức không có trạng thái (stateless protocol), mà trong đó mỗi yêu cầu gửi đến server là một đơn vị hạt nhân không biết gì về các yêu cầu trước đó. Bản chất không trạng thái này của web tạo ra tính hiệu quả đáng kể vì một kết nối không cần phải luôn được mở giữa trình duyệt và server. Mỗi yêu cầu tải trang mới sẽ kết thúc khi server thực hiện xong việc nhận yêu cầu và gửi trang, cho phép một server có thể đồng thời quản lý được nhiều kết nối.
Bản chất không trạng thái của web đã tạo ra nhiều thách thức cho các nhà phát triển web. Thông thường, các ứng dụng cần phải ghi nhớ thông tin về người dùng: các quyền đăng nhập, các món đã được thêm vào giỏ hàng, v.v… Không có khả năng ghi nhớ thông tin này qua nhiều đợt yêu cầu tải trang, phát triển ứng dụng thực sự sẽ không thể thực hiện được. Để giải quyết vấn đề này, một loạt các giải pháp đã được thực hiện; liên quan đến việc gửi một thẻ bài duy nhất (unique token) trở lại server theo mỗi yêu cầu tải trang (thường là các cookies, các file văn bản nhỏ chứa các yếu tố nhận diện cụ thể ứng dụng cho mỗi người dùng) và để cho server lưu thông tin người dùng.
Không giống như các ứng dụng web truyền thống, các RIAs có thể vượt qua nhiều trở ngại trên. Bởi vì ứng dụng vẫn tồn tại trong RAM trong suốt thời gian nó được sử dụng (thay vì được tải và thôi tải như mô hình page-based), các biến có thể được thiết lập chỉ một lần và được truy cập trong suốt thời gian chạy ứng dụng.

Giận dỗi: Đừng để thành bão!

Tháng Sáu 28, 2008

Một chút giận dỗi, tựa như cơn mưa giông xóa đi tiết hè oi nồng, ngột ngạt, khiến cuộc sống vợ chồng bớt đơn điệu, nhàm chán. Nhưng nếu chuyển thành bão thì có thể gây thiệt hại khó khắc phục.

Ngoại trừ thời gian làm việc ở công ty, lúc nào vợ chồng Kiên và Thủy cũng như chạy loạn. Nào đưa đón con đi học, tắm rửa, cho con ăn, dọn dẹp nhà cửa. Toàn những công việc không tên những vất vả và tốn thời gian. Bé Bống lại biếng ăn, cứ đến bữa thì y như rằng ba phải nhảy múa, hát hò cật lực, mẹ vừa dỗ dành vừa bón từng thìa cháo, thìa sữa.

Sự mệt mỏi khiến khả năng ăn nói dịu dàng của cả hai vợ chồng giảm sút thảm hại. Mỗi lúc chồng cau có mặt mày hay cáu gắt chút xíu, Thủy thấy tủi thân vô cùng. Cô trừng phạt anh chồng “dùi đục chấm mắm cáy” bằng chiến tranh lạnh. Chồng hỏi thì trả lời nhát gừng, còn “giao lưu”, “tâm sự” thậm chí cả nhờ vả đều cắt tuốt.

Nếu Kiên xun xoe nịnh nọt “đủ đô”, Thủy sẽ bỏ qua. Nếu không, hãy đợi đấy, chiến tranh có thể kéo dài một tuần, hai tuần hoặc lâu hơn nữa. Thương vợ vất vả, lại không muốn không khí gia đình nặng nề, bao giờ Kiên cũng tìm cách làm lành trước. Lâu dần kiểu này trở thành kiểu mặc định ngầm trong ngôi nhà của đôi vợ chồng trẻ.

Rồi khi có điều gì không bằng lòng với ba mẹ, anh chị chồng, Thủy cũng giận dỗi. Kiên bận việc công ty về trễ, chạm mặt vợ là thấy chiến tranh liền. Khổ nỗi nhiều khi Kiên chẳng biết vợ giận vì chuyện gì. Đến một ngày Kiên cảm thấy mệt mỏi. Anh sợ vẻ mặt lầm lì, lạnh nhạt của vợ, sợ bầu không khí bức bí trong nhà mình và anh chán ngấy việc phải xin xỏ vợ bỏ qua những chuyện không phải do mình gây ra. Anh phớt tất, mặc cho Thủy muốn giận bao lâu cũng được.

Giận dỗi là một biểu hiện của nữ tính. Thực tế “chiêu” này đã khiến không ít bậc anh hào mềm lòng trước phái đẹp. Giận dỗi như tiếng chuông nhắc chàng quan tâm lắng nghe tâm tư của bạn. Đa phần đàn ông khó cưỡng được giây phút chỉ có hai người, nàng thủ thỉ đòi chàng hứa hẹn đáp lại tình yêu. Chưa biết “yêu sách” có được thực hiện không nhưng cuộc sống vợ chồng thêm giây phút nồng nàn, tựa như những cơn mưa đền cây sau giông gió. Và quan trọng hơn là hai người hiểu nhau hơn, biết cách tự điều chỉnh để hài hòa với nhau trong cuộc sống thường ngày.

Nhưng nếu dùng chiêu này thường xuyên dễ phản tác dụng. Rất nhiều ông chồng không có chút khả năng ngoại cảm nào để đọc ra nguyên nhân tạo nên vẻ mặt lầm lì bất thường của vợ. Hoặc cường độ chiến tranh quá dày đặc cũng gây tâm lý mệt mỏi, chán nản. Vì thế, một người vợ tinh tế là người biết giận dỗi ở mức đủ tạo ra khoảng không gian gần gũi giữa hai người.

Theo Thế giới tiêu dùng

Batlefield

Tháng Sáu 26, 2008

Riêng Tư: Đỉnh cao

Tháng Sáu 25, 2008

Đây là nội dung riêng tư. Cần phải nhập mật khẩu để xem tiếp:

Học từ vựng cho bài thi TOEFL như thế nào?

Tháng Sáu 22, 2008

thạo tiếng anh cho những người coi tiếng anh như một ngoại ngữ hoặc những người muốn học tập tại các trường đại học và cao đẳng tại Bắc Mỹ. Song, dường như có một số lượng lớn hiểu sai trong việc học từ vựng của bài thi TOEFL.

Nhiều người cho rằng số lượng từ vựng trong bài thi là không giới hạn vì thế việc học từ vựng cũng là điều không thể. Tuy nhiên, điều đó là hoàn toàn không đúng. Lượng từ vựng trong bài thi TOEFL khá giới hạn và có thể đoán được, bao gồm nhiều từ đồng nghĩa. Hơn thế nữa bài thi cũng chỉ sử dụng ngôn ngữ phổ thông. Chính vì vậy, người học cần trang bị cho mình những danh mục từ vựng có mục tiêu, những từ đồng nghĩa và cả những từ phát sinh có thể xuất hiện trong bài thi.
Học từ vựng cho bài thi TOEFL, các bạn cần lưu ý mấy điểm sau:

Đọc thật nhiều. Hầu hết từ vựng được học thông qua các ngữ cảnh. Đọc càng nhiều thì vốn từ sẽ càng phong phú. Trong khi đọc, hãy chú ý hơn những từ mà bạn chưa biết. Đầu tiên hãy cố gắng đoán nghĩa của chúng thông qua ngữ cảnh, sau đó hãy tra trong từ điển. Đọc và nghe thật nhiêu để lấy công cụ học từ mới. Nếu bạn đang chuẩn bị thi TOEFL, hãy đọc các tạp chí, sách báo tiếng anh trên nền cơ bản. Khi gặp một từ mới, hãy ghi nó vào một quyển sổ. Dùng từ điển để tra nghĩa, cũng có thể viết cả những từ phát sinh vào quyển sổ của bạn. Học từ mới bằng cách viết chúng ra giấy nhiều lần. Bạn có thể sử dụng những mẩu giấy nhỏ, một mặt viết từ mới, một mặt viết nghĩa. Hãy làm từ 7-10 mảnh giấy nhỏ để học từ trong một ngày, sau đó tập hợp chúng lại trong cùng một lĩnh vực. Nếu như mỗi ngày bạn học được 10 từ mới, một tháng bạn đã tích luỹ được 300 từ.
Rèn luyện kỹ năng phân tích ngữ cảnh
Những nghiên cứu chỉ ra rằng phần lớn từ vựng được học từ ngữ cảnh. Để củng cố kỹ năng này, hãy chú ý đến cách sử dụng từ trong các ngữ cảnh đó.
Luyện tập

Học một từ sẽ chẳng có ích lợi gì nếu sau đó bạn sẽ chẳng nhớ nổi nghĩa của nó. Những nghiên cứu đã chỉ ra rằng sẽ phải mất từ 10 đến 20 lần lặp lại để một từ mới thật sự nằm trong vốn từ của bạn. Như đã lưu ý ở trên, sẽ thật sự có ích nếu bạn viết từ mới – cả nghĩa và câu ví dụ – vào một quyển sổ hay một miếng giấy nhỏ. Ngay khi học một từ mới, hãy bắt đầu sử dụng nó.
Liên hệ và kết hợp các từ

Cách học tốt nhất là bạn dùng những từ đã biết để học những từ chưa biết. Khi học một từ mới hãy cố gắng tìm những từ đồng nghĩa hoặc trái nghĩa với nó mà bạn đã biết. Có thể tạo những hình ảnh kích thích trí tưởng tượng hoặc những lời giải thích ngộ nghĩnh để học từ mới dễ dàng hơn.

Nhớ mẹo
Bạn có thể dùng các mẹo nhỏ để nhớ nghĩa của từ. Ví dụ: hãy chú ý đến từ sau EGREGIOUS (extremely bad). Bạn hãy nghĩ đến cụm từ EGG REACHes US – tưởng tượng rằng bạn làm một điều gì đó rất tồi tệ và bị người khác ném trứng vào người. Những hình ảnh như thế sẽ làm bạn khó quên và hình dung ra được nghĩa của từ. Tuy nhiên cũng nên tìm ra cách học nào là phù hợp nhất với bạn bởi mỗi người có một cách học khác nhau.
Tập thói quen tra từ mới

Nếu bạn có một chương trình từ điển trong máy tính, hãy luôn mở nó và để ở nơi thuận tiện và dễ sử dụng nhất. Rất nhiều dịch vụ trên Internet như American Online đều có những từ điển thông thường và từ điển chuyên đề cho bạn. Hãy tìm những chương trình đó và tra bất cứ từ nào mà bạn chưa biết hoặc không chắc chắn. Hãy sử dụng từ điển chuyên đề nếu bạn muốn dùng đúng từ trong bài viết của mình.

Chơi trò chơi từ vựng
Như xếp chữ, giải thích từ hay trò chơi ô chữ… Những trò chơi này thường được cài đặt rất nhiều trong máy tính nên bạn sẽ không bị phụ thuộc vào người cùng chơi với mình. Cũng lưu ý rằng bạn không nên dùng từ điển trong lúc chơi những trò chơi này.

Học chữ Latin

Hãy học các từ gốc Latin, tiền tố hay hậu tố để mở rộng vốn từ vựng của bạn và cũng là để giúp bạn có những suy đoán đã được rèn luyện khi gặp một từ mới trong bài thi của mình.

Thực sự hứng thú với việc học từ

Cố gắng để đánh giá được sự khác nhau tinh tế giữa các từ. Phân biệt được nghĩa đen và nghĩa bóng của từ. Nếu không chắc chắn hãy tra nó trong từ điển. Học để diễn đạt được ý của bạn trong cả văn nói và văn viết. Tương lai của bạn phụ thuộc vào sự phong phú trong vốn từ mà bạn có. Nó cũng quyết định khả năng giao tiếp của bạn tốt đến đâu. Hãy coi việc học từ là một nhiệm vụ lâu dài của bạn.

Học những từ có liên quan
Thu thập những bản sao của ESL Pro Systems 1000 Key English Words & Idioms CD-ROM. Sử dụng hệ thống từ vựng của ESL cùng với những tấm giấy nhỏ như đã đề cập bên trên, tiếng anh của bạn sẽ tiến bộ nhanh hơn bạn tưởng.

Theo suctrevietnam

Cách học từ mới

Tháng Sáu 22, 2008

Qua nhìu lần thử nghiệm trong việc học từ và vận dụng từ thì mình thấy cách hiệu quả nhất là học bằng flash card. Có rất nhiều người biết đến cách học này và đã không ít lần thử nghiệm nó nhưng đều không cho hiệu quả cao. Một lý do đơn giản để giải thích cho điều này là bạn không biết cách học flash card.
Theo kinh nghiệm bản thân (thấy học bằng flash card rất vào ) đấy là bạn nên tạo ra một hình thức và vóc dánh cho tấm flash card của bạn thật bắt mắt. Một cách rất đơn giản đó là bạn hãy mua những tờ bìa cứng, dầy và có màu sắc sáng sủa như màu vàng hay màu xanh lá cây (hãy mua cả một tập dày vì bạn sẽ dùng rất tốn nếu bạn muốn thành công ) .Một điều quan trọng ko kém là bạn phải tậu được một cái bút dạ màu đỏ vì màu này sẽ làm cho new word được hiện lên rõ hơn. Tốt hơn nữa thì bạn nên tậu thêm một hộp chì màu.Cái quan trọng nhất tạo ra sự thành công là một cuốn từ điển oxford hoặc longman nhưng bắt buộc phải là E – E dictionary của native speaking countries. Bước tiếp theo đó là dùng dao dọc giấy dọc những tấm bìa A 4 đấy ra thành những tấm nhỏ để vừa lòng bàn tay bạn.
Bây giờ đến thời khắc quan trọng đây. Bạn lấy những tấm card đấy ra và viết thật to new word lên một mặt của tờ card đó bằng bút dạ đỏ và nhớ là hãy để trống ra một phần ở phía dưới để còn ghi loại từ và sometime là family words và phần này được ghi bằng bút chì mầu khác nếu bạn thích. Và nhất thiết phải có trong mặt này là phiên âm để bạn có thể biết cách đọc chúng cái mà bạn sẽ thấy phát huy tác dụng trong phần listening and speaking. Đấy là mặt trước nha.
Bạn hãy quay lại mặt sau và chuẩn bị một chiếc bút thường như bút bi hay bút nước tùy bạn nhưng tuyệt đối đừng dùng bút chì gỗ và bút mực vì hai loại bút này sẽ ko giữ lâu. Rồi bạn bắt đầu nhẹ nhàng lật từng trang từ điển thân thương( tui nói zậy là vì ko có từ điển thì bạn ko thể thành công trong việc học từ mới được ) rùi tìm đúng đến từ mà bạn cần tra và bắt đầu chọn lọc xem những cách sử dụng nào phổ biến nhất và bạn cảm thấy dễ hiểu nhất để ghi vào mặt sau của tấm flash card đấy. Tuy nhiên, các phần khác hơi khó hiểu hơn cũng ko thể bỏ qua. Mục đích của việc viết những gì dễ hiểu hơn lên đầu tiên sẽ tạo cho bạn một tâm lý thoải mái và thích thủ khi học từ và bạn sẽ ko bị confused bởi những thứ khó hỉu( vì đôi khi ở một level nhất định thì việc hiểu hết các cách giải thích trong từ điển cũng bị limited). Nhân đây thì tui cũng có một comment cho mọi người là nếu ai cần học từ gấp thì bạn có thể bỏ qua những phần khó hiểu thay vào đó chỉ đọc qua những phần này và chủ yếu tập trung vào phần easier. Bạn nên viết thoáng ra một chút để dễ nhìn. Còn với những bạn học vì tương lai con em chúng ta đủng đỉnh và có nhìu time thì bạn nên học cả phần sometime make you confused vì điều này rất có lợi cho cách sử dụng và tư duy English của bạn nhưng bạn sẽ không thấy hiệu quả ngay đâu mà như tui đã nói trên là về lâu về dài mà.
Tui thừa nhận là cách làm này sẽ tốn khá thời gian của bạn nhưng bạn sẽ học và hiểu từ này nhanh một cách bất ngờ đơn giản vì bạn cũng đã tập trung một thời gian vào để đọc tất cả những gì thuộc về từ này từ trong từ điển ra và hơn thế nữa còn đã viết lại chúng.
Một lời khuyên là khi bạn có hứng làm hay không thì với những bạn muốn học cấp tốc thì hãy cố gắng làm khoảng 10 từ một lúc không dừng lại vì nếu dừng lại bạn sẽ mất phong độ thấy nản vì mất nhiều thởi gian. Còn với những lúc không có hứng thì biết đâu sẽ có một tác động tích cực hơn là thấy hứng thú với việc này. Đặc biệt nếu bạn nên xác định cho mình một tâm lý trước khi làm là mình được trở lại những phút trẻ thơ vì ngồi tô tô vẽ vẽ một tấm flash card bằng cả bút dạ và bút chì mầu như con nít vậy.
Một điều nữa không thể ko comment các bạn là hãy học ngay những từ mà các bạn đã làm nếu để đến hôm sau bạn sẽ ko còn cảm thấy thích thú và yêu quý công sức của bạn như trước đâu và đặc biệt nó cũng reduce bản năng của bạn. Cuối cùng là bạn nên nhớ một triết lý là “mưa dầm thấm lâu” bạn nên thừong xuyên ôn lại các từ này vì bạn nên nhớ rằng chúng ta là những ngưòi bình thừong và hay bị attract bởi những thứ xung quanh và ko thể nhớ từ ngày này qua ngày khác mà không bao giờ đả động đến chúng.
Đơn giản hơn hãy liên tưởng rằng flash card là người bạn gái của bạn nếu bạn yêu cô ấy thường xuyên quan tâm đến người ta và luôn luôn kể chuyện về cô ấy với mọi người xung quanh và đặc biết luôn luôn mang cô( flash card ) trong túi áo ngực hoặc trong ngăn cặp dễ lấy nhất của bạn mỗi khi bạn đứng một mình hay với bất kì ai thì bạn và cô ấy sẽ hiểu nhâu hơn ai hết và tình cảm ấy sẽ trở nên khăng khít và nồng nàn.
Ok! Hãy thử một lần làm một anh chàng si tình hay một cô gái mạnh mẽ dám yêu và thể hiện tình yêu bạn sẽ thấy người ấy dường như sinh ra để dành cho mình.