Domanda

io sto facendo la mia prima incursione in scala per un'applicazione di produzione. L'applicazione è disponibile il pacchetto come un file di guerra. Il mio piano è quello di creare un file jar della Scala compilato manufatti e aggiungere che nella cartella lib per il file di guerra. Il mio valorizzazione è un applicazione mysql-backed esposto tramite Jersey e sarà integrato con un sito 3rd party via HttpClient invocazioni. Io so come farlo tramite java pianura. Ma quando farlo in scala, ci sono diversi punti di decisione che sto Pussyfooting on.

  1. Scala 2.7.7 o 2.8 RC?
  2. querula È questa API pronto per la produzione?
  3. SBT vs Maven. Sto bene con Maven.
  4. C'è un wrapper idiomatica scala per HttpClient (o dovrei utilizzarlo proprio come in Java)?

Mi piacerebbe sentire i vostri commenti e le esperienze sul partendo con scala.

È stato utile?

Soluzione

  1. Vorrei usare 2.8.0. Ci sono semplicemente troppo molte caratteristiche utili a 2.8. Inoltre, 2.8 sta chiudendo in su un rilascio finale. Se siete appena agli inizi, perché non iniziare con questo? FWIW, Sto usando 2.8.0 dal Beta1, in vari strumenti e librerie che uso tutti i giorni. Mentre ci sono stati errori, non sono stati sufficienti a farmi cadere di nuovo a 2.7.7. YMMV, però.
  2. Questo non è andare a fare la vostra decisione più facile, ma ci sono altre possibilità di accesso al database. Sto usando SQueryL , per esempio; Mi piace. ORBroker è un'altra opzione.
  3. Se sei a tuo agio con Maven, quindi utilizzarlo, con tutti i mezzi. Personalmente, preferisco SBT. Ho la piena potenza di un linguaggio di programmazione vero e proprio, quando ho bisogno di implementare la logica speciale build. Proprio come utile, non ho a che fare con i file di configurazione XML. (XML è un bene per i dati, ma è un formato di merda per un file di configurazione curata da uomini.)
  4. Si potrebbe provare DataBinder Dispatch. Vedere questo articolo per una bella panoramica.

Altri suggerimenti

  1. Se si sta solo andando a iniziare lo sviluppo, Scala 2.8 GA sarà probabilmente disponibile per il momento si va di produzione. Anche se non lo è, vorrei scegliere il pacco 2.8RC più freschi piuttosto che attaccare alla 2.7.7. 2.8 non solo ha un certo numero di grandi caratteristiche, ma contiene anche un sacco di correzioni di bug 2.7.7.
  2. Non Ci sono troppi ORM pronti per la produzione progettati per Scala in questi giorni. Io probabilmente scegliere Sollevare Persistenza , perché del team di professionisti e comunità accogliente dietro Ascensore Framework. Ma se non si vuole rischiare, si dovrebbe considerare l'utilizzo di vecchio buon dimostrato Java ORM: Hibernate, JPA, iBatis (che è stato recentemente rinominato in myBatis), ecc
  3. Si dovrebbe dare SBT una prova! È compatibile con POM Maven, quindi la migrazione a SBT non dovrebbe essere troppo doloroso per te. Benefici da utilizzare SBT:
    • È progettato per Scala, in modo da essere sollevato dal fardello del mantenimento infinito numero di plugin per Maven per farlo funzionare con Scala costantemente
    • Si sarà in grado di script di build scrittura a Scala (è un'esperienza incredibile rispetto al XMLs)
    • SBT ha una caratteristica killer - continuo qualunque (costruzione, collaudo, distribuzione ). SBT controlla il vostro codice, rileva quando il suo cambiati, e attiva un'azione (test, ri-distribuzione, etc.).
Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top