About Globalyzer

From Lingoport Wiki
Revision as of 17:36, 25 August 2022 by Rdaly (talk | contribs) (Globalyzer Client Open Source Libraries)
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Jump to: navigation, search

Lingoport’s Globalyzer was designed to bring internationalization to the forefront and facilitate making software world-ready a priority. Globalyzer generates an assessment of internationalization readiness and applications for real-time i18n detection, validation, and resolution. Globalyzer finds and fixes internationalization (i18n) issues in source code including: embedded strings, locale-sensitive methods/functions/classes (e.g. date/time, number formatting, collation, encoding and more), custom programming patterns, and static files.

Overview

Globalyzer is a product with a long history that has evolved to do many different things and perform different tasks. The unifying thread is the idea of a scan of code using rulesets developed for the code language that identifies localization and internationalization issues.

Some internationization areas that Globalyzer helps in the detection of :

  • Embedded strings in code
  • String concatenations
  • Date/Time formatting and parsing issues
  • Number formatting and parsing issues
  • Currency formatting issue
  • Character encoding issues
  • Images and other static file references that may be locale-dependent
  • External links that may be locale-dependent
  • Text Collation and Comparison issues
  • Address and Phone references (with some Globalyzer custom configuration)
  • Issues in SQL stored procedures
  • Issues in database schema

Globalyzer Server

The Globalyzer Server is the repository of the Rule Sets. If you are an administrator, the Globalyzer Server is also where the Globalyzer license is managed and where teams are created. Rule Sets are tailored to each language to identify localization issues in code.

For more detail about RuleSets, see Globalyzer Server and Rule Sets

MyRuleSets.png

The user can create new rulesets using the default ones provided by Lingoport. This user has 4 rule sets, for the following languages: java, html and javascript. They are all enabled and are shared with the rest of the team.

CustomizeRuleSet.png

When the ruleset is selected the Customize Rule Set comes up and the user can save the default values or make changes to detect different things. If the user selects Locale-Sensitive Methods detection, the specific items that Globalyzer look for come up.

EditLSM.png

Globalyzer Workbench

Once rule sets have been created, then the code can be scanned with the rulesets to show the localization and internationalization issues. Globalyzer does not modify any code during scans.

Globalyzer Workbench is a powerful tool based on the Eclipse IDE which identifies issues and allows users to make changes to the code, the rule sets or choose to ignore the issue.

Globalyzer for IDE

For instructions on how to use Globalyzer in an IDE like IntelliJ, Eclipse or Visual Studio go to Globalyzer in IDE.

Globalyzer for CI/CD (Continuous Integration / Continuous Deployment

The example below shows the results of a Globalyzer Scan for a project.

GlobalyzerDashboard.png

  • The project has been scanned with a JavaScript ruleset that resides locally on the server.
  • It scanned 28 files and 168,905 lines of code.
  • The scan found 4,016 internationalization issues.
  • Of those issues, 1,870 were Embedded Strings; strings that have been hard-coded into the project instead of using key/value pairs in a resource file.

If we look at the Issues, we can look at the problems in the code. For one file:

GlobalyzerIssues.png

This shows the locations of three lines where the Globalyzer Scan identified Embedded Strings in the code.

Getting Started Videos

The following videos introduce Globalyzer:

Pre Flight Check

Globalyzer is used as part of i18n projects. Before starting off on a project, it is recommended to do a Pre Flight Check to help guide how to set up your Globalyzer projects.

Language Support

Globalyzer allows users to scan a number of source code in different programming languages:

  • ActionScript
  • C#
  • C/C++ (many variations)
  • Delphi
  • HTML (in various web files)
  • Java
  • JavaScript (includes AngularJS, NodeJS, and other libraries)
  • Objective-C
  • MXML
  • Perl
  • PHP
  • Qt
  • SQL (Oracle, MS SQL, MySQL, PostgreSQL)
  • Swift2
  • Visual Basic (Classic, .NET)
  • VBScript
  • XML

Globalyzer detects internationalization issues and assists you in fixing those issues.

Globalyzer is flexible in its programming language support and can be adapted to support any language not listed.

Globalyzer Components

Globalyzer consists of two main components: the Globalyzer Server and the Globalyzer Clients. The Globalyzer Clients consist of the Globalyzer Workbench, the Globalyzer Command Line, Globalyzer Lite, Globalzyer API, and the Globalyzer Maven Plugin.

Globalyzer Server - allows development teams around the world to share and collaborate together using high powered internationalization rule sets during scanning of code.

Globalyzer Workbench - provides a fully functional code analysis and editing environment for finding, fixing, testing, and reporting on internationalization issues in a wide variety of programming languages.

Globalyzer Command Line - create automated Globalyzer scans as part of your continuous build integration so that you can report and track internationalization issues over time.

Globalyzer API - Allows you to create Globalyzer projects and scans, execute scans, and generate reports from a Java program.

Globalyzer Lite - Application for scanning code for internationalization issues on the fly and generating corresponding reports. It does not require an external database.

Globalyzer Maven Plugin - Application for scanning MVN projects. Simply download and install the plugin into a private MVN repository and configure your pom.xml file to scan and generate reports.

Licensing

Globalyzer can be licensed in a hosted account configuration, where Lingoport hosts the Globalyzer Server, or as an on premises Globalyzer Server, hosted within your company’s network. Globalyzer is licensed based on organizational use as internationalization is a team development activity and ongoing process. Please contact sales@lingoport.com for more information.

You can also try Globalyzer with a Demo Account. Demo Accounts have two limitations: 1) Globalyzer limits the number of internationalization issues it will report on to approximately 100. 2) You will not be able to see or modify Locale-Sensitive Methods for your Globalyzer Rule Sets.

Globalyzer Client Open Source Libraries

The Globalyzer Clients use a number of open source libraries. For further information: Globalyzer Client Open Source Libraries

Globalyzer Server Open Source Libraries

The Globalyzer Server uses a number of open source libraries. For further information: Globalyzer Server Open Source Libraries

Release Notes

Further information: Globalyzer Release Notes