Jump to content

SUBIECTE NOI
« 1 / 5 »
RSS
Momentul Aprilie 1964

A fost lansat Ubuntu 24.04 LTS

Free streaming SkyShowtime de la ...

Skoda Fabia 1.0 TSI (110 CP)- 19 ...
 Mezina familiei, Merida BigNine

The Tattooist of Auschwitz (2024)

Se poate recupera numar de telefo...

Upgrade de la MacBook Pro M1 cu 8...
 Ce tip de monitor am nevoie pt of...

Resoftare camera supraveghere

Laptop Gaming

Cu ce va aparati de cainii agresi...
 Nu imi platiti coletul cu cardul ...

Exista vreun plan de terorizare p...

Schimbare adresa DNS IPv4 pe rout...

Recomandare Barebone
 

Câteva întrebări despre namespace-uri.

- - - - -
  • Please log in to reply
4 replies to this topic

#1
MembruAnonim

MembruAnonim

    MembruAnonim

  • Grup: Banned
  • Posts: 398,284
  • Înscris: 08.10.2015
Salutare!

Am așa:

Un folder numit "Scoli" și înauntru am folderele "Scoala_nr_1", "Scoala_nr_2" etc.

În folderul "Scoli" am clasa "Scoli". Clasă care este extinsă de clasele din folderele "Scoala_nr_1", ''Scoala_nr_2" etc.

Începutul clasei "Scoli" arată așa:

<?php
namespace Scoli;

class Scoli
{


În folderul "Scoala_nr_1" am clasa "Elevi", Iar începutul arată așa:

<?php
namespace Scoli\Scoala_nr_1;

use Scoli\Scoli;

final class Elevi extends Scoli
{


Întrebările sunt următoarele:

1. Știu că clasa "Scoli" ar trebui probabil să aibă numele "Base", poate, dar așa îmi e mai clar. E o greșeală ?

2. În clasa Elevi folosesc "use Scoli\Scoli;" ca mai apoi să extind clasa cu "extends Scoli". La fel de bine pot să folosesc "extends \Scoli\Scoli" fără să mai folosesc keyword-ul use. Cum este recomandat ? Să folosesc în fiecare clasă "use Scoli\Scoli;" sau să extind direct cu namespace ?

3. În clasa Elevi eu sunt în namespace-ul "Scoli" iar ca să extind clasa "Scoli" trebuie să folosesc tot namespace-ul clasei, adică "Scoli\Scoli". Fac eu ceva greșit sau mi se pare ? Adică, dacă sunt deja în namespace-ul "Scoli", nu ar trebui să pot include clasa "Scoli" folosind 'extends Scoli' (cum ar fi în cazul includerii unui fișier dintr-un director părinte "../scoli" ) ?

Dacă e posibil, vă rog să-mi răspundeți punctul la întrebări.

Mulțumesc!

#2
alx42

alx42

    Senior Member

  • Grup: Senior Members
  • Posts: 2,802
  • Înscris: 26.06.2014
ideea la astea era sa eviti conflicte cu clase din afara proiectului tau, in special cele din asa-zisele "frameworks".
in rest namespaceul in php e inutil si mai mult incurca

#3
OriginalCopy

OriginalCopy

    I'm harmful, fear me please! :))

  • Grup: Senior Members
  • Posts: 27,268
  • Înscris: 10.08.2006
Pe lângă ce s-a spus: pe mine mă îngrijorează mai mult acele "nr 1","nr 2".

Care e diferența dintre ele? Nu sună a design OOP bun.

Sună a abstractizări greșite. Sună a tăierea tortului (problema mare) în felii de-a latul, nu de-a lungul.

#4
MembruAnonim

MembruAnonim

    MembruAnonim

  • Grup: Banned
  • Posts: 398,284
  • Înscris: 08.10.2015
Codul de mai sus este doar un exemplu ca să poată cineva să-mi răspundă la întrebări. În realitate, clasele moștenitoare au denumiri diferite și fac lucruri diferite. Totuși, au câteva lucruri în comun. De asta e necesară extinderea clasei "Scoli".

Aș aprecia dacă mi-ar răspunde cineva și la întrebări.

#5
OriginalCopy

OriginalCopy

    I'm harmful, fear me please! :))

  • Grup: Senior Members
  • Posts: 27,268
  • Înscris: 10.08.2006

View PostCAD, on 27 mai 2020 - 01:07, said:

Codul de mai sus este doar un exemplu ca să poată cineva să-mi răspundă la ĂŽntrebări. În realitate, clasele moștenitoare au denumiri diferite și fac lucruri diferite. Totuși, au câteva lucruri ĂŽn comun. De asta e necesară extinderea clasei "Scoli".

Aș aprecia dacă mi-ar răspunde cineva și la ĂŽntrebări.

În exemplul tău fictiv, la fiecare dintre cele trei întrebări, răspunsul este:

- depinde
- e o chestiune de gusturi


Dacă vrei ajutor pentru realitate, trebuie să și vii cu structura claselor și numele lor din realitate.

Detaliile contează.

Anunturi

Second Opinion Second Opinion

Folosind serviciul second opinion ne puteți trimite RMN-uri, CT -uri, angiografii, fișiere .pdf, documente medicale.

Astfel vă vom putea da o opinie neurochirurgicală, fără ca aceasta să poată înlocui un consult de specialitate. Răspunsurile vor fi date prin e-mail în cel mai scurt timp posibil (de obicei în mai putin de 24 de ore, dar nu mai mult de 48 de ore). Second opinion – Neurohope este un serviciu gratuit.

www.neurohope.ro

0 user(s) are reading this topic

0 members, 0 guests, 0 anonymous users

Forumul Softpedia foloseste "cookies" pentru a imbunatati experienta utilizatorilor Accept
Pentru detalii si optiuni legate de cookies si datele personale, consultati Politica de utilizare cookies si Politica de confidentialitate