JavaRush /Java Blog /Random EN /Coffee break #28. 40 tips that will change your coding sk...

Coffee break #28. 40 tips that will change your coding skills forever. Top 10 Java Development Environments

Published in the Random EN group

40 Tips That Will Change Your Coding Skills Forever

Source: Medium Coffee break #28.  40 tips that will change your coding skills forever.  Top 10 Java Development Environments.  - 1 In this article I will list some of the things that have helped me in my career. It won't take you long to read them, but if applied correctly, they can be useful for a lifetime. I have been developing applications for almost 15 years, and yet sometimes I have to stop and think again about the main aspects of this profession.
  1. Break large chunks of code into small logically complete parts.
  2. If the problem is not resolved by the time you leave work, turn off your computer and leave it the next day.
  3. Use the YAGNI principle - do not write more code than necessary. Discard functions that are not directly needed. Solve only current problems.
  4. You don't need to know all existing frameworks. The most important thing is to get a good base. Before you start with frameworks, learn the language and fundamental concepts such as the SOLID principles or the principles of writing clean code.
  5. Use the KISS principle (Keep it simple, stupid). It states that most systems work better if they are kept simple rather than complicated. While this is logical, it is difficult for many to understand.
  6. Don't think about it.
  7. If it takes you too long to find a problem or bug, come back to it later. Often the best solutions to problems are on my way from my office to the bathroom.
  8. Learn to write useful tests and learn to do TDD . This is an abbreviation for a software development process based on a short cycle iteration: create a test, run a test, evaluate the result, refactor the code, run a test, refactor, then repeat again.
  9. Solve the problem first, then write the code. Don't start writing code without knowing what to do.
  10. Don't memorize the code, but understand the logic.
  11. If you copy-paste a piece of code from Stack Overflow, make sure you understand it. Learn to copy correctly.
  12. If you want to learn something, practice. Make examples and make them work because reading about something is not enough.
  13. Study other people's code, and let others study your code from time to time. Pair programming and code reviews are a good idea.
  14. Don't reinvent the wheel.
  15. Your code is the best documentation.
  16. Know how to google. This requires experience and a lot of reading to know what to look for.
  17. In the future, other people may maintain your code, so write readable code, don't try to be the smartest.
  18. The best way to resolve the error with Google is to copy and paste it.
  19. Never give up, in the end, one way or another, you will solve this problem. Bad days will pass sooner or later.
  20. Recreation, Recreation and Recreation. The best way to solve a problem is to have a calm mind.
  21. Learn to use the software design pattern. Design patterns are a solution to common problems in software development. Each pattern is like a blueprint that you can customize to solve a typical design problem in your code. (Don't reinvent the wheel)
  22. Use integration tools and automate as much as possible.
  23. Solve Kats . This is a programming exercise that helps programmers improve their skills through practice and repetition. Examples can be found here .
  24. Dependency injection is a requirement. Follow the principles of SOLID.
  25. Refactoring - test - refactoring. Refactoring is a method of restructuring existing code, changing and improving its internal structure without changing its external behavior.
  26. Seek help if you need it. Don't waste time.
  27. Practice will make you perfect.
  28. While comments can sometimes help you, don't pay too much attention to them. They are probably out of date.
  29. Explore your development environment and look out for a powerful IDE like IntelliJ IDEA.
  30. Reuse components.
  31. When developing a web application, do not forget that the mobile devices on which it will run have limitations in power and bandwidth.
  32. Don't optimize or refactor prematurely. For starters, it's best to have a minimum viable product.
  33. Never choose an inefficient way to save a few minutes. When writing code, do everything carefully!
  34. Follow documented standards.
  35. Users are not IT people. Think about this when you design your user interface.
  36. Always use a version control system such as GitHub or Bitbucket, make small and frequent Git commits.
  37. It is better to use logs than to debug the code. Keep logs of all critical parts.
  38. Be consistent when coding. If you use a style, always use the same one. If you work in a large team, be guided by the same style with your colleagues.
  39. Don't stop learning new things, but before you take on a new language or platform, focus on the fundamentals of software development.
  40. Finally, have patience and love for what you are doing.
Thank you very much for reading. Hope it was helpful for you. Take care of yourself!

Top 10 Java Development Environments

Source: Technostack Coffee break #28.  40 tips that will change your coding skills forever.  Top 10 Java Development Environments.  - 2 One of the obvious advantages of the Java language is that Java developers have a large number of tools available. This applies, among other things, to IDEs used to create demos, corporate and mobile applications. To date, Eclipse, IntelliJ IDEA, and NetBeans are considered the most preferred Java IDE for programmers. But in addition to them, you can pay attention to some other solutions.

IntelliJ IDEA

IntelliJ IDEA is the Java IDE of choice for programmers in terms of getting the best possible results. The high performance and other amazing features of this Java IDE fascinate many developers. There are two versions of IntelliJ IDEA: free, open source, and a paid version. The environment supports multiple languages, including Java, Kotlin, Groovy, and Scala. Unit testing, code validation and code completion, debugging and refactoring are among the built-in developer tools in IDEA, which makes programming as simple as possible. It is an integrated development environment that supports SQL, JPQL, HTML, and JavaScript. In 2020, IntelliJ IDEA was named the best Java IDE.

Eclipse

Eclipse is one of the most popular Java IDEs. This development environment has many plugins and a built-in compiler. The presence of diagrams, modeling and testing tools makes developing Java applications on Eclipse easy and convenient. In addition to applications in Java, using Eclipse, you can create software and plug-ins in other programming languages. There are many extensions that add dispatchers to the Eclipse environment for working with databases, application servers, and other software.

NetBeans

Overseas, NetBeans is considered by many to be the best Java IDE for web development. The open source platform offers a range of tools and features that make developing applications for different platforms and operating systems as convenient as possible. In addition, it allows the programmer to work while minimizing the chance of errors. NetBeans has extensions for other programming languages ​​such as C, C++, HTML, PHP, and JavaScript. The NetBeans development environment is compatible with various operating systems: Linux, macOS, Solaris, and Windows.

BlueJ

Despite the availability of professional IDEs, many novice Java programmers prefer the free BlueJ environment. It is intended to be developed at an academic level. The main difference between BlueJ and other IDEs is its intuitive interface with interactive learning elements. Features such as dynamic object creation and visual code scanning are available in the environment. Many beginners take their first steps first in BlueJ and then in more advanced IDEs.

jdeveloper

Jdeveloper is a Java IDE created within the walls of Oracle Corporation. This environment has all the necessary features to implement the development life cycle from design to deployment. Along with Java, it can be used to develop applications in languages ​​such as XML, HTML, PL/SQL, and JavaScript. Jdeveloper includes visual development tools that simplify the process of creating software, regardless of the scope of its future application. The environment can integrate with the Oracle Application Development Platform based on Java EE. Thus, the application development procedure becomes more natural, and ADF (J2EE framework for developing Java applications in a declarative style) works as a cross-platform solution.

jGRASP

jGRASP is a lightweight Java IDE that runs on all platforms using the Java Virtual Machine. The environment has an integrated debugger and many different tools for Java developers. With jGRASP, you can create a data structure and static visualization of an application's source code. The environment works with control structure diagrams for various programming languages ​​such as C, C++, Python, and Objective-C. jGRASP is compatible with multiple operating systems: Linux, MacOS and Windows.

Greenfoot

The Greenfoot Development Environment is for educational purposes only. It is an interactive IDE capable of visually displaying the features of object-oriented programming, such as class-to-object relationships, methods, parameters, and object interactions. Greenfoot can be used to develop 2D games and simulations. The ease of work in this IDE, the presence of animated graphics and sound increases the interest of teenagers in learning. Greenfoot is compatible with Solaris, macOS, Linux and Windows.

DrJava

Just like some of the other IDEs mentioned here, DrJava is specifically designed for beginners and students. Although this development environment is not as powerful as professional Java IDEs, it has several obvious advantages: an intuitive interface, the presence of an interactive mode for evaluating and displaying code from the console, and the Junit testing tool. DrJava is developed using the Swing toolkit. Projects created in this environment can be integrated into Eclipse using a plugin. DrJava can be used on multiple operating systems: Linux, MacOS and Windows.

JCreator

Another Java IDE with lightweight functionality. The JCreator interface is reminiscent of Microsoft Visual Studio. The environment has a demo version known as a Lite edition, a paid Pro version, and a Life-Pro version. The two most attractive advantages that JCreator has are its compact size and fast download speed. JCreator is developed in C++ and does not require a JRE to execute Java code. The paid version of JCreator differs from the free version in the presence of features such as technical support, project management, code wizards and a debugger.

jsource

JSource is a free framework for Java developers. It is written entirely in Java using Swing components. The IDE has extensive support for the features you need to create cross-platform applications. Developers can use JSource to run, compile, edit, and create Java files. The main advantages of this environment should be considered Java Swing components and syntax highlighting for various operating systems. The jEdit syntax packages can be used in integration with open source Java tools.
Comments
TO VIEW ALL COMMENTS OR TO MAKE A COMMENT,
GO TO FULL VERSION