돌아가서 기술 세트를 다시 학습해야한다면 어떻게해야할까요? [닫은]


16

남동생이 프로그래밍을 시작하려고합니다. 그는 14 세이며 기술적으로 기울어 져 있지만 실제 경험은 없습니다. 그는 나에게지도를 구하고 있는데, 내 경험이 충분하다고 느끼지 않기 때문에 여기에 물었다.

그는 웹 프로그래밍에 더 관심이 있지만 데스크탑 / 모바일 / 서버 응용 프로그램에도 관심이 있습니다.

그에게 좋은 학습 경로는 무엇입니까? 나는 그를 시작하기 위해 크리스마스를 위해 그에게 많은 책을 사러 갈 것이다. 문제는 무엇을 배우고 어떤 순서로 배워야 하는가입니다.

내가 보는 방식으로, 그는 이론과 코드를 배워야합니다. 파이썬이나 루비 또는 PHP로 시작하고 싶습니다. 웹에 들어가려면 HTML, CSS, Javascript 등도 배워야합니다.

이 세 가지 영역 (언어, 이론, 마크 업 / 기타) 중에서 학습 할 최선의 순서는 무엇입니까? 또한 누락 된 것이 있습니까?

감사!


18
서적 대신 호스팅 사이트에 1 년 구독을 구매하십시오. 웹에는 초보자에게 무료로 많은 것이 있습니다. 집에있는 컴퓨터에 사이트를 두는 것은 십대에게는 매우 멋진 요소입니다.
JeffO

하하, 내가 설정 한 여러 VPS를 운영하고있어, 그 부서에 잘 가야한다!
vorbb

답변:


10

StackOverflow.comProgrammers.StackExchange.com 의 계정을 등록하십시오.

과 습관에 그를 얻기 검색 다른 때 질문에 그는되어 지루해 . 가장 인기있는 질문부터 시작하십시오.

또한

자신 이 만들려 는 목표 , 간단한 게임, 트윗을 보낼 수있는 앱 의 목표 를 생각해 내도록 도와주세요 . 흥미 진진한 것이되어야합니다 . 이를 통해 자신이 노출하는 주제를 안내하고 자신이 만든 실질적인 결과를 통해 동기부여 할 수 있습니다.

그가 디지털 인쇄와 잘 작동한다면 가능한 한 물리적 인 형태로 책을 사지 마십시오. 여러분 중 한 사람이 안드로이드 또는 아이폰, 블랙 베리 또는 아이팟 터치를 가지고 있다고 확신합니까? ibooks 또는 kindle 앱을 구입하고 디지털 버전을 구입하십시오 .

실제 책을 다루어야한다면 지식 습득 과정이 느려집니다. 디지털 리더에 내장 된 도구 는 기술 판독에 많은 이점제공합니다 .

참고 : 의견에서 언급했듯이 디지털 대 인쇄 책에는 단점이 있으므로 소금 한알 로이 점을 고려하십시오


15
나는 디지털 독서에 동의하지 않습니다. 실제로 학생들에게 서류를주고 읽게합니다. 컴퓨터에서 그들은 다른 사탕에 너무 빨리 산만 해집니다. 개념을 공부하는 것은 경험상 어떤 디지털 장치와도 멀리 떨어져 있습니다. 또한, 모바일에서 책을 읽으면 눈을 사로 잡습니다. 계획과 수치는 어떻습니까? 유일한 장점은 링크이지만 학생들에게 큰 도움이되지는 않았습니다.
Joris Meys

1
@Joris Meys, 나는 모바일 독서가 눈에 더 어렵다는 것을 인정하고 '다른 사탕에 의해 산만 해지는 것'은 문제가 될 것이지만 동시에 누락 된 것을 쉽게 찾을 수있을 때 정보를 훨씬 빨리 흡수 할 수 있습니다 조각 ... 새로운 것을 연구 할 때 브라우저에서 생성 된 탭의 수를 추정 할 수조차 없습니다.
instanceofTom

6

나는 프로그래밍에 들어온 방식이 정말 마음에 듭니다 . 변화를 상상할 수있는 유일한 것은 책에 대한 나의 접근입니다. 우리 가족은 내가 삼킬 수있는 모든 책에 대한 돈을 가지고 있지 않았으며, 작은 시골 도서관은 기술 매뉴얼을 정확히 가지고 있지 않았습니다. 사물의 거대한 계획에서 이것은 작은 이쑤시개입니다.

14시에 이론을 배울 수 없다고 말하는 사람들에 대해서는 전적으로 동의하지 않습니다. 이론을 일찍 배울수록 더 좋습니다. 나는 이미 코딩을하고 있었지만 14 세 에 컴퓨터 프로그래밍 기술을 읽었습니다 .

형제를 위해 할 수있는 최선의 방법은 그에게 관심을 끌 수있는 도구를 제공하고 가능한 한 해커 / 코더 커뮤니티에 그를 포함시켜 훌륭한 코더 의 사고 방식 을 배울 수 있도록하는 것 입니다.

  • 가능하면 독점 도구에서 멀리 떨어 뜨려 놓으십시오. 오픈 소스 세계에서 훨씬 더 많은 것을 이용할 수 있습니다. 오픈 소스 커뮤니티에서 경험이 많은 사람들로부터받은 안내 덕분에 나는 크게 나아졌다.

  • 여유가 있다면 Safari 계정을 얻 거나 필요할 때 책을 구입하도록 도와주십시오. 이미 소유 한 것을 빌려주는 것도 도움이 될 수 있습니다.

  • 실험을 하기에 알맞은 데스크톱 또는 랩톱 서버 또는 VPS에 액세스 할 수 있는지 확인하십시오 . 모바일 앱인 경우 휴대 전화 나 데모 기기를 가지고 있어야합니다.

  • IRC 채널, 메일 링리스트 등을 찾는 방법을 보여주십시오.

  • 그는 현명한 질문을하는 방법 과 반대로 지원 거머리의 세부 사항 을 알고 있어야하므로 어떻게해야하는지 알 수 있도록하십시오.

  • 그의 첫 프로그래밍 언어는 가장 중요한 요소가 아닙니다. 그가 배우는 프로그래밍 언어의 총체는 매우 중요합니다. 한 언어 코더는 특정 (상대적으로 낮은) 코딩 코딩 수준을 절대 통과하지 않습니다.


분명히 동의합니다. 나는 14 세까지 어셈블러를 잘 보았고, 밝은 아이에게는 너무 어리지도 않았다. 14 번째 생일 선물에 RISC OS PRM이있었습니다. ( computinghistory.org.uk/userdata/PRODPIC-12025.jpg- 나는 그 책들을 사랑했습니다). 그러나 나는 7시에 시작했다.
Orbling

3

나는 휴대 전화 분야에 대한 학습 자료를 가지고 갈 것입니다. 그것이 최고의 부동산입니다. 전화 에뮬레이터가있는 IDE로 설정 하고 앱을로 푸시 할 수있는 전화를 받으십시오 .

그를 실제적인 사용법과 해킹으로 설정하고, 당신의 책에서 이론을 보충하여 그를 안내하십시오. 그들이 좋은 샘플을 가지고 있는지 확인하십시오.


필요한 하드웨어를 제공하기 위해 +1 그것은 정보보다 더 큰 문제가 될 것입니다.
Joris Meys

2

대학에 가면 학교에 갈 거예요. 고등학생이라면 고등학교에 갈 것입니다.

나는 임무를 가지고 14에 따라 커리큘럼을 조정합니다.

많은 사람들이 나를 위해 아래로 내려갈 것이지만 Visual Basic .NET은 사람들에게 더 쉬운 것처럼 보입니다. 많은 사람들이 입문하지 않은 것처럼 보입니다.


3
형이 도움을 줄 수 있거나 지역 고등학교에서이를 사용한다면 더 큰 이점이 될 수 있습니다. 이제는 .NET IDE가 선택한 언어가 아니라 웹 사이트를보다 쉽게 ​​구축 할 수 있다고 생각합니다. 초보자도 C #을 쉽게 선택할 수 있습니까? 만다린은 어려운 언어이지만 중국의 유아는 괜찮습니다.
JeffO

2

웹 개발자로 시작하는 것이 좋습니다. 당신이 진정한 초보자라도 결과를 얻을 수 있으며, 엉망이더라도별로 중요하지 않습니다.

Html / CSS + Php라고 말하고 싶습니다. Jeff가 자신의 의견에서 언급했듯이 사이트를 호스팅하는 것이 중요하며 Php 호스팅 업체는 비싸지 않으며 종종 무료입니다.

이론에 관해서는, 나는 그것을 잠시 잊어 버릴 것입니다. 내가 이해하는 방식으로, 그는 대부분 재미를 원하고 그것을 직시하자. 이론은 그리 재미 있지 않다. 게다가, 그가 프로그래밍을 좋아한다면, 그는 학교에서 많은 것을 가질 것입니다.

분명히 우리 모두는 좋은 코드에 관심이 있지만, 그가 그냥 놀러 가면 코드가 지저분하면 어떻게 될까요?


+1 초보자를위한 빠른 결과의 필요성을 언급하고 귀찮게하지 않도록 엉망으로 만듭니다.
Orbling

2

웹 / 데스크탑 / 모바일 / 서버 프로그래밍? 나처럼, 그는 모든 것에 관심이 있습니다. 그러나 문제는 무언가로 시작해야한다는 것입니다.

이에는 "오른쪽"대답이 없습니다 물론 많은이 동의하지만, 내가 그에게 파이썬에서 책을 구입할 수 ( 학습 파이썬은 오랫동안 그를 바쁘게하는 두꺼운하고 철저한 정도이다), 그것은 확실히이다 내가 배운 것들과 눈 사탕 (즉, 그것으로 달성 할 수있는 것)의 좋은 비율을 줄 언어. 또한 위의 많은 것들에 대한 좋은 출발점입니다.

그 후, 위에서 언급 한 것 중 가장 유리한 점을보고 그 방향으로 조언을 구하십시오.


2

그의 고등학교는 컴퓨터 과학 수업을 제공합니까? 예를 들어, 미국의 Advanced Placement 프로그램에는 컴퓨터 공학 수업이 있으며, 여기에는 컴퓨터 공학 수업이 있습니다.

나는 기본적으로 4 년 동안 (초급 과정부터 기본 LIPS, MIPS, Open GL에 이르기까지) 컴퓨터 과학 과정을 제공하는 고등학교에 다닐 수있었습니다. 나는 대학의 기초에서 시험을 마친 다음 상위 코스에서 다른 많은 언어와 주제를 다시 배우게되었습니다. 저는 14-17 세의 뇌가 18-22 세의 뇌보다 이론을 둘러싼 것이 훨씬 어렵다고 말할 수 있습니다. 재귀, 포인터 산술, 저수준 프로그래밍, 네트워크 지형 및 기능 프로그래밍과 같은 주제는 고등학교에 입학하는 데 오랜 시간이 걸렸지 만 대학에서 두 번째로 시간이 많이 걸렸습니다.

비록 어려웠지만 14 세부터 시작하는 CS를 통한 사고는 매우 도움이됩니다. 교사없이하는 것은 복잡했던 것 같습니다. 나는 그 당시 (그리고 지금) 내가 좋아했던 것이기 때문에 재미를 위해 웹 페이지를 개발하는 데 시간을 보냈지 만, 그 당시 재미를 위해 포인터, 재귀 및 LISP를 가르치지 않았을 것입니다.


1

나는 개인적으로 하드 코어 이론으로 시작하지 않을 것입니다. 저는 이론의 일부 요소와 혼합 된 실용적인 프로그래밍부터 시작합니다. 그것은 훨씬 더 동기를 부여하고 그를 놀라게하지 않을 수 있습니다.

예를 들어 음악 학교의 경우입니다. 학생들의 많은 부분이 이론에 지루 해져 결국에는 관심을 잃기 때문에 그만 둔다.

게다가, 이론은 연습으로 손을 더럽 히기 전에 배우면 좋지 않습니다. 언제 어떻게 적용할지 알 수 없습니다.

그러나 만약 당신이 어떤 이론 지식을 가지고 있다면 많은 연습을한다면, IT에 대한 진지한 진로가 당신을 다른 수준으로 이끌 것입니다. 그렇지 않으면 대학에서 보낸 몇 년은 귀머거리에 낭비됩니다.

그와 같은 순서로:

  1. 하드웨어, 컴퓨터 아키텍처 및 해당 하드웨어 프로그래밍에 대한 몇 가지 기본 이론. 그냥 기본.

  2. 그런 다음 실용적인 것을 개발하십시오. 관심을 유지하기위한 기본 응용 프로그램. 먼저 로컬 다음 그래픽이있는 것. 웹 페이지는 아직 서버 측 프로그래밍을 보여주기를 원치 않기 때문에 데이터베이스 없이는 종종 쓸모가 없습니다.

  3. 그에게 데이터베이스 지식 작물을 버려라

  4. 로컬 애플리케이션을 데이터베이스와 인터페이스하십시오. 그런 다음 웹 개발을 시도하십시오.

  5. 진행하면서 코스를 조정하십시오.


0

내가 아는 것에 기초한 나의 논리적 선호 :

  1. 현재 상황이 어떻게 작동하는지 파악-기술적으로 기울어 져 있다고 말하면서이 시점에서 컴퓨터의 작동 방식을 얼마나 잘 이해하고 있습니까? 예를 들어 마크 업과 스크립트의 차이점을 이해합니까? 이 작업을 수행하기 위해 작은 스크립트를 작성하는 것은 어떻습니까? 이것은 우리가 우리 주변에있는 것을 비 현실화하는 것은 꽤 자유롭게 탐색 할 수있는 모든 것들을 고려할 때 좋은 출발점이므로 출발점에 대한 나의 제안이 될 것입니다.

  2. 언어, IDE 및 소스 제어를 선택하십시오. 이제는 누군가에게 던지기가 다소 어려워 보일 수 있지만 약간의 연습만으로도 더 큰 것들로 넘어갈 수있는 다소 기본적인 도구입니다. "Hello World!"를 만드는 방법 알아 내기 JavaScript에 포함 된 메시지가있는 웹 페이지는 여기서 좀 더 구체적인 것을 원한다면 나쁜 출발점이 아닙니다.

  3. 이제 더 어려운 것들을 추가하십시오. 루프 또는 조건을 수행하는 방법? 이것은 아직 그렇게 멋진 것은 아니지만 우리는 여전히 빌딩 블록 단계를 이해하고 있습니다. 마지막으로 수업의 아이디어와이 개념의 배후에있는 아이디어는 무엇입니까?

누군가가 내 기술 세트의 기초를 얻고 싶다면 내가 시작했을 곳입니다.


0

나는 내가 이것을 말할 줄은 몰랐지만 Alice 3.0을 얻습니다 .

나는 천개의 태양이 타오르는 앨리스를 싫어하지만 괜찮은 튜토리얼과 결합 될 때 프로그래밍의 기본 원리 (루프, 문장, 함수 등)를 잘 가르치는 것은 분명하다.

기본 사항을 잘 알고 나면보다 실용적인 텍스트 기반 언어로 넘어갑니다.


0

파이썬이나 루비 또는 PHP로 시작하고 싶습니다. 웹에 들어가려면 HTML, CSS, Javascript 등도 배워야합니다.

이것은 합리적으로 보입니다. 기본적인 기술을 습득하고 계속 관심을 가질 수있는 도전적인 프로젝트에 대한 아이디어를 구체화하도록 도와주세요.

그의 첫 경험은 완벽 할 필요는 없습니다. 사실 그가 실수를 일찍 시작하면 도움이 될 것입니다. 당신은 그가 지식을 넓히는 데 계속 관심을 갖기를 원합니다. 그가 자신의 한계에 부딪쳤을 때, 그는 도움을 간청 할 것입니다. 만약 그가 참고 자료로 분기하지 않았다면 올바른 방향으로 안내 할 수 있습니다.


0

그에게 Test Driven Development에 관한 책을 가져 오십시오. 그것은 견고한 단위 테스트를 두 번째 본성으로 만들 것입니다. 정사각형 프로그래밍의 핵심 요소로 테스트를 수행하기를 바랍니다.


0

나는 C 기반 언어로 시작합니다. 나는 그들에게 더 유용한 자료가 있음을 발견했다. 코드를 디자인하고 형식을 지정하는 방법에 대한 책을 통해 좋은 코딩 원칙을 사용하여 시작할 수도 있습니다. 나는 그것에 헌신하는 수업을 받았고, 우리는 "깨끗한 코드"라는 책과 올바르게 기억한다면 "소프트웨어 개발 : 디자인 원칙"이라는 제목의 책을 ​​사용했습니다. 또한이 사이트에 더 빨리 소개 되길 바랍니다.

대학 생활 초기에 인턴쉽을받는 것이 가장 큰 도움이되었습니다. 나는 신입생으로서 커리어 페어에 나가서 2 학년 인턴쉽을 받았습니다. 나는 또한 항상 일하고있는 프로젝트를 시도하고 있으며, 전에는 해본 적이없는 일을하고 싶어서 계속 배울 수 있습니다. 현재 Raspberry Pie를 사용하고 홈 자동화 시스템을 위해 Apple의 Siri를 구현하고 있습니다.

기본적으로 재미를 유지하기 위해 필요한 모든 작업을 수행하십시오. 좌절하지 마십시오. 휴식을 취하다. 책에 너무 얽매이지 마십시오. 때로는 배우는 가장 좋은 방법은 그냥 가서 시행 착오를 사용하는 것입니다.

아 ... 그리고 구글 방법을 배우십시오 :)


0

  • C ++
  • 파이썬부터 기본 프로그래밍까지
  • 그런 다음 HTML
  • CSS
  • 자바 스크립트
  • CSS로 매우 중요하고 자바 스크립트를 최소 유효성 검사 수준까지 열심히하십시오.
  • 그런 다음 HTML에 대한 srart python 및 URL 가져 오기
  • 모든 단계가 괜찮다면 프레임 워크


    레벨은 다음과 같습니다

  • 기본 해부학을 이해하기위한 명령 프롬프트가있는 기본 레벨
  • 응용 수준
  • 마우스 그래픽 레벨
  • 웹 레벨
  • 설계 수준
  • 데이터베이스 레벨


    당신이 가르치고, undesrtand 때 그는 모듈화하는 것을 잊지 말고 c / c ++ 또는 python 등을 알 때까지 그는 자바 스크립트를 이해하지 못합니다.

  • 기본 프로그래밍을 알고 나면 HTML을 쉽게 할 수 있습니다.
  • 그가 html을 알고 나면 CSS를 좋아합니다.
  • 그러나 CSS로 더 많은 것을 멈추고 시도하면 새로운 아이디어가 생성되고 프로젝트를 시작하는 데 도움이 필요하다고 생각한 다음 프로젝트 완료를 위해 데이터베이스로 자바 스크립트와 파이썬을 배우려고합니다.



    04/07/2013에 추가됨

    14 세의 나이에 프로그래밍을 먼저 해보고 싶을 때 작업이나 프로젝트 또는 기본 지침을 완료하는 데 필요한 리소스를 이해해야하며 내 게시물에서 기본 프로그래밍을 먼저 배우면 도움이 될 것입니다. 프로그램이나 소프트웨어가 반복 및 조건과 어떻게 작동하는지 이해하려면 다음에 모든 것을 이해한다고 생각하지만 마우스를 액세스하거나 어딘가를 클릭하면 무언가를 수행하는 방법을 알지 못하므로 그래픽 및 마우스와 같은 일부 라이브러리를 시도하므로 이해합니다. 어떻게 작동하는지, 다음 질문은 내 코드와 상호 작용할 수 있도록 버튼을 배치하고 이벤트를 추가하는 방법을 염두에 두어야하므로 이벤트 프로그래밍을 배우고 싶을 때이 단계를 완료하면 다음 질문이 발생합니다. 코드와 함수를 호출하는 방법을 조금 복잡합니다.그런 다음 모듈화, 객체 및 응용 프로그램 클래스를 시도합니다.

    그 후 기본 응용 프로그램을 작성하는 방법을 알고 있다고 생각하지만 데이터베이스 용 응용 프로그램을 만들고 싶습니다. 데이터베이스가 떠 오릅니다. 배우고 싶지만 문제는 코드와 연결하기가 어렵다고 느끼므로 데이터베이스에서 작업하게됩니다 명령 프롬프트,

    그것의 프로그래밍 방식은 믿습니다. 동일한 방법으로 배우고 기본 사항이 명확하므로 루틴이나 프로그램의 작동 방식을 이해할 수 있습니다.
    한 번 이해하고 확신하면 데스크톱 응용 프로그램이 HTML에 대해 동일한 기술을 시도하게 할 수 있습니다


    당신이 html을 시도 할 때, 당신은 기초에 많은 시간을 보냈기 때문에, 당신이 사전에 배운 것보다 훨씬 쉽다는 것을 느낄 것입니다.
    html로 구조와 코드 작동 방식을 이해하면 일단이 사실을 알면 응용 프로그램에 대한 유효성 검사 및 데이터베이스 연결을 제공하고, 시도하고 하루에 성공하면 양식 버튼을 쉽게 만들 수 있습니다. 자바 스크립트, 당신은 내가 모든 것을 만들었지 만 인터넷에서 보는 것과 일치하지 않는 것처럼 보이는 것에 대해 질문 할 것입니다. 그래서 CSS로 열심히 노력하십시오. 최고의 IDE 또는 dreamweaver를 사용하여 CSS를 시도한다면 당신은 할 것입니다. hTML / css를 사랑하십시오.

    HTML을 사용하여 간단한 응용 프로그램이나 웹을 만들 수있을 정도로 충분합니다
    . 특정 시점에서 하이퍼 링크가 잘 작동하고 동적이 무엇인지 알고 데이터베이스에 대해 생각하고 사전에 배운 것을 동적으로 만드는 방법에 대해 다른 질문을합니다. ,


    그렇습니다. 내 요점, 레코드 표시, 레코드 삽입, 레코드 삭제 및 자바 스크립트 및 서버 측 프로그래밍을 사용하여 로컬로 데이터베이스를 재생하면 다른 개념이 자동으로 떠올라 사용자, 유효성 검사, 세션, 사용자 기록, 국제화 등
    을 생성합니다. 기초가 명확하고 수행 할 작업과 작업을 완료하는 데 필요한 리소스를 알고 있기 때문에 지침없이 진행됩니다.


    그게 모든 단계입니다. 기본도 매우 중요하고 올바른 단계입니다. 기본 사항을 알게되면 다른 언어를 쉽게 배우거나 한 언어에서 다른 언어로 마이그레이션
    하여 읽을 수 있습니다.

    04/07/2013에 추가됨

    progarme은 일상적인 일과 같은 일련의 지시와 루틴에 지나지 않습니다. 우리는 일어나서 목욕, 점심, 점심, 일, 저녁 식사, 잠 들러갑니다.
    그러나 우리가 과제 중 하나를 잘못 본다면 우리가 불편하다고 느끼는 것은 일이 없거나 휴가 중일 때 낮이 일요일이면 조건이 바뀌고 일상적인 일이 있기 때문에 프로그래밍 접근법과 같은 다른 것들과 일치하게됩니다. 책이 당신에게 말하는 것에서 실용적이지 않고, 책은 참조하기에 좋지만 우리가 반응하는 자연적인 방법을 이해하고 if-else 진술의 도움으로 작업하십시오. 한 번에 하나씩, 첫 번째를 골라 완성하고 집에 갈 수 있습니다. 두 번째를 골라 다음 5 시간 동안 일해야합니다. 그렇지 않으면 두 일을 모두 마치면 1 일 휴가가 주어집니다.


  • 2
    당신의 대답은 세부 사항에 무겁지만 정당성에는 빛이 있습니다. 왜이 길이 가장 좋다고 느끼는지 설명하면 답이 더 강해질 것입니다.
    당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
    Licensed under cc by-sa 3.0 with attribution required.