CLion, Cross-platform IDE For C And C Development

Transcription

CLion, Cross-platform IDEfor C and C development

CLion is an IDE for C and C developedby JetBrains. Besides, it supports Pythonand Web technologies (JavaScript, HTML, XML,CSS, etc.) and has a variety of plugins for otherlanguages (like Go or Swift, for example).About CLionHow does CLion match against competing tools?Product features comparisonMarketing / Market / Community comparisonPlatformPolyglot ExperienceMore Information

About CLionCLion helps developers do their work betterand be more productive thanks to its deepknowledge of C and C languages, including understanding of modern standards andlibc and Boost libraries:For reading the code: instant navigationthrough the code base with structure andhierarchical views, that takes into consideration overloaded functions and operators,as well as macros and templates.For produce high quality code: count on theIDE for continuous analysis of your entirecode base (including full Data Flow Analysis), as well as helpful on-the-fly fixes suggestion and the long list of reliable refactorings, operating on the entire project.For writing the code: lots of code generationabilities, that save developers time by providing them with useful and modernize codepieces in one shortcut.Being a part of IntelliJ-platform, CLionprovides developers with the fully-packeddevelopment environment, that includes:Powerful debugging abilities, for both localand remote debugIntegration with Git and other Version control systemsUnit testing with Google Test or Catch andcode documentation in well-known DoxygenformatWide customization optionsTo learn more about the product, please check our web site at jetbrains.com/clion

How does CLion match against competing tools?JetBrains has made an extensive researchof various tools to come up with a comparison table. We tried to make it comprehensive and as neutral as we possibly can.As all the products mentioned in the document are being actively developed and theirfunctionality changes on a regular basis,we consider this comparison valid for specific releases that are indicated in the headerof the comparison table.We tried to make it comprehensive and asneutral as we possibly can. If you discover any inaccurate items in this table, pleasecontact us at sales@jetbrains.com and we’llupdate the table as soon as possible.This document includes CLion comparison with Visual Studio, Qt Creator and Eclipse CDT.Product nameCLionVisual StudioQt CreatorEclipse CDTCLion 2017.1Visual Studio 2017Qt Creator 4.2Eclipse CDT 9.1Neon with pluginsLinux/Unix (64b) (64b) (64b)Windows (64b) (32/64b) (32/64b) (32/64b)macOS Products versions in comparisonVersion in comparisonCompatibility with operating systems

Product features comparisonGroupToolCLionVisual StudioQt CreatorEclipse CDTCMake Makefiles / Autotools Visual Studio project qmake GCC / Clang 1 MSVC 2 GDB / LLDB Visual Studio Debugger Toolchains:Build systemCompilerDebugger

CategoryFeatureCLionVisual StudioQt CreatorEclipse CDTC11partially 3 C 11 limited 4 C 14 5 6 limited 7 8C 17partially 9partially 10 limited 11 12Python 13 JavaScript 14 HTML CSS XML Go to declaration /definition Go to Class by name Go to File by name Go to Symbol by name only for current file Go to Base class Go to Derived class File Structure view Include Hierarchy Call Hierarchy Type Hierarchy TODO Features:C/C languagessupportOther languagesCode navigation

CategoryCode navigationCode refactoringsCode generationFeatureCLionVisual StudioQt CreatorEclipse CDTBookmarks Go to recent files Move limited 15 Safe delete Inline Rename Change signature Extract Variable Extract Constant Extract Parameter Extract Define Extract Typedef Extract Function Extract Superclass/Subclass Pull Members Up /Push Members Down Auto-import Generate getters/setters Generate constructors/destructors Generate operators

CategoryCode generationUnit testingFeatureCLionVisual StudioQt CreatorEclipse CDTGenerate definition Surround withtemplates Generate missingswitch cases Create from usage Google Test Boost OthersCatch QTestLibQTestLib, TAPSystems supportedCVS, Git, GitHub,Mercurial, Perforce,SVN, TFSClearCase, CVS, Git,GitHub, Mercurial,Perforce, SVN, TFSClearCase, CVS, Git,Mercurial, Perforce,SVN, TFS16ClearCase, CVS,Git, GitHub,Mercurial,Perforce, SVN, TFSDoxygen Quick Documentation preview Documentationgeneration Parameter info On-the-fly checks Quick Fixes Comments 40 checks, includingData Flow Analysis;Clang-Tidy integration with quick-fixesCompiler errorsand warnings 115proprietary codeanalysis rulesclang staticanalyzer built-in 30 checks VCSDocumentationCode analysisCode formatter

Marketing / Market / Community comparisonPricing comparisonCLionUSD 199 in the 1st yearUSD 159 in the 2nd yearUSD 119 per year afterSupport by JetBrains is includedVisual Studio Professional17USD 1199 (USD 799 renew) per year per subscription18Qt CreatorFree, provided AS IS. Comes with no support.19EclipseFree, under Eclipse Public License. Comes with no support.Community comparison (Dec 2016)IndicatorCLionVisual StudioQtCreatorEclipseStackOverflow Answers650628253275103102Google Trends205557719Twitter followers3744387K282117.9K

PlatformJetBrains IDEs are built on top of a singleplatform developed by JetBrains, calledIntelliJ Platform. This shared platform helpsease the learning curve by providing a familiar development environment across tools,languages and platforms.When the out-of-the-box functionality isnot enough, CLion plugin repository containsmore than 600 downloadable plugins of allkinds, including those that provide supportfor various frameworks, additional versioncontrol systems, integrations with varioustools, and editor enhancements.Extending IntelliJ Platform significantly lowers custom development costs and efforts thanks to:One-time plugin development work neededfor all IntelliJ IDEA-based IDEs (instead ofdeveloping a dedicated plugin for each ofthe tools, a single plugin can be developedand made compatible with all IntelliJ IDEAbased IDEs at once).Plugins can be developed using a singlelanguage, be it Java or Kotlin, allowing developers to leverage the platform to targetany technology.Custom plugins can be developed for anylanguage and for any of the IDEs taking advantage of a single SDK (with a single consistent API to that SDK) for plugin/extensiondevelopment.Should you require integration with any solutions, services or technologies you use in thecompany, you can always take advantageof the extensibility of IntelliJ Platform forcustom development. A powerful and richAPI is available for you to extend the platform based on your needs.

Polyglot ExperienceCLion is built on top of the IntelliJ platform,which means it inherits a lot of IntelliJ IDEA(e.g. editor, navigation, VCS, etc) functionality, as well as most of WebStorm functionality, and Python support provided byPyCharm Community either out-of-the-box,or with corresponding plugins to be installedfrom the plugin repository free of charge.Please refer to IntelliJ IDEA, WebStorm, PyCharm dedicated comparison documents orvisit JetBrains web site for more information.Short comparison of WebStorm functionality(HTML/CSS/JavaScript/etc) with competitors(please refer to the WebStorm comparisondocument or WebStorm product web sitefor more information):CompetitorsIntelliJ IDEA2016.3SublimeText 3Visual StudioCode 1.8Atom 1.12.7 withNuclide 0.188Eclipse Neonfor JavaScriptand Web PartiallyPartiallyPartiallyPartiallyTypeScript support with with withHTML support CSS support JavaScriptand ECMAScriptsupportadditional pluginadditional pluginadditional plugin

More InformationWe tried to make it comprehensive and asneutral as we possibly can. If you discoverany inaccurate items in this table, pleasecontact us at sales@jetbrains.com andwe’ll update the table as soon as possible.If you need assistance with managing yourlicenses, selecting a licensing option, requesting assistance with a JetBrains offer, or anyspecial request or suggestion for JetBrainstools, please do not hesitate to contact us.

Footnotes1Cross-platform cases Visual C Cross-Platform MobileExperimental support with some limitations first-steps-to-asm-and-msvc/#msvc23Only those features are supported, that are part of C99 or ISO C All C 11, C 14 and C 17 features are supported with the helpof clang-based parser in code highlighting and code completion, whilecode navigation and refactorings are using limited parser abilities withnot all features supported.45With exceptions to constexpr jetbrains.com/help/clion/cpp support.htmlWith exceptions to Avoiding / fusing allocations eatures-and-stl-fixes-in-vs-15-preview-56Click on a footnote to go backAll C 11, C 14 and C 17 features are supported with the helpof clang-based parser in code highlighting and code completion, whilecode navigation and refactorings are using limited parser abilities withnot all features supported.1112Functionality is equal to PyCharm Community Editionjetbrains.com/pycharm13Functionality is mostly equal to WebStorm jetbrains.com/webstorm14Move refactorings works only for function definitions and for movingdeclarations out of if toring.html1516All C 11, C 14 and C 17 features are supported with the helpof clang-based parser in code highlighting and code completion, whilecode navigation and refactorings are using limited parser abilities withnot all features supported.bugs.eclipse.org/bugs/show bug.cgi?id 4904063rd-party plugin github.com/jesperhh/teamfoundation78Prices are currently available for Visual Studio 2015 only, since 2017is still in RC1718With support and cross-platform tools risonbugs.eclipse.org/bugs/show bug.cgi?id 490405Only nested namespaces and has include are supportedjetbrains.com/help/clion/cpp support.html9More details atures-and-stl-fixes-in-vs-15-preview-5Collected comparison for “CLion”, “Visual Studio C ”, “Qt Creator”,“Eclipse CDT”, 11-17/12/2016201021Qt project twitter in the whole (@qtproject) has 18.5K

Product name CLion Visual Studio Qt Creator Eclipse CDT Products versions in comparison Version in comparison CLion 2017.1 Visual Studio 2017 Qt Creator 4.2 Eclipse CDT 9.1 Neon with plugins . ClearCase, CVS, Git, Mercurial, Perforce, SVN, TFS16