Bagaimana cara saya mengembangkan lebih banyak bahasa dengan lebih sedikit IDE


8

Saya ingin mengatur komputer saya sehingga saya dapat mengembangkan di .net, C #, Java, ActionScript, JS / CSS, dan bahasa fungsional seperti Scala atau Haskell. Namun, saya ingin melakukan ini dengan jumlah paling sedikit dari IDE berfitur lengkap untuk dipelajari / program yang menggunakan ruang harddisk di komputer saya / menjalankan banyak IDE secara bersamaan.

Program mana yang dapat saya gunakan untuk meminimalkan jumlah IDE berfitur lengkap yang harus saya pelajari / gunakan. (Misalnya, jika Eclipse dapat menangani semua kerangka kerja ini, itu akan menjadi jawaban yang valid)

Sunting: Tampaknya pertanyaan ini masih mendapatkan hits bertahun-tahun kemudian. Hari ini, (2018) saya menggunakan Visual Studio Code sebagai "satu IDE untuk memerintah mereka".


Apa yang kamu gunakan saat ini?
Kevin D

8
Jika menghemat sumber daya menjadi perhatian Anda, saya ragu Eclipse adalah jawabannya.
back2dos

5
sumber daya yang saya khawatirkan adalah otak saya lebih dari komputer saya :)
Bob

5
coba lakukan semua perkembangan itu di notepad dan biarkan kami tahu bagaimana otak Anda lakukan :-)
Thomas Stock

4
Lihat, jika Anda seorang profesional yang berpengalaman, Anda mungkin menemukan Notepad cukup baik untuk semua kebutuhan Anda
Pankaj Upadhyay

Jawaban:


2

Perusahaan Jetbrains memiliki serangkaian IDE dengan prinsip-prinsip ergonomis yang sama dan pintasan keyboard yang sama dan seterusnya. Mereka mencakup semua bahasa yang Anda bicarakan. Tetapi kebanyakan dari mereka tidak gratis sekalipun.

Jadi saran saya adalah:


1
Apakah mereka memiliki komunitas yang kuat untuk mendapat dukungan? Saya mendengar pernyataan bahwa "Anda harus menjadi ilmuwan roket untuk membuat proyek" mengenai perangkat lunak Jetbrains.
Bob

Mereka sangat bagus. Saya mendapat jawaban dari kata-kata kasar di Twitter. Namun, Anda benar, mengatur proyek agak aneh pada awalnya tetapi tidak sebanyak itu dengan Eclipse.
Simon Jodet

R # bukan IDE; ini merupakan ekstensi untuk Visual Studio.
Andy

22

Pelajari vim atau emacs. Anda dapat memprogram hampir semua bahasa dengan salah satunya. Anda tidak akan memiliki kruk yang disediakan oleh beberapa IDE, tetapi Anda benar-benar tidak membutuhkannya. Anda bisa menjadi programmer yang lebih baik ketika Anda lebih mengandalkan otak Anda dan lebih sedikit intellisense.

Keduanya vimdan emacsmemiliki banyak fitur dan ekstensi (atau plugin) yang besar untuk memfasilitasi pengkodean (termasuk hal-hal yang berkaitan dengan API, yang tidak perlu Anda "hafalkan secara membabi buta"). Banyak bahasa pemrograman (bahkan yang akademis) memiliki emacsmode dan / atau vimplugin atau ekstensi. Dan banyak distribusi Linux mengemas ini.


39
Otak saya memiliki kegunaan yang lebih baik daripada mencoba menghafal API .. tapi terima kasih.
Bob

11
Amin seribu kali, @ Bob. Saya programmer yang lebih baik karena intellisense karena ada lebih banyak kapasitas untuk digunakan untuk hal-hal selain tanda tangan metode, tipe pengembalian dan hierarki kelas API yang harus saya tangani. Menurut pendapat saya, ini merupakan perolehan produktivitas tunggal terbesar dalam 15 tahun terakhir.
Adam Crossland

5
Emacs memang menyediakan Intellisense dengan CEDET , meskipun mereka menyebutnya "penyelesaian kode pintar".
jwernerny

3
Walaupun saya agak tidak setuju dengan pandangan poster tentang penggunaan IDE, ini adalah cara untuk menggunakan bahasa yang lebih baru dan / atau kurang populer yang tidak memiliki IDE yang bagus. OP sedang memikirkan Scala dan Haskell, dan mungkin ingin mencoba bahasa non-mainstream lainnya, dan dalam hal ini, vim atau emacs adalah tentang pilihan terbaik.
David Thornley

5
Untuk Java (dan C #) Anda menginginkan IDE; mereka banyak membantu. Ini karena mereka cukup birokratis saat bahasa berjalan. Bahasa lain tidak membutuhkan IDE dengan tingkat yang hampir sama, membuat vim dan emac pilihan yang sangat baik di sana.
Donal Fellows

13

Saya tidak akan mencoba menggunakan satu IDE yang kurang optimal untuk semua pengembangan saya. Saya lebih suka menghabiskan waktu saya belajar IDE terbaik untuk bahasa daripada hacking / tweaking IDE tunggal sehingga Anda dapat menggunakannya untuk sesuatu yang tidak dimaksudkan untuk digunakan.

Tidak ada peluru perak di sini.

Anda akan membutuhkan Visual Studio untuk pengembangan .NET. Anda akan membutuhkan alat Adobe untuk pengembangan Flash.

Untuk Java dan JS / CSS saya merekomendasikan Jetbrains IntelliJ IDEA dan Webstorm. Ada alat yang dibuat oleh vendor yang sama sehingga mereka mirip, kaya fitur cantik namun kurva belajarnya cukup ok. Mereka juga tidak mengambil banyak ruang disk, jika itu benar-benar menjadi perhatian Anda.

Seperti yang ditunjukkan oleh FinnNk, Anda dapat mengkonfigurasi sebagian besar (semua?) IntelliJ IDEs untuk menggunakan pintasan keyboard Visual Studio ... atau Anda dapat mengkonfigurasi Visual Studio untuk menggunakan pintasan keyboard IntelliJ.


Terima kasih. IntelliJ IDEA juga mengerjakan Actionscript dev. Jadi saya akan membutuhkan Visual Studio dan IntelliJ atau Eclipse (karena sejauh ini mempelajari ide IntelliJ agak menyusahkan) Di mana scala / Haskell cocok dengan itu?
Bob

Ada plug-in Eclipse untuk Scala dan Haskell , dan saya tidak akan terkejut jika ada sesuatu yang serupa untuk Netbeans .
TMN

Saya tidak punya pengalaman dengan Scala / Haskell. Sekali lagi, saya akan mencari di Google untuk hal-hal seperti "ide scala terbaik" dan melihat mana yang paling sesuai dengan kebutuhan Anda. PS: Anda dapat melewati WebStorm dan mengembangkan JS / CSS dengan studio visual. Ini adalah IDE yang layak untuk pengembangan web dan dengan add-in Resharper Anda mendapatkan pelengkapan otomatis dalam JS dan Css. (ada juga plug-in gratis untuk ini.)
Thomas Stock

@TMN plugin Netbeans Scala sedang dalam pengembangan
yannis

1
Saya akan menambahkan bahwa Anda dapat mengkonfigurasi sebagian besar (semua?) IntelliJ IDE untuk menggunakan pintasan keyboard Visual Studio ... atau Anda dapat mengkonfigurasi Visual Studio untuk menggunakan pintasan keyboard IntelliJ.
FinnNk

6

Eclipse dapat menangani sebagian besar bahasa yang Anda sebutkan:

Apapun Eclipse bukanlah pilihan yang valid, karena sebagian besar plugin tersebut di berbagai negara alpha dan menjalankan contoh Eclipse dengan semuanya akan sangat menekankan perangkat keras Anda.

Bahkan dengan perangkat keras yang hebat, plugin jarang akan menawarkan segala yang ditawarkan oleh IDE khusus. Juga saya tidak melihat alasan yang sah untuk menjalankan banyak IDE, berapa banyak platform yang bisa Anda kode secara bersamaan? Jika yang Anda perlukan sebagian besar adalah membaca kode yang ditulis dalam berbagai bahasa atau menulis program yang cukup kecil, Anda dapat memilih Notepad ++ , yang mendukung penyorotan sintaks pada sejumlah bahasa yang mengesankan .

Tetapi untuk benar-benar memprogram dalam bahasa yang Anda sebutkan, saya akan merekomendasikan untuk menggunakan IDE yang berbeda:

Adobe Flash Builder dan Aptana Studio didasarkan pada Eclipse jadi jika Anda menggunakannya, Anda setidaknya akan mendapatkan IDE yang serupa .


Terima kasih. Saya mengerikan dalam menutup jendela .. Saya adalah virtual packrat. :(
Bob

1
Tingkatkan C # tampaknya sudah mati selama hampir 8 tahun sekarang !!
Newtopian

@Newtopian Yah ya itu :) Pokoknya, inti dari jawabannya adalah TIDAK menggunakan Eclipse untuk semuanya karena berbagai alasan, kita bisa menambahkan kekurangan plugin C # kepada mereka ...
yannis

@ Bob Linux + Gnome dengan layar ganda 30 "memberi Anda (menggunakan 4 desktop) lebih dari cukup layar real estat :)
jwenting

@ Bob, keberatan mencoba menggunakan WM ubin (misalnya, stumpwm, ratpoison, dll)?
SK-logic

2

Saya pribadi menemukan Eclipse adalah IDE multi-bahasa terbaik .... selain dari dukungan Java yang sangat baik, ada dukungan pengembangan yang cukup matang untuk sebagian besar bahasa utama lainnya yang tersedia sebagai plug-in.

Ada daftar panjang di sini bahasa yang saya yakin telah diperpanjang sejak artikel itu ditulis.

Juga bukan hanya bahasa yang penting: Anda juga perlu mempertimbangkan:

  • Bangun / alat manajemen ketergantungan seperti Ant dan Maven
  • Kontrol kode sumber (git, CVS, SVN dll.)
  • Manajemen file sumber daya (konfigurasi XML, gambar, dll.)
  • Alat manajemen proyek (cadangan, dokumentasi, manajemen tugas, dll.)

Dengan mempertimbangkan semua ini, sudah pasti merupakan kemenangan untuk tetap menggunakan IDE primer tunggal.


1

Untuk bahasa yang memilikinya Anda sebaiknya menggunakan IDE kelas terbaik - mereka tidak terlalu berbeda. Lihat jawaban lain untuk saran.

Untuk yang belum, saya sarankan Anda menggunakan editor teks yang lebih berat - seperti emacs (yang juga berfungsi sebagai peramban sistem file, pembaca surat dan berita, platform game, generator ucapan selamat ulang tahun, dll, dll, dll) . Ini sering memiliki plugin / pengaturan / mode yang layak yang memberi Anda sebagian besar dari apa yang akan diberikan oleh IDE sederhana.


1

Waspadalah bahwa penggunaan IDE adalah topik perang suci.

Gunakan alat terbaik untuk pekerjaan itu. Jika sebuah IDE bagus dalam bahasa X dan tidak pada bahasa Y, maka hanya gunakan untuk X dan dapatkan sesuatu yang lain untuk Y. Dibandingkan dengan hampir semua game komputer yang mungkin Anda pilih, dan IDE bukanlah hard drive dan sistem Anda. RAM tidak bisa menangani. Saya akan menambahkan bahwa ketika mencicipi bahasa baru, sebuah IDE dapat membuatnya lebih mudah untuk mulai bermain-main, jangan takut untuk mendapatkan bahasa yang sesuai dengan pekerjaan. Android Java adalah contoh yang bagus dari itu- jika Anda hanya ingin merasakan tidak ada yang lebih mudah dari Eclipse / Android untuk membuat kaki Anda basah.


Terima kasih dan saya setuju. Namun, saat ini saya mencari yang cukup baik, dan untuk memenuhi persyaratan lain yang saya tanyakan. Saya mencari untuk belajar dan berkembang pada saat yang sama, sehingga saya dapat melihat apa yang saya sukai dan yang tidak saya sukai.
Bob

1

Saya tidak yakin ini ide yang bagus. Beralih dari satu bahasa ke bahasa lain biasanya merupakan pengalih konteks lengkap dan biaya ini hanya dapat dikompensasi oleh IDE yang disederhanakan untuk bekerja dengan bahasa itu.

Tentu saja ada emacs, tetapi kecuali jika Anda ingin berinvestasi setengah dekade untuk benar-benar memahaminya, Anda akan kesulitan menemukan IDE multi-bahasa yang biasa-biasa saja dalam hal terbaik untuk sebagian besar bahasa.

Saran saya:

  • SharpDevelop untuk C # dan FlashDevelop untuk ActionScript (dan harus jika Anda suka). FlashDevelop sebagian besar ditulis menggunakan SharpDevelop, sehingga Anda akan menemukan perilaku yang relatif konsisten di antara mereka. Terutama FD memiliki jejak yang sangat rendah, memiliki pelengkapan otomatis yang cepat dan UI dan melakukan booting dalam waktu lebih dari 5 detik pada mesin saya.
  • Java dan Scala bekerja dengan sempurna dalam satu IDE. Baik itu IntelliJ, NetBeans atau Eclipse lebih merupakan masalah preferensi pribadi atau agama.
  • Dukungan untuk CSS ada di sebagian besar IDE sebenarnya. Anda mungkin ingin menggunakan editor HTML yang memungkinkan zen coding (FD melakukan), lebih disukai salah satu editor yang Anda gunakan dan menulis CSS Anda di editor yang sama. Pada saat yang sama Anda mungkin ingin melihat IDE mana di dalam perangkat Anda yang mendukung KURANG KURANG , karena ini benar-benar penghemat waktu. Jika pilihannya adalah antara menulis lebih sedikit atau menulis lebih banyak tetapi dengan dukungan IDE, yang pertama adalah IMHO yang menguntungkan.
  • JS juga didukung oleh semua IDE sampai batas tertentu. Anda mungkin melakukan ini di FlashDevelop. Atau Anda mungkin malah menggunakan haXe, yang didukung dengan baik oleh FD. Atau Anda mungkin ingin melihat-lihat CoffeeScript dan menemukan IDE yang cocok untuk itu (Eclipse memang memiliki plugin yang layak, mungkin IDE lain juga melakukannya).

0

Saya berpendapat bahwa yang terbaik adalah memiliki alat terpisah untuk setiap bundel bahasa / bahasa. Tetapi untuk beberapa (css + js misalnya) - tidak ada gunanya bahkan memiliki IDE - editor teks dengan penyorotan sintaks sudah cukup.

Untuk Windows - coba Notepad ++ . Di Linux - emacs , vim (yang memiliki kurva belajarnya sendiri) - atau bahkan hanya gedit .

Lihatlah NetBeans terbaru - cross-platformnya mendukung sejumlah bahasa, tetapi bisa agak lambat; Aptana Studio adalah apa yang saya gunakan saat ini untuk pengembangan web.


0

Lihatlah proyek server Microsoft Langauge. Idenya adalah bahwa ia mencoba untuk memisahkan detail spesifik bahasa dari editor / ide. Jadi, Anda dapat membuat implementasi server bahasa untuk mengatakan C # atau Elixir dan klien dari VisualStudio dan Emacs dan kedua editor dapat menggunakan semua bahasa.

Belum semua bahasa didukung tetapi banyak yang mendukung dan di masa depan akan lebih mudah bagi Editor / IDES dan bahasa untuk saling mendukung

Dengan menggunakan situs kami, Anda mengakui telah membaca dan memahami Kebijakan Cookie dan Kebijakan Privasi kami.
Licensed under cc by-sa 3.0 with attribution required.