Table of Contents
Bagaimana saya dapat mengurangi penggunaan variabel PUBLIC ?


Bagaimana saya dapat mengurangi penggunaan variabel PUBLIC ?
Yah, dalam teknik pemrograman pribadi, saya berusaha keras untuk menghindari penggunaan variabel PUBLIC. Lalu Anda bertanya pada saya, bagaimana saya dapat melakukannya ?? Menghindari variabel Public mempunyai satu hal yang sama dengan menghindari merokok/minum: Anda harus mempunyai tekad yang keras !! :)
Kali ini, saya membeberkan suatu fungsi saya yaitu dPublic() - mensimulasikan tugas yang sama dengan perintah PUBLIC, seperti berikut:

// dPublic() Function

#define PUB_NAME   1
#define PUB_VALUE  2

static _dPublic_ := {}

function dPublic( cVarName, xNewValue )
  local xOldValue := nil
  local lVarExist := .F.
  local nCounter

  // If cVarName is a string, then proceed
  if valType( cVarName ) == "C"
    cVarName := upper( cVarName )

    // Searching in the Pseudo-Variable List
    for nCounter := 1 to len( _dPublic_ )
      if _dPublic_[ nCounter ][ PUB_NAME ] == cVarName
        // If found, then retrieve the current value into xOldValue
        xOldValue := _dPublic_[ nCounter ][ PUB_VALUE ]
        lVarExist := .T.
        // If there is a new value passed, then assign it
        if pCount() == 2
          _dPublic_[ nCounter ][ PUB_VALUE ] := xNewValue
        endif
      endif
    next

    // Check if it is a new variable
    if (! lVarExist) .and. pCount() == 2
      aAdd( _dPublic_, { cVarName, xNewValue } )
    endif

  endif
return xOldValue

Download dPublic.prg now

Go Top