학습 개발 알고리즘 [폐쇄]


16

이것은 상당히 일반적인 질문입니다. 나는 약간의 Perl과 Python을 알고 있으며 프로그래밍에 대해 더 깊이 배우고 싶을 때 응용 프로그램과 웹 사이트 개발을 시작할 수 있습니다.

프로그래밍 학습에 대한 나의 접근 방식을 설명 할 수있는 알고리즘 (단계 순서 :))에 대해 알고 싶습니다. Perl / Python에 대한 작은 질문을 게시했으며 모든 사람으로부터 큰 도움을 받았습니다.

참고 :-나는 배우기 위해 서두르지 않습니다. 시간이 걸리고 괜찮습니다.

타당하다고 생각되는 제안 사항을 알려주십시오. 또한 Lisp, Haskell 등을 배우도록 강요하지 마십시오. 저는 초보자입니다.


배우고 자하는 특정 언어가 있습니까? 나는 당신이 펄과 파이썬을 언급한다는 것을 알고 있습니다.
Jason

그래서 당신이 요구하는 것은 ... 정확히 무엇입니까? 특정 언어를 배우는 과정? 프로그래밍 자체? 무엇을 사용합니까?
glenatron

좋은 질문이라고 생각합니다. 좀 더 명확하게 편집했습니다.
게리 로우

답변:


28

새로운 프로그래밍 언어를 배우기위한 11 단계 알고리즘

현재 Lisp를 배우는 과정에 있으며 다음 알고리즘을 권장합니다.

  1. 언어가 배울 가치가 있고 좋은 자원을 찾을 수 있는지 물어보십시오. 전문가가 언어에 대한 긍정적 인 반응을 보이면 2 단계로 진행하십시오.
  2. 초기 프로그래밍 환경을 만듭니다. 텍스트 편집기와 컴파일러 / 통역사를 간단하게 유지하십시오. 최소한입니다. 사고 방식의 변화를 알리기 위해 특별한 색 구성표를 사용하여 컴퓨터의 특정 사용자 계정을 고려하십시오.
  3. "Hello, World!"를 만드십시오. 신청.
  4. 일반적인 구문과 제어문 (if-then-else, repeat-until 등)을 배우십시오. 간단한 제어 사례를 확인하기 위해 샌드 박스를 만듭니다 (참 / 거짓 평가 등). 모든 기본 유형 (int, double, string 등)을 시도하십시오. 통화 계산을 수행하십시오. @Jeremy 가 제안한 숫자 추측 게임 이 이것에 좋습니다.
  5. 여러 메소드 / 함수로 클래스 (해당되는 경우)를 작성하십시오. 함수간에 호출하십시오. 제어문을 적용하십시오.
  6. 배열과 컬렉션을 배웁니다. 사용 가능한 각 클래스 / 함수 / 프리미티브의 배열과 컬렉션을 생성하는 적절하게 복잡한 예제를 만듭니다.
  7. 파일 IO를 배우십시오. 이진 및 문자 기반 파일을 읽고, 조작하고, 쓰는 예제를 만듭니다.
  8. 언어 내에서 관용적 프로그래밍 (포인터, 매크로, 모나드, 클로저, 지원 프레임 워크, 빌드 환경 등)에 대한 추가 질문을하십시오.
  9. 권장되는 관용구에서 작동하도록 IDE를 선택하십시오 (또는 기존 IDE).
  10. 당신이나 당신의 상사를 기쁘게하는 다양한 응용 프로그램을 작성하십시오.
  11. 1 년 후 방금 배운 언어에 대한 관심을 유지하면서 다른 언어의 1 단계로 돌아갑니다.

1
"숫자 추측"게임이 두 번째로 훌륭한 프로그램이라는 것을 알았습니다. (4 단계에서) 정수, 부울, 텍스트 입력 / 출력, 루핑 및 조건에 대해 배울 수 있습니다.
Jeremy Heiler

@Jeremy 좋은 제안, 거기에 넣었습니다.
게리 로우

내가 포럼이 체인을 사랑하는 이유 단계 explaination 그게 전부로 아주 좋은 단계 ... 내가 :) 그것을 오전 그래 @Jeremy - 내가 파이썬으로지도하려고합니다 자세한 내용은 하이 Gary- 감사
user9057

사고 방식의 변화를 알리기 위해 특별한 색 구성표를 사용하십시오 .
Santosh Kumar

Lisp로 작업 할 때 더 어두운 색 구성표를 선택하는 경향이 있지만 Java에는 밝은 색 구성표를 사용합니다. 색상은 내 사고 방식을 전환하도록 상기시켜줍니다.
게리 로우 2013


2

배우고 싶은 모든 언어 L

  • 1 단계 :의 구문을 익 힙니다 L.
  • 2 단계 : L선호하는 언어로 컴파일러를 작성 하십시오.
  • 3 단계 : 원하는 언어의 컴파일러 작성 L
  • 4 단계 : 주요 프로젝트를 관용적으로 작성 L
  • 보너스 : 2 단계 결과가 4 단계 결과와 호환되는지 확인하십시오.

그것은 그것을 거의 다룰 것 입니다. 10 년 안에 진행 보고서로 우리에게 돌아 오십시오 .

웹 개발을 배우고 Perl과 Python을 이미 알고 있다면 시작하기에 충분합니다. 나는 (특히 아파치의 기능과 아웃 학습을 시작 말하고 싶지만 mod_perlmod_python다음 연습을 얻을). 어쩌면 특정 언어 매뉴얼이 아닌 CGI 프로그래밍, 네트워크 통신 및 기타 관련 서적을 선택할 수도 있습니다.

마지막으로 초보자가 되더라도 Lisp를 배우지 않아도됩니다. SICP비디오 강의를 확인하십시오 . 또한 개발 또는 컴퓨터에 대한 전문 지식 수준을 가정하지 않습니다. 실제로 비디오 강의 소개를 인용

컴퓨터 과학에 관한이 과정에 오신 것을 환영합니다. [보드에 씁니다] 사실 그것은 시작하는 끔찍한 방법입니다. 컴퓨터 과학은이 사업에있어 끔찍한 이름입니다. 우선, 그것은 과학이 아닙니다 [ "과학"을 뛰어 넘습니다]. 공학 일 수도 있고 예술 일 수도 있습니다. [...] 또한 컴퓨터에 대해서는 그다지 중요하지 않습니다. 그리고 물리학이 실제로 입자 가속기에 관한 것이 아니라는 의미에서 컴퓨터에 관한 것이 아닙니다. 그리고 생물학은 실제로 현미경과 페트리 접시에 관한 것이 아닙니다. 할 아벨 슨


재미 있겠다. 10 년 후에 만나요!
Jeremy Heiler

2 단계 +1은 L 용 컴파일러를 작성합니다! 뇌가 .. 아파 .. 너무 .. 지금.
게리 로우

-2

두 단계를 제외하고는 많이 말하고 싶지 않습니다.

  1. 데이터 구조 학습
  2. 알고리즘 소개 알아보기

PS 프로그래밍은 일상 업무입니다.


프로그래머들에게는 "많이"말을 부끄러워하지 말 것을 권장합니다.
Matthieu

-2

가장 좋은 방법은 프로그래밍 언어의 기본 / 기본을 배우고 주니어 개발자 (계약자)로 회사에 합류하는 것입니다. 이것은 귀하의 시간 동안 배우고 돈을 벌 수있는 가장 빠른 방법입니다.)

당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.