Upgrade to Pro — share decks privately, control downloads, hide ads and more …

Talk about ... IDEs

Avatar for Martina Kraus Martina Kraus
June 01, 2017
98

Talk about ... IDEs

Onwerk Talks Meetup

Avatar for Martina Kraus

Martina Kraus

June 01, 2017
Tweet

Transcript

  1. www.onwerk.de Agenda • IDE? • Decision criterion • How to

    compare? • Visual Studio • WebStorm • VS Code • IntelliJ
  2. www.onwerk.de $ whoami Martina Kraus • Software Developer@Onwerk Gmbh •

    Lecturer @HS Mannheim && @DHBW Karlsruhe • JavaScript/ ECMAScript enthusiasm CodeKittey @wing121 [email protected]
  3. www.onwerk.de IDE? • Eclipse, NetBeans, IntelliJ • WebStorm, AppStorm, PhpStorm

    • Xcode • Visual Studio, Visual Studio Code • Vim, Nano, Vi • Sublime, Atom, Brackets • NotePad++
  4. www.onwerk.de Decision criterion • Code in multiple Languages: ◦ full-blown

    IDE ◦ one Tool can’t rule everything • Syntax Highlighting: ◦ even for templating languages ◦ detecting the right language • In-Product Compilation: ◦ compile your code right inside the IDE ◦ main distinction between IDE and plain text editor • Built-In Testing Tools
  5. www.onwerk.de Decision criterion • License Model • Extensibility: ◦ PlugIns/

    Addons ◦ Possibility to write your own macros ◦ Configuration (shortcut) • Built-in Debugging: ◦ Web debugging • Drag’n’ Drop Layouts for GUIs (Code Generation): ◦ losing flexibility ◦ limited to what the IDE generates
  6. www.onwerk.de Decision criterion • Class Browsers: ◦ Navigation through you

    code • Autocompletion (Intellisense): ◦ Variables and functions • Code Analysis (suggested fixes) ◦ detecting unused variables/ imports • Usablitity ◦ formatting ◦ search and replace ◦ find all Usage for ...
  7. www.onwerk.de Visual Studio • full-blown IDE for Developing: ◦ Windows

    Apps ◦ Mobile Apps ◦ Web Apps ◦ Azure Apps ◦ Games ◦ Office • Code generation for all kind of projects (including project structure)
  8. www.onwerk.de Visual Studio • Supported Technologies: ◦ C#, C++, Node.js,

    Python, R, .NET. JavaScript / TypeScript ◦ now even for iOS Apps • mostly for .NET development (C#) • Debugging: ◦ Remote Debugging ◦ Performance Diagnosis ◦ Profiling tools
  9. www.onwerk.de Visual Studio • In-Built Test-tools: ◦ monitor testing effort

    ◦ quality metrics, indicators ◦ test status reports • Integrated version control tools • Customizing ◦ many high quality Extensions ◦ marketplace.visualstudio.com
  10. www.onwerk.de Visual Studio (In a nutshell) Code in multiple Languages

    Syntax Highlighting In-Product Compilation Built-In Testing Tools Extensibility Debugging Code Generation (UI) Autocompletion Code Analysis
  11. www.onwerk.de Visual Studio • heavy for Web Development ◦ long

    loading time • Windows only • Pricing: (Standard subscription) https://www.visualstudio.com/vs/pricing/ • Standalone License: $499 | $45/mon • Visual Studio Express for free
  12. www.onwerk.de Visual Studio Code • lightweight cross-platform editor • Supports:

    ◦ R, Less, SQL, Swift, Sass, JavaScript, Python ◦ Java, HTML, C#, Go, ◦ Jade, Handlebars, HTML, Markdown • IntelliSense ◦ especially for TypeScript with Angular • Built-In Debugging Tools • Built-In Git commands
  13. www.onwerk.de Visual Studio Code • iOS Web Debugging with built-in

    simulator • Extensions: ◦ Docker Tools for VS Code ◦ Azure CLI ◦ NoSQL MongoDB extension (only on Insiders build yet)
  14. www.onwerk.de Visual Studio Code (In a nutshell) Code in multiple

    Languages best support for Web Development Syntax Highlighting some issues In-Product Compilation for TypeScript Built-In Testing Tools Extensibility huge community / good documentation Debugging Code Generation (UI) Autocompletion with some helping tools (like CodeLens) Code Analysis With Plugins
  15. www.onwerk.de Visual Studio Code • good for cross-platform development •

    short release circles • have to write your own configuration files (for debugging, testing and compilation)
  16. www.onwerk.de WebStorm • Light-weight coding assistance for JavaScript ◦ Angular,

    React, Vue.js Meteor • Support for React Native, Cordova and Ionic • Testing: ◦ integrates Karma test runner • Debugging: ◦ provides built-in debugger for client-side code • integrates spy-js ◦ or tracing JavaScript Code
  17. www.onwerk.de WebStorm • Cross-platform • provides UI for VCS •

    Local History ◦ easily rolling back files • Customizations ◦ Plugins: https://plugins.jetbrains.com/webstorm
  18. www.onwerk.de WebStorm (In a nutshell) Code in multiple Languages JavaScript

    / TypeScript Syntax Highlighting In-Product Compilation for TypeScript Built-In Testing Tools Extensibility Debugging Code Generation (UI) Creating new Project structure Autocompletion only suggestions Code Analysis With Plugins / eslint-files
  19. www.onwerk.de IntelliJ • good for Android and Java Development ◦

    Android studio is based on IntelliJ • supports: ◦ Groovy, Scala, Kotlin ◦ JavaScript, TypeScript • Cross-language refactorings • Inspections and quick-fixes
  20. www.onwerk.de IntelliJ • Detecting Duplicates ◦ finds repetitive code •

    Built-in developer tools: ◦ VCS ◦ Build Tools (gradle support) ◦ Test runner ◦ Terminal ◦ Database Tools ◦ Docker
  21. www.onwerk.de IntelliJ (In a nutshell) Code in multiple Languages best

    support for Java / Android Syntax Highlighting In-Product Compilation Built-In Testing Tools Extensibility huge community / good documentation Debugging Code Generation (UI) Autocompletion Huge Featureset of supporting tools Code Analysis