Skip to content

Instantly share code, notes, and snippets.

🐦
fly like a bird ...

Kcko

🐦
fly like a bird ...
Block or report user

Report or block Kcko

Hide content and notifications from this user.

Learn more about blocking users

Contact Support about this user’s behavior.

Learn more about reporting abuse

Report abuse
View GitHub Profile
View pravidla.md
  1. Přístup k údajům vždy v rámci třídy zapouzdřete a poskytněte metody, pomocí nichž lze dané údaje získat.
  2. Svá rozhraní navrhujte tak, aby je bylo možné později rozšířit.
  3. V metodách tříd nezapouzdřujte jen údaje, ale také algoritmy, díky čemuž budou komplexní operace implementované centrálně na jednom místě.
  4. Znovupoužitelnost kódu je lepší než duplicitní kód.
  5. Vyvarujte se monolitickým strukturám a rozložte je na co nejmenší části, které mohou být implementované nezávisle na sobě. Pokud používáte rozsáhlé příkazy if/elseif/else nebo switch, popřemýšlejte, zda by se nedaly nahradit zaměnitelnými třídami.
  6. Dědění vede k neflexibilním strukturám. Na kombinaci různých funkcí používejte raději kompozice objektů.
  7. Vždy programujte vůči rozhraní, a nikdy ne vůči konkrétní implementaci.
  8. Vyhýbejte se těsným závislostem mezi jednotlivými třídami aplikace a vždy upřednostnujte volné vazby tříd.
View singleton.php
<?php
class DebuggerEcho implements Debugger
{
protected function __construct() {}
private function __clone() {}
public static function getInstance()
{
View app.php
<?php
interface Publication
{
public function open();
public function close();
public function setPageNumber($page);
public function getPageNumber();
}
View composite-nette.php
<?php
// dedicnost vs kompozice
// dedicnost
class PersonForm extends Nette\Application\UI\Form
{
public function __construct()
{
parent::__construct();
View Bridge-best.php
<?php
abstract class Content {
protected $filePath;
public function __construct (string $filePath) {
$this->filePath = $filePath;
}
View Visitor1.php
<?php
interface Entity
{
public function accept(Visitor $visitor): string;
}
class Company implements Entity
{
View BookIterator.php
<?php
class Book
{
private string $author;
private string $title;
public function __construct(string $title, string $author)
{
$this->author = $author;
You can’t perform that action at this time.