frameworks - Java Time Savers -


I think the nature of this question is very favorable for people with practical minds on stack overflow.

I am setting up a large scale project in Java. I'm not going to go into the features, but it needs to include data management, parse odd formats, and have an attractive interface with editor words. I am a graduate student and I think it will develop into a good project to showcase its skills for employment - heck, ideally it will also be on the basis of a startup.

I write to ask you that the shortcut I probably can not think of that would help with a complex project in Java. Of course, I am planning to go into eclipse, and Probably will use SWT for GUI However, I know that the quality of the unfortunately good in Java is high, and I do not want to get stuck.

Before you tell me that I want to do it in Python, or just like, I just

  1. Java has a lot of experience with algorithms, and in them There will be quite a few.
  2. A large library of APIs want to expand the functionality of the NTR, database, library to handle some formats
  3. Run it anywhere with decent display

    I'm open minded for all the techniques (most familiar with Java, Pearl, SQL, a small functional).

Edit : For this moment , I'm giving it to DJN (though low vote) me It seems that all your answers are definitely useful in some cases.

I think the DNA better than I want to see as a novice programmer, I know that I'm not taking the shortcut but I'm messed up. For large framework suggestions, esp J2EE, this is very much in this situation. I am trying to provide the simplest solution and in which my API can be expanded by a person who is not JBEE / JDBC expert.

Thank you for bringing Apache Commons, although I already knew that it is still confused with SWT and Swim, but every swing program I used has gone ugly as I said in the post, I want to focus most on File Interchange and Limited DB features that I have to implement myself (but be careful - I know about concurrency)

Finding" Project "is accomplished efficiently and there are" short cuts "I suspect it can come in the category" Avoiding wasted effort "but in fact There may be a short cut, but if any of them ask you to finish it faster, they probably help.

1) Separation of dissolution and concerns You have already identified high level chunks (UI, firmness, parser etc.). Define the interface to the provider classes as soon as possible and all dependent classes work against those interfaces. Make a lot of attention to the applicability of those interfaces, make them easy to understand - Names case is anything simple as the difference between the shutdown flag (true) and the request shutdown (), the other has a clear meaning and therefore I I like it.

Advantages: Easy maintenance "Maintenance" is also done during initial development. You want to change the code already written. Make it easy to get it through strong encapsulation.

2). Expect refinement development, refining and redesigning. Before you use it, do not expect to "finish" one of the components in isolation. In other words, do not take a purely down approach to developing your componenets. As you use them, you get more information, as you apply them, you probably get more information about it.

So enable high level components, especially UI for the development of fun and low level reduction. Something like JMock is a short cut.

3) Test quickly, use JUnit (or equivalent) to test you have found a match for your low level components so that you can test them.

Specifically, I think that when I got a "test hat" I have to write a better code.

> 4). Keep your error management strategy in front. Produce good diagnosis when errors are detected.

Advantages: Extraction of bugs is very easy.

5). After dealing with the error - Use the Diagnostic Debugging Statement Do not use System.out.println () to splash them in your code generously, instead use the debugging features of your logging library - Use java.util.logging Interactive debugger is useful, but there is no single way to analyze problems.


Comments

Popular posts from this blog

c++ - Linux and clipboard -

What is expire header and how to achive them in ASP.NET and PHP? -

sql server - How can I determine which of my SQL 2005 statistics are unused? -