Saya menemukan diri saya menggunakan editor teks pilihan saya (vim, nano, gedit, pilih racun Anda) lebih sering daripada IDE apa pun akhir-akhir ini.
Setelah melihat jalan pintas ide saya menjadi berdebu, saya mulai berpikir tentang hal ini dan bertanya-tanya: apa yang membenarkan penggunaan IDE untuk Anda yang menentang editor teks ?
Untuk alasan apa Anda akan memiliki untuk tidak menggunakan IDE dan hanya mengandalkan editor?
ide
text-editor
environment
Chris
sumber
sumber
Jawaban:
I: integrasi . Editor teks yang bagus mungkin bagus untuk menulis kode, tetapi sebagian besar pemrograman Anda tidak digunakan untuk menulis; ini digunakan untuk menguji dan men-debug, dan untuk itu Anda ingin editor teks Anda berintegrasi dengan kompiler dan debugger Anda. Itulah kekuatan terbesar IDE.
sumber
Ini adalah fitur favorit saya dari IDE favorit saya, IntelliJ, yang saya suka gunakan untuk Java, PHP, Javascript, HTML, bahkan ActionScript.
Ctrl+click
pada fungsi, variabel, ketik untuk pergi ke definisi. (IntelliJ sangat pandai dalam hal ini dalam semua bahasa di atas)Ctrl+space
terus-menerus untuk membantu mengisi kelas atau nama metode yang saya butuhkan. Ini mempercepat pengkodean satu ton , dan bahkan membantu menangkap bug sebelum terjadi ketika sesuatu yang Anda butuhkan tidak dapat diakses dari konteks tempat Anda berada. IntelliJ bahkan akan membantu Anda memperluas akronim - ketik NPE, tekanCtrl+space
, dan itu akan menampilkan "NullPointerException", "NoPageError", dll. MenekanAlt+enter
untuk menambahkan secara otomatisimport
juga sangat bagus.Hal-hal seperti pewarnaan kode yang Anda terima begitu saja, tetapi pewarnaan kode yang baik seperti visi periferal - ini memungkinkan Anda untuk fokus pada hal-hal penting tanpa mengambil sepersekian detik ekstra untuk mengidentifikasi kata lengkap.
IntelliJ juga menggunakan
Ctrl+space
untuk menyarankan nama variabel. Di Jawa, jika Anda mendeklarasikan variabel EventMessageItem baru dan tekanCtrl+space
, itu akan menyarankan "eventMessageItem", "eventMessage", "item", dll.Semua hal ini memberi saya cara lebih banyak waktu untuk berpikir tentang kode saya dan arsitektur, dan berpikir kurang tentang memperbaiki format, berurusan dengan sistem file, memperbaiki copy-dan-paste kesalahan, beralih antara aplikasi, memburu dokumentasi, dll dll Saya tidak tahu bagaimana Anda bisa mengatakan tidak pada peningkatan produktivitas semacam itu.
sumber
IDE memahami kode Anda jauh lebih baik daripada editor. Hal ini memungkinkan misalnya untuk penyelesaian dan refactoring pengidentifikasi, yang untuk bahasa verbose seperti Java adalah pengiriman Tuhan,
sumber
sumber
Produktifitas. Apakah ada pembenaran lain yang masuk akal? Bagi saya, IDE yang dirancang dengan baik yang memusatkan banyak fungsi yang saya lakukan saat pemrograman - membuat dan mengedit kode, menggunakan kontrol sumber, debugging, berinteraksi dengan alat manajemen proyek, berkomunikasi dengan programmer lain, membuat dokumentasi, menjalankan tes otomatis - secara dramatis mengurangi gesekan proses yang mengurangi produktivitas saya.
Selain itu, meskipun saya merasa perlu tahu cara menggunakan setiap alat secara terpisah, saya tidak mau harus melakukannya. Bagi saya setidaknya, klik kanan mouse jauh lebih baik daripada membuka CLI dan mengetik.
Saya telah menggunakan banyak, tetapi IDE yang saya kembali lagi dan lagi adalah Visual Studio, Wing IDE dan NetBeans. Semua menambah nilai signifikan pada waktu yang saya habiskan untuk pemrograman.
sumber
Secara historis, IDE memberikan kenyamanan tak tertandingi pada komputer satu-tugas. Kompiler C pertama saya memerlukan langkah-langkah berikut dalam siklus edit-kompilasi-lari:
pada sistem CP / M saya. (Saya bisa mengotomatisasi banyak dari itu sebagai program batch memiliki disk drive saya lebih besar.)
Ketika saya mendapat Turbo Pascal, saya senang bisa menjaga editor tersedia saat kompilasi dan debugging.
Saya percaya, itulah yang membuat IDE populer.
sumber
Jika Anda kode dalam Lisp, Emacs memiliki kemampuan Intellisense seperti mencari parameter metode dan pelengkapan otomatis, sehingga Anda dapat mengatakan itu adalah IDE asli. Senang juga dapat menggunakan satu program untuk banyak tugas (mengedit secara umum, prompt shell / command, membaca berita).
Secara umum, pertanyaan editor vs IDE tampaknya tergantung pada bahasa pemrograman. Dari apa yang saya lihat, Ruby dan Haskell coders, misalnya, tampaknya lebih menyukai editor teks favorit mereka.
sumber
untuk beberapa nama
sumber
Saya pikir jawabannya akan sangat tergantung pada bahasa pemrograman yang Anda gunakan dan seberapa baik Anda melakukannya. Untuk bahasa-bahasa seperti JAVA, suatu IDE adalah keharusan jika Anda melakukan sesuatu yang serius. Di mana pun ketika datang ke bahasa scripting seperti JS atau Ruby IDES tidak banyak digunakan.
Saya menggunakan notepad ++ dan satu set skrip shell (untuk backup, git commit) untuk pengembangan saya dan berfungsi dengan sangat baik.
sumber
Beberapa argumen yang mendukung "editor":
Saya menggunakan IDE setiap hari untuk bekerja, sulit untuk menulis Java / C # sebaliknya.
(2) dibandingkan dengan (3): Pada dasarnya hanya opsi untuk mengedit file dari jarak jauh (lebih dari ssh / desktop jarak jauh) dan melakukan perubahan minimal pada konfigurasi server atau file yang jauh.
sumber
Tergantung tentu saja pada bahasa Anda, beberapa IDE juga menyertakan perancang Formulir / Jendela visual.
Meskipun harus ditunjukkan, garis antara editor teks programmer dan IDE bukanlah yang didefinisikan dengan baik. Banyak editor dapat diperluas untuk menangani kompilasi, penyelesaian kode, debugging, dll.
sumber
Saya menggunakan IDE untuk pengujian / debugging / integrasi dan KEDIT untuk mengedit karena IDE sangat kurang dalam kemampuan mengedit.
Karena .NET IDE mengenali pengeditan eksternal, yang perlu saya lakukan adalah menyimpan di editor dan menerima prompt untuk memuat ulang sumber. Ini memungkinkan saya untuk mengoptimalkan kemampuan mengedit dan debugging saya pada saat yang sama.
Untuk IDE lain saya menggunakan KEDIT sebagai prosesor template dan program pencarian sumber dan menyalin / menempelkan sumber itu ke dalam IDE.
sumber
Untuk IDE:
- fitur canggih dilengkapi kabel di luar kotak.
--Beberapa fitur sangat spesifik untuk kerangka kerja Anda sehingga editor tidak memiliki yang setara.
Untuk editor: -
Pertahankan tangan Anda pada keyboard.
- Lingkungan dev Anda sama di semua sistem -
Lebih baik skrip untuk editor Anda
- Beberapa fitur IDE tersedia dengan alat eksternal atau skrip. (Intellisense, definisi goto, cari referensi)
sumber
Kurva belajar singkat. Itu dia.
sumber
Satu-satunya yang saya benar-benar merekomendasikan adalah debugger. IDE sebenarnya adalah editor yang memuat banyak gubbin lain, tetapi jika Anda dapat mengompilasinya dengan mengetikkan make (atau panah + enter) dalam command prompt, maka Anda tidak memerlukan IDE. Jika Anda dapat berkomitmen ke SCM dengan mengklik kanan di explorer dan memilih item menu yang tepat, Anda tidak perlu IDE.
Sekarang saya tahu beberapa orang memerlukan hal-hal seperti dukungan refactoring (menulis kode Anda dengan benar pertama kali :)) atau beberapa desainer GUI terintegrasi (tetapi bahkan kemudian, menggunakan Visual Studio saya menggunakan Expression untuk melakukan pekerjaan GUI saya, bukan dukungan XAML jelek di VS ), dan banyak orang memerlukan intellisense dan autocomplete (terutama untuk bahasa verbose seperti Java dan C # yang memiliki nama allah mungkin panjang jauh).
Tetapi bagi saya, debugger GUI adalah satu-satunya alasan yang sangat baik untuk menggunakan IDE. Saya masih menggunakan debugger 'command-line' (well, windbg) tetapi untuk hari-hari, itu adalah yang bawaan untuk VS.
sumber
Ada manfaat untuk IDE. Tidak semua bahasa memiliki IDE komprehensif untuk benar-benar memberi tip skala atau bisa jadi sangat sulit untuk membuatnya untuk bahasa tersebut. Alasan mengapa ingin IDE? Baiklah mari kita mulai dengan ini:
Masalahnya adalah tidak semua bahasa benar-benar mendapatkan keuntungan produktivitas besar dari IDE yang komprehensif. Saya menggunakan IDE untuk beberapa pekerjaan yang saya lakukan (Java, C #) tetapi tidak untuk yang lain (Python, Ruby, Coldfusion). Itu semua benar-benar tindakan penyeimbangan. Beberapa bahasa tidak membutuhkan paket yang begitu komprehensif.
Apakah ada IDE untuk masing-masing? Yakin. Apakah Anda selalu membutuhkannya? Tidak juga.
sumber