Need advice about which tool to choose?Ask the StackShare community!
IntelliJ IDEA vs PhpStorm vs Visual Studio: What are the differences?
Introduction
In this article, we will compare three popular integrated development environments (IDEs): IntelliJ IDEA, PhpStorm, and Visual Studio. We will highlight the key differences between these IDEs, focusing on specific aspects that set them apart. Let's dive into the details.
Platform Support: IntelliJ IDEA and PhpStorm are primarily built for the Java and PHP programming languages, respectively, whereas Visual Studio brings extensive support for several programming languages, including C#, C++, and JavaScript. Visual Studio offers a more diverse platform support compared to IntelliJ IDEA and PhpStorm.
Built-in Tools and Features: IntelliJ IDEA is known for its rich set of built-in tools and features, particularly for Java development, such as code completion, refactoring, and debugging. PhpStorm also offers similar features tailored to PHP development. However, Visual Studio surpasses both by providing a comprehensive suite of tools and features catering to a wide range of programming languages and frameworks, including web development, cloud services, and machine learning.
Extension Ecosystem: IntelliJ IDEA and PhpStorm both have a thriving ecosystem of plugins and extensions available through their respective marketplaces. These plugins extend the functionality of the IDEs, allowing developers to enhance their workflows and integrate additional tools. Visual Studio, on the other hand, boasts an even larger extension ecosystem with a vast collection of plugins, allowing users to customize and extend the IDE to a greater extent.
User Interface and Design: IntelliJ IDEA and PhpStorm share a similar user interface design, focusing on simplicity, ease of use, and productivity. The layout and organization of the IDEs are intuitive, making it easier for developers to navigate and access various features. In contrast, Visual Studio has a more intricate user interface, offering extensive customization options and a wider range of visual design choices. Visual Studio provides a more visually appealing and customizable interface compared to IntelliJ IDEA and PhpStorm.
Community and Documentation: IntelliJ IDEA and PhpStorm have active communities and extensive documentation, providing support, tutorials, and resources for developers. However, Visual Studio enjoys a larger and more diverse community due to its popularity and wide array of supported programming languages. The availability of online resources and community-driven support is more abundant for Visual Studio compared to IntelliJ IDEA and PhpStorm.
Pricing and Licensing: IntelliJ IDEA and PhpStorm are both premium IDEs developed by JetBrains and require a paid license or subscription for their full features. Visual Studio, on the other hand, has different editions, including a free Community edition that offers a solid set of features suitable for small-scale projects. Visual Studio also provides paid enterprise editions for larger-scale development teams. The pricing and licensing models for Visual Studio provide more flexibility and choices for developers with varying needs and budgets.
In Summary, IntelliJ IDEA and PhpStorm are powerful IDEs tailored for specific programming languages, offering rich features and a dedicated user base. However, Visual Studio stands out with unparalleled platform support, an extensive set of built-in tools, a vast extension ecosystem, a visually appealing interface, a larger community, and flexible pricing options.
UPDATE: Thanks for the great response. I am going to start with VSCode based on the open source and free version that will allow me to grow into other languages, but not cost me a license ..yet.
I have been working with software development for 12 years, but I am just beginning my journey to learn to code. I am starting with Python following the suggestion of some of my coworkers. They are split between Eclipse and IntelliJ IDEA for IDEs that they use and PyCharm is new to me. Which IDE would you suggest for a beginner that will allow expansion to Java, JavaScript, and eventually AngularJS and possibly mobile applications?
Pycharm is great for python development, but can feel sometimes slow and community version has Somme very annoying restrictions (like they disabled jupyter notebooks plugin and made it premium feature). I personally started looking into VS Code as an alternative, and it has some very good potential. I suggest you take it into account.
The Community version of PyCharm is free and should give you what you need to get started with Python. Both PyCharm and IntelliJ are made by JetBrains. IntelliJ is initially focused on Java but you can get plugins for lots of other things. I subscribe to JetBrains' Toolbox: https://www.jetbrains.com/toolbox-app/ and have access to all of their great tools.
I couldn't imagine using a development tool other than the IntelliJ IDEA Ultimate All Products Pack. A single license allows me to work directly on my server running Ubuntu and/or my workstation running Windows 10 Pro simultaneously. My current project uses HTML, W3CSS, JavaScript, Java, Groovy, Grails, C, GO, Python, Flask, and Rust. For me it's worth every penny of the $150 license fee. And you can try it for free.
Hi, I will give my opinion based on my experience. I have used PyCharm, both community and Professional version. The community has limited functions, like you can't use a Jupyter notebook whereas it's available in the Professional version. PyCharm is slower compared to Visual Studio Code. Also Visual Studio Code is an editor which supports various languages. I myself have used both Visual Studio Code and PyCharm. I feel Visual Studio Code would be better choice. You may as well decide based upon your requirements.
I'd personally recommend Visual Studio Code as it gives you the flexibility of working in any language, so long as there are extensions to support it. It gives you the flexibility to learn Python, venture into Java, Javascript, and eventually AngularJS, and potentially mobile applications. It's also free and you can install it on your personal computer. I think Visual Studio Code would serve your intended use case best.
Visual Studio code is easy to use, has a good UI, and a large community. Python works great with it, but unlike some other editors, it works with most languages either by default or by downloading a plugin. VS Code has built in linting, syntax coloring, autocompletes (IntelliSense), and an api for plugins to do there own tooling.
IntelliJ really is the best for Java, I switched from eclipse years ago and never looked back. As for javascript, python and angular either using the standalone products from jetbrains (pycharm for python, webstorm for js) or installing the relevant plugins for InteliJ will be your best bet. Pycharm etc. are really just InteliJ with some additional plugins installed.
If you starting with Python then PyCharm is better. For Java I would suggest to go with IntelliJ IDEA but people also prefer eclipse so I would say try both and then decide. For JS/Angular/React I would suggest go with VSCode. I personally use it and prefer as its light weight and have good integration with chrome for frontend development.
PyCharm, IntelliJ IDEA are both products of JetBrains. They have a free (limited feature) and paid edition. Eclipse is free. VSCode is also free.
This is a very easy to use tool and gives you the opportunity to start coding right after the installation with almost everything setup automatically by the tool.
Easy to learn and everything you need
Pycharm is all you need to get start coding in python or any of its framework. Its an awesome tool you should give it a try :)
All three are great, however, I believe that IntelliJ IDEA's multiple IDE's are slightly more straight-forward and more up-to date than Eclipse. If I had to choose one specifically for Python projects I would go with PyCharm.
The problem I have is whether to choose Android Studio or Visual Studio? I have to develop a simple app for a school project that can work on both iPhone and Android.
The most important factors for me are Android and iOS compatibility. Although note that i would like to become a Software Engineer when i finish my course. (I'd like to work for Apple, just saying!)
After that id like easy integration for Google Ads and such if i do develop another app that people actually use to support development. (I'd also like to stick with one easy programming language that's compatible with a wide variety of platforms since i'm a beginner and have only ever used Pascal)
First of all - Android Studio and Visual Studio are IDE's. Tools to create code. What you are asking is programming framework. I assume that when you are talking about Android Studio you mean Native Android Development and by Visual Studio you mean Xamarin.
If you want to create crossplatform app then Native Android Development is NOT a way to go. Xamarin might work for you, BUT - you'd rather recommend you to go with Flutter. It's much more performant than Xamarin, programming model is friendlier for developer and technology seems just more refined. It's also officially supported by google, so no worries about support.
When I switched to Visual Studio Code 12 months ago from PhpStorm I was in love, it was great. However after using VS Code for a year, I see myself switching back and forth between WebStorm and VS Code. The VS Code plugins are great however I notice Prettier, auto importing of components and linking to the definitions often break, and I have to restart VS Code multiple times a week and sometimes a day.
We use Ruby here so I do like that Visual Studio Code highlights that for me out of the box, with WebStorm I'd need to probably also install RubyMine and have 2 IDE's going at the same time.
Should I stick with Visual Studio Code, or switch to something else? #help
If you're working with both Ruby and JavaScript, buy RubyMine and shut down the other two. It's much better for Ruby than Visual Studio Code is. It can also do everything WebStorm does, if you install the plugins you need from JetBrains, and they all work together nicely.
If you install RubyMine, you shouldn't need WebStorm, as all the functionality of WebStorm appears to be included in RubyMine. (See here: https://softwareengineering.stackexchange.com/a/132950).
I've used PhpStorm for several years and have never needed to open (or even download) WebStorm for anything front-end or JavaScript related.
I work at the same company as you and I use WebStorm for 99% of my tasks. I also have RubyMine installed and use that when I have to tweak some backend code. I tried using RubyMine for JavaScript but was unhappy with how it felt and I believe that WebStorm is faster because it has less plugins and language extensions running. Summary: Buy and use WebStorm for primary development and keep VS Code around for when you have to touch Ruby.
I've never had much issue running multiple IDEs and generally pick them based on the languages they best support. For front end work where I mainly use TypeScript, I stick heavily with Visual Studio Code. However, for backend work which we do primarily in Python, PyCharm is my go-to editor. The one thing that I do however is I do remap keyboard shortcuts so I get consistent keyboard ability even when I switch IDEs.
JetBrains all the way - my entire team uses PhpStorm and none of us would even consider switching.
The availability of IDEs for other languages along with consistency in environment and keyboard shortcuts is also a godsend, which is the reason I'd also choose Rider over Visual Studio (but also VS for Mac is trash, but I digress...)
So here is the deal man, bottom line you want to write code. All of these tools are built in a mouse-driven world, they are designed not for engineers, but office monkeys. If you want a real workflow that gives you ultimate performance, customization and speed you need to use a modal editor, I suggest NeoVim. Start using it 20% of the time on single file edits, watch youtube videos about it and teach yourself vim gestures. It will infuriate you for 6 weeks, make you cry for another 2 months. But as you use it more, as long as your usage goes over 40% of the time, in 6 months you will understand why most of the world's too engineers use it. Settling on lesser editors out of laziness is exactly the attitude that results in shitty the engineering. Yeah it's hard. You're smart. You do hard things. Once it isn't hard anymore you will blow yourself away at how much more efficiently you edit files.
Also vim keybindings in a mouse driven editor does not cut it. Managing files, buffers and workflow is half of the value of vim/neovim. It is OK if you have to use an IDE (currently I only use an IDE for java development, so I have little choice)
So use VSCode while you teach yourself vim.
Visual Studio Code is a text editor. And this is best option in my opinion. For Ruby, I cannot say how VS Code is good. If you wanna choose IDE, RubyMine should fit your needs. Because IDEs are more compatible with major needs. But text editors are just text editor. You can do same things with also text editors. I recommend to try both VS Code and RubyMine. And you will be able to find which fits better for your needs
If I have to choose one I would go with VS Code; it’s become pretty mature and keeps getting better. If those plugins are creating problems for you then just uninstall them, find an alternative, or make a PR to fix. But at the end of the day these are IDE’s and they are meant to save you time. I would go with whatever helps you develop code faster. If restarting VS code slows you down then make a switch, that personally would annoying the crap out of me. Else maybe it’s a quick restart, not the end of the word, hopefully someone will fix at some point.
Well you can try for a while MacVim because it is already configured with tons of plugins. My favourite text editors are Sublime Text and TextMate which are lightweight and speedy. My feeling is that JetBrains IDEs are making you brainless.
I'm personally a Visual Studio Code fan. I've used it for both Go and Java. It really depends on the quality and support of the plugins. Typically VS Code doesn't crash as much as a bad plugin causes an unforeseen error. Make sure you stay up to date and look at alternative plugins.
If you find something that works and are comfortable with it, stay with it. Changing IDE's and learning their idiosyncrasies takes valuable time away from programming while learning setups and keyboard short cuts. I personally use VS Code for cost and decent multiple language support. I've had issues occasionally with it locking up, but it is under heavy development and continually improving. I have also found it more intuitive for new programmers. ** Having profiles for different languages can reduce the amount of plugins running and issues they can cause.
I usually have both running but do the bulk of my language work in the appropriate JetBrains flavor. One thing to watch out for in VS is that under the hood it is running the tools needed for whatever language you are working with. This is where tools like JetBrains shine. While I am sure you can tune the heck out of what you use in VS, the provides context and clarity...
Are you using the prettier-vscode
VSCode extension or prettier
via prettier-eslint
?
The prettier-vscode
extension recommends you...
Use prettier-eslint
instead of prettier
. Other settings will only be fallbacks in case they could not be inferred from ESLint rules.
An integrated development environment software with huge potential in the future is VS Code. So I would personally say you can use VS code.
Since IntelliJ is the de-facto standard for writing Java/Kotlin/Scala application, and in Relay42 we are heavy Java users, every new engineer gets an Ultimate subscription from day1. The gains in productivity, pair programming speed (esp with the Code With Me feature) by using the same and familiar editor are totally worth the cost.
Lightweight and versatile. Huge library of extensions that enable you to integrate a host of services to your development environment. VS Code's biggest strength is its library of extensions which enables it to directly compete with every single major IDE for almost all major programming languages.
I originally chose IntelliJ over Eclipse, as it was close enough to the look and feel of Visual Studio and we do go back and forth between the two. We really begin to love IntelliJ and their suite of IDEs so we are now using AppCode for the IOS development because the workflow is identical with the IntelliJ. IntelliJ is super complex and intimidating at first but it does afford a lot of nice utilities to get us produce clean code.
Pros of IntelliJ IDEA
- Fantastically intelligent301
- Best-in-class ide242
- Many languages support190
- Java158
- Fast121
- Code analysis82
- Reliable79
- Out of the box integration with maven, git, svn76
- Plugin architecture64
- Integrated version control61
- Code refactoring support12
- Best java IDE11
- Local history7
- Code Completion6
- Kotlin6
- Integrated Database Navigator6
- Built-in terminal/run tools6
- All5
- Free for open-source development, students and teacher5
- Base for Android Studio5
- Free If you're a Student5
- ERD Diagrams4
- Free4
- Cross platform4
- IDE4
- Database/Code integration4
- Out Of The Box features3
- Column Selection Mode3
- Server and client-side debugger3
- More than enough languages for any developer3
- Typescript support3
- Multicursor support3
- Reformating Code3
- Intuitive3
- Command-line tools3
- Android Integration3
- Vim support3
- Special icons for most filetypes in project list3
- Supports many frameworks3
- Built-in web server3
- Live Templates3
- Scala support3
- Works fine with mac os catalina2
- A lot of plugin2
- Just works2
- Integrated Ssh/Ftp Managers2
- Full support2
- Task managers2
- Diff tools2
- File Watchers2
- Support for various package managers2
- Integrated Code Linting2
- Clean UI2
- Open source2
- So modernised2
- Efficient, one Stop solution2
Pros of PhpStorm
- Best ide for php287
- Easy to use232
- Functionality218
- Plugins166
- Code analysis160
- Integrated version control87
- Great php ide for mac76
- All-round php ide73
- Local history62
- Themes53
- Best PHP IDE18
- Database control11
- Easy to find anything and everything in your code10
- Best bebugging9
- Best inspection variable9
- Command line integration7
- Great frameworks integration7
- PHPUnit integration7
- Getting Better7
- UX7
- Composer integration6
- Performance6
- Coolest IDE6
- Real time code validation5
- Easy to use and github interaction5
- Neat does the job and easy5
- Best ide for advanced php and symfony5
- Best ide for php4
- TypeScript support4
- Code indexing4
- It has no match. it filled one of the biggest void4
- Fast and relevant auto-complete4
- Great refactoring support4
- Cross platform4
- Integration with Vagrant and Docker3
- Debugger for Javascript3
- Good3
- Very good3
- Debugging in the Just-In-Time Mode2
- Perfect locahost / host sync2
- Awesome debugging features2
Pros of Visual Studio
- Intellisense, ui305
- Complete ide and debugger244
- Plug-ins165
- Integrated104
- Documentation93
- Fast37
- Node tools for visual studio (ntvs)35
- Free Community edition33
- Simple24
- Bug free17
- Made by Microsoft8
- Full free community version6
- JetBrains plugins (ReSharper etc.) work sufficiently OK5
- Productivity Power Tools3
- Vim mode2
- VIM integration2
- I develop UWP apps and Intellisense is super useful1
- Cross platform development1
- The Power and Easiness to Do anything in any.. language1
- Available for Mac and Windows1
Sign up to add or upvote prosMake informed product decisions
Cons of IntelliJ IDEA
- Large footprint required to really enjoy (mem/disc)20
- Very slow16
- Bad for beginners8
- UI is not intuitive7
- Not nearly as many tools to integrate as vs code5
- Constant reindexing5
- Needs a lot of CPU and RAM power4
- Built in terminal is slow3
- Doesn't work that well with windows 10 edu3
- Ruby is a plug in1
- Pesky warnings increase with every release1
- AAD0
Cons of PhpStorm
- Uses a lot of memory14
- Does not open large files10
- Slow9
- Uses Java machine8
- No way to change syntax highlight for files without ext3
- No save prompt or asterisk on file change2
Cons of Visual Studio
- Bulky16
- Made by Microsoft14
- Sometimes you need to restart to finish an update6
- Too much size for disk3
- Only avalible on Windows3