Development | Next steps | Legal stuff | Providing charts | Impressions | FsxWs

Overview

Code:

  • Code is written object oriented in JavaScript., there are only (simple) PHP proxies since cross domain requests fail.
  • Documentation is generated with JsDoc3.
  • Google Map API V3 is used.
  • Google charts is used for any charts.
  • Our Mercurial repository  at Codeplex. Check the Mercurial links below!
  • Everything you need, including the libraries, is located under one directory.
  • In order to run the code without PHP (proxies), test data are included.

IDE:

  • Use what you like.
  • You will need a tiny plain webserver in order to run the application, since data are retrieved as XMLHttpRequest it will not work on file basis only.

Design rules:

  • JsDoc3 annotations are mandatory.
  • Indent by tab, not by space. So everybody can use her own indention settings.
  • Use a fork for your tests!

Mercurial:

Writing documentation

Start to write code

  • Choose a topic: See next steps
  • Set up your IDE
  • Create a fork of the source code

Development FAQs

  • Why is there some PHP code required?
    VatGM uses XMLHttpRequest, which is subject of the “same origin policy”. We need to read data from <someVatsimServer>, while the application is hosted at <someOtherServer>. Since <someVatsimServer> does not explicitly send a cross domain header, any access from XMLHttpRequest is blocked (by the Browser). The PHP code is a proxy located at  <someOtherServer>, hence called by XMLHttpRequest locally and then queries <someVatsimServer> for us. If the data file was sent with a cross domain header we’d be able to dismiss the proxy.
  • Why is the project developed in JavaScript?
    There are multiple alternatives, it could have been written server side with PHP, Java, .net … All the pros and cons are well known, however there were basically three main reasons: a) Google Maps can be well programmed with JavaScript and b) we almost need no server code, so the application can be easily hosted, and c) no installation is needed. Typical disadvantages are the cross browser issues, performance on (CPU) weak devices, and larger data transfer. I do not want to discuss the architecture on a general level, detailed feedback / questions are welcome. 
  • CodePlex FAQs, see here
  • I am a C++ programmer, how could I help? Check out FsxWs (https://fsxws.codeplex.com/)
  • Is Google Earth a topic? Yes you could join FsxWs, and/or SSG (http://ssg.codeplex.com/)

Last edited Nov 28, 2012 at 10:30 AM by KWB, version 20

Comments

No comments yet.