나는 모든 언어 유형에 대해 조금 혼란스러워하고 있습니다. 객체 지향/프로 시저 구분과 비교하여 상위/하위 수준 언어 구별간에 차이점은 무엇입니까? 많은 비유가 비슷한 것처럼 보입니다.고급 프로그래밍 언어는 객체 지향적 인 반면 저수준 언어는 절차 지향적 인 경향이 있습니까?
답변
고/저 레벨 구분은 패러다임보다 추상화에 관한 것입니다. 일반적으로, "낮다"면, 실행중인 시스템, 즉 메모리, 파일 시스템 및 프로세서 명령어 세트에 대해 더 많이 알아야합니다.
고급 언어는 사용자와 기계 사이에 추상화 계층을 둡니다. 그것은 피투성이의 세부 사항을 처리합니다. 이것은 좋고 나쁘다. 추상화는 약간의 걱정을 없애고 또한 통제를 제거합니다.
높은 수준의 언어
이 절차 일 수있다, 객체는 객체 지향이 추상화이기 때문에 등등 ...낮은 수준의 언어, 객체 지향 같은 개념을 제공하지 않을 수, 기능, 지향.
이 두 축 ("패러다임"및 "레벨")을 통한 인과 관계는 반드시 존재하지 않지만 논리와 기능 언어가 객체 지향 언어에 의해 뒤 따르는 최고 수준 인 경향이 있다고 생각합니다. 절차 적 언어는 일반적으로 하위 수준입니다.
질문의 일부가 아니지만 상호 연관성이있는 동적 유형 언어는 정적 형식 언어보다 더 높은 경향이 있다고 생각합니다.
패러다임 (논리/기능/oo/절차) 입력 (정적/동적)과 수준 (세 가지 축을 통해 프로그래밍 언어의 3 차원 분산 형 플롯을 수행하는 것이 흥미로운 시각화라고 생각합니다. 측정 레벨에 대한 다양한 측정 항목에 대한 '코드 완료').
상위 레벨/하위 레벨은 어셈블러 및 기계 코드에 대한 인식 된 '친밀도'를 의미합니다 (어셈블러는 하위 레벨, C는 C++ 또는 Java보다 낮은 레벨로 표시됨).
OO 및 절차 적 프로그래밍은 프로그램을 설계하는 특정 방법을 지원하기 위해 제공되는 언어 기능입니다 (프로그래밍 패러다임이라고 함). 어셈블러가 객체와 클래스에 대해 알지 못하기 때문에 OO 언어가 낮은 레벨이되지 않는 경향이 있다는 사실을 넘어서는 언어가 높거나 낮은 경우에는 아무 관련이 없습니다. 기능 프로그래밍과 같은 많은 다른 패러다임이 있습니다.
"높은 수준"과 "낮은 수준"은 사람들이 동의 할 수없는 다소 모호한 용어입니다. 특정 작업을 수행하기 위해 작성해야하는 코드의 양에 따라 프로그래밍 언어에서 제공하는 추상화 양을 살펴보고 코드가 더 적은 수준이 필요한 언어를 호출 할 수 있습니다. 물론 코드 크기를 측정 할 방법이 필요합니다.
저는 이것을 말하고 싶습니다. 모든 것이 기계 명령어 세트에 달려 있습니다. 그래서, 무엇인가 높은 수준의 표현 방법에 관계없이, 그것은 여전히 기계 명령으로 끓어 갈 것입니다. 따라서 고급 언어는 아이디어를 추상화하는 반면 저급 언어는 하드웨어에 더 가깝습니다.
유추는 모두 유사합니다. 기계 코드가 하나만 있습니다.
아니요.
C++는 객체 지향이며 상당히 낮은 수준입니다.
나는 여기에 좋은 비유가 있다고 생각합니다.
객체 지향 언어는 순수한 기능 언어보다 더 높은 경향이 있습니다. C++ 및 c를보십시오. C++은 docesam에서 언급했듯이 꽤 낮은 수준이지만 C++은 순전히 기능적인 형보다 더 높은 수준입니다. c.
아니요, 그다지 간단하지는 않습니다. 객체 지향이 언어를 고수준으로 만드는 유일한 것이 아니라 객체 지향이라는 명확한 지표는 실제 원시 기계 명령어에 대한 추상화를 의미합니다.
그러나 개체 방향으로 어느 언어가 최고 수준인지 판단하기에 충분하지 않습니다.
나는 다음과 같은 사물을보고 싶은데 :
- 언어가 정적 또는 동적 타이핑이 있습니까? (자바 스크립트 & 파이썬 대 자바와 C++)
- 객체 지향적인가요? (c vs C++)
- 순수 텍스트 매크로 또는 템플릿? (C++ C 대)
- 동적 (자바 & C++ 대 다시 자바 스크립트 & 파이썬) 정적 바인딩 대 바인딩
- 은 언어 지원 기능을 이름 않거나 라인 점프 사용해야합니까?
- 언어가 댓글과 같은 것을 허용합니까?
- 많은
- 1. SDL - 객체 지향적 인 방법
- 2. T-SQL이 객체 지향적 인 라이브러리가 있습니까?
- 3. 단위 테스트 aspect 지향적 인 기능
- 4. 주소록을 디자인 할 때 가장 객체 지향적 인 방법은 무엇입니까?
- 5. 가장 순수한 객체 지향 언어는 무엇입니까?
- 6. C에서 변수 개수가 가변적이고 디자인 지향적 인 질문이있는 함수
- 7. 브라우저가없는 개미 작업 지향적 인 자바 스크립트 단위 테스트?
- 8. 미래 지향적 인 UI 프로젝트를 프로그래밍하기위한 올바른 도구 찾기
- 9. Linq와 i4o와 같은 프로젝트는 객체 지향적 인 DB를 관계형 DB에 대한 대안으로 만들 수 있습니까?
- 10. 객체 지향적 인 n-tier 디자인. 너무 많이 추상화하고 있습니까? 아니면 충분하지 않습니까?
- 11. 선택할 프로그래밍 언어는 무엇입니까?
- 12. 비주얼 프로그래밍 언어는 어떻게 작동합니까?
- 13. 이 프로그래밍 언어는 무엇입니까?
- 14. 선택할 프로그래밍 언어는 무엇입니까?
- 15. 프로그래밍 언어는 어디서나 동일합니까?
- 16. Hibernate hql 다중 조인 질의 결과를 객체 지향적 인 방법으로 처리하는 방법은 무엇입니까?
- 17. 웹 응용 프로그램이 실제로 객체 지향적 일 수 있습니까?
- 18. C 프로그래밍 언어는 어디에서 읽습니까?
- 19. Java와 다른 프로그래밍 언어는 무엇입니까?
- 20. 멀티 스레딩을 지원하는 고급 언어는 무엇입니까?
- 21. 비영어권 프로그래밍/스크립팅 언어는 어떻게 개발되고 있습니까?
- 22. 새로운 Axum 프로그래밍 언어는 무엇입니까?
- 23. 가장 간결한 프로그래밍 언어는 무엇입니까?
- 24. 인기있는 '웹용'함수형 프로그래밍 언어는 무엇입니까?
- 25. IDE가 필요한 프로그래밍 언어는 무엇입니까?
- 26. JIT 컴파일러가있는 프로그래밍 언어는 무엇입니까?
- 27. 배울 수있는 언어는 무엇입니까?
- 28. 가장 다양한 플랫폼 간 친화적 인 코딩 언어는 무엇입니까?
- 29. iPhone 응용 프로그램에서 SOAP 웹 서비스 처리 - 객체 지향적 방법
- 30. 대부분 서비스 지향적 인 앱에 대한 유용한 단위 테스트를 작성하려면 어떻게해야합니까?
르네가 만들고있는 연결이 유효하다고 생각합니다. C++은 원시 C보다 높은 수준의 언어입니다. 일반적인 규칙은 객체 지향 언어가 일반적으로 순수 함수 언어보다 유효한 수준이라는 것입니다. – HumbleWebDev