Quali linguaggi e abilità di programmazione sono richiesti inoltre quando si costruisce la piattaforma freelance con Python? [Chiuso

softwareengineering.stackexchange https://softwareengineering.stackexchange.com/questions/124461

Domanda

Ho una domanda sulla compatibilità e la co-integrazione di linguaggi di programmazione, database, framework, librerie, API diversa e altro (insieme indicati come "elementi"). Ho aggiunto un elenco di articoli che sono previsti per essere utilizzati quando si costruisce la piattaforma/mercante, ma vorrei sapere se mi manca qualcosa o se la combinazione data potrebbe comportare alcuni problemi di compatibilità.

Ho fatto una ricerca sugli articoli menzionati, ma c'è ancora un elenco di cose che non sono chiare, quindi sarei grato di ottenere maggiori informazioni sull'argomento. Spiacenti, se sono cattivo con terminologia, nome in codice o mancare punti preziosi per ottenere una risposta accurata, aggiungerò ulteriori informazioni, se richiesto chiarimenti in qualsiasi parte. Ecco le informazioni di base per aiutare a rispondere alla domanda:

Stiamo cercando di costruire una piattaforma freelance con bisogno di:
- alto livello di modularità e scalabilità;
- Sviluppo autonomo, che deve essere elaborato da gruppi di attività semi/completamente indipendenti;
- Capacità di integrare/importare molte API di terze parti (cioè Facebook Connect).
Prendiamo Odesk per il benchmarking (quindi almeno tali possibilità di funzionalità sono necessarie), dove alcune di esse sono:
- Processi aziendali / flusso di lavoro (cliente- connessione freelance, client- connessione consulente, ecc.);
- Elenco degli utenti e profilazione dettagliata (portafogli, progetti completati, ecc.);
- Ricerca semantica;
- ... (cioè. Almeno funzionalità piena di piattaforme freelance attualmente esistenti).

Ho sviluppato un elenco di articoli che verranno utilizzati nel processo di costruzione della piattaforma freelance, che è la seguente:

Lingua di programmazione (e framework): PHP (Zend) vs. Python (Django)
Criteri decisionali: modularità (facilità di aggiornamento dei singoli moduli | Biblioteca di moduli esistenti | Facilità di creazione di nuovi moduli) | Disponibilità di forza lavoro altamente qualificata | Tempo di sviluppo | standardizzazione (facilità di sviluppo autonomo).

Il risultato è stato la scelta di Python v2.x/v3.x su Php5.x. La decisione si basava su parte dei criteri decisionali (argomenti per Python):
Possibilità di aggiornare/modificare determinati moduli nella maggior parte dei casi senza la necessità di modificare altri moduli;
Nessun enorme problema per creare nuovi moduli da zero (o almeno non richiede più tempo o risorse rispetto allo stesso risultato in PHP);
L'approccio degli sviluppatori di Python sembra creare maggiori opportunità per lo sviluppo autonomo (la persona si sta sviluppando in un modo che gli altri possono sviluppare i loro moduli (o frammenti di moduli) separatamente o assumere il compito abbastanza facilmente dal punto in cui questa persona è finita, cioè. in aggiornamento).
Nel complesso Python sembra una soluzione più orientata a lungo termine, che non crea grandi svantaggi a breve termine.

Database: mysql vs.…:
Criteri decisionali: funzionalità | popolarità | Costi iniziali | spese generali
MySQL è stato scelto su MSSQL, in quanto sembra avere funzionalità completamente sufficienti (in versione gratuita) e può essere aggiornato alla versione aziendale quando avrà un senso finanziario in termini di spese generali di larghezza di banda rispetto alle commissioni di licenza.

Processi aziendali: Apache Ode vs. Oracle BPEL vs. ...
Regole di decisione: compatibilità di Python | modularità | Personalizzazione | Disponibilità di forza lavoro altamente qualificata
Nessuna decisione chiara qui ancora. L'attuale front-runner sembra essere Apache Ode, ma adottare moduli da una delle biblioteche Python, personalizzarle e crearne di nuove sembra essere anche un'opzione interessante al momento.

Front-end: HTML4/HTML5 + CSS2/CSS3 + AJAX;
All'inizio ci sarà solo l'interfaccia utente basata sul web, in seguito includeremo anche l'interfaccia utente desktop e mobile.

Ho elencato gli articoli che sono attualmente considerati per sviluppare la piattaforma, fare riferimento a uno qualsiasi dei punti nel processo decisionale se pensi che siano imperfetti e se dovrei considerare di più o criteri decisionali, che potrebbero influenzare che influenza Articolo da scegliere, ecc.

Altre cose in esame
1) ho scelto una combinazione adeguata di articoli considerando che verranno utilizzati per lo sviluppo della piattaforma freelance; (1.1) Mi mancano tutti gli elementi necessari (cioè linguaggio di programmazione / framework / piattaforma); 2) è ragionevole utilizzare Django Framework per risparmiare tempo sullo sviluppo e potrebbe comportare alcuni importanti problemi di scalabilità;

(2.1) quali librerie dovrebbero essere considerate utilizzate per acquisire il maggior numero possibile di moduli predefiniti per la piattaforma freelance;

3) BPEL (ad es. Usando Apache Ode) può essere adottato per una varietà di processi aziendali (compresa la connessione client-freelancer), ma non si tradurrebbe in grandi restrizioni di quali soluzioni possiamo offrire; (3.1) sarebbe meglio prendere in considerazione lo sviluppo dei nostri moduli in Python per ottenere il risultato necessario; (3.2) o c'è qualche biblioteca Python che supporta BPEL;

4) È possibile collegare Python con PHP in termini di utilizzo delle librerie PHP (esempio: http://code.google.com/p/php-excel/) quando quelli non sono disponibili in Python; (4.1) Se sì, quali moduli/piattaforme/soluzioni sono necessarie per esso; Aggiornerò tutte le parti se necessario non appena avrò feedback su di esso. Alla ricerca delle tue risposte. Grazie!

Nessuna soluzione corretta

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