Difference between WebStorm and PHPStorm - ide

I'm choosing an IDE for web development and I would like to know what the differences between WebStorm and PHPStorm are.
I couldn't find any major points on JetBrains' website and even Google didn't help that much.
All I know now is that PHPStorm doesn't support JS like WebStorm, but is able to due to plugins. Is this the only difference?

I couldn't find any major points on JetBrains' website and even Google didn't help that much.
You should train your search-fu twice as harder.
FROM: http://www.jetbrains.com/phpstorm/
NOTE: PhpStorm includes all the functionality of WebStorm (HTML/CSS Editor, JavaScript Editor) and adds full-fledged support for PHP and Databases/SQL.
Their forum also has quite few answers for such question.
Basically: PhpStorm = WebStorm + PHP + Database support
WebStorm comes with certain (mainly) JavaScript oriented plugins bundled by default while they need to be installed manually in PhpStorm (if necessary).
At the same time: plugins that require PHP support would not be able to install in WebStorm (for obvious reasons).
P.S.
Since WebStorm has different release cycle than PhpStorm, it can have new JS/CSS/HTML oriented features faster than PhpStorm (it's all about platform builds used).
For example: latest stable PhpStorm is v7.1.4 while WebStorm is already on v8.x. But, PhpStorm v8 will be released in approximately 1 month (accordingly to their road map), which means that stable version of PhpStorm will include some of the features that will only be available in WebStorm v9 (quite few months from now, lets say 2-3-5) -- if using/comparing stable versions ONLY.
UPDATE (2016-12-13):
Since 2016.1 version PhpStorm and WebStorm use the same version/build numbers .. so there is no longer difference between the same versions: functionality present in WebStorm 2016.3 is the same as in PhpStorm 2016.3 (if the same plugins are installed, of course).
Everything that I know atm. is that PHPStorm doesn't support JS part like Webstorm
That's not correct (your wording). Missing "extra" technology in PhpStorm (for example: node, angularjs) does not mean that basic JavaScript support has missing functionality. Any "extras" can be easily installed (or deactivated, if not required).
UPDATE (2016-12-13):
Here is the list of plugins that are bundled with WebStorm 2016.3 but require manual installation in PhpStorm 2016.3 (if you need them, of course):
Cucumber.js
Dart
EditorConfig
EJS
Handelbars/Mustache
Java Server Pages (JSP) Integration
Karma
LiveEdit
Meteor
PhoneGap/Cordova Plugin
Polymer & Web Components
Pug (ex-Jade)
Spy-js
Stylus support
Yeoman

Essentially, PHPStorm = WebStorm + PHP, SQL and more.
BUT (and this is a very important "but") because it is capable of parsing so much more, it quite often fails to parse Node.js dependencies, as they (probably) conflict with some other syntax it is capable of parsing.
The most notable example of that would be Mongoose model definition, where WebStorm easily recognizes mongoose.model method, whereas PHPStorm marks it as unresolved as soon as you connect Node.js plugin.
Surprisingly, it manages to resolve the method if you turn the plugin off, but leave the core modules connected, but then it cannot be used for debugging. And this happens to quite a few methods out there.
All this goes for PHPStorm 8.0.1, maybe in later releases this annoying bug would be fixed.

There is actually a comparison of the two in the official WebStorm FAQ. However, the version history of that page shows it was last updated December 13, so I'm not sure if it's maintained.
This is an extract from the FAQs for reference:
What is WebStorm & PhpStorm?
WebStorm & PhpStorm are IDEs (Integrated Development Environment)
built on top of JetBrains IntelliJ platform and narrowed for web
development.
Which IDE do I need?
PhpStorm is designed to cover all needs of PHP developer including
full JavaScript, CSS and HTML support. WebStorm is for hardcore
JavaScript developers. It includes features PHP developer normally
doesn’t need like Node.JS or JSUnit. However corresponding plugins can
be installed into PhpStorm for free.
How often new vesions (sic) are going to be released?
Preliminarily, WebStorm and PhpStorm major updates will be available
twice in a year. Minor (bugfix) updates are issued periodically as
required.
snip
IntelliJ IDEA vs WebStorm features
IntelliJ IDEA remains JetBrains' flagship product and IntelliJ IDEA
provides full JavaScript support along with all other features of
WebStorm via bundled or downloadable plugins. The only thing missing
is the simplified project setup.

PhpStorm supports all the features of WebStorm but some are not bundled so you might need to install the corresponding plugin for some framework via Settings > Plugins > Install JetBrains Plugin.
Official comment - jetbrains.com

I use IntelliJ Idea, PHPStorm, and WebStorm. I thought WebStorm would be sufficient for PHP coding, but in reality it's great for editing but doesn't feel like it real-time-error-checks PHP as well as PHPStorm. This is just an observation, coming from a regular user of a JetBrains products.
If you're a student try taking advantage of the free license while attending school; it gives you a chance to explore different JetBrains IDE... Did I mention CLion? =]

In my own experience, even though theoretically many JetBrains products share the same functionalities, the new features that get introduced in some apps don't get immediately introduced in the others. In particular, IntelliJ IDEA has a new version once per year, while WebStorm and PHPStorm get 2 to 3 per year I think. Keep that in mind when choosing an IDE. :)

Related

Typescript files show errors in IntelliJ IDEA Community Edition

I am facing issue with TypeScript in IntelliJ IDEA Community Edition. Earlier I have used IntelliJ IDEA Ultimate Edition for Angular 2 development and it works fine.
This is the error I am getting in my .ts file. Plus there is no intelliSense. Is this feature unavailable in the Community Edition?
As zhengyue pointed out in comments, apparently you are using the "TypoScript" plugin, which is not a "Typescript" plugin.
I made the same mistake. And I also had the same problems that you experienced. Personally I thought it was the #Component decorator that messed things up. But it was zhengyue who pointed out I was using the wrong plugin.
The conclusion for me was that it was better to search for a good alternative. Because I still want to develop my back-end in Java, I wanted ...
something that integrates with IntelliJ as good as possible
but still something which is powerful.
At first I tried eclipse, and found powerful tools in their marketplace, which turned out to be commercial products and expired after 8 days.
Secondly, I downloaded "Visual Studio Code", (not to be confused with the full blown Visual Studio). It is FAST and user-friendly. It launches in less than 2 seconds on my system. And it has great plugins, which allow me to use code completion and refacturing tools. Here is the list of plugins I have installed:
As you can see, there is a plugin that makes you use the keybindings of intellij.
In IntelliJ I configured my ".ts" files to be handled as javascript files. Because it's better than nothing.
I work in IntelliJ all day when I'm working on the Java back-end, and thanks to the javascript features, I still have some (limited) code highlights for the Angular front-end as well. But, when I want to edit something in the front end, I use Visual Studio Code. To make this a smooth transition, I right-click inside the file and use an external tool configuration:
Inside my IntelliJ I configured the root of the angular project as a module. Then the configuration of this external tool looks like this:
This allows me to switch from IntelliJ to Visual Studio code in about 2 seconds, and immediately to the correct line in the correct file.
So, that's what my free Angular-with-Java-combo development workspace looks like.
JavaScript/TypeScript support and many other features are not available in the Community Edition.

Can't find C/C++ IntelliJ IDEA Plugin

I'm trying to add a c/c++ plugin to IntelliJ IDEA, so I went to plugins and searched for it but couldn't find it.
Did they remove it and replace it with their new IDE cLion? Is it no longer supported or what?
Looks like the version of your IntelliJ IDEA is newer than what the C/C++ plugin supports. If you look at the plugin page you can see that builds from 139.1 until 142 are compatible. And if you look here you can see that build 141 is IntelliJ 14.1 and IntelliJ IDEA 15 is numbered 143. So my guess is you are using IntelliJ IDEA 15 or 16 EAP and therefore the plugin is not shown when you search for it.
Simply download the cpp plugin of the old 14 version located here:
https://plugins.jetbrains.com/plugin/1373-c-c-
Then edit the file CppTools/META-INF/plugin.xml and replace the "until-build" value in line 5 to something like until-build="170.0"
And this works perfectly :)
One should really note that the "C/C++" plugin available in the IntelliJ Plugin Repository is actually not developed by Jetbrains, but by a third party called AdvancedTools, and has long not been updated. I'm not sure if that is related to the release of CLion, e.g. IntelliJ bought out the plugin to serve as the foundation of CLion or whatnot.
As listed in the CLion FAQ page, there is currently no official standalone plugin for C/C++ editing available for IntelliJ IDEA. Just as with some other products such as Jetbrains AppCode, Jetbrains are currently keeping CLion as an exclusively paid product, without a free community edition, as indicated in this forum post.
The post also confirmed that a plugin for IntelliJ IDEA might be coming in the future, but is currently (Jan 2018) not a priority for JetBrains.
So yeah for now the only way to get decent C/C++ support within the IntelliJ ecosystem is to use/buy JetBrains CLion.
Download latest version of c/c++ extension from link: https://plugins.jetbrains.com/plugin/1373-c-c-
then open that CppTools.zip inside META-INF folder open file plugin.xml modify line five until-build="" from your own intellij idea build. Go to Help --> About in Your Intellij idea.
plugin.xml file screenshot:
Now Go to File --> Settings --> Plugins --> Install plugins from Disk, browse ypur edited/ modified CppTools.zip.
I faced this problem before and i figure out that the software i install it was old and not update, so try to see the plugin version and see is that plugin version compatible with your intellij-idea, if not check update for the intelli-idea ,the developers fix many problems in every update ,then download it.
you can check compatibility from this page.
Here
Click on Preferences -> Plugins -> Browse Repositories and search for it

Create a old Play 2.3.1 framework (current is 2.4.3)

Problem
I'm trying to create a Play 2.3.1 framework, because the lack of info on how to get started with 2.4.3. So much has changed apparently that the tutorials on youtube is useless and I can't get it to work.
Question
How do I do this?
I have tried to go to https://www.playframework.com/download#older-versions but all versions yield the same link to https://downloads.typesafe.com/typesafe-activator/1.3.6/typesafe-activator-1.3.6-minimal.zip
which installs the newest playframework 2.4.3.
Please say that someone knows how to do this?
Also, why should I bother using 2.4.3 > 2.3.1 if I'm only creating a simple mobile app w/database? Security reasons or just "easier"?
Same question for IntelliJ 14 > IntelliJ 13 ?
https://www.playframework.com/download#older-versions is the link you need.
When you're new to Play! it can be quite confusing so I think a bit of terminology is needed.
SBT - Scala build tool. This is a build tool that is baked into every Play! project but totally independent of Play! framework, ie. many Scala projects use this to manage their builds without ever using Play! It's just the Scala equivilient of a Maven, Gradle or Ant. Nothing special.
Activator - This is Play!'s commandline, like a build-tool++. It's commandline tool with a superset of the SBT commands clean compile etc etc, with Play! specific ones like 'new', 'run'. It actually just amounts to not much more than a script (.sh/.bat) which bootstraps SBT and some extra goodness for running play commands. In earlier versions like 1.x this command was named play. Version 2.x was a practically a re-write so you can ignore all related advice.
Play - the playframework itself is just a regular jar (and all its dependencies). It is declared in the project/plugins.sbt
So the reason all the download links point to activator-1.3.6 is because that is just the version of the commandline tool. This will default to latest: 2.4.x.
When you perform an activator new you get a choice of templates. If you REALLY REALLY want to use 2.3.x you could choose this template when prompted hello-play-2_3-scala.
But I don't suggest you do that because:
The documentation for 2.4.x is comprehensive and there are walkthrough guides, it won't take any longer than a youtube video.
There are bug fixes and new features in 2.4.x
2.4.x introduced dependency injection which means it will be harder to upgrade once you'ved developed everything in 2.3x.
Apart from dependency injection most stuff works the same in 2.4.x
Intellij:
Use 14. Play support is improving all the time. If you can use the Early Access Program and the latest version of the Scala plugin.
Don't run 'activator idea' - this is deprecated. File -> open project from Intellij should be enough.

How to add different programming languages to Eclipse (C++, C#, Java)

another completely beginner question. I just went through two introductory courses in Java, and I noticed that Eclipse can also support development in other languages (which I didn't know). Does anyone know how to add other languages to Eclipse so that I can switch between IDE's, or do I have to have a completely separate installation of Eclipse per language?
In Eclipse, use the menu Help -> Install new software. Choose "All available sites" in the combo box, wait a moment and then you can explore some other available plugins and languages.
Depending on your version of Eclipse, you might also have a menu item Help -> Eclipse Marketplace. That one is even more comfortable, as it allows you to easily browse all plugins listed in the Eclipse Marketplace. You can also browse the marketplace in your browser and afterwards drag and drop interesting plugins from the browser to your running eclipse (if your version of eclipse is new enough).
Eclipse is a plugin framework......
You have two choices - fortunately the eclipse community saw fit to produce Eclipse in a range of products that will do 99% of what 99% of people want. These distros are good to go. You install them and start work. You can then extend them if you want, but they do all of the basics very well, reliably, out of the box. Installing more than one with eclipse is easy, they do not interfere with each other, and if one turns out to be broken, the rest are not affected.
The other option, is to extend the framework by adding the plugins you want. So you start with an Eclipse distro, and download and install plugins till the cows come home. In the perfect world, this would be the perfect solution. Its not a perfect world..... you have not installed all you plugins and Eclipse suddenly crashes........
Problems occur because sometimes
Plugins are buggy
Plugins are incompatible with each other.
Different plugins rely on different versions of another one
(indirectly incompatible).
Plugins don't work the way the rest of the tool does
There are just too many plugins to choose from - you don't need most, and the ones you need can be hard to find.
Adding more than a few (probably 1) plugin to Eclipse exposes you to these problems. This is not something for the novice or people who have job not involved in fixing Eclipse. if you have a real reason for it, like your a sadist, or it's your job, or you want it to be your job, to make a team of 100 Devs productive, then plugins are great, otherwise, download a pre-canned, tested, reliable distro and take advantage of the great work by the contributors.

Getting auto-completion to work in an IDE using Coffeescript and external Javascript libraries such as jQuery

I would like to ask how other more experienced Coffeescript developers are using their respective IDE's or editors with auto-complete when developing modular libraries and / or referencing external Javascript libraries (jQuery, jQuery UI, RequireJS, Handlebars, ...).
As much as I've tried various IDE's and plug-ins for Coffeescript, none of these seem to support auto-completion when the project consists of several script files. For example: in Visual Studio I can add a commented directive such as /// <reference path="/js/jquery.js" />. I'd need something similar for Coffeescript.
I have tried following without success:
Visual Studio with Web Workbench by Mindscape
Netbeans with dstepanov's Coffeescript plug-in
Aptana with the Coffeescript ruble
Further, I am aware of Jetbrain's WebStorm 3.x support for Coffeescript, unfortunately, my evaluation period expired before I realized I'd need this feature - can anyone confirm that setting the Javascript / Coffeescript Usage Scope works as expected with auto-complete?
So effectively what I am asking: is there an IDE or plug-in, commercial or otherwise, enabling auto-complete for Coffeescript libraries spanning multiple files?
Hate to answer my own question, but after giving JetBrains WebStorm 3.0.2 another demo run on another box, I figured it worked best and does have 'smarter than average' auto-complete for coffeescript projects. It simply loads all coffeescript files in to a global auto-complete context and you can add external libs (cs or js) as well using the project's scope settings. Could be better, but for now I cannot find any other IDE or tool running on PC or Linux, OSS or paid, that tops WebStorm and I don't have the fortunes to explore OSX alleys.
I am sure future tools, plugins, IDE's will pop up for various platforms that do offer great coffeescript module management and proper contextual auto-completion in the editor. So please, do keep the suggestions coming.
Thanks!
I personnaly use Kdevelop. I can't remember if I installed a plugins or something to get it work with coffeescript.
But it works very well, the highlighting colors are pretty, when ctrl+d it add coffeescript commentary and so on.
Also I do make compilation directly in KDevleop.
Well also it's free, I am using it on linux debian but I think it works on most platforms.
Check it there : http://kdevelop.org/