Skip to content

Eclipse article #77

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Merged
merged 10 commits into from
Apr 23, 2024
Merged

Eclipse article #77

merged 10 commits into from
Apr 23, 2024

Conversation

danthe1st
Copy link
Contributor

@danthe1st danthe1st commented Apr 2, 2024

Request issue

closes #68

Website section

Learn > Tutorials > Your First Java App

Description

This article is an introductory tutorial for getting people started with developing Java applications in the Eclipse IDE.

There are no instructions about installing a JDK in this article because Eclipse should allow developing Java application with the JRE that comes with Eclipse.

Notes

This article reflects my opinion of what such an article should look like. However, I am open to any feedback. This affects things like the structure or what I have (not) included.

Here are some specific decisions I have made for now that might be worth discussing/reconsidering:

  • Currently, it is directly in the Your First Java App section together with the VSC and upcoming IntelliJ article. It might be a good idea to create a subsection about IDEs and group them together. However, this should probably be done in synchronization with the IntelliJ article (Add tutorial "Building a Java application in IntelliJ IDEA" (fixes #62) #70) and I will await specific decisions from @ammbra. The IntelliJ article was merged so I guess this will be done independently/afterwards.
  • I have used https://www.eclipse.org/downloads/packages/installer instead of https://eclipseide.org for downloading Eclipse. I felt this was a more direct link to get it. Are there any reasons for having a link to https://eclipseide.org?
    • Eclipse also supports a portable installation without using the installer. I did not mention this type of installation.
  • The term "Eclipse" is a bit difficult as it shadows the differentiation between the Eclipse IDE and the Eclipse Foundation. Technically, the IDE is (as far as I know) called "Eclipse IDE" however most people just say "Eclipse". I used the term "Eclipse IDE" in the introduction but then switched to the shorter version as an attempt to both be correct but also not unnecessarily using the long (full) name. I got confirmation that this should be fine.
  • I ended some lines with two spaces in order to add a line break before images. In most cases, this doesn't make a difference but there is at least one image where it would look weird otherwise (This may be different on other devices) This was changed to use paragraphs.
    image
  • By default, Eclipse doesn't display packages hierarchically. I didn't include any information on how to change this as I also didn't write much about packages anyways.
  • Similarly, Content Assist doesn't automatically activate on most keys. I just mentioned how to use it with a key combination. While it is possible to change this, I did not go over any settings/configuration in this article.
  • I have not yet found anything about Debugging keybinds on MacOS. I think these are probably the same (F5, F6, F8) but I haven't checked that yet it seems to be the same. It may be necessary to use the Fn key there.
  • I generally used the UI navigation instead of mentioning keybindings as I felt this would be more stable. Maybe the summary section should contain something saying that most important actions can also be performed with keybindings that are often displayed next to the UI option?
  • I don't know the article ID of the records article as this is not available in this repository. Hence I used a /learn/records link.

Not included

  • Eclipse is Workspace-based (meaning one has a workspace with an arbitrary number of projects). I did not (yet) include any information about what that means and how it is different from Project-based IDEs.
  • Perspectives and views are a fundamental concept in Eclipse which I was mentioning in the Debugging/Running sections. I plan to add a short section about perspectives/views as well.
  • It might also be a good idea to add information about creating projects with Maven/Gradle in Eclipse. However, this would require informing users about setting the Java version in Maven project to not have a Java 5 (or 6 or whatever Maven's default is) project. I am not talking about a tutorial for using build tools but a section telling people how to create projects with build tools.
  • I did not include any information on Testing (this is present in the IJ article). I don't think this is necessary for people writing their first applications.
  • Should there be a summary?
  • I did not include anything about key combinations being shown in the perspective when no editor is opened.
  • I have not included any links to documentation or More Learning resources. If it is helpful to include documentation or include a video for further learning, I am open for that.

@oracle-contributor-agreement oracle-contributor-agreement bot added the OCA Verified All contributors have signed the Oracle Contributor Agreement. label Apr 2, 2024
@danthe1st danthe1st marked this pull request as ready for review April 3, 2024 11:16
@danthe1st
Copy link
Contributor Author

danthe1st commented Apr 3, 2024

I found https://eclipseide.org/getting-started/documents/eclipse-ide-keybindings.pdf for keybindings - Debugging keybinds seem to be the same on MacOS but Content assist seems to be different.

However, I still don't know about chinese MacOS systems.

EDIT: I asked someone and they said it would depend on the keyboard as Mac keyboards would not have F5/F6/F8 keys while USB keyboards wouldn't have any key. However, I don't really know that person and I don't have anything backing that up.

According to the sources, the default keybindings for content assist is as follows:

For debugging keybinds (Step Into), I found these sources which use F5/F6/F8 and do not specify anything else.

@danthe1st
Copy link
Contributor Author

danthe1st commented Apr 15, 2024

I now added sections for generating code, refactoring and I also added a short summary with a link to the Java Development User Guide of the Eclipse IDE.

@carimura carimura self-assigned this Apr 23, 2024
@carimura
Copy link
Member

Hi @danthe1st, thanks again for the contribution. I'm back and can assist getting this over the line. I've started reviewing and pushing some fixes directly for expediency sake, hope that's OK. Mostly formatting, spacing, etc., but I did re-order slightly by moving the "Run Program" section above the "Dealing with errors" section. Let me know if that messes up your flow.

I've got a bit more review to do but will get back shortly.

@danthe1st
Copy link
Contributor Author

danthe1st commented Apr 23, 2024

Thank you for taking a look at it, I am happy to be allowed to write this article.

I have now added paragraph pages consistently and removed whitespace at the end of lines (which I used for line breaks previously).
Furthermore, I changed the file name to match the other articles.

Regarding the voluntary reviews from @tivervac and @BeckerWdf, I think they would need to sign the OCA in order for me to take their feedback into account (independently of whether or not I change anything based on it?). How do I know whether this happens?

@carimura
Copy link
Member

Thanks @tivervac and @BeckerWdf for the suggestions! We included a few of the trivial ones.

@danthe1st I'll get this merged!

Copy link
Member

@carimura carimura left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM

@carimura carimura merged commit cb1cee3 into java:main Apr 23, 2024
@carimura
Copy link
Member

We'll get this merged to prod within a day or so, thanks all!

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
OCA Verified All contributors have signed the Oracle Contributor Agreement.
Projects
None yet
Development

Successfully merging this pull request may close these issues.

[Request] Writing Java applications with Eclipse
4 participants