Schrift
Wiki:Tipp zum Debugging: use Data::Dumper; local $Data::Dumper::Useqq = 1; print Dumper \@var;
[thread]8624[/thread]

farblich dargestellte Ausgabe (Seite 2)

Leser: 2


<< |< 1 2 >| >> 16 Einträge, 2 Seiten
Superfrank
 2007-01-08 23:18
#72925 #72925
User since
2006-09-05
164 Artikel
BenutzerIn
[default_avatar]
z.B. daß du dich nicht mit dem Rumgequote von "Gänsefüßchen" herumplagen mußt und daß es eine Trennung von Code und Layout gibt. So wie in dem Beispiel wurde vielleicht vor 10 Jahren programmiert ;-)

Grüsse

Frank
sesth
 2007-01-08 23:24
#72926 #72926
User since
2005-02-01
181 Artikel
BenutzerIn
[default_avatar]
Hi Kruemmel,

das hat jetzt zwar weniger mit Perl zu tun sondern mehr mit HTML - aber was soll's. Das Beispiel von inspire-world verwendet HTML-Attribute wie bgcolor und color. Das führt zu einer Vermischung von Struktur und Layout des HTML-Codes. Deshalb hat man schon vor knapp 10 Jahren CSS (Cascading Style-Sheets) erfunden um beides trennen zu können. In HTML wird die Struktur angelegt und in CSS das Layout. Das bietet Dir dann später den Vorteil, nur durch Modifikation der CSS-Vorgaben das Layout zu ändern (Z. B. Änderung der Farben). In der veralteten Variante führen solche Änderungswünsche zu Änderungen im Perl-Quellkode, was unerwünscht ist, da ja lediglich Konfigurationsdaten (Layout) angepasst werden sollen.

Ich hoffe, der Unterschied ist rübergekommen :D .
Gruß
Thomas
kruemmel
 2007-01-09 00:51
#72927 #72927
User since
2006-02-12
33 Artikel
BenutzerIn
[default_avatar]
ja. Ihr habt mich überredet. Eure Aussagen klingen logisch. Etwas habe ich ja auch schon von diesen Trennungen gehört. Ist ja auch leichter zu verwalten. Das Beispiel von inspire sah bloß recht einfach aus und als Neuling ist man froh wenn etwas einfacher rüber kommt um überhaupt erst einmal was auf die Beine zu stellen. Sagt mal kennt ihr vielleicht ein gutes Buch wo Perl im Zusammenhang mit HTML (Webprogrammierung) besser und vor allen Dingen auf moderner Art beschrieben wird. Ich habe mir jetzt schon mal drei Bücher (Einführung in Perl, Perl Kochbuch und Programmieren mit Perl) vom oreilly Verlag zugelegt. Das sind echt mächtige Werke die zeigen wie umfangreich Perl ist. Aber Rom wurde ja auch nicht an einem Tag erbaut. Vielleicht kennt ihr ja auch die eine oder andere gute Web-Seite (Tutorials, Foren etc.) die sich mit Perl beschäftig. Ein gutes Perl Forum habe ich ja hier schon gefunden. Muss schon echt sagen die Antworten die man hier bekommt haben professionellen Charakter und sind immer schnell da wenn man sie braucht. Danke nochmal für eure Geduld.
renee
 2007-01-09 08:45
#72928 #72928
User since
2003-08-04
14371 Artikel
ModeratorIn
[Homepage] [default_avatar]
Alles was ich verwendet habe ist CPAN:DBI. Mehr dazu findest Du unter http://perl.renee-baecker.de/perl_datenbanken.pdf.

Und CPAN:HTML::Template::Compiled. Da das sehr ähnlich (von Syntax und Features der Templates) wie CPAN:HTML::Template ist, dürfte für Dich http://perl.renee-baecker.de/HTML_Template.pdf interessant sein.
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
 2007-01-09 10:43
#72929 #72929
User since
2005-12-17
1615 Artikel
HausmeisterIn
[Homepage]
user image
[quote=sesth,08.01.2007, 22:24]Deshalb hat man schon vor knapp 10 Jahren CSS (Cascading Style-Sheets) erfunden um beides trennen zu können. In HTML wird die Struktur angelegt und in CSS das Layout. Das bietet Dir dann später den Vorteil, nur durch Modifikation der CSS-Vorgaben das Layout zu ändern (Z. B. Änderung der Farben). In der veralteten Variante führen solche Änderungswünsche zu Änderungen im Perl-Quellkode, was unerwünscht ist, da ja lediglich Konfigurationsdaten (Layout) angepasst werden sollen.[/quote]
Nicht, wenn man die dritte Ebene berücksichtigt hat -> Trennung von
Programmcode und HTML. Deshalb halte ich CGI für veraltet. Das Beispiel
von renee ist makellos.
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.
Ronnie
 2007-01-09 11:52
#72930 #72930
User since
2003-08-14
2022 Artikel
BenutzerIn
[default_avatar]
[quote=opi,09.01.2007, 09:43](...) Deshalb halte ich CGI für veraltet. Das Beispiel
von renee ist makellos.[/quote]
Habe ich auch einige Zeit gedacht, aber CPAN:CGI zur Konstruktion von HTML geht sehr zügig und wenn keine WebDesigner nochmal ran soll, halte ich es für völlig legitim.

renees Beispiel für Templating könnte sogar noch minimal vereinfacht werden:
Code: (dl )
1
2
# $class = 1 if $col2 eq 'hallo';
my $class = $col2 eq 'hello' ? 'red' : 'green';

und dann im Template:
Code: (dl )
1
2
3
    <td class="<!-- TMPL_VAR NAME=CLASS -->">
<!-- TMPL_VAR NAME=VALUE -->
</td>

Wobei ich die ASP-Style Tags bevorzuge.

Hier noch ein Beispiel für ein ähnliches Skript mit CPAN:CGI und CPAN:HTML::Table:
Code: (dl )
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
#!/usr/bin/perl

use strict;
use warnings;

use CGI;
use HTML::Table;

my $cgi = CGI->new;
print # $cgi->header,
$cgi->start_html;

my $t = HTML::Table->new( [map {
s/\b\son/_on/; [split /\s+/]
} split /\n/, qx/df -h/]);

$t->setRowStyle($_,
$_ % 2 == 0 ? 'background-color: #ddd;' : 'background-color: #6d6;'
) for (1..$t->getTableRows);
$t->setRowStyle(1, 'background-color: Ć color: #fff;');

print $t, $cgi->end_html;

Ist AFAIR durch Posts von renee und pq inspiriert gewesen - und aus meiner Sicht als Lösung für eine so simple Problemstellung genauso legitim wie eine Variante mit templating, aber u.U. schneller getippt. Bei größeren Dingen gibt es aber auch aus meiner Sicht keine Alternative zu Templating (bevorzugt mit CPAN:HTML::Template::Compiled).

EDIT: Typo\n\n

<!--EDIT|Ronnie|1168336473-->
<< |< 1 2 >| >> 16 Einträge, 2 Seiten



View all threads created 2007-01-07 21:21.