3. Explain with an example, ‘JavaFX scene graph is not thread-safe’. Describe one of the ways to implement multithreading with JavaFX GUI.
The publisher has two types of subscriptions: corporate and individual levels.
Describe the steps in creating a GUI Layout in JavaFX. Give relevant Java
codes/pseudocodes as appropriate.
Copyright By PowCoder代写 加微信 powcoder
Explain the concepts of Run-Time Type Identification (RTTI). Discuss the
advantages and disadvantages of RTTI.
A publishing house publishes a number of items: regular journals, books, and
occasional special issues. Each item has a name, publication date, and a price tag. A
book has an ISBN number, while a journal has an ISSN number. The special issue has
an ISSN number and a theme.
Under the corporate subscription, it allows the members of an organisation to access
to the items. There may be a max limit on the number of members per corporate
subscription. The members are maintained by the organisation.
Subscription payments can be made annually, or on a monthly basis via a direct debit
or by independent payments.
The publisher also allows an individual to get access to any item by paying an access
fee even without subscription. An item price is usually lower than a subscription fee.
Maintain a free of cost emailing list (stored in a file) of people based on their interests.
Keep provision of notifying the subscribers or listed people in the email about the
publication of a special issue.
Based on the description above present a good design for the arrangement of classes
for the object-oriented program. You can make other reasonable assumptions about
the details. Explain your assumptions and the reasons behind your design decisions.
Include the data members and their types, and important methods for each class.
List of items to be delivered:
1. Key classes
2. Their main attributes (field variables) and methods
3. The relationships between the classes, eg you can write Class 1 inherits from Class
2; Class A is a Composition part in Class B and it is a one to many relationship etc.
5. Please apply the essence of Design Patterns, inheritance, composition,
persistence as appropriate.
4. You do not need to supply a drawing design of UML. ———————————————————————————————–
—————————- 5.
A network system alerts users of important messages via a simple GUI. The message
manager can create a window on a user’s computer. The window shows a headline
message and a presents a few buttons. The user can delete the window. The user
could instead dismiss the window for 2 minutes, after which time it reappears as if for
the first time (so, for example, it can be dismissed again). The user can also switch
between displaying the headlines and a full version of the message.
Give the State Transition Table for the finite state machine to represent the GUIs
behaviours. Identify the states and events.
Write detailed pseudo codes in JavaFX to implement the
network system.
Hint: Example of State Transition Table
There are three states = {A, B,C}
Start from A.
Transitions available= {A to B; B to C; B to B; and A to C}
State Transition Table (1 means transition available; 0 means not available): ABC
Explain what a Java GUI event is. Describe, giving examples, the key steps involved in
event handling in JavaFX. Please consider both Event Filter and Event Handler.
Explain the concept of a software design pattern. How can patterns be used? Describe
the concept of the Composite Pattern.
Both run-time validation and batch validation are important in a client-server system.
Justify why it is best to use both run-time validation and batch validation in a client-
side program.
Explain the concept of persistence of objects and give some uses for it. Describe how
persistence is implemented in Java using serialization. Give examples using Java code.
Consider a company who takes online orders and process the ‘largest’ order first.
This means the company needs to sort the orders before processing them. Write a
Java program (pseudo code level) for the company. Please use the following criteria:
· Write an interface “Orderer” which has one method called isGOE (“is greater
than or equal to”) which takes two objects and returns a Boolean indicating whether
the first should be ordered before (or equal to) the second.
· Write a static method “maxOf” which is given an ArrayList and an Orderer.
The method should return the largest Object in the collection (ArrayList) according to
the Orderer (i.e. find an Object in the collection which is greater than or equal to all
the others).
Write down any assumptions you made.
Describe with examples when Reflection is more appropriate than RTTI.
Describe the layered design in a Java Network programming architecture, and explain
how ports and stream sockets are involved in establishing, maintaining and closing a
network connection in Java.
Clone() method is protected in Java. Why do you think it is important to keep this
method protected?
Briefly describe, the concept of Adaptive Model of Software development. Give
examples of this type of model. What are the situations that you think an Adaptive
Model of Software development should be used?
Write a short note on Java class Object.
Describe the concept of deep copying of a Java object. Describe by giving examples,
two ways of making a deep copy of an object in Java.
Write a short note on Java Inner class and give a situation in which it will be useful.
Describe the features of Java that promote software reuse and thus save time during
program development.
Explain the concept ‘Race Conditions’ in the context of multithreading. Discuss two
ways to address race conditions in software Design.
Explain what software architecture is, and describe how software architecture relates
to software design.
Write a short note on Java Callback function and give a situation in which this will be
Describe the concept of the Observer Pattern. Give appropriate examples and
pseudocode.
A boutique shop sells varieties of suits, hats and shoes. Each item has a price tag. A
customer can come and check for the price of any combination of the items. With a
large number of options for each item available, a simple combinatorial approach will
be naïve and may not be suitable for maintaining all these concrete combinations of
the items. As such, develop a design (you can write narratives and/or pseudo codes)
of a software that can offer the price of any combination correctly. (Think of a design
程序代写 CS代考 加微信: powcoder QQ: 1823890830 Email: powcoder@163.com