Je ne sais pas si c'est même possible, mais j'ai regardé quelques vidéos avec des exemples de programmation où il semble que le programme soit écrit dans une sorte d'invite de commandes plutôt que dans un joli IDE graphique. Je suis simplement curieux de savoir ce qui pourrait se passer dans ces vidéos. Est-il possible d'écrire un programme sans IDE?
voici deux exemples: http://www.youtube.com/watch?v=hFSY9cWjO8o (@ 6 min) http://www.youtube.com/watch?v=tKTZoB2Vjuk (@ 5 min)
Quelqu'un pourrait-il expliquer comment cela se fait?
Merci à tous pour vos bons commentaires!
Réponses:
Tout ce dont vous avez besoin pour écrire un programme est un éditeur de texte et un compilateur (ou un interprète si vous écrivez dans une langue non compilée). Le code est généralement en texte brut. Vraiment, vous pouvez écrire n'importe quel programme imaginable à l'aide du Bloc-notes Windows et d'un compilateur C en ligne de commande.
Beaucoup de programmeurs n'utilisent même pas d'IDE. J'ai personnellement utilisé Gedit (un éditeur de texte Linux de base avec mise en évidence de la syntaxe) pendant la plus longue période avant de finalement passer à Eclipse.
En fait, j'utilise toujours Gedit quand je veux écrire un programme simple. Parfois, je vais même utiliser nano si je veux créer un script rapide, car je suis trop impatient d'attendre le chargement d'un IDE.
la source
cat
sous Windows avecmore
évidemment vous devez l'écrire correctement la première fois. Bien sûr, les vrais programmeurs utilisent des papillons;) xkcd.com/378@Matt, c'est plus simple qu'il n'y paraît. Jetons un coup d'œil à la deuxième vidéo: Ils écrivent un programme python. Python est un langage interprété - ce qui signifie qu'un programme écrit en python n'a pas besoin d'être compilé, il doit simplement être interprété pour s'exécuter.
Si vous avez un éditeur simple, en tant que bloc-notes (windows) ou nano (linux), vous pouvez écrire un fichier texte simple, le nommer, disons
"program.py"
, et exécuter l'interprété à partir de la ligne de commande, comme ci-dessous:Si vous voulez programmer en Lua par exemple, vous pouvez écrire un simple fichier texte nommé en
"program.lua"
utilisant soit le bloc - notes ou nano et écrire une seule ligne sur votre fichier texte comme ci-dessous:Ensuite, allez à l'invite de commande (cmd sur windows, terminal sous linux) et exécutez la commande:
Les concepts clés:
J'espère que cela pourra aider.
la source
Jésus, je me sens vieux maintenant, et je n'ai même jamais eu à jouer avec les cartes perforées ou le traitement par lots. Bon sang, je n'ai eu à utiliser un terminal papier qu'une ou deux fois au cours de ma carrière universitaire.
Voici comment nous avons fait les choses à la fin du Crétacé (vers 1986). Je travaillais sur VAX / VMS via un terminal basé sur des caractères VT220 ambre sur noir qui pouvait s'afficher en 80x24 ou 132x24.
Tout d'abord, vous avez lancé l'éditeur de texte:
EDT était l'équivalent VMS de vi, se situant quelque part dans la capacité entre DOS edlin et Notepad. Vous avez tapé le texte de votre programme
enregistré dans le fichier, puis quittez l'éditeur.
Ensuite, vous avez exécuté votre code via le compilateur:
Cela a traduit le code source dans HELLO.C et généré le fichier objet HELLO.OBJ. Le fichier objet contenait le code machine du programme, mais il n'était pas encore sous une forme exécutable. D'une part, le code binaire réel de l'
printf
appel n'est pas présent; il n'y a qu'un espace réservé pour cela. Vous deviez toujours exécuter le fichier objet via un éditeur de liens , qui incorporait le code binaire de la bibliothèque standard (et toutes les autres bibliothèques dont vous avez besoin) et formaté le fichier afin qu'il puisse être reconnu comme un exécutable:Le résultat de cette étape est le fichier HELLO.EXE, qui est la version exécutable de votre programme.
La procédure est à peu près la même sur tout système moderne; c'est juste que les chaînes d'outils spécifiques sont différentes. Par exemple, la séquence de commandes sur un système Linux typique serait
ou
Depuis que j'ai grandi dans cet environnement, je n'ai jamais compris comment quelqu'un pouvait avoir besoin d' un IDE juste pour écrire son code. Cependant, au début de cette année, j'ai commencé à travailler en Java, et bien qu'Eclipse ait ses nombreux défauts, je peux comprendre comment quelqu'un peut s'appuyer fortement sur un IDE pour faire son travail. Étant donné que Java est un langage si énorme par rapport à C, et comme j'essaie toujours de réduire les points les plus fins de la syntaxe, cela aide à avoir un environnement de développement intelligent qui sait dans quels packages se trouvent certains types et m'aide à organiser les importations.
la source
Oui oui ça l'est.
Tout comme il est possible de faire du café sans faire mousser du lait simultanément, de se rendre au travail sans parler au téléphone et de faire ses impôts, ou de regarder les étoiles sans écouter "le vol du bourdon" sur un système de son surround, c'est possible pour compiler du code sans exécuter un éditeur, un débogueur, un système d'analyse de code et un jeu de serpent.
Mais ... qui veut vraiment regarder les étoiles en silence ?!
la source
Éditeur? Je n'ai pas besoin d'un éditeur puant ou d'un IDE pour écrire du code:
Cependant, c'est bien d'avoir quelque chose pour éditer le fichier plus tard. Les IDE (environnements de développement intégrés) existent depuis bien plus longtemps que beaucoup de gens ne le suggèrent dans leurs réponses. Le seul IDE que j'ai jamais vraiment aimé était celui fourni avec Turbo C , qui fonctionnait sous DOS. C'était comme de l'oxygène pour les gens qui avaient été contraints de fouiner avec Edlin .
J'ai essayé de nombreuses «suites» IDE différentes sur les recommandations d'amis qui ne pouvaient pas cesser de délirer sur le temps qu'ils économisent et la façon dont ils font tout. Chaque fois que je m'assois pour essayer d'en utiliser un, je trouve que je le combat plus que je ne l'utilise.
Pour la plupart, j'utilise simplement le plus simple des éditeurs de texte. Mon préféré se trouve être KATE, qui vient avec KDE. Ce sont les fonctionnalités que j'aime:
Avec juste ces fonctionnalités de base, j'ai l'impression d'être presque gâté.
Je suis en fait moins productif lorsque je travaille avec des IDE riches en fonctionnalités, et je suis reconnaissant de n'avoir jamais développé de dépendance à l'égard d'un seul.
la source
Un IDE n'est pas un compilateur, un débogueur ou quelque chose de similaire, c'est en fait un frontal qui vous permet d'accéder à tous ceux-ci, qui sont généralement des programmes distincts. Dans les coulisses de Visual Studio, il y a un compilateur auquel vous pouvez accéder en tant que programme distinct, compilant vos programmes à partir de l'invite de commandes, et il y a probablement un débogueur qui est également accessible séparément et ainsi de suite - je ne connais pas trop son infrastructure parce que je ne l'utilise pas.
Selon qui vous demandez, un IDE est soit très utile, soit il a tendance à vous gêner. Cela dépend également de ce que vous écrivez, de sa taille, de votre style de codage, etc. Pour ma part, je ne ressens pas vraiment le besoin d'utiliser trop un IDE, mais je pense que certaines tâches sont mieux gérées par lui (ou, selon la façon dont vous le regardez, que je suis trop paresseux pour écrire des scripts / macros pour ceux moi-même).
la source
C'est certainement. Dans la première vidéo, il s'agit de la programmation en C. Pour écrire des programmes C, vous avez besoin des éléments suivants:
À strictement parler, vous n'avez pas besoin de fichier, mais je ne connais aucun environnement qui n'utilise pas de fichier pour C / C ++. En tant que tel, vous avez besoin d'un éditeur pour modifier le code source. Bien que quelque chose d'aussi simple que le bloc-notes fonctionne, vous voulez vraiment quelque chose de plus élaboré pour faire du codage (surlignage de code, ouverture de plusieurs fichiers en même temps, etc.).
Pour le deuxième point, vous avez besoin d'un compilateur (code source -> code objet) et d'un éditeur de liens (code objet fusionné + support minimal pour démarrer le programme).
Même avec un IDE, la plupart des tâches effectuées en arrière-plan peuvent être effectuées à partir de la ligne de commande: par exemple, dans Visual Studio, l'IDE utilise toujours des fichiers et appelle des compilateurs sur la ligne de commande pour vous, mais cela pourrait fonctionner d'une autre manière ( et peut-être pour plus d'intégration).
Alors pourquoi ne pas utiliser un IDE? Certaines personnes sont assez anales à propos de leur éditeur de code, car elles le savent vraiment. Par exemple, je suis assez productif avec l'éditeur de code vi. L'IDE est également limité si vous devez interagir avec des choses pour lesquelles l'IDE n'a pas été conçu. Il y a un compromis ici qui dépend de la capacité du programmeur, du projet, des langages / outils de programmation, etc ... Certains langages n'ont même pas un IDE décent, d'autres langages sont presque inutilisables sans un. Bien que je n'utilise pas l'IDE moi-même, un domaine où je pense qu'ils sont très utiles est le débogage de l'intégration pour C et C ++.
la source
printf '#include <stdio.h>\nint main() { printf("Hello, World\\n"); return 0; }' | tcc -run -
Vous pouvez certainement écrire des programmes sans IDE graphique. Pour les langages compilés (par exemple C ou C ++), le processus devrait ressembler à ceci:
Pour les langages interprétés comme PHP ou Python, vous écrivez du code dans votre éditeur de texte préféré (ou un shell interactif comme celui fourni avec Python) et le code est exécuté par un programme interprété. Par exemple, pour appeler un script Python, vous devez exécuter quelque chose comme
python.exe myScript.py
.Python n'est pas un langage purement interprété, car il est d'abord compilé, mais cette forme compilée est exécutée par l'interpréteur Python, donc il correspond toujours à la définition. D'autres langages tels que PHP sont entièrement interprétés.
la source
Oui, vous pouvez écrire du code sans compilateur et sans IDE. Tout ce que c'est, c'est écrire. Texte.
la source
Je pense que vous faites référence à l'environnement de développement intégré (IDE). Ils fournissent entre autres des astuces de code et une mise en évidence de la syntaxe. Un compilateur prend simplement les fichiers et les compile en code machine ou code octet. Un compilateur est généralement utilisé par un IDE en lui envoyant une commande pour compiler vos fichiers.
Il est possible d'écrire sans compilateur. Ces langages utilisent un «interpréteur» et traitent le script au moment de l'exécution.
la source
Un IDE ne fait que fournir plusieurs outils en un seul endroit pratique, puis automatiser certains des processus. Ces outils sont généralement ...
Pour écrire votre source, vous pouvez utiliser n'importe quel éditeur de texte qui produit du texte brut, par exemple. Bloc-notes, Word ou un éditeur de texte de code spécialement conçu.
Une fois que vous avez votre source dans un fichier texte, vous pouvez ensuite lancer votre compilateur via la ligne de commande en passant dans votre fichier de test, par exemple cc my_program.c Cela produira un fichier objet que vous pourrez exécuter.
Pour déboguer votre programme, vous lancez votre débogueur via la ligne de commande passant dans votre programme, par exemple. gdb my_program Vous pouvez ensuite définir des points d'arrêt, parcourir votre programme, inspecter des trucs, etc.
Avec un IDE, tout cela se produit en appuyant sur un bouton dans les coulisses et l'IDE met une interface utilisateur sophistiquée au-dessus de tout cela.
PS. Les vrais programmeurs utilisent la ligne de commande
la source
J'écris mon code de tous les jours dans un éditeur vim (éditeur de texte de base) et je peux vous assurer qu'il se passe bien (la plupart de mon code est PHP). Surtout parce que mon env env est une distribution Linux de base Dev et je profite assez des outils shell. J'ai programmé comme ça depuis un an maintenant et cela m'a beaucoup aidé lors du déploiement d'applications à distance et des modifications de production où vous avez généralement accès à une console * Nix via ssh.
la source
les ordinateurs numériques à programme enregistré sont utilisés depuis les années 1950, tandis que les interfaces utilisateur graphiques n'ont vraiment commencé à apparaître qu'à la fin des années 1960 (et pour les utilisateurs finaux dans les années 1980). Les gens devaient utiliser - et programme - ordinateurs en quelque sorte avant.
Bien qu'il contienne certaines inexactitudes (toutes les interfaces utilisateur de la plate-forme ne sont pas une couche au-dessus d'un système en ligne de commande), vous devriez probablement lire le court article de Neal Stephenson In the Beginning Was the Command Line .
Cela vous fera vraiment réfléchir aux choses sur votre ordinateur, travailler sous le capot, et comment il est "possible" de programmer sans IDE, de faire un vrai travail avec une ligne de commande, etc.
la source
Vous n'avez vraiment besoin que d'un éditeur de texte (l'enfer, le bloc-notes fonctionnera) et d'un compilateur / interprète (la chose la plus importante).
Vous avez dit quelque chose à propos de le faire via la ligne de commande? La merde semble folle, mais c'est très bien possible. Je veux dire juste en utilisant l'invite de commande intégrée de Windows, vous pouvez «écrire» dans un fichier via
echo "some codez" > target_file.sauce
mais vous devrezA) Soyez vraiment bon dans ce que vous faites
B) Ecrire un programme simple
C) Soyez fou de merde
la source
Vous devez vraiment penser qu'un IDE est juste un éditeur + compilateur + (une sorte de) Makefile + Debugger (parfois) + Graphical UI Builder (parfois), alors bien sûr, vous pouvez choisir de ne pas utiliser d'IDE du tout, et vous remplacez les avec un éditeur de votre choix (vim, emacs, gedit, notepad ++, [insert_others_here]), un compilateur (jdk pour java, gcc, plateforme SDK ou [insert_Cpp_toolchain_here] pour C ++, interprète python, ou toute autre chaîne d'outils de votre langage), une sorte de makefile (comme autoh ... tools, cmake, ant, maven, etc.), une sorte de débogueur (qui est généralement inclus avec le compilateur), et si vous voulez un constructeur d'interface graphique (glade vient à l'esprit) , et là vous l'avez votre propre IDE sans IDE. La meilleure approche dépend de vous (et je pense que les IDE d'aujourd'hui sont légèrement surévalués)
la source
clignote
Il utilise pico, un nano clone. Je l'utilise occasionnellement. Habituellement, j'utilise emacs, ce qui est légèrement moins utile, mais plus en vedette.
Je n'utilise pas les IDE en règle générale. Parfois, je suis tombé dessus pour le débogage ou parce que la chaîne d'outils de ligne de commande était difficile à trouver (en vous regardant Xilinx). Je les utilise également pour esquisser C # dans les rares occasions où je fais une interface graphique. Mais les IDE ne sont pas de très bons éditeurs selon mon expérience: des accords de caractères rigides et étranges, pas très faciles à utiliser, peu de langues prises en charge, prennent trop de mémoire.
Je préfère utiliser emacs.
Vous devriez vous pencher sur l'histoire de l'informatique. Il est écrit de façon assez accessible et vous donnera une merveilleuse perspective sur notre travail.
la source
Vous n'avez même pas besoin d'un éditeur de texte. :) :)
Si vous êtes sous Windows, essayez ceci:
Si vous êtes sous UNIX
Et puis compilez-le simplement avec votre compilateur de ligne de commande préféré. :)
De toute évidence, vous devez l'écrire correctement la première fois.
N'oubliez pas que les vrais programmeurs utilisent des papillons: http://xkcd.com/378/
la source
Voici ce qui est amusant: Harvard Extension School enseigne la programmation sans IDE ... à moins que telnet + pico ne soit ce que vous entendez par IDE.
http://www.fas.harvard.edu/~libe50a/homework.html http://www.fas.harvard.edu/~libe50a/faq.html http://www.fas.harvard.edu/~libe50a /java.html
Si vous me demandez, ils torturent les enfants, mais ça va. Il y a plus de Spartiates, sans parler de Mothakes, Perioikoi et Helot que Harvard ne peut l'admettre au cours d'une année donnée.
Oui c'est possible. Je suppose que quelque chose comme le Bloc-notes n'est pas un IDE, mais emacs et Textpad (j'ai utilisé les deux pour C, Java coursework) sont considérés comme un IDE. Maintenant ... après avoir codé en C # dans VS2010, avec WinForms et tout, je ne voudrais pas retourner aux éditeurs de texte au travail - je serais crié de ne pas avoir fait de conneries.
Pour les projets académiques, cependant, lorsque les exemples sont petits, il est logique de ne pas utiliser d'IDE. N'oubliez pas: dans les cours de programmation d'introduction, de nombreux problèmes réels ne sont pas présents. Vous n'aurez probablement pas à ajouter des fichiers .xml comme ressources à une DLL; Vous n'auriez probablement pas besoin de le déboguer beaucoup, vous n'auriez pas besoin d'utiliser des contrats de code, ou de passer d'un C ++ non géré à C ++ / ClI, puis à C # et vice-versa. Les devoirs académiques ne doivent pas être compliqués car ils peuvent être effectués à partir de zéro et sont mesurés en jours / semaines. Tous les fichiers peuvent faire partie d'un seul projet (même pour un compilateur ou une classe OS). Un IDE comme Visual Studio peut réellement vous gêner lorsqu'un simple makefile fera l'affaire. Pensez aux myriades d'options que l'on doit configurer. Même chose avec Eclipse - c'est un éditeur sur-conçu qui est personnalisable à l'infini. Un simple makefile et deux simples fichiers C pourraient suffire. En fait, vous avez tendance à avoir plus de contrôle de cette façon, lorsque vous spécifiez vous-même chaque indicateur. J'ai codé comme ça dans un laboratoire universitaire une fois. C'est drôle, mais l'un des ordinateurs "embarqués" (c'est-à-dire qu'il devait être si petit qu'il pouvait tenir dans un avion) n'avait pas d'interface graphique et pas de souris :) Je pouvais toujours me connecter, éditer, compiler et déboguer un programme C, ajouter des pilotes et recompiler le noyau.
la source
Pour le travail de base de données, vous avez juste besoin d'un éditeur de texte (notepad ++) et d'un client de ligne de commande tel que osql ou sqlcmd. Pas même un compilateur.
la source
Ce n'est pas seulement possible , mais - au moins une fois dans votre vie - vous devez faire de la programmation sans IDE. Cela vous aidera à comprendre le processus de compilation, l'utilisation des bibliothèques - peut-être que cela vous ouvrira les yeux sur ce que signifie vraiment la programmation.
De plus, je pense qu'un bon éditeur de texte est meilleur qu'un IDE. Pour MS-Windows, je recommande PSPad (c'était un flash si puissant, comme MultiEdit l'était à l'époque MS-DOS), pour GNU / Linux essayez Geany (peut-être que c'est dans le dépôt de votre distribution).
la source
J'utilise un ordinateur portable à 99 cents avec mon fidèle Pilot Gel Pen pour écrire des programmes.
Je les ressaisis simplement dans Visual Studio le code.
L'écriture d'un programme et le codage sont deux choses différentes (pour moi).
la source
La programmation sans IDE est un excellent moyen d'apprendre ce qui se passe.
Nous avons commencé à programmer à l'école avec un simple éditeur de texte de couleur syntaxique. La compilation s'est produite avec l'invite de commande (ou via un simple script batch).
Ce n'est que lorsque nous avons compris les bases de la programmation que nous sommes passés à des éditeurs plus puissants comme Eclipse ou Visual Studio.
la source
Comme prévu, toutes les réponses disent la même chose: "bien sûr que vous pouvez! C'est juste du texte! Texte texte texte texte!" C'est vrai, d'une manière générale, et c'est la meilleure réponse à votre question. La plupart des IDE manipulent simplement du texte.
Mais ce n'est pas toujours vrai, et dans certains cas, l'abandon d'un modèle textuel entraîne de grandes avancées. Ces avancées sont généralement repoussées par les puristes du texte uniquement (ce qui est presque tout le monde, car comment-c'était-est aussi comment-il-devrait-être ... n'est-ce pas une coïncidence?!). IBM Visual Age était un exemple vraiment cool qui est mort d'une mort horrible.
Un autre exemple qui vient à l'esprit et qui donne des coups de pied et est très populaire est Interface Builder pour créer des produits Mac et iOS. Sa sortie n'est PAS des programmes de texte mais plutôt des objets sérialisés, vous ne pouvez donc pas créer de NIB sans utiliser IB ou écrire votre propre IB.
Les puristes diront: "Oui, mais Interface Builder est écrit en code texte!" Donc?
Je crois vraiment que CS en tant que domaine progresserait considérablement si nous pouvions aller au-delà du paradigme du texte uniquement. Au-delà de cela, je pense que nous irons finalement dans cette direction, mais cela prendra des décennies. Nous devons d'abord déterminer ce qui est le mieux,
vi
ouemacs
...la source
Dernièrement, je suis passé à vim. J'aime la façon dont il met en évidence les mots clés dans la langue que j'écris. Soupir, seulement quand je peux accéder à un vrai système d'exploitation et ne pas utiliser le bloc-notes.
Ma femme a écrit COBOL en utilisant edlin. Je pensais que c'était assez drôle.
Une telle amélioration par rapport aux cartes clavier que nous avions l'habitude d'utiliser et les 24 heures de rotation des opérations juste pour découvrir que nous avions une faute de frappe.
J'ai des formulaires de codage quelque part dans le grenier.
Vous aviez des 1 et des 0? Nous avons dû tracer une ligne à travers nos 0.
Mais vous dites cela aux jeunes aujourd'hui et ils ne vous croiront pas.
j.
la source