WEBKIT LÀ GÌ

     

*
Viết bằngC++Hệ điều hànhĐa nền tảngThể loạiKhung ứng dụngGiấy phépLGPLv2/BSD-styleWebsitehttp://webkit.org/WebKit là 1 trong khung áp dụng nguồn mở cung ứng các thành phần cần thiết để xây đắp một trình coi ngó web. WebKit được hãng apple Inc. Chấp thuận nhận trường đoản cú thư viện phần mềm KHTML của trình chăm nom Konqueror để sử dụng như thể một máy bộ cho trình coi ngó của hệ quản lý điều hành Mac OS X là Safari và được liên tục phát triển bởi dự án KDE, Apple, Nokia, Google, Torch sản phẩm điện thoại và một vài khác.

Bạn đang xem: Webkit là gì

<1> Nó vẫn được gửi thể sang rất nhiều nền tảng khác và bây chừ được cần sử dụng như là bộ máy kết xuất của đa số phần mềm không giống nhau. WebKit là nguồn mở; các thành phần WebCore và JavaScriptCore được áp dụng và được bảo hộ bởi bản thảo GNU Lesser General Public License, với cả bộ WebKit có thể sử dụng với giấy tờ kiểu BSD.<2>


Mục lục


1 định kỳ sử

Lịch sử

Nguồn gốc

WebKit bước đầu khởi công từ thời điểm năm 2002 khi táo Inc. Tạo thành một dự án phần mềm fork từ dự án công trình của KDE là cỗ máy bố viên HTML KHTML và máy bộ JavaScript của KDE (KJS). Những nhà cải tiến và phát triển Apple phân tích và lý giải trong một email gửi tới những nhà cải cách và phát triển KDE<3> rằng các máy bộ này có thể chấp nhận được phát triển dễ dàng hơn các technology khác bởi vì tính bé dại gọn (ít hơn 140,000 mẫu mã nguồn), xây cất sáng sủa và hợp chuẩn. KHTML với KJS đang được chuyển thể quý phái Mac OS X với sự hỗ trợ của thư viện thay đổi và thay tên thành WebCore và JavaScriptCore<3>. JavaScriptCore được thông báo đến list thư của KDE vào tháng 6 năm 2002, thuộc với bạn dạng ra mắt đầu tiên với những biến hóa của Apple.<4> WebCore được thông tin tại Macworld Expo trong tháng 1 năm 2003 bởi táo khuyết CEO Steve Jobs cùng với đợt kiến thiết của trình coi sóc Safari. JavaScriptCore lần đầu tiên được thi công kèm với Mac OS X v10.2 để thực hiện như là 1 bộ size riêng nhằm chạy ứng dụng Sherlock, trong khi WebCore lần đầu kèm theo với phiên bản beta đầu tiên của Safari. Mac OS X v10.3 là hệ điều hành thứ nhất của apple có WebKit, mặc dù nó đã xuất hiện trước đó ở một số trong những ít phiên bản 10.2.

Tuy vậy, việc trao đổi các bản vá mã nguồn thân hai phiên bạn dạng KHTML vẫn trở nên trở ngại do phía 2 bên có giải pháp viết mã khác nhau.<5> Một lý do nữa bởi vì Apple thao tác với phiên bạn dạng KHTML của họ một thời gian trước khi gửi fork mang lại công chúng.

Khó chịu đựng về điều đó, dự án công trình KDE đã có thể kết hợp các biến hóa đó nhằm củng cố tốc độ kết xuất của KHTML với thêm vào các chức năng, bao hàm việc thừa qua bài bác kiểm tra Acid2. Konqueror 3.5 sẽ vượt qua bài xích kiểm tra Acid2, phiên phiên bản được reviews sau khi táo bị cắn mở hệ thống CVS với Cơ sở dữ liệu lỗi phần mềm cho WebKit.

Theo Apple, một số thay đổi gặp vấn đề với những tính năng đặc thù của Mac OS X (vd., Objective-C, KWQ, các hàm gọi Mac OS X) không tồn tại trong KHTML của KDE, cần có một chiến lược cách tân và phát triển khác.<6>

Tranh cãi

Tại 1 thời điểm những nhà cách tân và phát triển KHTML nói rằng bọn họ không thể chấp nhận được những chuyển đổi của táo khuyết và nhận định rằng mối quan hệ nam nữ hai bên là 1 trong những “thất bại cay đắng”.<7> táo đã gửi những sửa đổi của họ trong một gói các bản vá lỗi béo chứa không hề ít sửa đổi lớn với tài liệu ko tương xứng, thường dùng để thêm vào các tác dụng trong tương lai. Cho dù vậy, các phiên bản vá này sẽ gây cạnh tranh khăn cho các nhà trở nên tân tiến KDE để tích hợp chúng vào KHTML. Đi xa rộng nữa, táo khuyết còn yên cầu các nhà phát triển KDE cam kết vào bạn dạng cam kết ko tiết lộ trước khi xem mã nguồn của táo bị cắn kể cả việc họ không truy vấn được vào cơ sở tài liệu lỗi của Apple.<8>

Trong khoảng thời gian ly khai được mọi fan biết đến, nhà phát triển KDE pipitas gởi viết một bài cho rằng các nhà trở nên tân tiến KHTML đã cố gắng thêm các sửa đổi bức tốc của Safari (nhưng không hẳn tất cả) từ bỏ WebCore về KHTML, với họ cũng luôn luôn luôn ủng hộ các đổi mới của hãng apple và đến bây chừ vẫn thế. Bài viết cũng nói tới việc hãng apple đã ban đầu liên hệ với các nhà phát triển KHTML để đàm đạo về việc nâng cấp mối quan hệ giới tính giữa 2 bên và việc hợp tác ký kết trong tương lai.<9>

Từ lúc tin tức về phiên bản fork xuất hiện tren báo chí, táo bị cắn đã cung cấp bản chi máu những thay đổi trong KHTML của mình ở một kho chứa CVS.<10> bước đầu từ lúc mã mối cung cấp của Apple xuất hiện thêm trên CVS, những nhà cải tiến và phát triển của cả phía hai bên đã tăng tốc hợp tác. Không ít nhà cải cách và phát triển KHTML đang trở thành nhà phê bình và là bạn gửi bạn dạng Apple WebKit lên kho chứa SVN.

Đội cải tiến và phát triển WebKit cũng đã hồi sửa lại những sửa đổi đặc trưng của apple về mã gốc của WebKit với củng cố khả năng tương mê say đa nền tảng gốc rễ cho WebKit.<11>

Nguồn mở

Vào ngày 7 tháng 6, 2005, nhà cải cách và phát triển Safari Dave Hyatt thông báo trên blog của anh rằng táo bị cắn dở đã mở mã nguồn WebKit (trước đó, chỉ bao gồm WebCore cùng JavaScriptCore là mối cung cấp mở) và chất nhận được truy cập vào cây CVS của WebKit và lý lẽ Bugzilla.<10> Tin này cũng rất được thông báo vào Hội nghị những nhà vạc triển quả đât của táo apple năm 2005 vì tổng chủ tịch kỹ sư ứng dụng Apple Bertrand Serlet.

Vào vào giữa tháng 12 năm 2005 việc cung ứng cho định dạng SVG sẽ được đến vào bản chuẩn<12> vào gần tháng một năm 2006 mã nguồn sẽ được gửi từ CVS thành Subversion. Tháng tiếp theo trang mạng Ars Technica gởi một bài viết thông báo rằng nhóm ngũ cải tiến và phát triển KDE mong muốn chuyển từ KHTML lịch sự WebKit.<13>

Phát triển sau này

Vào tháng 11 năm 2007, dự án thông tin rằng đã chấm dứt hỗ trợ cho các phương tiện công dụng của HTML 5, cho phép các đoạn đoạn phim nhúng được dựng hình và tinh chỉnh và điều khiển trong WebKit.

Xem thêm: Em Yêu Hà Nội Beat Nhạc Thiếu Nhi, Em Yêu Hà Nội

<14>

Vào ngày 2 tháng 6, 2008, dự án WebKit thông báo rằng họ đang viết lại JavaScriptCore thành “SquirrelFish”, một trình phiên dịch bytecode.<15><16> Dự án liên tiếp phát triển nó thành SquirrelFish Extreme (viết tắt SFX), ra mắt vào ngày 18 tháng 9, 2008, hoạt động bằng phương pháp biên dịch JavaScript thành mã máy, câu hỏi từ quăng quật thông dịch bytecode đã giúp tăng tốc những đoạn mã JavaScript.<17> trước đây SFX chỉ cung ứng kiến trúc x86, dẫu vậy vào thời điểm cuối tháng 1 năm 2009 SFX đã có thể chạy vào Mac OS X với kiến trúc x86-64 với nó đã vượt qua toàn bộ các bài kiểm tra trên căn nguyên này.<18>

Sử dụng

WebKit được sử dụng như thể một bộ máy dựng hình cho Safari chạy trên Mac OS X, Windows với iOS. Các ứng dụng không giống trên Mac OS X cũng rất có thể sử dụng WebKit, như trình khách email của táo bị cắn Mail với Entourage của Microsoft phiên phiên bản 2008, cả hai dùng WebKit để dựng hình những nội dung HTML bên phía trong ứng dụng của mình.

Các trình chuẩn y web bắt đầu cũng thực hiện WebKit là Shiira với Chrome,<19><20> bên cạnh đó một số trình chăm bẵm khác sử dụng WebKit để cầm cố thế máy bộ dựng hình khoác định của nó như OmniWeb, iCab với Epiphany.<21> Epiphany hỗ trợ cả Gecko với WebKit ở một vài thời điểm, tuy nhiên đội ngũ cải cách và phát triển cho rằng vòng đời ra mắt của Gecko và việc lập kế hoạch trở nên tân tiến cho nó rất có thể trở bắt buộc nặng nề, hèn hiệu quả.

Chuyển hệ

Vài tuần sau khoản thời gian Hyatt công bố việc mở mã nguồn WebKit, Nokia thông tin rằng đã chuyển hệ WebKit để điều khiển xe trên hệ điều hành quản lý Symbian và cải tiến và phát triển một trình chu đáo dựa tren WebKit mang lại các điện thoại của họ, sau này chọn cái tên là web Browser for S60. Apple đã và đang chuyển hệ WebKit để điều khiển xe trên iOS (Apple) dành cho iPhone và iPod Touch, được dùng làm hiển thị văn bản trong trình duyệt và trình khách hàng thư năng lượng điện tử,<22> android sử dụng WebKit là gốc rễ cho trình chú tâm web của nó,<23> cùng Palm Pre, reviews tháng 6 năm 2009, bao gồm giao diện dựa trên WebKit.<24>

Vào mon 6 năm 2007, Apple thông tin rằng WebKit vẫn được chuyển hệ sang đến Microsoft Windows như là một trong những phần của Safari. Câu hỏi chuyển hệ đang dần được tiếp tục cho những hệ quản lý và điều hành nguồn mở như Syllable,<25> Haiku<26> và AROS.<27>

WebKit cũng sẽ được chuyển thể sang không hề ít bộ phương pháp khác nhau, như bộ điều khoản GTK+,<28>, bộ dụng cụ Qt và Adobe Integrated Runtime. Qt Software đang đóng gói kèm WebKit vào phiên bạn dạng 4.4 của Qt. WebKit của Qt cũng được Konqueror áp dụng trong KDE 4.1.<13> cũng có một dự án nhất quán hoá với WebKit (tài trợ bởi Pleyo)<29> hotline là Origyn website Browser, cung ứng một nền tảng gốc rễ thống tuyệt nhất của WebKit để nhúng vào các ứng dụng khối hệ thống nhanh và tiện lợi hơn.<30> phiên bản chuyển thể này được dùng trong các hộp set-top, PMP cùng cả AmigaOS cùng AROS.<31><32> bạn dạng chuyển mang lại MorphOS từ OWB đang được phát triển.

Các thành phần

WebCore

WebCore là thư viện tía cục, dựng hình, cùng mẫu đối tượng người dùng văn bạn dạng (DOM) mang đến HTML và SVG, phát triển bởi dự án công trình WebKit. Toàn cục mã nguồn của nó được bảo hộ dưới bản thảo LGPL. Khung WebKit quấn WebCore cùng JavaScriptCore, cung ứng API Objective-C trở thành dựa trên C++ của bộ máy WebCore cùng JavaScriptCore, chất nhận được kết nối đến những ứng dụng dựa trên Cocoa API; các phiên bản sau này bao hàm các đa gốc rễ trừu tượng, và rất nhiều các phiên bản chuyển thể cung ứng sử dụng những API.

WebKit vượt qua bài xích kiểm tra Acid2, vào tháng 9 năm 2008, các bạn dạng cập nhật hàng tối (bao có Safari 4) thừa qua bài bác kiểm tra Acid3 một phương pháp dễ dàng, với bí quyết dựng hình pixel-perfect và không có vấn đề không dựa vào vào phần cứng.<33>

JavaScriptCore

JavaScriptCore là 1 trong những khung hỗ trợ một máy bộ JavaScript nhằm yểm trợ mang đến WebKit, và hỗ trợ sử dụng kiểu ngôn ngữ này phía bên trong Mac OS X.<34><35> JavaScriptCore có xuất phát chính thức từ bộ máy JavaScript của KDE (KJS) (là một trong những phần của dự án KDE) với thư viện biểu thức chính quy PCRE. Trường đoản cú khi khai công từ KJS và PCRE, JavaScriptCore được bổ trợ rất những cùng với tính năng vượt trội.<36>

Drosera

Drosera là trình gỡ lỗi cho JavaScript kèm theo với các phiên bản cập nhật hàng đêm của WebKit.

Xem thêm: Sự Khác Biệt Giữa Phuộc Upside Down Là Gì ? Phuộc Upside Down Nào Cho Xe Độ

<37><38> Nó được lấy tên theo Drosera, một bọn họ cây ăn thịt (v.d. Cây ăn bọ). Drosera đang được thay thế bởi công dụng tương tự có trong website Inspector.<39>