지역 대학은 사전 프로그래밍 경험이없는 1 학년 대학생 (16 세)에게 C ++을 가르치고 있습니다.
첫 번째 프로그래밍 언어로 C ++이 적합합니까?
지역 대학은 사전 프로그래밍 경험이없는 1 학년 대학생 (16 세)에게 C ++을 가르치고 있습니다.
첫 번째 프로그래밍 언어로 C ++이 적합합니까?
답변:
단호 없음 .
학생들을 위해 염두에 두어야 할 목표가 있다면 다른 언어 나 일련의 언어가 더 빠르고 좋습니다. 예.
"학생들은 저수준 개념을 이해해야합니다."
"낮은 수준"코딩은에서 객체를 가져 new
와서 다시 공급 delete
하고 때로는 포인터를 가리 키지 않아야하는 위치로 구성되지 않습니다. 함수, 클래스 및 템플릿은 저수준이 아닙니다. RAII 12 가지 방법이 사용하는 const
, std::ostream::operator<<
, protected
및 new
낮은 수준의 개념이 아니다. 그것들은 낮은 수준의 의미를 지니고 있으며 몇 달 동안 또는 미래 수업까지 건너 뛰고 대신 C ++ 의미의 산을 가르치고 있습니다.
MIPS 또는 MMIX와 같은 좋은 환경과 교육 자료를 갖춘 어셈블러를 제안합니다. 급한 경우 C를 우회하여 최소한 어셈블러 출력을 살펴보십시오. 이렇게하면 C ++이하는 모든 저수준 이해와 더 빠른 이해가 가능합니다.
"학생들은 객체 지향을 이해해야합니다."
C ++에 내장 된 객체 지향은 OO 개념 또는 거의 모든 다른 고급 개념을 가르치기 위해 지나치게 복잡합니다. 잠재적 이유에 대한 훌륭하고 긴 목록은 C ++ FAQ 를 참조하십시오 . 여러분은 그 모든 것들을 공격해야합니다. 새로운 프로그래머에게는 매우 오랜 시간이 걸릴 것입니다. 그렇지 않으면 많은 프로그래머를 건너 뛰고 새로운 프로그래머를 어둠 속에 남겨 둡니다. 실제로 C ++을 알지 못합니다!
C ++을 전혀 가르쳐야하는 경우에는 먼저 객체 (Python, Ruby, Squeak, Common Lisp, Racket)로 더 단순하고 고급 언어를 배우는 것이 좋습니다. 그 외에도 기능 언어를 방문하여 OO와 분리 된 개념으로 다형성을 배우십시오.
"학생들은 템플릿과 템플릿 메타 프로그래밍을 이해해야합니다."
아무도 실제로 이것을 묻지 않지만 나는 그들이 원하기를 바랍니다. C ++에는 멋진 템플릿이 있고 STL은 멋지지만 C ++을 먼저 가르치기에는 우선 순위가 높지 않아야합니다. OCaml 또는 Haskell 타입 시스템을 가르치고 그 개념을 개선하는 것은 어쨌든 더 빠를 수 있습니다.
"학생들은 문제 해결을 배워야합니다."
예, 어떤 언어로든 얻을 수 있으며, 수하물이 적기 때문에 C ++ 이외의 다른 언어로 더 많이 얻을 수 있습니다. 다시 한 번 문제 해결 기술 대신 학생들이 배우게 될 모든 것들의 목록은 C ++ FAQ 를 참조하십시오 .
"위의 모든 것, 우리는 하나의 언어 만 사용하면됩니다." 또는 "고용주가 원합니다." 또는 "우리는 C 스타일 언어가 필요합니다." 또는...
여러 언어를 가르칩니다.
하나의 언어 만 가르치거나 학습함으로써 시간이나 에너지를 절약한다는 생각은 말도 안됩니다. 주어진 언어를 배우는 데 정확히 X man 개월 ( HINT! HINT! ) 이 걸린다는 아이디어를 기반으로합니다 . 여기서 X는 언어 당 하나의 숫자 또는 하나의 숫자입니다. 이것은 '요구 사항'과 '테스팅'쓰레기를 모두 건너 뛰어 시간과 비용을 절약 할 수 있다는 생각과 거의 동일합니다.
여러 구문의 경우 모든 언어에서 C 구문을 다른 언어에 대해 치우치게하여 C 언어를 기대하도록 가르치면 학생들을 위험에 빠뜨릴 수 있습니다.
C ++로 시작하는 것보다 거의 모든 경로가 더 빠르고 좋습니다. 간단한 고급 언어를 배우면 C ++이 더 빠릅니다. 학습 어셈블러를 사용한 다음 C ++이 더 빠릅니다. C ++ 이외의 다른 것들은 학생들을 더 빨리 데려다 줄 것이고 더 많은 부팅 방법을 알게 될 것입니다. C ++을 먼저 가르치지 마십시오.
아니요, C ++는 숙련 된 C ++ 개발자에게도 어려운 언어입니다. 가장 간단한 알고리즘이라도 많은 언어 미묘함을 설명해야합니다. Hello World 예제를 고려하십시오.
#include <iostream>
int main()
{
std::cout << "Hello World!" << std::endl;
}
그 #include
명령은 무엇입니까 ? 무엇입니까 std::cout
. 왜 ::
? 무엇입니까 <<
? 오, 오버로드 된 연산자입니다! 과부하 된 운영자는 무엇입니까? Sooo의 경우 ints
비트 이동을 수행하지만 무엇이든 std::cout
콘솔에 물건을 출력합니다. 오, std::cout
스트림이며, 스트림은이 <<
와 >>
연산자 오버로드되었습니다.
파이썬에서 같은 샘플을 보자 :
print("Hello World!")
그게 다야, 알고리즘을 코딩 해 보자.
복잡한 구문, 많은 규칙, 오래된 언어, 오류가 발생하기 쉬운 메모리 관리와 같은 첫 번째 언어는 아닐 것입니다. 학생들에게 스몰 토크와 같은 OO, 파이썬과 같은 프로그램 또는 Haskell과 같은 기능을 가진 프로그램을 가르치는 것이 좋습니다.
더 나은 언어를 배운 후에는 나중에 C ++을 배울 수 있습니다 (도움이되지 않는 경우).
짧은 대답 : 그렇습니다!
나는 모든 언어가 적절한 시작이지만 특히 C ++ (또는 동등한)이라고 말합니다. 요즘 C #과 Java는 API 및 IDE에 의존하는 방법을 빠르게 배우고 C ++을 사용하면 성능 최적화 등을 포함하여 프로그래밍을 처음부터 배울 수 있습니다.
.Sort ();에 내장 된 언어에 맹목적으로 의존하기 전에 프로그래밍, 반복 및 정렬의 기본 사항을 배우는 것은 결코 나쁜 생각이 아닙니다.
실제로 나는 이것이 실질적인 이유로 제 1 언어로서 좋은 선택이라고 생각합니다. C ++를 배우고 나면 다른 언어는 배우는 바람처럼 보일 것입니다.
나는 15-16 세 때 C ++을 가르쳤다.
다른 사람들에게 마법을 남기고 사물의 내부 작용을 배우는 것이 좋습니다.
엔트리 레벨 C ++ 구문과 의미를 파악할 수 없다면 컴퓨터에 능숙하지 않습니다. 그렇게 어렵지 않습니다. "클래스가있는 C"를 피할만한 이유가 없습니다.
학생들이 템플릿 메타 프로그래밍, 다형성 호출을 추론하고 다중 상속 계층 구조를 풀기 시작할 것을 기대한다면, 사용하는 모든 종류의 언어에 대한 엔트리 레벨 클래스에있어 우스운 일입니다.
학생들에게 복잡한 프로그래밍을 숨기려는 경향이 있습니다. 그것은 잘 끝나지 않습니다 (cf Spolsky의 Java Schools 에세이 참조). 그 사람들은 머리를 똑바로하지 않으면 DailyWTF에 끝납니다. 추상화가 누출되고 추상화가 누출되는 경우 (그렇지 않은 경우),이를 처리하는 것보다 더 나쁩니다. 저는 엔트리 레벨 C ++ 학생들을위한 TA로 일했습니다 . 모든 것이 숨겨져 있거나 조사를 위해 빛으로 가져와야합니다. 마술은 학습자의 적입니다.
머신 코드로 컴파일 된 시작 언어를 추천해야한다면 파스칼 변형이 가장 좋은 방법 일 것입니다. 내가 기억하는 것에서 C 패밀리보다 더 규칙적이고 구조적인 접근 방식이 있습니다.
나는 '아니오'라고 말할 것입니다. 저는 프로그래밍을 배우고 싶어했고 열망하는 C ++로 대학에서 내년에 바로갔습니다. C ++을 다른 언어 (언어 나 실제 응용 프로그램의 개념이 아니라 반드시 이해하는 개념) 인 것처럼 C ++을 가르치고있는 교사와 함께 매주 우리에게 닥친 프로젝트와 충돌하면서 화상을 입었습니다. 반의 절반. 내가 가르치고있는 것을 소화하고 실험하고 적용 할 수있을 때까지, 나는 시험 과제의 두 배가되는 프로젝트 숙제로 어려움을 겪었다. 나는 그것이 100보다 200 레벨 코스라고 주장합니다.
나는 정말로 최선을 다했다. 나는 동정을 요구하지 않았고, 그것이 도전이 될 것이라는 것을 알았지 만 선생님은 나를 도와 주지도 않았습니다. 내가했던 것처럼 교과서를 읽으 러 가라고 말해줘.
루비 나 파이썬은 누군가를 프로그래밍 세계에 빠뜨릴 수있는 훨씬 더 나은 언어라고 주장합니다. 깨끗하고 간결하며 읽기 쉽고 명확한 구문.
아니.
교육 언어로서 C ++은 C보다 약간 우수합니다.이 언어는 최악의 교육 언어 중 하나입니다. 처음에는 많은 복잡성을 소개하고, 언어의 일부는 직관적이지 않으며, 대부분 프로그래밍에 대한 것보다 C ++에 대해 더 많이 배우고 있습니다.
C ++ (또는 C)가 나쁜 언어이거나 학습 할 가치가 없다고 말하는 것은 아닙니다. 파이썬과 같은 더 나은 교육 언어가 있다는 것입니다.
string
과부하 운영자가 좋아하는 데이터 형식을 +
, =
그리고 ==
일을하는 그 학생 다소 나마 기대, 문자열 처리 요구가 C.에서 할 수 방법에 비해 따라서 "변두리" . 나는 가르치는 언어로 권장하지 않습니다.
고등 교육의 두 가지 필수 유형이 있습니다 : 대학과 무역 학교. 차이점은 졸업 후 무엇을하고 싶은가에 있습니다. 자동차 분야에서는 정비사 또는 기계 엔지니어가 될 것입니다.
즉, C ++은 엔지니어가되고 싶을 때 훌륭한 첫 번째 언어이며 정비사와 동등한 프로그래밍이되고 싶을 때는 형편없는 언어입니다.
C ++의 소개 클래스는 데이터 형식, 정의, 선언, 포인터, 메모리 할당 등에 대해 많은 시간을 할애합니다. 여러 학기 동안 유용한 것을 할 수 있도록 건물을 짓는 데 훌륭한 기초이지만, 일단 거기에 도착하면 어느 정도의 복잡성을 처리 할 수있는 기초가 있음을 알고 싶습니다.
다른 한편으로, 당신이 더 유용한 무언가를 더 빨리 할 수 있기를 원하지만, 도메인과 복잡성이 제한 되어도 상관 없다면, 저수준 개념에 모든 시간을 소비하는 것은 낭비가 될 것입니다. 훌륭한 html form validator를 작성할 수있는 많은 프로그래머가 있지만, 장치 드라이버를 설계하는 방법에 대한 실마리는 없습니다.
확실한. 내 첫 번째 언어는 C 였지만 실제로는 클래스를 C ++로 쉽게 만들었습니다. 대학에 도착하면 Java를 훨씬 쉽게 처리 할 수있었습니다. C ++은 약간 가파른 학습 곡선을 가질 수 있지만 올바르게 학습되면 괜찮습니다.
아니오, C ++는 모국어로 적합하지 않습니다. 여기에 나와있는 것처럼 많은 전문 프로그래머가이 의견을 공유하지만 이것은 또한 전문 교사의 의견이기도합니다.
다음은 Carnegie Mellon University 학장의 보고서 에서 신입생을위한 프로그래밍에 대한 입문 과정을 위해 C ++을 사용하는 것에 대해 말한 내용입니다.
C 또는 C ++와 같은 표준 언어는 복잡성과 결함으로 인해 비공식 및 기계화 된 추론 기법을 모두 방해하므로이 과정에 적합하지 않습니다.
CMU는 두 가지 입문 과정, 즉 필수 과목과 기능 과목을 제공합니다. 기능 프로그래밍을 위해 SML이 선택되었습니다. 나는 필수 코스를 위해 무엇을 선택했는지 모르지만 보고서는 C의 하위 세트를 사용한다고 언급합니다.
확실히 C ++는 첫 번째 언어가 될 수 있습니다. 그러나 그것은 얼마나 잘 가르쳐 지는가에 관한 것입니다.
모든 사람들은 모국어를 이해하기가 매우 쉬워야한다고 말합니다. 그러나 제 요점은 대부분의 사람들이 학부 수준에서 프로그래밍을 시작한다는 것입니다. 그래서 당신은 그들이 파악할 수있는 것을 가르 칠 수 있습니다. 그리고 C ++을 사용하면 더 낮은 수준에서 더 높은 수준의 프로그래밍으로 이동할 수 있습니다.
아뇨.
내가 길을 가졌다면 학계에서 거의 전적으로 사용하는 것을 금지 할 것입니다. 이미 만들어진 것과 상반되는 이유가 아니라 너무 많은 사람들이 C ++ (또는 변형)이 거의 모든 상황에서 사용할 수 있기 때문에 거의 모든 문제에 대한 해답이라고 생각하기 때문입니다. 프로그래밍의 드라이버입니다.
어떤 사람들은 나사를 조여서 작업에 완벽하게 적합한 도구를 사용합니다. 다른 사람들은 프라이 바처럼 그것을 사용하지만 종종 효과적이지만 실제로는 이상적이지 않습니다. 아버지가 당신에게 말할 수 있든지 스크류 드라이버가 프라이 바가 아니며 생크 구성이 의도적으로 만들어지지 않았기 때문에 오용으로 인해 치명적으로 실패 할 수 있기 때문입니다 prybar가 만나게 될 힘의 종류. 또 다른 사람들은 그것을 펀치 나 끌로 사용하려고 시도 할 수 있으며, 드라이버의 손잡이는 펀치 나 끌이 견딜 수 있도록 고안된 심한 학대를 위해 만들어지지 않았기 때문에 거의 항상 문제가 발생합니다.
내 의견으로는 프로그래머의 임무는 일반적으로 실제 문제를 자동화로 변환하여 어느 정도의 효율성 향상 (작업에 대한 자원 투입 감소), 속도 (작업 수행 시간 감소), 예측 가능성 (반복성 증가) 작업) 또는 조직 (작업 간의 관계에 대한 인식 증가).
프로그램을하는 모든 사람이 컴퓨터의 낮은 수준의 작동, 특히 장치 IO 및 메모리 할당에 대한 일반적인 지식을 가져야한다는 것은 이해할 만하지 만 실제로는 그 지식을 어느 정도까지 활용해야한다는 것은 명백한 일입니다. 대부분의 작업. 더 넓은 범위의 문제를 이해하지 않고 그렇게하려고 시도하면 불필요한 위험이 발생합니다.
C와 그 파생어가 해결하는 문제의 종류가 현재와 미래의 문제 중 일부에 임의로 적절하지 않기 때문에 첫 번째 프로그래밍 언어는 C / C ++ 또는 유사 변형이어야합니다. 이전에 스크루 드라이버 프로그램), 실제로는 다가오는 문제의 작은 세트에 지나지 않습니다. 대부분의 프로그래머는 상호 연결된 소형 모바일 장치의 보급률이 높아지고 있음에도 불구하고 핵심 OS 기능 또는 직접 장치 인터페이스를 개발하지 않습니다. 대부분 우리처럼 일하고 살 것입니다. 이미 2 세대 이상인 코드를 수정하고 단계적으로 폐지 한 경우, 이미 오래된 기술을 구현하거나 킬러 (x + 1) 앱의 기술을 다루고 있습니다.
첫 번째 언어로는 가벼운 의무이지만 다양한 기능의 LabView 변형 인 Lego NXT를 살펴 보겠습니다. 레고 NXT는 상업 벤처에 널리 사용되지는 않지만 "센서가 풍부한"방식으로 프로그래밍하는 것이 근본적인 특성을 나타냅니다. Javascript 또는 TCL / TK와 같은 플랫폼 중립적 스크립팅 언어와 쌍을 이룰 수 있습니다. 두 가지 모두 매우 기본적이지만 효과적인 작업을 수행하기 위해 발견해야 할 사항에 있어서는 상대적으로 영향이 적으며, 피드백 루프 측면에서 높은 수익률과 다양한 수준의 문제 복잡성을 도입하고 해결할 수있는 유연성을 제공합니다. 또한 학생들이 미리 준비된 환경에서 제공되는 것 이상의 잠재력을 탐색 할 수있는 좋은 기회를 제공합니다.
4 개의 실린더를 자동으로 구동하는 법을 배우고 나서 실제로 관심이 있고 동기가있는 경우 큰 v8 수동 핫로드로 단계를 올립니다. Joel이 발 밑의 돌 아래에서 록 스타 프로그래머를 찾지 못하면 다른 곳을 계속 보거나 도구 상자에 여러 드라이버가 필요한 이유를 다시 생각해야 할 수도 있습니다.
초보자가 C ++에서 쉽게 실수를 저지르는 몇 가지 사항은 다음과 같습니다.
당신이 테스트하고 싶었던 곳에 할당하기 = vs ==
누락;
중괄호의 판독성 vs. 예를 들어 파스칼 시작-끝
그리고 혼동 할 모든 포함 파일, 매크로, 메모리 관리 등이 있습니다.
따라서 C ++은 시작하기에 가장 적합한 언어가 아니라고 말할 수 있습니다. 그러나 배울 때 매우 유용 할 것입니다.
다른 사람들도 제안했듯이 C #, Java 또는 VB를 사용하고 구문 강조 표시, 디버거 등을 갖춘 좋은 IDE를 사용하여 오류를 쉽게 복구 할 수 있습니다.
내가 대학에있을 때 C ++는 대학 1 학년 동안 가르친 기초 언어였습니다. 이론에는 복잡한 프로그래밍 개념이 포함되어 있으므로 마스터 할 수 있으면 다른 언어를 선택할 수 있습니다. 그것은 좋은 기초가되었습니다.
저는 고등학교 1 학년 동안 핵심 언어를 Java로 전환할지 여부를 결정하기 위해위원회에서 활동했습니다. 몇몇 저명한 고용주와 부서의 동창들과 이야기를 나눈 후, 자바로의 전환이 학생들의 가장 큰 관심사라고 판단되었습니다. 우리가 말한 고용주는 사람들이 고용하기 위해 사용하고있는 언어로 경험하기를 원했습니다. 저는 10 년이 지난 지금도 여전히 Java를 핵심 언어로 사용하고 있다고 생각합니다.
비슷한 메모에서, 우리는 정말 좋은 C ++ 기술을 가진 두 명의 최근 대학 졸업자를 고용하려고했습니다. 우리는 찾을 수 없었습니다.
나는 그렇습니다라고 말할 것입니다. 그러나 모든 언어는 실제로 첫 번째 언어가 될 수 있습니다. C ++은 복잡하고 때로는 어렵지만 실제로 할 수있는 작업 (제한 없음)을 보여주기 때문에 C ++이 좋습니다. 또한 다른 언어를 사용할 준비를하는 데 도움이되는 객체 지향 디자인이 있습니다.
C ++은 제 첫 언어 였고 기뻤습니다. OOP 사고 방식을 일찍 생각하게해서 고맙습니다. 그러나 결국, 그것은 실제로 당신이하고 싶은 일에 달려 있습니다. 한 언어를 능숙하게 사용하면 다른 언어를 선택하는데 아무런 문제가 없을 가능성이 있기 때문에 언어는 그다지 중요하지 않습니다. 뭐하고 싶어? 게임을합니까? 휴대폰 프로그램? 각각에는 더 적합한 도구와 언어가 있습니다.
C ++은 초보자가 아닌 전문가 언어입니다 ... Java 또는 C # 또는 Python이 아닌 C를 먼저 말할 것입니다 ... 왜? C는 당신에게 당신의 기억과 모든 언어에 의해 숨겨져 있지만 어디에나 존재하는 포인터와 같은 까다로운 개념들에주의를 기울 이도록 가르치기 때문입니다. 메모리가 때때로 해제되어야하는 이유를 이해하지 못하는 가비지 수집가가 모든 코딩 쓰레기를 청소하는 작은 드워프가 아니라고 생각하는 많은 젊은 개발자를 보았습니다. RAM ... 그러나 그들은 왜 가비지 컬렉터가 단순히 마술처럼 모든 것을 청소하지 않는지 이해하지 못합니다! 그리고 나는 C ++로 코딩하는 이런 종류의 개발자 (그리고 Corba에서는 더 미친 듯이)를 보았고 도살했습니다 !!!!!!!!!! 그래서 C로 코딩을 배우고 객체 개념과 모든 설탕에 대해 Python / Java / C #로 이동하는 것이 좋습니다. 그런 다음 모든 것을 이해하면 C ++로 이동하여 C ++의 힘을 느끼지 만 모든 위험과 다른 사람이 사용하지 않아야하는 이유를 발견합니다.)
"적합한"이 "가능한"을 의미한다면, 그렇습니다. "좋은"경우에는 절대 아닙니다.
C ++을 좋아하고 좋아할 수도 있지만, 여러 언어를 배우고 청록색 썩은 코드베이스로 10 년 동안 일하고 "실제로 작동하는 중요하지 않은 소프트웨어 제작"에 대한 경험을 얻으십시오. 그러면 C ++에 매력이 생길 것입니다.
처녀 일 때는 작지 않고 작지만 단순하지만 흥미롭고 재미있는 문제로 바이올린을 연주하십시오.
파이썬으로 시작한 다음 SICP (scheme) 또는 이와 유사한 것으로 시작합니다. 반전되거나 인터리브되었을 수 있습니다. 그것들을 사용하면 문제를 해결할 수 있습니다. 시스템과 싸우는 대신, 깊은 진흙 속에서 걷고 모든 종류의 비논리적 기발과 역사적 이유를 배우십시오.
나중에 종이 봉지에서 나갈 수있는 방법을 이미 프로그래밍 할 수있는 경우 베어 메탈로 전환하십시오. 조립 방법과 여러 아키텍처, Knuth 's Mix를 배우십시오. 메모리, 레지스터, ALU, 캐시, 인터럽트를 이해하고 읽기 수준을 얻기 위해 opcode를 암기하거나 많은 실제 작업을 수행한다는 의미는 아닙니다.
그런 다음이 기초를 통해 C ++을 포함한 다른 언어에 노출 될 수 있습니다. 아마도 그 사이에 "역사와 언어의 진화"를 추가하는 것이 좋습니다.
중학교에서 C ++로 시작했습니다. :이 책의 사본을 집어 Deitel과 Deitel에 의해 프로그램에 C ++ 어떻게 . 이 책은 아주 좋습니다.
솔직히 여기에 옳고 그른 대답이 없으며, 개인적으로 C ++이 파악 가능하다는 것을 알았습니다. 나는 OOP에 이르기까지 그것을 배웠습니다 (이제 "내가"어떻게 그것을 얻을 수 없었는지 이해하지 못합니다 "). 시험해보고 낙심하지 마십시오. 문제가 발생하면 다른 언어를 확인하고 새로운 언어를 계속 배우십시오. 아이디어는 2-3 개의 다른 형태로 동일한 개념을 볼 때 더 잘 이해할 수 있다는 것입니다. 내가 말했듯이 "this"포인터의 개념은 혼란 스러웠지만 파이썬에서 같은 것을 보았을 때 (자체라고 명명) C ++에서 이해했기 때문에 바로 이해가되었습니다. 많은 대학에서 가르 칠 수 있다면 Java를 배우십시오. 파이썬이나 루비를 배우는 언어이기 때문에 Clojure (및 다른 모든 lisp), Haskell, Scala와 같은 틈새 / 새로운 것을 탐험 할 수 있다면 ...
아니요. Java 또는 C #으로 시작합니다. C ++을 배우고 싶다면 클래스가 무엇인지, 루프와 포크를 수행하는 방법 (if, then statement) 등과 같은 기본 사항을 익힌 후에 더 쉬울 것입니다. 문제 나 수학 방정식을 프로그래밍하고 메모리 나 다른 것을 모두 풀 었는지 알아내는 것보다 프로그래밍하십시오.
이 질문의 배후에있는 가정은 "C ++이 너무 복잡해 보인다. 16 살짜리가 그것을 첫 번째 (컴퓨터 프로그래밍) 언어로 선택할 수 있을까?"
우리가 4-5 세가 될 때까지, 우리는 모국어로 대부분의 구조물을 집어 들었습니다. 훌륭한 문장을 만드는 것은 인생의 시간이 필요합니다.
C ++는 대부분의 인간 언어보다 훨씬 덜 복잡하고 복잡합니다. 16 세의 어린이는 반드시 그것을 픽업 할 수 있어야합니다. 그들은 좋은 코드를 작성합니까? 기다려보고있어.