|
|
|
All About Programming ;-) This is just an overview. If you'd like further information or if you are considering becoming a programmer. Go to the tutorial links section. There are two basic distinctions in programming as it applies to a web. This depends on where the program is running. If the program is running on the browser it is said to be running on the client side. If the program is running on the server it is server side programming.
Client Side Programming These programs control the execution of browsers. Because of the numerous browser programs and computers that run them we must rely on standards. Browsers interpret the programming code we send them in different ways. No 2 browsers are alike. The objective is to write code that will execute correctly on as many different browsers as possible. And when the program fails will degrade gracefully. Often is required that the program execute in a minimum acceptable manner. For example and input form that cannot be sent. Or a navigation structure that doesn't work. HTML is the programming language that is used on the web. It may be the easiest language to learn. Many people learn the basics of HTML in just a few minutes. However, when page layouts get more complex it is easier to use an HTML editor. One of the great features of HTML is tables. Tables allow you to position the content of your pages precisely. There are many tutorials on the web that teach HTML. Click the Links in the Tutorials menu. "What You See Is What You Get" HTML editors allow you to make your web pages the way you use a word processor to create letters. This includes drag & drop and cut & paste. They can have advanced functions and some are free. If you like Microsoft, and can spend a few bucks, then MS FrontPage has the feel of MS Word. FrontPage can perform some server-side functions. One of the more serious problems with WYSIWUG editors is the code they generate. Often machine generated code isn't as easy to read as human generated code. A code generating machine's primary function is to create working code. Making it easy for humans to read is a lower priority. You can have MS FrontPage 2000 or 2002 code extensions for your website. HTML that doesn't use any code extensions or server side programming is preferred. I learned at an early age to "KISS" keep it simple stupid. However, there are several very nice features built into FrontPage. A nice discussion group is one of them. If you are planning to edit your own HTML pages you will need an HTML editor. You can edit HTML with a text editor, but it is far simpler and faster to use a tool specific for the task. MS Word and many other modern editors will allow you to save your document as HTML. This works but the primary purpose of these programs is to generate office documents. Consequently the code that they generate is not always top notch. It may be difficult to read the code they generate and the use of additional features such as Javascript is harder. Javascript is another programming language that is used to extend the functionality of HTML. When you move your mouse pointer over a button it's probably Javascript that changes the button. Javascript has versions like everything. There is a huge array of Javascript code that can provide almost any function you can think of. However, you must be careful and use tried and true code. I no longer recommend the use of Java applets on Web pages. Java applets can control a larger portion of your computer. For security reasons the people shut off the ability to execute these programs in their browser. These Java applets are primarily used for image animation via program control. There is an example of a Java applet in the samples section under "Web Page Slide Show" it is the second slide. These are similar to Java applets. They allow considerable functionality. However, they suffer the same problems as Java applets in that many people do not allow them. This is Microsoft's answer to Javascript. It can be used in a variety of different applications including office. It hasn't caught on as well as Microsoft would have liked. Static Web pages are files that are stored on the server. They are simply served to the client and their request. They're not modify any anyway by the server. You can submit your code for testing. There are web sites that you can ask to test the code on your web site. They will give you back a report indicating the level of browser and code that is required to render your pages. This is really nice of these people. Some sites do it for free. Once you know your code works on the target browsers you can use it over and over again. Just change the content. This is how templates are made. If you are making pages yourself, it's best to stick to the basics and use templates. There is allot of functionality even in the most basic code.
Server Side Programming - Dynamic Web Pages Dynamic web pages execute programs that run on the server. The program creates the web page before it is sent over the internet to the browser. This allows you to custom make or dynamically change the web page. It allows you to display records in your database and allow the user to edit or add to the database. Tremendous strides have been made recently in server side program. It was time-consuming and complex. Now with the creation of the .net framework by Microsoft, it's fairly easy and rapid application development is possible. The .Net Framework is a foundation of programs that other programs use in their execution. The .Net Framework monitors and helps maintain programs. It contains a rich number of functions organized and a logical manner. Using the .net framework provides the software developer a huge number of tools and a rich development environment. It was made with the Internet in mind. The framework includes a Common Language Runtime (CLR). This allows any programming language to create code. The code is compiled (made into code that will execute on a specific computer) into one set of instructions for all languages. The framework is self describing in that all of the information required for the program to run is in it's own assembly. This eliminates what programmers call "DLL Hell", (Dynamically Linked Language) where you need to know where all the parts are. Garbage Collection - When a program stops running their are still parts of it in memory. This memory needs to be de-allocated or given back to the system so it can be used by other programs. The garbage collection routines continually scan for this garbage in memory and make available. Thank you Microsoft. This is one of the languages that is similar to the programming languages C and Java. If you program in one of these languages including Javascript you may like C#. Visual basic, by Microsoft, was a second class programming language. No more, it is compiled into the same code as more advanced languages are. It's still verbose (allot of characters to do something) but not as bad. Because the .net framework is so rich you are mostly dealing with functions or objects built into the framework. There are allot of programmers that can program in VB. I do, its what customers want, code that can be maintained by a whole bunch of people. Making a program read a database and do something with the data and write information to the database is central to most programming scenarios. This programming language is SQL "Structured Query Language". It comes in a variety of flavors. Luckily there are standards and much of the SQL code (inside other code) is the same or similar in the various languages that talk to databases. Databases are basically divided into two sections. The front end is where the input forms and output reports are created. The back end is where the information is stored in tables and records. There are programs that take dynamic programming one step further. They create the client side HTML and scripts. Then store them for access by the clients. The code presented to the client is generated only once. This basically eliminates the time the server takes to generate a dynamic page. Consequently page creation time is not a limiting factor. And CPU loading is drastically reduce. Web pages that are not continually updated in real-time for example a photo album can greatly benefit from this technique. The generated pages can also be touched up using an HTML editor. This technique should not be used for something like online inventory where the information changes rapidly.
Windows Programming - Local - Network - Office Automation These two languages can be used locally or on your network. They can be used to create forms for input into your database or read information out and do things with it. There are more controls and functions available than Web programming. This is the basis of advanced office automation. Microsoft office products use VBA. This includes all your favorites like Microsoft Word, Microsoft Excel, Microsoft PowerPoint, Microsoft Outlook and Microsoft Access. If you want your different Microsoft office products to work together VBA is the programming language. You can manipulate and display or print database information. The information can flow from one program to another. While Microsoft Access uses VBA there are many capabilities of Microsoft Access that are not found in the other Microsoft office products. Microsoft Access using the VBA is the fastest way to automate an office and create a database that I have found. It may not be the best and it has limitations. But, it has so many benefits for small and medium-sized businesses that it outnumbers all other databases 10 to 1. Data centric programs can be developed about twice as fast using MS Access verses using VB.Net. There are many database templates, parts and add-ins available through Microsoft or other third party vendors. Many of these databases are free or very low cost and can be customized to your specific needs. Its main limitation is a maximum database size of two Gigabytes and you can not store procedures on the back end. There is an upsizing wizard that will change the Access database to one that uses a Microsoft SQL server. However, this is not recommended and can be time consuming. If you feel you will need the benefits of a Full SQL database in the future then it is recommended that VB.Net be used. There is another concern using MS Access. It doesn't use the .Net platform. Microsoft is moving toward that platform. Microsoft may drop MS Access at some time. This isn't as bad as it sounds. It will take many years (10 or more) before there will be a major impact, after Microsoft stops supporting it. There are so many people using it.
|