Difference between revisions of "General FAQ"
(→How can Globalyzer help in creating i18n-aware applications throughout the lifecycle of an application) |
(→What programming languages does Globalyzer support?) |
||
(26 intermediate revisions by 3 users not shown) | |||
Line 1: | Line 1: | ||
==What programming languages does Globalyzer support?== |
==What programming languages does Globalyzer support?== |
||
+ | * ActionScript |
||
− | ActionScript, C#, C/C++, Delphi, HTML, Java, JavaScript, Objective-C, MXML, Perl, PHP, Qt, SQL (MS SQL, MySQL, Oracle, PostgreSQL), VB (Classic and .NET), VBScript, and XML. We add additional programming languages at the request of our clients. |
||
+ | * C# |
||
+ | * C/C++ |
||
+ | * Delphi |
||
+ | * Go |
||
+ | * HTML |
||
+ | * Java |
||
+ | * JavaScript / TypeScript, (includes AngularJS, NodeJS, React, and other libraries) |
||
+ | * Objective-C |
||
+ | * MXML |
||
+ | * Perl |
||
+ | * PHP |
||
+ | * Python |
||
+ | * Qt |
||
+ | * SQL (MS SQL, MySQL, Oracle, PostgreSQL) |
||
+ | * Swift2 |
||
+ | * VB (Classic and .NET) |
||
+ | * VBScript, |
||
+ | * XML. |
||
+ | |||
+ | |||
+ | If your language is not shown above, please see [[Scanning Unsupported Languages|Scanning Additional Languages]]. |
||
==How thorough is Globalyzer in reviewing and modifying my code?== |
==How thorough is Globalyzer in reviewing and modifying my code?== |
||
− | It is very thorough, but some of the detection and filtering specificity is controlled by the user. Globalyzer allows for strong detection and filtering controls using regular expressions, as well as built in search management capabilities. The more you learn Globalyzer's capabilities, the easier to refine your results. With regard to modifying code, Globalyzer allows for the editing of code within its fully-functional |
+ | It is very thorough, but some of the detection and filtering specificity is controlled by the user. Globalyzer allows for strong detection and filtering controls using regular expressions, as well as built in search management capabilities. The more you learn Globalyzer's capabilities, the easier to refine your results. With regard to modifying code, Globalyzer allows for the editing of code within its fully-functional IDE (Globalyzer Workbench), though you can use a different IDE to edit source code if you prefer. Globalyzer helps you navigate right from reports to instances in your code that need externalization or further analysis. You can also choose to mark issues with a comment for later review. |
==Why would I use Globalyzer versus my own scripts?== |
==Why would I use Globalyzer versus my own scripts?== |
||
Line 13: | Line 34: | ||
==Can I use Globalyzer with my standard IDE?== |
==Can I use Globalyzer with my standard IDE?== |
||
− | Yes. Globalyzer comments can be inserted which can be quickly searched on and worked on with your preferred IDE. |
+ | Yes. Globalyzer comments can be inserted which can be quickly searched on and worked on with your preferred IDE. |
+ | |||
+ | With the Globalyzer Workbench Client you will have a fully-functioning Eclipse IDE available to you. |
||
+ | |||
+ | The Globalyzer Lite client can be used with Eclipse, Visual Studio and IntelliJ IDEs. |
||
==How can Globalyzer be leveraged across my development team?== |
==How can Globalyzer be leveraged across my development team?== |
||
− | Software internationalization involves a surprisingly complex variety of issues, depending upon your requirements, technologies and unique application needs. Globalyzer’s client/server architecture lets you build and store internationalization detection and filtering rules (which we call Rule Sets), and which can then be shared within your development team. Developers can then perform internationalization tasks efficiently, whether they are working in the next cube or in the next country. |
+ | Software internationalization involves a surprisingly complex variety of issues, depending upon your requirements, technologies and unique application needs. Globalyzer’s client/server architecture lets you build and store internationalization detection and filtering rules (which we call '''Rule Sets'''), and which can then be shared within your development team. Developers can then perform internationalization tasks efficiently, whether they are working in the next cube or in the next country. |
==How can Globalyzer support batch processes?== |
==How can Globalyzer support batch processes?== |
||
− | Globalyzer’s |
+ | Globalyzer’s '''Command Line Client''' and '''Globalyzer Lite Client''' supports batch reporting during automated processes, such as a nightly build. The Command Line Client will automate reports on internationalization status, including output of both summary and detailed reports itemizing internationalization issues and their precise location within source code. Globalyzer is also useful as a QA benchmark, so that code submitted for testing has been clearly analyzed for internationalization compliance, reducing the iterative burden between internationalization and localization testing and development. |
==What results should I expect from running Globalyzer on my source code?== |
==What results should I expect from running Globalyzer on my source code?== |
||
Line 27: | Line 52: | ||
Globalyzer looks for four categories of internationalization issues: |
Globalyzer looks for four categories of internationalization issues: |
||
− | * |
+ | * '''Embedded Strings''': Strings that must be extracted from the source code into translatable resource files so that their display can be in any language. Globalyzer also identifies concatenated strings. |
− | * |
+ | * '''Locale-Sensitive Methods''': Methods and functions (depending upon your programming language) that may restrict character encoding (ISO-Latin or Unicode support), as well as cultural formatting, including date, time, number and currency formatting |
− | * |
+ | * '''Static File References''': References to static files, such as images, which will need to be reviewed for cultural appropriateness and translation of string components within the file |
− | * |
+ | * '''General Patterns''': User-defined patterns that detect internationalization issues that are specific to your source code |
− | Remember that in demo mode, Globalyzer will limit you to viewing |
+ | Remember that in demo mode, Globalyzer will limit you to viewing up to 100 issues it detects. |
==How long does it take to run Globalyzer?== |
==How long does it take to run Globalyzer?== |
||
− | |||
This depends on what you are searching for and how many lines of code you are searching through, as well as if you are optionally using an additional database for tracking results. Most Globalyzer scans can review over two million lines of code in about the amount of time it takes to get a cup of coffee. |
This depends on what you are searching for and how many lines of code you are searching through, as well as if you are optionally using an additional database for tracking results. Most Globalyzer scans can review over two million lines of code in about the amount of time it takes to get a cup of coffee. |
||
Line 56: | Line 80: | ||
==Do I have to submit my source code to the Globalyzer web site?== |
==Do I have to submit my source code to the Globalyzer web site?== |
||
− | No. Your source code is never copied from your local machine. Globalyzer only accesses its server for Rule Set configurations, which are used to detect and filter internationalization issues, and for storing summary counts from the source code scanning process. The |
+ | No. Your source code is never copied from your local machine. Globalyzer only accesses its server for '''Rule Set''' configurations, which are used to detect and filter internationalization issues, and for storing summary counts from the source code scanning process. The '''Globalyzer Workbench Client, Command Line Client''' and '''Globalyzer Lite''' perform all code scanning and reporting on your local machine. |
==Are there any built-in limitations with respect to number of files, number of code lines being processed?== |
==Are there any built-in limitations with respect to number of files, number of code lines being processed?== |
||
− | No, Globalyzer is built to be able to work on large code bases. We test and regularly work on millions of lines of code using Globalyzer in our normal testing cycle and in our internationalization services practice. That said, you do want to make Globalyzer manageable for your development needs. For example, often a client will create a Globalyzer project for each application component. This allows for quicker scanning and more focused results that can be addressed by that component’s development team. In addition, the |
+ | No, Globalyzer is built to be able to work on large code bases. We test and regularly work on millions of lines of code using Globalyzer in our normal testing cycle and in our internationalization services practice. That said, you do want to make Globalyzer manageable for your development needs. For example, often a client will create a Globalyzer project for each application component. This allows for quicker scanning and more focused results that can be addressed by that component’s development team. In addition, the Globalyzer Workbench can be configured to use a MySql database (as opposed to the default HSQLDB) which will have even better performance and is recommended when you use Globalyzer to scan many large code bases. |
'''Note''': When running in demo mode, you are limited to viewing approximately the first 100 results. |
'''Note''': When running in demo mode, you are limited to viewing approximately the first 100 results. |
||
Line 66: | Line 90: | ||
==How can Globalyzer help in creating i18n-aware applications throughout the lifecycle of an application== |
==How can Globalyzer help in creating i18n-aware applications throughout the lifecycle of an application== |
||
− | The Globalyzer Workbench installation includes both the |
+ | The '''Globalyzer Workbench''' installation includes both the Workbench and the '''Command Line Client'''. You can use the Command Line Client to integrate into automated build processes so that you can monitor internationalization status on an ongoing basis. |
==How can Globalyzer help determine project tasks, estimated efforts and project costs?== |
==How can Globalyzer help determine project tasks, estimated efforts and project costs?== |
||
In our internationalization services practice, we use Globlayzer heavily to scope internationalization work which provides metrics of internationalization issues, and then use these results to understand and build extensive project plans. |
In our internationalization services practice, we use Globlayzer heavily to scope internationalization work which provides metrics of internationalization issues, and then use these results to understand and build extensive project plans. |
||
− | |||
== What does "nature" mean? == |
== What does "nature" mean? == |
||
Line 77: | Line 100: | ||
"Nature" is an Eclipse notion. Project natures act as tags on a project to indicate that a certain tool is used to operate on that project. When you create a project and add a Globalyzer Nature to the project, that project can have scans, etc. |
"Nature" is an Eclipse notion. Project natures act as tags on a project to indicate that a certain tool is used to operate on that project. When you create a project and add a Globalyzer Nature to the project, that project can have scans, etc. |
||
− | |||
== If we customize one rule set for some specific files, how easy is it to apply the same rule set for other projects? == |
== If we customize one rule set for some specific files, how easy is it to apply the same rule set for other projects? == |
||
Multiple scans in multiple projects can use the same rule set. |
Multiple scans in multiple projects can use the same rule set. |
||
− | |||
== After the string extraction, can a developer tell what string is associated with the string key other than opening up the resource file? == |
== After the string extraction, can a developer tell what string is associated with the string key other than opening up the resource file? == |
||
− | If you select an externalized string key in the source code, you can right click and select Globalyzer->Resources->Go to Resource Definition and it will bring up the resource file with that entry highlighted. Also, if you set the preference to Automatically Insert Externalized String Comment, when strings are externalized, a comment will be added to the source file with the text of the string that was externalized. |
+ | If you select an externalized string key in the source code, you can right click and select '''Globalyzer->Resources->Go to Resource Definition''' and it will bring up the resource file with that entry highlighted. Also, if you set the preference to '''Window -> Preferences -> Globalyzer - Automatically Insert Externalized String Comment''', when strings are externalized, a comment will be added to the source file with the text of the string that was externalized. |
− | |||
== Can a developer customize the result list – for example, have the freedom to move entries to to-do list or ignore list, etc.? == |
== Can a developer customize the result list – for example, have the freedom to move entries to to-do list or ignore list, etc.? == |
Latest revision as of 17:10, 27 October 2021
Contents
- 1 What programming languages does Globalyzer support?
- 2 How thorough is Globalyzer in reviewing and modifying my code?
- 3 Why would I use Globalyzer versus my own scripts?
- 4 Can I use Globalyzer with my standard IDE?
- 5 How can Globalyzer be leveraged across my development team?
- 6 How can Globalyzer support batch processes?
- 7 What results should I expect from running Globalyzer on my source code?
- 8 How long does it take to run Globalyzer?
- 9 Can Globalyzer help me build resource files and externalize strings from my source code?
- 10 Is Globalyzer automatically (automagically) fixing my code? Is Globalyzer adding anything proprietary?
- 11 Do I have to submit my source code to the Globalyzer web site?
- 12 Are there any built-in limitations with respect to number of files, number of code lines being processed?
- 13 How can Globalyzer help in creating i18n-aware applications throughout the lifecycle of an application
- 14 How can Globalyzer help determine project tasks, estimated efforts and project costs?
- 15 What does "nature" mean?
- 16 If we customize one rule set for some specific files, how easy is it to apply the same rule set for other projects?
- 17 After the string extraction, can a developer tell what string is associated with the string key other than opening up the resource file?
- 18 Can a developer customize the result list – for example, have the freedom to move entries to to-do list or ignore list, etc.?
What programming languages does Globalyzer support?
- ActionScript
- C#
- C/C++
- Delphi
- Go
- HTML
- Java
- JavaScript / TypeScript, (includes AngularJS, NodeJS, React, and other libraries)
- Objective-C
- MXML
- Perl
- PHP
- Python
- Qt
- SQL (MS SQL, MySQL, Oracle, PostgreSQL)
- Swift2
- VB (Classic and .NET)
- VBScript,
- XML.
If your language is not shown above, please see Scanning Additional Languages.
How thorough is Globalyzer in reviewing and modifying my code?
It is very thorough, but some of the detection and filtering specificity is controlled by the user. Globalyzer allows for strong detection and filtering controls using regular expressions, as well as built in search management capabilities. The more you learn Globalyzer's capabilities, the easier to refine your results. With regard to modifying code, Globalyzer allows for the editing of code within its fully-functional IDE (Globalyzer Workbench), though you can use a different IDE to edit source code if you prefer. Globalyzer helps you navigate right from reports to instances in your code that need externalization or further analysis. You can also choose to mark issues with a comment for later review.
Why would I use Globalyzer versus my own scripts?
Globalyzer encapsulates a terrific amount of research and development regarding internationalization issues and how to resolve them. It would be extremely difficult to develop an internationalization detection script that is as comprehensive and powerful, much less easily leveraged across your software team. And, even if you could come up with your own scripts, wouldn’t your team be better off working on your product, rather than on internationalization issue detection? Globalyzer was first released in 2001 and has been continually developed ever since, allowing for the inclusion of features desired from our broad customer base.
Can I use Globalyzer with my standard IDE?
Yes. Globalyzer comments can be inserted which can be quickly searched on and worked on with your preferred IDE.
With the Globalyzer Workbench Client you will have a fully-functioning Eclipse IDE available to you.
The Globalyzer Lite client can be used with Eclipse, Visual Studio and IntelliJ IDEs.
How can Globalyzer be leveraged across my development team?
Software internationalization involves a surprisingly complex variety of issues, depending upon your requirements, technologies and unique application needs. Globalyzer’s client/server architecture lets you build and store internationalization detection and filtering rules (which we call Rule Sets), and which can then be shared within your development team. Developers can then perform internationalization tasks efficiently, whether they are working in the next cube or in the next country.
How can Globalyzer support batch processes?
Globalyzer’s Command Line Client and Globalyzer Lite Client supports batch reporting during automated processes, such as a nightly build. The Command Line Client will automate reports on internationalization status, including output of both summary and detailed reports itemizing internationalization issues and their precise location within source code. Globalyzer is also useful as a QA benchmark, so that code submitted for testing has been clearly analyzed for internationalization compliance, reducing the iterative burden between internationalization and localization testing and development.
What results should I expect from running Globalyzer on my source code?
Globalyzer looks for four categories of internationalization issues:
- Embedded Strings: Strings that must be extracted from the source code into translatable resource files so that their display can be in any language. Globalyzer also identifies concatenated strings.
- Locale-Sensitive Methods: Methods and functions (depending upon your programming language) that may restrict character encoding (ISO-Latin or Unicode support), as well as cultural formatting, including date, time, number and currency formatting
- Static File References: References to static files, such as images, which will need to be reviewed for cultural appropriateness and translation of string components within the file
- General Patterns: User-defined patterns that detect internationalization issues that are specific to your source code
Remember that in demo mode, Globalyzer will limit you to viewing up to 100 issues it detects.
How long does it take to run Globalyzer?
This depends on what you are searching for and how many lines of code you are searching through, as well as if you are optionally using an additional database for tracking results. Most Globalyzer scans can review over two million lines of code in about the amount of time it takes to get a cup of coffee.
For example, an initial scan of 2.3 million lines of C++ code, on a 2.5 GHz dual core laptop, takes 3 minutes, 37 seconds; the results are similar for Java and C# source code scanning.
With each release we find ways to improve performance so be sure to download and install the latest version.
Can Globalyzer help me build resource files and externalize strings from my source code?
Yes it can, and it will add great productivity to that long and tedious task. It is common for developers to be able to comfortably externalize 1,000 strings and more per day using Globalyzer. Globalyzer lets you see the string within your code and manages the whole externalization process. It is customizable, giving the developer complete control while aiding productivity.
Is Globalyzer automatically (automagically) fixing my code? Is Globalyzer adding anything proprietary?
No, Globalyzer does not make changes without your knowledge and does not add any proprietary elements to your source code. However, once you do approve the fix for one or more internationalization issues, Globalyzer does have highly productive capabilities to speed up repetitive internationalization tasks, such as string externalization.
Do I have to submit my source code to the Globalyzer web site?
No. Your source code is never copied from your local machine. Globalyzer only accesses its server for Rule Set configurations, which are used to detect and filter internationalization issues, and for storing summary counts from the source code scanning process. The Globalyzer Workbench Client, Command Line Client and Globalyzer Lite perform all code scanning and reporting on your local machine.
Are there any built-in limitations with respect to number of files, number of code lines being processed?
No, Globalyzer is built to be able to work on large code bases. We test and regularly work on millions of lines of code using Globalyzer in our normal testing cycle and in our internationalization services practice. That said, you do want to make Globalyzer manageable for your development needs. For example, often a client will create a Globalyzer project for each application component. This allows for quicker scanning and more focused results that can be addressed by that component’s development team. In addition, the Globalyzer Workbench can be configured to use a MySql database (as opposed to the default HSQLDB) which will have even better performance and is recommended when you use Globalyzer to scan many large code bases.
Note: When running in demo mode, you are limited to viewing approximately the first 100 results.
How can Globalyzer help in creating i18n-aware applications throughout the lifecycle of an application
The Globalyzer Workbench installation includes both the Workbench and the Command Line Client. You can use the Command Line Client to integrate into automated build processes so that you can monitor internationalization status on an ongoing basis.
How can Globalyzer help determine project tasks, estimated efforts and project costs?
In our internationalization services practice, we use Globlayzer heavily to scope internationalization work which provides metrics of internationalization issues, and then use these results to understand and build extensive project plans.
What does "nature" mean?
"Nature" is an Eclipse notion. Project natures act as tags on a project to indicate that a certain tool is used to operate on that project. When you create a project and add a Globalyzer Nature to the project, that project can have scans, etc.
If we customize one rule set for some specific files, how easy is it to apply the same rule set for other projects?
Multiple scans in multiple projects can use the same rule set.
After the string extraction, can a developer tell what string is associated with the string key other than opening up the resource file?
If you select an externalized string key in the source code, you can right click and select Globalyzer->Resources->Go to Resource Definition and it will bring up the resource file with that entry highlighted. Also, if you set the preference to Window -> Preferences -> Globalyzer - Automatically Insert Externalized String Comment, when strings are externalized, a comment will be added to the source file with the text of the string that was externalized.
Can a developer customize the result list – for example, have the freedom to move entries to to-do list or ignore list, etc.?
Yes, scan result statuses can be changed. Select one or more scan results, right-click and select the new status.