I've been reading some details about Qt d-pointer and came across the binary compatibility term. Is this the same as backward compatibility?
Backward compatibility of shared libraries includes:
Binary compatibility
Source compatibility
Behavioral compatibility
So, the answer is NO. Binary compatibility is only the part of backward compatibility.
See the "Kinds of Compatibility: Source, Binary, and Behavioral" for more info.
Related
I was reading the official Nuxt.js guide, but it says it is only supporting ES6/ES7.
In normal cases, the newest version of ES8 or ES9, they are ignored or not supported yet?
Is there any reason that ES6 is used as a term to mention the newest Javascript version than latest one?
The newser ES standards don't need to be supported by these libraries. You can normally provide support for later standards and experimental features by babel.
Found a similar question about the difference between QAPlug-FindBugs and FindBugs-IDEA, but not about CheckStyle...
I think (from previous experience) with these plug-ins that one difference is that the QAPlug's CheckStyle version seems to be behind the CheckStyle-IDEA's CheckStyle version (I'm not referring to the versions of the plug-ins, but of the version of CheckStyle that's embedded in them).
Anyone knows of any other differences between those?
Advantages of CheckStyle-IDEA over QAPlug – Checkstyle:
Newer version of Checkstyle used
Community on GitHub
Fast scan before commit
Support for multiple configurations
Support for third-party checks
I haven't noticed any use case when QAPlug is better.
Backward compatibility means (as I understand it) that newer versions of the code will:
Still be able to read data written by older versions
Still be able to operate with older versions using some network protocol
Basically, nothing will break when I upgrade a system to a newer version, even if it is just one part of a larger system, or uses resources created by the older system
But what is "Forward Compaitible"?
Forward compatible bascially means that the code will be compatible with newer versions of the software. In other words, code you enter now will smoothly transition to the next software version. You could also think of it that the next version(s) of software will be reverse compatible with the current version.
https://en.wikipedia.org/wiki/Forward_compatibility
Backward compatibility vs forward compatibility
We have two versions of a software: the version A, and a newer version B. We say:
B is backward compatible with A if everything that works on A will still work on B.
A is forward compatible with B if everything that works on A will still work on B.
B is backward compatible if it is backward compatible with all the versions < B.
A is forward compatible if it is forward compatible with all the versions > A.
I'm having trouble finding older revisions of the HTML5 specification. I keep finding resources such as WHATWG's version, or HTML5 differences from HTML4 and my google-fu is failing me.
Is there a repo where I can browse different versions of the HTML5 spec, and (more importantly) compare different versions?
It depends on how far back you want to go, but for looking at earlier versions a couple of options spring to mind.
The latest version of the spec has a list of links to some previous drafts at the very start.
The other option is the Wayback Machine, but it seems it stopped indexing the pages mid-2011.
Don't know how you'd go about comparing them though. You might be better looking at the diff tracker although that's tracking changes on the WHATWG version.
From what I've read of web storage in HTML5, there are a number of different storage options with varying support across different browsers.
Are there any popular libraries for abstraction of web storage in HTML5 applications?
There are a couple of YUI-based libraries for abstracting the underlying storage away:
YUI 2: Storage Utility
YUI 3: Storage Lite
You'd need to port them if you wanted to use them with another library, though it looks like someone has already done that for jQuery.