Skocz do zawartości
  • 👋 Witaj na MPCForum!

    Przeglądasz forum jako gość, co oznacza, że wiele świetnych funkcji jest jeszcze przed Tobą! 😎

    • Pełny dostęp do działów i ukrytych treści
    • Możliwość pisania i odpowiadania w tematach
    • System prywatnych wiadomości
    • Zbieranie reputacji i rozwijanie swojego profilu
    • Członkostwo w jednej z największych społeczności graczy

    👉 Dołączenie zajmie Ci mniej niż minutę – a zyskasz znacznie więcej!

    Zarejestruj się teraz

[Szukam] Programowanie obiektowe?


Gość tolvat

Rekomendowane odpowiedzi

Opublikowano

Siemka, szukam jakiegoś super wyje***** kursu programowania obiektowego w PHP, najlepiej jakiś PDF ^^

 

Potrafię programować strukturalnie, chyba tak to się nazywa, ale wszyscy mi mówią że teraz lepiej jest w obiektowym, że strukturalne jest słabe itd. Więc mam zamiar się nauczyć obiektowego, nie mam niestety kursu, jak znacie jakiś to piszcie ;)

Opublikowano

Chcesz kurs programowania obiektowego.

1. Naucz się pisać funkcje

2. Zerknij na ten kod :

<?php
class wanna {
function umyj($kto) {
return $kto.' umył się';
}
}
$czyscioch = new wanna();

echo $czyscioch->umyj('Kongo');
?>

 

TaDa ! I to naprawdę tyle.

 

 

EDIT: Strukturalne słabe ? Ciekawe co powiedzą gdy kod z funkcjami będzie miał 150Kb ,a połowe funkcji wykorzystują tylko w jednym pliku i to tylko raz.

 

Moja rada - pisz strukturalnie-obiektowo.

Opublikowano

http://php.pl/Wortal/Artykuly/PHP/Architektura/OO-Programowanie-obiektowe-w-praktyce

Proszę:)Sam z tego się uczyłem, obecnie większość skryptów piszę obiektowo.

Przyjmuje zlecenia dot. web masterki.

while(!$success){
....try();
}

 

Opublikowano

@Kongo

 

Podstawy itd. znam, chodzi mi o troszkę bardziej zaawansowane rzeczy, np. o to żebym zrozumiał czemu nie mogę zrobić tak:

 

class Klasa {
public function set() {
$this->costam = 'cos';
}

public function show() {
echo $this->costam;
}

}

 

Potem w pliku:

 


<?php ...

$klasa = new Klasa;

$klasa->set();
$klasa->show();

?>

 

Według mnie powinno się pokazać 'cos', może źle rozumuję... nie wiem, dlatego szukam jakiegoś dobrego kursu dla troszkę-zaawansowanych, a nie kompletnie początkujących.

Opublikowano

@UP

 

Ale "$this->costam" to jak zmienna, "$costam" według mnie, jeśli miałaby to być funkcja to musiałbym dodać nawiasy po nazwie "costam".

 

$this->costam = 'costam';

to według mnie:

$costam = 'costam';

 

Nie wiem czy to poprawnie.

 

@EDIT

 

Może wejdź do na GG to mi to wytłumaczysz ^^

Opublikowano

class Klasa {
private $pole;
public setPole($value){
  $this->pole = $value;
}
public getPole(){
  return $this->pole;
}
}

 

Niestety język php nie posiada właśćiwości dlatego jeśli chcemy przechować jakąś wartość powinno się to robić poprzez dodatkowe funkcje get i set, aby dostep do pola w klasie nie był bezpośredni. I wywoływanie "echo" w klasie to takie brzydkie, metody powinny tylko coś zwracać ( no ale wiadomo są specyficzne przypadki).

 

tak o wiele lepiej

echo $klasa->getPole();

Opublikowano

@UP

 

Okej, okej, coś rozumiem ^^ - czyli pierw muszę utworzyć zmienną i potem do niej przypisywać jakąś wartość, następnie dopiero mogę ją zwrócić i wyświetlić w kodzie, god dammit - to takie skomplikowane...

Opublikowano

to co napisałem to tylko przykład jak sobie radzić z polem w klasie, ale oczywiście można zrobić tak:

class Pracownik{
public $imie;
public $nazwisko;
}
$pracownik1 = new Pracownik();
$pracownik1->imie = 'damian';
$pracownik1->nazwisko = 'kowalski';

ale powinno sie stosowac sposób który poprzednio przedstawiłem

Opublikowano

Ja zamiast kursów poleciłbym jakąś książkę - z kursami na poziomie (prócz frameworkowych) jest słabo- choćby PHP Zaawansowane programowanie vademecum profesjonalisty. :-)

Opublikowano

Ja zamiast kursów poleciłbym jakąś książkę - z kursami na poziomie (prócz frameworkowych) jest słabo- choćby PHP Zaawansowane programowanie vademecum profesjonalisty. :-)

Również polecam. Cały rozdział 6 jest poświęcony właśnie obiektowemu php. Napisz mi na gg i podeśle Ci pliki z tego działu, które były na płycie. Jak bd. chciał więcej informacji nt. jakiejś części kodu to napiszesz i Ci napiszę jak jest w książce - nie potrafię tłumaczy, więc chociaż tak pomogę ;) GG masz w profilu - 2 spoiler

a7a3b8122182356e.png.8036b3d7be84292c9ea465f2360fa784.png

Zarchiwizowany

Ten temat przebywa obecnie w archiwum. Dodawanie nowych odpowiedzi zostało zablokowane.

×
×
  • Dodaj nową pozycję...