Interviste con gli sviluppatori ExLibris
Makradar Della Tecnologia / / December 19, 2019
Bookplate - ex libris con il nome o il logo del proprietario del libro e informazioni sulla composizione della sua biblioteca. Tale nome interessante per la sua applicazione ha dato al giovane team di sviluppatori da Rostov-on-Don. programma di ex libris è lettore di libri in formato EPUB per caricare opere di funzione attraverso iTunes, via email o attraverso il web-brazuer Safari.
L'applicazione include la directory in cui sono di pubblico dominio opere classiche della letteratura russa e internazionale. area attrezzata con segnalibri e note, note, indice per navigare attraverso il menu lettura. Rendere la lettura agevole studiati per regolare la luminosità, tonalità, set di caratteri e l'orientamento della pagina cambia a seconda della posizione del dispositivo.
Ieri in AppStore un nuovo ExLibris versione. Insieme con alcune correzioni, la possibilità di lettore di opzione radicata disabilitare l'anti-aliasing testo e la sillabazione per le lingue russa e inglese. Approfittando di questa occasione, abbiamo deciso di porre alcune domande ai creatori ExLibris Mikhail Lyubimov e Aleksei Grebenets.
Michael, Alex, che cosa ti porta alla piattaforma Mac, che i prodotti Apple si usa nella vita quotidiana e il lavoro?
Michael:
In Mac OS, sono venuto abbastanza ornato per un programmatore di. In un primo momento, i miei strumenti erano di Windows e la piattaforma .NET, quindi Perl e Linux. Due anni fa, il direttore della nostra azienda "Boiling Point" ha suggerito che provo a scrivere applicazioni per la nuova piattaforma ai iPhoneOS tempo. Naturalmente non mi arrendo :). Da allora, le cose più interessanti che non riuscivano a trovare la direzione. Come lavoro e casa macchine utilizzano il MacBook, che è sufficiente per le mie esigenze. Da dispositivi mobili - forse l'intera gamma di iPhone e iPad Wi-Fi.
alex:
Io su questo tema non ha nulla da dire. Ho cominciato a sviluppare più di un caso =)
Quando l'iPad è stato nelle mie mani, mi ha colpito molto avere tre applicazioni: Weather HD, Alice e di iBook corso. Quali sono i programmi più interessanti da cui l'iPad può "battere" qualsiasi dispositivo di questo tipo, lo stesso Tab Galaxy da Samsung?
Michael:
Anche se non so come suonare uno strumento musicale, la prima applicazione iPad che mi ha colpito è Piano Magic - molto interessante attuazione del pianoforte, rivelando appieno le capacità multitouch dispositivo. Games - è Angry Birds e Plants vs Zombies. Per quanto riguarda il confronto c iPad alle dimensioni di altri dispositivi simili, credo che questo non è del tutto corretto. Ognuno di questi dispositivi ha la propria nicchia nel mercato.
alex:
Davvero difficile parlarne senza immaginare assomiglia Galaxy Tab. In generale, un forte effetto è stato solo sul fatto che si tratta di "balshoy iPhone."
Come è nata l'idea di sviluppare applicazioni per l'AppStore? Qual è il tuo ruolo nel progetto e che è stato coinvolto in esso oltre a te?
Michael:
Dato che il progetto solo due di noi, (e anche due programmatori) non rigida distribuzione dei ruoli. Ci sono compiti che un profilo per me, è per Alexis. Tutti i lavori sul lato server della domanda presentata programmatori web "punto di ebollizione". Con un design aiutato romana Martirosyan, per il quale molti grazie a lui! L'idea di nome dell'applicazione ex libris è venuto solo da lui.
Avete ulteriori applicazioni in aggiunta a ExLibris, già rilasciato per i dispositivi mobili?
Michael:
Del già rilasciato il più notevole è stata la mia prima app iProbkiChe per lungo tempo mantenuto in App russa AppStore e una serie di applicazioni progetto letterario "Etnogenesi" l'ultima versione di cui abbiamo già prodotto, insieme con Alexei.
Come è stato difficile per iniziare con Objective C? Quali problemi avete incontrato durante la fase di sviluppo?
Michael:
Problemi particolari in caso di incrocio con Objective C non era. Il linguaggio è abbastanza semplice da conoscere le basi di C e la comprensione dei principi OOP. Le difficoltà appaiono quando il recesso nei quadri in esecuzione come parte di iPhone SDK. Come avviene di solito 80% del progetto avviene nel 20% del tempo. Resto del tempo - la guerra per l'ottimizzazione del codice e il controllo di insetti componenti subordinati. Particolari difficoltà possono anche essere chiamati a supportare entrambe le piattaforme iPhone e iPad, in particolare i dispositivi più deboli - iPhone 3G.
alex:
Lo stesso linguaggio Objective-C è molto semplice rispetto a C e C ++. Tutte le informazioni relative alle differenze tra C e Objective-C viene inserito in una pagina wiki, in cui non è nemmeno necessario avere familiarità con C, poiché la maggior parte delle caratteristiche di C, non è possibile utilizzare a tutti. In Objective-C non ha questi problemi con la gestione della memoria in C e non ci sono difficoltà con i modelli in C ++. In generale è un buon linguaggio moderno, che si può tranquillamente mettere alla pari con linguaggi come Java o C #.
Ci sono anche alcune difficoltà, si riferiscono principalmente alla libreria standard. E 'già abbastanza grave documentazione (ad esempio, alcune funzioni può restituire solo un codice di errore, senza dire nulla circa la sua causa, e la descrizione di un tale errore non è spesso impossibile trovare alcuna documentazione, e nemmeno in google), spesso non evidente nomi dei metodi (ad esempio, per trovare l'occorrenza di una sottostringa nella stringa, è necessario utilizzare il metodo rangeOfString:, anche se il nome contiene la parola ritrovamento sarebbe abituato a), difficoltà nel modificare il comportamento predefinito di alcuni componenti (alcuni dei cose che sembrerebbero aver fatto solo consegnare un sacco di mal di testa - come un sacco di sforzo si spende se si tenta di tagliare intorno al UITextView componente frame).
Come è nata l'idea di creare un lettore per un bel pieno di una nicchia in AppStore? E 'possibile trarre profitto dall'applicazione di questo tipo o questo è solo un esempio delle proprie forze e capacità?
Michael:
Quando divenne chiaro che l'evoluzione della sala di lettura per etnogenesi riposato nel formato originale del libro, ho cominciato a scegliere già disponibile e la maggior parte dei formati più comuni. Ognuno di loro aveva i suoi svantaggi e limitazioni, in modo da scegliere EPUB, il più aperto e potente, a nostro avviso, in termini di formattazione caratteristiche del libro.
I lettori in AppStore è in realtà non così tanto. E per veramente di alta qualità generale abbastanza dita di una mano. Abbiamo deciso di provare a riempire la lista della vostra applicazione. Naturalmente, in aggiunta alla versione gratuita della sala di lettura, siamo interessati al problema e pagare le applicazioni (o con contenuti a pagamento) basato sul motore stabilita. Per fare questo, siamo alla ricerca di partner che vogliono vendere i loro contenuti (libri, riviste, o in qualsiasi formato simile per la pubblicazione).
alex:
L'idea è sempre stata. Il primo lettore è stato implementato nell'applicazione "Maroussia" Leggi suddivisi in file di testo semplice e solo in grado di spostare la tabella dei contenuti (questo era molto prima iBook). A poco a poco, questo lettore è stato migliorato, finché un giorno si è deciso di provare ad andare in mostra epub. Abbiamo deciso di provarlo.
I ricavi da questa applicazione naturalmente possibile motore, come tanto necessaria per la lettura di libri. Reader - è solo l'occasione per rompere nel motore e prepararlo per l'integrazione in altre applicazioni.
Ecco perché il lettore è libero. Questo è solo un sito di prova =)
Le applicazioni di altri sviluppatori hanno studiato a lungo e duramente. Abbiamo guardato a quelle funzioni, che sono stati in ciascuno di essi (stanza, amazon, booq, iBook, Kobo, freebooks, i2Reader e altri), ha esaminato le interfacce e le recensioni. In un certo senso libris - è la compilazione di tutti i più utili degli altri e-reader =)
Su ciò che era di concentrarsi nella creazione di ex libris?
Michael:
L'obiettivo principale, naturalmente, focalizzata sulla usabilità dell'applicazione, stabilità e massimo formato supportato. Ora, quando lei è la seconda versione dell'applicazione, abbiamo sempre trattare tutti coloro che vengono a noi i rapporti sui problemi nelle recensioni delle applicazioni e degli utenti. La nuova versione sarà in grado di scrivere un feedback da dentro l'applicazione, e inviare il libro, che, a giudizio del lettore abbia problemi di visualizzazione in libris. Così, abbiamo in programma di migliorare il prodotto in base alle opinioni degli utenti. E, naturalmente, nei piani più densamente immediato per fare il design e usabilità dell'interfaccia.
alex:
C'erano 3 problemi principali - parsing epub'a (le principali difficoltà connesse con css parsing), visualizzazione del testo su un piano (qui la complessità associata con la rottura degli elementi presenti nella pagina) e la memoria. la memoria applicazione non è sempre sufficiente, ed è terribilmente rallentato il processo di sviluppo.
Con l'analisi di epub'a complicato - il fatto che la struttura del file ePub standard, come ad esempio non esiste. Non v'è, come la maggior parte fanno, ma tuttavia, spesso è possibile trovare i libri in cui gli stili CSS non sono in un file separato e inserito nella Il titolo di ogni pagine XHTML, o libri che non hanno una tabella di file di contenuti a tutti, o un libro in cui tutto il testo (molto grande!) nascosto in un unico file.
Quindi ci doveva compromessi, stabilisce un elenco di casi in cui il lettore semplicemente non aprirà il libri. E, naturalmente, abbiamo avuto problemi con l'analisi css - supportare tutte CSS standard - si tratta di un compito molto difficile, è stato necessario scegliere solo un piccolo sottoinsieme di stili.
Visualizzazione del testo sul piano causato anche difficoltà. Il fatto è che l'unica biblioteca per disegnare il testo CoreText prima, abbastanza buggy, e, in secondo luogo, non permette un sacco di cose necessarie (ad esempio, non consente il rientro a sinistra di diritto bordo). Pertanto, nonostante il fatto che, come conseguenza CoreText costituito la base della domanda, quindi molte delle sue funzioni sono state sostituite da loro più stabile ed è estesa funzionalità.
I problemi con la mancanza di memoria, probabilmente ha iniziato anche prima della prima messa in funzione (o meglio, la prima esecuzione sul dispositivo non è riuscito proprio a causa della mancanza di memoria). In particolare cose terribili su iPhone 3G. E 'impossibile tenere in memoria è divisa in pagine l'intero libro (buttato tutto, ma il capitolo corrente), non è possibile mantenere in memoria il testo di capitoli (che significa che è più difficile da cercare). Dobbiamo risparmiare su tutto. Su texture su informazioni di testo sui controller ausiliario.
In questa fase, è con problemi di memoria sono i più importanti.
Come effetto 3D per la pagina di svolta è stato implementato?
alex:
Tecnicamente, è davvero effetto 3d è implementato utilizzando OpenGL. Tuttavia, se si guarda da vicino, vi renderete conto che non ci sono = 3d) In effetti, la pagina semplicemente piegata in modo ...
Michael:
È interessante notare che la maggior parte di coloro che stanno cercando di implementare un effetto simile a OpenGL iniziare ad attuare in "full 3D». Siamo andati dall'altra parte e abbiamo fatto senza di lui. Se a prima vista sembra naturale per ottenere l'effetto, abbiamo raggiunto il compito e non rovinare la spiegazione magica per la sua realizzazione tecnica :)
Ci sono ulteriori progetti per il mercato AppStore, ci sono già idee per la sua conquista? :)
Michael:
I piani sono certamente. In primo luogo, questa aggiunta il nostro lettore un'interessante biblioteca di libri e pubblicazioni che rivelano appieno il suo potenziale. C'è anche quasi un'applicazione finita per le nuove stazioni di servizio di valutazione geosocial. E 'prevista per il prossimo futuro.
alex:
Piani completi. E 'un peccato che nel giorno solo 24 ore.
Grazie Michael e Alex per le risposte interessanti e molto informativi alle nostre domande. Auguriamo loro buona fortuna e nuove idee!
pagina dell'applicazione ExLibris per iPad e iPhone (gratuita)
homepage Progetto ExLibris.