quickloox

Open full view…

App che cambiano il mondo

Tue, 25 Mar 2014 10:55:28 GMT

briand06
Tue, 25 Mar 2014 10:55:28 GMT

> Mentre scrivo, Macity mette in pole position sulla sua pagina l’importantissimo avvento di Punizione Pazzo, il gioco di calcio e logica che spopola gratis in App Store. Già la traduzione del nome del programma dice tutto... Come si fa ad appassionarsi a una roba del genere, con grafica che sembra disegnata da un bambino di 1° elementare? Mah. Molto meglio i giochi del Commodore 64 o dello Spectrum. Evidentemente il rimbecillimento non è localizzato solo qui, ma è a livello mondiale.

paoloo
Tue, 25 Mar 2014 11:10:40 GMT

Il Multipeer Connettivity Framework sarebbe utile sulle applicazioni di sistema, molto più usate, o magari implementato al livello generale di OS in modo da funzionare automaticamente per tutte le applicazioni senza dover scrivere codice ad hoc per ognuna. Non ho approfondito ma mi sembra che in questo modo ogni iPhone funga alla stregua di un router utilizzando il wi-fi.. e la privacy? garantita? Vado ad approfondire.

briand06
Tue, 25 Mar 2014 14:24:50 GMT

È più che altro un ripetitore. Imagino che i telefoni si scambino una password di crittazione (o gli utenti ne inseriscono una). Se usano (una specie di) crittografia a chiave pubblica la privacy è garantita. E comunque, immagino che installa FireChat sia consapevole di partecipare ad una rete di questo tipo.

energio
Wed, 26 Mar 2014 14:26:15 GMT

L'idea è interessante, ma ovviamente non nuova. La prima –non cronologicamente parlando, ma per similarità– cosa che mi ha fatto venire in mente è Netsukuku…

Lucio Bragagnolo
Wed, 26 Mar 2014 23:07:32 GMT

@paoloo: il _framework_ è implementato al livello generale di iOS, l'ho appena scritto.

Lucio Bragagnolo
Wed, 26 Mar 2014 23:09:23 GMT

Tanti programmi lo fanno, ma questo è il primo caso in cui, oltre ai _dati_, si porta la _connessione_.

paoloo
Thu, 27 Mar 2014 02:59:12 GMT

Il framework, essendo framework di un sistema operativo, è ovviamente implementato a livello di iOs in modo tale da che possa essere utilizzato da qualsiasi applicazione che, per utilizzarlo, deve contenere codice apposito che si interfacci a sudetto framework tramite le API (Application Programming Interface) per usufruire dei suoi servizi. Io intendevo implementato a livello di sistema operativo in modo tale da fornire i servizi di "Multipeer Connection" in maniera automatica a tutte le app che comunicano attraverso internet senza che queste debbano implementare codice ad hoc. Hai presente che su iOs qualsiasi programma che accede ad internet per visualizzare una pagina internet lo fa in maniera "automatica/diretta" ( / imposta ) tramite il framework di sistema WebCore? Ecco intendo qualcosa del genere, che qualsiasi app sfrutti il collegamento internet, vada poi in automatico ad utilizzare il Multipeer Connection per ovviare a casi in cui la connessione internet è mancante, senza che nelle app debba essere specificatamente dichiarato tramite codice ad hoc.

Lucio Bragagnolo
Thu, 27 Mar 2014 15:52:35 GMT

Faccio fatica a capire. Senza codice apposito che si interfacci, come fa una app a ricevere servizi _in maniera automatica?_ Qualsiasi programma iOS che accede a Internet per visualizzare una pagina, deve _chiamare_ WebKit e deve farlo con codice apposito che si interfaccia. Qualsiasi programma iOS che voglia usare Multipeer Connection, deve _chiamarlo_. Nel gergo, _chiamare_ sta per _usare una interfaccia di programmazione_, API. WebKit ha le sue API, Multipeer Connection ha le sue API. Sono ignorante di queste cose e ho bisogno di maggiore aiuto per capire la differenza.

paoloo
Thu, 27 Mar 2014 16:34:49 GMT

In parole povere basta "spostare"/"reimplementare" la suddetta funzionalità dallo stato di framework a sè stante inglobandola in un API più generica di "collegamento internet" e renderla automaticamente attiva... Il concetto è quello e non è impossibile, che esempio dovrei fare... Esistono tre macro-aree dove possono risiedere le funzionalità di un software: A- funzionalità implementata dall'applicazione e disponibile solo a se stessa B- funzionalità implementata in un framework e disponibile alle applicazioni che la richiedono tramite API C- funzionalità implementata nell'Os disponibile automaticamente al software che gira nel sistema Senza spingerci nel caso C, nella mia ipotesi stiamo ancora nel caso B: se un'applicazione utilizza chiamate API ad un framework solo per richiedere la connessione internet, dovrebbe avere free la funzionalità di Multipeer Connection senza doverla dichiarare esplicitamente. Tale funzionalità è inglobata in un API più generale, funzionalità sottintesa. Nel software si può fare di tutto rientrando nel limiti hardware imposti dalla ma cchina. Come rendere una funzionalità più o meno accessibile dalle applicazioni, se automaticamente, parzialmente, tramite framework, tramite triplo-click, dopo 3 ore, solo dopo le 18 di sera è questione delle scelte di architettura di un Os.

Lucio Bragagnolo
Thu, 27 Mar 2014 16:38:57 GMT

Che differenza c'è tra il caso B e il caso C? Come fa una app ad avere una funzionalità senza una riga di codice che chieda di avere quella funzionalità?

briand06
Thu, 27 Mar 2014 17:27:27 GMT

Perché, se ho capito bene, è il sistema operativo stesso che dirotta la richiesta ad un framework o all'altro. In altri termini, se cerchi una pagina con Safari e il SO si accorge che c'è connessione tramite wifi o umts, usa quella disponibile per accedere alla rete. Se non trova niente, prova ad usare il multipeer connectivity framework. Se ho capito bene: le mie conoscenze sono a livello di programmazione di sistema sono scarsissime... :(

paoloo
Thu, 27 Mar 2014 19:05:34 GMT

Si Briand il concetto è quello. E in quel caso il Multipeer Connection tecnicamente non sarebbe nemmeno un framework, ma una funzionalità base del sistema operativo.

Lucio Bragagnolo
Thu, 27 Mar 2014 19:40:15 GMT

Credo di avere capito, ma secondo me c'è un problema di terminologia. Wi-Fi è un _framework_, Bluetooth è un _framework_… _framework_ non è la distinzione tra quello che bisogna chiedere al sistema e quello che il sistema offre da sé.

paoloo
Thu, 27 Mar 2014 20:03:03 GMT

@Lucio Hai fatto bene a sottolinearlo. Un framework con un API pubblica è quello che bisogna usare per richiedere funzionalità dal sistema. Avevo usato la parola 'framework'

paoloo
Thu, 27 Mar 2014 20:03:27 GMT

in questa accezione.