웹의 전체 스택을 스스로 연구하는 방법: 먼저 웹 개발 프로세스의 3계층 아키텍처, 즉 프레젠테이션 계층, 비즈니스 로직 계층, 데이터베이스 계층을 이해해야 합니다. 또한 서비스 관리, 클라우드 호스트 플랫폼, 웹 서버, 데이터베이스, 로깅 시스템 등에 대한 지식도 마스터해야 합니다.
인터넷 산업은 지금도 늘 뜨겁고 앞으로도 뜨거울 것이라고 믿습니다. 따라서 많은 친구들이 인터넷 학습을 계획하기 시작했고 일부는 훈련을 선택하고 일부는 자율 학습을 선택했습니다. 그러나 많은 친구들은 인터넷 기술을 배울 때 혼란스러워할 수도 있습니다. 며칠 전 한 친구가 나에게 웹의 전체 스택을 혼자서 배우는 방법을 물었습니다. 다음으로 웹의 전체 스택을 스스로 가르치는 방법에 대해 이야기하겠습니다.
(추천 튜토리얼: html tutorial)
우선 웹 풀스택이 무엇인지, 무엇을 해야 하는지 이해해야 합니다. 웹 풀스택 지식을 알아보세요.
둘째, 웹 전체 스택을 스스로 학습하는 것은 간단한 문제가 아니라는 점을 알아야 합니다. 인내하려면 충분한 인내가 필요하며 학습 능력도 필요합니다. 최대한 짧은 시간에 효율적으로 배우세요.
웹 개발 프로세스에는 3단계 아키텍처가 있습니다.
프레젠테이션 레이어: 프리젠테이션 레이어는 웹사이트의 프런트엔드 부분이라고도 합니다. 웹사이트의 사용자 인터페이스 관련 문제를 처리합니다.
비즈니스 로직 레이어: 비즈니스 로직 레이어는 웹사이트의 백엔드 레이어라고도 하며 데이터 유효성 검사 및 동적 처리를 담당합니다.
데이터베이스 레이어: 마지막으로 API를 사용하여 웹사이트에 데이터를 제공하는 데이터 액세스 레이어가 있습니다.
위의 3개 레이어를 합쳐서 풀스택 웹 개발이라고 합니다.
풀스택 웹엔지니어로서 알아야 할 지식은 다음과 같습니다.
1. 서비스 관리/운영 및 유지보수
개발자는 반드시 알아야 합니다. 기본적인 서버 관리 지식을 이해합니다. 다음 지식을 포함하되 이에 국한되지는 않습니다.
사용자 인터페이스 없이 터미널이나 기타 환경을 통해 서버에 원격으로 연결
기본 쉘 스크립트 작성 가능#🎜🎜 #
서버에서 사용자 및 그룹 관리Apache, Nginx와 같은 서버 프로그램을 관리하여 애플리케이션 제공방화벽 관리 및 권한 관리#🎜🎜 #소프트웨어 설치 및 업데이트
#이러한 기본 기술 외에도 개발자는 Docker 또는 Vagrant와 같은 가상 머신 환경에서 훌륭하고 건전하며 분리된 개발 환경을 만드는 방법을 알아야 합니다. 위의 모든 기술에 익숙하지 않다면 멋진 책을 추천하고 싶습니다. 여기를 클릭하여 구입하세요.
안정적인 프로덕션 백업과 시간에 따른 코드 변경 사항을 추적할 수 있는 공유 가능하고 협업적인 코드 베이스를 개발하려면 개발자는 버전 제어 시스템에 매우 능숙해야 합니다. 요즘에는 개발자의 작업 흐름이 버전 제어와 완전히 독립적이지 않습니다. 버전 제어에 대한 훌륭한 비디오 튜토리얼이 있습니다. 여기에서 구입하세요.
2, Cloud
실제 관리 서버나 가상 서버와는 달리, 개발자는 Heroku, Google Cloud, Azure, AWS 등의 클라우드 호스팅 플랫폼에 대해 알아야 할 수도 있습니다. .
꼭 말해야 할 한 가지는 플랫폼과 도구가 실용성보다 과장된 것에 더 가깝다는 것입니다. 광고된 것만큼 작동하지 않는 많은 플랫폼과 도구가 있지만, 모두가 이야기하는 서비스를 이해하는 것은 장기적으로 도움이 될 것입니다. 고객은 언제든지 공급자 전환을 요청할 수 있습니다. 운 좋게도 클라우드 호스팅 배포에 대한 최종 가이드가 있습니다.
3. 백엔드
풀스택 개발자는 PHP와 수많은 프레임워크, CMS 등 어떤 언어를 선택할지 아는 것 외에도 다음 언어에 익숙해야 합니다. :# 🎜🎜#
Nginx, Apache와 같은 웹 서버는 운영 및 유지 관리와 밀접한 관련이 있습니다안타깝게도 NodeJS는 이미 JS, CSS 및 기타 리소스 파일을 정적 파일로 컴파일하여 파일을 쉽게 캐시할 수 있습니다. 다행히도 NodeJS를 배우지 않고 PHP도 사용할 수 있는 방법이 있습니다. 대부분의 새로운 웹 페이지는 API를 기반으로 하고 프런트엔드만 제공하기 때문에 개발 환경은 Good API 디자인과 분리될 수 없습니다. 자세한 내용은 아래에서)ElasticSearch(소개는 여기) 이러한 검색 엔진은 웹사이트 성능을 향상시키는 데 매우 중요합니다cronjobs 및 백엔드 작업, Gearman 또는 Crunz와 같은 라이브러리 사용# 🎜🎜#캐싱 이해, Varnish, Redis 및 기타 멋진 도구는 데이터를 슬라이스로 저장할 수 있으므로 프로젝트를 여러 호스트에 배포할 수 있습니다
4 데이터베이스
#🎜. 🎜#데이터베이스는 별도의 부분이기 때문에 기본적으로 구조적 변화가 없는 관계형 데이터베이스(MySQL 또는 PostgreSQL)의 데이터 스키마를 잘 파악하는 것 외에도 풀스택 엔지니어는 비관계형 데이터베이스에 대한 어느 정도 이해하고 있어야 합니다. MongoDB, Redis 또는 Cassandra와 같은 데이터베이스는 말할 것도 없고 Neo4j와 같은 그래프 데이터베이스도 있습니다. 안타깝게도 이러한 모든 작업은 서버에 있으며 풀 스택 엔지니어의 제어를 받습니다. RestDB나 Google 소유의 Firebase 등 Mong과 유사한 여러 원격 솔루션도 있습니다. 5. 프런트엔드 일반적인 프런트엔드 지식 그래프가 어떤 모습인지 알고 싶다면 JavaScript 섹션에서 이 훌륭한 기사를 읽어보세요. 하지만 풀 스택 엔지니어로서 NodeJS 및 NPMYarn을 이해해야 합니다.
Typescript, ES6, LESS, SCSS, SaSS를 컴파일하는 데 사용되는 전처리기 및 컴파일러(예: Babel)
Grunt 및 Gulp와 같은 빌드 도구
프레임워크, VueJS, React, Angular 등
Webpack, Browserify, Rollup 등의 모듈 패키징 도구
6, design
디자인 측면에서, 모든 Stack 개발자는 제품이 실제로 사용 가능한 HTML 및 CSS 코드가 되기 전에 프로토타입을 그리는 방법을 알아야 합니다. 그런 다음 JS를 사용하여 상호 작용을 작성할 수 있으며 백엔드는 가짜 데이터를 사용하여 프로덕션 환경을 시뮬레이션할 수도 있습니다. 이 중요한 프로토타입 도면이 완성되고 사용자 경험 디자인과 인터페이스 디자인이 준비되어야 실제 개발이 시작될 수 있습니다. 이 작업 자체는 어려운 작업이며 특별한 도구 세트가 필요합니다:
Photoshop 및 Illustrator 또는 Gimp/Inkscape와 같은 일부 오픈 소스 도구. 이러한 도구에 대해 자세히 알아보려면 디자인 채널을 방문하세요.
Atom 또는 Sublime Text와 같은 멋지고 빠른 편집기(여기에 10개의 유용한 Sublime 플러그인이 있습니다)
Subtlepatterns 배경 선택기 및 색상 선택과 마찬가지로 브라우저는 일부 색상과 일치할 수 있습니다#🎜🎜 #
CSS 그리드 시스템프론트 엔드에 대해 위에서 언급한 모든 지식과 JS 데이터 시뮬레이션은 모든 사람이 탐색하고 피드백을 제공할 수 있도록 온라인에 게시됩니다. Ngrok은 매우 쉽습니다. 오류를 추적하고 오류 로그를 찾고 그로부터 유용한 정보를 추출할 수 있어야 합니다. 또한 풀 스택 개발자는 애플리케이션이 언제 중단될지 모르는 경우에 대비해 로그에서 CPU 또는 I/O 사용량 증가와 같은 몇 가지 추세를 예측해야 합니다. 이 부분도 운영 및 유지 관리와 관련이 있지만 특별한 기술이 필요합니다. 로깅 시스템을 만드는 데 필요한 지식을 이해하는 데 도움이 될 훌륭한 ELK 스택 기사를 추천합니다. 여기에는 로그 찾기를 위한 ElasticSearch, 로그 수집을 위한 Logstash, 훌륭한 차트로 로그를 표시하기 위한 Kibana, 솔루션 제공을 위한 Logz.io도 포함됩니다. 8. 모바일 단말기드디어 모바일 단말기에 대해 이야기할 차례입니다. iOS와 Android의 웹뷰가 더욱 효율적으로 변하고 PWA(Progressive Web Apps)의 출현으로 네이티브 앱은 개발하기가 너무 복잡해지면서 암울해지고 있습니다. 따라서 풀 스택 엔지니어는 클라이언트 애플리케이션이 API를 호출하고 실행할 수 있도록 PWA 또는 React Native 또는 NativeScript, Tabris, Cordova, Phonegap 또는 기타 웹뷰를 이해해야 합니다.위 내용은 웹의 전체 스택을 스스로 가르치는 방법의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!