백엔드 개발 PHP 튜토리얼 컴퓨터 전공자가 프로그래밍을 잘 배울 수 있는 방법에 대해

컴퓨터 전공자가 프로그래밍을 잘 배울 수 있는 방법에 대해

Jul 25, 2016 am 08:49 AM

이 글은 저학년을 위해 쓴 글입니다. 이미 직장을 다니고 있는 분들은 제 말도 안되는 글을 읽으시느라 시간을 낭비하실 필요가 없습니다.
요즘 사람들은 방향을 어떻게 정하느냐고 늘 물어보는데, 어떤 사람은 휴대폰으로 작업하고, 어떤 사람은 웹페이지 작업을 하고, 어떤 사람은 게임 작업을 하는 모습을 본다고 하더군요. 그는 너무 많은 것을 알고 있었고 무엇을 해야할지 몰랐습니다. 나는 많은 학생과 실무자가 있는 일부 소프트웨어 개발 그룹에 어울리고 있습니다. 기초가 탄탄하지 않을 때 '다양한 프로젝트를 하는' 사람들에 대해 두 가지 의견이 있습니다. 하나는 성급하다는 것이고, 다른 하나는 시야를 넓히는 것이 좋다는 것입니다.
대학은 4년만이에요. 학교에서는 일반적으로 첫 2년 동안 수학과 영어를 공부하고, 1학년에는 언어를, 2학년에는 데이터 구조를 공부합니다. 3학년에는 좀 더 구체적이고 복잡한 과정이 많고, 그다음에는 인턴십을 찾아야 하는데, 4학년에는 실제로 수업도 없고, 건강검진도 없습니다. 임대 학교 기숙사에 사는 것과 같습니다.
그래서 이 짧은 3년 동안 컴퓨터 과학의 여러 분야에서 자신이 좋아하는 것을 찾고, 공부하고, 결국 무언가를 성취하는 것은 꽤 어렵습니다. 그러므로 많은 사람들은 주변에 있는 두세 사람이 갑자기 매우 만족스러운 일을 하는 것을 종종 봅니다. 나는 이런 사람들을 몇 명 만났습니다. 내 반 친구 중 한 명은 고등학교 때 코드 괴짜로 불렸다고 말했습니다. 그는 에뮬용 코드를 작성한 후 자신의 인스턴트 메시징 도구를 만들어 판매했습니다. 대학에 입학한 이후로 이 글을 계속 써오다 드디어 인턴십을 위해 텐센트에 가게 되었습니다. 며칠 전 어떤 분을 만났는데, 초등학교 때부터 플래시로 액션 스크립트를 다루다가 펄로 바꾸었다고 하더군요. 1학년 때까지 2,000줄이 넘는 프로그램을 작성해 본 적이 없다고 하더군요. 나는 그것을 확인하러 가지 않았고 단지 그것이 믿을 수 없다고 생각했습니다.
그래서 저는 전통적인 방법을 따라 먼저 언어를 마스터하고("C Primer") 데이터 구조를 배우고("알고리즘 입문") 라이브러리를 배우는 것("STL 소스 코드")이라고 생각했습니다. 분석" "간단한 언어로 MFC 소개"), 그런 다음 몇 가지 디자인 패턴("디자인 패턴")을 수행하고 마지막으로 특정 관리 시스템을 작성합니다(웃음). 이것도 약간 지루합니다. 가시적이고 실질적인 프로그램을 만들기 전에 실제로 많은 것을 배워야 하는 것은 실제로 사람들의 의지력에 대한 시험입니다. 거의 모든 사람들이 컨트롤을 끌어서 시작합니다. 흑백 화면에서 알고리즘 작업을 시작한 사람들은 NOI나 ACM 소속이었고, 몇 가지 알고리즘 문제를 해결하는 데 지치지 않았습니다. 그러나 결국 아무것도 성취하는 사람은 거의 없습니다. 학교에서 ACM 사람들을 정말 많이 만났는데, 결국 그 중 Google로 간 사람은 단 한 명뿐이었습니다. 아직은 리스크가 좀 높은 것 같아요.
하지만 그 반대도 문제다. 처음부터 인터페이스부터 시작하면 사람들은 쉽게 성급해질 것입니다. 그 결과 많은 사람들이 다채로운 세계를 추구하게 되었습니다(그룹 내 사람들의 통계에 따르면). 특히 ListView 앞에 나무를 그리는 방법에 대해 고민하고 있습니다. 그러한 사람들 중에서 추구하는 사람들 중 일부는 결국 Windows SDK를 따르고, 그 다음 DDK로 가서 마침내 드라이버를 작성하고 진흙 구덩이에 들어서서 결코 스스로 벗어날 수 없을 것입니다. 사람도 소수다. 소수의 사람들이 "오늘 나는 워드에서 이런 저런 파일을 열지 못하게 하는 방법을 깨달았다"라고 나머지 대다수의 사람들과 비슷한 말을 할 때마다 그들의 눈은 밝게 빛나더니 무릎을 꿇고 빌기 시작합니다. 어떤 API가 사용되었는지 미친듯이 물었고, 최종적으로 코드를 얻었을 때 주의 깊게 준비된 폴더에 넣어 영원히 봉인되어 다시는 볼 수 없게 되었습니다. 물론 항상 책을 다운로드하는 것과 같은 다른 버전도 있지만 여전히 드물고 압축을 풀지 않습니다. 한때 자신이 가지고 있는 전자책이 몇 기가바이트인지 자랑하는 사람이 있었다. 스크린샷을 올려달라고 요청했지만 결과는 모두 희박했습니다. 그는 그것을 전혀 보지 않았고 스스로 인정했습니다.
그래서 두 길은 어떻게 보아도 매우 위험합니다. 4학년에 성공할 수 있는 사람은 많지 않습니다. 그것에 빠지는 것은 너무 쉽습니다. 이것은 무엇을 의미합니까? 사람들은 항상 자신이 잘하는 일에만 관심이 있습니다. 아직 해보지 않은 일에 관심을 갖는 것은 호기심이며 진지하게 받아들여야 합니다. 사람들이 마침내 어떤 일을 잘하게 되면 계속해서 연구하게 될 것입니다. 이것은 물론 좋은 일입니다. 그러나 나무만 보고 숲을 놓치고 프로그래밍이 세상 프로그래밍의 전부라고 생각한다면 분명 고통을 겪게 될 것입니다.
그러므로 우선 우리는 시야를 넓혀 세상에 할 수 있는 일이 너무 많다는 것을 깨달아야 합니다. 프로그래밍이 무엇인지 거의 알게 되면 이것 저것 가지고 놀아볼 필요가 있습니다. 그렇지 않으면 옆에 있는 동급생이 Java를 사용하여 1 1 = 2라고 말할 수 있는 무언가를 실행하는 것을 보게 될 것입니다. 그 사람은 PHP MYSQL을 사용하여 메시지 게시판을 만들었고 C에 직면했다고 말하면서 침을 흘리게 될 것입니다. 너무 오랫동안 흑백 화면에서 작업하다 보니 그 작은 장치도 만들 수가 없어 자존심이 쉽게 무너지네요.
그러므로 플레이를 마친 후 시간에 맞춰 멈추고 싶다면 구체적으로 한 가지만 하세요. 왜냐하면 이때 나는 내가 보는 것이 거의 그런 것이라는 것을 이미 대략 알고 있기 때문에 내가 원하면 스스로 할 수 있고 다른 사람들이 멋진 프로그램을 작성하는 것을 보는 것이 나에게 너무 많은 부담을 주지 않을 것입니다. 한 가지를 전문으로 한다는 것은 방향을 정하고, 책을 찾고, 사람을 찾고, 코드를 읽고, 프로그램을 작성하는 것을 의미합니다. 예를 들어 게임을 만들기 위해 그래픽 작업을 할 수도 있고, 스크립트 엔진과 컴파일러 작업도 할 수 있으며, 선생님을 따라 데이터 마이닝, 임베디드 작업 등을 할 수도 있습니다. 한 분야에서 심층 연구의 가장 큰 활용은 복잡한 문제에 노출된다는 것입니다.
물론 연구가 심도있게 진행되면 프로그램도 점점 커지게 되고, 이때 다양한 문제도 많이 나타나게 됩니다. 예를 들어 효율성이 너무 낮고, 프로그램에 오류가 나면 완전히 뒤집어엎고 다시 시작해야 합니다.(이건 상당히 슬픈 일입니다.) 함수, 클래스 등을 구성하기가 어렵습니다. 또는 이름이 부족합니다. 이때 데이터 구조와 알고리즘은 물론 디자인 패턴 등 다양한 이론적 지식이 필요하다. 물론, "이 세상에 만병통치약은 없다"고 말할 수 있는 것은 몇 가지 밖에 없기 때문에 일반적인 것은 많지 않을 것입니다. 나머지는 여전히 다양한 분야의 사람들의 축적이나 자신의 일에 달려 있습니다. 자신의 연구 재능이 마침내 해결되었습니다.
위에서 언급한 다양한 작업은 더 이론적인 것입니다. 실제로 학문 분야만으로는 충분하지 않습니다. 결국 프로그램은 IO라고도 하는 입력 및 출력에 의존하기 때문입니다. 이게 뭔가요? 즉, 원하는 데이터가 어디에 저장되어 있는지 알고 있으므로 이를 가져와야 합니다. 스스로 무언가를 알아냈고 그것을 어디에 두어야 할지 알고, 그것을 넣을 수 있어야 합니다. 여기에는 키보드와 화면의 일반적인 입력 및 출력, 네트워크에서 사용되는 소켓 및 웹 서비스, 표시되는 창 및 컨트롤, 하드 디스크 읽기 및 쓰기 등과 같은 많은 것들이 포함되어 있습니다. 특정 플랫폼에서 이러한 전용 API 중 하나 이상에 대해 잘 알고 있어야 합니다. 그렇지 않고 이 알고리즘, 저 알고리즘만 배워서 무슨 소용이 있겠습니까? 예를 들어, 사진을 압축하고 싶은데 그 지식을 구체적으로 배웠는데 하드 디스크의 bmp를 읽을 수 없다면 그건 무의미하지 않습니까? ?
그래서 너무 많이 말씀드렸는데, 처음에는 세상을 보고, 하나를 골라 천천히 공부하고, 프로그램이 커지면 자연스럽게 공부하게 되실 거에요. 많은 고급 문제에 직면합니다. 이때 가서 해결하면 사실상 학사학위에서 요구하는 수준에 거의 도달한 것입니다.
정말 많은 사람들이 마음을 바꾸고 마침내 한 분야의 문제를 연구하기 위해 열심히 일하기 시작했습니다. 그 분야는 항상 복잡해서 이때 많은 프로그래밍 문제에 부딪치게 됩니다. 예를 들어, 알고리즘이 표현하기에는 너무 복잡하고, 파일을 읽는 동안 멈추기도 하고, 실수로 선을 넘어가서 이상한 문제가 많이 발생하는 경우도 있습니다(C). 에. 이런 종류의 디버깅 문제의 경우 일반적으로 자신에게만 의존하여 많은 실수를 저지르고 마침내 성공할 수 있습니다. 물론 선배들도 자신의 경험을 요약해 『프로그램이 실패하는 이유』라는 책을 썼다. 읽고 싶다면 직접 다운로드할 수도 있다. 둘째, 특정 라이브러리에 대한 책과 문서가 항상 많기 때문에 할 일이 없으면 더 읽어야 합니다. 예를 들어 Visual Studio를 사용하는 모든 사람은 MSDN을 설치해야 합니다.
이게 제가 말한 거의 전부입니다. 하지만 나 자신도 이 기사가 '보편적인 것'이기 때문에 조금 약하다고 생각합니다. 구체적으로 무엇을 해야 할지 잘 생각해야 합니다. 대학 1, 2학년을 지내면서도 아직도 미로 속에 빠져 있는 후배들에게 이 글을 바치고 싶습니다. 혹시 특별히 어려운 질병이 있으신 분은 개인적으로 연락주시기 바랍니다.
간단히 말하면, 항상 공부할 수 있는 질문을 가지고 있어야 합니다.
LAMP Brothers의 원본 PHP 튜토리얼 CD/"Essential PHP in Details"를 무료로 받아보세요. 자세한 내용은 공식 웹사이트 고객 서비스에 문의하세요: http://www.lampbrother.net
PHPCMS2차 개발 http://yun.itxdl.cn/online/phpcms/index.php?u=5
WeChat 개발       http://yun.itxdl.cn/online/weixin/index.php?u=5
모바일 인터넷 서버측 개발 http://yun.itxdl.cn/online/server/index.php?u=5
자바스크립트 강좌 http://yun.itxdl.cn/online/js/index.php?u=5
CTO교육 캠프                                                                             5


본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.

핫 AI 도구

Undresser.AI Undress

Undresser.AI Undress

사실적인 누드 사진을 만들기 위한 AI 기반 앱

AI Clothes Remover

AI Clothes Remover

사진에서 옷을 제거하는 온라인 AI 도구입니다.

Undress AI Tool

Undress AI Tool

무료로 이미지를 벗다

Clothoff.io

Clothoff.io

AI 옷 제거제

AI Hentai Generator

AI Hentai Generator

AI Hentai를 무료로 생성하십시오.

인기 기사

R.E.P.O. 에너지 결정과 그들이하는 일 (노란색 크리스탈)
1 몇 달 전 By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. 최고의 그래픽 설정
4 몇 주 전 By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. 아무도들을 수없는 경우 오디오를 수정하는 방법
1 몇 달 전 By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. 채팅 명령 및 사용 방법
1 몇 달 전 By 尊渡假赌尊渡假赌尊渡假赌

뜨거운 도구

메모장++7.3.1

메모장++7.3.1

사용하기 쉬운 무료 코드 편집기

SublimeText3 중국어 버전

SublimeText3 중국어 버전

중국어 버전, 사용하기 매우 쉽습니다.

스튜디오 13.0.1 보내기

스튜디오 13.0.1 보내기

강력한 PHP 통합 개발 환경

드림위버 CS6

드림위버 CS6

시각적 웹 개발 도구

SublimeText3 Mac 버전

SublimeText3 Mac 버전

신 수준의 코드 편집 소프트웨어(SublimeText3)

JWT (JSON Web Tokens) 및 PHP API의 사용 사례를 설명하십시오. JWT (JSON Web Tokens) 및 PHP API의 사용 사례를 설명하십시오. Apr 05, 2025 am 12:04 AM

JWT는 주로 신분증 인증 및 정보 교환을 위해 당사자간에 정보를 안전하게 전송하는 데 사용되는 JSON을 기반으로 한 개방형 표준입니다. 1. JWT는 헤더, 페이로드 및 서명의 세 부분으로 구성됩니다. 2. JWT의 작업 원칙에는 세 가지 단계가 포함됩니다. JWT 생성, JWT 확인 및 Parsing Payload. 3. PHP에서 인증에 JWT를 사용하면 JWT를 생성하고 확인할 수 있으며 사용자 역할 및 권한 정보가 고급 사용에 포함될 수 있습니다. 4. 일반적인 오류에는 서명 검증 실패, 토큰 만료 및 대형 페이로드가 포함됩니다. 디버깅 기술에는 디버깅 도구 및 로깅 사용이 포함됩니다. 5. 성능 최적화 및 모범 사례에는 적절한 시그니처 알고리즘 사용, 타당성 기간 설정 합리적,

PHP에서 늦은 정적 결합의 개념을 설명하십시오. PHP에서 늦은 정적 결합의 개념을 설명하십시오. Mar 21, 2025 pm 01:33 PM

기사는 PHP 5.3에 도입 된 PHP의 LSB (Late STATIC BING)에 대해 논의하여 정적 방법의 런타임 해상도가보다 유연한 상속을 요구할 수있게한다. LSB의 실제 응용 프로그램 및 잠재적 성능

프레임 워크 보안 기능 : 취약점 보호. 프레임 워크 보안 기능 : 취약점 보호. Mar 28, 2025 pm 05:11 PM

기사는 입력 유효성 검사, 인증 및 정기 업데이트를 포함한 취약점을 방지하기 위해 프레임 워크의 필수 보안 기능을 논의합니다.

프레임 워크 사용자 정의/확장 : 사용자 정의 기능을 추가하는 방법. 프레임 워크 사용자 정의/확장 : 사용자 정의 기능을 추가하는 방법. Mar 28, 2025 pm 05:12 PM

이 기사에서는 프레임 워크에 사용자 정의 기능 추가, 아키텍처 이해, 확장 지점 식별 및 통합 및 디버깅을위한 모범 사례에 중점을 둡니다.

PHP의 CURL 라이브러리를 사용하여 JSON 데이터가 포함 된 게시물 요청을 보내는 방법은 무엇입니까? PHP의 CURL 라이브러리를 사용하여 JSON 데이터가 포함 된 게시물 요청을 보내는 방법은 무엇입니까? Apr 01, 2025 pm 03:12 PM

PHP 개발에서 PHP의 CURL 라이브러리를 사용하여 JSON 데이터를 보내면 종종 외부 API와 상호 작용해야합니다. 일반적인 방법 중 하나는 컬 라이브러리를 사용하여 게시물을 보내는 것입니다 ...

확실한 원칙과 PHP 개발에 적용되는 방법을 설명하십시오. 확실한 원칙과 PHP 개발에 적용되는 방법을 설명하십시오. Apr 03, 2025 am 12:04 AM

PHP 개발에서 견고한 원칙의 적용에는 다음이 포함됩니다. 1. 단일 책임 원칙 (SRP) : 각 클래스는 하나의 기능 만 담당합니다. 2. Open and Close Principle (OCP) : 변경은 수정보다는 확장을 통해 달성됩니다. 3. Lisch의 대체 원칙 (LSP) : 서브 클래스는 프로그램 정확도에 영향을 미치지 않고 기본 클래스를 대체 할 수 있습니다. 4. 인터페이스 격리 원리 (ISP) : 의존성 및 사용되지 않은 방법을 피하기 위해 세밀한 인터페이스를 사용하십시오. 5. 의존성 반전 원리 (DIP) : 높고 낮은 수준의 모듈은 추상화에 의존하며 종속성 주입을 통해 구현됩니다.

세션 납치는 어떻게 작동하며 PHP에서 어떻게 완화 할 수 있습니까? 세션 납치는 어떻게 작동하며 PHP에서 어떻게 완화 할 수 있습니까? Apr 06, 2025 am 12:02 AM

세션 납치는 다음 단계를 통해 달성 할 수 있습니다. 1. 세션 ID를 얻으십시오. 2. 세션 ID 사용, 3. 세션을 활성 상태로 유지하십시오. PHP에서 세션 납치를 방지하는 방법에는 다음이 포함됩니다. 1. 세션 _regenerate_id () 함수를 사용하여 세션 ID를 재생산합니다. 2. 데이터베이스를 통해 세션 데이터를 저장하십시오.

See all articles