답변:
"정상적인"프로그래밍 및 알고리즘 :
생각이 바뀌는 경험을 위해 :
당신의 마음을 파괴하고 padawan과 Jedi Master 사이의 경계를 넘어서 :
Javascript를 잊지 마십시오 .
일반적인 OO 기능이 아닌 OO 기능이 있습니다. 고차 함수 및 클로저에 적합하며 일상적으로 사용합니다. 많은 기능 프로그래밍 트릭을 허용합니다. 매우 유연합니다.
그리고 모든 심각한 브라우저가 가지고 있기 때문에 실용적입니다.
(물론 불쾌한 단점도 많이 있습니다. 실용적인 언어는 거의 없습니다)
나는 계획을 제안 할 것이다.
Lisp에서 파생 된 함수형 프로그래밍 언어입니다 (실제로는 방언이라고 생각합니다). Common Lisp와의 주요 차이점은 접근 방식이 매우 미니멀 하다는 것입니다. 예를 들어, Scheme의 정규 분포 (Scheme <R5 또는 Mit / GNU / Scheme)에서는 루프 구현을 찾을 수 없습니다. 꼬리 재귀를 사용하여 자체적으로 만들어야합니다.
실제로 표현력이 뛰어나고 구문은 프로그래밍과 관련하여 새로운 것을 배우는 데 좋습니다. 코드를 살펴보면 컴파일러 / 통역사가 어떻게 작동하는지 알 수 있습니다.
또한 MIT 웹 사이트에서 무료로 다운로드 할 수 있는 최고의 프로그램 북, 컴퓨터 프로그램의 구조 및 해석을 제공합니다 .
다음은이 흥미로운 언어에 즉시 관심을 가질 수있는 비디오 강의입니다. 연사는 SICP의 저자입니다. http://groups.csail.mit.edu/mac/classes/6.001/abelson-sussman- 강의 /
Java는 전 세계 대학에서 가장 많이 사용되는 언어 중 하나이며 그 이유가 있습니다. 종종 공룡과 비슷하지만 모든 사람에게 현대 프로그래밍 개념에 대한 훌륭한 개요를 제공합니다. 컴퓨터 자체가 어셈블러 또는 이미 훨씬 더 추상적 인 C와 같은 방식으로 작동하는 방법을 보여주지는 않습니다. 그러나 조종사는 비행을 할 수 없어 스스로 비행기를 만들 수 없어야합니다. Java, C ++, php, c #, ruby (on rails) python 등 오늘날 가장 일반적인 언어로 (공명을 위해) 작성하는 모든 코드에 대한 좋은 기초로 ...
최대
손을 내밀어 하스켈이라고합니다. 그리고 두 가지 이유로 :
기능적 언어는 내가 현재있는 곳으로 나를 안내하는 데 도움이되는 언어입니다. 웹 응용 프로그램 개발을하고 있지만 기능적 언어에서 배운 개념은 내가 보지 못했던 문제에 대한 솔루션을 보는 데 도움이됩니다. 대학에서 함께 일한 언어는 다음과 같습니다.
이러한 언어를 익히면 추상화의 세계를 이해하고 다른 기능을 캡슐화하는 코드 블록을 작성하는 방법을 이해하고 세부적인 수준의 세부 사항을 숨겨서 높은 수준의 비즈니스 목표에 집중할 수 있습니다.
문제에 대해 새로운 방식으로 생각해야하는 많은 프로그래밍 언어가 있습니다 (물론 익숙한 것에 비해). 명령형 언어를 배운 것을 배우는 가장 일반적인 언어는 기능적이며 논리적 언어 (예 : prolog 및 lisp) .
일부 언어는 ocaml 및 Haskell 과 같은 범주 이론에 크게 영향을 받고 일부 언어는 Curry (기능 및 논리)와 같은 종간 언어 입니다. Curry는 아마도 내가 아는 가장 마음에 드는 언어 일 것입니다. 논리 프로그래밍을 통해 Haskell의 모든 마음을 불어 넣었을뿐 아니라 제약 기반 프로그래밍과의 통합 때문입니다.
또 다른 재미있는 언어는 동시성에 너무 무겁기 때문에 최근의 arduino 포트 때문에 Occam-pi 입니다.
명확한 목표가 없으면 프로그래밍 언어를 제대로 배우지 못합니다. 당신이 그것으로 무엇을하고 싶은지 알면 필요에 맞는 프로그램을 결정할 수 있습니다.
예를 들어, c #에 대해 말해 봅시다.
C #은 웹 프로그램, 콘솔 프로그램, 독립 실행 형 실행 파일, 게임 프로그램, silverlight 프로그램 및 모바일 프로그램을 수행 할 수 있습니다. 구문은 거의 모든 경우에 동일하지만 모든 시나리오에서 다르게 작동합니다. 예를 들어 독립 실행 형 실행 파일은 언로드되거나 프로그램이 완료 될 때까지 정보를 유지하지만 웹 프로그램은 페이지를로드 할 때마다 정보가 삭제되며 실버 라이트에서는 대부분의 시간을 xml 파일
둘째, 이국적인 언어 (예 : Haskel)로 시간을 보내지 말고 기업 말하기, java (언덕의 왕), c # / vb.net, php 및 sql과 같은 노력할만한 가치가 거의 없습니다.
Processing 이라는 Java 애플릿을 작성하는 매우 간단한 프로그램이 있습니다.
이 언어는 시작하는 경우 변수, 루프 및 그 종류의 것들에 대한 매우 기본적인 이해를 제공합니다.