Mendix (Intermediate and Advanced) pt 2
Compilado de questões dos Learning Paths de nivel intermediário e avançado.
0
0
0
1
How can you have a microflow automatically run at a specific moment in time?
Have it called as a sub-microflow.
Create and enable a scheduled event.
Use the [%CurrentDateTime%] token.
Create it as a nanoflow.
2
What can you use to exit a loop early, instead of finishing the entire list of iterator objects?
An exit event
A continue event
A go-to event
A break event
3
You want to find the total number of objects in a list. What can you easily use to do this?
Create a loop with a counter variable.
Retrieve the value from the iterator object.
Use the [%total%] token.
Use an aggregate list function.
4
What are batches used for?
Processing large amounts of data.
Running nightly cycles.
Hotfixing errors in production.
Duplicating datasets.
5
What is the list object in a loop called?
An iterator
A retrieval list
A looped list
An aggregate list
6
The Mendix Client is:
A Windows application that communicates with the Mendix Runtime.
The component within the Mendix Platform that directly talks to the database server.
A Java application that executes your pages.
Built on a combination of HTML, CSS, and JavaScript and runs in your browser.
7
Static resources in Mendix:
Can never be changed using the Mendix Modeler.
Are transmitted using a proprietary HTTP-like protocol.
Include pages transmitted in Modeler format to the client
Include stylesheets transmitted in CSS format to the client.
8
The Communication between the Mendix Runtime and Database Server:
Needs to be manually triggered by the Mendix developer at all times.
Always takes a distinct form when using a mobile device instead of a desktop device to access an app.
Is fully based on proprietary protocols and can never be examined in case of issues.
Includes communication between the supported database servers using JDBC.
9
What is NOT an advantage of using the database source option versus the XPath option?
The database source option does not require understanding of XPath.
Constraints can be specified much easier and with a lot of guidance by the Modeler.
The database source option can be used to specify constraints that span entities.
The database source option is also available on pages that need to be available in offline mode.
10
When you want to show a list of shipped orders, will the Database data source generate a different request than the XPath data source option?
Yes, the database data source relies on a different request protocol than the XPath data source.
Yes, when using the database data source, data will always be retrieved from the local device.
No, Mendix Runtime will analyze the data source, and will try to parse it in the same request.
No, the database data source will always lead to the same request as the XPath data source.
11
Which of the following is not a possible source of data for a microflow?
A variable passed as input parameter by another microflow.
An object retrieved from the database using a retrieve action.
An object received as input parameter from another microflow.
A page passed as input parameter by another microflow.
12
Is the following statement true or false? By association will always be an in-memory retrieve.
False, if objects aren’t available in memory, a retrieve by association will automatically result in a database retrieve.
True, technically, a retrieve by association cannot result in a query on the database.
True, associated objects are always available in memory, therefore it is always an in-memory retrieve.
False, a retrieve by association will always retrieve the objects from the database directly, to maintain data consistency.
13
Is there ever a reason to retrieve an object from database instead of over association?
Yes, in cases where constraints other than a single association are applicable or where stored database values are required.
No, retrieving from database will exhibit the same behavior as retrieving over association if the object is retrievable over association.
Yes, retrieving from the database makes sure that all the configured entity access rules are applied.
No, by retrieving over association the object will be retrieved from the object cache (if available), which improves performance.
14
What is an important rule to keep in mind when creating effective indexes?
The index should be defined immediately after the attributes have been defined on the entity.
An index must be manually refreshed after deployment to make sure it’s accurate and up to date.
An index makes sense only when querying non-persistent objects.
The index should have the same order of attributes defined as in search and retrieve queries in order to be available for queries.
15
Which of the following is a valid Mendix token?
CurrentUser
CurrentAccount
CurrentTime
CurrentDate
16
You are creating a microflow where you have a Change Object activity. The change is dependent on a lot of checks and decisions (but, whichever choice, the change always happens). What is the best way to model this microflow?
Create a new variable in which you use an if-then-else statement to determine the correct value and use the variable in the Change Object activity.
For each check, place a Decision in the microflow so that each step is visible and easy to read.
Use Decisions, but place them in a sub-microflow to determine what the new value should be, and then use the return value of that sub-microflow in the Change Object activity.
Use an if-then-else statement directly in the Change Object activity to set the correct value.
17
You need to determine what day of the week it is. What is the easiest way to do this?
There is a token available for that: CurrentDayOfWeek.
Use the BeginOfCurrentWeek and BeginOfCurrentDay tokens in combination with the daysBetween function and an if-then-else statement to do this.
It is not possible to do this.
Use the formatDateTime function to achieve this.
18
What is the best approach to retrieve an object over association, while also checking whether the association exists?
Use a business rule to check whether the association exists. If it does, retrieve the associated object and return it to the microflow.
First retrieve the object and then use a decision to check whether the object is empty or not.
Use an if-then-else statement to only retrieve the object if the association exists.
Use a decision to first check whether the association exists. If it does, retrieve the associated object.
19
Which of the following statements about lists is true?
Before looping through a list, you have to check that it isn’t empty.
A list can contain different types of objects.
A list can have, among others, the following origins: a retrieve action, the creation of a new list, and the result of an input parameter.
If you want to empty a list, you have to remove the objects in the list one by one.
20
You have to determine how many customers are in the database and find that there are at least a couple thousand. How do you handle this?
Retrieve all the customers at once and loop through them to count them all.
Store the number of customers in the database, and update every time you add or delete a customer.
Retrieve all the customers at once and use an aggregate list activity to count them. Because this is an optimized query on the database, it will be very light and safe to use, even for big lists.
Retrieve the customers in batches of 500 and loop through them to count them all. In this way, you ensure that you don’t overload the system with too much data.
21
What does the List Operation tail do?
It sorts the list in descending order with the last item first.
It creates a log that tracks all changes to the list.
It grabs the last element in the list.
It grabs all elements in the list except the first element.
22
When would you typically use a List Operation?
All of these answers are correct.
When creating report data to view in chart widgets.
To avoid complex XPaths.
When you are working with objects that only exist in memory.
23
You’ve created a microflow that contains a loop. This loop uses the same logic as a microflow you have already built, so you decide to call this microflow as a sub-microflow inside the loop so that you can reuse the functionality. What do you check before doing this?
All of these answers are correct.
If the sub-microflow uses a return value, you check whether it is really needed.
You make sure that there are no commits in the sub-microflow, since it is not good for your application to commit inside of a loop.
If there are retrieve activities in the sub-microflow for data you already have available in the main microflow, check whether it can be passed along as an input parameter instead.
24
Your application contains a microflow that calls three sub-microflows. Each of these sub-microflows does a retrieve from the database on the same entity. Should you change this?
No, you shouldn’t retrieve it in the main microflow because it is not used there.
Yes, you should only do the retrieve in the first sub-microflow. You should then pass the retrieved object back to the main microflow as a return value and use this return value as an input parameter for the other two sub-microflows.
No, because after the first retrieve, the object will be available in memory.
Yes, you should do the retrieve in the main microflow and then pass it along to the three sub-microflows as an input parameter.
25
Which statement about rules is true?
A rule can only be called from within a decision.
You can give the user validation feedback messages from within a rule.
You can generate a document inside a rule.
You can change objects in a rule.
26
What is a good reason to use a sub microflow?
To use it as a ‘get or create’ microflow.
To increase readability of large microflows.
To reuse the same bit of logic in multiple microflows.
All of these answer options are correct.
27
To which of the following errors types does the built-in consistency checker in the Modeler alert you?
Memory leaks that might jeopardize the stability of your application.
Parts of the application that will not run correctly in the cloud.
Technical issues in your model.
Functional gaps in your application.
28
Which of the following statements is true?
The debugger is always enabled in the Mendix Cloud Portal before it can be used remotely.
The output of log nodes can be used to isolate problems and place breakpoints in a smarter way.
The debugger can only be run locally and on the test/acceptance cloud environments.
When placing breakpoints inside a loop, there is no way of preventing a break on every iteration of the loop.
29
Can you pause a microflow only when certain conditions are met?
Yes, by adding a conditional breakpoint.
Yes, by adding this setting to the cloud environment.
Yes, by placing a breakpoint on an decision.
No, this isn’t possible.
30
When you’re creating a new microflow and you have to create the logic, what is the recommended place to start?
In the middle of a microflow
At the beginning of the microflow
In a Sub-Microflow
At the end of the microflow
31
Why are we creating sub-microflows?
To only have a microflow with a dedicated functionality.
To be able to only re-use the functionality.
To be able to reuse the functionality and have a microflow with dedicated functionality
32
What happens when Mendix is not able to finish the transaction successfully and there is no Error Handling implemented?
The transaction is stopped and Mendix will show an error message in the user interface.
The transaction is stopped and Mendix will show this message: ‘Something went wrong please contact your administrator.’
Nothing
The transaction will be finished and the user won't see a message.
33
You need to create error handling for JAVA actions because:
The app will always show an error if there is no error handling.
Mendix is not able to catch errors that occur in a JAVA action by default.
The JAVA action will not be triggered if there is no error handling.
34
Error handling can occur in microflows that are triggered by:
A sub-microflow
A user
The system
Both, a user and the system
35
It is necessary to create a log message and a user message because:
The error handling will continue without rollback.
The user will get an error if that is not done.
The log message will not appear in the frontend.
The log message will not be complete.
36
Which of the following options needs to be selected to fix an error indicating that the there is no object type selected for the Courseplanning import template?
Select the missing object in the properties of the template.
Create a missing object in a microflow.
Specify reference to import objects.
Replace the template with another one.
37
After an object has been connected to a template, what you must ensure to do before saving this template?
Deleting existing attributes.
On Save, all attributes will be updated automatically.
Creating new attributes.
Connecting matching attributes.
38
A client wants their application to have a very specific color scheme. Whose work is most likely to be affected?
The Frontend developer
The UI designer
The UX designer
The UX researcher
39
A page is taking forever to load. Whose responsibility is it to solve this?
The UI designer
The UI developer
The UX designer
The Frontend developer
40
You want to use a different styling for different parts of the app, what is probably the best setting for this? Show styling for…
App and all modules
App only
App and UI resources modules
41
What is the Styling Editor used for?
Styling and JavaScript actions.
Styling actions.
Styling JSON.
42
What part of the CSS syntax references the object that is to be styled?
Declaration block
Property
Value
Selector
43
Which of the following options has the most weight?
#id a.class
p a.class !important
.foo .bar
li p #foo #bar a.class
44
What is the correct naming convention for Sass partials?
PartialName.scss
partial-name.scss
_partial-name.scss
-partial-name.scss
45
In the Atlas framework, under which folder should you add partials to customize your app's design?
Lib
Web
Core
Custom
46
Where should $variables be kept according to Mendix best practices?
In any partial with the name variable.
It doesn't matter, as long as there are no errors.
In the same partial as partial imports.
Each variable should be kept in a separate partial.
47
According to best practices, how should you change the font side of H1 headers?
By creating a new class in the _scrumptious.scss partial and applying it to the relevant widgets.
By changing the variable in custom-variable.scss.
By using a setting in the appearance tab.
By using the style field.
48
You notice that a property in the inspector has been crossed through, what does this mean?
The property has been deactivated.
There is a fault in the property’s code.
You cannot change this property.
The property has been overwritten.
49
What is the most suitable technique if you want to have an overview of what a user feels and experiences while using an application?
Customer Journey Map
Customer Value Curve
Personas
Empathy Map
50
What is the main aim of using Customer Value Curve?
To find out what shortcomings there are in the general market that you can improve on
To visualize different things a user might experience during an interaction
To forecast how valuable the app will be
To find what part of an application the customer considers to be most important
51
What qualitative technique focuses on how users group different items?
Affinity Diagram
User Interview
Card Sorting
A/B Testing
52
Which of the following are considered qualitative research methods?
Competitor Analysis, A/B Testing, Metrics
Affinity Diagram, Card Sorting, Expert Review
Competitor Analysis, Card Sorting, Expert Review
A/B Testing, Metrics, Affinity Diagram
53
What should you always do in your wireframe?
Add annotations
Create a legend
Use a square with a cross to indicate images
Use Lorem Ipsum as filler text
54
What is the purpose of a prototype? It should be a representation of…
Your application to test with
What the developer should build
What the the application should look like
The structure of the navigation menu
55
What type of prototype can you do on paper?
High fidelity
Wireframe
Low fidelity
Medium fidelity
56
In what element of a design system are you most like to find the color palette?
The pattern library
The reusable components
The style guide
The documentation guidelines
57
Which type of menu bar is most often used for the main navigation of an app?
horizontal
vertical
side
menu
58
Which type of widget allows for more than one object to be selected?
List Grid
List View
Data Grid
All widgets that show multiple objects
59
What would be the best caption for a button that navigates users to a page they use to enter their payment information?
Finish
Continue
Next Page
Submit Order
60
Typically the widget to turn on dark mode would be:
Radio buttons
A checkbox
A drop-down
A switch
61
Which law used in UX states that things that are close to each other physically are seen as a group rather than separate parts:
Proximity
Grouping
Validation
Clarity
62
Which of the following options would make a form easier for a user to fill in:
Using text boxes instead of text areas
Validating inputs as are they are changing
Pre-filling values
Setting more values to be optional instead of required
63
What is true for a green module?
It is likely to contain microflows.
It is a normal development module.
It is a UI resources module.
Its theme folder is always actively in use.
64
What widget should you add to a page to allow users to toggle the sidebar?
A simple menu bar with the orientation set to ‘horizontal’.
A sidebar toggle.
A button with the on-click wet to ‘toggle sidebar’.
A navigation tree.
65
What should you avoid doing when creating a building block or page template?
Linking to other documents.
Adding classes with custom styling.
Using the design properties.
Setting the on-click of a widget to ‘Show a page’.
66
Where do you add new design properties?
In the design-properties.json file.
In the design-properties.scss file.
In the custom-variables.scss file.
In the application settings.
67
Which widget allows navigation with 3 levels of items?
The Navigation tree.
The Menu.
The Simple menu.
The Tree node.
68
In the version number 7.23.3, what is the minor version?
23
7
7.23.3
3
69
What should you be sure to add when sharing a module on Mendix Marketplace?
Add documentation.
Add licensing.
Add a price.
Add an example project.
70
Which of the following statements is FALSE?
UI design is more important than UX design
Those who work on the UX are called UX Designers
UX deals with human-computer interaction
UX design means User Experience design
71
Which of the following is FALSE about the Styling Layer?
It captures the accessibility of the application
It focuses on the emotional experience of the user
An example would be making a button blue
It concerns changing the look and feel of individual elements
72
Usability design is concerned with?
The look and feel of individual elements.
Your brand’s visual identity.
The emotional experience of the user.
The accessibility and ease-of-use of your application.
73
To be a good UX designer you should always?
Design for yourself
Know the user
Create beautiful interfaces
74
Which of these is NOT a tool Mendix provides to help create engaging user experiences?
Page editor
Bootstrap Integration
A Graphic Design Editor
AtlasUI Framework
75
When inheriting layouts Mendix recommends
as many as necessary
no more than 7
a minimum of 3
a maximum of 3
76
Which of the following is an important component of a layout?
Placeholders
Forms
Widgets
Pages
77
Which of the following is a Scroll Behavior option for a Scroll Container?
Full widget
Per element
Per placeholder
Per page
78
Which one is NOT a menu widget?
Menu Bar
Tab Container
Navigation Tree
Simple Menu Bar
79
The Menu Bar is limited to how many levels deep?
One
Two
It is not limited
Three
80
Which is not a way we can create a typographic hierarchy?
Color
Size
Weight
Images
81
Which of the following is NOT a benefit of good typography hierarchy?
Improves usability
Enhances readability
Ease of navigation
Keeps cost low
82
If you wanted to provide feedback to your users that they had entered their date of birth in the wrong format, which visual cue would be best suitable?
Please enter a date
We're sorry, but you need to enter your date of birth in mm/dd/yyyy format
ERROR
Please enter a correct date
83
Why should you use familiar UI patterns?
To help your users feel more at home
You should ignore them and design your own
To make your application less user friendly
Because Apple and Android say so!
84
If you wanted your users to enter a multi-lined delivery note to go with their order, what widget would you use?
Textbox
Textarea
Radiobutton
Datepicker
85
Which one of the following is a way to help make your pages smarter?
Conditional visibility
Helper classes
Snippets
Responsive design
86
What does the helper class ".hidden-xs" do?
Shows content on the phone.
Aligns text to the right.
Changes colour to blue.
Hides content on the phone.
87
What are the three triggers options of widget events?
On-click, on-keydown and on-mouseover
On-touch, on-enter and on-leave
On-enter, on-change and on-leave
On-change, on-click and on-leave
88
By using conditional editability you can change elements to be either?
Editable or read-only
Horizontal or vertical
Visible or hidden
Red or blue
89
If I had a device with a screen width of 800px which column class prefix would be used?
col-lg-*
col-md-*
col-xs-*
col-sm-*
90
The pre-processor Sass helps with what?
Maintaining your domain model
Maintaining your HTML
Creating bigger and larger stylesheets
Maintaining your CSS stylesheets
91
Which of the following are AtlasUI components?
Custom widgets, Datagrid and Connectors
Page Templates, Navigation Layouts and Building Blocks
Navigation Layouts, Building Blocks and Event handlers
Page Templates, Building Blocks and Microflows
92
What do you need to take into account when using Sass?
You need a compilation tool
The syntax looks nothing like CSS
You need different code editing tools
93
Which of the following does the Mendix AtlasUI Framework NOT enable?
Developers without design skills to build multi-device apps
Quick branding of your application
Speedier page creation via page templates and building blocks
Documentation for your microflows
94
To start customizing your Mendix application you should:
Start with learning CSS as a coding language
Start with learning Sass as a coding language
Start with using and customizing Mendix AtlasUI
95
Which of the following is a field of a Mendix log message?
Log event
Log line
Log content
Log node
96
Where can you see the log messages for your app?
In the error pane
In the debugger
In the conector
In the console
97
What is the difference between log messages in Studio Pro and log messages in the Developer portal?
The log messages in the Developer Portal have a Source field.
The log messages in the Developer Portal have a Web field.
The log messages in the Developer Portal have a Destination field.
The log messages in the Developer Portal have a Cloud field.
98
Where do log messages come from?
Log messages are written by the person who created the functionality.
They are written by the IEEE log commission to ensure log messages conform to standards.
The developers at Mendix write all log messages you will encounter in a Mendix application.
Mendix Assist generates the log messages for all Mendix applications.
99
When the log level is set to Error, messages from which other log level will also show up in your logs?
Critical
Warning
All log levels
Debug
100
Which log level is used to warn about unexpected behavior that doesn’t need immediate action?
Debug
Error
Warning
Info