Name at least 2 multi-paradigm programming languages
Java, Python, Dart, C#, PHP, C++, ObjectiveC, SmallTalk, Ruby, JavaScript
How do we mark fields and methods as private in Dart?
write "_" (underScore) before a field or method
What is the main component that all flutter apps are made of?
- widgets
Also:
void main() {Run MyApp()}
class MyApp extends StatelessWidget{}
How do you navigate back to the previous screen?
Navigator.pop()
What are the two main predefined Flutter styles?
- Material
- Cupertino
Why is Java a multi-paradigm programming language?
... because it is an object-oriented and procedural programming language.
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.
What are the two main predefined Flutter styles?
- Material
- Cupertino
What does Navigator.push do?
Navigate to the given/next screen
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)
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
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.
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
What is the method that marks the starting point of your app?
runApp(MyApp())
How do we mark fields and methods as private in Dart?
write "_" (underScore) before a field or method
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)
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.
Name at least 3 elements of an AppBar.
Size
Title
BackgroundColor
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
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
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
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
Name 3 pre-defined button types.
Flat Button
FloatingActionButton
RaisedButton
RadioButton
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)
What is the naming scheme for fields and for classes in Dart?
camelCase und PascalCase