I've come across some rookie web programmers that have no idea of what tools to use in order to get started on a project. So I decided to compile a list of tools that I use to develop my web development projects written in PHP and why they are useful:
- SVN Server/Client - Version control is a vital part of project development especially if you are developing in teams. I don't care if the project is large or small. It's just nice to keep track of the changes you've made to your project throughout its lifetime. This also gives you the ability to veer off into another development branch to create a customized version of your project if you'd like. Or if you have a stable version you can then tag it with a name or version #. There's other things that you can do with subversion but I won't go into too much detail on how it all works since there are plenty of tutorials out there. However, I will tell you some clients that I use for connecting to the subversion server:
- TortoiseSVN - Stand alone client which integrates itself seamlessly into the Windows Explorer and your context menu.
- Subclipse - A plugin client that integrates itself into Eclipse quite nicely
- Integration Development Environment (IDE) - IDEs are nice when it comes to big projects and can be overkill in some small projects but they provide some nice functionality to increase productivity and in some cases make coding a lot easier. IDEs may require a steep learning curve at first but worth it in the end in my opion. The IDE I like to use is:
- Eclipse - This is primarily a Java development platform, however, the nice thing about Eclipse is the amount of plugins that it has to virtually program in any language. The best thing about Eclipse is that its FREE! Some of the plugins I've had to install are:
- phpEclipse - Plugin for creating and developing projects in PHP
- Text Editor - This tool isn't necessarily needed if you decide to use an IDE but if an IDE is not ideal then you can choose from a variety of text editors that provide syntax highlighting for PHP. I'll only list a few here:
- Notepad++ - Provides syntax highlighting for a variety of languages including PHP and best of all... it's FREE! (Windows)
- Textpad - Highly configurable and fast, however, you'll need to download the syntax definitions in order to get syntax highlighting for PHP and it's not necessarily free. You can try the demo version, however, it pops up this annoying help dialog every time you start it up. (Windows)
- EditPad - Fast and extremely simple text editor and not free. (Windows)
- VIM - Has a learning curve due to the need to type key combinations in order to delete/copy/paste/edit lines of text but it is FREE! (Linux/Windows)
- Emacs - Can be quite slow and bulky but it is FREE! (Linux/Windows)
- Local Web Server - The web server is an obvious necessary tool for developing your project since it will be doing all the work (i.e. passing the PHP files to the PHP parser to generate the content and then sending the content to the client). Perhaps you have a host and don't really need this tool, however, I disagree because having a web server installed locally can speed up your development significantly and it provides a testing grounds so that you don't mess anything up on the actual host. I prefer to use Apache with PHP, and MySQL (for projects involving databases) rather than IIS. You can install all these tools separately but I prefer an all-in-one solution such as WAMP for Windows. If you are developing on Linux you'll have to install LAMP which isn't an all-in-one solution and requires quite a few steps to get up and running, but you can choose whatever solution you'd like for this tool just do a search on Google.
- Web Developer Extension for FireFox - I've found this plugin to be useful for debugging the layout of my web page but can also be useful for debugging JavaScript.
No comments:
Post a Comment