Crearea unei biblioteci de clasă care conține algoritmi de sortare - saturație în stivă în limba rusă

Nu se știe exact ce se înțelege prin biblioteca de clasă (cel mai bine este să discutați cu profesorul). Ar fi destul de posibil să gestionăm o clasă cu un set de metode statice, fiecare dintre acestea sorgindu-se cu un anumit algoritm. Dar mai mult orientat pe obiecte va intra în interfața algoritmului de sortare abstractă (ceva asemănător modelului "strategie") și îl va implementa de mai multe ori:







Și așa mai departe. Astfel de algoritmi ar fi mai convenabil de utilizat. De exemplu, dacă un cod mai complex utilizează sortarea în activitatea sa, acesta poate accepta obiectul SortAlgorithm și îl poate sorta, fără să se preocupe de algoritmul specific:







Și utilizatorul putea deja să transmită un algoritm specific.

În bibliotecă, desigur, metodele principale () nu sunt necesare. și, de asemenea, nu este necesar un cod care imprimă numerele (metode printNumbers ()). Ei bine, ar fi frumos să scrieți JavaDoc înainte de metode. Odată ce această bibliotecă se înțelege că altcineva poate folosi metodele și ar fi bine dacă știa ce fac metodele.

Metode auxiliare pe care pe bună dreptate le-ați declarat private. și lăsați-o în bibliotecă.

În general, crearea unei biblioteci deschise cu adevărat adult Java include:

  • Asamblarea automată (Maven, Gradle, etc.)
  • Un test bun pentru unitatea de acoperire
  • Publicarea unui proiect în sistemul de control al versiunilor (GitHub, BitBucket, etc.)
  • Publicarea în Maven Central
  • Conectarea la sistemul de integrare continuă (Jenkins, Travis, etc.)
  • Tutoriale, exemple, documentație bună, atitudine atentă față de utilizatori

răspuns dat dat 13 Sep 15 la 13:09







Trimiteți-le prietenilor: