Understanding the code process of Ccleaner [closed] - java

Closed. This question needs to be more focused. It is not currently accepting answers.
Want to improve this question? Update the question so it focuses on one problem only by editing this post.
Closed 8 years ago.
Improve this question
How does a Register cleaner tool works if you would analyze the code ?
I'm not asking for specific code here...I'm just wondering the code for a tool like Ccleaner for instance is working, roughly explained.
The reason why I ask this is because I want to create an class diagram about the Ccleaner tool.
But ofcourse for Ccleaner specificly you would need the source code..and we all know no normal has acces to the source code of ccleaner
But if anyone know's any registery and pc cleaner tool is getting to it to clean up the mess on your computer and how it's cleaning up your registery...it would help me big time to create an class diagram.
Thanx

It depends much on how you design your application (because this looks like a design exercise more than anything).
First I would recommend you to list down your requirements. Saying "like ccleaner" is just way too broad. Just come up with a list of functionality you need your system to achieve and try to break down such list into smaller responsibilities. Also come up with a list of candidate objects and try to distribute your responsibilities in between those objects, after that you can start thinking in your structure and how to organize them (composition, association, inheritance relationships). Good objects are not anemic (0 responsibily) nor godly (a tons of stuff to do)
That roughly is a way to do it. There is no perfect design nor "a single class diagram" that might answer this question.

Related

How do I make my jvm project not have huge paths? [closed]

Closed. This question is opinion-based. It is not currently accepting answers.
Want to improve this question? Update the question so it can be answered with facts and citations by editing this post.
Closed 5 years ago.
Improve this question
For some reason, I absolutely HAVE to use paths like src/main/kotlin/com/martmists/... etc, why can I not just use src/...? This annoyance is the only thing keeping me from studying jvm languages, and I have yet to find a way to simplify these paths.
Look, I just created a Kotlin project with the default settings:
There were no forces compelling me to create the structure you describe.
Neither long package names, nor the src/main/kotlin/ structure are mandatory, but you'll fight an uphill battle if you avoid them. The reason is that JVM languages target large-scale projects, where organization into meaningful subunits (packages), as well as the division between production code and test code, is beneficial and not detrimental to its success.
In some other languages you get a cozy feeling of a lightweight start, but as your project grows towards 10,000 lines of code and beyond, you realize that you've been reinventing this structure all along to keep you afloat.
I can attest from personal experience that the IDEs take away most/all the pain of dealing with nested directory structures and allow your project to scale up gracefully, with no need to reinvent best practices.
On the other hand, if your use case for a programming language is writing one or two screenfuls of script code, then the JVM ecosystem is probably not a good fit for you.

Techniques for converting OO C++ to Java (No conversion tools) [closed]

Closed. This question needs to be more focused. It is not currently accepting answers.
Want to improve this question? Update the question so it focuses on one problem only by editing this post.
Closed 6 years ago.
Improve this question
I have looked around, and there are no solid guidelines to converting Object Orientated C++ to Java. Most are references to conversion tools.
My question is what are the steps one should take to not get overwhelmed and lost, especially for heavily OO projects.
For example, given one method that accomplishes a task. That method is called, which is dependent on several other cpp, and those helper methods are also dependent on other cpp files, and so on. How should this be addressed?
What are techniques that can be used to break it down, while properly combining .hpp and .cpp?
I understand JNI can be used, however, it is desired to have only Java code, unless something can literally only be done in C++
Tips, suggestions, and ideas will be much appreciated.
PLEASE do NOT mark this as a DUPLICATE, there are only questions posted in respect to specific code, or using conversion tools, not for general techniques.
Also, if this is a terrible question, let me know, I'll take it down, no need to thumb it down. Thank you.

What should be approach to understand a new project [closed]

Closed. This question needs to be more focused. It is not currently accepting answers.
Want to improve this question? Update the question so it focuses on one problem only by editing this post.
Closed 6 years ago.
Improve this question
If one joins a new project, how should that person approach it if
there is no documentation of the code and program is quite big to understand. Team members are also not that much informative.
Should the person debug the code line by line?But it can be highly time consuming and exhaustive.
There are several options:
Look for manuals. I have seen projects without specification and developer documentation, but had a manual.
Participate in a training, if offered by your company. This may take some time, e.g. the next training is in 2 months.
Run the code and see what it does.
get a tool like NDepend that visualizes the dependencies. By that, find the central modules or classes. Look at those first.
Ask your developer colleagues. If they don't want to tell you, tell them that you need some understanding in order to do your job
If all of the before does not help, ask your boss for help. He should have a plan to get you productive.
The users option would be great, but in all companies I worked for I did not have access to end users as well, since we always worked with partners as intermediate resellers. Contacting the partners is not a good idea, because it might leave a negative impression if you don't know the software.

Which design patterns should we use with Selenium WebDriver? [closed]

Closed. This question is opinion-based. It is not currently accepting answers.
Want to improve this question? Update the question so it can be answered with facts and citations by editing this post.
Closed 7 years ago.
Improve this question
Page Object Pattern is obvious. But what I can do more to build better automated test cases for web application?
I may not be able to talk about any standard pattern, but here are a few things that I consider:
Make good use of Test Execution frameworks. I use TestNG.
I create a base file which makes use of most of the TestNG annotations for Setting and Tearing up.
Separate your Re-usable functions and call it wherever needed. I generally add these in the base class.
I personally prefer keeping locators too in the base file if they are too complicated. This would help you to change the locator from one place and get reflected for all. In this case, do follow a good naming convention.
Use collections wherever possible.
You can use something like ReportNG for more user friendly reports.
Make more use of implicit waits and avoid using JavascriptExecutors.
Copy the Drivers and libraries within the project folders for better mobility and less external dependencies.
Adding selenium WD javadoc to your project will be of some help.
We also make sure we have a screenshot for failed test case by over-riding the onTestFailure method.
Rest all are simple coding basics for cleaner and easy to understand code that I believe you'll be following anyway.
Hope this was of some help. Will add more points if I'm able to recall. Also, please let me know if you need more details for any of these things.

Java: SQL and Statistics/Machine Learning [closed]

Closed. This question needs details or clarity. It is not currently accepting answers.
Want to improve this question? Add details and clarify the problem by editing this post.
Closed 8 years ago.
Improve this question
I have a question for you concerning Java. I am basically a Java user and did most of my work with it. However, in the machine learning classes I took in college, we used mostly python with the scikit-learn and numpy packages.
Now I want to do a project where I crawl data from the web, store it in SQL databases, and then do machine learning on this data. Maybe some of you have experience with those things and share some of it? I mean, of course it is possible to do these things with java, but maybe you have had some particular experiences on why I should use something else or what to consider?
I am happy for all your thoughts :-)
Have a great weekend!
It turns out that programming language and database implementation are secondary problems. Think first about the machine learning you want to do. Review the existing packages (in any language) and pick one according to how well it fits the needs of the business problem you are trying to solve. Then work with whatever language is most convenient for that package. You will probably find that no single language is suitable for all parts of the problem; you will end up gluing together Java, Python, R, shell scripts, etc, to make a complete solution, and there's nothing wrong with that. Consider that your job is problem solving instead of programming in a specific language and go from there.

Categories