Escrevendo programas sem IDE gráfico


18

Não tenho certeza se isso é possível, mas já assisti a alguns vídeos com exemplos de programação em que parece que o programa está sendo escrito em algum tipo de prompt de comando, e não em um IDE gráfico agradável. Estou curioso para saber o que pode estar acontecendo nesses vídeos. É possível escrever um programa sem um IDE?

aqui estão dois exemplos: http://www.youtube.com/watch?v=hFSY9cWjO8o (a 6 min) http://www.youtube.com/watch?v=tKTZoB2Vjuk (a 5 min)

Alguém poderia explicar como isso é feito?

Obrigado a todos pelo ótimo feedback!


48
Obviamente, você pode escrever um programa sem um IDE. Como você acha que o primeiro IDE foi escrito?
Charles Salvia

34
As crianças nos dias de hoje! Pense que eles não podem escrever programas sem um IDE sofisticado! Por que, no meu dia tivemos a compilar para código de máquina nós mesmos, andando para cima em ambos os sentidos na neve ...
JSB ձոգչ

33
Essa pergunta me deixa triste. Ainda mais do que as pessoas comuns assumindo que software e hardware são algo mágico - você é um programador, deve saber melhor! (E para que conste, eu propably contam como garoto para as pessoas que usaram o código de máquina.)

10
Não é uma linha de comando, é um editor de texto baseado em terminal. Dois dos editores de texto mais populares, vi e emacs, são executados em terminais. (E GUI também, hoje em dia).
Lennart Regebro

4
@ jas- obrigado pelo comentário construtivo e perspicaz.
Matt

Respostas:


22

Tudo o que você precisa para escrever um programa é um editor de texto e um compilador (ou um intérprete, se estiver escrevendo em um idioma não compilado). Código geralmente é apenas texto simples. Realmente, você pode escrever qualquer programa imaginável usando o Windows Notepad e um compilador C da linha de comando.

Muitos programadores nem usam IDEs. Eu pessoalmente usei o Gedit (um editor de texto básico do Linux com destaque de sintaxe) por mais tempo antes de finalmente mudar para o Eclipse.

De fato, ainda uso o Gedit quando quero escrever um programa simples. Às vezes, eu até uso o nano se quiser criar um script rápido, porque estou impaciente demais para esperar o carregamento do IDE.


2
Sou um grande fã do Gedit e da KATE. Uso o Nano quando estou editando o código remotamente.
Tim Post

8
Eu gosto do Notepad ++. :)
Mateen Ulhaq

meu +1 para nano e vi!
crodjer

4
Na verdade, você nem precisa de um editor de texto. No UNIX, você pode escrever código catno Windows, more obviamente, você precisa escrevê-lo da primeira vez. Obviamente, programadores de verdade usam borboletas;) xkcd.com/378
OscarRyz

1
@OscarRyz - "é claro que existe um comando emac para isso." +1 para o Notepad ++ embora
Jetti

11

@ Matt, é mais simples do que parece. Vamos dar uma olhada no segundo vídeo: Eles estão escrevendo um programa em python. Python é uma linguagem interpretada - o que significa que um programa escrito em python não precisa ser compilado, apenas precisa ser interpretado para ser executado.

Se você possui um editor simples, como bloco de notas (windows) ou nano (linux), pode escrever um arquivo de texto simples, nomeá-lo, digamos "program.py", e executar o interpretado na linha de comando, como abaixo:

python program.py

Se você deseja programar em Lua, por exemplo, pode escrever um arquivo de texto simples chamado "program.lua"usando bloco de notas ou o nano e escrever uma única linha no seu arquivo de texto, como abaixo:

print("my first program in lua")

Então vá ao prompt de comando (cmd no windows, terminal no linux) e execute o comando:

lua program.lua

Os principais conceitos:

  • Um programa bruto é um arquivo de texto. Tudo o que você realmente precisa para escrever um programa é um editor de texto;
  • Se sua escolha de idioma for interpretada, você precisará do interpretador para executar seu programa (Lua, Basic, Python, etc ...). Este intérprete deve estar instalado no seu computador;
  • Se sua escolha de idioma for compilada, você precisará de uma cadeia de ferramentas instalada (principalmente um compilador e um vinculador) para traduzir seu código-fonte em um código binário compreensível e executável por máquina. Cada linguagem (C, Java, C ++, C #, VB.Net, etc ...) possui sua própria cadeia de ferramentas.

Espero que ajude.


4
O Notepad ++ é muito melhor para destacar a sintaxe! E não se esqueça do EMACS: D
K-RAN

Haskell é uma linguagem compilada (que também possui um intérprete).
Jsternberg

Acho que o Notepad2 (ou o Notepad2-Mod) é melhor que o Notepad ++. ; P code.google.com/p/notepad2-mod
Spoike

@jsternberg, obrigado pela contribuição de Haskell ... Eu realmente não sei muito bem o idioma para dizer.
Machado

1
@ K-RAN: Tudo o que uso é o Emacs, a menos que esteja usando o XCode para programação do iPhone. Com o TRAMP, é imparável!
Josh

10

Jesus, agora estou velho e nunca tive que mexer com cartões perfurados ou processamento em lote. Inferno, eu só tinha que usar um terminal impresso uma ou duas vezes ao longo da minha carreira na faculdade.

Eis como fizemos as coisas no final do Cretáceo (por volta de 1986). Eu estava trabalhando no VAX / VMS por meio de um terminal baseado em caracteres âmbar sobre preto VT220 que poderia ser exibido em 80x24 ou 132x24.

Primeiro, você acionou o editor de texto:

$ EDIT/EDT HELLO.C

O EDT era o equivalente do VMS ao vi, caindo em algum lugar entre o DOS edlin e o Bloco de Notas. Você digitou o texto do programa

#include <stdio.h>

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

salvou-o no arquivo e saiu do editor.

Então você executou seu código através do compilador:

$ CC HELLO

Isso traduziu o código-fonte em HELLO.C e gerou o arquivo de objeto HELLO.OBJ. O arquivo de objeto continha o código de máquina do programa, mas ainda não estava em um formato executável. Por um lado, o código binário real da printfchamada não está presente; há apenas um espaço reservado para isso. Você ainda precisava executar o arquivo de objeto por meio de um vinculador , que incorporava o código binário da biblioteca padrão (e de qualquer outra biblioteca necessária) e formatava o arquivo para que pudesse ser reconhecido como um executável:

$ LINK HELLO

O resultado desta etapa é o arquivo HELLO.EXE, que é a versão executável do seu programa.

O procedimento é praticamente o mesmo em qualquer sistema moderno; é que as cadeias de ferramentas específicas são diferentes. Por exemplo, a sequência de comandos em um sistema Linux típico seria

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

ou

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

Desde que cresci nesse ambiente, nunca entendi como alguém poderia precisar de um IDE apenas para escrever seu código. No entanto, no início deste ano, comecei a trabalhar em Java e, embora o Eclipse tenha muitas, muitas falhas, posso entender como alguém pode confiar fortemente em um IDE para concluir seu trabalho. Como o Java é uma linguagem tão grande em comparação com o C, e como ainda estou tentando reduzir os pontos mais refinados da sintaxe, ajuda a ter um ambiente de desenvolvimento inteligente que saiba em quais pacotes estão os tipos específicos e me ajude a organizar as importações.


Lamento muito que você tenha sido exposto ao sistema (V) omitir (M) minha (S) em uma idade tão jovem e impressionável. Espero que não tenha resultado em conseqüências duradouras ...
Tim Post

2
@ Tim Post: Você está brincando? Para mim, esses eram os bons tempos; tudo foi ladeira abaixo desde então.
John Bode

talvez eu pareça um pouco amargo. No entanto, em minha defesa, eu era o único que tinha que continuar gravando juntos um 3270 rede muito ad hoc Novell conduzido ao longo de token ring. Eu ainda tenho nichtmares disso, apesar dos anos de terapia.
Tim Post

Ortografia interessante de "Mundo".

6

Sim Sim é isso.

Assim como é possível fazer café sem espumar leite ao mesmo tempo, dirigir para o trabalho sem também falar ao telefone e pagar seus impostos, ou olhar as estrelas sem ouvir "vôo da abelha" em um sistema de som surround, é possível compilar código sem também executar um editor, depurador, sistema de análise de código e jogo de cobra.

Mas ... quem realmente quer olhar as estrelas em silêncio ?!


1
Você estaria disposto a explicar como?
Matt

1
@ Mat: um programa por tarefa ... Escreva código em um editor , compile-o usando um compilador , depure-o usando um depurador , faça uma pausa e jogue cobra .
Shog9

2
-1 Não acho que isso seja construtivo.
sixtyfootersdude

1
+1, não é destrutivo, é apenas uma metáfora . Não tenha medo do humor.
ern0

6

Editor? Não preciso de editor fedorento ou IDE para escrever código:

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

No entanto, é bom ter algo para editar o arquivo posteriormente. O IDE (ambientes de desenvolvimento integrado) existe há muito mais tempo do que muitas pessoas sugerem em suas respostas. O único IDE que eu realmente gostei foi o que veio com o Turbo C , que rodava no DOS. Era como oxigênio para as pessoas que foram forçadas a brincar com Edlin .

Eu tentei muitas 'suítes' IDE diferentes com recomendações de amigos que não conseguiam parar de delirar quanto tempo economizam e quão convenientes eles tornam tudo. Toda vez que me sento para tentar usar um, percebo que luto mais do que o uso.

Na maioria das vezes, eu apenas uso os editores de texto mais simples. Meu favorito é o KATE, que vem com o KDE. Estes são os recursos que eu gosto:

  • Grande destaque de sintaxe
  • Dobragem de código
  • Pesquisa / substituição simples baseada em regex
  • Janela shell embutida
  • Janela do compilador inline / janela do depurador
  • Galeria de trechos
  • Visualizador de símbolos
  • Tamanho da memória extremamente leve (alguns dos meus projetos têm várias centenas de arquivos de origem)
  • Guias fáceis / janelas divididas
  • Sessões simples em vez de 'projetos' complexos
  • Arquitetura de plug-in (semi) simples

Com apenas esses recursos básicos, sinto que estou quase mimado.

Na verdade, sou menos produtivo ao trabalhar com IDEs ricos em recursos e grato por nunca ter desenvolvido uma dependência.


Para o registro, a maioria dos recursos mencionados está disponível no editor de texto de qualquer programador moderno, não apenas nos IDEs.
Xiong Chiamiov

Odeio dizer isso a você, mas esses recursos são o que faz um IDE.
Devshorts

4

Um IDE não é um compilador, um depurador ou qualquer coisa semelhante; na verdade, é um front-end que permite acessar todos esses programas, que normalmente são programas separados. Nos bastidores do Visual Studio, há um compilador que você pode acessar como um programa separado, compilando seus programas no prompt de comando e provavelmente há um depurador que também é acessível separadamente e assim por diante - não estou muito familiarizado com sua infraestrutura porque eu não uso.

Dependendo de quem você pergunta, um IDE é muito útil ou tende a interferir no seu caminho. Também depende do que você está escrevendo, do tamanho, do seu estilo de codificação e assim por diante. Eu, por exemplo, realmente não sinto muita necessidade de usar um IDE, mas acho que algumas tarefas são mais bem manipuladas por ele (ou, dependendo de como você o vê, tenho preguiça de escrever scripts / macros para mim).


3

Certamente é. No primeiro vídeo, trata-se de programação C. Para escrever programas em C, você precisa do seguinte:

  • algum tipo de arquivo de origem em que o código é gravado
  • uma cadeia de ferramentas para transformar esse arquivo de origem em um binário, que é a única coisa que uma CPU pode entender no final.

A rigor, você não precisa de arquivo, mas não conheço nenhum ambiente que não use o arquivo para C / C ++. Como tal, você precisa de um editor para editar o código fonte. Embora algo tão simples quanto o bloco de notas funcione, você realmente deseja algo mais elaborado para codificação (destaque do código, abertura de vários arquivos ao mesmo tempo, etc ...).

Para o segundo ponto, você precisa de um compilador (código fonte -> código do objeto) e um vinculador (código do objeto mesclado + suporte mínimo para iniciar o programa).

Mesmo com um IDE, a maioria das tarefas realizadas nos bastidores pode ser feita na linha de comando: por exemplo, no visual studio, o IDE ainda usa arquivos e chama os compiladores na linha de comando para você, mas pode funcionar de outra maneira ( e talvez faça mais integração).

Então, por que não usar um IDE? Algumas pessoas são bastante analistas sobre seu editor de código, porque realmente sabem disso. Por exemplo, sou bastante produtivo com o editor de código vi. O IDE também é limitado se você precisar interagir com itens para os quais o IDE não foi projetado. Há uma troca aqui que depende da capacidade do programador, projeto, linguagens / ferramentas de programação, etc ... Algumas linguagens nem têm um IDE decente, outras linguagens são quase inutilizáveis ​​sem uma. Embora eu não use o IDE, uma área em que acho que é muito útil é depurar a integração para C e C ++.


Eu usei o bloco de notas para aprender a programar em Java. Eu peguei o Crimson Editor e usei o gedit no Linux logo depois, mas não toquei em um IDE até provavelmente 2 anos depois de buscá-lo. Meu trabalho atual é como programador Java.
Michael K

sim, java é um exemplo típico em que raramente encontro pessoas que não usam um IDE. A linguagem é apenas um fator: domínio, tamanho, "cultura", todos os fatores. Eu raramente usei um IDE (eu hoje em dia faço python e C atualmente e ainda não vi um IDE python decente).
David Cournapeau

você pode usar o tcc para compilar / executar programas C sem criar arquivos:printf '#include <stdio.h>\nint main() { printf("Hello, World\\n"); return 0; }' | tcc -run -
programmerjake

2

Você certamente pode escrever programas sem um IDE gráfico. Para linguagens compiladas (por exemplo, C ou C ++), o processo seria algo como isto:

  1. Escreva o programa no seu editor de texto preferido.
  2. Na linha de comando, chame o compilador e / ou vinculador que converterá seu programa em código de máquina executável e puxe as bibliotecas externas necessárias. (Estou um pouco confuso com a ordem de vinculação e compilação aqui, mas tenho certeza de que alguém irá me corrigir em pouco tempo. :))

Para linguagens interpretadas como PHP ou Python, você escreve código no seu editor de texto preferido (ou em um shell interativo como o que o Python vem) e o código é executado por um programa interpretado. Por exemplo, para invocar um script Python, você executaria algo parecido python.exe myScript.py.

O Python não é uma linguagem puramente interpretada, uma vez que é compilada primeiro, mas esse formulário compilado é executado pelo interpretador Python, portanto, ainda se encaixa na definição. Outras linguagens como PHP são totalmente interpretadas.


1

Sim, você pode escrever código sem um compilador e sem um IDE. Tudo o que é escrever. Texto.


2
Você estaria disposto a explicar como?
Matt

7
Você digita no seu teclado.
Matthew Leia

Matthew quer dizer que você pode escrever um programa, mas não adianta. :)
Abimaran Kugathasan

2
@ Abimaran Não tenho 100% de certeza do que você quer dizer, mas você certamente pode executar / usar um programa sem um compilador ou IDE. Os idiomas podem ser interpretados, não apenas compilados.
Mateus Leia

1
@ Michael, eu tenho que discordar. Não é interpretado da mesma forma que o mecanismo analítico interpretou a posição de suas engrenagens.
Matthew Leia

1

Eu acho que você está se referindo ao Ambiente de Desenvolvimento Integrado (IDE). Eles fornecem dicas de código e destaque de sintaxe, entre outras coisas. Um compilador apenas pega os arquivos e os compila em código de máquina ou código de bytes. Um compilador geralmente é usado por um IDE enviando um comando para compilar seus arquivos.

É possível escrever sem um compilador. Esses idiomas usam um 'intérprete' e processam o script em tempo de execução.


1
Você estaria disposto a explicar como?
Matt

Ou você pode programar em binário :)
Michael K

ou use CIL ..: P Matt dos vídeos que eu vi, você pode instalar algo como BASIC e digitar e executar instruções através da linha de comando
Ross

1

Tudo o que um IDE faz é fornecer várias ferramentas em um único local conveniente e automatizar alguns dos processos. Essas ferramentas são geralmente ...

  • Um editor de texto
  • Um compilador
  • Um depurador
  • Um visualizador de documentação

Para escrever sua fonte, você pode usar qualquer editor de texto que produz texto sem formatação, por exemplo. Bloco de notas, Word ou um editor de texto de código criado para esse fim.

Depois de ter sua fonte em um arquivo de texto, você poderá iniciar seu compilador através da linha de comando que passa no seu arquivo de teste, por exemplo, cc my_program.c Isso produzirá um arquivo de objeto que você pode executar.

Para depurar seu programa, você inicia o depurador através da linha de comando que passa no seu programa, por exemplo. gdb my_program Você pode definir pontos de interrupção, percorrer seu programa, inspecionar coisas etc.

Com um IDE, tudo isso acontece com o pressionar de um botão nos bastidores e o IDE coloca uma interface de usuário sofisticada em cima de tudo.

PS. Programadores reais usam a linha de comando


2
Programadores reais usam cartões perfurados e constroem sua própria CPU a partir de transistores pré-MOSFET. Eles também jogam xadrez com peças de concreto e pesam pelo menos 25 libras cada.
Job

1
@Job, transistores são para mariquinhas, o negócio real são aqueles: en.wikipedia.org/wiki/Vacuum_tube
Machado

Eu pensei que éramos fracotes e não podíamos levantar um mouse, muito menos uma peça de xadrez.
Michael K

2
Programadores reais usam uma agulha magnetizada e uma mão firme. xkcd.com/378
Goran Jovic

1

Eu escrevo meu código diário em um editor vim (editor de texto básico) e posso garantir que ele corra bem (a maior parte do meu código é PHP). Especialmente porque o meu env env é uma distribuição Linux básica do Dev e aproveito bastante as ferramentas de shell. Eu programo assim há um ano e isso me ajudou muito ao lidar com a implantação remota de aplicativos e as modificações de produção, nas quais você geralmente tem acesso a um console * Nix via ssh.


1

computadores de programas armazenados digitais estão em uso desde os anos 50, enquanto as interfaces gráficas de usuário só começaram a aparecer no final dos anos 60 (e para os usuários finais nos anos 80). As pessoas tinham que usar - e programar - computadores de alguma forma antes disso.

Embora contenha algumas imprecisões (nem todas as interfaces de usuário da plataforma são uma camada no topo de um sistema de linha de comando), você provavelmente deve ler o pequeno trecho de Neal Stephenson In the Beginning Was the Command Line .

Isso fará com que você pense sobre as coisas no computador funcionando sob o capô e como é "possível" programar sem um IDE, realizar um trabalho real com uma linha de comando e assim por diante.


1

Você realmente só precisa de um editor de texto (o inferno, o bloco de notas funcionará) e um compilador / intérprete (a coisa mais importante).

Você disse algo sobre fazê-lo via linha de comando? Merda parece loucura, mas é muito bem possível. Quero dizer, apenas usando o Windows embutido no prompt de comando, você 'poderia' gravar em um arquivo viaecho "some codez" > target_file.sauce mas você teria que

A) Seja realmente bom no que você está fazendo

B) Seja escrevendo um programa simples

C) Seja louco de merda


1
... ou tentando impressionar alguém.
Michael K

Ou você está tentando recuperar algo de um sistema fortemente com fubar e não tem tempo para substituir o monitor. Estive lá, fiz isso.
mu é muito curto

1

Você realmente precisa pensar que um IDE é apenas um Editor + Compilador + (algum tipo de) Makefile + Depurador (às vezes) + Construtor de interface gráfica do usuário (às vezes); portanto, é claro que você pode optar por não usar um IDE e substitui-o eles com um editor de sua escolha (vim, emacs, gedit, notepad ++, [insert_others_here]), um compilador (jdk para java, gcc, plataforma SDK ou [insert_Cpp_toolchain_here] para C ++, interpretador python ou qualquer outra ferramenta que seu idioma tenha), algum tipo de makefile (como autoh ... tools, cmake, ant, maven, etc.), algum tipo de depurador (que geralmente está incluído no compilador) e se você deseja um construtor de interface gráfica do usuário (glade vem à mente) , e você tem seu próprio IDE sem um IDE. Qual abordagem é melhor depende de você (e eu acho que os IDE hoje são superestimados)


1

pisca

Ele está usando o pico, um nano clone. Eu uso ocasionalmente. Normalmente, eu uso o emacs, que é um pouco menos útil, mas com mais recursos.

Eu não uso IDEs como regra geral. Ocasionalmente, eu os caia para depuração ou porque a cadeia de ferramentas da linha de comando era difícil de encontrar (olhando para você, Xilinx). Também os uso para esboçar C # nas raras ocasiões em que faço uma GUI. Mas os IDEs não são bons editores na minha experiência: acordes de caracteres estranhos e inflexíveis, pouco fáceis de usar, poucas linguagens suportadas, consomem muita memória.

Eu prefiro usar o emacs.

Você deve examinar a história da computação. É bastante acessível e oferece uma perspectiva maravilhosa do nosso trabalho.


1

Você nem precisa de um editor de texto. :) :)

Se você estiver no Windows, tente o seguinte:

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

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

Se você estiver no UNIX

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

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

E então compile-o com seu compilador de linha de comando favorito. :)

Obviamente, você deve escrevê-lo da primeira vez.

Lembre-se de que programadores reais usam borboletas: http://xkcd.com/378/


0

Aqui está o que é divertido: a Harvard Extension School está ensinando programação sem IDE ... a menos que telnet + pico seja o que você quer dizer com IDE.

A maneira mais fácil é usar um editor de texto básico para gravar seus programas Java, depois transferir arquivos para o sistema FAS usando um programa FTP, conectar-se através do telnet e compilar e executá-los no FAS (fas.harvard.edu - Java já está instalado há). DEVEM estar no FAS para enviá-los para a lição de casa. Para usar esse método, você pode aprender o suficiente sobre um dos editores de texto do Unix para poder fazer as correções rápidas necessárias em seus arquivos ou planejar atualizar o arquivo localmente e transferi-lo novamente. Mais informações sobre a transferência de arquivos estão na página de Perguntas frequentes.

NÃO use um processador de texto, por exemplo, Word ou WordPerfect! Eles adicionam muitos caracteres de formatação que você não vê, mas que impedem que seus programas sejam compilados. No Windows, você pode usar o Bloco de notas ou o Wordpad e salvar os arquivos como "Documento de texto" com a extensão .java. Se o sistema tentar adicionar um sufixo ".txt", coloque aspas no nome e na extensão do arquivo na caixa Salvar para evitar isso. Você também pode tentar qualquer um dos editores na seção Downloads úteis (um que recomendamos para PCs é o Programmers File Editor). No Mac, use o BBEdit Lite (também vinculado na página Recursos) ou um dos editores internos do Unix, disponíveis em uma janela do Terminal. Você pode obter um programa de telnet seguro ou usar um que tenha, telnet no sistema FAS, e escreva e edite seus programas no sistema. Existem três editores do Unix que você pode experimentar: pico, emacs e vi. Depois de escrever seu programa e salvá-lo, então, como acima, você pode compilar e executá-lo no 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 você me perguntar, eles estão torturando as crianças, mas tudo bem. Há mais espartanos, muito menos Mothakes, Perioikoi e Helot, do que Harvard pode admitir em qualquer ano.


Sim, é possível. Suponho que algo como o Bloco de Notas seja um IDE não, mas o emacs e o Textpad (eu usei ambos para cursos em C, Java) são considerados um IDE. Agora ... depois de codificar em C # no VS2010, com o WinForms e tudo, eu não gostaria de voltar aos editores de texto no trabalho - eu seria gritado por não ter feito nada.

Para projetos acadêmicos, no entanto, quando os exemplos são pequenos, faz sentido não usar IDE. Lembre-se: nas aulas de programação introdutória, muitas questões do mundo real não estão presentes. Você provavelmente não precisará adicionar arquivos .xml como recursos a uma dll; Você provavelmente não precisaria depurar muito, não precisaria usar contratos de código ou passar de um C ++ não gerenciado para C ++ / ClI, depois para C # e vice-versa. As atribuições acadêmicas não precisam ser confusas, pois podem ser feitas do zero e são medidas em dias-homem / semana. Todos os arquivos podem fazer parte de apenas um projeto (mesmo para compiladores ou classe de SO). Um IDE como o Visual Studio pode realmente atrapalhá-lo quando um simples makefile o fará. Pense nas inúmeras opções que é preciso configurar. O mesmo acontece com o Eclipse - é um editor com excesso de engenharia que é infinitamente personalizável. Um makefile simples e dois arquivos C simples podem ser tudo o que você precisa. De fato, você tende a ter mais controle dessa maneira quando especifica cada sinalizador sozinho. Eu codifiquei assim em um laboratório universitário uma vez. É engraçado, mas um dos computadores "incorporados" (o que significava que era tão pequeno que caberia em um avião) não tinha GUI nem mouse :) Eu ainda era capaz de fazer login, editar, compilar e depure um programa em C, adicione drivers e recompile o kernel.


Na verdade, eu meio que concordo com essa abordagem. Embora eu não force o telnet - apenas linha de comando e editor de texto.
Michael K

0

Para o trabalho no banco de dados, você só precisa de um editor de texto (bloco de notas ++) e um cliente de linha de comando, como osql ou sqlcmd. Nem mesmo um compilador.


0

Não é apenas possível , mas - pelo menos uma vez na vida - você precisa programar sem o IDE. Isso o ajudará a entender o processo de compilação, o uso de bibliotecas - talvez isso abra seus olhos para o que realmente significa programação.

Além disso, acho que um bom editor de texto é melhor que um IDE. Para o MS-Windows, recomendo o PSPad (foi um flash tão forte, como o MultiEdit na era do MS-DOS); para o GNU / Linux, tente o Geany (talvez seja o repo da sua distribuição).


0

Eu uso um notebook de 99 centavos com a minha confiável Pilot Gel Pen para escrever programas.

Eles acabei de digitar novamente o código no Visual Studio.

Escrever um programa e codificar são duas coisas diferentes (para mim).


Você escreve programas na íntegra manualmente em papel primeiro?

@ Thorbjørn - Eu já fiz isso antes no início (principalmente jogos curtos) e, quando estou trabalhando em algoritmos, usarei um quadro branco para esboçá-los em vez de caneta e papel.
rjzii

Sim, escrevo muito código à mão. Nem todo o programa, porque o Visual Studio automatiza muitas coisas.
Pablo

0

Programar sem um IDE é uma ótima maneira de aprender o que está acontecendo.

Começamos a programar na escola com um simples editor de texto colorido em sintaxe. A compilação aconteceu com o prompt de comando (ou através de um script em lote simples).

Somente quando entendemos o básico da programação, passamos a editores mais poderosos, como Eclipse ou Visual Studio.


0

Como esperado, todas as respostas dizem a mesma coisa: "é claro que você pode! É apenas texto! Text text text text!" Isso é verdade, de um modo geral, e é a melhor resposta para sua pergunta. A maioria dos IDEs simplesmente manipula o texto.

Mas nem sempre é verdade e, em certos casos, afastar-se de um modelo somente de texto resulta em grandes avanços. Esses avanços geralmente são rejeitados por puristas somente de texto (o que é quase todo mundo, porque como-era-é também como-deveria-ser ... não é uma coincidência ?!). O IBM Visual Age foi um exemplo muito legal que teve uma morte horrível.

Outro exemplo que vem à mente e é muito popular é o Interface Builder para a criação de produtos para Mac e iOS. Sua saída NÃO é programas de texto, mas objetos serializados, portanto, você não pode criar NIBs sem usar o IB ou escrever seu próprio IB.

Os puristas dirão: "sim, mas o Interface Builder está escrito em código de texto!" Então?

Eu realmente acredito que a CS como um campo avançaria muito se pudéssemos ir além do paradigma somente em texto. Além disso, acho que finalmente iremos nessa direção, mas levará décadas. Primeiro teríamos que descobrir qual é o melhor, viou emacs....


0

Ultimamente eu atualizei para o vim. Gosto de como destaca palavras-chave em qualquer idioma que estou escrevendo. Suspiro, apenas quando posso acessar um sistema operacional real e não usar o bloco de notas.

Minha esposa escreveu COBOL usando edlin. Eu pensei que era muito engraçado.

Essa melhoria em relação aos cartões de digitação que costumávamos usar e às 24 horas de retorno das operações apenas para descobrir que tivemos um erro de digitação.

Tenho formas de codificação em algum lugar no sótão.

Você tinha 1 e 0? Tivemos que desenhar uma linha através dos nossos 0s.

Mas hoje você diz isso aos jovens e eles não acreditam em você.

j.

Ao utilizar nosso site, você reconhece que leu e compreendeu nossa Política de Cookies e nossa Política de Privacidade.
Licensed under cc by-sa 3.0 with attribution required.