Programming Language
Dart
Widgets
Flow
Random
100

Name at least 2 multi-paradigm programming languages

Java, Python, Dart, C#, PHP, C++, ObjectiveC, SmallTalk, Ruby, JavaScript

100

How do we mark fields and methods as private in Dart?

write "_" (underScore) before a field or method

100

What is the main component that all flutter apps are made of?

- widgets

Also:
void main() {Run MyApp()}
class MyApp extends StatelessWidget{}

100

How do you navigate back to the previous screen?

Navigator.pop()

100

What are the two main predefined Flutter styles?

- Material
- Cupertino

200

Why is Java a multi-paradigm programming language?

... because it is an object-oriented and procedural programming language.

200

In Dart we can override operators. When would this be beneficial?

For example when wanting to compare two objects, and not wanting to compare instances of the object but the attributes.

200

What are the two main predefined Flutter styles?

- Material
- Cupertino

200

What does Navigator.push do?

Navigate to the given/next screen

200

print('1 + 2 = ${1+2}'); What is the name of the special notation within the string and what does this code do?

The notation ${1+2} is an embedded value and converts a statement in a string into a string.
(Stichwort: string evaluation)

300

Name 3 benefits for the development process of multi-platform apps (IDEs, process, simulation, etc.)

Benefits:
- Can be simulated and tested on different platforms
- Only has to be programmed once for multiple platforms
- Quicker development time ( due to re-usage of code)
- Only one IDE for all platforms

300

Why are your Dart programs able to run in a web-browser and on a mobile device?

Dart programs can be compiled for multiple platforms (browser, mobile native) through the Dart virtual machine e.g. for x86, ARM or Javascript.

300

There are two basic types of widgets. What are their names and what is the difference?

- StatelessWidget
widget cannot change (App-Icon)

- StatefulWidget
widget can change when as an example a user interact with it

300

What is the method that marks the starting point of your app?

runApp(MyApp())

300

How do we mark fields and methods as private in Dart?

write "_" (underScore) before a field or method

400

Name the basic data types in dart.

- num (1 or 0.5)
- int (1,2,3)
- double (0.5)
- string ("Hello World")
- list ["VW", "Opel"]
- bool (True or False)

400

Describe the difference between the development and deployment flow

In the development flow the dart code is compiled just-in-time by the dart-vm. This provides us with a quick implementation of changes to the code (hot reload).
In the Deployment flow we have an ahead-of-time compiler, which saves us time when executing the app (since the code is already compiled) to execute the app we then only use the dart-runtime environment.

400

Name at least 3 elements of an AppBar.

Size
Title
BackgroundColor

400

What is the method to change the state of a widget and when can and should you use it?

You use setState(), when you want to redraw a widget

400

Name 3 differences between React and Flutter

- Flutter uses Dart but React uses Javascript languages
- There is less content for flutter due to the recent release
- Flutter and React are installed differently (flutter with a binary download from a source, react with the packet manager npm)
- Flutter is developed by Google and React is developed by Facebook
- React needs a native bridge


There are two basic types of

500

Name at least 3 benefits to multi-platform development.

- only a single codebase is necessary
less effort
less maintenance

- faster and easier development process -> hot reload
- simplified product maintenance (wartung)
- less effort in development due to one code base
- greater audience
- higher market share

while loop:
Continues repeating the statement in the loop while the condition is true. The condition is checked at the beginning of each iteration

500

Is there any special notation in Dart for multiple constructors and what is the main difference to Java?

you add constructor names by using ClassName.ConstructorName and calling the custom constructor with the same notation.

The difference to Java is, that in Java the constructors are just named by the class name but differentiate in their parameters

500

Name 3 pre-defined button types.

Flat Button
FloatingActionButton
RaisedButton
RadioButton

500

Name at least 3 usability issues when designing for multi-platform.

Multiple aspect ratios have to be considered
Account for different input types (Touchscreen / Mouse / Keyboard)
Account for different available functions (on phones vs on computers)
Account for different usage environments (outside vs inside / short time vs long time available)
preferred user interface styling (iOS/Android/etc)

500

What is the naming scheme for fields and for classes in Dart?

camelCase und PascalCase

M
e
n
u