Skip to content
インタ―システムズ製品やソリューション、キャリアの機会などについて、検索してご覧ください。

InterSystems ObjectScript Specialist

Object-oriented programming, SQL for application data access, ObjectScript specifics, InterSystems IRIS specific technologies

The InterSystems ObjectScript Specialist exam is designed to validate core skills for developers who build applications using ObjectScript and other InterSystems technologies.

Purchase Certification Exam

Exam Details

Target Exam Role

An IT professional who:

  • Is familiar with object-oriented programming concepts
  • Uses InterSystems ObjectScript programming language, including objects and SQL, for data access

Recommended Practical Experience

  • At least 1 year of experience writing and executing ObjectScript code using InterSystems technologies.

Recommended Preparation

Exam Parameters

Number of questions: 87
Time allotted to take exam: 2.5 hours
Passing score: 72%
Language offered: English
Exam format: Multiple choice and multiple response.Access to InterSystems Documentation will be available during the exam.

Exam Topics and Content

The exam contains question items that cover the areas for the stated role as shown in the KSA (Knowledge, Skills, Abilities) chart immediately below.


TOPICS/KNOWLEDGE

SECTION/SKILLS


ABILITIES

T1 Manages Data Model
T1.1
Uses classes
  1. Identifies use cases for persistent and registered object classes
  2. Creates and saves a persistent object
  3. Deletes objects
  4. Interprets storage definitions
  5. Implements multiple inheritance
  6. Documents classes
T1. 2.
Creates properties, indexes, and other class members
  1. Sets max length for string properties
  2. Uses stream properties for large data sets
  3. Creates properties that calculate values dynamically or are auto-updated (e.g., a timestamp for last updated)
  4. Creates and validates class member parameters and attributes
  5. Selects appropriate index type based on data distribution
  6. Uses unique index methods
  7. Recalls how foreign keys enforce referential integrity
T1.3
Creates ObjectScript methods
  1. Differentiates between instance and class methods
  2. Uses class parameters inside methods
  3. Specifies method arguments and return type
  4. Passes objects to methods
  5. Passes variables by reference
  6. Passes multidimensional variables by reference
  7. Uses and overrides inherited methods
  8. Determines when to use ##super for calling superclass methods
T1.4
Uses complex structures
  1. Creates dynamic objects/arrays (JSON) 
  2. Uses stream objects of the appropriate type
T2
Applies basic programming concepts to InterSystemsObjectScript and SQL
T2.1
Ensures data integrity
  1. Manages transactions
  2. Manages rollbacks
  3. Describes how LOCKs enforce concurrency
  4. Describes lock escalation threshold and effect on row locks versus table locks
  5. Differentiates between pessimistic and optimistic concurrency controls
  6. Uses transactions and applies concurrency controls in SQL scripts
T2.2
Tracks application data
  1. Locates and accesses applicationglobals
  2. Uses logging to track application data
  3. Adds and tracks metrics for performance monitoring
T2.3
Implements security features when writing code 
  1. Ensures appropriate variable and global use to avoid security leaks
  2. Checks roles for permission control
  3. Prevents SQL injection attacks
  4. Implements embedded SQL permission checks
T3
Identifies and leverages features unique to InterSystems IRIS 
T3.1
Differentiates between different storage media in InterSystems IRIS
  1. Differentiates between PPGs, variables, temporary globals, andglobals
T3.2
Leverages InterSystems ObjectScript and SQL features
  1. Identifies ObjectScript as a weakly typed language and contrasts its usage with strongly typed languages
  2. Uses system macros and include files
  3. Describes how object structures are projected to SQL tables
  4. Differentiates between Embedded and Dynamic SQL
  5. Differentiates between runtime and select modes, and enforces the correct mode
  6. Uses SQL variables such as ROWID and SQLCODE
T3.3
Handles nulls
  1. Manages $C(0) in SQL and ObjectScript
T3.4
Handles schema evolution
  1. Adds indexes to existing properties
  2. Describes the impact of changing the name and datatype of a property with existing data
  3. Describes consequences of purging cached queries after schema changes
T3.5
Ensures scalability and performance
  1. Uses TUNE TABLE to optimize performance
  2. Interprets basic query plans
  3. Tests code correctness and performance in non-functional tests
T4
Uses ObjectScript functions and APIs for common operations
T4.1
Traverses and sorts arrays
  1. Describes how subscripts are sorted within an array
  2. Traverses subset of a subscript using $ORDER
  3. Traverse multi-level variables using $ORDER
  4. Checks the existence of array nodes with $DATA
T4.2
Manipulates and processes lists
  1. Uses $LIST to insert/update/delete elements in a list
  2. Retrieves and iterates through elements in a list using $LISTGET and $LISTNEXT
  3. Converts between lists and strings
T4.3
Manipulates strings
  1. Uses $PIECE to extract and manipulate delimited strings
  2. Uses $EXTRACT to retrieve substrings
  3. Uses $REPLACE, $TRANSLATE, and $ZSTRIP to manipulate strings
  4. Interpolates strings
  5. Uses regular expressions to search and replace patterns in strings
  6. Uses $ZCONVERT to escape and encode strings
  7. Recalls how to escape special characters within strings
T4.4
Performs mathematical, logical, date, and time operations
  1. Uses mathematical operators 
  2. Uses logical operators
  3. Formats dates and times (e.g., uses $ZDATE, $ZTIME, and $HOROLOG)
  4. Performs arithmetic operations on date/time values
T4.5
Uses decision and control structures
  1. Uses post-conditionals to control which commands are executed
  2. Distinguishes between the quit and return commands
T4.6
Executes and queries methods and objects
  1. Executes methods with $METHOD and $CLASSMETHOD
  2. Uses %IsA and %ClassName to obtain information about existing objects
  3. Uses %Dictionary to inspect class definitions
T4.7
Uses APIs for common operations
  1. Reads and writes files with %Streampackage
  2. Uses %Net to make HTTP requests, transfer files securely, and send emails
T5
Handles and resolves errors in InterSystems IRIS
T5.1
Uses InterSystems IRIS supported troubleshooting tools
  1. Uses tools provided in InterSystems IRIS for monitoring code performance
  2. Interprets class compilation errors 
T5.2
Handles and logs runtime errors
  1. Uses TRY-CATCH to handle runtime errors
  2. Throws and handles exceptions in ObjectScript
  3. Reviews application error log for runtime failures
  4. Uses $STACK to analyze and trace runtime errors
  5. Converts error status codes to readable messages
  6. Differentiates between statuses and exceptions when troubleshooting
T5.3
Diagnoses and debugs common runtime errors
  1. Diagnoses and debugs <SUBSCRIPT> errors
  2. Diagnoses and debugs <PROTECT> errors
  3. Diagnoses and debugs <FRAMESTACK> errors 
  4. Diagnoses and debugs <UNDEFINED> errors