Scrivere programmi senza IDE grafico


18

Non sono sicuro che ciò sia possibile, ma ho visto alcuni video con esempi di programmazione in cui sembra che il programma sia stato scritto in una sorta di prompt dei comandi piuttosto che in un IDE grafico piacevole. Sono solo curioso di sapere cosa potrebbe succedere in questi video. È possibile scrivere un programma senza un IDE?

ecco due esempi: http://www.youtube.com/watch?v=hFSY9cWjO8o (@ 6 min) http://www.youtube.com/watch?v=tKTZoB2Vjuk (@ 5 min)

Qualcuno potrebbe spiegare come è fatto?

Grazie a tutti per l'ottimo feedback!


48
Ovviamente puoi scrivere un programma senza un IDE. Come pensi sia stato scritto il primo IDE?
Charles Salvia,

34
Ragazzi in questi giorni! Pensa di non poter scrivere programmi senza un IDE elaborato! Perché, ai miei tempi, dovevamo compilare noi stessi il codice della macchina, camminando in salita in entrambe le direzioni sulla neve ...
JSB ձոգչ

33
Questa domanda mi rende triste. Anche più della gente comune che presume che software e hardware siano qualcosa di magico - sei un programmatore, dovresti saperlo meglio! (E per la cronaca, conto come un bambino per le persone che hanno usato il codice macchina.)

10
Non è una riga di comando, è un editor di testo basato su terminali. Due dei più popolari editor di testo, vi ed emacs, vengono eseguiti nei terminali. (E anche la GUI, al giorno d'oggi).
Lennart Regebro,

4
@ jas- grazie per il commento costruttivo e perspicace.
Matt,

Risposte:


22

Tutto ciò di cui hai bisogno per scrivere un programma è un editor di testo e un compilatore (o un interprete se stai scrivendo in un linguaggio non compilato). Il codice è di solito solo testo semplice. In realtà, potresti scrivere qualsiasi programma immaginabile usando Blocco note di Windows e un compilatore C da riga di comando.

Molti programmatori non usano nemmeno gli IDE. Ho usato personalmente Gedit (un editor di testo Linux di base con l'evidenziazione della sintassi) per il tempo più lungo prima di passare infine a Eclipse.

In effetti, uso ancora Gedit quando voglio scrivere un semplice programma. A volte userò anche nano se voglio creare uno script veloce, perché sono troppo impaziente di aspettare il caricamento di un IDE.


2
Sono un grande fan di Gedit e KATE. Uso Nano quando modifico il codice in remoto.
Tim Post

8
Mi piace Notepad ++. :)
Mateen Ulhaq,

il mio +1 a nano e vi!
Crodjer,

4
In realtà non hai nemmeno bisogno di un editor di testo. In UNIX puoi scrivere codice con catin Windows con more ovviamente devi scriverlo bene la prima volta. Naturalmente, i programmatori veri usano le farfalle;) xkcd.com/378
OscarRyz

1
@OscarRyz - "'ovviamente c'è un comando emac per quello." +1 a Notepad ++ però
Jetti

11

@Matt, è più semplice di quanto sembri. Diamo un'occhiata al secondo video: stanno scrivendo un programma Python. Python è un linguaggio interpretato - il che significa che un programma scritto in Python non ha bisogno di essere compilato, deve solo essere interpretato per funzionare.

Se hai un semplice editor, come blocco note (windows) o nano (linux) puoi scrivere un semplice file di testo, nominarlo, diciamo "program.py", ed eseguire l'interpretazione dalla riga di comando, come di seguito:

python program.py

Se ad esempio vuoi programmare in Lua , puoi scrivere un semplice file di testo chiamato "program.lua"usando sia il blocco note che nano e scrivere una singola riga sul tuo file di testo come di seguito:

print("my first program in lua")

Quindi vai al prompt dei comandi (cmd su Windows, terminale in Linux) ed esegui il comando:

lua program.lua

I concetti chiave:

  • Un programma non elaborato è un file di testo. Tutto ciò di cui hai veramente bisogno per scrivere un programma è un editor di testo;
  • Se la tua lingua scelta è interpretata, avrai bisogno dell'interprete per eseguire il tuo programma (Lua, Basic, Python, ecc ...). Questo interprete deve essere installato sul tuo computer;
  • Se la tua scelta della lingua è compilata, avrai bisogno di una toolchain installata (principalmente un compilatore e un linker) per tradurre il tuo codice sorgente in un codice binario comprensibile e eseguibile dalla macchina. Ogni lingua (C, Java, C ++, C #, VB.Net, ecc ...) ha la sua toolchain.

Spero possa aiutare.


4
Notepad ++ è molto meglio per l'evidenziazione della sintassi! E non dimenticare di EMACS: D
K-RAN il

Haskell è un linguaggio compilato (che ha anche un interprete).
jsternberg,

Trovo Notepad2 (o Notepad2-Mod piuttosto) migliore di Notepad ++. ; P code.google.com/p/notepad2-mod
Spoike

@jsternberg, grazie per l'input su Haskell ... Davvero non conosco la lingua troppo bene per dirlo.
Machado,

1
@ K-RAN: tutto ciò che uso è Emacs, a meno che non stia usando XCode per la programmazione di iPhone. Con TRAMP è inarrestabile!
Josh,

10

Gesù, ora mi sento vecchio e non ho mai dovuto fare casino con le schede perforate o l'elaborazione in batch. Diavolo, ho dovuto usare un terminale cartaceo solo una o due volte nel corso della mia carriera universitaria.

Ecco come abbiamo fatto le cose nel tardo Cretaceo (circa 1986). Stavo lavorando su VAX / VMS tramite un terminale basato su caratteri VT220 ambra su nero che poteva essere visualizzato in 80x24 o 132x24.

Innanzitutto, hai avviato l'editor di testo:

$ EDIT/EDT HELLO.C

EDT era l'equivalente VMS di vi, che era in qualche modo in funzione tra DOS edlin e Notepad. Hai digitato il testo del tuo programma

#include <stdio.h>

int main(void)
{
  printf("Hello, Stupid\n");
  return 0;
}

salvato nel file e quindi uscito dall'editor.

Quindi hai eseguito il codice tramite il compilatore:

$ CC HELLO

Questo ha tradotto il codice sorgente in HELLO.C e ha generato il file oggetto HELLO.OBJ. Il file oggetto conteneva il codice macchina per il programma, ma non era ancora in una forma eseguibile. Per prima cosa, il codice binario effettivo per la printfchiamata non è presente; c'è solo un segnaposto per questo. Dovevi ancora eseguire il file oggetto tramite un linker , che incorporava il codice binario dalla libreria standard (e qualsiasi altra libreria di cui hai bisogno) e formattava il file in modo che potesse essere riconosciuto come eseguibile:

$ LINK HELLO

Il risultato di questo passaggio è il file HELLO.EXE, che è la versione eseguibile del programma.

La procedura è praticamente la stessa su qualsiasi sistema moderno; è solo che le toolchain specifiche sono diverse. Ad esempio, la sequenza di comandi su un tipico sistema Linux sarebbe

$ vi hello.c
$ gcc -o hello hello.c 

o

$ vi hello.c
$ gcc -c hello.c 
$ ld -o hello hello.o -lc

Da quando sono cresciuto in questo ambiente, non ho mai capito come qualcuno potesse aver bisogno di un IDE solo per scrivere il proprio codice. Tuttavia, all'inizio di quest'anno ho iniziato a lavorare in Java, e mentre Eclipse ha molti, molti difetti, posso capire come qualcuno può fare affidamento su un IDE per svolgere il proprio lavoro. Dato che Java è un linguaggio così grande rispetto a C, e dal momento che sto ancora cercando di ridurre i punti più fini della sintassi, aiuta ad avere un ambiente di sviluppo intelligente che sappia in quali pacchetti sono presenti determinati tipi e mi aiuta a organizzare le importazioni.


Mi dispiace così tanto che tu sia stato esposto al (V) omettere (M) aking (S) ystem in un'età così giovane e impressionabile. Spero che non abbia avuto conseguenze durature ...
Tim Post

2
@Tim Post: stai scherzando? Per me, quelli erano i bei tempi; da allora è stata tutta in discesa.
John Bode,

forse suono un po 'amaro. Tuttavia, a mia difesa, sono stato io a dover continuare a collegare insieme una rete 3270 guidata da Novell su anello token. Ne ho ancora delle negligenze, nonostante anni di terapia.
Tim Post

Interessante ortografia di "Mondo".

6

Si si lo è.

Così come è possibile fare il caffè senza schiumare contemporaneamente il latte, andare al lavoro senza anche parlare al telefono e fare le tasse o guardare le stelle senza ascoltare il "volo del calabrone" su un sistema audio surround, è possibile per compilare il codice senza eseguire anche un editor, un debugger, un sistema di analisi del codice e un gioco serpente.

Ma ... chi vuole davvero guardare le stelle in silenzio ?!


1
Saresti disposto a spiegare come?
Matt,

1
@Matt: un programma per compito ... Scrivi il codice in un editor , compila usando un compilatore , esegui il debug usando un debugger , fai una pausa e gioca a serpente .
Shog9

2
-1 Non penso che questo sia costruttivo.
sixtyfootersdude,

1
+1, non è distruttivo, è solo una metafora . Non aver paura dell'umorismo.
ern0

6

Editor? Non ho bisogno di nessun editor o IDE puzzolente per scrivere il codice:

cat << EOF > hello.c
/* This IS an example of writing code from the command line */
#include <stdio.h>

int main(void)
{
    puts("Hello, World!");
    return 0;
}

EOF

Tuttavia, è bello avere qualcosa per modificare il file in un secondo momento. Gli IDE (ambienti di sviluppo integrati) sono stati molto più lunghi di quanto molte persone suggeriscano nelle loro risposte. L'unico IDE che mi sia mai piaciuto davvero è stato quello fornito con Turbo C , che girava su DOS. Era come l'ossigeno per le persone che erano state costrette a passare il tempo con Edlin .

Ho provato molte "suite" IDE diverse su consigli di amici che non riuscivano a smettere di deliziare su quanto tempo risparmiano e su quanto rendono conveniente tutto. Ogni volta che mi siedo per cercare di usarne uno, trovo che lo combatto più che usarlo.

Per la maggior parte, uso solo il più semplice editor di testo. Il mio preferito sembra essere KATE, che viene fornito con KDE. Queste sono le caratteristiche che mi piacciono:

  • Ottima evidenziazione della sintassi
  • Codice pieghevole
  • Ricerca / sostituzione basata su regex semplice
  • Finestra shell integrata
  • Finestra del compilatore / debugger incorporata
  • Galleria di frammenti
  • Visualizzatore di simboli
  • Impronta di memoria estremamente leggera (alcuni dei miei progetti hanno diverse centinaia di file sorgente)
  • Schede semplici / finestre divise
  • Sessioni semplici anziché complessi "progetti"
  • Architettura plug-in (semi) semplice

Con solo quelle funzionalità di base, mi sento quasi viziato.

In realtà sono meno produttivo quando lavoro con IDE ricchi di funzionalità e per fortuna non ho mai sviluppato una dipendenza da uno.


Per la cronaca, la maggior parte delle funzionalità menzionate sono disponibili nell'editor di testo di qualsiasi programmatore moderno, non solo negli IDE.
Xiong Chiamiov

Odio infrangerlo, ma queste caratteristiche sono ciò che rende un IDE.
Devshorts

4

Un IDE non è un compilatore, un debugger o qualcosa di simile, è in realtà un front-end che ti consente di accedere a tutti questi, che sono in genere programmi separati. Dietro le quinte di Visual Studio c'è un compilatore a cui puoi accedere come programma separato, compilando i tuoi programmi dal prompt dei comandi e probabilmente c'è un debugger che è anche accessibile separatamente e così via - Non ho troppa familiarità con la sua infrastruttura perché non lo uso.

A seconda di chi chiedi, un IDE può essere molto utile o tende ad ostacolarti. Dipende anche da cosa stai scrivendo, dalle sue dimensioni, dal tuo stile di codifica e così via. Io, per esempio, non sento davvero il bisogno di usare troppo un IDE, ma credo che alcuni compiti siano meglio gestiti da esso (o, a seconda di come lo guardi, che sono troppo pigro per scrivere script / macro per quelli me stesso).


3

Certamente è. Nel primo video, si tratta della programmazione C. Per scrivere programmi C, è necessario quanto segue:

  • qualche tipo di file sorgente in cui è scritto il codice
  • una toolchain per trasformare questo file sorgente in un file binario, che è l'unica cosa che una CPU può capire alla fine.

A rigor di termini, non è necessario il file, ma non conosco alcun ambiente che non utilizza file per C / C ++. Pertanto, è necessario un editor per modificare il codice sorgente. Anche se qualcosa di semplice come il blocco note funziona, vuoi davvero qualcosa di più elaborato per fare la codifica (evidenziazione del codice, apertura di più file contemporaneamente, ecc ...).

Per il secondo punto, è necessario un compilatore (codice sorgente -> codice oggetto) e un linker (codice oggetto unito + supporto minimo per avviare il programma).

Anche con un IDE, la maggior parte delle attività eseguite dietro la scena può essere eseguita dalla riga di comando: ad esempio, in Visual Studio, l'IDE utilizza ancora i file e chiama i compilatori dalla riga di comando per te, ma potrebbe funzionare in altro modo ( e forse lo fa per una maggiore integrazione).

Quindi perché non usare un IDE? Alcune persone sono piuttosto ansiose del loro editor di codice, perché lo sanno davvero. Ad esempio, sono abbastanza produttivo con l'editor di codici vi. Gli IDE sono anche limitati se è necessario interagire con cose per le quali l'IDE non è stato progettato. C'è un compromesso qui che dipende dall'abilità del programmatore, dal progetto, dai linguaggi / strumenti di programmazione, ecc ... Alcune lingue non hanno nemmeno un IDE decente, altre altre sono quasi inutilizzabili senza una. Anche se non utilizzo IDE, un'area in cui penso che siano molto utili è il debug dell'integrazione per C e C ++.


Ho usato il blocco note per imparare a programmare in Java. Ho ottenuto Crimson Editor e ho usato gedit su Linux poco dopo, ma non ho toccato un IDE fino a probabilmente 2 anni dopo averlo raccolto per la prima volta. Il mio attuale lavoro è come programmatore Java.
Michael K,

sì, java è un tipico esempio in cui raramente ho incontrato persone che non usano un IDE. La lingua è solo uno dei fattori: dominio, dimensione, "cultura" tutti fattori. Ho usato raramente un IDE me stesso (oggi faccio principalmente Python e C, e non ho ancora visto un IDE Python decente).
David Cournapeau,

puoi usare tcc per compilare / eseguire programmi C senza creare file:printf '#include <stdio.h>\nint main() { printf("Hello, World\\n"); return 0; }' | tcc -run -
programmerjake

2

Puoi sicuramente scrivere programmi senza un IDE grafico. Per i linguaggi compilati (ad es. C o C ++) il processo dovrebbe andare in questo modo:

  1. Scrivi il programma nel tuo editor di testo preferito.
  2. Dalla riga di comando, invocare il compilatore e / o il linker che convertirà il programma in codice macchina eseguibile ed estrarrà le librerie esterne richieste. (Sono un po 'confuso sull'ordine di collegamento e compilazione qui, ma sono sicuro che qualcuno mi correggerà in pochissimo tempo. :))

Per linguaggi interpretati come PHP o Python, scrivi il codice nel tuo editor di testo preferito (o una shell interattiva come quella fornita da Python) e il codice viene eseguito da un programma interpretato. Ad esempio, per invocare uno script Python, avresti eseguito qualcosa di simile python.exe myScript.py.

Python non è un linguaggio puramente interpretato, poiché viene prima compilato, ma quel modulo compilato è gestito dall'interprete Python, quindi si adatta ancora alla definizione. Altre lingue come PHP sono interamente interpretate.


1

Sì, puoi scrivere il codice senza un compilatore e senza un IDE. Tutto ciò che sta scrivendo. Testo.


2
Saresti disposto a spiegare come?
Matt,

7
Digiti sulla tastiera.
Matteo Leggi il

Matthew significa che puoi scrivere un programma, ma inutilmente. :)
Abimaran Kugathasan il

2
@Abimaran Non sono sicuro al 100% di cosa intendi, ma puoi certamente eseguire / utilizzare un programma senza un compilatore o IDE. Le lingue possono essere interpretate, non solo compilate.
Matteo Leggi il

1
@Michael Non sono d'accordo. Non è interpretato più di quanto il motore analitico abbia interpretato la posizione dei suoi ingranaggi.
Matteo Leggi il

1

Penso che ti riferisca all'Integrated Development Environment (IDE). Forniscono suggerimenti sul codice e l'evidenziazione della sintassi tra le altre cose. Un compilatore prende semplicemente i file e li compila in codice macchina o codice byte. Un compilatore viene generalmente utilizzato da un IDE inviandogli un comando per compilare i file.

È possibile scrivere senza un compilatore. Queste lingue usano un "interprete" ed elaborano lo script in fase di esecuzione.


1
Saresti disposto a spiegare come?
Matt,

Oppure potresti programmare in binario :)
Michael K il

o usa CIL ..: P Matt dai video che ho visto puoi installare qualcosa come BASIC e digitare ed eseguire istruzioni attraverso la riga di comando
Ross

1

Tutto ciò che fa un IDE è fornire diversi strumenti in un unico posto conveniente e quindi automatizzare alcuni processi. Questi strumenti sono generalmente ...

  • Un editor di testo
  • Un compilatore
  • Un debugger
  • Un visualizzatore di documentazione

Per scrivere la tua fonte puoi usare qualsiasi editor di testo che produca testo semplice, ad es. NotePad, Word o un editor di testo in codice appositamente costruito.

Una volta che hai la tua fonte in un file di testo, puoi avviare il compilatore tramite la riga di comando passando il tuo file di prova, ad esempio cc my_program.c Questo produrrà un file oggetto che puoi eseguire.

Per eseguire il debug del programma si avvia il debugger tramite la riga di comando che passa nel programma, ad es. gdb my_program È quindi possibile impostare punti di interruzione, scorrere il programma, ispezionare roba ecc.

Con un IDE tutto ciò accade con la semplice pressione di un pulsante dietro le quinte e l'IDE mette un'interfaccia utente di fantasia in cima a tutto.

PS. I veri programmatori usano la riga di comando


2
I veri programmatori usano schede perforate e costruiscono la propria CPU con transistor pre-MOSFET. Giocano anche a scacchi con pezzi di cemento e del peso di almeno 25 chili ciascuno.
Giobbe

1
@Job, i transistor sono per femminucce, il vero affare sono quelli: en.wikipedia.org/wiki/Vacuum_tube
Machado,

Pensavo che fossimo morsi e non potevamo sollevare un topo, tanto meno un pezzo degli scacchi.
Michael K,

2
I veri programmatori usano un ago magnetizzato e una mano ferma. xkcd.com/378
Goran Jovic il

1

Scrivo il mio codice di tutti i giorni in un editor VIM (editor di testo di base) e posso assicurarti che procede senza intoppi (la maggior parte del mio codice è PHP). Soprattutto perché il mio dev env è una distribuzione Linux di base Dev e approfitto abbastanza degli strumenti di shell. Ho programmato in questo modo per un anno ormai e questo mi ha aiutato molto quando ho a che fare con l'implementazione di applicazioni remote e modifiche di produzione in cui in genere hai avuto accesso a una console * Nix tramite ssh.


1

i computer con programmi memorizzati digitali sono in uso dagli anni '50, mentre le interfacce grafiche per l'utente hanno iniziato ad apparire solo alla fine degli anni '60 (e per gli utenti finali negli anni '80). Le persone dovevano usare - e programmare - i computer in qualche modo prima di allora.

Sebbene contenga alcune inesattezze (l'interfaccia di ogni piattaforma non è un livello sopra un sistema a riga di comando), probabilmente dovresti leggere il breve pezzo di Neal Stephenson In the Beginning Was the Command Line .

Ti farà davvero pensare a cose sul tuo computer sotto il cofano, e come sia "possibile" programmare senza un IDE, fare un vero lavoro con una riga di comando e così via.


1

Hai davvero bisogno solo di un editor di testo (l'inferno, il blocco note funzionerà) e un compilatore / interprete (la cosa più importante).

Hai detto qualcosa su come farlo tramite la riga di comando? La merda sembra folle, ma è molto ben possibile. Intendo solo usando il prompt dei comandi integrato di Windows puoi "scrivere" su un file tramite echo "some codez" > target_file.saucema dovresti farlo

A) Sii davvero bravo in quello che stai facendo

B) Scrivere un programma semplice

C) Sii pazzo di merda


1
... o cercando di impressionare qualcuno.
Michael K,

Oppure stai cercando di recuperare qualcosa da un sistema pesantemente sbiadito e non hai tempo per sostituire il monitor. Ci sono stato, l'ho fatto.
mu è troppo corto il

1

Devi davvero pensare che un IDE sia solo un Editor + Compiler + (una sorta di) Makefile + Debugger (a volte) + Graphic UI Builder (a volte), quindi ovviamente puoi scegliere di non usare affatto un IDE e sostituisci con un editor a tua scelta (vim, emacs, gedit, notepad ++, [insert_others_here]), un compilatore (jdk per java, gcc, platform SDK o [insert_Cpp_toolchain_here] per C ++, interprete python o qualunque toolchain abbia la tua lingua), una sorta di makefile (come autoh ... tools, cmake, ant, maven, ecc.), una sorta di debugger (che di solito è incluso con il compilatore), e se vuoi un bui builder grafico (mi viene in mente glade) e lì hai il tuo IDE senza un IDE. L'approccio migliore dipende da te (e penso che oggi gli IDE siano leggermente sopravvalutati)


1

lampeggia

Sta usando Pico, un nano clone. Lo uso di tanto in tanto. Di solito uso emacs, che è leggermente meno utile, ma più in primo piano.

Non utilizzo gli IDE come regola empirica. Di tanto in tanto mi sono imbattuto in loro per il debug o perché la toolchain della riga di comando era un dolore da trovare (ti guardava Xilinx). Li uso anche per disegnare C # nelle rare occasioni in cui eseguo una GUI. Ma gli IDE non sono ottimi editor per la mia esperienza: accordi di carattere strano, bizzarri, non molto facili da usare, non molte lingue supportate, occupano troppa memoria.

Preferirei usare emacs.

Dovresti esaminare la storia dell'informatica. È scritto in modo abbastanza accessibile e ti darà una prospettiva meravigliosa sul nostro lavoro.


1

Non hai nemmeno bisogno di un editor di testo. :) :)

Se sei in Windows prova questo:

more > hello.c 
#include <stdio.h>

main()
{
   printf ("Hello World!\n");
}
Ctrl-C

Se sei in UNIX

cat > hello.c <<. 
#include <stdio.h>

main()
{
   printf ("Hello World!\n");
}
.

E quindi compilarlo semplicemente con il compilatore della riga di comando preferito. :)

Ovviamente devi scriverlo bene la prima volta.

Ricorda che i veri programmatori usano le farfalle: http://xkcd.com/378/


0

Ecco cosa è divertente: Harvard Extension School sta insegnando la programmazione senza IDE ... a meno che telnet + pico sia ciò che intendi per IDE.

Il modo più semplice è utilizzare un editor di testo di base per scrivere i tuoi programmi Java, quindi trasferire i file sul sistema FAS utilizzando un programma FTP, connettersi tramite telnet e compilarli ed eseguirli su FAS (fas.harvard.edu - Java è già installato Là). DEVONO essere in FAS per poterli inviare per i compiti. Per utilizzare questo metodo, potresti voler imparare abbastanza su uno degli editor di testo Unix per essere in grado di apportare eventuali correzioni rapide necessarie ai tuoi file o pianificare di aggiornare il file localmente e trasferirlo nuovamente. Ulteriori informazioni sul trasferimento di file sono disponibili nella pagina Domande frequenti.

NON utilizzare un elaboratore di testi, ad esempio Word o WordPerfect! Aggiungono molti caratteri di formattazione che non vedi, ma che impediranno ai tuoi programmi di essere mai compilati. Su Windows, è possibile utilizzare Blocco note o Wordpad e assicurarsi di salvare i file come "Documento di testo" con l'estensione .java. Se il sistema tenta di aggiungere un suffisso ".txt", inserire virgolette attorno al nome del file e all'estensione nella casella Salva per evitarlo. Puoi anche provare uno qualsiasi degli editor nella sezione Download utili (uno che consigliamo vivamente per PC è Programmers File Editor). Sul Mac, utilizzare BBEdit Lite (anch'esso collegato nella pagina Risorse) o uno degli editor Unix integrati disponibili in una finestra Terminale. Puoi ottenere un programma telnet sicuro o utilizzarne uno che hai, telnet nel sistema FAS, e scrivi e modifica i tuoi programmi sul sistema. Ci sono tre editor Unix che puoi provare: pico, emacs e vi. Dopo aver scritto il programma e averlo salvato, quindi, come sopra, puoi compilarlo ed eseguirlo su FAS

http://www.fas.harvard.edu/~libe50a/homework.html http://www.fas.harvard.edu/~libe50a/faq.html http://www.fas.harvard.edu/~libe50a /java.html

Se me lo chiedi, stanno torturando i bambini, ma va bene. Ci sono più spartani, figuriamoci Mothakes, Perioikoi ed Helot di quanti Harvard possa ammettere in un dato anno.


Sì, è possibile. Suppongo che qualcosa come Notepad sia un no-IDE, ma emacs e Textpad (che ho usato entrambi per i corsi C, Java) sono considerati un IDE. Ora ... dopo aver codificato in C # in VS2010, con WinForms e tutto il resto, non vorrei tornare agli editor di testo al lavoro - sarei urlato per non aver fatto cazzate.

Per i progetti accademici, tuttavia, quando gli esempi sono piccoli, ha senso non utilizzare IDE. Ricorda: nelle lezioni di programmazione introduttiva non sono presenti molti problemi del mondo reale. Probabilmente non dovrai aggiungere file .xml come risorse a una dll; Probabilmente non avresti bisogno di eseguirne il debug, non dovrai utilizzare i contratti di codice o passare da un C ++ non gestito a C ++ / ClI, quindi a C # e viceversa. I compiti accademici non devono necessariamente essere disordinati perché possono essere svolti da zero e sono misurati in giorni-uomo / settimana. Tutti i file possono far parte di un solo progetto (anche per un compilatore o una classe OS). Un IDE come Visual Studio può effettivamente ostacolarti quando lo farà un semplice makefile. Pensa alle miriadi di opzioni che devi configurare. Lo stesso con Eclipse: è un editor troppo ingegnerizzato che è infinitamente personalizzabile. Un semplice makefile e due semplici file C potrebbero essere tutto ciò di cui hai bisogno. In effetti, tendi ad avere un maggiore controllo in quel modo, quando specifichi tu stesso ogni bandiera. Una volta ho programmato un codice del genere in un laboratorio universitario. È divertente, ma uno dei computer "incorporati" (nel senso che doveva essere così piccolo da adattarsi a un aeroplano) non aveva una GUI e nessun mouse :) Ero ancora in grado di accedere, modificare, compilare e eseguire il debug di un programma C, nonché aggiungere driver e ricompilare il kernel.


In realtà sono a metà strada d'accordo con questo approccio. Anche se non forzerei telnet - solo riga di comando ed editor di testo.
Michael K,

0

Per il funzionamento del database, è sufficiente un editor di testo (notepad ++) e un client della riga di comando come osql o sqlcmd. Neanche un compilatore.


0

È non solo possibile , ma - almeno una volta nella vita - si deve fare programmazione senza IDE. Ti aiuterà a capire il processo di compilazione, l'uso delle librerie - forse questo ti aprirà gli occhi su cosa significhi davvero programmare.

Inoltre, penso che un buon editor di testo sia migliore di un IDE. Per MS-Windows raccomando PSPad (è stato un flash così forte, come MultiEdit era nell'era MS-DOS), per GNU / Linux prova Geany (forse è nel repository della tua distribuzione).


0

Uso un taccuino da 99 centesimi con la mia fidata Pilot Gel Pen per scrivere programmi.

Ho appena riscritto il codice in Visual Studio.

Scrivere un programma e scrivere codice sono due cose diverse (per me).


Prima scrivi i programmi per intero a mano su carta?

@ Thorbjørn - L'ho già fatto in passato (per lo più giochi brevi) e quando sto lavorando su algoritmi di solito uso una lavagna per disegnarli invece di carta e penna.
rjzii,

Sì, scrivo molto codice a mano. Non l'intero programma, perché Visual Studio automatizza molte cose.
Pablo,

0

La programmazione senza IDE è un ottimo modo per imparare cosa sta succedendo.

Abbiamo iniziato a programmare a scuola con un semplice editor di testo colorato in sintassi. La compilazione è avvenuta con il prompt dei comandi (o tramite un semplice script batch).

Solo quando abbiamo capito le basi della programmazione siamo passati a editor più potenti come Eclipse o Visual Studio.


0

Come previsto, tutte le risposte dicono la stessa cosa: "certo che puoi! È solo testo! Testo testo testo testo!" Questo è vero, in generale, ed è la migliore risposta alla tua domanda. La maggior parte degli IDE manipola semplicemente il testo.

Ma non è sempre vero, e in alcuni casi l'allontanamento da un modello di solo testo comporta grandi progressi. Questi progressi sono generalmente respinti dai puristi del solo testo (che è la maggior parte di tutti, perché com'è stato è anche come dovrebbe essere ... non è una coincidenza ?!). IBM Visual Age è stato un esempio davvero interessante che è morto di una morte orribile.

Un altro esempio che viene in mente e prende a calci in culo ed è molto popolare è Interface Builder per la creazione di prodotti Mac e iOS. Il suo output NON sono programmi di testo ma piuttosto oggetti serializzati, quindi non è possibile creare NIB senza usare IB o scrivere il proprio IB.

I puristi diranno "sì, ma Interface Builder è scritto in codice di testo!" Così?

Credo davvero che CS come campo avanzerebbe notevolmente se potessimo andare oltre il paradigma del solo testo. Oltre a ciò, penso che alla fine andremo in questa direzione, ma ci vorranno decenni. Per prima cosa dovremmo capire quale è meglio, vio emacs...


0

Ultimamente ho aggiornato a Vim. Mi piace come evidenzia le parole chiave in qualsiasi lingua sto scrivendo. Sospiro, solo quando riesco ad accedere a un vero sistema operativo e non uso il blocco note.

Mia moglie ha scritto COBOL usando edlin. Ho pensato che fosse abbastanza divertente.

Un tale miglioramento rispetto alle carte keypunch che usavamo e le 24 ore passano dalle operazioni solo per scoprire che avevamo un errore di battitura.

Ho dei moduli di codifica da qualche parte in soffitta.

Hai avuto 1 e 0? Abbiamo dovuto tracciare una linea attraverso i nostri 0.

Ma oggi lo dici ai giovani e loro non ti crederanno.

j.

Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.