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 4 years ago.
Improve this question
so here I got an open-source Android app which I must analyze and identify the structure of, things like its libraries, high-level architecture, configuration management, and testing facilities.
Now I understand where and how to look for the last two, but I still rather confused on how can I identify the libraries and architecture.
So what I'm asking is, how do I identify the architecture of an app and the libraries it uses? where do I look for it? what part of the source code? are there any tips to do this?
If there is any other info that I should provide, please do tell me.
Edit1: this is what I meant by high-level architecture, using Firefox as an example, but it doesn't have to be this technical, something more simple is also okay >>>
There are 1000s (maybe even millions) of questions on stack-overflow regarding Android development. The android documentation is itself highly exhaustive. And a simple query like "add library android project" can lead someone to answers like this.
What I am really trying to say is, a lot is already there. You just need to use it.
As for the original question :
Libraries
The dependencies can be found here. These are the external libraries that are used by this app.
-
Architecture
About that, you will mostly have to go through the code. Using Android-studio for that can be really helpful. You can use tools like this, but mostly, you will have to go through the code and understand it.
Furthermore, since its opensource project, there should be good documentation about it.
Related
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
I'm trying to learn a bit of Android, and I've been reading a lot of documentation and tutorials.
I decided to use what seemed at that moment the most straight path, and that was use Android Studio. The first hacking hours went OK, the IDE is something that I like and I was able to build some activities.
Now I want to make things more serious and start to unit test the application. I must confess that I'm incredibly lost between the different paths that people is following. Please, if any question or assertion is wrong, let me know.
The basic testing tools that Android provide, needs to be used launching the emulator. This makes the tests run slow.
The are other approaches like Roboelectric. They have done a huge work and it would let you launch the tests from the terminal with Gradle and you can get a faster cycle (Red, Green, Refactor). Anyway, there are known problems using it with Android Studio and if sometime I need to debug a test, I won't be able.
I feel like I'm struggling a lot with something that should be very basic. I guess that my lack of knowledge in Java isn't helping. Something that it would be great and desirable as features of my project would be:
Be able to run some tests (business logic) with jUnit. Those tests should be fast and it would be great to run them from the terminal and from the IDE.
Be able to have others, isolated, integration tests (as you can see in the Android documentation).
I would like to know how people who is working in big projects are dealing with this. Any link to better documentation that I found or guidance would be greatly appreciated.
Thanks!
Closed. This question is off-topic. It is not currently accepting answers.
Want to improve this question? Update the question so it's on-topic for Stack Overflow.
Closed 10 years ago.
Improve this question
I usually code by myself but currently I need to do a java web-based project with 8 of my friends. I would like to ask the following questions:
1) How to document the development properly? Like how to keep a daily log? Any software or format suggested? What things do you think are important to be included in the log?
2) How to code together? Is there any software/IDE that allows a team to code together? Something ike google docs?
3) How to do a proper backup for a team project? Any software or tips to share?
Thank you very much!
Collaborative coding: its not the IDE that you can thank for collaborative coding, its all in distributed source control... like git or mercurial. Svn is also good for source control but is less good for collab.
Backup: git and mercurial solve this problem.
Documenting the project's progress is best suited in a task manager / project manager of some kind. I use projo project manager.. mostly because I wrote it. There's other well known apps out there like basecamp, and competitors.
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
I've been learning Java for the last 2 months with a Core Java book. Now I want to write something real, but at first I decided that I need to improve my knoweledge about algorithms and data sturctures so I'm currently reading a book on that.
I want to join an open-source project which is mature enough to learn from it but is still growing so I can really contribute to it. I browsed the whole apache and sourceforge looking for something interesting and the project I became really excited about is Apache Hadoop. Although it's quite complicated I don't think it's going to be a problem if I'm interested enough.
So the question is: does anybody here has expereince contributing to Hadoop? What can you say? Is there enough room for futrher development?
Yes, Hadoop has a whole ecosystem of projects to get associated with. Like HDFS, Hadoop Map-Reduce, Pig, Hive, Oozie etc. You might poke around using any of the VMs available like http://www.cloudera.com/downloads/
This will help you get acquainted with what all different projects are involved and thereafter you can contribute to make things better.
cheers
We certainly always welcome new contributors. Although it sounds trite, all open-source projects, Hadoop included, need improved documentation and tests. While this work may not be the sexiest, it does provide new contributors with experience in the code and the opportunity to provide useful patches that committers love to see. I'd caution against an anti-pattern I often see: announcing or signing up for too much work or suggesting too radical a change before establishing experience and credentials within the project.
There's always room for further development.
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 9 years ago.
Improve this question
I've recently learned core Java and want to develop my skills further with practice of programming. Instead of starting out with my own project, i would like to follow a well documented and organized project which would help me understand the language better.
Can anyone please suggest some open source projects to get involved in ?
look at http://java-source.net/
my personal favourite open source java project is JDownloader
I would advise you go through some of the Free / Open Source Software sites that host the projects and start filtering your searches for Java projects with a high number of users / downloads, as they tend to be fairly mature and will allow you to start looking through them.
My main recommendation is Arianne (http://arianne.sourceforge.net/). It's won several awards and is quite professional. There are only two listed developers, and they seem quite friendly. Plus, it's a multi-tier video game engine, so there's plenty of fun you could get out of working on it.
Otherwise, check-out java.net, kenai.com, and sourceforge.net for more possibilities.
If you want an early project with potential, there are plenty, but it can often be the luck of the drawer with those.
Following are good places to contribute in open source projects..
Sourceforge
IBM DEV
I also Advise you to use Android (Mobile development) . You can make business apps and Mobile Apps using Android.
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
I want to implement a simple wiki. Most probably will be using Java on Google app engine. I have been searching around for sample design or how others have implemented it, what issues they faced, how they solved it etc. But most search queries turned out to be useless as Google gave links to wikis discussing about programming instead of programming sites that discuss about wikis. Can anyone here direct me?
I found this link: http://everything2.com/?node_id=1683000 but honestly couldn't make head or tail out of it.
There's a discussion about Wiki design here (on this site):
Designing a Wiki, design considerations and feedback
Do you actually NEED to design your own wiki? Mediawiki is quite good and should have everything you need. Plus the installation instructions will get you running in 10-15 minutes.
Don't mean to question your motives, but if it's good enough for Wikipedia it's quite possibly good enough for you.
Here's a list of open source wikis written in Java - and here's another.
Depending on your needs it may be easier to customize one of the solutions available. For this task I found very useful checking wikimatrix.