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 it as a nanoflow.
Create and enable a scheduled event.
Use the [%CurrentDateTime%] token.
2
What can you use to exit a loop early, instead of finishing the entire list of iterator objects?
A break event
A go-to event
A continue event
An exit 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.
Retrieve the value from the iterator object.
Use the [%total%] token.
Create a loop with a counter variable.
4
What are batches used for?
Duplicating datasets.
Hotfixing errors in production.
Running nightly cycles.
Processing large amounts of data.
5
What is the list object in a loop called?
A retrieval list
An aggregate list
An iterator
A looped list
6
The Mendix Client is:
Built on a combination of HTML, CSS, and JavaScript and runs in your browser.
A Java application that executes your pages.
A Windows application that communicates with the Mendix Runtime.
The component within the Mendix Platform that directly talks to the database server.
7
Static resources in Mendix:
Include stylesheets transmitted in CSS format to the client.
Are transmitted using a proprietary HTTP-like protocol.
Can never be changed using the Mendix Modeler.
Include pages transmitted in Modeler 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?
Constraints can be specified much easier and with a lot of guidance by the Modeler.
The database source option is also available on pages that need to be available in offline mode.
The database source option does not require understanding of XPath.
The database source option can be used to specify constraints that span entities.
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?
No, the database data source will always lead to the same request as the XPath data source.
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.
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 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.
True, technically, a retrieve by association cannot result in a query on the database.
False, if objects aren’t available in memory, a retrieve by association will automatically result in a database retrieve.
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?
No, retrieving from database will exhibit the same behavior as retrieving over association if the object is retrievable over association.
No, by retrieving over association the object will be retrieved from the object cache (if available), which improves performance.
Yes, retrieving from the database makes sure that all the configured entity access rules are applied.
Yes, in cases where constraints other than a single association are applicable or where stored database values are required.
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.
The index should be defined immediately after the attributes have been defined on the entity.
An index makes sense only when querying non-persistent objects.
An index must be manually refreshed after deployment to make sure it’s accurate and up to date.
15
Which of the following is a valid Mendix token?
CurrentDate
CurrentUser
CurrentAccount
CurrentTime
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?
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.
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 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?
Use the formatDateTime function to achieve this.
It is not possible 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.
18
What is the best approach to retrieve an object over association, while also checking whether the association exists?
First retrieve the object and then use a decision to check whether the object is empty or not.
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.
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 sorts the list in descending order with the last item first.
It creates a log that tracks all changes to the list.
It grabs all elements in the list except the first element.
It grabs the last element in the list.
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?
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.
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.
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 do the retrieve in the main microflow and then pass it along to the three sub-microflows as an input parameter.
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.
No, you shouldn’t retrieve it in the main microflow because it is not used there.
25
Which statement about rules is true?
You can change objects in a rule.
You can generate a document inside a rule.
You can give the user validation feedback messages from within a rule.
A rule can only be called from within a decision.
26
What is a good reason to use a sub microflow?
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.
To increase readability of large microflows.
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.
Memory leaks that might jeopardize the stability of your application.
Technical issues in your model.
28
Which of the following statements is true?
The output of log nodes can be used to isolate problems and place breakpoints in a smarter way.
The debugger is always enabled in the Mendix Cloud Portal before it can be used remotely.
When placing breakpoints inside a loop, there is no way of preventing a break on every iteration of the loop.
The debugger can only be run locally and on the test/acceptance cloud environments.
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 a Sub-Microflow
In the middle of a microflow
At the beginning of the microflow
At the end 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?
Nothing
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.
The transaction is stopped and Mendix will show this message: ‘Something went wrong please contact your administrator.’
33
You need to create error handling for JAVA actions because:
The JAVA action will not be triggered if there is no error handling.
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.
34
Error handling can occur in microflows that are triggered by:
Both, a user and the system
A sub-microflow
The system
A user
35
It is necessary to create a log message and a user message because:
The log message will not be complete.
The log message will not appear in the frontend.
The error handling will continue without rollback.
The user will get an error if that is not done.
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.
Connecting matching attributes.
On Save, all attributes will be updated automatically.
Creating new 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 UX designer
The UX researcher
The UI designer
39
A page is taking forever to load. Whose responsibility is it to solve this?
The UI designer
The Frontend developer
The UI developer
The UX designer
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 only
App and UI resources modules
App and all 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?
Selector
Property
Value
Declaration block
43
Which of the following options has the most weight?
.foo .bar
li p #foo #bar a.class
p a.class !important
#id a.class
44
What is the correct naming convention for Sass partials?
partial-name.scss
PartialName.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?
Custom
Lib
Web
Core
46
Where should $variables be kept according to Mendix best practices?
Each variable should be kept in a separate partial.
In the same partial as partial imports.
In any partial with the name variable.
It doesn't matter, as long as there are no errors.
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?
You cannot change this property.
The property has been deactivated.
There is a fault in the property’s code.
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?
Empathy Map
Customer Value Curve
Customer Journey Map
Personas
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?
A/B Testing
User Interview
Card Sorting
Affinity Diagram
52
Which of the following are considered qualitative research methods?
A/B Testing, Metrics, Affinity Diagram
Competitor Analysis, Card Sorting, Expert Review
Affinity Diagram, Card Sorting, Expert Review
Competitor Analysis, A/B Testing, Metrics
53
What should you always do in your wireframe?
Use Lorem Ipsum as filler text
Use a square with a cross to indicate images
Create a legend
Add annotations
54
What is the purpose of a prototype? It should be a representation of…
The structure of the navigation menu
Your application to test with
What the developer should build
What the the application should look like
55
What type of prototype can you do on paper?
Medium fidelity
High fidelity
Wireframe
Low fidelity
56
In what element of a design system are you most like to find the color palette?
The pattern library
The documentation guidelines
The reusable components
The style guide
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
All widgets that show multiple objects
Data Grid
59
What would be the best caption for a button that navigates users to a page they use to enter their payment information?
Continue
Submit Order
Next Page
Finish
60
Typically the widget to turn on dark mode would be:
A checkbox
Radio buttons
A switch
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
Grouping
Proximity
Clarity
62
Which of the following options would make a form easier for a user to fill in:
Pre-filling values
Validating inputs as are they are changing
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 a UI resources module.
It is a normal development module.
Its theme folder is always actively in use.
It is likely to contain microflows.
64
What widget should you add to a page to allow users to toggle the sidebar?
A navigation tree.
A simple menu bar with the orientation set to ‘horizontal’.
A button with the on-click wet to ‘toggle sidebar’.
A sidebar toggle.
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 Simple menu.
The Menu.
The Navigation tree.
The Tree node.
68
In the version number 7.23.3, what is the minor version?
7
3
7.23.3
23
69
What should you be sure to add when sharing a module on Mendix Marketplace?
Add an example project.
Add a price.
Add documentation.
Add licensing.
70
Which of the following statements is FALSE?
UI design is more important than UX design
UX deals with human-computer interaction
UX design means User Experience design
Those who work on the UX are called UX Designers
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 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
Create beautiful interfaces
Know the user
74
Which of these is NOT a tool Mendix provides to help create engaging user experiences?
AtlasUI Framework
A Graphic Design Editor
Page editor
Bootstrap Integration
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
Pages
Widgets
77
Which of the following is a Scroll Behavior option for a Scroll Container?
Per placeholder
Per element
Per page
Full widget
78
Which one is NOT a menu widget?
Navigation Tree
Tab Container
Menu Bar
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?
Images
Weight
Size
Color
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?
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
Datepicker
Textbox
85
Which one of the following is a way to help make your pages smarter?
Responsive design
Conditional visibility
Snippets
Helper classes
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-change, on-click and on-leave
On-enter, on-change and on-leave
On-touch, on-enter and on-leave
On-click, on-keydown and on-mouseover
88
By using conditional editability you can change elements to be either?
Editable or read-only
Horizontal or vertical
Red or blue
Visible or hidden
89
If I had a device with a screen width of 800px which column class prefix would be used?
col-sm-*
col-xs-*
col-md-*
col-lg-*
90
The pre-processor Sass helps with what?
Maintaining your domain model
Maintaining your CSS stylesheets
Creating bigger and larger 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?
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?
Quick branding of your application
Speedier page creation via page templates and building blocks
Developers without design skills to build multi-device apps
Documentation for your microflows
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 line
Log content
Log event
Log node
96
Where can you see the log messages for your app?
In the debugger
In the error pane
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 Web field.
The log messages in the Developer Portal have a Destination field.
The log messages in the Developer Portal have a Source 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.
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.
They are written by the IEEE log commission to ensure log messages conform to standards.
99
When the log level is set to Error, messages from which other log level will also show up in your logs?
Warning
All log levels
Critical
Debug
100
Which log level is used to warn about unexpected behavior that doesn’t need immediate action?
Info
Warning
Error
Debug