Fork

nova branca d'un procés o un projecte que inicia una nova versió, paral·lela a l'original, amb la seva pròpia evolució. From Wikipedia, the free encyclopedia

Remove ads

En informàtica, una bifurcació (o fork, de l'anglès, en el sentit de ramal) pot tenir diferents significats depenent del context.

Generalment, es refereix a una nova branca d'un projecte de programari que inicia una nova versió, paral·lela a l'original, amb la seva pròpia evolució. En poques paraules, una bifurcació és una aplicació desenvolupada a partir d'una existent. Normalment, el programa o aplicació de partida sol ser programari lliure, ja que la creació d'una bifurcació implica que els autors del projecte inicial han d'autoritzar la modificació, la utilització i la redistribució del codi font, fet que es troba implícit en les llibertats que atorga aquest tipus de programari.[1][2]

Un fork també pot ser una funció emprada en programació, com ara la funció fork d'UNIX, molt usada entre les aplicacions client servidor amb molts clients simultanis. De fet, la primera accepció té l'origen en la segona a causa del seu paral·lelisme: es crea un projecte nou a partir d'un altre d'idèntic sense destruir l'original.[3]

Remove ads

Característiques

  • Una bifurcació parteix d'una còpia idèntica del projecte original i a partir d'ella evoluciona.[4]
  • Permet experimentar i modificar el codi lliurement sense afectar el projecte original.[4]
  • Els canvis fets en la bifurcació no es reflecteixen automàticament en el projecte original, i viceversa.[4]
  • És útil per proposar modificacions a projectes de tercers o per utilitzar un projecte existent com a base per a noves idees.[4]
  • Sovint es crea per l'abandonament del manteniment del projecte original per part dels primers desenvolupadors.[5]
Remove ads

Bifurcacions conegudes

Distribucions de programari

La majoria de distribucions linux són descendents d'altres distribucions, la majoria a partir de Debian, Red Hat o Slackware. Donat que la major part del contingut d'una distribució és programari lliure, les idees i el lliure intercanvi de codi aporten profit a cada distribució. Les mescles (com ara United Linux o Mandriva) són rares. Exemples de bifurcacions de sistemes operatius:

  • Ubuntu, la famosa distribució Linux és una bifurcació de Debian, una de les primeres distribucions GNU/Linux.[6]
  • LinuxMint, la distribució coneguda per ser amable amb els usuaris novells, és una bifurcació d'Ubuntu, concretament de la seua variant Kubuntu.[7][8]
  • OpenBSD va ser una bifurcació de NetBSD 1.0, per Theo de Raadt.[9]
  • Mageia, distribució coneguda pel seu potent Centre de Control (MCC) i el seu enfocament en la simplicitat i la seguretat és una bifurcació de Mandriva.[10][11]

Programari d'escriptori

En són moltes les aplicacions d'escriptori que es basen en alguna prèvia per iniciar la seua existència:

Programari en el núvol

També, dins del programari que està pensat per oferir un servei a través d'un navegador hi ha molts exemples de forks, entre els més coneguts:

  • Nextcloud, el conjunt de programaris client-servidor destinat a l'allotjament de fitxers en el núvol, és un fork del programari ownCloud.[17]

Programari mòbil

Dins el programari destinat a dispositius mòbils també són conegudes moltes bifurcacions, tant pel que fa al sistema operatiu, principalment del sistema Android, ja que parteix d'una base de programari lliure anomenada AOSP (Android Open Source Project),[18][19] com pel que fa a les aplicacions, moltes d'elles allotjades en repositoris de codi com GitHub o GitLab.

  • LineageOS és un una bifurcació de la base lliure del sistema Android.[19]
  • RiMusic, una aplicació d'Android de codi obert i multilingüe per transmetre música des de YouTube Music és un fork de ViMusic.[20]

Més exemples

Gràcies a les 4 llibertats del programari lliure (concretament la quarta o "llibertat 3" de poder millorar un programa i publicar les millores) i gràcies a les funcionalitats de plataformes de control de versions com GitHub o altres, es poden trobar centenars o milers de forks d'aplicacions i fins i tot, amb coneixements suficients se'n poden crear de noves. Per trobar forks d'altres aplicacions allotjades a GitHub només cal mirar el botó "Fork" a la part superior dreta de la pàgina, al costat hi ha un número que indica quantes vegades s’ha fet un fork d’aquest repositori.[21]

Remove ads

Problemàtica

Les principals problemàtiques conegudes de la creació de bifurcacions són:

  • Fragmentació del desenvolupament: La divisió d'esforços pot portar a una fragmentació del desenvolupament, dispersant recursos i comunitat. A més, pot generar confusió entre els usuaris sobre quina versió utilitzar.
  • Compatibilitat i manteniment: Les bifurcacions poden tenir problemes de compatibilitat amb el projecte original a mesura que evolucionen per separat. El manteniment a llarg termini pot ser un repte, especialment si la bifurcació no aconsegueix una base d'usuaris i desenvolupadors prou gran.
  • Conflictes legals i de llicències: Poden sorgir problemes legals relacionats amb drets d'autor i llicències, especialment si la bifurcació no respecta les condicions de la llicència original.
  • Impacte en la comunitat: Les bifurcacions poden dividir la comunitat de desenvolupadors i usuaris, debilitant potencialment el projecte original.
  • Riscos sobre els desenvolupadors originals: Les bifurcacions poden actuar com una amenaça implícita, pressionant els desenvolupadors originals a mantenir un alt nivell de qualitat i a respondre a les demandes de la comunitat. Si una bifurcació guanya més popularitat que el projecte original, els desenvolupadors originals poden perdre el control i la influència sobre el projecte que van crear. Una bifurcació exitosa pot atreure desenvolupadors, usuaris i fins i tot finançament del projecte original, posant en perill la seva viabilitat.[22][23][24][25]
  • Apropiació del treball: Alguns veuen les bifurcacions com una manera d'aprofitar-se del treball fet per altres, especialment si la bifurcació no manté una bona comunicació amb el projecte original.[25][23]

Enllaços externs

Referències

Loading related searches...

Wikiwand - on

Seamless Wikipedia browsing. On steroids.

Remove ads