EssayGhost Assignment代写,Essay代写,网课代修,Quiz代考

EssayGhost-Essay代写,作业代写,网课代修代上,cs代写代考

一站式网课代修,论文代写

高质量的Assignment代写、Paper代写、Report代写服务

EG1hao
网课代修代上,cs代写代考
C语言代写
您的位置: 主页 > 编程案例 > C语言代写 >
代写C语言:C++代写作业加急课程编号COMP 3023 Software Development with C++ - C语言代写
发布时间:2021-07-25 19:34:28浏览次数:
DocumentationYour code must be documented appropriately using Doxygen comments. Comment blocks must be used in your header file to document your classes and class members. Private members should also be documented when it is not obvious for what they are used—but first check if the code can be improved as clean code is better than comments. Use comments sparingly in source files, document blocks of code (switch statements, if else groups, loops, etc.) rather than individual statements: do not comment individual statements, unless the outcome of the statement is not obvious. Optionally, you can add comments to ‘main.cpp’ to document the ‘main page’.Code StyleYou must write you code conforming to the code style set for this course. See http://codetips.dpwlabs.com/style-guideVersion ControlYou must use version control to keep track of your progress during implementation, preferably using git. You should perform regular commits as you implement features and fix errors. Your commit comments should reflect the context of the changes that were made in each commit—a fellow developer can always diff the contents to see exactly what changed but that does not provide the context. You should try to ensure each commit comment contains a short subject line.Your submission will comprise your entire version control repository, so it should be specific to the assignment. For example, if you use git, you must create the git repository in the root directory for your assignment. Do not commit your assignment to a repository created in a parent folder. Your repository must contain all source files required to compile and run your program (including a Doxygen config file) but must not include any generated or extraneous files.You do not have to use an online version control repository such as GitHub. If you do use an online repository, ensure that the assignment is private, i.e., cannot be seen by people other than yourself.Implementation Rules and HintsYour initial UML class design may be incomplete or incorrect. Your first design should attempt to cover the major requirements, in particular the identification of the 4 design patterns. Do not worry if you need to revise and refactor the design as you progress through the assignment.It is a good idea to commit the source file (but not the PNG or PDF) of your UML class design to version control. This will allow you to track the evolution of your design as you progress through the assignment.It is recommended that you test individual components as you go, rather than trying to test the whole application through the menu-driven interface. Writing code to test specific elements will speed up development as you will not need to constantly enter data through the menu interface.You may change the descriptions of items, creatures, actions, etc., if you like.Be sure to check for null pointers before attempting to use an object through a pointer and reset pointers to null where appropriate.The game will need to keep track of (at least) the current room, the character, and the previous room/door.Ensure you have considered similarity between classes so that you can achieve reuse through inheritance where appropriate. Also, remember to program to an interface not and an implementation. For example, if you have related classes but only some have particular data members and you want to ensure substitutability, you can define an interface on a base class using virtualfunctions that the derived classes then override appropriately. The derived classes that do not have those particular data members may then rely on a suitable default implementation that does not use those data members.Consider when and where it is appropriate to use smart pointers vs. bare pointers and the effect this choice may have on constructors, destructors, etc. In most cases the choice is up to you with the exception of the connection between two doors, doors must be connected via bare pointers.Smart Pointers – the Dungeon class uses the smart pointer std::shared_ptrto store and retrieve the rooms (among other things). You must use the std::make_shared DerivedType () template function to create the rooms to pass to the function Dungeon::addRoom. The below code snippet is an example of adding a room to a dungeon:Dungeon d=Dungeon{};d.addRoom(std::make_shared(/*constructorargumentsgohere*/));The Dungeonand Roomclasses may not be the only occurrence of smart pointers in your implementation.Casts – in your code, casts should only need to be performed between a base class pointer and a derived class. When doing so, a dynamic cast should be performed (using dynamic_pointer_cast Type ). For example, to cast an Itempointer to a Weaponpointer you would use the following code snippet:std::shared_ptritem=…;//Whereverthevaluecomesfromstd::shared_ptrweapon=std::dynamic_pointer_cast(item);Type defines – if you know what you are doing, you may define type aliases for the shared pointer types for use in the MenuInterfaceand your classes.Submission DetailsYou must submit your complete Qt Creator project folder inside a single zip file. The zip file must include all source files required to compile and run your program (including a Doxygen config file) as well as your version control directory: e.g., if using git you must ensure the ‘.git’ folder is present in the zip file. It must not include any generated or extraneous files such as the ‘*.pro.user’ file—the UML image file is the one exception to the no generated files rule. Place your UML class diagram in your zip file. Your diagram must be submitted in PNG or PDF format.Once you have created the zip file according to the specifications, you are required to upload it to the Assessment Item 2: Assignment submission via LearnOnline. The deadline for submission is 14 September 2018 11:59 PM. After which time the submission will be considered late and attract a penalty as detailed in the course outline.Marking CriteriaYour assignment will be marked both automatically and manually; automatically using unit testing, shell scripts and static code analysis tools. Your code will be inspected for style – remember consistency is the primary goal of all style guides, the easier it is to understand your code, the easier it is to allocate marks.Note: the criteria with negative marks are penalties that will be applied if the submission does not meet the expected criteria. They are structured such that an otherwise perfect submission will be unable to receive an HD if and only if the full penalties are applied.

所有的编程代写范围:essayghost为美国、加拿大、英国、澳洲的留学生提供C语言代写、代写C语言、C语言代做、代做C语言、数据库代写、代写数据库、数据库代做、代做数据库、Web作业代写、代写Web作业、Web作业代做、代做Web作业、Java代写、代写Java、Java代做、代做Java、Python代写、代写Python、Python代做、代做Python、C/C++代写、代写C/C++、C/C++代做、代做C/C++、数据结构代写、代写数据结构、数据结构代做、代做数据结构等留学生编程作业代写服务。