Windows 64bit
- xharmi00 Dominik Harmim
- xhalas10 Timotej Halás
- xhavla06 Matej Havlas
- xhertl04 Vojtěch Hertl
This program is distributed under a GNU General Public License v3.0.
Praktické aspekty vývoje software - Project 2 - calculator
License: GNU General Public License v3.0
Windows 64bit
This program is distributed under a GNU General Public License v3.0.
@harmim
Profile standard deviation console application implement in issue #16.
For profiling use tool dotTrace.
Profile program with
Create protocol with profiler output (output.*
) and summary with information (report.txt|pdf
):
Create README.md
file.
Readme must contain information about:
@harmim @timoti111 @hertl @Matej-Havlas
Create file odevzdani.txt
contains:
@harmim @Matej-Havlas @timoti111 @hertl
We must create file hodnoceni.txt
with personal rating of individual team members in the range of 0 to 100% according to team member activity and its contribution to the project.
Format of this file is:
xlogin01 X
xlogin02 X
xlogin03 X
xlogin04 X
@harmim @hertl @timoti111 @Matej-Havlas
Create PDF presentation xharmi00.pdf
about the project. Presentation takes 6 minutes. First 1.5 minutes will be about created solution, next parts will be about experience gained while working in a team.
@harmim @Matej-Havlas @hertl @timoti111
Create file reality.txt
contains information about the differences between the project plan and reality.
Doxygen
@timoti111
Prepare enviroment for generating program documentation using doxygen. Use Doxyfile
for settings.
@timoti111 @hertl @Matej-Havlas
To be able to generate documentation, we have to use XML Documentation Comments in C#
example:
/// <summary>
/// A search engine.
/// </summary>
class Engine
{
/// <summary>
/// The Search method takes a series of parameters to specify the search criterion
/// and returns a dataset containing the result set.
/// </summary>
/// <param name="connectionString">the connection string to connect to the
/// database holding the content to search</param>
/// <param name="maxRows">The maximum number of rows to
/// return in the result set</param>
/// <param name="searchString">The text that we are searching for</param>
/// <returns>A DataSet instance containing the matching rows. It contains a maximum
/// number of rows specified by the maxRows parameter</returns>
public DataSet Search(string connectionString, int maxRows, int searchString)
{
DataSet ds = new DataSet();
return ds;
}
}
see:
Visual Studio can help you with writing this type of documentation as you can see in this video https://www.youtube.com/watch?v=aa7cvJAJOcY.
Create interface IMath
in file IMath.cs
and in namespace Disassembler
.
Interface should contain headers of methods:
Create tests for math methods from interface IMath
We are using Test-driven development
concept, so we have to create tests first.
As unit testing framework, we will use MSTest and dotCover for test coverage.
@harmim
Prepare testing enviroment and tests these methods:
@hertl
Create tests for these methods:
https://msdn.microsoft.com/en-us/library/system.math(v=vs.110).aspx
@harmim @timoti111 @hertl @Matej-Havlas
Each team member create file xloginNN_problemy.txt
contains list of problems or suggestions about this project. At least 3 problems or suggestions listed from most important to least important.
Focus on:
Create un/installer for application.
I do not know yet how to do it. In Visual Studio, there is way how to create installer. Can you find out about it more information please?
We need create .exe
installer which install appliaction and other components, create desktop icon, etc.
Create Makefile
with these targets:
csc.exe
, see https://msdn.microsoft.com/en-us/library/78f4aasd(v=vs.110).aspx)xlogin01_xlogin02_xlogin03_xlogin04
and pack to xlogin01_xlogin02_xlogin03_xlogin04.zip
maybe using powershell.exe
)default target is all.
How to run Makefile
in Windows:
Ubuntu bash for Windows
and use built-in make https://msdn.microsoft.com/en-us/commandline/wsl/aboutCygwin
and use built-in make http://www.cygwin.com/GNU make
for Windows http://gnuwin32.sourceforge.net/packages/make.htmNMAKE
installed with Visual Studio https://msdn.microsoft.com/en-us/library/dd9y37ha.aspx https://msdn.microsoft.com/en-us/library/x6bt6xe7.aspxCreate archive xlogin01_xlogin02_xlogin03_xlogin04_plan.zip
contains:
xharmi00_xhalas10_xhavla06_xhertl04_plan_github_project.jpg
(screen of GitHub projects plan)xlogin01_xlogin02_xlogin03_xlogin04_plan.txt
contains:
@Matej-Havlas
Write user documentation im Markdown format in our Wiki. Create for it new file UserDocumentation.md
.
What must user documentation contain:
Find way, how to export documentation to PDF (documentation.pdf
) so we are able to deliver.
We will use WPF (Windows Presentation Foundation) framework.
@timoti111 @hertl @Matej-Havlas
This can help us http://www.itnetwork.cz/csharp/formulare/wpf. It is "tutorial" how does WPF work.
There is someting about Git and GitHub integration in Visual studio:
it is optional, we can use only command line for work with Git.
Implementation of math library by interface IMath #6 and tests #8.
Create static class Math
in namespace Disassembler
in file Math.cs
@Matej-Havlas
Implement this methods:
+
operator)-
operator)/
operator)*
operator)@timoti111
Implement this methods:
you can use .NET math library Math or you can implement your own algorithm, as you want.
Don't forget for exceptions like as divide 0, logarithm domain, etc.
Finally check, if and how your implementation cover our tests using dotCover.
@timoti111
Can you please do some screenshots of debugging your code?
@timoti111
Create GUI interface (windows layout, elements behavior, resizing window, colors, etc.).
Windows must contain
@Matej-Havlas
In branch mockup
modify GUI (new version of Calculator).
In this mockup, you can switch to scientific mod which must contain
then you can switch to mode where you can work with stopwatch.
A declarative, efficient, and flexible JavaScript library for building user interfaces.
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google ❤️ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.