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?
Create it as a nanoflow.
Create and enable a scheduled event.
Use the [%CurrentDateTime%] token.
Have it called as a sub-microflow.
2
What can you use to exit a loop early, instead of finishing the entire list of iterator objects?
A continue event
An exit event
A break event
A go-to event
3
You want to find the total number of objects in a list. What can you easily use to do this?
Use an aggregate list function.
Use the [%total%] token.
Create a loop with a counter variable.
Retrieve the value from the iterator object.
4
What are batches used for?
Hotfixing errors in production.
Duplicating datasets.
Processing large amounts of data.
Running nightly cycles.
5
What is the list object in a loop called?
An iterator
A looped list
A retrieval list
An aggregate list
6
The Mendix Client is:
The component within the Mendix Platform that directly talks to the database server.
A Windows application that communicates with the Mendix Runtime.
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 stylesheets transmitted in CSS format to the client.
Include pages transmitted in Modeler format to the client
8
The Communication between the Mendix Runtime and Database Server:
Includes communication between the supported database servers using JDBC.
Is fully based on proprietary protocols and can never be examined in case of issues.
Always takes a distinct form when using a mobile device instead of a desktop device to access an app.
Needs to be manually triggered by the Mendix developer at all times.
9
What is NOT an advantage of using the database source option versus the XPath option?
The database source option can be used to specify constraints that span entities.
Constraints can be specified much easier and with a lot of guidance by the Modeler.
The database source option does not require understanding of XPath.
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.
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.
Yes, when using the database data source, data will always be retrieved from the local device.
11
Which of the following is not a possible source of data for a microflow?
A page passed as input parameter by another microflow.
A variable passed as input parameter by another microflow.
An object received as input parameter from another microflow.
An object retrieved from the database using a retrieve action.
12
Is the following statement true or false? By association will always be an in-memory 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.
False, if objects aren’t available in memory, a retrieve by association will automatically result in a database retrieve.
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.
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.
No, retrieving from database will exhibit the same behavior as retrieving over association if the object is retrievable over association.
14
What is an important rule to keep in mind when creating effective indexes?
The index should have the same order of attributes defined as in search and retrieve queries in order to be available for queries.
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 be defined immediately after the attributes have been defined on the entity.
15
Which of the following is a valid Mendix token?
CurrentDate
CurrentTime
CurrentAccount
CurrentUser
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.
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.
For each check, place a Decision in the microflow so that each step is visible and easy to read.
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.
It is not possible to do this.
Use the BeginOfCurrentWeek and BeginOfCurrentDay tokens in combination with the daysBetween function and an if-then-else statement 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 decision to first check whether the association exists. If it does, retrieve the associated object.
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.
19
Which of the following statements about lists is true?
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.
A list can contain different types of objects.
Before looping through a list, you have to check that it isn’t empty.
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 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.
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 loop through them to count them all.
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 creates a log that tracks all changes to the list.
It sorts the list in descending order with the last item first.
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?
When creating report data to view in chart widgets.
All of these answers are correct.
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?
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.
If the sub-microflow uses a return value, you check whether it is really needed.
All of these answers are correct.
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?
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, you shouldn’t retrieve it in the main microflow because it is not used there.
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 change objects in a rule.
You can generate a document inside a rule.
26
What is a good reason to use a sub microflow?
To increase readability of large microflows.
All of these answer options are correct.
To reuse the same bit of logic in multiple microflows.
To use it as a ‘get or create’ microflow.
27
To which of the following errors types does the built-in consistency checker in the Modeler alert you?
Parts of the application that will not run correctly in the cloud.
Functional gaps in your application.
Technical issues in your model.
Memory leaks that might jeopardize the stability of 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 debugger can only be run locally and on the test/acceptance cloud environments.
The output of log nodes can be used to isolate problems and place breakpoints in a smarter way.
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 placing a breakpoint on an decision.
No, this isn’t possible.
Yes, by adding this setting to the cloud environment.
Yes, by adding a conditional breakpoint.
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 end of the microflow
In a Sub-Microflow
At the beginning of the microflow
31
Why are we creating sub-microflows?
To be able to reuse the functionality and have a microflow with dedicated functionality
To be able to only re-use the functionality.
To only have a microflow with a 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 this message: ‘Something went wrong please contact your administrator.’
The transaction is stopped and Mendix will show an error message in the user interface.
The transaction will be finished and the user won't see a message.
Nothing
33
You need to create error handling for JAVA actions because:
The JAVA action will not be triggered if there is no error handling.
Mendix is not able to catch errors that occur in a JAVA action by default.
The app will always show an error if there is no error handling.
34
Error handling can occur in microflows that are triggered by:
The system
A sub-microflow
Both, a user and the system
A user
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?
Replace the template with another one.
Select the missing object in the properties of the template.
Create a missing object in a microflow.
Specify reference to import objects.
37
After an object has been connected to a template, what you must ensure to do before saving this template?
Connecting matching attributes.
On Save, all attributes will be updated automatically.
Creating new attributes.
Deleting existing attributes.
38
A client wants their application to have a very specific color scheme. Whose work is most likely to be affected?
The UX designer
The UX researcher
The Frontend developer
The UI designer
39
A page is taking forever to load. Whose responsibility is it to solve this?
The UI designer
The UX designer
The Frontend developer
The UI 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 and UI resources modules
App only
41
What is the Styling Editor used for?
Styling JSON.
Styling actions.
Styling and JavaScript actions.
42
What part of the CSS syntax references the object that is to be styled?
Property
Value
Selector
Declaration block
43
Which of the following options has the most weight?
.foo .bar
#id a.class
p a.class !important
li p #foo #bar a.class
44
What is the correct naming convention for Sass partials?
_partial-name.scss
-partial-name.scss
PartialName.scss
partial-name.scss
45
In the Atlas framework, under which folder should you add partials to customize your app's design?
Lib
Web
Custom
Core
46
Where should $variables be kept according to Mendix best practices?
It doesn't matter, as long as there are no errors.
Each variable should be kept in a separate partial.
In any partial with the name variable.
In the same partial as partial imports.
47
According to best practices, how should you change the font side of H1 headers?
By changing the variable in custom-variable.scss.
By using a setting in the appearance tab.
By using the style field.
By creating a new class in the _scrumptious.scss partial and applying it to the relevant widgets.
48
You notice that a property in the inspector has been crossed through, what does this mean?
There is a fault in the property’s code.
You cannot change this property.
The property has been overwritten.
The property has been deactivated.
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 Value Curve
Personas
Customer Journey Map
Empathy Map
50
What is the main aim of using Customer Value Curve?
To find what part of an application the customer considers to be most important
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
51
What qualitative technique focuses on how users group different items?
Card Sorting
A/B Testing
Affinity Diagram
User Interview
52
Which of the following are considered qualitative research methods?
A/B Testing, Metrics, Affinity Diagram
Affinity Diagram, Card Sorting, Expert Review
Competitor Analysis, Card Sorting, Expert Review
Competitor Analysis, A/B Testing, Metrics
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 the application should look like
What the developer should build
The structure of the navigation menu
55
What type of prototype can you do on paper?
Low fidelity
Wireframe
High fidelity
Medium fidelity
56
In what element of a design system are you most like to find the color palette?
The reusable components
The documentation guidelines
The style guide
The pattern library
57
Which type of menu bar is most often used for the main navigation of an app?
menu
side
vertical
horizontal
58
Which type of widget allows for more than one object to be selected?
Data Grid
List View
List 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?
Submit Order
Next Page
Continue
Finish
60
Typically the widget to turn on dark mode would be:
A checkbox
A switch
Radio buttons
A drop-down
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:
Validation
Proximity
Grouping
Clarity
62
Which of the following options would make a form easier for a user to fill in:
Validating inputs as are they are changing
Pre-filling values
Setting more values to be optional instead of required
Using text boxes instead of text areas
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 sidebar toggle.
A button with the on-click wet to ‘toggle sidebar’.
A navigation tree.
A simple menu bar with the orientation set to ‘horizontal’.
65
What should you avoid doing when creating a building block or page template?
Linking to other documents.
Adding classes with custom styling.
Setting the on-click of a widget to ‘Show a page’.
Using the design properties.
66
Where do you add new design properties?
In the design-properties.json file.
In the application settings.
In the design-properties.scss file.
In the custom-variables.scss file.
67
Which widget allows navigation with 3 levels of items?
The Tree node.
The Simple menu.
The Menu.
The Navigation tree.
68
In the version number 7.23.3, what is the minor version?
23
7.23.3
3
7
69
What should you be sure to add when sharing a module on Mendix Marketplace?
Add an example project.
Add licensing.
Add documentation.
Add a price.
70
Which of the following statements is FALSE?
Those who work on the UX are called UX Designers
UI design is more important than UX design
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 concerns changing the look and feel of individual elements
An example would be making a button blue
It focuses on the emotional experience of the user
72
Usability design is concerned with?
The emotional experience of the user.
The look and feel of individual elements.
The accessibility and ease-of-use of your application.
Your brand’s visual identity.
73
To be a good UX designer you should always?
Know the user
Create beautiful interfaces
Design for yourself
74
Which of these is NOT a tool Mendix provides to help create engaging user experiences?
Page editor
AtlasUI Framework
Bootstrap Integration
A Graphic Design Editor
75
When inheriting layouts Mendix recommends
a maximum of 3
a minimum of 3
no more than 7
as many as necessary
76
Which of the following is an important component of a layout?
Placeholders
Forms
Pages
Widgets
77
Which of the following is a Scroll Behavior option for a Scroll Container?
Per page
Per element
Full widget
Per placeholder
78
Which one is NOT a menu widget?
Tab Container
Simple Menu Bar
Menu Bar
Navigation Tree
79
The Menu Bar is limited to how many levels deep?
Two
One
Three
It is not limited
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?
Keeps cost low
Improves usability
Ease of navigation
Enhances readability
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?
ERROR
We're sorry, but you need to enter your date of birth in mm/dd/yyyy format
Please enter a correct date
Please enter a 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
Because Apple and Android say so!
To make your application less user friendly
84
If you wanted your users to enter a multi-lined delivery note to go with their order, what widget would you use?
Radiobutton
Textarea
Textbox
Datepicker
85
Which one of the following is a way to help make your pages smarter?
Responsive design
Helper classes
Snippets
Conditional visibility
86
What does the helper class ".hidden-xs" do?
Hides content on the phone.
Changes colour to blue.
Shows content on the phone.
Aligns text to the right.
87
What are the three triggers options of widget events?
On-touch, on-enter and on-leave
On-click, on-keydown and on-mouseover
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?
Red or blue
Editable or read-only
Visible or hidden
Horizontal or vertical
89
If I had a device with a screen width of 800px which column class prefix would be used?
col-xs-*
col-lg-*
col-sm-*
col-md-*
90
The pre-processor Sass helps with what?
Maintaining your domain model
Creating bigger and larger stylesheets
Maintaining your CSS stylesheets
Maintaining your HTML
91
Which of the following are AtlasUI components?
Page Templates, Navigation Layouts and Building Blocks
Custom widgets, Datagrid and Connectors
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?
The syntax looks nothing like CSS
You need a compilation tool
You need different code editing tools
93
Which of the following does the Mendix AtlasUI Framework NOT enable?
Quick branding of your application
Speedier page creation via page templates and building blocks
Documentation for your microflows
Developers without design skills to build multi-device apps
94
To start customizing your Mendix application you should:
Start with learning Sass as a coding language
Start with learning CSS 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 node
Log content
Log event
Log line
96
Where can you see the log messages for your app?
In the console
In the debugger
In the error pane
In the conector
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 Cloud field.
The log messages in the Developer Portal have a Destination field.
98
Where do log messages come from?
They are written by the IEEE log commission to ensure log messages conform to standards.
Mendix Assist generates the log messages for all Mendix applications.
The developers at Mendix write all log messages you will encounter in a Mendix application.
Log messages are written by the person who created the functionality.
99
When the log level is set to Error, messages from which other log level will also show up in your logs?
Warning
Debug
Critical
All log levels
100
Which log level is used to warn about unexpected behavior that doesn’t need immediate action?
Error
Warning
Debug
Info