InterviewSolution
This section includes InterviewSolutions, each offering curated multiple-choice questions to sharpen your knowledge and support exam preparation. Choose a topic below to get started.
| 1. |
Is Judo Good For Templates? |
|
Answer» You have two WAYS to CREATE a templating system in Judo,
Another convenience is the Local Data mechanism, that you can attach a TEMPLATE right at the end of the script. You have two ways to create a templating system in Judo, Another convenience is the Local Data mechanism, that you can attach a template right at the end of the script. |
|
| 2. |
What Is The Easiest Way To Read A Text File, Line-by-line? |
|
Answer» USE the do ... as LINES {} STATEMENT. Use the do ... as lines {} statement. |
|
| 3. |
How To Use Java Static Members And Methods? |
|
Answer» USE :: between the Java class name and the static method or MEMBER name to use them. Or, If a static Java method is repeatedly used, can use the static Java method alias mechanism to make them look LIKE regular Judo functions. Use :: between the Java class name and the static method or member name to use them. Or, If a static Java method is repeatedly used, can use the static Java method alias mechanism to make them look like regular Judo functions. |
|
| 4. |
Can I Use My Java Classes? Do I Have To Specify My Long Java Class Names Everytime? |
|
Answer» Any Java classes can be USED in Judo. USE the Java package NAME shortcut mechanism to make it easier to use if your Java class names have long package names. Any Java classes can be used in Judo. Use the Java package name shortcut mechanism to make it easier to use if your Java class names have long package names. |
|
| 5. |
How To Serialize Executable Runs? |
|
Answer» By SPECIFYING a VARIABLE to RECEIVE the return value of the executable, you can EFFECTIVELY serialize multiple executable runs. By specifying a variable to receive the return value of the executable, you can effectively serialize multiple executable runs. |
|
| 6. |
How To Copy Multiple Directories Into A Single Zip File? |
|
Answer» Use createJar(), createZip() or createTar() system FUNCTIONS to create a ZIP or tar archive, then use the COPY command for each directory into that archive before FINALLY call the CLOSE() method of the archive object to complete. Use createJar(), createZip() or createTar() system functions to create a ZIP or tar archive, then use the copy command for each directory into that archive before finally call the close() method of the archive object to complete. |
|
| 7. |
How To Specify A (non-built-in) Jdbc Driver Class? |
|
Answer» You can use the Java way of Class.forName(jdbcDriverClassName), or SPECIFY it as an attribute of "driver" in the DATABASE connection STATEMENT. You can use the Java way of Class.forName(jdbcDriverClassName), or specify it as an attribute of "driver" in the database connection statement. |
|
| 8. |
Are Judo's Jdbc Scripts Cross-rdbms's? |
|
Answer» It "Is Java's JDBC cross-RDBMS's", because Judo does not provide anything beyond what JDBC DRIVERS provide. In other words, Judo passes SQL and other parameters via JDBC API to the SPECIFIC JDBC driver being USED without further FILTERING and INTERPRETATION. It "Is Java's JDBC cross-RDBMS's", because Judo does not provide anything beyond what JDBC drivers provide. In other words, Judo passes SQL and other parameters via JDBC API to the specific JDBC driver being used without further filtering and interpretation. |
|
| 9. |
What Is Native Support In Judo? What Is A Non-native Support Then? |
|
Answer» A native SUPPORT in JUDO generally MEANS specific syntax support in Judo, sometimes it is just a built-in FUNCTION. A "non-native" support for a Java software or feature basically means you have to program using the Java APIS. A native support in Judo generally means specific syntax support in Judo, sometimes it is just a built-in function. A "non-native" support for a Java software or feature basically means you have to program using the Java APIs. |
|
| 10. |
Can I Script Java Classes Of The Judo Engine? |
|
Answer» This is prohibited (by the LANGUAGE engine) EXCEPT for the com.judoscript.util.* PACKAGE and its sub-packages. And their uses are not documented or GUARANTEED. This is prohibited (by the language engine) except for the com.judoscript.util.* package and its sub-packages. And their uses are not documented or guaranteed. |
|
| 11. |
How To Use Threads In Judo? Can I Use Java Thread Objects? |
|
Answer» SINCE you can use any Java OBJECTS in Judo programs, NOTHING prevents you from using java.lang.Thread objects, but this is strongly discouraged. Since you can use any Java objects in Judo programs, nothing prevents you from using java.lang.Thread objects, but this is strongly discouraged. |
|
| 12. |
Is Judo Embeddable In Java Software? |
|
Answer» YES, in one of the two WAYS: its ENGINE API and its BSF support. Yes, in one of the two ways: its engine API and its BSF support. |
|
| 13. |
Why You Created Judo? |
|
Answer» To USE Java for everything, not just programming. Specifically,
To use Java for everything, not just programming. Specifically, |
|
| 14. |
Can You List Some Facts About Judo? |
Answer»
|
|
| 15. |
What About Judo's Performance? |
|
Answer» Judo's performance is surprisingly GOOD, most probably thanks to the JVM JIT compilers. The start-up is not that FAST; on Windows 2000 and (slower) Linux machines, SMALL to medium size scripts take 2 to 4 seconds to BEGIN executing. Judo's performance is surprisingly good, most probably thanks to the JVM JIT compilers. The start-up is not that fast; on Windows 2000 and (slower) Linux machines, small to medium size scripts take 2 to 4 seconds to begin executing. |
|
| 16. |
What Are Judo's Shortcomings? |
|
Answer» Judo is totally BASED on Sun's Java. Java implements the common denominator of all supported platforms, and is not great to DEAL with popular platform features such as 'chmod' on Unix. Judo tries HARD to provide features on popular platforms by working around Java's problems (for instance, 'chmod' and 'chown' are IMPLEMENTED for Unix platforms, environment variables are handled, etc.), but there must be situations where platform native code (through JNI) is needed. The classic example is COM scripting. This does not necessarily break the "100% Pure Java"-ness of Judo, because such features are DECLARED to be optional. By the way, Judo never bothered to pass the "100% Pure Java" test. Judo is totally based on Sun's Java. Java implements the common denominator of all supported platforms, and is not great to deal with popular platform features such as 'chmod' on Unix. Judo tries hard to provide features on popular platforms by working around Java's problems (for instance, 'chmod' and 'chown' are implemented for Unix platforms, environment variables are handled, etc.), but there must be situations where platform native code (through JNI) is needed. The classic example is COM scripting. This does not necessarily break the "100% Pure Java"-ness of Judo, because such features are declared to be optional. By the way, Judo never bothered to pass the "100% Pure Java" test. |
|
| 17. |
Why The Name Judo? |
|
Answer» BETTER names are already TAKEN. The name is chosen because a) it sounds ok, and B) it starts with "J". Better names are already taken. The name is chosen because a) it sounds ok, and b) it starts with "J". |
|
| 18. |
When Not To Use Judo? |
|
Answer» Scripting languages are great for doing things quickly, or tasks that are simple, straightforward and take FREQUENTLY updates. Scripting languages are not designed for building big software; that is the job of system languages such as C, C++ or Java. If a big software project is coded in a scripting language, you can pretty much assume it is STILL in prototype stage. Why? because system languages have mechanisms that enable compilers enforce stringent rules so as to prevent many potential problems; compilers can also OPTIMIZE the final PRODUCT to gain more performance. JUDO, being a pure scripting language, is no exception to this rule. Scripting languages are great for doing things quickly, or tasks that are simple, straightforward and take frequently updates. Scripting languages are not designed for building big software; that is the job of system languages such as C, C++ or Java. If a big software project is coded in a scripting language, you can pretty much assume it is still in prototype stage. Why? because system languages have mechanisms that enable compilers enforce stringent rules so as to prevent many potential problems; compilers can also optimize the final product to gain more performance. Judo, being a pure scripting language, is no exception to this rule. |
|
| 19. |
What Is The Licensing Term Of Judo? |
|
Answer» LGPL. You are ESSENTIALLY FREE to do anything with the SOFTWARE and its source code. LGPL. You are essentially free to do anything with the software and its source code. |
|
| 20. |
How Does Judo Compare To J/python? |
|
Answer» JYTHON, BeanShell, Rhino, Judo and other JAVA-based scripting languages are all general-purpose programming languages and are capable of scripting Java, DESPITE their syntax differences. On top of that, Judo also provides many APPLICATION level scripting features at the language level, so Judo SUPPORTS object-level, OS-level and application-level scripting. Jython, BeanShell, Rhino, Judo and other Java-based scripting languages are all general-purpose programming languages and are capable of scripting Java, despite their syntax differences. On top of that, Judo also provides many application level scripting features at the language level, so Judo supports object-level, OS-level and application-level scripting. |
|
| 21. |
What Is The Difference Between Judo And Other Scripting Languages? What Is The Compelling Hook Over Others? |
|
Answer» Judo is a potent programming and Java scripting language. What differs it from others is, Judo has many built-in language constructs for popular application areas, making their uses intuitive, natural and elegant. With such a 3GL-4GL language design, Judo puts extraordinary emphasis on ease-of-use as well as ease-of-program. Take Python, a perfect example of traditional programming languages, especially so-called scripting languages. It employs a small set of core language syntax and constructs, including a library mechanism that allows users to extend functionalities of the language. A library is a collection of APIS that application software are built UPON. To ensure maximum reusablity and applicability, APIs are generally low-level and detailed relative to the problem you are trying to solve. Such is the 3GL approach. If 4GL is a new TERM to you, think about Unix shells. Unix shells are legitimate programming languages, and has special commands that pertain to topics common to all Unix system users, such as file system manipulation, process control, system configuration, etc. For instance, you use 'cp' command to copy files, instead of coding a job-control-language (with APIs) to do the same. Judo is the first and only Java-based scripting language that does all the above but extends its reach into many of TODAY's popular application fields, such as JDBC scritping, XML scripting, SGML scraping, COM scripting, internet scripting, GUI scripting, etc. This is the compelling hook over most other scripting languages. Judo is a potent programming and Java scripting language. What differs it from others is, Judo has many built-in language constructs for popular application areas, making their uses intuitive, natural and elegant. With such a 3GL-4GL language design, Judo puts extraordinary emphasis on ease-of-use as well as ease-of-program. Take Python, a perfect example of traditional programming languages, especially so-called scripting languages. It employs a small set of core language syntax and constructs, including a library mechanism that allows users to extend functionalities of the language. A library is a collection of APIs that application software are built upon. To ensure maximum reusablity and applicability, APIs are generally low-level and detailed relative to the problem you are trying to solve. Such is the 3GL approach. If 4GL is a new term to you, think about Unix shells. Unix shells are legitimate programming languages, and has special commands that pertain to topics common to all Unix system users, such as file system manipulation, process control, system configuration, etc. For instance, you use 'cp' command to copy files, instead of coding a job-control-language (with APIs) to do the same. Judo is the first and only Java-based scripting language that does all the above but extends its reach into many of today's popular application fields, such as JDBC scritping, XML scripting, SGML scraping, COM scripting, internet scripting, GUI scripting, etc. This is the compelling hook over most other scripting languages. |
|