Perché CDC è basato sulle versioni precedenti di Java, invece di essere un sottoinsieme di SE corrente?

StackOverflow https://stackoverflow.com/questions/9430796

  •  12-11-2019
  •  | 
  •  

Domanda

Durante la programmazione in CDC reinvengo sempre la ruota, reimplementando cose come Arrays.toString(Object[]). Perché è in questo modo? Cdc (e FP, PBP, ecc.) Non poteva essere un sottoinsieme dell'edizione corrente di SE, invece di essere basato su una vecchia versione obsoleta?) Di Java?

Potrebbe esserci una buona ragione per questo, ma non riesco a vederlo.

È stato utile?

Soluzione

Sono - CDC è un sottoinsieme di quella che era la versione "corrente" di Javase quando è stata definita. (IE. CLDC1.0> JSR30> Approvato nell'agosto 1999> Basato su Javase 1.3)

CDC, CLDC, FP, PBP ... sono tutte specifiche - congelate nel tempo - non possono essere aggiornate. L'aggiornamento di una specifica significherebbe lanciarne una nuova (ad es. Cdc2.0) e quindi avresti alcuni dispositivi conformi a quello vecchio e alcuni a quello nuovo.

Oltre a ciò, considera la premessa "CDC è ... altamente ottimizzato per dispositivi limitati alle risorse, come prodotti di consumo e dispositivi incorporati"-e stiamo parlando di dispositivi limitati alle risorse nel 1999.

Altri suggerimenti

La risposta è semplicemente, la legge di Moore.

Nella sua solita formulazione, è espresso come "il numero di transistor su un chip economico a prodotto raddoppia approssimativamente ogni 18 mesi".

Tuttavia, guardato in un altro modo, potrebbe anche dire che se la "capacità" (cioè il numero di transistor) è tenuto fisso, il costo può essere abbassato nel tempo.

Questo è l'opinione che il comitato esecutivo di Java Me ha preso, quindi i dispositivi di riferimento non sono più potenti di quanto non fossero 4 o più anni fa, ma sono molto più economici. Questo è importante per lo spazio in cui CDC sta cercando di riprodurre, ma significa che i dispositivi sono in genere sottodimensionati rispetto a ciò che è necessario per un sottoinsieme SE.

È in corso un Rebaseline delle specifiche CDC, per avvicinarlo a SE. Anche Java 8, con il suo supporto per la modularità, lo renderà più semplice.

Alla fine l'obiettivo è la convergenza di me in un sottoinsieme di SE, ma questo richiederà ancora molte altre uscite.

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top