Ci sono dei Web Framework per i principianti? [chiuso]

5

Stavo vagando se ci sono strutture come Google Web Toolkit per creare applicazioni Web? (App come Evernote, Spring Pad, Google Documenti, ecc.)

Sono fluente in Java ma potrei imparare una nuova lingua senza molti problemi. Quindi c'è qualche tipo di framework che mi permetterebbe di scrivere app Web senza preoccuparmi molto della progettazione di elementi dell'interfaccia utente e della comunicazione client-server?

Ne ho sentito parlare ... Vaadin. È qualcosa di simile a quello che sto cercando? Se sì, ci sono alternative?

Spero di creare un'app Web simile a questa: Gantter . Principalmente l'interfaccia utente e l'usabilità liscia.

    
posta Roshnal 11.12.2011 - 09:11
fonte

6 risposte

9

Python è un ottimo linguaggio per iniziare, Flask è anche un ottimo framework web per persone che vogliono imparare i fondamenti del web sviluppo, si chiama micro-framework, fa solo alcune cose, a differenza di altri framework.

Puoi utilizzare le librerie di terze parti o anche le tue personali per fornire nuove funzionalità.

Questo è più adatto per un principiante poiché non impari troppo in una volta.

Ecco un "Ciao, mondo!" app in Flask:

from flask import Flask
app = Flask(__name__)

@app.route("/")
def hello():
    return "Hello World!"

if __name__ == "__main__":
    app.run()

Tuttavia, se vuoi restare fedele a Java, c'è Play! , è facile da imparare e ha un set di funzionalità decente.

    
risposta data 11.12.2011 - 13:43
fonte
10

Suggerisco che il framework Django sia basato su Python (l'apprendimento di Python è molto semplice). Questo framework è ottimo per separare il codice webapp dall'interfaccia utente, ma NON fa l'interfaccia utente per te. puoi anche dare un'occhiata a Django Book

---- Esempio illustrativo da Django Book ----

Il modello di disegno MVC

Entriamo in un rapido esempio che dimostra la differenza tra l'approccio precedente e l'approccio di un framework Web. Ecco come potresti scrivere il codice CGI precedente usando Django. La prima cosa da notare è che l'abbiamo divisa in quattro file Python (models.py, views.py, urls.py) e un modello HTML (latest_books.html):

    # models.py (the database tables)

    from django.db import models

    class Book(models.Model):
        name = models.CharField(max_length=50)
        pub_date = models.DateField()


    # views.py (the business logic)

    from django.shortcuts import render_to_response
    from models import Book

    def latest_books(request):
        book_list = Book.objects.order_by('-pub_date')[:10]
        return render_to_response('latest_books.html', {'book_list': book_list})


    # urls.py (the URL configuration)

    from django.conf.urls.defaults import *
    import views

    urlpatterns = patterns('',
        (r'^latest/$', views.latest_books),
    )


    # latest_books.html (the template)

    <html><head><title>Books</title></head>
    <body>
    <h1>Books</h1>
    <ul>
    {% for book in book_list %}
    <li>{{ book.name }}</li>
    {% endfor %}
    </ul>
    </body></html>
    
risposta data 11.12.2011 - 09:26
fonte
4

Python è un ottimo linguaggio, ma secondo me PHP è più facile da apprendere, specialmente da uno sfondo Java; che è esattamente come è stato per me. Sono abbastanza sintatticamente simili (in certe aree ovviamente) ed è davvero facile configurare il tuo ambiente.

  • Windows: basta scaricare XAMPP
  • Mac: basta scaricare MAMP
  • Linux: puoi solo yum install httpd/php/mysql-server mysql

Detto questo, ci sono molti ottimi framework per PHP. CodeIgniter dovrebbe essere facile da imparare. È leggero e ben documentato. Io personalmente uso il Zend Framework . CakePHP è anche abbastanza facile da imparare. Consiglierei questi due per i principianti su Zend solo per semplicità.

Un semplice esempio (nome file: example.php ):

<html>
<head>
    <title>Very Simple Example</title>
</head>
<body>
    <?php
        $headline = 'This is a page headline';
        echo "<h1>{$headline}</h1>";

        $links = array(
            'http://framework.zend.com' => 'Zend',
            'http://codeigniter.com' => 'CodeIgniter',
            'http://cakephp.org' => 'CakePHP'
        );
    ?>

    <ul class="menu">
        <?php foreach ($links as $link => $label): ?>
            <li>
                <a href="<?= $link; ?>"><?= $label; ?></a>
            </li>
        <?php endforeach; ?>
    </ul>
</body>
</html>
    
risposta data 11.12.2011 - 09:44
fonte
2

Dai un'occhiata a ASP.NET MVC3. Se conosci Java allora raccogliere C # non dovrebbe essere un problema.

MVC3 nella mia esperienza è stato il più facile da capire rispetto a Django e Ruby on Rails. Ti aiuta a capire lo sviluppo web senza cercare di fare qualcosa di troppo elaborato o di complicare la gestione delle richieste. Hai un controller, un modello e una vista. Questo è tutto. E tu sei pronto per lo sviluppo. Ci sono tonnellate di documentazione e video che renderanno l'apprendimento non solo facile ma soddisfacente.

Vai a ottenere avviato .

    
risposta data 11.12.2011 - 14:04
fonte
1

Se stai cercando un'interfaccia utente preconfigurata facile, dare un'occhiata a JQueryMobile . È vero, è progettato per dispositivi mobili, ma il ragazzo è facile da usare e le tue app sembrano molto lisce.

Basta avere il tuo markup Java / Django / PHP / qualunque che sputi fuori l'applicazione che utilizza gli elementi html speciali di JQuery Mobile e incorporare l'ampia gamma di viste elenco, moduli, ecc. del framework e sei a posto.

    
risposta data 11.12.2011 - 10:11
fonte
0

Penso che l'OP cerchi un framework che consenta loro di scrivere il codice del server, e automaticamente generare i Javascript e CSS necessari. Non ne sono sicuro, (non l'ho mai usato) ma sembra un lavoro per Ruby on Rails / .NET? Penso che anche il framework Yii faccia qualcosa del genere. Potresti voler trasformare il problema in testa e usare Node.js e uno dei suoi framework (i.e Matador).

Detto questo, anche con i framework, gli sviluppatori web sono generalmente tenuti a conoscere un linguaggio server, css, html, JavaScript, un derivato SQL ... è una lunga lista. La maggior parte degli sviluppatori che conosco sono specializzati in UX (leggi js, css) o in una tecnologia server (PHP, python-django, ruby-on rails) all'inizio. Potresti non scoprire che il tuo santo graal esiste anche ...

    
risposta data 31.01.2012 - 08:49
fonte

Leggi altre domande sui tag