Các ngôn ngữ lập trình Web
maidinhdan > 09-09-15, 09:50 PM
Nhằm giúp cho những ai không được học qua IT có cái nhìn khái quát về các ngôn ngữ lập trình Web, mình xin được sưu tầm 1 bài để cùng nhau tìm hiểu.
Bài này vừa phân loại ngôn ngữ lập trình, vừa phân loại công nghệ liên quan đến nó trong việc phát triển ứng dụng web
I. Ngôn ngữ lập trình và công nghệ phía client
1. HTML
HTML (tiếng Anh, viết tắt cho HyperText Markup Language, hay là “Ngôn ngữ Đánh dấu Siêu văn bản”) là một ngôn ngữ đánh dấu được thiết kế ra để tạo nên các trang web với các mẩu thông tin được trình bày trên World Wide Web. HTML được định nghĩa như là một ứng dụng đơn giản của SGML và được sử dụng trong các tổ chức cần đến các yêu cầu xuất bản phức tạp. HTML đã trở thành một chuẩn Internet do tổ chức World Wide Web Consortium (W3C) duy trì. Phiên bản chính thức mới nhất của HTML là HTML 4.01 (1999). Sau đó, các nhà phát triển đã thay thế nó bằng XHTML. Hiện nay, HTML đang được phát triển tiếp với phiên bản HTML5 hứa hẹn mang lại diện mạo mới cho Web.
2. CSS
Là tập tin định dạng theo tầng – dịch từ Tiếng Anh là Cascading Style Sheets (CSS) – được dùng để miêu tả cách trình bày các tài liệu viết bằng ngôn ngữ HTML và XHTML. Ngoài ra ngôn ngữ định kiểu theo tầng cũng có thể dùng cho XML, SGV, XUL… Các đặc điểm kỹ thuật của CSS được duy trì bởi World Wide Web Consortium (W3C)
3. JavaScript
JavaScript, theo phiên bản hiện hành, là một ngôn ngữ lập trình kịch bản dựa trên đối tượng được phát triển từ các ý niệm nguyên mẫu. Ngôn ngữ này được dùng rộng rãi cho các trang web, nhưng cũng được dùng để tạo khả năng viết script sử dụng các đối tượng nằm sẵn trong các ứng dụng. Nó vốn được phát triển bởi Brendan Eich tại Hãng truyền thông Netscape với cái tên đầu tiên Mocha, rồi sau đó đổi tên thành LiveScript, và cuối cùng thành JavaScript. Giống Java, JavaScript có cú pháp tương tự C, nhưng nó gần với Self hơn Java. .js là phần mở rộng thường được dùng cho tập tin mã nguồn JavaScript. Phiên bản mới nhất của JavaScript là phiên bản 1.5, tương ứng với ECMA-262 bản 3. ECMAScript là phiên bản chuẩn hóa của JavaScript. Trình duyệt Mozilla phiên bản 1.8 beta 1 có hỗ trợ không đầy đủ cho E4X – phần mở rộng cho JavaScript hỗ trợ làm việc với XML, được chuẩn hóa trong ECMA-357.
4. Ajax
AJAX (tiếng Anh: “Asynchronous JavaScript and XML” – nghĩa là “JavaScript và XML không đồng bộ”) là một nhóm các công nghệ phát triển web được sử dụng để tạo các ứng dụng web động hay các ứng dụng giàu tính Internet (rich Internet application). Từ Ajax được ông Jesse James Garrett đưa ra và dùng lần đầu tiên vào tháng 2 nãm 2005 để chỉ kỹ thuật này, mặc dù các hỗ trợ cho Ajax đã có trên các chương trình duyệt từ 10 nãm trước. Ajax là một kỹ thuật phát triển web có tính tương tác cao bằng cách kết hợp các ngôn ngữ: HTML (hoặc XHTML) với CSS trong việc hiển thị thông tin Mô hình DOM (Document Object Model), được thực hiện thông qua JavaScript, nhằm hiển thị thông tin động và tương tác với những thông tin được hiển thị Đối tượng XMLHttpRequest để trao đổi dữ liệu một cách không đồng bộ với máy chủ web. (Mặc dù, việc trao đổi này có thể được thực hiện với nhiều định dạng như HTML, văn bản thường, JSON và thậm chí EBML, nhưng XML là ngôn ngữ thường được sử dụng). XML thường là định dạng cho dữ liệu truyền, mặc dầu bất cứ định dạng nào cũng có thể dùng, bao gồm HTML định dạng trước, văn bản thuần (plain text), JSON và ngay cả EBML. Giống như DHTML, LAMP hay SPA, Ajax tự nó không phải là một công nghệ mà là một thuật ngữ mô tả việc sử dụng kết hợp một nhóm nhiều công nghệ với nhau.
5. Flash
Adobe Flash (trước đây là Macromedia Flash và trước đó FutureSplash), hay còn gọi một cách đơn giản là Flash, được dùng để chỉ chương trình sáng tạo đa phương tiện (multimedia) lẫn phần mềm dùng để hiển thị chúng Macromedia Flash Player.[1] Chương trình điện toán này được viết và phân phối bởi Adobe Systems (công ty đã mua Macromedia). Flash dùng kỹ thuật đồ họa vectơ và đồ họa điểm (raster graphics). Ngoài ra Flash còn có một ngôn ngữ văn lệnh riêng gọi là ActionScript và có khả năng truyền và tải luồng âm thanh hoặc hình ảnh. Đúng ra thì từ Macromedia Flash nên được dùng để chỉ chương trình tạo ra các tập tin Flash. Còn từ Flash Player nên được dành để chỉ ứng dụng có nhiệm vụ thi hành hay hiển thị các tập tin Flash đó. Tuy vậy, chữ Flash được dùng để chỉ cả hai chương trình nói trên.
6. JQuery
JQuery là thư viện JavaScript đa trình duyệt được thiết kế để đơn giản hóa lập trình phía máy người dùng của HTML Được phát hành vào tháng 1 năm 2006 tại BarCamp NYC bởi John Resig. Được sử dụng bởi hơn 52% trong 10.000 website được truy cập nhiều nhất, jQuery là thư viện JavaScript được sử dụng phổ biến nhất hiện nay
7. Microsoft Silverlight
Microsoft Silverlight là một nền tảng ứng dụng (application framework) để viết và chạy các ứng dụng Internet phong phú với sự nhấn mạnh về đa phương tiện, hình động, và đồ họa, với các tính năng và mục đích tương tự như của Adobe Flash. Môi trường thời gian chạy (hệ thống thực thi) cho Silverlight có sẵn như là một plug-in cho hầu hết các trình duyệt web. Trong khi những phiên bản đầu của Silverlight tập trung vào dòng phương tiện truyền thông (streaming media), các phiên bản hiện tại hỗ trợ đa phương tiện, đồ họa và hoạt hình (animation), và cung cấp cho các nhà phát triển hỗ trợ cho ngôn ngữ CLI và công cụ phát triển. Phiên bản hiện tại 4 được phát hành vào tháng 4 năm 2010. Nó tương thích với nhiều trình duyệt web được sử dụng trên hệ điều hành Microsoft Windows và Mac OS X. Các thiết bị di động, bắt đầu với điện thoại Windows Phone 7 và Symbian (seri 60), có khả năng được hỗ trợ trong năm 2010. Một phần mềm miễn phí thêm vào có tên là Moonlight, phát triển bởi Novell trong sự hợp tác với Microsoft, có sẵn để mang lại Silverlight chức năng tương thích với Linux, FreeBSD và nền tảng mã nguồn mở khác.
II. Ngôn ngữ lập trình và công nghệ phía server
1. ASP
Microsoft Active Server Pages (ASP) là một môi trường sever-side scripting cho phép ta tạo ra và chạy các ứng dụng Web động, tương tác với client một cách hiệu quả. ASP hoạt động dựa vào các script do người lập trình tạo sẵn. Khi ta cho script chạy trên server thay vì chạy ở client thì Web server của ta sẽ làm mọi công việc cần thiết để tạo ra một trang Hypertext Markup Language (HTML) trả về cho Browser hiển thị, như vậy ta không phải bận tâm rằng các Web browser có thể xử lý trang Web hay không vì server đã làm mọi việc.
2. CSP – Server-Side ANSI C
ANSI C là chuẩn C do tổ chức ANSI (Mỹ) đặt ra, mục đích là để chuẩn hóa ngôn ngữ C. Một điểm mạnh của quá trình tiêu chuẩn hoá ANSI C là làm cho K&R C trở thành một tập con của nó; nó tiếp nhận nhiều chức năng không chính thức của K&R C như là một hệ quả. Xa hơn, hội đồng tiêu chuẩn cũng làm cho ANSI C bao gồm thêm nhiều chức năng mới, như là các nguyên mẫu của hàm (mượn từ C++), và khả năng tiền xử lý mạnh hơn. Ngày nay, ANSI C được hỗ trợ bởi hầu hết các trình dịch. Hầu hết các mã C ngày nay được viết dựa ttrên ANSI C. Mọi chương trình chỉ viết trong chuẩn C thì sẽ đảm bảo việc thực thi chính xác trên mọi nền nào cho phép dùng C.
3. ColdFusion
ColdFusion là 1 nền tảng phát triển ứng dụng web thương mại được phát minh bởi Jeremy và JJ Allaire vào năm 1995, mục đích để làm cho việc kết nối HTML tới database được dễ dàng hơn. Tới phiên bản 2 (1996), nó trở thành 1 ngôn ngữ kịch bản hoàn thiện, chứa cả IDE riêng.
4. CGI
Common Gateway Interface, CGI là phần mở rộng của máy phục vụ dùng để mở rộng khả năng của các máy dịch vụ Web. Bạn điền vào các phần mở rộng đó để làm trang Web của bạn sống động và hấp dẫn hơn. Thay vì đưa ra một trang Web tĩnh cũ kỹ, CGI (và các phần mở rộng máy phục vụ khác) cung cấp một phương pháp để các máy khách Web yêu cầu thông tin từ các máy phục vụ Web. Người dùng điền vào một biểu mẫu sẽ gởi tới máy phục vụ để máy phục vụ để máy phục vụ trả lời với những thông tin động tùy thuộc vào thông tin trên biểu mẫu đó. Máy phục vụ đó có thể tương tác với một máy phục vụ cơ sở dữ liệu phụ dịch ( back-end database server) hay lấy thông tin từ một nguồn khác. Hệ giao tiếp CGI là giao thức cung cấp một hệ giao tiếp hai chiều giữa các máy khách Web và các máy phục vụ Web và bản CGI là một tập hợp lệnh quyết định những gì xảy ra khi chúng giao tiếp. CGI được phát minh để mở rộng giao thức HTTP.
5. Groovy (programming language) Grails (framework)
Groovy là một ngôn ngữ lập trình hướng đối tượng trên nền Java. Nó là một ngôn ngữ lập trình động với các tính năng tương tự như Python, Ruby, Perl, và Smalltalk. Hơn nữa, nó cũng có thể được sử dụng như là một ngôn ngữ kịch bản chạy trên nền máy ảo Java. Goovy sử dụng cú pháp gần giống với Java nhưng nó không sử dụng dấu chấm phẩy ở cuối mỗi dòng, và nó được tự động dịch sang bytecode và chạy trên máy ảo Java (Java Virtual Machine).
6. Perl
Perl (viết tắt của Practical Extraction and Report Language – ngôn ngữ kết xuất và báo cáo thực dụng) được Larry Wall xây dựng từ năm 1987, với mục đích chính là tạo ra một ngôn ngữ lập trình có khả năng chắt lọc một lượng lớn dữ liệu và cho phép xử lí dữ liệu nhằm thu được kết quả cần tìm. Perl là ngôn ngữ thông dụng trong lĩnh vực quản trị hệ thống và xử lí các trang Web do có các ưu điểm sau: Có các thao tác quản lí tập tin, xử lí thông tin thuận tiện Thao tác với chuỗi kí tự rất tốt Đã có một thư viện mã lệnh lớn do cộng đồng sử dụng Perl đóng góp (CPAN). Cú pháp lệnh của Perl khá giống với C, từ các kí hiệu đến tên các hàm, do đó, nhiều người (đã có kinh nghiệm với C) thấy Perl dễ học. Perl khá linh hoạt và cho phép người sử dụng giải quyết với cùng một vấn đề được đặt ra theo nhiều cách khác nhau.
7. PHP
PHP (viết tắt hồi quy “PHP: Hypertext Preprocessor”) là một ngôn ngữ lập trình kịch bản hay một loại mã lệnh chủ yếu được dùng để phát triển các ứng dụng viết cho máy chủ, mã nguồn mở, dùng cho mục đích tổng quát. Nó rất thích hợp với web và có thể dễ dàng nhúng vào trang HTML. Do được tối ưu hóa cho các ứng dụng web, tốc độ nhanh, nhỏ gọn, cú pháp giống C và Java, dễ học và thời gian xây dựng sản phẩm tương đối ngắn hơn so với các ngôn ngữ khác nên PHP đã nhanh chóng trở thành một ngôn ngữ lập trình web phổ biến nhất thế giới.
8. Python
Python là một ngôn ngữ lập trình thông dịch do Guido van Rossum tạo ra năm 1990. Python hoàn toàn tạo kiểu động và dùng cơ chế cấp phát bộ nhớ tự động; do vậy nó tương tự như Perl, Ruby, Scheme, Smalltalk, và Tcl. Python được phát triển trong một dự án mã mở, do tổ chức phi lợi nhuận Python Software Foundation quản lý. Python là ngôn ngữ có hình thức rất sáng sủa, cấu trúc rõ ràng, thuận tiện cho người mới học lập trình. Cấu trúc của Python còn cho phép người sử dụng viết mã lệnh với số lần gõ phím tối thiểu. Ban đầu, Python được phát triển để chạy trên nền Unix. Nhưng rồi theo thời gian, nó đã “bành trướng” sang mọi hệ điều hành từ MS-DOS đến Mac OS, OS/2, Windows, Linux và các hệ điều hành khác thuộc họ Unix. Mặc dù sự phát triển của Python có sự đóng góp của rất nhiều cá nhân, nhưng Guido van Rossum hiện nay vẫn là tác giả chủ yếu của Python. Ông giữ vai trò chủ chốt trong việc quyết định hướng phát triển của Python.
9. Ruby
Ruby là một ngôn ngữ lập trình hướng đối tượng, có khả năng reflection. Cú pháp bị ảnh hưởng từ Ada và Perl với các đặc tính hướng đối tượng của Smalltalk, và cũng chia sẻ một số đặc tính với Python, Lisp, Dylan và CLU. Ruby là ngôn ngữ thông dịch đơn giai đoạn. Ruby cung cấp nhiều mẫu hình lập trình, bao gồm lập trình hàm, hướng đối tượng, mệnh lệnh, phản xạ. Nó sử dụng hệ thống kiểu biến động và tự động quản lý bộ nhớ,
10. Smalltalk
Smalltalk là ngôn ngữ lập trình hướng đối tượng, kiểu dữ liệu động, và có tính phản xạ. Smalltalk được thiết kế nhằm bảo vệ tối đa các đặc điểm ngắn gọn và trong sáng của nó và không hướng đến tính khả dụng (usability) hay tính hiệu năng (performance). Vì vậy nó phù hợp với các mục đích giáo dục hơn là mục đích thương mại, tuy nhiên các đặc điểm của Smalltalk đã ảnh hưởng và góp phần mang lại thành công cho nhiều ngôn ngữ khác trong đó có Java, C#. Ngôn ngữ Smalltalk được phát triển bởi nhiều tác giả qua nhiều thời kỳ khác nhau các tác giả chính bao gồm Alan Kay, Dan Ingalls, Adele Goldberg, Ted Kaehler, Scott Wallace. Smalltalk thường được nhắc đến như là tiêu chuẩn ngôn ngữ lập trình, không phải là một trình biên dịch cụ thể. Đã có nhiều trình biên dịch khác nhau sử dụng ngôn ngữ Smalltalk như Smalltalk-80, VisualAge Smalltalk… Tiêu chuẩn được biết đến nhiều là ANSI Smalltalk được phê chuẩn vào năm 1998.
11. SSJS (Server-side JavaScript)
Server-side JavaScript tức là JavaScript chạy ở phía server và không được load về trình duyệt. Sản phẩm đầu tiên của SSJS là hệ thống LiveWire của Netscape, được giới thiệu lần đầu vào năm 1996. Từ đó, nhiều công ty khác cũng bắt đầu liên tiếp đưa ra các công nghệ xử lý phía server. Một trong số đó là Microsoft với sự hỗ trợ sử dụng JavaScript trên server mà ngày nay được biết đến như một loại ngôn ngữ ASP cổ điển. Song song với ngôn ngữ VBScript, hỗ trợ JavaScript và PerlScript. Thực tế, Microsoft dùng JScript – một phiên bản tự sáng tạo của JavaScript.
12. WebDNA
WebDNA là một ngôn ngữ kịch bản thông dịch phía server với một hệ cơ sở dữ liệu nhúng được thiết kế đặc biệt cho World Wide Web, được phát hành dưới dạng freeware. Nó được sử dụng chủ yếu trong việc tạo ra các ứng dụng trang web động dựa theo cơ sở dữ liệu
13. .NET và .NET Framework
.NET Framework của Microsoft là một nền tảng lập trình tập hợp các thư viện lập trình có thể được cài thêm hoặc đã có sẵn trong các hệ điều hành Windows. Nó cung cấp những giải pháp thiết yếu cho những yêu cầu thông thường của các chương trình điện toán như lập trình giao diện người dùng, truy cập dữ liệu, kết nối cơ sở dữ liệu, ứng dụng web, các giải thuật số học và giao tiếp mạng. Ngoài ra, .NET Framework quản lý việc thực thi các chương trình được viết dựa trên .NET Framework do đó người dùng cần phải cài .NET Framework để có thể chạy các chương trình được viết trên nền .NET.
14. Java
Java là một ngôn ngữ lập trình dạng lập trình hướng đối tượng (OOP). Khác với phần lớn ngôn ngữ lập trình thông thường, thay vì biên dịch mã nguồn thành mã máy hoặc thông dịch mã nguồn khi chạy, Java được thiết kế để biên dịch mã nguồn thành bytecode, bytecode sau đó sẽ được môi trường thực thi (runtime environment) chạy. Bằng cách này, Java thường chạy chậm hơn những ngôn ngữ lập trình thông dịch khác như C++, Python, Perl, PHP, C#… Cú pháp Java được vay mượn nhiều từ C & C++ nhưng có cú pháp hướng đối tượng đơn giản hơn và ít tính năng xử lý cấp thấp hơn. Do đó việc viết một chương trình bằng Java dễ hơn, đơn giản hơn, đỡ tốn công sửa lỗi hơn. Dùng bộ thư viện chuẩn KFC, nhiều đoạn code Java chỉ mất vài dòng trong khi C phải mất cả trang giấy.
III. Client + Server
1. Opa
Opa là 1 ngôn ngữ lập trình nguồn mở dành cho việc phát triển ứng dụng web của các hệ thống có tính linh động, phát triển mạnh theo số lượng người dùng. Nó có thể sử dụng cho cả phía client và phía server, nơi mà phần mềm hoàn chỉnh được viết bằng Opa sau đó được dịch thành mã máy trên server và javascript trên client, với bộ dịch tự động giao tiếp giữa 2 bên.
2. Pyramas
Pyramas là một công cụ và nền tảng cho việc phát triển ứng dụng Ajax trên Python, nó bao gồm 1 bộ dịch Python – JavaScript riêng biệt, 1 nền tảng Ajax và 1 bộ công cụ giao diện, với tất cả những thành phần này, các nhà phát triển có thể viết ra các ứng dụng hoàn thiện, chạy được trên tất cả các trình duyệt phổ biến mà không cần phải viết lại 1 dòng JavaScript nào.
3. Tersus
Tersus là 1 nền tảng phát triển phần mềm trực quan để tạo ra các ứng dụng web phong phú với các đồ thị, hình vẽ thay vì những dòng code. Tersus đồng thời cũng là một ngôn ngữ mô hình hóa trực quan để xác định giao diện người dùng, các thói quen của người dùng phía client và xử lý ở phía server.
IV. Database
1. Apache Derby
Apache derby là một hệ quản trị cơ sở dữ liệu quan hệ được phát triển bởi Apache Software Foundation, có thể nhúng trong các chương trình Java và sử dụng để xử lý giao dịch trực tuyến.
2. IBM DB2
DB2 là một trong các dòng phần mềm quản trị cơ sở dữ liệu quan hệ của IBM (RDBMS : relational Database Management System). Có nhiều phiên bản khác nhau của DB2 để chạy trên các loại máy tính từ thiết bị cầm tay đến các máy tính lớn (mainframe). Ở những Công ty nhỏ thường gặp nhất là phiên bản DB2 Enterprise Server Edition hoặc DB2 Data Warehouse Edition (DB2 DWE), chạy trên các máy chủ Unix, Windows hoặc Linux. Tuy nhiên khi nói đến DB2, phần đông người ta đều nghĩ đến DB2 for Z/OS, phiên bản DB2 nguyên thủy chạy trên máy mainframe IBM được phát hành từ năm 1982. Trên các máy nhỏ phần đông người ta sử dụng RDBMS Oracle vì DB2 chỉ xuất hiện trên máy nhỏ cuối thập niên 1990. DB2 sử dụng ngôn ngữ SQL đễ đọc và viết thông tin vào dữ liệu. IBM DB2 Enterprise Server Edition là một hệ quản trị cơ sở dữ liệu quan hệ được phát triển bởi IBM. DB2 được dùng chủ yếu trên Unix (thường gọi AIX), Linux, IBM i (trước đây là OS/400), z/OS and Windows servers. DB2 cũng hỗ trợ đắc lực IBM InfoSphere Warehouse khác. Song song với DB2 là một hệ quản trị cơ sở dữ liệu quan hệ khác: Informix, được IBM phát hành năm 2001.
3. Firebird
Firebird là một hệ quản trị cơ sở dữ liệu quan hệ SQL mã nguồn mở, chạy trên Linux, Windows và một số biến thể của Unix. Mới đầu thì Firebird được cải tiến từ 1 phiên bản nguồn mở của InterBase vào năm 2000, nhưng sau phiên bản 1.5 trở đi, mã nguồn của Firebird đã được viết lại phần lớn.
4. Microsoft SQL Server
SQL Server là một hệ thống quản lý cơ sở dữ liệu (Relational Database Management System (RDBMS) ) sử dụng Transact-SQL để trao đổi dữ liệu giữa Client computer và SQL Server computer. Một RDBMS bao gồm databases, database engine và các ứng dụng dùng để quản lý dữ liệu và các bộ phận khác nhau trong RDBMS. SQL Server được tối ưu để có thể chạy trên môi trường cơ sở dữ liệu rất lớn (Very Large Database Environment) lên đến Tera-Byte và có thể phục vụ cùng lúc cho hàng ngàn user. SQL Server 2000 có thể kết hợp “ăn ý” với các server khác như Microsoft Internet Information Server (IIS), E-Commerce Server, Proxy Server….
5. MySQL
MySQL là hệ quản trị cơ sở dữ liệu mã nguồn mở phổ biến nhất thế giới và được các nhà phát triển rất ưa chuộng trong quá trình phát triển ứng dụng. Vì MySQL là cơ sở dữ liệu tốc độ cao, ổn định và dễ sử dụng, có tính khả chuyển, hoạt động trên nhiều hệ điều hành cung cấp một hệ thống lớn các hàm tiện ích rất mạnh.Với tốc độ và tính bảo mật cao, MySQL rất thích hợp cho các ứng dụng có truy cập CSDL trên internet. MySQL miễn phí hoàn toàn cho nên bạn có thể tải về MySQL từ trang chủ. Nó có nhiều phiên bản cho các hệ điều hành khác nhau: phiên bản Win32 cho các hệ điều hành dòng Windows, Linux, Mac OS X, Unix, FreeBSD, NetBSD, Novell NetWare, SGI Irix, Solaris, SunOS, …
6. Oracle Database
Oracle Database là một hệ quản trị csdl quan hệ liên kết đối tượng, được sản xuất và thương mại hóa bới Oracle.
7. PostgreSQL
PostgreSQL là một hệ quản trị cơ sở dữ liệu quan hệ và đối tượng dựa trên POSTGRES, bản 4.2, được khoa điện toán của đại học California tại Berkeley phát triển. POSTGRES mở đường cho nhiều khái niệm quan trọng mà các hệ quản trị dữ liệu thương mại rất lâu sau mới có. PostgreSQL là một chương trình mã nguồn mở xây dựng trên mã nguồn ban đầu của đại học Berkeley. Nó theo chuẩn SQL99 và có nhiều đặc điểm hiện đại: – Câu truy vấn phức hợp (complex query) – Khóa ngoại (foreign key) – Thủ tục sự kiện (trigger) – Các khung nhìn (view) – Tính toàn vẹn của các giao dịch (integrity transactions) – Việc kiểm tra truy cập đồng thời đa phiên bản (multiversion concurrency control)
8. SQLite
SQLite là hệ thống cơ sở dữ liệu quan hệ nhỏ gọn, hoàn chỉnh, có thể cài đặt bên trong các trình ứng dụng khác. SQLite được Richard Hipp viết dưới dạng thư viện bằng ngôn ngữ lập trình C. SQLite có các ưu điểm sau: – Tin cậy: các hoạt động transaction (chuyển giao) nội trong cơ sở dữ liệu được thưc hiện trọn vẹn, không gây lỗi khi xảy ra sự cố phần cứng – Tuân theo chuẩn SQL92 (chỉ có một vài đặc điểm không hỗ trợ) – Không cần cài đặt cấu hình – Kích thước chương trình gọn nhẹ, với cấu hình đầy đủ chỉ không đầy 300 kB – Thực hiện các thao tác đơn giản nhanh hơn các hệ thống cơ sở dữ liệu khách/chủ khác[1] – Không cần phần mềm phụ trợ – Phần mềm tự do với mã nguồn mở, được chú thích rõ ràng.
Còn tiếp....