374c Separating groups of variables into namespaces
Home Accessibility Courses Diary The Mouth Forum Resources Site Map About Us Contact
Separating groups of variables into namespaces

If your program's going to grow in size beyond a certain point, you'll need to use some sort of namespace or package to segment global names into different groupings - moving from a single name to a forename / surname type system, if you like to think of it that way.

In C++, it's namespaces - see [here] for a source code example. In Perl, we use packages - see [here] and [here] (called from [here]). Both of those examples are not really object oriented, although both Perl and C++ are OO languages and use this namespace / package capability within their OO implementation.

There's an example of Tcl's namespaces [here], and in PHP [here] ...

You'll find that many of my simple namespace demos are rather less that useful programs, and you'll ask yourself "why's he using namespaces here?". The answer is that they're purely used for illustrative purposes in these cases - name spaces become useful as your program moves from big to massive, or where you're packing substantial chunks of code for others to use and you want to expose an absolute minimum of internals to them. And of course it would take a very long time on a course to develop something that was substantial enough to make namespaces worthwhile, only to end up with an example that was too cluttered to show you the features easily without them getting lost in the rest of the thing!
(written 2010-11-24, updated 2010-12-04)

 
Associated topics are indexed under
C237 - C and C based languages - Namespaces
T213 - Tcl/Tk - Libraries, Packages and Namespaces
  [3418] Tcl packages, pkg_mkIndex, pkgIndex.tcl -what are they and why use them. - (2011-09-03)
  [3417] What is a namespace and why do we need them? - (2011-09-03)
  [2476] Tcl - uplevel to run code at calling level - (2009-10-24)
  [1529] Tcl - learning how to use namespaces, packages and libraries together - (2008-02-02)
  [1339] Packages and Namespaces are like Suitcases and Aircraft - (2007-09-09)
  [146] example of Tcl namespaces and packages - (2004-12-10)

P209 - Subroutines in Perl
  [3833] Learning to use existing classes in Perl - (2012-08-10)
  [3574] Perl functions such as chop change their input parameters - (2012-01-10)
  [2929] Passing a variable number of parameters in to a function / method - (2010-08-20)
  [2833] Fresh Perl Teaching Examples - part 2 of 3 - (2010-06-27)
  [2550] Do not copy and paste code - there are much better ways - (2009-12-26)
  [2069] Efficient calls to subs in Perl - avoid duplication, gain speed - (2009-03-07)
  [1921] Romeo and Julie - (2008-12-04)
  [1860] Seven new intermediate Perl examples - (2008-10-30)
  [1850] Daisy the Cow and a Pint of Ginger Beer - (2008-10-21)
  [1826] Perl - Subs, Chop v Chomp, => v , - (2008-10-08)
  [1784] Global - Tcl, PHP, Python - (2008-09-03)
  [1782] Calling procs in Tcl and how it compares to Perl - (2008-09-02)
  [1202] Returning multiple values from a function (Perl, PHP, Python) - (2007-05-24)
  [1163] A better alternative to cutting and pasting code - (2007-04-26)
  [969] Perl - $_ and @_ - (2006-12-07)
  [775] Do not duplicate your code - (2006-06-23)
  [588] Changing @INC - where Perl loads its modules - (2006-02-02)
  [531] Packages in packages in Perl - (2005-12-16)
  [357] Where do Perl modules load from - (2005-06-24)
  [308] Call by name v call by value - (2005-05-11)
  [96] Variable Scope - (2004-10-22)


4ea6
Back to
Pictures from the Birkenhead to Belfast crossing
Previous and next
or
Horse's mouth home
Forward to
Using C and C++ functions in the same program - how to do it
Some other Articles
Belfast, on a cold November evening
Strings, Garbage Collection and Variable Scope in C++
Throwing your own exception in C++, and catching it
Using C and C++ functions in the same program - how to do it
Separating groups of variables into namespaces
Pictures from the Birkenhead to Belfast crossing
On the way to the course this week
Comments in and on Perl - a case for extreme OO programming
Melksham Carnival - getting ready for 2011
Databases - why data is split into separate tables, and how to join them
4090 posts, page by page
Link to page ... 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82 at 50 posts per page


This is a page archived from The Horse's Mouth at http://www.wellho.net/horse/ - the diary and writings of Graham Ellis. Every attempt was made to provide current information at the time the page was written, but things do move forward in our business - new software releases, price changes, new techniques. Please check back via our main site for current courses, prices, versions, etc - any mention of a price in "The Horse's Mouth" cannot be taken as an offer to supply at that price.

Link to Ezine home page (for reading).
Link to Blogging home page (to add comments).

You can Add a comment or ranking to this page

© WELL HOUSE CONSULTANTS LTD., 2013: Well House Manor • 48 Spa Road • Melksham, Wiltshire • United Kingdom • SN12 7NY
PH: 01144 1225 708225 • FAX: 01144 1225 899360 • EMAIL: info@wellho.net • WEB: http://www.wellho.net • SKYPE: wellho

PAGE: http://www.wellho.net/mouth/3066_Sep ... paces.html • PAGE BUILT: Sat Feb 23 12:39:13 2013 • BUILD SYSTEM: wizard
0