CSE105 Coursework

Stella981
• 阅读 510

代写CSE105作业、代做Java程序语言作业、代写JFrame window留学生作业
CSE105 Coursework 3 2018
Design and code a garden design application in Java. It should graphically display
a ‘garden’ in a JFrame window.
The ‘garden 'is contained in a JFrame. It should contain other components
for graphics, painting etc.
It can have a blank background, or pretty grass/a texture.
It will contain flowerbeds.
Flowerbeds display rows of flowers. They can be all the same, or mixed.
If mixed, they could be in patterns, or random. The example below shows
2 plain flowerbeds at the top, and 2 flowerbed patterns below
It is possible to achieve a maximum of 80% without displaying flowers in
patterns (ie plain beds with only one type of flower per bed). This would
be a good approach for students who have lower coding skills.
You should pay attention to applying principles of OOP as taught this semester,
particularly class design and structure. You may re-use and re-purpose code and
classes developed and used (by you) in the Labs this semester.
An example of a garden with 4 flowerbeds is shown below. Do not copy it!
The application is controlled via a standard command-line menu system, which
allows for the following functionality:
Add flowerbed
Remove flowerbed
Save and exit
Resources
Your application will contain a directory (folder) containing a number of suitable
graphic files of flowers (up to 10). These flowers should be suitable in terms of
size, background-transparency etc.
Your submitted application MUST include a text file which will load a
garden on startup. The garden must contain at least four flowerbeds
containing different flowers. If you do not include this, 40 points are
immediately deducted.
Task Requirements
It should have the following functionality from a menu input system:
Flowerbed Display (10%)
This is a JFrame window, containing a number of components (panels). Each
component is a flowerbed displaying flowers, as shown in the example
screenshot above. The number of rows and columns depends on the size of the
flower images. When flowerbeds are added and removed, the display should be
updated.
Add Flowerbed (20%)
The user must be able to add a flowerbed to the display. They should be able to
specify:
- Flowerbed size, setting the height and width of the flowerbed.
- Flowerbed location, setting the position on screen (x and y co-ordinates).
- Type of flower (choosing from a menu of flower image file names, which
are in a folder in your application project folder).
To get full marks, they should also be able to display flowers in a pattern (as
shown in the lower flowerbeds in the screenshot above).
The user should be able to choose the type of pattern (eg squares or stripes)
And also the details of the pattern, eg:
Horizontal or vertical stripes?
How many flow different colours or flowers for the stripes?
Or similar details for squares etc.
Remove Flowerbed (5%)
Using a command line menu, the user can remove flowerbeds from the display.
How this is achieved is up to you. Top marks will go to solutions which identify
the flowerbeds available for removal in the clearest way.
Save and exit (5%)
The user should be able to select an exit option in the menu. This will
automatically save the current state of the garden to a text file and exit the
program. The file format must be a text (.txt) file.
Load file on startup (5%)
When the program is started, garden data should be automatically loaded from a
text file, and the display and flowerbeds should be restored to the state of the
program when it was last exited.
Menu Interface (10%)
This must be entirely menu driven, displayed through the console window and
with keyboard input and all user input must be fully validated. The menu must
be clear and usable, with prompts to the user so that it is obvious how to use the
program. The flower type menu options should be a list of the flower images in
the directory.
Input Validation and Exception handling (15%)
The user input must be fully validated. That means you should check for (and
recover from) user input of:
The wrong data type (eg float or string instead of int)
The wrong data range (eg negative or very large numbers for location or
width)
Blank input
If any exceptions are thrown as a result of wrong input (eg an int is required,
and a String or blank is input) the exception must be handled so that the
application doesn’t crash, and the user can recover the situation.
There should also be further validation that just the data type. For example,
bounds checking:
- Are the x, y values visible on screen?
- Are the size values within a reasonable range?
Design Document and Code Quality (30%)
A design document should be submitted. This should be a word document that
gives a simple UML diagram detailing the classes (their names, attributes,
methods), and also the relationships between them.
In addition, the code should follow clear conventions for variable names,
comments, indentation, and should be easily readable.
Core Task requirements (required to achieve 40%+)
The submitted file must be a valid NetBeans project folder, including all
resources.
The project must compile and run in Netbeans with no further configuration
and debugging.
The application you submit MUST include a text file to load a garden on
startup. The garden must contain at least four flowerbeds containing
different flowers. If you do not include this, 40 points are immediately
deducted.
The submission instructions must be followed exactly.
Submission
You must submit your work to the submissions drop-box on the CSE105 ICE
page before 8.00pm on 14th December 2018.
You must submit:
One design document (a Word document) with a simple UML diagram
detailing the classes and the relationships between them.
One .txt file for each .java class file. These documents must NOT be in a
ZIP or RAR archive. The file name must be the class name. Each file must
have your name/student number in a comment at the top.
One ZIP or RAR archive of your entire Netbeans project folder. Make
sure this contains ALL the resources your application needs to run,
including your flower image resources and a txt file to load a garden
on startup.
If your program does not compile and run from this zip file only, you
cannot pass (See Core Task Requirements). The zip file name must start
with your student number.http://www.6daixie.com/contents/9/2323.html
This assignment is individual work. Plagiarism (e.g. copying materials from
other sources without proper acknowledgement) is a serious academic
offence. Plagiarism and collusion will not be tolerated and will be dealt with in
accordance with the University Code of Practice on Academic Integrity.
Individual students may be invited to explain parts of their code in person, and if
they fail to demonstrate an understanding of the code, no credit will be given for
that part of the code.

因为专业,所以值得信赖。如有需要,请加QQ:99515681 或邮箱:99515681@qq.com 

微信:codinghelp

点赞
收藏
评论区
推荐文章
待兔 待兔
2个月前
手写Java HashMap源码
HashMap的使用教程HashMap的使用教程HashMap的使用教程HashMap的使用教程HashMap的使用教程22
作业帮上万个 CronJob 和在线业务混部,如何解决弱隔离问题并进一步提升资源利用率?
作者吕亚霖,作业帮基础架构架构研发团队负责人。负责技术中台和基础架构工作。在作业帮期间主导了云原生架构演进、推动实施容器化改造、服务治理、GO微服务框架、DevOps的落地实践。别路,作业帮基础架构高级研发工程师,在作业帮期间,负责多云K8s集群建设、K8s组件研发、Linux内核优化调优相关工作。背景作业帮在云原生容器化改造的过程中,随着
TKE用户故事 | 作业帮检索服务基于Fluid的计算存储分离实践
作者吕亚霖,2019年加入作业帮,作业帮基础架构架构研发团队负责人,在作业帮期间主导了云原生架构演进、推动实施容器化改造、服务治理、GO微服务框架、DevOps的落地实践。张浩然,2019年加入作业帮,作业帮基础架构高级架构师,在作业帮期间,推动了作业帮云原生架构演进、负责多云k8s集群建设、k8s组件研发、linux内核优化调优、底层服务容器化相关工作。
TKE 用户故事 - 作业帮 PB 级低成本日志检索服务
作者吕亚霖,2019年加入作业帮,作业帮架构研发负责人,在作业帮期间主导了云原生架构演进、推动实施容器化改造、服务治理、GO微服务框架、DevOps的落地实践。莫仁鹏,2020年加入作业帮,作业帮高级架构师,在作业帮期间,推动了作业帮云原生架构演进,负责作业帮服务治理体系的设计和落地、服务感知体系建设以及自研mesh、MQproxy研发工作。摘要日志是服务
Stella981 Stella981
2年前
OO(Java)第一阶段作业总结
前言     本次博客主要是针对面向对象编程学习(Java)第一阶段的总结与反思,以PTA平台的练习作业为总结评估对象,望不断学习,不断提升。一.作业过程总结_①__总结三次作业之间的知识迭代关系_• 第一次作业整体难度较小,五道试题都是基础结构中的常规类型,考察了选择、循环结构、字符编码转换以及数据精确度
Wesley13 Wesley13
2年前
2019 OO第一单元总结(表达式求导)
一.基于度量的程序结构分析1\.第一次作业  这次作业是我上手的第一个java程序,使用了4个类来实现功能。多项式采用两个arraylist来存,系数和幂指数一一对应。1privateArrayList<BigIntegercoefs;2privateArrayList<BigIntegerdegre
Stella981 Stella981
2年前
Beta冲刺
2020/06/02这个作业属于哪个课程2020春S班软件工程实践(https://www.oschina.net/action/GoToLink?urlhttps%3A%2F%2Fedu.cnblogs.com%2Fcampus%2Ffzu%2F2020SPRINGS)这个作业要求在哪里团队作业第六次——beta冲刺事后诸
Stella981 Stella981
2年前
Spark系列——作业原理详解
前言本篇文章主要是从作业提交到最后获取到作业结果,从源码的角度,但是不涉及源码进行的分析.其目的是读完本篇文章,你将对作业的基本流程有个清晰的认识。当然如果你阅读过源码,那么读起来应该会比较舒服,否则可能会有一定不适,因为本文写的不是那么有逻辑~~~1.任务提交过程首
Stella981 Stella981
2年前
Python课 #02号作业
为了记录我的Python课,将我的作业发上来,欢迎各位大佬评鉴。如果你有什么更好的想法,请在下方评论或联系我。谢谢!作业一:由行转逆列描述编写程序实现如下功能:‪‬‪‬‪‬‪‬‪‬‮‬‪‬‫‬‪‬‪
邢德全 邢德全
9个月前
万界星空科技MES系统中的生产调度流程
MES系统生产调度的目标是达到作业有序、协调、可控和高效的运行效果,作业计划的快速生成以及面向生产扰动事件的快速响应处理是生产调度系统的核心和关键。