Useful information about code scripting and automation

First created on June 19 2011
Last updated on June 27 2011
by Martin Chu

Short description about all frequently used software for automation
Software Descpiption and unique features Main development and download website Syntax, command and manual Documentation, ,Tutorial
and examples
Version Infomation useful scrtpt  or code repository
Python              
Expect            
Perl            
Tcl/Tk            
SKILL used in Cadence Design environment .Goof for pcell creation and  design automation.            
PHP Good for Web and Database interface. Excellent for eCommerce and mySQL etc database software. www.php.net/downloads.php Language.basic-syntax.php     http://www.java2s.com/Code/Php/CatalogPhp.htm
Smarty Smarty is a template engine for PHP, facilitating the separation of presentation (HTML/CSS) from application logic. This implies that PHP code is application logic, and is separated from the presentation. http://www.smarty.net/
http://www.smarty.net/about_smarty

Manual and documentation
best_practices

Smarty 3.0.8 Database example (eg ADODB or PEAR)
PEAR Note 1. http://pear.php.net/        
MySQL            
Ocean              
Ruby            


Note 1: PHP Extension and Application Repository (PEAR). PEAR is a framework and distribution system for reusable PHP components

Good list of programming languages from scriptol.com

Expect from NIST

Expect is a tool for automating interactive applications such as telnet, ftp, passwd, fsck, rlogin, tip, etc. Expect really makes this stuff trivial. Expect is also useful for testing these same applications. And by adding Tk, you can wrap interactive applications in X11 GUIs.

Expect can make easy all sorts of tasks that are prohibitively difficult with anything else. You will find that Expect is an absolutely invaluable tool - using it, you will be able to automate tasks that you've never even thought of before - and you'll be able to do this automation quickly and easily.

Tcl, Tk, Expect  training material web site

http://www.xdobry.de/mysqltcl/   Tcl and mySQL interaction information

PHP OOP tutorial


Popular automation script repository (not language specific in general)
free script searching  using google

hotscripts

Matt's Script

scriptol

Tcl Archive

http://www.scriptsportal.com

http://cgi.resourceindex.com

http://www.fileguru.com/apps/tcl_scripts

Essential and FAQ for programming http://www.java2s.com/Code/Python/CatalogPython.htm The above site has very good example code for Python.
What is Object Oriented Programming (OOP),  
Introduction to Object Oriented Programming OOP
What is a Class  .  
What is Inheritance?  
What is Polymorphisms?
What is Encapsulation (or information hiding)?
What is SOA?
What is the Data Access Layer?
What is the Business Logic Layer?

OOP guidelines and best practices (Please follow these guideline when doing OOPing)
Object-oriented development involves the modular decomposition of a software system into objects that interact with other objects to achieve the desired functional characteristics of the system.  Data and procedures internal to an object can be externally accessed only through interface procedures called methods.  
Object-oriented languages use classes to represent the code and data structures for sets of objects with the same behavior.
 
· Hide data and provide functional abstractions (i.e., abstract data types) using encapsulation.  Relate objects to abstract data types using classes.

· Use superclasses to define code, which is common to a number of related classes, in one place, rather than replicated in each of the related classes. 
Use inheritance to make the commonality of superclasses and the specialization of subclasses explicit.
· Inheritance is one way to support polymorphism.  Inheritance provides a mechanism for code re-use and reduction of program code size, but use of inheritance also increases a program's complexity.
· Use polymorphism to simplify code and promote re-use.  Implement polymorphism using dynamic binding, if applicable, for message dispatching, where the method for an object is chosen in response to messages during program run time.  Messages can be implemented as function calls.
· Use code libraries for effective re-use of object classes.  Incremental compilers and class hierarchy browsers are useful tools during object-oriented development.
· Use error detection programming code, (i.e., assertions, exceptions), to check if a program's functional behavior corresponds to its intended behavior.  Assertions can be used to validate pre-conditions and post-conditions that an object and its clients must meet when executing a method.  These methods and conditions form contracts between the object and its clients. 
· A methodical assessment of responsibility for all failures improves the system's quality by decreasing the number of faults found and increasing the system's robustness.



__________________________________________________________________________________________

The arrangement of this website, some web contents and documents are copyrighted
© 2010-2011.  Please respect individual's effort.

visitor web stats