JSON is an essential file and data format in domains that span scientific computing, web APIs or configuration management. Its popularity has motivated significant software development effort to build multiple libraries to process JSON data. Previous studies focus on performance comparison among these libraries and lack a software engineering perspective. We present the first systematic analysis and comparison of the input / output behavior of 20 JSON libraries, in a single software ecosystem: Java/Maven. We assess behavior diversity by running each library against a curated set of 473 JSON files, including both well-formed and ill-formed files. The main design differences, which influence the behavior of the libraries, relate to the choice...
Background: Previous research has shown that crypto APIs are hard for developers to understand and d...
Software developers use collection data structures extensively andare often faced with the task of p...
This dataset includes trace information as well as details about the code structure for four open so...
JSON is an essential file and data format in domains that span scientific computing, web APIs or con...
Despite its obvious benefits, the increased adoption of package managers to automate the reuse of li...
Backward compatibility is a major concern for any library developer. In this paper, we evaluate how ...
Application Programming Interfaces (APIs) are a tremendous resource—that is, when they are stable. S...
Application Programming Interfaces (APIs) are a tremendous resource—that is, when they are stable. S...
While assessing software performance quality in the cloud, we noticed some significant performance v...
Thanks to the emergence of package managers and online software repositories, modern software develo...
Maven, a widely adopted software ecosystem for Java libraries, plays a critical role in the developm...
In this paper, we study how object-oriented classes are used across thousands of software packages. ...
Today's software industry relies heavily on the reuse of existing software libraries. Such libraries...
International audienceIn this paper, we study how object-oriented classes are used across thousands ...
Streaming APIs allow for big data processing of native data structures by providing MapReduce-like o...
Background: Previous research has shown that crypto APIs are hard for developers to understand and d...
Software developers use collection data structures extensively andare often faced with the task of p...
This dataset includes trace information as well as details about the code structure for four open so...
JSON is an essential file and data format in domains that span scientific computing, web APIs or con...
Despite its obvious benefits, the increased adoption of package managers to automate the reuse of li...
Backward compatibility is a major concern for any library developer. In this paper, we evaluate how ...
Application Programming Interfaces (APIs) are a tremendous resource—that is, when they are stable. S...
Application Programming Interfaces (APIs) are a tremendous resource—that is, when they are stable. S...
While assessing software performance quality in the cloud, we noticed some significant performance v...
Thanks to the emergence of package managers and online software repositories, modern software develo...
Maven, a widely adopted software ecosystem for Java libraries, plays a critical role in the developm...
In this paper, we study how object-oriented classes are used across thousands of software packages. ...
Today's software industry relies heavily on the reuse of existing software libraries. Such libraries...
International audienceIn this paper, we study how object-oriented classes are used across thousands ...
Streaming APIs allow for big data processing of native data structures by providing MapReduce-like o...
Background: Previous research has shown that crypto APIs are hard for developers to understand and d...
Software developers use collection data structures extensively andare often faced with the task of p...
This dataset includes trace information as well as details about the code structure for four open so...