-
Data: 2010-02-25 19:46:39
Temat: Re: Jaki język?
Od: Andrzej Kmicic <d...@p...onet.pl> szukaj wiadomości tego autora
[ pokaż wszystkie nagłówki ]Stachu 'Dozzie' K. pisze:
> On 2010-02-25, Andrzej Kmicic <d...@p...onet.pl> wrote:
>> Mif pisze:
>>> PHP to IMO koszmar potrafiący skutecznie zniechęcić do programowania nawet
>>> dużo starsze osoby. Choć może niektórym odpowiadać, choć osobiście go
>>> bardzo nie lubię.
>> A co takiego koszmarnego w PHP ?. PHP to nie tylko język do młócenia
>> stronek za 100 zł. To łatwy, szybki język skryptowy o bardzo
>> uniwersalnym zastosowaniu.
>
> C też jest łatwym, szybkim językiem (kompilowanym akurat) o bardzo
> uniwersalnym zastosowaniu. I wiesz co? Nie do wszystkiego jest używany.
>
>> Wrzucę tu taka perełkę jaką znalazłem, no napisz to w innym języku tak
>> prosto w kilku linijkach.
>
> Może być Perl?
>
>> To tabelka tekstowa robiona z tablicy
>> dwuwymiarowej :
>>
>> +-----+----+----------------------+
>> | Pos | No | Driver |
>> +-----+----+----------------------+
>> | 1 | 1 | Kimi Räikkönen |
>> +-----+----+----------------------+
>> | 2 | 2 | Felipe Massa |
>> +-----+----+----------------------+
>> | 3 | 22 | Lewis Hamilton |
>> +-----+----+----------------------+
>> | 4 | 4 | Robert Kubica |
>> +-----+----+----------------------+
>>
>> function text_table($data) {
>> $keys = array_keys(end($data));
>> $size = array_map('strlen', $keys);
>> foreach(array_map('array_values', $data) as $e)
>> $size = array_map('max', $size,
>> array_map('strlen', $e));
>> foreach($size as $n) {
>> $form[] = "%-{$n}s";
>> $line[] = str_repeat('-', $n);
>> }
>> $form = '| ' . implode(' | ', $form) . " |\n";
>> $line = '+-' . implode('-+-', $line) . "-+\n";
>> $rows = array( vsprintf($form, $keys) );
>> foreach($data as $e)
>> $rows[] = vsprintf($form, $e);
>> return $line . implode($line, $rows) . $line;
>> }
>
> A fuj, jakie brzydkie spaghetti.
> #v+
> sub text_table {
> my ($two_dim_table) = @_;
>
> my ($position, $number, $driver);
>
> format STDOUT_TOP =
> +-----+----+----------------------+
> | Pos | No | Driver |
> +-----+----+----------------------+
> .
> format STDOUT =
> | @>> | @> | @<<<<<<<<<<<<<<<<<<< |
> $position, $number, $driver
> +-----+----+----------------------+
> .
>
> for my $r (@$two_dim_table) {
> ($position, $number, $driver) = @$r;
> write;
> }
> }
> #v-
>
Może byc perl ale Nie tak łatwo, nazwy kolumn bane są z nazw kluczy
tablicy asocjacyjnej. A szerokości kolumn ustalane są dynamicznie w
zaleznosci od tresci !!!.
AK
Następne wpisy z tego wątku
- 25.02.10 20:04 Stachu 'Dozzie' K.
- 25.02.10 20:16 Grzegorz Krukowski
- 25.02.10 21:51 Grzegorz Niemirowski
- 26.02.10 07:05 Stachu 'Dozzie' K.
- 26.02.10 08:42 Grzegorz Krukowski
- 26.02.10 09:14 lolo
- 26.02.10 12:27 jacem
- 26.02.10 12:39 Stachu 'Dozzie' K.
- 26.02.10 15:35 Grzegorz Krukowski
- 27.02.10 12:54 Jędrzej Dudkiewicz
- 27.02.10 13:56 jacem
- 27.02.10 14:05 jacem
- 27.02.10 16:01 Jędrzej Dudkiewicz
- 27.02.10 16:07 Arkadiusz Dymek
- 27.02.10 16:25 Grzegorz Krukowski
Najnowsze wątki z tej grupy
- 7. Raport Totaliztyczny: Sprawa Qt Group wer. 424
- TCL - problem z escape ostatniego \ w nawiasach {}
- Nauka i Praca Programisty C++ w III Rzeczy (pospolitej)
- testy-wyd-sort - Podsumowanie
- Tworzenie Programów Nieuprzywilejowanych Opartych Na Wtyczkach
- Do czego nadaje się QDockWidget z bibl. Qt?
- Bibl. Qt jest sztucznie ograniczona - jest nieprzydatna do celów komercyjnych
- Co sciaga kretynow
- AEiC 2024 - Ada-Europe conference - Deadlines Approaching
- Jakie są dobre zasady programowania programów opartych na wtyczkach?
- sprawdzanie słów kluczowych dot. zła
- Re: W czym sie teraz pisze programy??
- Re: (PDF) Surgical Pathology of Non-neoplastic Gastrointestinal Diseases by Lizhi Zhang
- CfC 28th Ada-Europe Int. Conf. Reliable Software Technologies
- Młodzi programiści i tajna policja
Najnowsze wątki
- 2024-12-01 "Chciałem zamówić kurs tym"
- 2024-11-30 Windykatorzy ścigają spadkobierców z mandat nieboszczyka za przekroczenie prędkości???
- 2024-11-30 Łódź => Technical Artist <=
- 2024-11-30 Lublin => Inżynier Serwisu Sprzętu Medycznego <=
- 2024-11-30 Warszawa => Microsoft Dynamics 365 Business Central Developer <=
- 2024-11-30 Bieruń => Team Lead / Tribe Lead FrontEnd <=
- 2024-11-30 Zielona Góra => Senior PHP Symfony Developer <=
- 2024-11-30 Gdańsk => Specjalista ds. Sprzedaży <=
- 2024-11-30 Lublin => Spedytor międzynarodowy <=
- 2024-11-30 Warszawa => Mid IT Recruiter <=
- 2024-11-30 Warszawa => Fullstack Developer <=
- 2024-11-30 Żerniki => Dyspozytor Międzynarodowy <=
- 2024-11-30 Warszawa => System Architect (background deweloperski w Java) <=
- 2024-11-30 Katowice => Key Account Manager (ERP) <=
- 2024-11-30 Immatrykulacja...