🚀 go-pugleaf

RetroBBS NetNews Server

Inspired by RockSolid Light RIP Retro Guy

Article View: pl.comp.lang.php
Article #487

Re: return TABLICA

#487
From: leming nine
Date: Tue, 21 Aug 2001 15:28
51 lines
2326 bytes
 1. function cos() {
 2.     $i = 0;
 3.     while ($i <= 10)
 4.         $tmp[$i][1] = $i;
 5.         $tmp[$i][2] = $i;
 6.         $tmp[$i][3] = $i;
 7.         $tmp[$i][4] = $i;
 8.         $tmp[$i][5] = $i;
 9.         $i += 1;
10.     }
11.     return $tmp;
12. }

ad. 1: funkcja o nazwie 'cos' już istnieje.
ad. 2, 3, 9: zamiast ręcznie inicjować, sprawdzać
    warunek oraz inkrementować zmienną iterującą
    lepiej byłoby użyć specjalnie do tego przeznaczonej
    konstrukcji 'for'.
ad. 3-8: dlaczego nie ma tutaj zastosowanych parametrów,
    tylko funkcja zwraca _zafiksowane_ wartości?!
    Tak nie powinno się programować, ponieważ funkcje
    nie będą przydatne - nie przewidują każdej dostępnej
    kombinacji. To jak w matematyce -- funkcje powinny
    być jak wzory, przez które jedynie coś się przetwarza.
    Czyli nie:
        function zwróćPoleTrójkąta() { return 5;}
    ...lecz:
        function poleTrojkata($a, $h) {
            return (($a / 2) * $h);
        }
    Rozumiesz? To są podstawy programowania!
ad. 9: jeśli stosować skróty, to na całego! Dlaczego
    używasz operatora skróconego '+=' skoro mógłbyś
    zastosować '++'?

Na koniec wskazówka, że ja bym tą funkcję napisał tak:

    function foo($n, $m) {
        for ($i = 0; $i <= $n; $i++) {
            for ($j = 1; $j < $m + 1; $j++) {
                $tmp[$i][$j] = $i;
            }
        }
        return $tmp;
    }
    $result = foo(10, 5);

...co prawda nie widzę zastosowania :)

--
l9
Technical Details
Message-ID: <9ltuo5$ne3$1@okapi.ict.pwr.wroc.pl>
Path: mbox-mo1.pugleaf.net!news-archive.icm.edu.pl!pingwin.icm.edu.pl!mat.uni.torun.pl!news.man.torun.pl!news.man.poznan.pl!ict.pwr.wroc.pl!not-for-mail
References: <3b825e99@news.vogel.pl>

Show Full Headers
Complete Article Headers
Path: mbox-mo1.pugleaf.net!news-archive.icm.edu.pl!pingwin.icm.edu.pl!mat.uni.torun.pl!news.man.torun.pl!news.man.poznan.pl!ict.pwr.wroc.pl!not-for-mail
From: "leming nine" <l9spam@yt.ng.pl>
Newsgroups: pl.comp.lang.php
Subject: Re: return TABLICA
Date: Tue, 21 Aug 2001 17:28:27 +0200
Organization: yellowtree
Lines: 52
Message-ID: <9ltuo5$ne3$1@okapi.ict.pwr.wroc.pl>
References: <3b825e99@news.vogel.pl>
Reply-To: "leming nine" <l9spam@yt.ng.pl>
NNTP-Posting-Host: dial485.walbrzych.dialog.net.pl
Mime-Version: 1.0
X-Priority: 3
X-MSMail-Priority: Normal
X-Newsreader: Microsoft Outlook Express 5.50.4522.1200
X-MimeOLE: Produced By Microsoft MimeOLE V5.50.4522.1200
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit