Skip to main content

Java - What's next?

Leetcode​

leetcodetopics

PHP vs Java​

  • How different is PHP from Java? What are some of the main aspects when learning PHP ? What are some of the main things a junior should know? : r/PHP
    • PHP syntax has been heavily influenced by Java for the last 20 years so you'll find many concepts will be familiar. If you're used to Spring, I believe that Symfony and Doctrine will be particularly recognisable. Main differences that come to my mind are:
      • PHP is single-threaded* so applications are based in short-lived script executions. You don't have an application server running all the time and keeping an application-wide status.
      • PHP toolchain and workflow are simpler. Third-party libraries are almost always pure PHP code, so you can set breakpoints and debug without having to get source code as a separate download. You can see your changes almost instantly, you don't need to recompile, redeploy or restart the application server.
    • (*) There're some projects to provide asynchronous logic but, as far as I know, language core is not really multi-threaded.
  • Between Java and PHP, which would you recommend me to choose for web development if I know the basics in both? Why? - Quora
    • Depends what kind of Web development you're doing.
    • Building WordPress sites and plugins?
      • PHP is the only choice.
    • Building large scale enterprise IT infrastructure?
      • Java is the front runner here, with C# a distant second and Node.js, PHP, and Python in third place and more obscure offerings (like the once-popular Ruby) pulling up the now frustrating and mostly legacy rear. Note that developing enterprise websites in Java usually means developing backend infrastructure in Java and SQL and front-end infrastructure in Typescript or JavaScript using popular frameworks like Vue.js or React.
    • Building anything else?
      • Use whatever best suits the project at hand. You'll never go wrong choosing Java (for backend, at least), though some Java developers and Java frameworks add annoying complexity and awkwardness (*cough*Hibernate*cough*) and other languages and frameworks may be faster to develop if the project is small, but will become an obstacle (in a way that Java and C# do not) when the project gets big.

Profiling​

Debugging​

Server​

XAMPP​

phpMyAdmin​

WordPress​

Hibernate​

HQL​

JPA / Spring Data JPA​

JDBC​

Pair Programming​

Testing​

Mocking​

Firebase​

  • Firebase
    • "is a set of backend cloud computing services and application development platforms provided by Google. It hosts databases, services, authentication, and integration for a variety of applications, including Android, iOS, JavaScript, Node.js, Java, Unity, PHP, and C++."
  • Backend as a service (BaaS)
    • "a service for providing web app and mobile app developers with a way to easily build a backend to their frontend applications. Features available include user management, push notifications, and integration with social networking services. These services are provided via the use of custom software development kits (SDKs) and application programming interfaces (APIs). BaaS is a relatively recent development in cloud computing, with most BaaS startups dating from 2011 or later. Some of the most popular service providers are AWS Amplify and Firebase."

Authentication​

Cloudflare​

ORMs​

Algolia​

Services​

  • BigCommerce
  • Commercetools
  • Firebase
  • Magento 2
  • Salesforce B2C Commerce
  • Shopify
  • Wordpress
  • Zendesk

Frameworks​

  • Django
  • Laravel
  • Rails
  • Symfony

Cloud Hosting​

HTTP​

Module Bundler​

Webpack​

Server Models​