SlideShare a Scribd company logo
2
Most read
3
Most read
7
Most read
Setting up your
development environment
CST 214 – JavaScript Programming
Things to consider when
setting up your development
environment:
• Operating System
• Language(s) supported
• Specific Features
Syntax Highlighting
Syntax highlighting can
be useful for debugging
as it implicitly validates
the syntax.
Notice how the keyword
Document with a capital
D is not colored in the
second image.
Code Intelligence
• Auto-balancing of characters and tags
• Code completion
• Tracking of variables and functions
• Also minimizes possible errors.
Other Features
• Inline execution of code
• Page templates
• FTP support
• Built-in debugger
• Network monitor
• WYSIWYG
• Help system, manual, and
documentation
Coding Software
Text Editors
• Cheaper
• Simpler
• Easier to master
• Faster to begin using
• Less demanding of the
computer
• Can be used for many
tasks
IDEs
• More expensive
• More complicated
• Requires more computer
resources
• Tend to be more specific
• Better code intelligence
• Better debugging
• Faster development
once mastered
Coding Software
Text Editors
• Komodo Edit
• UltraEdit
• Notepad++
• EditPlus
• TextMate
• TextWrangler
• BBEdit
• Emacs
• Vim
IDEs
• Adobe Dreamweaver
• Komodo IDE
• Aptana Studio
• Eclipse
• NetBeans
• WebStorm
What to Look For
• DOM Inspector
• JavaScript source viewer
• Advanced JavaScript debugger
• Network monitor
• Error console
Good Extensions for Chrome
• Web Developer
• Pendule
• Firebug Lite
• JavaScript Tester
• Validity
Useful Add-ons for Firefox
• Firebug
• Web Developer
• YSlow!
• Greasemonkey
• View Source Chart
• JS View
Useful features of Internet
Explorer
• IE Developer Toolbar
• Web Accessibility Toolbar
IE is not as extendible. The IE Developer Tool bar is
pretty good. It let’s you test running as different
versions of IE.
IE is best for testing final versions of code to make
sure it’s compatible.
The Opera Browser
Opera is extendible but it’s built-in Dragonfly is
really good. It has all the necessary features.
Safari
Safari has some extensions but its Web Inspector is
sufficient, similar to Opera’s Dragonfly.
JS Bin – A web based editor
JS Bin (jsbin.com) allows you to write and test JavaScript online,
without creating an entire Web page.
JS Bin even works with variables frameworks.
A more complex alternative is jsFiddle.
Types of errors
Syntactical
Syntactical errors prevent JavaScript from running. Caused by
improper syntax. Very common for beginners. Relatively easy to
find and fix.
Run-time
Run-time errors occur during execution of JavaScript. Can be
caused by referencing objects or methods that don’t exist. Can be
browser-specific.
Logical
Logical errors are bugs. No actual error reported, just an
unexpected result. Hardest to find and fix.
Common causes of errors
• Case Sensitivity
• Improper Syntax
• Misuse of = and ==
• Referencing objects that don’t yet
exist
• Treating objects as the wrong type
Get a good text editor or IDE.
Get a good development browser.
Keep the error console open!
Validate your JavaScript code.
Practice rubber duck debugging.
Good debugging techniques
Debugging Techniques
• Use external JavaScript files
• Save the file and refresh the browser.
• Try a different browser.
• Take a break!
Bad debugging techniques
• Panicking!
• Ignoring error messages
• Trying random solutions
• Not taking breaks
Debugging with alert()
alert('Now in the XXX function!');
Alert() is simple to use and works on all browsers. But, it can become
tedious and isn’t great for reporting a lot of information.
Debugging with console()
console.log('Now in the XXX function!');
console.log('myVar is ' + myVar);
The console is another, less obtrusive way to track where you are in
the program, similar to alert().
Editors & extensions to check
out
Web-based Editors
https://thimble.mozilla.org/
http://brackets.io/
https://jsbin.com/?html,output
https://codeanywhere.com/
http://js.do/
http://codepen.io/pen/
https://jsfiddle.net/
Easy to Install Simple Editors [windows, mac, linux]
http://www.vim.org/download.php [windows, mac, linux]
https://notepad-plus-plus.org/ [windows]
http://www.barebones.com/products/textwrangler/ [mac]
IDEs (Integrated Development Enviroments)
https://netbeans.org/downloads/
http://www.aptana.com/
Extensions
http://chrispederick.com/work/web-developer/
http://getfirebug.com/
Browsers
Chrome: https://support.google.com/chrome/answer/95346?
hl=en
Firefox: https://www.mozilla.org/en-US/firefox/new/
Opera: http://www.opera.com/
Editors & extensions to check
out
Testing various browsers, extensions
and editors will help you find your
favorite setup.
Good luck, and happy scripting!

More Related Content

PDF
JavaScript - Chapter 11 - Events
PPTX
CSS3 Media Queries And Creating Adaptive Layouts
PPT
PPTX
Multiple inheritance possible in Java
PPTX
Lecture 1 introduction to vb.net
PDF
Angular and The Case for RxJS
PPT
Introduction to Javascript
PPTX
TypeScript Overview
JavaScript - Chapter 11 - Events
CSS3 Media Queries And Creating Adaptive Layouts
Multiple inheritance possible in Java
Lecture 1 introduction to vb.net
Angular and The Case for RxJS
Introduction to Javascript
TypeScript Overview

What's hot (20)

PPTX
Typescript ppt
PPT
TypeScript Presentation
PPT
Developing an ASP.NET Web Application
PDF
Angular 2 observables
PPTX
Windowforms controls c#
PPTX
Introducing type script
PDF
TypeScript: coding JavaScript without the pain
PDF
jQuery for beginners
PPTX
Asp objects
PDF
JavaScript - Chapter 6 - Basic Functions
PPTX
What’s New in Angular 14?
PDF
Angular - Chapter 1 - Introduction
PPTX
Introduction to angular with a simple but complete project
PDF
JavaScript guide 2020 Learn JavaScript
PPTX
React-JS Component Life-cycle Methods
PDF
JavaScript - Chapter 8 - Objects
PPTX
Angular Lifecycle Hooks
PDF
CSS Selectors
PDF
Typescript ppt
TypeScript Presentation
Developing an ASP.NET Web Application
Angular 2 observables
Windowforms controls c#
Introducing type script
TypeScript: coding JavaScript without the pain
jQuery for beginners
Asp objects
JavaScript - Chapter 6 - Basic Functions
What’s New in Angular 14?
Angular - Chapter 1 - Introduction
Introduction to angular with a simple but complete project
JavaScript guide 2020 Learn JavaScript
React-JS Component Life-cycle Methods
JavaScript - Chapter 8 - Objects
Angular Lifecycle Hooks
CSS Selectors
Ad

Viewers also liked (15)

DOC
practico1ºañovirtual
PDF
35874202 2308144-robert-bruce-manual-sobre-experiencias-fuera-del-cuerpo
PPT
Causas de la Primera Gurrea Mundial
PDF
LOA%20Summer%20Camp%20Italy
PPTX
Aprendizaje virtual
PPTX
Style default2 white (3) (3
PPTX
Docente-tutor-virtual
PPTX
Programming Logic and Design: Working with Data
PPTX
Tecnología Educativa
DOCX
Fazlur khan
PPTX
Navegadores web
DOC
отчёт о педагогической деятельности (1)
PPTX
Oxygen and oxygen therapy
PPTX
UV-VISIBLE SPECTROSCOPY
practico1ºañovirtual
35874202 2308144-robert-bruce-manual-sobre-experiencias-fuera-del-cuerpo
Causas de la Primera Gurrea Mundial
LOA%20Summer%20Camp%20Italy
Aprendizaje virtual
Style default2 white (3) (3
Docente-tutor-virtual
Programming Logic and Design: Working with Data
Tecnología Educativa
Fazlur khan
Navegadores web
отчёт о педагогической деятельности (1)
Oxygen and oxygen therapy
UV-VISIBLE SPECTROSCOPY
Ad

Similar to Setting up your development environment (20)

PDF
The DOM is a Mess @ Yahoo
PPTX
Web technologies-course 08.pptx
PPTX
Web technologies-course 07.pptx
KEY
Enterprise Strength Mobile JavaScript
PDF
Intro to JavaScript - Thinkful LA, June 2017
PDF
Special Edition Using Javascript Mcfedries
PDF
Special Edition Using Javascript Mcfedries
PDF
Quo vadis, JavaScript? Devday.pl keynote
PDF
Building a game with JavaScript (March 2017, washington dc)
PDF
Special Edition Using Javascript Mcfedries
PPTX
Introduction to Java script for web .pptx
PDF
Special Edition Using Javascript Mcfedries
PPTX
Buildmanagment tools mavenandgradle.pptx
PPTX
JavaScript Tools Overview
PDF
7 Simple Things I Learned about JavaScript
PDF
Seven ways to be a happier JavaScript developer - NDC Oslo
PDF
TOP 10 WEB APP TOOLS FOR EFFICIENT DEVELOPMENT.pdf
PDF
Web Developer Tools
PPTX
Javascript mynotes
The DOM is a Mess @ Yahoo
Web technologies-course 08.pptx
Web technologies-course 07.pptx
Enterprise Strength Mobile JavaScript
Intro to JavaScript - Thinkful LA, June 2017
Special Edition Using Javascript Mcfedries
Special Edition Using Javascript Mcfedries
Quo vadis, JavaScript? Devday.pl keynote
Building a game with JavaScript (March 2017, washington dc)
Special Edition Using Javascript Mcfedries
Introduction to Java script for web .pptx
Special Edition Using Javascript Mcfedries
Buildmanagment tools mavenandgradle.pptx
JavaScript Tools Overview
7 Simple Things I Learned about JavaScript
Seven ways to be a happier JavaScript developer - NDC Oslo
TOP 10 WEB APP TOOLS FOR EFFICIENT DEVELOPMENT.pdf
Web Developer Tools
Javascript mynotes

More from Nicole Ryan (20)

PPT
Testing and Improving Performance
PPT
Optimizing a website for search engines
PPT
Inheritance
PPT
Javascript programming using the document object model
PPT
Working with Video and Audio
PPT
Working with Images
PPT
Python Dictionaries and Sets
PPT
Creating Visual Effects and Animation
PPT
Creating and Processing Web Forms
PPT
Organizing Content with Lists and Tables
PPT
Social media and your website
PPT
Working with Links
PPT
Formatting text with CSS
PPT
Laying Out Elements with CSS
PPT
Getting Started with CSS
PPT
Structure Web Content
PPT
Getting Started with your Website
PPTX
Chapter 12 Lecture: GUI Programming, Multithreading, and Animation
PPTX
Chapter 11: Object Oriented Programming Part 2
PPTX
Intro to Programming: Modularity
Testing and Improving Performance
Optimizing a website for search engines
Inheritance
Javascript programming using the document object model
Working with Video and Audio
Working with Images
Python Dictionaries and Sets
Creating Visual Effects and Animation
Creating and Processing Web Forms
Organizing Content with Lists and Tables
Social media and your website
Working with Links
Formatting text with CSS
Laying Out Elements with CSS
Getting Started with CSS
Structure Web Content
Getting Started with your Website
Chapter 12 Lecture: GUI Programming, Multithreading, and Animation
Chapter 11: Object Oriented Programming Part 2
Intro to Programming: Modularity

Recently uploaded (20)

PDF
Black Hat USA 2025 - Micro ICS Summit - ICS/OT Threat Landscape
PPTX
Cell Types and Its function , kingdom of life
PDF
3rd Neelam Sanjeevareddy Memorial Lecture.pdf
PDF
Classroom Observation Tools for Teachers
PPTX
Microbial diseases, their pathogenesis and prophylaxis
PDF
Pre independence Education in Inndia.pdf
PPTX
Renaissance Architecture: A Journey from Faith to Humanism
PDF
Computing-Curriculum for Schools in Ghana
PPTX
1st Inaugural Professorial Lecture held on 19th February 2020 (Governance and...
PDF
Abdominal Access Techniques with Prof. Dr. R K Mishra
PDF
Module 4: Burden of Disease Tutorial Slides S2 2025
PDF
Complications of Minimal Access Surgery at WLH
PDF
Sports Quiz easy sports quiz sports quiz
PPTX
Cell Structure & Organelles in detailed.
PPTX
school management -TNTEU- B.Ed., Semester II Unit 1.pptx
PPTX
Institutional Correction lecture only . . .
PDF
Basic Mud Logging Guide for educational purpose
PPTX
GDM (1) (1).pptx small presentation for students
PDF
O5-L3 Freight Transport Ops (International) V1.pdf
PDF
FourierSeries-QuestionsWithAnswers(Part-A).pdf
Black Hat USA 2025 - Micro ICS Summit - ICS/OT Threat Landscape
Cell Types and Its function , kingdom of life
3rd Neelam Sanjeevareddy Memorial Lecture.pdf
Classroom Observation Tools for Teachers
Microbial diseases, their pathogenesis and prophylaxis
Pre independence Education in Inndia.pdf
Renaissance Architecture: A Journey from Faith to Humanism
Computing-Curriculum for Schools in Ghana
1st Inaugural Professorial Lecture held on 19th February 2020 (Governance and...
Abdominal Access Techniques with Prof. Dr. R K Mishra
Module 4: Burden of Disease Tutorial Slides S2 2025
Complications of Minimal Access Surgery at WLH
Sports Quiz easy sports quiz sports quiz
Cell Structure & Organelles in detailed.
school management -TNTEU- B.Ed., Semester II Unit 1.pptx
Institutional Correction lecture only . . .
Basic Mud Logging Guide for educational purpose
GDM (1) (1).pptx small presentation for students
O5-L3 Freight Transport Ops (International) V1.pdf
FourierSeries-QuestionsWithAnswers(Part-A).pdf

Setting up your development environment

  • 1. Setting up your development environment CST 214 – JavaScript Programming
  • 2. Things to consider when setting up your development environment: • Operating System • Language(s) supported • Specific Features
  • 3. Syntax Highlighting Syntax highlighting can be useful for debugging as it implicitly validates the syntax. Notice how the keyword Document with a capital D is not colored in the second image.
  • 4. Code Intelligence • Auto-balancing of characters and tags • Code completion • Tracking of variables and functions • Also minimizes possible errors.
  • 5. Other Features • Inline execution of code • Page templates • FTP support • Built-in debugger • Network monitor • WYSIWYG • Help system, manual, and documentation
  • 6. Coding Software Text Editors • Cheaper • Simpler • Easier to master • Faster to begin using • Less demanding of the computer • Can be used for many tasks IDEs • More expensive • More complicated • Requires more computer resources • Tend to be more specific • Better code intelligence • Better debugging • Faster development once mastered
  • 7. Coding Software Text Editors • Komodo Edit • UltraEdit • Notepad++ • EditPlus • TextMate • TextWrangler • BBEdit • Emacs • Vim IDEs • Adobe Dreamweaver • Komodo IDE • Aptana Studio • Eclipse • NetBeans • WebStorm
  • 8. What to Look For • DOM Inspector • JavaScript source viewer • Advanced JavaScript debugger • Network monitor • Error console
  • 9. Good Extensions for Chrome • Web Developer • Pendule • Firebug Lite • JavaScript Tester • Validity
  • 10. Useful Add-ons for Firefox • Firebug • Web Developer • YSlow! • Greasemonkey • View Source Chart • JS View
  • 11. Useful features of Internet Explorer • IE Developer Toolbar • Web Accessibility Toolbar IE is not as extendible. The IE Developer Tool bar is pretty good. It let’s you test running as different versions of IE. IE is best for testing final versions of code to make sure it’s compatible.
  • 12. The Opera Browser Opera is extendible but it’s built-in Dragonfly is really good. It has all the necessary features.
  • 13. Safari Safari has some extensions but its Web Inspector is sufficient, similar to Opera’s Dragonfly.
  • 14. JS Bin – A web based editor JS Bin (jsbin.com) allows you to write and test JavaScript online, without creating an entire Web page. JS Bin even works with variables frameworks. A more complex alternative is jsFiddle.
  • 15. Types of errors Syntactical Syntactical errors prevent JavaScript from running. Caused by improper syntax. Very common for beginners. Relatively easy to find and fix. Run-time Run-time errors occur during execution of JavaScript. Can be caused by referencing objects or methods that don’t exist. Can be browser-specific. Logical Logical errors are bugs. No actual error reported, just an unexpected result. Hardest to find and fix.
  • 16. Common causes of errors • Case Sensitivity • Improper Syntax • Misuse of = and == • Referencing objects that don’t yet exist • Treating objects as the wrong type
  • 17. Get a good text editor or IDE. Get a good development browser. Keep the error console open! Validate your JavaScript code. Practice rubber duck debugging. Good debugging techniques
  • 18. Debugging Techniques • Use external JavaScript files • Save the file and refresh the browser. • Try a different browser. • Take a break!
  • 19. Bad debugging techniques • Panicking! • Ignoring error messages • Trying random solutions • Not taking breaks
  • 20. Debugging with alert() alert('Now in the XXX function!'); Alert() is simple to use and works on all browsers. But, it can become tedious and isn’t great for reporting a lot of information.
  • 21. Debugging with console() console.log('Now in the XXX function!'); console.log('myVar is ' + myVar); The console is another, less obtrusive way to track where you are in the program, similar to alert().
  • 22. Editors & extensions to check out Web-based Editors https://thimble.mozilla.org/ http://brackets.io/ https://jsbin.com/?html,output https://codeanywhere.com/ http://js.do/ http://codepen.io/pen/ https://jsfiddle.net/ Easy to Install Simple Editors [windows, mac, linux] http://www.vim.org/download.php [windows, mac, linux] https://notepad-plus-plus.org/ [windows] http://www.barebones.com/products/textwrangler/ [mac]
  • 23. IDEs (Integrated Development Enviroments) https://netbeans.org/downloads/ http://www.aptana.com/ Extensions http://chrispederick.com/work/web-developer/ http://getfirebug.com/ Browsers Chrome: https://support.google.com/chrome/answer/95346? hl=en Firefox: https://www.mozilla.org/en-US/firefox/new/ Opera: http://www.opera.com/ Editors & extensions to check out
  • 24. Testing various browsers, extensions and editors will help you find your favorite setup. Good luck, and happy scripting!

Editor's Notes

  • #6: FTP support is useful with JavaScript, as it’s primarily used for Web development and you’ll want to be able to move the finished or edited work online. WYSIWYG is also helpful with Web development in particular. Debuggers and network monitors are also available in browsers.
  • #9: Because JavaScript often does DOM manipulation, the ability to view the active DOM, not the initial DOM, is valuable. Ability to execute JavaScript inline Ability to set breakpoints, watch the values of variables and the flow of code. Network monitor is key to debugging Ajax transactions
  • #10: Web developer: HTML, CSS, JavaScript and more (see image) Pendule: similar to Web developer Firebug Lite: watered down version of the excellent debugger Validity: for validating HTML
  • #11: Firebug is one of the first and is still one of the best Web developer extensions Yslow! For checking a page’s performance (from Yahoo!) Greasemonkey: for executing additional JavaScript JS View, for viewing JavaScript source on the page
  • #17: Case sensitivity applies to almost everything: variables, functions, objects, etc. Syntax problems include an imbalance of quotation marks, parentheses, brackets, etc. The assignment and equality operators are frequently misused, which causes bugs. In the browser, it’s easy to reference an object that doesn’t yet exist. You’ll need to understand the program flow to fix this. You’ll sometimes see errors when you treat, for example, an object that’s not a string as if it were a string.
  • #18: Good development tools do a better job of minimizing and highlighting problems. Validation can be done at jslint.com or jshint.com Rubber duck debugging is an EXCELLENT approach.
  • #19: External JavaScript files are easier to edit and read, and line numbers can be more useful. Never forget to save your work and refresh the browser! Many problems are browser-specific. Use a different browser to confirm if it’s a general problem or a browser-specific one. Take a break to clear your head!