Schrift
[thread]7548[/thread]

Hash als Option missbrauchen (Seite 7)

Leser: 1


<< |< 1 ... 4 5 6 7 8 9 10 ... 12 >| >> 119 Einträge, 12 Seiten
bloonix
 2005-12-21 22:05
#61019 #61019
User since
2005-12-17
1615 Artikel
HausmeisterIn
[Homepage]
user image
Code: (dl )
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
a:
print ' ' x 2 . "$key" . ' ' x (30-length($key)) . "$value\n";

b:
pen FH, '<', $file or ...

c:
$alias->{DiskMajor}          = $1;
$alias->{DiskMinor}          = $2;
$alias->{DiskReadRequests}   = $4;
$alias->{DiskReadBytes}      = $6 * $block_size;
$alias->{DiskWriteRequests}  = $8;

d:
(split /\s+/, <PRC>)[0..6,9..18,21..22,35..36,38];


zu a)

du meinst  ... ?

Code: (dl )
print ' ' x 2, "$key", ' ' x (30-length($key)), "$value\n";


zu b + c)

So schreibe ich eigentlich immer, aber ich hatte es geändert, weil ich mal -
so glaube ich zumindest - irgendwo mal gelesen habe, dass Quoting
und Klammern die Kompilierung beschleunigt. Liege ich da falsch?

Ich war sogar am überlegen, ob ich close(HANDLE); statt close Handle;
schreiben soll. Aber das ist wohl alles ein wenig übertrieben von mir...

zu d)

das schaut in der Tat lesbarer aus.

Deine Nameskonventionen werde ich berücksichtigen.

new()
getStats()
_SysInfo()
_ProcStats()
_MemStats()

Korrekt?
What is a good module? That's hard to say.
What is good code? That's also hard to say.
One man's Thing of Beauty is another's man's Evil Hack.
bloonix
 2005-12-21 22:14
#61020 #61020
User since
2005-12-17
1615 Artikel
HausmeisterIn
[Homepage]
user image
[quote=steffenw,21.12.2005, 20:26]Es lohnt sich, Perl komplett zu erlernen. Es lohnt sich auch, zu versuchen, Module der Perl-Autoren im CPAN zu verstehen. Ich meine die Source. Es sollten aber welche sein, die noch handlich von der Größe sind. Damian Conway-Module sind da vielleicht ein Tip.[/quote]
Eile mit Weile :)

Ich habe sehr wenig Zeit und die Zeit, die ich übrig habe, nutze ich, um
immer mehr zu lernen, aber für Perl bleibt nie viel übrig, außer mein Urlaub
und das Stündchen vor dem Schlafen gehen...

Ich habe mir die new-Methode von HTML::Template angesehen ...

Code: (dl )
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
sub new {
 my $pkg = shift;
 my $self; { my %hash; $self = bless(\%hash, $pkg); }

 # the options hash
 my $options = {};
 $self->{options} = $options;

 # set default parameters in options hash
 %$options = (
              debug => 0,
              stack_debug => 0,
              timing => 0,
              search_path_on_include => 0,
              cache => 0,
              blind_cache => 0,
              file_cache => 0,
              file_cache_dir => '',
              file_cache_dir_mode => 0700,
              cache_debug => 0,
              shared_cache_debug => 0,
              memory_debug => 0,
              ...
              ...
             );


Es passte irgendwie wegen der Optionen, aber letztendlich habe ich es
nur zur Hilfe beiseite gezogen. Aber ich habe es auch verstanden...\n\n

<!--EDIT|opi|1135196590-->
What is a good module? That's hard to say.
What is good code? That's also hard to say.
One man's Thing of Beauty is another's man's Evil Hack.
steffenw
 2005-12-21 22:54
#61021 #61021
User since
2003-08-15
692 Artikel
BenutzerIn
[Homepage] [default_avatar]
Du kannst natürlich close(Handle) schreiben. Was Klammerungen betrifft: Andere Sprachen verlangen sie konsequent, auch wenn dann so etwas entsteht: )))))))). Bei Perl kann man wirklich alle weglassen, nur muß man dann auch alle Prioritäten aller Operatoren ganz genau kennen. close Handle ist ohne Klammern genau noch so klar zu verstehen, als wie mit ihnen. Also weg damit. Wenn man alle Klammern schreibt, wird es genau so unübersichtlich, als wenn man alle wegläßt. Schreibe also die Klammern, welche die Verständlichkeit erhöhen. Schreibe also gruppierende Klammern eher als Funktionsklammern. Und lasse Dich nicht von Leuten verrückt machen, die C, Java oder sonstwas programmieren, diejenigen versuchen Dir evtl. einzureden, alle Klammern auch in Perl zu schreiben. Verlasse Dich auf Dein Gefühl und denke an den Spruch, daß Perl so geschrieben werden sollte, daß es einen gut lesbaren englischen Satz ergeben sollte. Das kann auch die Entscheidung sein, ob man $xxx and $yyy = 1 oder $yyy = 1 if $xxx schreibt.
$SIG{USER} = sub {love 'Perl' or die};
renee
 2005-12-21 23:42
#61022 #61022
User since
2003-08-04
14371 Artikel
ModeratorIn
[Homepage] [default_avatar]
[quote=steffenw,21.12.2005, 20:26]Es lohnt sich, Perl komplett zu erlernen. Es lohnt sich auch, zu versuchen, Module der Perl-Autoren im CPAN zu verstehen. Ich meine die Source. Es sollten aber welche sein, die noch handlich von der Größe sind. Damian Conway-Module sind da vielleicht ein Tip.
[...][/quote]
Bei Damians Module sollte man selbst als Könner noch aufpassen. Er benutzt sehr viel "Magie" und CPAN:Parse::RecDescent ist ein Beispiel das man nicht verstehen *will*

Es gibt sicherlich Module, die besser lesbar sind!
OTRS-Erweiterungen (http://feature-addons.de/)
Frankfurt Perlmongers (http://frankfurt.pm/)
--

Unterlagen OTRS-Workshop 2012: http://otrs.perl-services.de/workshop.html
Perl-Entwicklung: http://perl-services.de/
bloonix
 2005-12-22 03:26
#61023 #61023
User since
2005-12-17
1615 Artikel
HausmeisterIn
[Homepage]
user image
*URGS*

kann mir jemand weiterhelfen?

Ich habe mir auf CPAN.org einen Entwickler-Account angelegt und das
Modul hochgeladen. Kaum war es oben, habe ich keine paar Stunden
später Verbesserungsvorschläge von einem Entwickler erhalten...

Die Patch-Datei schaut so aus ...

Code: (dl )
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
--- Statistics.pm.orig  2005-12-21 07:28:46.000000000 +0100
+++ Statistics.pm       2005-12-22 00:30:12.000000000 +0100
@@ -6,6 +6,8 @@

use Linux::Statistics;

+initStats;
+
$stats = getStats( SysInfo   => 1,
                   ProcStats => 1,
                   MemStats  => 1,
@@ -27,6 +29,10 @@
release number. To run this module it is necessary to start it as root or another user
with the authorization to read the /proc filesystem and the /etc/passwd file.

+Some of the statistics are deltas since the last time that the main function was called.
+Therefore it's needed to initialize some values at the beginning of the program. This
+can be done using the I<initStats> function.
+


Die vielen + und - sagen mir was ... soviel wie Zeilen ersetzen, aber mit
welchem Tool oder welchem Modul kann ich nun die Patchdatei mit
dem Modul zusammenführen? Ich habe keine Ahnung! Hillfffeee ... :)
What is a good module? That's hard to say.
What is good code? That's also hard to say.
One man's Thing of Beauty is another's man's Evil Hack.
murphy
 2005-12-22 04:03
#61024 #61024
User since
2004-07-19
1776 Artikel
HausmeisterIn
[Homepage]
user image
Für dieses und ähnliche Patchformate gibt es sinnigerweise das Programm patch (hier die GNU Version) um sie auf Dateien anzuwenden. Auf jedem UNIXoiden System sollte das vorhanden sein. Aber auch für Windows kann man es gewiss irgendwo herunterladen.
When C++ is your hammer, every problem looks like your thumb.
renee
 2005-12-22 05:38
#61025 #61025
User since
2003-08-04
14371 Artikel
ModeratorIn
[Homepage] [default_avatar]
Bei cygwin ist es dabei...
OTRS-Erweiterungen (http://feature-addons.de/)
Frankfurt Perlmongers (http://frankfurt.pm/)
--

Unterlagen OTRS-Workshop 2012: http://otrs.perl-services.de/workshop.html
Perl-Entwicklung: http://perl-services.de/
ptk
 2005-12-22 10:37
#61026 #61026
User since
2003-11-28
3645 Artikel
ModeratorIn
[default_avatar]
Code: (dl )
1
2
cd verzeichnis
patch < /path/to/patch
Manchmal muss man noch die Option -p1 oder so angeben, ansonsten fragt patch, welche Datei gepatcht werden muss.
steffenw
 2005-12-22 10:40
#61027 #61027
User since
2003-08-15
692 Artikel
BenutzerIn
[Homepage] [default_avatar]
Kann das nicht auch das Perl-Modul Text::Diff verarbeiten?
$SIG{USER} = sub {love 'Perl' or die};
renee
 2005-12-22 10:56
#61028 #61028
User since
2003-08-04
14371 Artikel
ModeratorIn
[Homepage] [default_avatar]
Die Doku zu CPAN:Text::Diff laesst nicht vermuten, dass es das koennte. Da heisst es nur, dass es diffs erzeugen kann, die patch versteht!
OTRS-Erweiterungen (http://feature-addons.de/)
Frankfurt Perlmongers (http://frankfurt.pm/)
--

Unterlagen OTRS-Workshop 2012: http://otrs.perl-services.de/workshop.html
Perl-Entwicklung: http://perl-services.de/
<< |< 1 ... 4 5 6 7 8 9 10 ... 12 >| >> 119 Einträge, 12 Seiten



View all threads created 2005-12-19 02:24.