Free Trial

Safari Books Online is a digital library providing on-demand subscription access to thousands of learning resources.


  • Create BookmarkCreate Bookmark
  • Create Note or TagCreate Note or Tag
  • DownloadDownload
  • PrintPrint
Share this Page URL
Help

Chapter 1. Choosing Your Tools > Time for action choosing a server-side scripti...

Time for action choosing a server-side scripting language

When developing web applications, you have a virtually unlimited choice of programming languages you can use, so we have to consider what is important for us in our project and make a tradeoff if necessary.

  • Consider how important development time is compared to performance. Compiled languages like C# or C++ might be used if CPU power is scarce or if you do not want to distribute the source code in a readable format. But when development time is at a premium, using scripting languages often saves time as they make it easier to develop applications in an incremental way, even to the point where you can type in commands interactively to see what is possible and later incorporate these trials in your code.

    Performance is generally not an issue, especially when using scripting languages that are compiled to intermediate byte code, as is the case for languages like Python and Perl, for example. And while it is true that scripted languages are compiled each time they are run, this has a negligible effect when the program is a long running web application.

  • Weigh the importance of debugging. Interpreted languages are often simpler to debug as compiled languages, both because the debugger has access to more information that you may explore interactively if something breaks and because you can try out any modules you have written by interactively calling functions to see what happens.

  • Think beyond the project. Once implemented and deployed, your application might have a long and happy life, but that inevitably means that there will be requests for smaller or larger changes and choosing a suitable language can help to reduce the maintenance effort. Compared to compiled languages that in general have quite low-level instructions and language constructs, interpreted languages have (very) high level constructs that make for condensed code that packs a lot of meaning in a few statements. That is not only easier to read but also faster to interpret and in the end these high level constructs, once interpreted, run at (almost) compiled speed making the performance difference sometimes hard to spot. More meaning and less code do make for easier reading and this is a huge benefit when maintaining code.


  

You are currently reading a PREVIEW of this book.

                                                                                        

Get instant access to over
$1 million worth of books and videos.

  

Start a Free Trial