见周围的人编程都是用一些IDE工具, 比如visual studio或者Eclipse等, 但是我觉得用vim或者emacs完全可以啊。
想问下大家IDE相对于传统经典的编辑器vim(emacs)有哪些优点。 我不想让大家在这里为IDE和vim(emacs)发生口水战, 因此只想让喜欢IDE的人说说IDE相对于vim(emacs)的强大之处即可。
如果你认为IDE和vim(emacs)在不同的场合发挥作用不一样, 我也欢迎您回答。
高洛峰2017-04-21 10:59:14
IDE는 자주 수행하는 지루한 작업에 대한 단축키를 제공할 수 있습니다. 그리고 특정 언어나 프레임워크에 대한 자체 최적화 기능도 있습니다.
예를 들어 Java 코드를 작성할 때 리팩토링을 완료하기 위해 Eclipse와 Intellij를 자주 사용합니다. 함수 범위 내에서 변수 이름을 수정하고, 특정 인터페이스를 구현하는 모든 클래스를 찾고, JavaDoc 주석을 자동으로 생성하고, @Override와 같은 주석을 추가하는 것을 잊어버릴 수도 있고, 클래스 이름과 파일 이름을 동시에 수정하고, 클래스가 있는 패키지를 수정하고 동시에 파일을 이동할 수도 있습니다. , 등.
예를 들어 Objective-C를 작성하려면 UIBuilder를 사용하여 xib 또는 스토리보드 파일을 디자인해야 합니다...
emacs나 vi가 이런 일을 할 수 없다는 것이 아니라, 단지 IDE가 특정 언어의 특정 기능을 지원하는 데 확실히 더 낫다는 것입니다.
일반성과 전문성은 둘 다 가질 수 없습니다.
물론 저는 C++ 및 Python(Django가 아닌) 코드를 작성할 때 주로 vi를 사용합니다. 내 원칙은 도구를 선택하지 않는 것입니다. 못을 두드릴 때는 망치를 사용하고, 종이를 자르려면 가위를 사용할 수도 있습니다. 하지만 일을 잘하려면 먼저 해야 합니다. 도구를 갈고 닦으십시오. 도구를 선택한 다음 매우 친숙하게, 매우 친숙하게 사용하십시오.
大家讲道理2017-04-21 10:59:14
간단히 설명하자면 '인간은 왜 자동차를 타는가?'와 비슷한 질문입니다.
인간은 두 다리를 가지고 있어 거리와 골목을 오를 수 있고, 산을 오를 수도 있고, 계단을 오를 수도 있습니다. 자동차?
왜요?
프로그래밍 생활의 질을 향상시킬 수 있는 첨단 기술이 있는데, 사용해 보는 것은 어떨까요?
알겠습니다. 일부 사람들은 다시 생각할 것입니다. IDE에 의존하지 않고 프로그램을 작성하려면 2B Pencil 및 VIM/Notepad를 능숙하게 사용하는 것이 프로그래머에게 필요한 자질이 아닐까요?
품질과 작업 습관은 별개입니다. 매일 자위를 하는 평범한 청년에게 하루 10km의 등산은 꼭 필요한 체력일까요? 물론 그렇습니다. 하지만 매일 10km를 걸어 출근하는 사람을 본 적이 있습니까?
메모장은 다리와 같고, vim/emacs는 오토바이와 같습니다. 모터가 있고, 가볍고, 배기량이 적으며, 연료 소모가 적고, 여자 아이도 쉽게 태울 수 있고, 100km부터 가속할 수 있습니다. 100km까지는 여전히 저렴합니다. IDE는 가족용 세단과 같습니다. 오토바이보다 편안하고(선루프와 시가 라이터가 있음) 더 안전합니다(에어백이 있고 어린이용 시트를 장착할 수 있습니다). 아쉽게도 구매 및 유지 비용도 듭니다. 더 높고, 더 크고, 교통 체증이 무섭습니다.
Eclipse와 같은 IDE는 기본적으로 트럭인 Dongfeng 트럭과 같습니다. 객실에 지붕과 침대를 추가하면 RV가 되고, 2열의 좌석을 설치하면 병력 수송차가 됩니다. 발전기 2개를 당기면 전기가 생산되고, 무전기 중계기를 당기면 비상통신 지원 차량이 된다.
자동차와 오토바이가 같은 가격이라면 누구나 단층 차고가 있고, 시내에 교통체증도 없고, 곳곳에 주차공간이 있고, 자동차가 들어갈 수 없는 작은 골목도 없고, 누가 뭐하겠어요. 아직도 오토바이를 타시나요? 편집기(vim/eclipse/editplus)와 IDE의 보완성을 가져오는 것은 바로 이러한 기복의 존재입니다.
그런데 제트브레인에서 제작한 IDE는 모두 인공물이고, 품질도 좋고 가격도 저렴하니 그럴 자격이 있군요, 하하
天蓬老师2017-04-21 10:59:14
Vim(emacs)은 전통을 이어받은 코딩 도구로, 콘솔 시대에서 온 프로그래머들에게는 더 친숙하고 익숙하게 느껴집니다. IDE는 그래픽 인터페이스로 개발된 직관적이고 간단한 코딩 도구입니다. 어느 쪽이 더 좋고 나쁘고의 구별은 없으며, 익숙하든 그렇지 않든, 습관적이든 아니든, 개인적 사용이 효율적이든 아니든 상관없습니다.
단축키/명령어를 사용하여 코딩 목표를 빠르게 달성하는 vim(emacs)에 비해 IDE는 코딩을 완료할 수 있는 직관적/시각적 명령 방법을 제공합니다. 간단히 말해서 코딩 속도나 편의성 측면에서 보면 둘 다 비슷하다고 생각합니다. 어떤 사람들은 IDE가 풍부한 확장 기능을 제공할 수 있다고 생각할 수도 있지만 vim(emacs)은 잘 구성하면 열등하지 않습니다.
이 외에도 IDE의 가장 큰 장점은 낮은 학습 비용이라고 생각합니다. 학습 비용을 과소평가하지 마십시오. 최종 분석에서 회사는 작업 결과를 보고 싶어합니다. 프로그래머에게 가장 직접적인 증거는 코딩 작업을 신속하게 완료할 수 있다는 것입니다. GUI가 매우 대중화되는 오늘날, Java 프로그래머가 특정 코딩 작업을 완료하라는 요청을 받으면 [전제 조건: vim(emacs) 및 eclipse에 대해 들어봤지만 사용해 본 적이 없음], 프로그래밍에 가장 적응력이 좋은 사람은 누구입니까? 내 생각에는 Eclipse가 승리할 가능성이 더 높아야 한다고 생각합니다! vim(emacs)을 구성하는 것은 간단한 일이 아니지만 eclipse가 열리자마자 많은 사람들이 코드 작성을 시작할 수 있을 것입니다.
게다가 IDE의 또 다른 큰 장점은 통합 프로젝트 관리입니다. VS 및 Eclipse와 유사한 오늘날의 IDE는 더 이상 단순한 프로그래밍 도구가 아니라 프로젝트 생성, 코딩, 컴파일, 통합 배포 및 릴리스를 포함한 프로젝트 수명주기 관리를 포함하는 포괄적인 프로젝트 관리 도구입니다. 그리고 저는 이것이 제가 IDE에 대해 가장 매력적이라고 생각합니다.
迷茫2017-04-21 10:59:14
에디터나 IDE를 사용하는 것과 에디터와 IDE를 사용하는 것의 차이점은 아무 관련이 없습니다. 중요한 것은 어떤 상태를 달성하고 싶은가 뿐입니다.
지금은 운전면허 취득이 매우 쉽습니다. 거리에서 야채를 파는 아주머니라면 누구나 C 면허를 취득하실 수 있습니다. 이는 전적으로 현대 자동차의 발전된 '자동화' 덕분입니다. 라이센스는 매우 번거롭고 차량 유지 관리 및 수리는 필수입니다. 오늘날 4S 매장 수가 기본적으로 공중 화장실 수를 능가했을 때 유지 관리 등은 물론이고 클러치의 구조가 무엇인지 이해할 수 있는 운전자가 몇 명입니까? 하지만 현대적이라고 말할 수 있습니다. 새로운 드라이버가 이전 드라이버보다 더 뛰어난가요? 아니면 이전 드라이버가 현대 드라이버보다 열등합니까?
물론 인프라가 고도로 발달한 오늘날에는 "왜 자동차 수리를 배우는데 몇 년을 투자해야 하는가? 나는 운전을 하고 싶을 뿐이야. 자동차 수리를 배우면서 더 잘 운전할 수 있는 시간을 보낼 수 있어."라고 말할 수 있습니다. .하지만 그 인프라 서클에서 벗어날 수는 없습니다. 알려진 길을 모두 걸었고 4S 매장이 없는 알려지지 않은 곳으로 가고 싶다면 처음부터 자동차 수리 방법을 배우십시오.
평생 남들이 그린 원을 그리며 운전하고 싶다면 상관없습니다. 하지만 최고의 드라이버, 즉 레이싱 드라이버가 되고 싶다면 항상 자동변속기인 ESP에만 의존할 수는 없습니다. 등. 후진 레이더와 레이싱 드라이버는 양산형 모델을 운전하지 않습니다.
伊谢尔伦2017-04-21 10:59:14
IDE는 통합 개발 환경이며 구성된 vim과 emacs는 IDE와 다르지 않습니다.
Eclipse와 같은 엔터프라이즈 수준 IDE는 구성하는 데 시간이 덜 걸리지만 자유도가 낮습니다. vim 및 emacs와 같은 경량 도구는 구성하기가 상대적으로 복잡하지만 자유도가 더 높습니다.
이 두 가지 유형의 도구에 대한 선호도는 사람마다 다릅니다. 최고의 도구는 없고 최고의 프로그래머만 있을 뿐입니다. 그렇죠?
怪我咯2017-04-21 10:59:14
제가 IDE에서 가장 부러워하는 점 중 하나는 WebStorm이 JavaScript 리팩토링을 지원할 수 있다는 것입니다(최신 버전은 이미 CoffeeScript를 지원합니다). My Vim은 지원하지 않으며 Emacs도 지원하지 않습니다.
이를 지원하는 플러그인을 작성할 수 있다고 말할 수도 있습니다. 이미 이 작업을 수행했지만 텍스트 분석과 의미 분석을 위한 재구성 도구는 다르죠?