rspec/rules/S2011/python/rule.adoc

38 lines
806 B
Plaintext

== Why is this an issue?
Global variables are a useful construct, but they should not be abused. Functions access the global scope through the ``++global++`` keyword, but this practice considerably reduce the function's readability and reusability. Instead, the global variable should be passed as a parameter to the function.
=== Noncompliant code example
[source,python]
----
NAME = 'Joe'
def write_name();
global NAME # Noncompliant
print NAME
----
=== Compliant solution
[source,python]
----
def write_name(name);
print name
----
ifdef::env-github,rspecator-view[]
'''
== Implementation Specification
(visible only on this page)
include::../message.adoc[]
'''
== Comments And Links
(visible only on this page)
include::../comments-and-links.adoc[]
endif::env-github,rspecator-view[]