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

PPT
JavaScript - An Introduction
PPTX
Javascript 101
PPTX
JavaScript
PPT
Java Script ppt
PDF
Basics of JavaScript
PPT
Web Servers (ppt)
PPT
Javascript
PPTX
JavaScript Lecture notes.pptx
JavaScript - An Introduction
Javascript 101
JavaScript
Java Script ppt
Basics of JavaScript
Web Servers (ppt)
Javascript
JavaScript Lecture notes.pptx

What's hot (20)

PPT
Css Ppt
PDF
Introduction to asp.net
PPTX
ASP.NET Lecture 1
PDF
CSS3, Media Queries, and Responsive Design
PPT
JavaScript & Dom Manipulation
PPTX
HTML Introduction, HTML History, HTML Uses, HTML benifits
PDF
JavaScript guide 2020 Learn JavaScript
PPTX
Introduction to Web Development
PDF
JavaScript - Chapter 15 - Debugging Techniques
ODP
An Introduction to Vuejs
PPTX
Introduction to ASP.NET
PPTX
CSS3 Media Queries And Creating Adaptive Layouts
PPTX
Client side scripting using Javascript
PPTX
Flutter presentation.pptx
PPTX
Java script
PPT
Introduction to JavaScript (1).ppt
PDF
JavaScript Basics and Best Practices - CC FE & UX
PPT
Developing an ASP.NET Web Application
PDF
Flutter Tutorial For Beginners | Edureka
Css Ppt
Introduction to asp.net
ASP.NET Lecture 1
CSS3, Media Queries, and Responsive Design
JavaScript & Dom Manipulation
HTML Introduction, HTML History, HTML Uses, HTML benifits
JavaScript guide 2020 Learn JavaScript
Introduction to Web Development
JavaScript - Chapter 15 - Debugging Techniques
An Introduction to Vuejs
Introduction to ASP.NET
CSS3 Media Queries And Creating Adaptive Layouts
Client side scripting using Javascript
Flutter presentation.pptx
Java script
Introduction to JavaScript (1).ppt
JavaScript Basics and Best Practices - CC FE & UX
Developing an ASP.NET Web Application
Flutter Tutorial For Beginners | Edureka
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)

PPT
Tools of the trade
PPTX
Untying the Knots of Web Dev with Internet Explorer
PDF
JavaScript debugging diagnostic web tools and firefox
PDF
How To Use Selenium Successfully
PDF
How to Use Selenium, Successfully
PPTX
Super tools to boost productivity in React dev env!
PPTX
Welcome to React.pptx
KEY
20120306 dublin js
PDF
Masterin Large Scale Java Script Applications
PDF
Best Practices for WordPress
PPTX
Visual studio 2012 - What's in it for me?
PDF
Intro to SharePoint 2010 development for .NET developers
PPTX
Web dev#1
PDF
NetWork - 15.10.2011 - Applied code generation in .NET
PDF
Building Real-World Dojo Web Applications
PDF
Web Tools for GemStone/S
PPTX
Getting started with Emscripten – Transpiling C / C++ to JavaScript / HTML5
KEY
20120802 timisoara
PDF
7 Top PHP Development Tools For PHP Coding
PPTX
Edy Dawson Notes on SF HTML5 Dev Conf
Tools of the trade
Untying the Knots of Web Dev with Internet Explorer
JavaScript debugging diagnostic web tools and firefox
How To Use Selenium Successfully
How to Use Selenium, Successfully
Super tools to boost productivity in React dev env!
Welcome to React.pptx
20120306 dublin js
Masterin Large Scale Java Script Applications
Best Practices for WordPress
Visual studio 2012 - What's in it for me?
Intro to SharePoint 2010 development for .NET developers
Web dev#1
NetWork - 15.10.2011 - Applied code generation in .NET
Building Real-World Dojo Web Applications
Web Tools for GemStone/S
Getting started with Emscripten – Transpiling C / C++ to JavaScript / HTML5
20120802 timisoara
7 Top PHP Development Tools For PHP Coding
Edy Dawson Notes on SF HTML5 Dev Conf

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)

PPTX
Introduction_to_Human_Anatomy_and_Physiology_for_B.Pharm.pptx
PPTX
Introduction and Scope of Bichemistry.pptx
PPTX
Cardiovascular Pharmacology for pharmacy students.pptx
PPTX
Introduction to Child Health Nursing – Unit I | Child Health Nursing I | B.Sc...
PPTX
Nursing Management of Patients with Disorders of Ear, Nose, and Throat (ENT) ...
PPTX
Pharma ospi slides which help in ospi learning
PDF
Physiotherapy_for_Respiratory_and_Cardiac_Problems WEBBER.pdf
PDF
3rd Neelam Sanjeevareddy Memorial Lecture.pdf
PDF
Anesthesia in Laparoscopic Surgery in India
PDF
Origin of periodic table-Mendeleev’s Periodic-Modern Periodic table
PPTX
human mycosis Human fungal infections are called human mycosis..pptx
PDF
O5-L3 Freight Transport Ops (International) V1.pdf
DOCX
UPPER GASTRO INTESTINAL DISORDER.docx
PPTX
The Healthy Child – Unit II | Child Health Nursing I | B.Sc Nursing 5th Semester
PDF
Pre independence Education in Inndia.pdf
PDF
PSYCHOLOGY IN EDUCATION.pdf ( nice pdf ...)
PDF
English Language Teaching from Post-.pdf
PDF
Abdominal Access Techniques with Prof. Dr. R K Mishra
PDF
The Lost Whites of Pakistan by Jahanzaib Mughal.pdf
PPTX
Cell Structure & Organelles in detailed.
Introduction_to_Human_Anatomy_and_Physiology_for_B.Pharm.pptx
Introduction and Scope of Bichemistry.pptx
Cardiovascular Pharmacology for pharmacy students.pptx
Introduction to Child Health Nursing – Unit I | Child Health Nursing I | B.Sc...
Nursing Management of Patients with Disorders of Ear, Nose, and Throat (ENT) ...
Pharma ospi slides which help in ospi learning
Physiotherapy_for_Respiratory_and_Cardiac_Problems WEBBER.pdf
3rd Neelam Sanjeevareddy Memorial Lecture.pdf
Anesthesia in Laparoscopic Surgery in India
Origin of periodic table-Mendeleev’s Periodic-Modern Periodic table
human mycosis Human fungal infections are called human mycosis..pptx
O5-L3 Freight Transport Ops (International) V1.pdf
UPPER GASTRO INTESTINAL DISORDER.docx
The Healthy Child – Unit II | Child Health Nursing I | B.Sc Nursing 5th Semester
Pre independence Education in Inndia.pdf
PSYCHOLOGY IN EDUCATION.pdf ( nice pdf ...)
English Language Teaching from Post-.pdf
Abdominal Access Techniques with Prof. Dr. R K Mishra
The Lost Whites of Pakistan by Jahanzaib Mughal.pdf
Cell Structure & Organelles in detailed.

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!