Free Sample
+ Collection

Tcl 8.5 Network Programming

Wojciech Kocjan, Piotr Beltowski

Learn Tcl and you’ll never look back when it comes to developing network-aware applications. This book is the perfect way in, taking you from the basics to more advanced topics in easy, logical steps.
RRP $29.99
RRP $49.99
Print + eBook

Want this title & more?

$16.99 p/month

Subscribe to PacktLib

Enjoy full and instant access to over 2000 books and videos – you’ll find everything you need to stay ahead of the curve and make sure you can always get the job done.

Book Details

ISBN 139781849510967
Paperback588 pages

About This Book

  • Develop network-aware applications with Tcl
  • Implement the most important network protocols in Tcl
  • Packed with hands-on-examples, case studies, and clear explanations for better understanding

Who This Book Is For

This book is for Tcl developers with basic network programming concepts, who want to add networking capabilities to their applications. Working knowledge of Tcl and basic experience of network protocols will be useful. The reader should be familiar with basic concepts used in modern networking – keywords like TCP, HTTP or XML should not be a mystery. The book does not require advanced knowledge of Tcl – the first chapters will swiftly introduce the reader into it, allowing refreshing the information or gaining a quick overview of the Tcl language abilities.

Table of Contents

Chapter 1: Introducing Tcl
What is Tcl/Tk
Additional tools
Tcl syntax
Chapter 2: Advanced Tcl Features
Tcl features
Object-oriented programming
Accessing files
Packages in Tcl
Event-driven programming
Multithreaded applications
Chapter 3: Tcl Standalone Binaries
Understanding the executable file structure
Learning the Metakit database
Learning more about virtual file systems
Learning Tclkit
Starkit and SDX
Knowing the Starpack technology
Practical example—the Hibernator application
Advanced topics—self updating
Other solutions
Chapter 4: Troubleshooting Tcl applications
Chapter 5: Data Storage
Using SQL and databases in Tcl
Handling XML in Tcl
Storing raw Tcl values
Chapter 6: Networking in Tcl
Using TCP sockets
Using UDP sockets
Chapter 7: Using Common Internet Services
Handling e-mail
Transferring files and data
Chapter 8: Using Additional Internet Services
Checking DNS
Getting the current date and time
Using LDAP from Tcl
Communicating with Tcl applications
Chapter 9: Learning SNMP
Introduction to SNMP
Tcl and Scotty package
Using Tcl for SNMP communication
Chapter 10: Web Programming in Tcl
Tcl scripts as CGI application
Introduction to TclHttpd
Programming TclHttpd server
Chapter 11: TclHttpd in Client-Server Applications
Creating HTTP-based applications
Adding autoupdate to application
Extending your applications
Improving scalability and performance
Chapter 12: SOAP and XML-RPC
Tcl and standards for remote procedure calls
Connecting to XML-RPC services
Using SOAP protocol
Chapter 13: SSL and Security
Learning Secure Socket Layer
Authorization and roles
Securing your application

What You Will Learn

  • Get to know the the tools available to ease up development of Tcl code
  • Discover Tcl’s approach of using events over threads, which is very different from many other languages
  • Learn the VFS feature that allows the usage of Metakit database as normal file system
  • Create loggers, define log levels, write your logs to file or channel, and trace the execution of your code
  • Get to know the key differences between free TclPro Debugger and paid ActiveState Tcl Dev Kit Debugger
  • Handle different text encoding, dependent on the region you live, and create multi-language, internationalized application with msgcat package
  • Handle UDP communication in Tcl was presented, with TclUDP extension as the implementation
  • Manage files remotely over File Transfer Protocol (FTP) and learn to download a file from a web site using Hypertext Transfer Protocol (HTTP),
  • Learn the usage Lightweight Directory Access Protocol (LDAP) to look up information and/or authenticate users, manually querying host names and time servers
  • Get to know the Tcl package Scotty that handles SNMP and provides a Tk based GUI application that can be used for inspecting devices, discovering systems within our network and browsing data that can be retrieved over SNMP
  • Use Tcl code as legacy CGI scripts and improve it with ncgi package
  • Create client-server application based on HTTP protocol and Tclhttpd as embedded web server packed into Starkit technology for easy deployment
  • Connect to XML-RPC services and issue methods remotely, and easily integrate with major blogging engines
  • Create SOAP services using Tclhttpd and Web Services for Tcl; define complex data types for storing structured information
  • Learn to use encrypted connections from Tcl and the method to make sure you know whom your application is communicating with

In Detail

Tcl (Tool Command Language) is a very powerful and easy to learn dynamic programming language, suitable for a very wide range of uses. Tcl is regarded as one of the best-kept secrets in the software industry. This book gives you a hands-on experience on Tcl, helping you develop network-aware applications using this mature yet evolving language.

This book shows you how to create network-aware applications with Tcl language. Packed with practical examples, the book not only takes you through the implementation of network protocols in Tcl, but also key aspects of Tcl programming.

The book starts with the basic element of Tcl programming as we take a look at the syntax and fundamental commands of the language. To get us ready for network programming, we look at important Tcl features such as object-oriented programming, accessing files, packaging in TCL, event driven programming, and multithreaded applications. To create standalone single-file executable applications with Tcl we take a look at the Starpack technology, and ensure that we’ll be able to create robust applications with a thorough coverage of troubleshooting and debugging Tcl applications.

The book is really about network programming, and it will not let you down with its deep coverage of these topics. Of course we look at protocols, but there are plenty of practical examples to keep things moving along. We start with the TCP and UDP protocols, and look at some other protocols to see examples of synchronizing time with other servers, querying user information and authenticating users over LDAP and performing DNS queries.

The book explains Simple Network Management Protocol (SNMP), which is often used for monitoring and gathering information from various devices, such as routers, gateways, printers and many other types of equipment. We’ll also look at web programming in Tcl; processing the requests coming from the clients via the HTTP protocol and responding to these requests. You’ll be able to create a complete solution for creating a client-server application in Tcl.

To round things off, you’ll see how to secure your networked applications, build public key infrastructure into your application and use Tcl’s safe interpreter feature to reduce risk of running code from unknown source.


Read More

Recommended for You

Microsoft Windows Communication Foundation 4.0 Cookbook for Developing SOA Applications
$ 29.99
WCF 4.0 Multi-tier Services Development with LINQ to Entities
$ 29.99